關於 VIM 和輸入法相關的配置

VSCodeVIM 輸入法配合的設置

VSCodeVIM 是 VSCode 的 vim 擴展,其輸入法相關的設置目僅在 macOS 和 Win 平臺上支持較好,Linux 系統還有待完善。

對於 macOS 系統,需要先參考 https://github.com/daipeihust... 安裝 im-select,然後在 VSCode 中配置如下內容:

"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "com.apple.keylayout.ABC",
"vim.autoSwitchInputMethod.obtainIMCmd": "/usr/local/bin/im-select",
"vim.autoSwitchInputMethod.switchIMCmd": "/usr/local/bin/im-select {im}"

其中 com.apple.keylayout.ABC 是缺省的英文輸入法。

對於 Linux 系統,VSCode 中的配置如下:

"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "xkb:us::eng",
"vim.autoSwitchInputMethod.obtainIMCmd": "/usr/bin/ibus engine",
"vim.autoSwitchInputMethod.switchIMCmd": "/usr/bin/ibus engine {im}"

此方法僅限於 ibus 輸入法,並且在 Gnome 的系統托盤中顯示的有些問題,但至少是可以正常工作的。

macOS 下 MacVim 圖形界面的輸入法配置

對於 macOS 系統的缺省輸入法,配置比較簡單,只要在 ~/.gvimrc 中加入如下代碼就可以了:

" Set the input method for Mac
if has("gui_macvim")
  autocmd! InsertEnter * set noimdisable
  autocmd! InsertLeave * set imdisable
endif

Linux 下 gVim 圖形界面的輸入法配置

由於 Linux 平臺下圖形界面以及其輸入法生態複雜,很難向 macOS 那樣有統一的簡單設置,參考 VSCodeVIM 配置的思路,對於 ibus 輸入法已經有了 vim-ibus 插件可以控制輸入法,其原理同上面 VSCodeVIM 的思路完全一樣,具體的配置細節可以參考我的 splite.vim 項目。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章