【问题标题】:Vim eats all my lines if I map ddkP如果我映射 ddkP,Vim 会吃掉我所有的台词
【发布时间】:2012-02-06 16:30:19
【问题描述】:

在 Vim 中,我设置了一个映射,以在每次按下 _ 时移动一行

nnoremap _ ddkP

在我的实验中,当我到达 Vim 文件的顶部时,如果我继续按住 _,所有行都会被吃掉

有什么问题吗?我在 Mac 上,但使用的是控制台 Vim,而不是 MacVim。

【问题讨论】:

    标签: vim keymapping


    【解决方案1】:

    k(上移一行)在文件顶部时失败。我怀疑这会导致映射键的执行停止,只剩下dd(删除当前行)。要解决此问题,您需要less destructive 方式来移动线路。

    【讨论】:

      【解决方案2】:

      Kristo's explanation 在我看来是合乎逻辑的。

      我建议您改用此映射,它会执行 :move 而不删除任何行:

      :nnoremap _ :move .-2<CR>
      

      您也可以自动撤消此操作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-04-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-05
        • 2017-09-25
        • 1970-01-01
        相关资源
        最近更新 更多