【问题标题】:Temporary execution in evil(vim-normal) state with C-o (just like using \ to temporary execution in emacs state)使用 C-o 在 evil(vim-normal) 状态下临时执行(就像在 emacs 状态下使用 \ 临时执行一样)
【发布时间】:2012-11-23 08:48:32
【问题描述】:

编辑器:Emacs 24.2; 插件:邪恶; 平台:windows 8

我想用C-o到normal-mode,用gg到开头,但是用gg后,buffer会自动回到emacs-mode。

例如:

(1) 如果我在 emacs 模式下,我想用 gg 跳转到缓冲区的开头

(2) 我可以这样,C-z 到 normal-mode,然后 gg 到开头,然后 C-z 到 emacs 模式。

(3)我不喜欢这种方式,如果我在emacs-mode,我想用C-o到normal-mode,用gg到开头,但是用gg后,缓冲区自动来了回到 emacs 模式。

(4) 而且我觉得这对我来说会很方便,我也可以使用 C-o dib 删除括号中的内容 不离开emacs-mode(因为C-o dib后缓冲区会自动回到emacs-mode)。

我从邪恶的邮件列表中得到了答复,效果很好!

(define-key evil-emacs-state-map (kbd "C-o") 'evil-execute-in-normal-state)

【问题讨论】:

  • 如果您清楚地说明您正在使用的编辑器、版本和模式,以及您的具体问题是什么,将会有所帮助。

标签: vim emacs emulation


【解决方案1】:

这种行为似乎与 Vim 的行为一致:<C-o> 用于执行 一个 普通模式命令并立即返回插入模式。

从技术上讲,它可以用来发出 :norm Ex-command 和一堆正常模式命令,但我猜没有任何好处,而且我不知道 Evil 是否会使用 :normal。您不妨完全离开插入模式。

这完全是modality和Vim的重点。如果您使用 Evil,您不妨接受这种思维方式,而不是与之抗争。

【讨论】:

  • 我喜欢 vim 的键绑定,但我不喜欢在普通模式和插入模式之间切换,这就是我转向 Emacs 的原因。我也可以使用 Emacs 的键绑定到缓冲区的开头(M-
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-04
  • 2016-01-04
  • 2012-03-30
  • 2020-03-07
  • 2019-12-05
  • 1970-01-01
相关资源
最近更新 更多