diff --git a/init.vim b/init.vim old mode 100755 new mode 100644 index 7a19548..44c5384 --- a/init.vim +++ b/init.vim @@ -40,28 +40,28 @@ call plug#end() "set background=light colorscheme gruvbox let g:gruvbox_contrast_light = 'hard' - - +let g:vimtex_view_general_viewer = 'okular' "Open NERDTree :nnoremap g:NERDTree.IsOpen() ? "\:NERDTreeClose" : bufexists(expand('%')) ? "\:NERDTreeFind" : "\:NERDTree" "Coc.nvim inoremap - \ coc#pum#visible() ? coc#_select_confirm() : - \ coc#expandableOrJumpable() ? "\=coc#rpc#request('doKeymap', ['snippets-expand-jump',''])\" : - \ CheckBackSpace() ? "\" : - \ coc#refresh() + \ coc#pum#visible() ? coc#_select_confirm() : + \ coc#expandableOrJumpable() ? "\=coc#rpc#request('doKeymap', ['snippets-expand-jump',''])\" : + \ CheckBackSpace() ? "\" : + \ coc#refresh() inoremap pumvisible() ? coc#_select_confirm() - \: "\u\\=coc#on_enter()\" - + \: "\u\\=coc#on_enter()\" function! CheckBackSpace() abort - let col = col('.') - 1 - return !col || getline('.')[col - 1] =~# '\s' + let col = col('.') - 1 + return !col || getline('.')[col - 1] =~# '\s' endfunction -let g:coc_snippet_next = '' +let g:coc_snippet_next = '' +inoremap coc#pum#visible() ? coc#pum#confirm() + \: "\u\\=coc#on_enter()\" " Comments let mapleader = "," @@ -107,63 +107,76 @@ set splitright set splitbelow -function! IBusOff() - " Lưu engine hiện tại - let g:ibus_prev_engine = system('ibus engine') - " Chuyển sang engine tiếng Anh - " Nếu bạn thấy cái cờ ở đây - " khả năng là font của bạn đang render emoji lung tung... - " xkb : us :: eng (không có dấu cách) - silent! execute '!ibus engine xkb🇺🇸:eng' -endfunction +"function! IBusOff() +"let g:ibus_prev_engine = system('ibus engine') +"" xkb : us :: eng (không có dấu cách) +"silent! execute '!ibus engine xkb🇺🇸:eng' +"endfunction -function! IBusOn() - let l:current_engine = system('ibus engine') - " nếu engine được set trong normal mode thì - " lúc vào insert mode duùn luôn engine đó - if l:current_engine !~? 'xkb🇺🇸:eng' - let g:ibus_prev_engine = l:current_engine +"function! IBusOn() +"let l:current_engine = system('ibus engine') +"if l:current_engine !~? 'xkb🇺🇸:eng' +"let g:ibus_prev_engine = l:current_engine +"endif +"" Khôi phục lại engine +"silent! execute '!ibus engine ' . g:ibus_prev_engine +"endfunction + +"augroup IBusHandler +"autocmd CmdLineEnter [/?] silent call IBusOn() +"autocmd CmdLineLeave [/?] silent call IBusOff() +"autocmd CmdLineEnter \? silent call IBusOn() +"autocmd CmdLineLeave \? silent call IBusOff() +"autocmd InsertEnter * silent call IBusOn() +"autocmd InsertLeave * silent call IBusOff() +"augroup END + +"silent call IBusOff() +" +let g:input_lang = system('fcitx5-remote') +function! FcitxOff() + let l:input_status = system('fcitx5-remote') + let g:input_lang = l:input_status + if l:input_status == 2 "second input method + silent! execute '!fcitx5-remote -c' endif - " Khôi phục lại engine - silent! execute '!ibus engine ' . g:ibus_prev_engine endfunction -augroup IBusHandler - " Khôi phục ibus engine khi tìm kiếm - autocmd CmdLineEnter [/?] silent call IBusOn() - autocmd CmdLineLeave [/?] silent call IBusOff() - autocmd CmdLineEnter \? silent call IBusOn() - autocmd CmdLineLeave \? silent call IBusOff() - " Khôi phục ibus engine khi vào insert mode - autocmd InsertEnter * silent call IBusOn() - " Tắt ibus engine khi vào normal mode - autocmd InsertLeave * silent call IBusOff() +function! FcitxOn() + let l:input_status = system('fcitx5-remote') + if l:input_status == 1 + if g:input_lang == 2 + silent! execute '!fcitx5-remote -o' + endif + endif +endfunction + + +augroup fcitxHandler + autocmd CmdLineEnter [/?] silent call FcitxOn() + autocmd CmdLineLeave [/?] silent call FcitxOff() + autocmd CmdLineEnter \? silent call FcitxOn() + autocmd CmdLineLeave \? silent call FcitxOff() + autocmd InsertEnter * silent call FcitxOn() + autocmd InsertLeave * silent call FcitxOff() augroup END +let g:vimtex_view_general_viewer = 'okular' -silent call IBusOff() - -"Language tool -let g:ale_linter_aliases = {'tex': ['tex', 'markdown']} -let g:ale_languagetool_executable = "java" -let g:ale_languagetool_options = "-jar /data/kits/languagetool/languagetool-commandline.jar --languagemodel /data/kits/languagemodel/ --word2vecmodel /data/kits/languagemodel/ --disable WHITESPACE_RULE,COMMA_PARENTHESIS_WHITESPACE" -let g:ale_disable_lsp = 1 map :ALEToggle - - "Use 24-bit (true-color) mode in Vim/Neovim when outside tmux. "If you're using tmux version 2.2 or later, you can remove the outermost $TMUX check and use tmux's 24-bit color support "(see < http://sunaku.github.io/tmux-24bit-color.html#usage > for more information.) if (empty($TMUX)) - if (has("nvim")) - "For Neovim 0.1.3 and 0.1.4 < https://github.com/neovim/neovim/pull/2198 > - let $NVIM_TUI_ENABLE_TRUE_COLOR=1 - endif - "For Neovim > 0.1.5 and Vim > patch 7.4.1799 < https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162 > - "Based on Vim patch 7.4.1770 (`guicolors` option) < https://github.com/vim/vim/commit/8a633e3427b47286869aa4b96f2bfc1fe65b25cd > - " < https://github.com/neovim/neovim/wiki/Following-HEAD#20160511 > - if (has("termguicolors")) - set termguicolors - endif + if (has("nvim")) + "For Neovim 0.1.3 and 0.1.4 < https://github.com/neovim/neovim/pull/2198 > + let $NVIM_TUI_ENABLE_TRUE_COLOR=1 + endif + "For Neovim > 0.1.5 and Vim > patch 7.4.1799 < https://github.com/vim/vim/commit/61be73bb0f965a895bfb064ea3e55476ac175162 > + "Based on Vim patch 7.4.1770 (`guicolors` option) < https://github.com/vim/vim/commit/8a633e3427b47286869aa4b96f2bfc1fe65b25cd > + " < https://github.com/neovim/neovim/wiki/Following-HEAD#20160511 > + if (has("termguicolors")) + set termguicolors + endif endif