1

当我使用 vim 时,我将自定义设置设置为~/.vimrc

command Noh noh
command NOh noh
command NOH noh

这样我就可以执行:noh, :NOhor :NOH, 就像:nohl.

现在我正在使用 Vscode 并安装了插件 vscodevim 1.20.2。我想进行相同的设置,但我不知道如何。我已经尝试如下,但它不工作:

"vim.normalModeKeyBindingsNonRecursive": [
        {
            "before": [
                ":NOH"
            ],
            "after": [],
            "commands": [
                {
                    "command": ":nohl",
                    "args": []
                }
            ]
        }
]
4

1 回答 1

1

我还没有找到使用 VSCodeVim 定义自定义命令的方法,但是如果将"before"值拆分为字符数组(即"before": [":", "N", "O", "H"]),则可以模拟所需的行为。这有点 hacky,因为正常模式的键绑定显示在状态栏中的不同位置,但它似乎对我有用。

请注意,您也无法使用制表符完成,因为您没有定义真正的 Ex 命令,但您可以将其用作数组"<Tab>"中的键,并且它可以工作。"before"这样,您可以使用命令的最常用类型前缀(附加 . "<Tab>")作为"before".

另请注意,VSCodeVim 添加了实验性vimrc支持,您可以尝试一下。但是,似乎至少某些自定义命令无法正常工作

于 2021-05-16T18:10:31.717 回答