精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

這個方法,讓 Vim 輸入中文成為一種享受

系統
我相信,你在 Vim 中輸入中文時,一定有過很痛苦的經歷:在切換為命令模式時,需要切換為英文輸入法,然后在插入模式時,再切換為中文,這兩次切換,讓原本高效的 Vim 顯得笨拙無比,這個麻煩,勸退了很多 Vim 初學者。

[[423098]]

我相信,你在 Vim 中輸入中文時,一定有過很痛苦的經歷:在切換為命令模式時,需要切換為英文輸入法,然后在插入模式時,再切換為中文,這兩次切換,讓原本高效的 Vim 顯得笨拙無比,這個麻煩,勸退了很多 Vim 初學者。

現在,這個麻煩不存在了,因為這里有一個方法,可以讓 Vim 退出插入模式的時候自動切換為英文輸入法,再回到插入模式時自動恢復為原來的輸入法。Windows 或 MacOS 都可以實現。現在,只要是涉及文本編輯的,我都用 Vim,輸入中文再也不麻煩了,甚至是一種享受。

以下是具體的方法:

Windows

如果你用的是 Windows,我假設你用的是 gVim,因為 Windows 的 cmd 實在太糟糕,用 Vim 不方便也不美觀。

Vim 本身有這方面的設置,你可以查看幫助文檔,Vim 命令模式下輸入 :help iminsert 查看詳情。

具體解決方法:

在命令模式中輸入 :edit $VIM/_vimrc,在代碼最后添加以下代碼:

  1. if has('multi_byte_ime')   
  2.  "未開啟 IME 時光標背景色   
  3.  hi Cursor guifg=bg guibg=Orange gui=NONE   
  4.  "開啟IME 時光標背景色   
  5.  hi CursorIM guifg=NONE guibg=Skyblue gui=NONE   
  6.  "關閉Vim的自動切換 IME 輸入法(插入模式和檢索模式)   
  7.  set iminsert=0 imsearch=0   
  8.  "插入模式輸入法狀態未被記錄時,默認關閉IME   
  9.  "inoremap <silent> <ESC> <ESC>:set iminsert=0<CR>   
  10. endif 

注意,vim 配置語法中,雙引號后面的內容為注釋。上述配置在本人的 Windows 上電腦親測有效。

