Input Method Since 1.32
Automatically switch the input method when entering and exiting Insert Mode.
Any third-party program can be used to switch input methods.
Below, you'll find instructions for installing and using input method switchers on various operating systems.
Setup
Linux
Install an input method switcher.
- ibus - A powerful input method framework.
- xkb-switch - A lightweight utility for XKB-based layouts.
- fcitx - A flexible and feature-rich input method platform.
- gdbus - A command-line tool for switching input methods.
- qdbus - A D-Bus tool for communication with input methods.
Example gdbus scripts
You will need two scripts. One getter and one setter.
sh#!/usr/bin/env sh 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}'
sh#!/usr/bin/env sh 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()"
NOTE
You may need to make the scripts executable:
chmod +x im-get im-set
Determine your default input method.
Switch your input method to English and execute the relevant command:
shibus engine
shxkb-switch
shfcitx-remote
shim-get
shqdbus org.kde.keyboard /Layouts getLayout
Configure the NeoVintageous input method.
Open the settings from the the Command Palette,
Ctrl+Shift+P
(Win/Linux) orCmd+Shift+P
(Mac), and add the settings:json{ "vintageous_auto_switch_input_method": true, "vintageous_auto_switch_input_method_default": "xkb:us::eng", "vintageous_auto_switch_input_method_get_cmd": "/usr/bin/ibus engine", "vintageous_auto_switch_input_method_set_cmd": "/usr/bin/ibus engine {im}" }
json{ "vintageous_auto_switch_input_method": true, "vintageous_auto_switch_input_method_default": "us", "vintageous_auto_switch_input_method_get_cmd": "/usr/local/bin/xkb-switch", "vintageous_auto_switch_input_method_set_cmd": "/usr/local/bin/xkb-switch -s {im}" }
json{ "vintageous_auto_switch_input_method": true, "vintageous_auto_switch_input_method_default": "1", "vintageous_auto_switch_input_method_get_cmd": "/usr/bin/fcitx-remote", "vintageous_auto_switch_input_method_set_cmd": "/usr/bin/fcitx-remote -t {im}" }
json{ "vintageous_auto_switch_input_method": true, "vintageous_auto_switch_input_method_default": "0", "vintageous_auto_switch_input_method_get_cmd": "/path/to/im-get", "vintageous_auto_switch_input_method_set_cmd": "/path/to/im-set {im}" }
json{ "vintageous_auto_switch_input_method": true, "vintageous_auto_switch_input_method_default": "0", "vintageous_auto_switch_input_method_get_cmd": "/usr/bin/qdbus org.kde.keyboard /Layouts getLayout", "vintageous_auto_switch_input_method_set_cmd": "/usr/bin/qdbus org.kde.keyboard /Layouts setLayout {im}" }
Mac
Install an input method switcher.
- im-select - A versatile input switching tool.
Determine your default input method.
Switch your input method to English and execute the following commands in your terminal:
im-select
Configure the NeoVintageous input method.
Open the settings from the the Command Palette,
Ctrl+Shift+P
(Win/Linux) orCmd+Shift+P
(Mac), and add the settings:json{ "vintageous_auto_switch_input_method": true, "vintageous_auto_switch_input_method_default": "com.apple.keylayout.US", "vintageous_auto_switch_input_method_get_cmd": "/usr/local/bin/im-select", "vintageous_auto_switch_input_method_set_cmd": "/usr/local/bin/im-select {im}" }
Windows
Install an input method switcher.
- im-select - A versatile input switching tool.
Determine your default input method.
Switch your input method to English and execute the following commands in your terminal:
shim-select
Configure the NeoVintageous input method.
Open the settings from the the Command Palette,
Ctrl+Shift+P
(Win/Linux) orCmd+Shift+P
(Mac), and add the settings:json{ "vintageous_auto_switch_input_method": true, "vintageous_auto_switch_input_method_default": "1033", "vintageous_auto_switch_input_method_get_cmd": "D:\\bin\\im-select.exe", "vintageous_auto_switch_input_method_set_cmd": "D:\\bin\\im-select.exe {im}" }
Settings
vintageous_auto_switch_input_method
- Type:
boolean
- Default:
false
Enable automatic switching of input methods.
vintageous_auto_switch_input_method_default
- Type:
string
- Default:
''
The default input method to be used.
vintageous_auto_switch_input_method_get_cmd
- Type:
string
- Default:
''
The full path to the command used to retrieve the current input method key.
vintageous_auto_switch_input_method_set_cmd
- Type:
string
- Default:
''
The full path to the command used to switch input methods, where {im}
is a placeholder for the input method key.