From 0e9ddbb0bf0cd34500155ea4b03de2e2a38d8ab2 Mon Sep 17 00:00:00 2001 From: Marvin Borner Date: Mon, 16 Mar 2020 23:33:42 +0100 Subject: Well I'm using Arch again --- .../autoload/airline/extensions/xkblayout.vim | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 .config/nvim/plugged/vim-airline/autoload/airline/extensions/xkblayout.vim (limited to '.config/nvim/plugged/vim-airline/autoload/airline/extensions/xkblayout.vim') diff --git a/.config/nvim/plugged/vim-airline/autoload/airline/extensions/xkblayout.vim b/.config/nvim/plugged/vim-airline/autoload/airline/extensions/xkblayout.vim new file mode 100644 index 0000000..7e00db3 --- /dev/null +++ b/.config/nvim/plugged/vim-airline/autoload/airline/extensions/xkblayout.vim @@ -0,0 +1,24 @@ +" MIT License. Copyright (c) 2017-2019 YoungHoon Rhiu et al. +" vim: et ts=2 sts=2 sw=2 + +scriptencoding utf-8 + +if !exists('g:XkbSwitchLib') + finish +endif + +function! airline#extensions#xkblayout#status() + let keyboard_layout = libcall(g:XkbSwitchLib, 'Xkb_Switch_getXkbLayout', '') + let keyboard_layout = split(keyboard_layout, '\.')[-1] + let short_codes = get(g:, 'airline#extensions#xkblayout#short_codes', {'2SetKorean': 'KR', 'Chinese': 'CN', 'Japanese': 'JP'}) + + if has_key(short_codes, keyboard_layout) + let keyboard_layout = short_codes[keyboard_layout] + endif + + return keyboard_layout +endfunction + +function! airline#extensions#xkblayout#init(ext) + call airline#parts#define_function('xkblayout', 'airline#extensions#xkblayout#status') +endfunction -- cgit v1.2.3