如果無效,你還可以試下網上的方法[1]:

  1. if has('gui_running'
  2.   set imactivatekey=C-space   
  3.   inoremap <ESC> <ESC>:set iminsert=2<CR> 
  4. endif 

MacOS

MacOS 自帶 Vim,與 gVim 不同,Vim 則需要借助于 smartim 插件來實現,smartim 依賴 im-select 程序,不過在安裝 smartim 時會自動安裝 im-select。

smartim 插件依靠 Vim 的 autocmd 機制,就是進入命令模式時先把正在使用的輸入法保存起來,然后切換到默認的輸入法,進入插入模式時再切換為之前的輸入法:

  1. augroup smartim 
  2.   autocmd! 
  3.   autocmd VimLeavePre * call Smartim_SelectDefault() 
  4.   autocmd InsertLeave * call Smartim_SelectDefault() 
  5.   autocmd InsertEnter * call Smartim_SelectSaved() 
  6. augroup end 

以下是具體的安裝步驟:

1、先安裝 Vim 的插件管理器 Vundle

你可以不安裝 Vundle,然后手動安裝 smartim,不過不推薦你這樣做,因為將文件復制到指定的目錄是件麻煩事,而且后面你可能需要更多好用的插件。

  1. git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim 

2、配置 Vundle,添加 smartim 插件。

打開 Vim,命令模式下輸入 :edit $MYVIMRC 編輯 ~/.vimrc 文件,在文件的最開始處添加以下代碼:

  1. set nocompatible              " be iMproved, required 
  2. filetype off                  " required 
  3.  
  4. set the runtime path to include Vundle and initialize 
  5. set rtp+=~/.vim/bundle/Vundle.vim 
  6. call vundle#begin() 
  7. " alternatively, pass a path where Vundle should install plugins 
  8. "call vundle#begin('~/some/path/here'
  9.  
  10. " let Vundle manage Vundle, required 
  11. Plugin 'VundleVim/Vundle.vim' 
  12. Plugin 'ybian/smartim' 
  13. All of your Plugins must be added before the following line 
  14. call vundle#end()            " required 
  15. filetype plugin indent on    " required 
  16. To ignore plugin indent changes, instead use: 
  17. "filetype plugin on 
  18. " Brief help 
  19. " :PluginList       - lists configured plugins 
  20. " :PluginInstall    - installs plugins; append `!` to update or just :PluginUpdate 
  21. " :PluginSearch foo - searches for foo; append `!` to refresh local cache 
  22. " :PluginClean      - confirms removal of unused plugins; append `!` to auto-approve removal 
  23. " see :h vundle for more details or wiki for FAQ 
  24. " Put your non-Plugin stuff after this line 

上述代碼中已經加入了 smartim 插件:Plugin 'ybian/smartim'。

保存退出 Vim,然后重新打開,配置文件就生效了,這時在命令模式下輸入:PluginInstall 等待 smartim 插件完成安裝。

安裝完成之后,你就可以自由愉快的在插入模式下輸入中文,然后一個 ESC 就可以自動切換為英文輸入法了。

如果沒有生效,請往下看。

修改 smartim 命令模式默認的輸入法

我當時這一步做完還不行,因為我的 Mac 英文輸入法是 com.apple.keylayout.ABC,手動切換到英文輸入法,然后使用 im-select 查看:

  1. ❯ pwd 
  2. /Users/aaron/.vim/bundle/smartim/plugin 
  3. ❯ ./im-select 
  4. com.apple.keylayout.ABC 

而 smartim 默認的命令模式輸入法是 com.apple.keylayout.US,因此需要在 vimrc 中指定 smartim 的默認輸入法:

  1. let g:smartim_default = 'com.apple.keylayout.ABC' 

再試就可以了。

修改 smartim 的延遲

當你使用的過程中會發現,按下 ESC 之后,短暫的時間內輸入法還沒有切換為英文,這種卡頓讓輸入比較快的鍵盤手無法忍受。

解決方法是在 smartim.vim 文件中添加 set timeoutlen=0

  1. ❯ pwd 
  2. /Users/aaron/.vim/bundle/smartim/plugin 
  3. ❯ ls 
  4. im-select   smartim.vim 

在 smartim.vim 文件的最后,添加 set timeoutlen=0:

  1. augroup smartim 
  2.   autocmd! 
  3.   set timeoutlen=0 
  4.   autocmd VimLeavePre * call Smartim_SelectDefault() 
  5.   autocmd InsertLeave * call Smartim_SelectDefault() 
  6.   autocmd InsertEnter * call Smartim_SelectSaved() 
  7. augroup end 

這樣問題解決。不過這會產生一個小問題,就是自定義的快捷鍵會失效,比如你定義了 jj 表示 ESC

 

  1. imap jj <Esc> 

因為沒有了延遲,當你輸入第二個 j 的時候,Vim 不會把它當做組合。不過不用 jj 也罷。

如果很糾結這個,可以在函數 Smartim_SelectDefault() 的第一行添加 set timeoutlen=0在函數 Smartim_SelectSaved() 的第一行添加 set timeoutlen=500,不過即使如此,仍會有 500ms 的延遲。

最后的話

本文分享了 Vim 中文輸入的痛點解決辦法,親測可用,Linux 可以參考 MacOS 的做法。這樣你就可以在 Vim 中自由自在的輸入中文了,是不是很爽?

 

從此,用 Vim 編程和寫文檔變成一種享受。

 

責任編輯:武曉燕 來源: Python七號
相關推薦

2015-04-15 09:44:58

CodeReview程序員

2014-12-16 13:49:59

華為MCU視頻會議系統

2019-01-21 17:32:25

華為

2011-12-28 21:18:18

App

2020-10-22 10:09:04

Facebook AIVR

2011-07-04 17:53:48

快速測試

2020-05-29 10:26:43

遠程工作新冠病毒虛擬化

2015-09-11 16:11:56

CIO時代網

2019-03-27 15:00:59

多云公共云混合云

2023-02-26 23:10:09

存儲Linux架構

2023-07-25 15:10:36

Linux存儲

2021-06-04 08:58:41

Linux運維Linux系統

2018-04-16 09:43:39

2022-03-04 22:29:56

區塊鏈技術經濟

2017-12-05 15:30:12

2013-06-28 11:25:46

2016-03-07 10:51:02

華為華為合作伙伴伙伴大會

2021-06-11 00:11:23

GPS數據協議

2010-03-26 13:34:47

CentOS安裝

2018-12-14 14:30:12

安全檢測布式系測試
點贊
收藏

51CTO技術棧公眾號

日韩av123| 亚洲成人自拍一区| 国产精品永久在线| 青青草成人免费| 极品束缚调教一区二区网站 | 网站永久看片免费| 日韩精品一区国产| 91精品福利在线| 嫩草影院中文字幕| 超碰免费在线观看| 国产成人av福利| 国产99久久精品一区二区永久免费| 殴美一级黄色片| 亚洲免费成人av在线| 91精品国模一区二区三区| 香港三级韩国三级日本三级| 日韩三级影院| 久久亚洲一区二区三区明星换脸 | 免费久久久久久久久| а√资源新版在线天堂| 国产视频久久| 欧美日韩xxxxx| 中文字幕第69页| 一本色道久久综合亚洲精品酒店| 欧美高清一级片在线| 国产a视频免费观看| 久久亚洲资源| 亚洲欧美国产77777| 日韩免费电影一区二区| 特黄视频在线观看| 国产精品一二三四区| 国产精品伦子伦免费视频| www.国产com| 1024成人| 欧美黑人巨大xxx极品| 99热在线观看精品| 欧洲激情综合| 亚洲女同精品视频| 中文字幕丰满孑伦无码专区| jizz性欧美23| 欧美videos大乳护士334| 在线观看av免费观看| 成人18视频在线观看| 色94色欧美sute亚洲线路一ni | 久久国产三级精品| 国产成人在线亚洲欧美| 国产三级精品三级在线观看| 影音先锋在线一区| 国产做受高潮69| 精品少妇久久久| 黑人一区二区三区四区五区| 欧美成人精品激情在线观看 | 欧美日韩卡一| 91久久香蕉国产日韩欧美9色| 91成人在线观看喷潮教学| 欧美人与牲禽动交com| 亚洲黄一区二区三区| 五月天在线免费视频| 超碰在线免费播放| 亚洲激情五月婷婷| 日韩中文字幕在线免费| 涩涩视频在线播放| 欧美午夜女人视频在线| 亚洲熟妇av一区二区三区| 在线天堂资源www在线污| 欧美性猛交xxxx富婆| 国产xxxxx在线观看| 久久sese| 香蕉视频官网在线观看日本一区二区| 国产又爽又黄网站亚洲视频123| 欧美jizz18hd性欧美| 久久久九九九九| 日韩欧美精品一区二区| 中文字幕日本在线观看| 国产精品久久久久久久久快鸭| 亚洲欧美日韩在线综合| 黄网站免费在线播放| 亚洲成人一品| 狠狠久久五月精品中文字幕| 精品免费国产一区二区| 黄色www在线观看| 日韩中文字幕三区| 97在线免费观看| 制服丝袜在线第一页| 国产 日韩 欧美 综合 一区| 亚洲精品国产精品国自产在线 | 小泽玛利亚一区二区免费| 成人爽a毛片免费啪啪红桃视频| 亚洲国产精久久久久久 | 欧美人成在线观看ccc36| 亚洲男人天堂古典| 永久av免费网站| 亚洲黄色影院| 国产啪精品视频| 欧美一级免费片| 国产日韩成人精品| 久久手机在线视频| 成人黄页网站视频| 亚洲成人久久电影| 欧美色图17p| 亚洲精品麻豆| 91精品国产自产在线老师啪| 神马一区二区三区| 国产精品国模大尺度视频| 国产资源在线免费观看| 国产一区二区三区朝在线观看| 777欧美精品| 一区二区三区四区免费| 欧美va天堂在线| 成人深夜视频在线观看| 国内精品400部情侣激情| 免费看毛片网站| 国产精品亚洲一区二区三区妖精| 欧美精品亚洲| 超碰在线97国产| 欧美亚洲综合网| 成人网站免费观看| 欧美国产综合| 国产一区在线播放| 色综合888| 亚洲国产精品一区二区久久 | 国产3p露脸普通话对白| 亚洲欧美久久精品| 国产午夜精品美女视频明星a级| 久久久久久免费观看| 久久福利资源站| 日韩av高清| 625成人欧美午夜电影| 欧美成人精品二区三区99精品| 刘亦菲国产毛片bd| 日韩二区三区在线观看| 欧美大陆一区二区| h片精品在线观看| 日韩女优毛片在线| 99久久99久久精品国产| 久久精品国产色蜜蜜麻豆| 欧美日韩另类丝袜其他| 色在线视频观看| 奇米一区二区| 123区在线| 9lporm自拍视频区在线| 少妇高潮一区二区三区99| 日韩欧美视频一区二区三区| 第一页在线视频| 中文字幕免费一区二区| 成人午夜在线观看| 免费成人av电影| 国产精品88久久久久久| 66m—66摸成人免费视频| 亚洲国产精彩视频| 国产国语亲子伦亲子| 日韩国产精品久久久| 久久精品国产美女| 热色播在线视频| 亚洲美女激情视频| 日韩免费av网站| 中文欧美字幕免费| 一道本在线免费视频| 久久蜜桃av| 亚洲a在线播放| 青春草视频在线观看| 欧美成人精品高清在线播放| 国产极品在线播放| 91最新地址在线播放| 成人小视频在线看| jizzjizz欧美69巨大| 国产精品爽爽ⅴa在线观看| jizz日韩| 欧美一级在线视频| 国产在线拍揄自揄拍| www.日韩大片| 久久精品99国产| 色婷婷热久久| av资源站久久亚洲| 中老年在线免费视频| 中文字幕精品久久| www.99视频| 色香蕉久久蜜桃| 国产精品乱子乱xxxx| 国产一区二区三区四区五区在线 | 午夜在线视频观看日韩17c| 国产一区二区三区在线| 亚洲国产aⅴ天堂久久| 国产精品jizz在线观看老狼| 狂野欧美xxxx韩国少妇| 欧美极品少妇xxxxx| 日本福利午夜视频在线| 日本欧美韩国国产| 婷婷亚洲久悠悠色悠在线播放| 99久久久久久久久久| 蜜桃视频在线观看一区| 大胆欧美熟妇xx| 精品产国自在拍| 91免费观看| 日韩性xxx| 欧美激情综合亚洲一二区| 久久电影中文字幕| 精品少妇一区二区三区在线播放| 亚洲成熟少妇视频在线观看| 亚洲人123区| 91传媒免费视频| 日韩中文字幕免费在线| 国产福利一区二区三区在线播放| 久久久久999| 亚洲欧洲视频在线观看| 69久久夜色精品国产69蝌蚪网| 妺妺窝人体色777777| 日本99精品| 国产精品欧美日韩| 免费h视频在线观看| 不卡毛片在线看| 国产黄色免费在线观看| 日韩精品在线看片z| 一区二区 亚洲| 一本到不卡免费一区二区| 69av.com| a网站在线观看| 国产日韩欧美不卡| 少妇被狂c下部羞羞漫画| 九九热在线视频观看这里只有精品| 精品成在人线av无码免费看| 天天影视综合| 视频一区二区三| 性人久久久久| 韩国成人av| 国产伦精品一区二区三区在线播放 | 亚洲国产成人久久| va视频在线观看| 在线成人免费观看| 中文有码在线播放| 色综合激情久久| 9i看片成人免费看片| 精品久久久视频| 国产精品老女人| 亚洲aaa精品| 国产精品成人国产乱| 亚洲一区电影777| 久久网免费视频| 亚洲图片欧美色图| 久久亚洲成人av| 亚洲高清免费观看| 日本三级欧美三级| 午夜久久久影院| 免费观看成人毛片| 一本色道亚洲精品aⅴ| 黄色片免费观看视频| 日韩欧美国产视频| 婷婷激情五月综合| 奇米影视一区二区三区| 97久久精品人人做人人爽| 成人av蜜桃| 久久免费福利| 亚洲mm色国产网站| 免费一级欧美在线大片| 亚洲自拍欧美色图| 91免费精品国偷自产在线在线| 成人3d动漫一区二区三区91| 91精品导航| 精品国产区在线| 自拍欧美一区| 视频一区二区三| 久久久久久美女精品| 亚洲午夜精品久久久久久浪潮| 色喇叭免费久久综合网| 免费观看中文字幕| 欧美视频福利| 国产成人精品视频免费看| 久久久久.com| 污版视频在线观看| 国产成人综合网站| 成人性生活免费看| 国产亚洲精品久| 青花影视在线观看免费高清| 亚洲精选视频在线| 国产无人区码熟妇毛片多| 91久久国产最好的精华液| 91成人一区二区三区| 日韩欧美亚洲国产精品字幕久久久| 六月丁香综合网| 亚洲最新中文字幕| av色综合久久天堂av色综合在| 欧美激情精品久久久久久| 亚洲天堂导航| 96pao国产成视频永久免费| 久久动漫网址| 一本一道久久a久久精品综合| 欧美性久久久| 牛夜精品久久久久久久| 国产成人av影院| 青青草国产精品一区二区| 韩国av网站在线| 777精品视频| 成人亚洲精品| 免费在线国产精品| 欧美日韩日本国产亚洲在线 | 精品精品国产高清一毛片一天堂| 国产精品v日韩精品| 国产婷婷视频在线| 97免费视频在线| 久久免费影院| 国新精品乱码一区二区三区18| 精品日产免费二区日产免费二区| 亚洲欧洲久久| 国产情侣免费视频| 国产 日韩 欧美大片| 一区二区三区伦理片| 一二三四社区欧美黄| 波多野结衣电车痴汉| 精品国产91九色蝌蚪| 免费观看在线午夜影视| 欧美一区三区三区高中清蜜桃| 国产精品18| 水蜜桃一区二区| 国产欧美一区二区三区国产幕精品| 伊人色在线视频| 国产日韩欧美电影| 国产专区第一页| 精品福利av导航| 黄色成年人视频在线观看| 热久久美女精品天天吊色| 日韩欧美中文字幕一区二区三区| 婷婷亚洲婷婷综合色香五月| 亚洲第一网站| 国产又粗又猛又爽又黄| 国产精品三级在线观看| 一级特黄免费视频| 日韩精品中文字幕久久臀| heyzo在线| 国产日韩二区| 亚洲国产影院| 亚洲免费观看在线| 一区二区三区日韩在线观看| 一级片一区二区三区| 中文国产成人精品久久一| 欧美香蕉视频| 任我爽在线视频精品一| 亚洲欧美日韩专区| 公侵犯人妻一区二区三区| 黑人巨大精品欧美一区二区一视频| 高清国产mv在线观看| 久久777国产线看观看精品| 国产精品毛片无码| 香蕉视频免费版| 国产成人在线影院| 九九热精品在线观看| 精品国偷自产国产一区| www欧美xxxx| 久久99九九| 久久精品女人| 人妻大战黑人白浆狂泄| 色香蕉久久蜜桃| 99视频在线观看地址| 国产精品电影观看| 欧美电影三区| 超碰中文字幕在线观看| 一区二区三区国产精品| 黄色小视频免费观看| 77777少妇光屁股久久一区| 亚洲精品亚洲人成在线观看| 国产精品99久久免费黑人人妻| 国产亚洲一二三区| 国产精品久久久久久久成人午夜| 久久精品视频99| 一区二区视频| 国产亚洲精品网站| 国产精品三级在线观看| 国产成人精品一区二区无码呦| 欧美精品第一页在线播放| 色愁久久久久久| 在线观看免费黄网站| 亚洲人成7777| 午夜视频免费在线| 国产精品久久激情| 亚洲成人一区| yy1111111| 欧美午夜视频网站| 影音先锋男人资源在线| 精品一区二区三区日本| 免费的成人av| 精品视频在线观看免费| 亚洲图中文字幕| 日韩精品三级| 亚洲精品高清无码视频| 亚洲日本青草视频在线怡红院| 黄色aaa毛片| 国产精品午夜一区二区欲梦| 欧美激情第8页| av女人的天堂| 亚洲最新视频在线观看| 一级黄色片在线免费观看| 一区二区三区四区激情| 国产资源在线播放| 99re视频在线观看| 久久九九免费| 精品无人区乱码1区2区3区在线 | 亚洲一区二区久久| 亚洲天堂av资源在线观看| jizz欧美激情18| 亚洲综合视频网| av每日在线更新|