跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 在 VIM 中如何提高中文编辑效率
未分類
11 3 月 2021

在 VIM 中如何提高中文编辑效率

在 VIM 中如何提高中文编辑效率

資深大佬 : Liler 6

在 VIM 中编辑中文时出现的问题:

  • 在 Insert 模式输入中文时,发现前面输入的有错误或者其他情况需要进入到 Normal 模式时,点击 ESC, 这时还是中文模式,需要切换输入法才能更好地移动鼠标。
  • 从 Normal 模式进入到 Insert 模式,还需要再次切换输入法才能继续输入中文。
  • 切换到 Cmdline 模式查找中文时,也需要切换输入法。

编辑中文时需要经常切换输入法,影响编辑体验与效率,怎样才能提高在 VIM 中的中文编辑效率呢?

我想到的方法是自动切换输入法。 从其他模式下进入到中文编辑情时设置不同的快捷键( linux,iBus,假设第一个输入法是英文,第二个是中文)。

 " Change input method automatically  let englishInputMethod='gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval  "imports.ui.status.keyboard.getInputSourceManager().inputSources[0].activate()"'  let chineseInputMethod='gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval  "imports.ui.status.keyboard.getInputSourceManager().inputSources[1].activate()"'   let editStrings = ['i', 'I', 'a', 'A', 's', 'S', 'o', 'O', 'gi', 'gI', 'c', 'C', 'R', 'gR', 'r', 'gr']  for str in editStrings      exec 'noremap <silent> <Leader>' . str . ' ' . ':call system(chineseInputMethod)<CR>' . str  endfor  let searchStrings = ['/', '?']  for str in searchStrings      exec 'noremap <silent> <Leader>' . str . ' ' . ':call system(chineseInputMethod)<CR>' . str . '<Down>'  endfor  inoremap <silent> <Esc> <Esc>:call system(englishInputMethod)<CR> 

请问还有更好的方法吗? 在编辑中文时还会遇到什么问题,怎么解决的?

大佬有話說 (34)

  • 資深大佬 : f165af34d4830eeb

    这边建议换 vs code remote 。换 vsc remote 后,腰不酸了,腿也不疼了,腰椎间盘突出也好了!

  • 主 資深大佬 : Liler

    @f165af34d4830eeb 提出问题不是太大,而且有了简单的解决方法了,并不影响继续使用 Vim 。

    对 Vim 比较熟悉了,没有必要换成 vs code,感觉建议。

  • 資深大佬 : imkerberos

    Plug ‘CodeFalling/fcitx-vim-osx’

  • 主 資深大佬 : Liler

    一个开发工具而已,没有那么神奇吧,使用了就“腰不酸了,腿也不疼了,腰椎间盘突出也好了!”,夸张太多了。

  • 主 資深大佬 : Liler

    @imkerberos 用的是 linux,这个工具好像只适用于 osx

  • 資深大佬 : f165af34d4830eeb

    @Liler 老梗啦。不过 vsc remote 感觉确实挺好用的,除了代码编辑功能,文件管理、git 集成、端口转发功能都挺实用的,适合我这种不太喜欢命令行但是又需要 linux 环境的人。

  • 資深大佬 : jdhao

    linux 也有 vim 插件可以控制输入法状态,离开插入模式直接切换到英文模式,自己找找

  • 資深大佬 : newbieRenew

    如果你熟练 86 五笔的话,可以用装个 VimIM 这个插件,提高切换效率。

  • 資深大佬 : dongyx

    中文编辑是我用 Vim 唯一的痛点,相关插件几年前用过,但各有各的问题。后来自己思想发生了转变,不用任何插件,尽量原生默认,方便迁移。导致一度因为中文编辑问题想换 Emacs 。现在我写中文文档乖乖 Typora, Pages 。写代码,配置文件才用 Vim 。

  • 資深大佬 : lululau

    用英文先写好,然后用 Google 翻译一下

  • 資深大佬 : itgoyo

    老王好像出过个教程,老王呢,老王过来解答一下

  • 資深大佬 : hanxiV2EX

    好像有个 vim 拼音输入法插件,不用使用系统输入法。

  • 資深大佬 : wjh876531738

    可以考虑下增加类似 Emacs 的前后左右,在 insert 模式下也能便捷移动。

    “`
    inoremap <C-f> <Right>
    inoremap <C-b> <Left>
    inoremap <C-a> <ESC>I
    inoremap <C-e> <ESC>A
    inoremap <C-d> <DEL>
    “`

    关于中文的问题,个人觉得倒是还好,习惯输入完中文之后都会按下 shift 重置会英文。

  • 資深大佬 : tankb52

    @newbieRenew
    VimIM 支持很多输入方案,不光是 86 五笔。

  • 資深大佬 : zhuisui

    https://github.com/rlue/vim-barbaric

  • 資深大佬 : yuancoder

    无解,建议换个编辑器或者直接使用英文

  • 資深大佬 : darksword21

    可以换成 emacs 然后用 emacs-rime ….

  • 資深大佬 : jdhao

    @dongyx https://github.com/ZSaberLv0/ZFVimIM
    这是新出来的一个用 vim 实现的输入法,也是一种方式,可以试试。

  • 資深大佬 : lancelock

    我的选择是,不输入中文

    说实话我现在输入完中文后会立刻下意识切换成英文,已经形成肌肉记忆了

  • 資深大佬 : MaxTan

    输入法问题不大,vim 写中文最痛苦的还是 e b 这些跳光标的操作吧,没有中文分词,习惯性点下 e 就跳到行尾了

  • 資深大佬 : knightdf

    这不就是按一下 shift 的事么?

  • 資深大佬 : namelosw

    用集成 VIM 的 Emacs

  • 資深大佬 : northisland

    厉害了

  • 主 資深大佬 : Liler

    @knightdf 如果对写代码或者英文熟悉了,写中文时有的时候会忘记按 shift,这时会多按几个按键,除非形成习惯。
    以前我也是这么做的,但是感觉有点麻烦,想找个更好的方法

  • 資深大佬 : northisland

    @darksword21 看起来很复古

  • 主 資深大佬 : Liler

    @dongyx 原生的功能几乎可以满足编辑需求了,有些不能满足的可以写点脚本,虽然安装了一些插件,经常使用的就那么几个,还是少用插件好。

    中文编辑我还是用 vim,对它熟悉了,越用越熟练,效率就会越来越高

  • 主 資深大佬 : Liler

    @wjh876531738 以前我就是这样做的,感觉繁琐,就想法找个更好的方案

  • 主 資深大佬 : Liler

    @zhuisui 昨天试用了下,总体还好,就是查找中文时需要切换输入法,还有个问题,推出编辑模式后者进入到 shell,想切换到英文输入法,需要按两次切换按键

  • 資深大佬 : mascteen

    emacs evil

  • 資深大佬 : ooops

    Rime 输入法的 asciimode 和 vimmode 就是解决这个问题的,不知道 Linux 上加了没,我当时只给 Squirrel 提了 PR

  • 資深大佬 : taogen

    IdeaVimExtension https://plugins.jetbrains.com/plugin/9615-ideavimextension

  • 資深大佬 : szzhiyang

    换用 Power Keys 的「空格编辑」功能,早换早受益:

    https://PowerKeys.GitHub.io/space

  • 資深大佬 : nightwitch

    https://github.com/lilydjwg/fcitx.vim
    回到 normal 模式的时候自动切英文,仅适用于 fctix

  • 資深大佬 : dongyx

    @Liler MacBook 用 Caps Lock 切换输入法之后我就基本能忍了。以前是外接显示器 + HHKB Pro 2,写中文就太难受了。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具