是否可以在VScode Vim中更改默认命令?

问题描述 投票:0回答:1

我想将dd(删除并放入寄存器)更改为"_dd(删除并放入黑洞寄存器)。我尝试在下面重新映射,但无济于事。

  {
      "before": [
        "d",
        "d"
      ],
      "after": [
        "\"",
        "_",
        "d",
        "d",
      ]
    }


但是,当我尝试使用leader重新映射时,它可以工作。
   {
      "before": [
        "<leader>",
        "d"
      ],
      "after": [
        "\"",
        "_",
        "d",
        "d",
      ]
    },



甚至可以更改dd的默认行为吗?

谢谢。

vim visual-studio-code vim-plugin
1个回答
0
投票

[您可以使用它,但要注意的是它会更改'd',而不是更改'dd',即'dd'可以按您的意愿工作,但它也会更改与'd'相关的每个键映射。

'dw'也将删除到'黑洞'寄存器,'dd']也会删除

要了解更多,请查看此https://github.com/VSCodeVim/Vim/pull/3081

"vim.normalModeKeyBindingsNonRecursive": [
    {
        "before": ["d"],
        "after": [ "\"", "_", "d" ]
    }
]

重新映射'dd'不会像在vim中那样进行更改,如果您不想更改'd'的默认功能,最好使用'leader d'来获取所需的内容。

总之,vim可以做您想要的,但是vscode中的vim插件现在不支持它。

© www.soinside.com 2019 - 2024. All rights reserved.