- using VSCodeVim
- have a Mac/Windows/Linux device
- download git-bash(if you on windows)
- know how to use shell
brew tap daipeihust/tap
brew install im-select
Or you can run following command in your console:
curl -Ls https://raw.githubusercontent.com/daipeihust/im-select/master/install_mac.sh | sh
The im-select program will be downloaded to your /usr/local/bin/
path.
Download the im-select.exe, and move it to the proper path.(If you need the 64 bit version, you can download this one.)
You don't have to install this for linux. linux have tools to switch input methods
If your PATH contains /usr/local/bin
, you can just use im-select
instead of /usr/local/bin/im-select
/usr/local/bin/im-select
/usr/local/bin/im-select imkey
For example /usr/local/bin/im-select com.apple.keylayout.US
@mengbo provided this configuration for ibus
"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}"
@VEL4EG provided this configuration for xkb-switch
"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "us",
"vim.autoSwitchInputMethod.obtainIMCmd": "/usr/local/bin/xkb-switch",
"vim.autoSwitchInputMethod.switchIMCmd": "/usr/local/bin/xkb-switch -s {im}"
@yunhao94 provided this configuration for fcitx
"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "1",
"vim.autoSwitchInputMethod.obtainIMCmd": "/usr/bin/fcitx-remote",
"vim.autoSwitchInputMethod.switchIMCmd": "/usr/bin/fcitx-remote -t {im}",
@d-r-q provide this configuration for gdbus
Put gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval "imports.ui.status.keyboard.getInputSourceManager().currentSource.index" | awk -F'[^0-9]*' '{print $2}'
into get-im.sh.
Put 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()"
into set-im.sh.
"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "0",
"vim.autoSwitchInputMethod.obtainIMCmd": "<path to get-im.sh>",
"vim.autoSwitchInputMethod.switchIMCmd": "<path to set-im.sh> {im}",
@igorechek06 provided this configuration for qdbus
"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "0",
"vim.autoSwitchInputMethod.obtainIMCmd": "/usr/bin/qdbus org.kde.keyboard /Layouts getLayout",
"vim.autoSwitchInputMethod.switchIMCmd": "/usr/bin/qdbus org.kde.keyboard /Layouts setLayout {im}",
The im-select.exe is command line program, but it can't work in cmd or powershell. It's microsoft's bug, the keyboard API doesn't support in cmd and powershell. I recommend you git-bash.
Note: The git-bash is not required. It's only used to get current input method key, which needed in VSCodeVim's configuration.
/path/to/im-select.exe
/path/to/im-select.exe locale
Note: The path in windows is like: C:\Users\path\to\file
If you find some issues, welcome to create pull request!
Give a ⭐️ if this project helped you!
Buy me a coffee, if you like it! If you have any problems, you can contact me via email!
This project is licensed under the terms of the MIT license.