iT邦幫忙

1

VsCodeVim 自動在normal mode切回英文輸入法的方法

  • 分享至 

  • xImage
  •  

VsCodeVim 是 VSCode 讓你使用 Vim 模式的擴充套件,但是在VIM模式的 Normal mode 時,如果是在中文輸入法啟用的狀態,會導致無法動作(實際上在中文輸入模式也沒有用,因為Normal mode所有的指令都是英文的),所以VSCodeVim有提供一個在Normal mode自動切回英文輸入法,然後在進入Insert mode時自動復原先前輸入法的功能,但這個設定有點繞,不是直接點選啟用就會動,在Windows環境的步驟如下:

  1. 安裝im-select,這是一個可以切換輸入法的指令列工具,建議使用scoop的方法安裝,就不用自己額外去注意下載的是x86, x64,還有得額外自行手動設定路徑到PATH環境變數的手續。
    1. 將im-select repo加入到scoop:
    scoop bucket add im-select https://github.com/daipeihust/im-select
    
    1. 安裝im-select:
    scoop install im-select
    
    https://ithelp.ithome.com.tw/upload/images/20220916/20130498VqMhBzsLwg.png
  2. 在PowerShell視窗執行Get-Command im-select,紀錄列出的路徑,這個路徑會在VSCode的Vim設定步驟中使用到。
    https://ithelp.ithome.com.tw/upload/images/20220916/20130498RwSgL9NZfc.png
  3. 在命令列視窗,系統在英文鍵盤輸入模式時,執行im-select,會顯示目前的輸入法locale code,記錄下來以便在VSCode裡面設定時使用。
    https://ithelp.ithome.com.tw/upload/images/20220916/20130498dFd4ZFZEcX.png
  4. 在VSCode的Prefence裡找到Auto Switch Input Method的選項,依照如下圖1,2,3,4的順序填入輸入法locale code,im-select執行檔路徑,以及im-select切換輸入法的指令字串:
    https://ithelp.ithome.com.tw/upload/images/20220916/20130498x5KzLRTGPz.png
    第2個要填的就是前一個步驟執行 im-select 步驟得到的 im-select.exe 路徑位置,而第3個則是 im-select.exe 路徑位置之外,後面再加上 {im}參數。
    假如那個im-select路徑有錯誤的話,在第四個啟用Auto Switch Input Method打勾時,VSCode會跳出錯誤提示:
    https://ithelp.ithome.com.tw/upload/images/20220916/20130498QkPWKVySLU.png

之後在VSCode裡使用時,只要有按EscCtrl+[ 回到Vim Normal mode時,就會自動切回英文輸入法,而在按下 ia 進入Vim Insert mode時,就會自動切回原先離開時的中文輸入法。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言