在 mac 上面 command + d 应该更容易按吧。。。 而且跟 SB 编辑器保持了统一的按键。。。
evil-multiedit真的很好,就是在spacemacs里有bug,作者似乎鸽了,山人看下有兴趣和能力修复么:
暂时没啥兴趣,我现在用 multiple cursor 也挺好用。
都说和evil不能共存我就没试,等下去看看
终端下按不出 C-+ 很捉急啊,如果 mc 能像 expand-region 那样,有个选择模式就好了,在选择模式直接按 n/p 表示 mark-next/previous-like-this
,不需要每个操作都设置一个全局快捷键。快捷键多了也是负担。
可以使用 hydra:
(defhydra multiple-cursors-hydra (:hint nil)
"
^Up^ ^Down^ ^Other^
----------------------------------------------
[_p_] Next [_n_] Next [_l_] Edit lines
[_P_] Skip [_N_] Skip [_a_] Mark all
[_M-p_] Unmark [_M-n_] Unmark [_r_] Mark by regexp
^ ^ ^ ^ [_q_] Quit
"
("l" mc/edit-lines :exit t)
("a" mc/mark-all-like-this :exit t)
("n" mc/mark-next-like-this)
("N" mc/skip-to-next-like-this)
("M-n" mc/unmark-next-like-this)
("p" mc/mark-previous-like-this)
("P" mc/skip-to-previous-like-this)
("M-p" mc/unmark-previous-like-this)
("r" mc/mark-all-in-region-regexp :exit t)
("q" nil))
赞!其实也早就听说过(陈斌很推崇这个作者)hydra,但是没太注意,以为跟 which-key 差不多。
子龙在 /t/spacemacs-sublime-ctrl-d/902/14 的设置部分不正常,出现跳行的现象,我改成:
("N" (mc/mark-next-like-this 0))
("M-n" (mc/mark-next-like-this -1))
("p" (mc/mark-previous-like-this 1))
("P" (mc/mark-previous-like-this 0))
("M-p" (mc/mark-previous-like-this -1))
除 p 之外其他键都正常了。似乎通过 hydra 调用 mc 函数会导致其内部一些判断 region-active-p
或者光标位置的逻辑出错,这应该是 mc 的锅?
刚才查找问题的时候,发现其实 mc 已经支持像 expand-region 那样的渐进/递增式选择(竟然是同一个作者),只是按键/提示设置不太合理,自己写个 defadvice
就解决了。
我也有同样的疑问,只按了一次按键,却一下子选取好几个目标。请问按你的设置能解决吗?
我改用 mc/mark-more-like-this- extended
了,默认的设置有点奇怪,需要 advice
。
抄了你的这段设置,不起作用。
multiple-cursors-hydra/body
是不是要绑定到一个热键上?
恩,你可以绑定一个你喜欢的快捷键。
谢谢,我觉得可能用defadvice增强已有的multiple-cursors功能,可能更好。
一直询问Do special-lispy-different for all cursors?
可以默认y吗
可以,可以在 你的配置里面加上这个。
(setq mc/cmds-to-run-for-all
'(
electric-newline-and-maybe-indent
hungry-delete-backward
spacemacs/backward-kill-word-or-region
spacemacs/smart-move-beginning-of-line
evil-substitute
lispy-move-beginning-of-line
lispy-move-end-of-line
lispy-space
lispy-delete-backward
evil-exit-visual-state
evil-backward-char
evil-delete-char
evil-escape-emacs-state
evil-escape-insert-state
mwim-beginning-of-code-or-line
mwim-end-of-line-or-code
evil-exit-emacs-state
evil-previous-visual-line
evil-next-visual-line
evil-forward-char
evil-insert
evil-next-line
evil-normal-state
evil-previous-line
evil-append
evil-append-line
forward-sentence
kill-sentence
org-self-insert-command
sp-backward-delete-char
sp-delete-char
sp-remove-active-pair-overlay
orgtbl-hijacker-command-109))
谢谢. 如果可以支持next到底后从头继续就更像sublime了, 不过有previous like this也还可以
子龙你好,
根据你的写的配置,每次使用s-d选中多个高亮的词语之后,如果要进行修改,必须按C-z改变编辑模式才能修改,有更好的方法吗?谢谢~
我是mac os,GNU emacs 25.2.1, spacemacs配置。
这种情况出现在使用s-d选取词语时的模式尾evil模式,如果先转换为insert模式就没问题了。
按大写s就可以进入编辑模式