diff options
-rw-r--r-- | .config/nvim/init.vim | 12 | ||||
-rwxr-xr-x | .local/share/bin/fcitx5-temp-off | 8 | ||||
-rwxr-xr-x | .local/share/bin/fcitx5-temp-restore | 7 |
3 files changed, 21 insertions, 6 deletions
diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index 569e220..4f46e2d 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -350,12 +350,7 @@ else set signcolumn=yes endif -if has('patch8.1.1068') - " Use `complete_info` if your (Neo)Vim version supports it. - inoremap <expr> <cr> complete_info()["selected"] != "-1" ? "\<C-y>" : "\<C-g>u\<CR>" -else - imap <expr> <cr> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>" -endif +inoremap <silent><expr> <CR> coc#pum#visible() ? coc#pum#confirm() : "\<C-g>u\<CR>\<c-r>=coc#on_enter()\<CR>" " coc code navigation map <silent> <leader>cd <Plug>(coc-definition) @@ -421,3 +416,8 @@ augroup END " sneak let g:sneak#use_ic_scs = 0 + +" fcitx5 +autocmd InsertEnter * call system("fcitx5-temp-restore &") +autocmd InsertLeave * call system("fcitx5-temp-off &") + diff --git a/.local/share/bin/fcitx5-temp-off b/.local/share/bin/fcitx5-temp-off new file mode 100755 index 0000000..b2f8ea9 --- /dev/null +++ b/.local/share/bin/fcitx5-temp-off @@ -0,0 +1,8 @@ +#!/bin/sh +mkdir -p "$XDG_DATA_HOME/fcitx5" +fcitx5-remote > "$XDG_DATA_HOME/fcitx5/state" +fcitx5-remote -n > "$XDG_DATA_HOME/fcitx5/ime_name" + +fcitx5-remote -c +fcitx5-remote -s 'keyboard-us' + diff --git a/.local/share/bin/fcitx5-temp-restore b/.local/share/bin/fcitx5-temp-restore new file mode 100755 index 0000000..d00b11c --- /dev/null +++ b/.local/share/bin/fcitx5-temp-restore @@ -0,0 +1,7 @@ +#!/bin/sh +[ ! -e "$XDG_DATA_HOME/fcitx5/state" ] && exit +[ ! -e "$XDG_DATA_HOME/fcitx5/ime_name" ] && exit + +[ `cat "$XDG_DATA_HOME/fcitx5/state"` = "1" ] && fcitx5-remote -c +[ `cat "$XDG_DATA_HOME/fcitx5/state"` = "2" ] && fcitx5-remote -o +cat "$XDG_DATA_HOME/fcitx5/ime_name" | xargs fcitx5-remote -s |