sungnix
V2EX  ›  Vim

请问怎样在 GVim 中优雅地切换中英文输入法?

  •  
  •   sungnix · 10h 29m ago · 327 views
    我的 GVim 进入或退出插入模式会自动切换成中文输入状态,
    我发现启动 GVim 后连续按两次 ESC 后进入插入模式可以保持英文输入状态。

    GVim 输入法相关配置:
    set iminsert=0
    set imsearch=0
    set noimcmdline
    autocmd InsertEnter * set iminsert=0
    autocmd InsertLeave * set iminsert=0

    GVim 和输入法版本:
    Vim 9.2.782
    Weasel 0.17.4

    请问怎样让 GVim 进入或退出插入模式自动切换成英文输入状态?
    2 replies    2026-07-08 22:43:47 +08:00
    bsidb
        1
    bsidb  
       4h 3m ago
    coldle
        2
    coldle  
       3h 2m ago
    把输入法换成 rime ,然后让 ai 搓个 lua 脚本搞定

    (话说进入插入状态之前一般本来就是英文模式吧)

    退出插入模式的话,给 ESC 、C-c 、C-[ 这些键加个强切英文的 hook 就完事了

    比如我平时用的就是这样:

    ```
    local M = {}
    function M.switch_to_en(key, env)
    local repr = key:repr()
    local r = repr:lower()
    if r == "escape" or r == "control+g" or r == "control+s" then
    env.engine.context:set_option("ascii_mode", true)
    end
    return 2
    end
    return M
    ```
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1171 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 497ms · UTC 17:46 · PVG 01:46 · LAX 10:46 · JFK 13:46
    ♥ Do have faith in what you're doing.