• 请不要在回答技术问题时复制粘贴 AI 生成的内容
hadixlin
V2EX  ›  程序员

IDEA 的 ideavim 插件使用问题

  •  
  •   hadixlin · Mar 29, 2017 · 5653 views
    This topic created in 3348 days ago, the information mentioned may be changed or developed.

    其实所有的 vim 都有这个问题,就是正在使用中文输入法编辑中文,切换回 normal 模式的时候,需要自己再切换一次输入法到英文才能正常进行 vim 操作.

    请问有人有解决方案吗?

    Supplement 1  ·  Apr 1, 2017

    参照smartim的代码写了个本地动态库,然后开发了一个小插件.作为IdeaVIm的扩展.

    安装后在编辑器中输入":set switch-to-english-when-exit-insert-mode",这个把这个命令加入到~/.ideavimrc中,即可启用该功能.

    目前只能支持macOS因为不会写LInux/Windows的Native代码,希望有兴趣的朋友可以帮忙补充.

    有需要的朋友可以下载使用,多提意见.

    https://pan.baidu.com/s/1nuMXnIx

    14 replies    2017-03-29 18:05:28 +08:00
    ufo22940268
        1
    ufo22940268  
       Mar 29, 2017
    解决方案就是:

    > 正在使用中文输入法编辑中文,切换回 normal 模式的时候,需要自己再切换一次输入法到英文才能正常进行 vim 操作
    Jaylee
        2
    Jaylee  
       Mar 29, 2017
    我是按 shift 切换中英文,感觉还好
    zacard
        3
    zacard  
       Mar 29, 2017
    切回 normal 的时候按下 shift
    hadixlin
        4
    hadixlin  
    OP
       Mar 29, 2017
    @zacard 这样还是有问题的,不是每次都要按下 shift,有时候本来就是英文状态.这样不能行程惯性习惯,键盘操作很不友好.
    lonenol
        5
    lonenol  
       Mar 29, 2017
    1. 写英文注释
    2. 让中文输入法打完一组汉子后自动切换到英文状态(并不知道怎么办到
    leohxj
        6
    leohxj  
       Mar 29, 2017
    输入完中文,手动切换输入法,你就当进入了另外一个模式, chinese-mode :)
    hadixlin
        7
    hadixlin  
    OP
       Mar 29, 2017
    @lonenol 1. 英文书写能力有限,全部写英文注释不可能,团队成员也不可能看得懂.还有些提示消息文案什么的一定是中文的.
    2. 自动切换英文并不是不可能,我改了一下 ideavim 的代码调用 github 上 ybian/smartim 这个项目里面的 im-select 可以实现.但是这个好麻烦,所以想在这里问问有没有其他人有类似的经验可以分享.
    ladrift
        8
    ladrift  
       Mar 29, 2017 via Android
    fcitx.vim 插件,可以在进入 normal 后自动切到英文,进入 insert 再切到中文, macOS 上试过可用, Linux 上应该也可以
    hadixlin
        9
    hadixlin  
    OP
       Mar 29, 2017
    @leohxj vim 本就引入了几种模式已经玩不转了,好在所有的模式按 esc 都能返回 normal,但是你说的 chinese-mode 是独立的需要另外一种操作才能返回 english.习惯上不好做.
    hadixlin
        10
    hadixlin  
    OP
       Mar 29, 2017
    @ladrift 首先我是要在 ideavim 里面用,应该是不支持原生的 vim 插件的.

    还有命令行里面的 vim 我也需要这个自动切换的功能,昨天试了一下 ybian/smartim 不知道为什么不生效.
    看了 fcitx.vim 的说明以为只能在 linux 下配合 fcitx 输入法使用.这个具体要怎么用?请指教
    Immortal
        11
    Immortal  
       Mar 29, 2017
    有发现这个问题
    倒是没觉得很难受
    shift 切换中英文就多按一下 毕竟注释只在关键点写
    caixiexin
        12
    caixiexin  
       Mar 29, 2017 via Android
    毕竟不是天天写注释,还算能接受
    searene
        13
    searene  
       Mar 29, 2017
    只写英文就行了
    zacard
        14
    zacard  
       Mar 29, 2017
    @hadixlin 写完中文后按 shift
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1214 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 17:35 · PVG 01:35 · LAX 10:35 · JFK 13:35
    ♥ Do have faith in what you're doing.