Ⅰ. 插件描述
Switch your X keyboard layouts from the command lineⅡ. 基本信息
|
Ⅲ. 安装方法
使用Vundle管理器安装
在你的.vimrc下添加:Plugin 'ierton/xkb-switch'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall
对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。
使用NeoBundle管理器安装
在你的.vimrc下添加:NeoBundle 'ierton/xkb-switch'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall
使用VimPlug管理器安装
在你的.vimrc下添加:Plug 'ierton/xkb-switch'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall
使用Pathogen管理器安装
在终端中运行以下命令:cd ~/.vim/bundle
git clone https://github.com/ierton/xkb-switch
Ⅳ. 文档说明
XKB-SWITCH
by J. Bromley, S. Mironov, Alexei Rad'kov
xkb-switch is a C++ program that allows to query and change the XKB layout state.
Originally ruby-based code written by J.Broomley.
- XKeyboard.cpp Implementation for XKB query/set class
- XKbSwitch.cpp Main program
- XKbSwitchApi.cpp The Vim API bindings
The C++ class has no special dependencies on anything outside of
X-related libraries, so it can be easily used with other software.
Xkb-switch is licensed under the GNU GPLv3, see COPYING for details.
Installing
Package libxkbfile-dev (or libxkbfile-devel for Fedora) needs to be
installed to build the program.
To build the program manually, unpack the tarball and cd to source directory.
Nix users may use nix-shell to enter the minimally
sufficient development shell or nix-build to build the sources. Other
distributions typically require the following commands to build in install the
program:
$ mkdir build && cd build
$ cmake ..
$ makeIn order to install, use your system's package manager or default to the following:
$ sudo make installOn some distributions, you may need to update the program cache if it's the
first time you're installing this program
$ sudo ldconfigUsage
$ xkb-switch --help
Usage: xkb-switch -s ARG Sets current layout group to ARG
xkb-switch -l|--list Displays all layout groups
xkb-switch -h|--help Displays this message
xkb-switch -v|--version Shows version number
xkb-switch -w|--wait [-p] Waits for group change and exits
xkb-switch -W Infinitely waits for group change
xkb-switch -n|--next Switch to the next layout group
xkb-switch [-p] Displays current layout groupA note on xkb-switch -x
Command line option xkb-switch -x has been removed recently. Please, use `setxkbmap
-query or setxkbmap -print` to obtain debug information.
VIM integration
Xkb-switch goes with a library libxkbswitch.so which can be called from
within Vim scripts like this:
let g:XkbSwitchLib = "/path/to/libxkbswitch.so"
echo libcall(g:XkbSwitchLib, 'Xkb_Switch_getXkbLayout', '')
call libcall(g:XkbSwitchLib, 'Xkb_Switch_setXkbLayout', 'us')See also article in Russian
describing complex solution.
Layout groups
xkb-group.sh can help you to manage layout groups. Just run it and send some
input at it's stdin every time you want to trigger layouts from primary to
secondary and back. For example:
$ xkb-group.sh us ru
switch # switch from us to ru or from current layout to us
switch # switch from ru to us or from us to ru
(from other terminal)
$ xkb-switch -s de # switch to 'de' layout, change secondary layout to 'de'
(back to terminal running xkb-group.sh)
switch # switch from de to us
switch # switch from us to deBugs or Problems
Admittedly, I only tested with a few different layouts that I used. If you find
any bugs let me know by submitting an issue or via grrwlf@gmail.com.
Regards,
Sergey.