使用Vim扩展名时如何在ESC上的VSCode中自动保存文件?

时间:2019-04-03 03:15:27

标签: vim visual-studio-code autosave

我想知道,在通过按Esc键在Vim中退出插入模式之后,如何在VSCode中自动保存当前文件?

2 个答案:

答案 0 :(得分:1)

您可以将insertModeKeyBinding添加到Esc中的settings.json键中,如下所示:

"vim.insertModeKeyBindingsNonRecursive": [
    {
        "before": ["<Esc>"],
        "after": ["<Esc>", ":", "w", "<Enter>"]
    }
]

请注意,仅当您使用Esc键从插入模式切换到普通模式时,此功能才会保存。

编辑:经过一些测试,我发现您需要在上次更改后保持在插入模式大约2秒钟才能生效,否则它将看不到{{ 1}}按键是一个事件。

作为一种解决方法,如果您需要即时映射,可以将其映射到<Esc>

<leader><Esc>

答案 1 :(得分:1)

<Esc>代替<Esc>:w<Enter>是可行的,但这可能是一个稍微优雅的解决方案(例如,如果您要运行其他保存命令)。

    "vim.insertModeKeyBindingsNonRecursive": [
    {
        "before": [
            "<Esc>"
        ],
        "after": [
            "<Esc>"
        ],
        "commands": [
            "workbench.action.files.save"
        ]
    }
],