X-Git-Url: https://git.xinqibao.xyz/dotfiles.git/blobdiff_plain/7f804cd964bc3bfd64b689a47663c94032de1719..5bf55e7a327bc780b3390b7a42685a2151937011:/.config/nvim/init.vim diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim index 4a6d558..ed35c32 100644 --- a/.config/nvim/init.vim +++ b/.config/nvim/init.vim @@ -3,16 +3,14 @@ let mapleader=" " set background=dark set termguicolors -set t_Co=256 "terminal color -set t_ut="" -"set term=xterm-256color "In order to display chinese in GBK -"let &termencoding=&encoding set fileencodings=utf-8,gbk set fileformat=unix set foldmethod=indent -set encoding=utf-8 "required for ycm +set foldlevelstart=99 +set foldlevel=99 +set encoding=utf-8 set tabstop=4 set softtabstop=4 @@ -71,7 +69,7 @@ endif call plug#begin() Plug 'morhetz/gruvbox' - Plug 'Yggdroot/indentLine' + Plug 'lukas-reineke/indent-blankline.nvim' Plug 'christoomey/vim-tmux-navigator' Plug 'vim-airline/vim-airline' @@ -83,36 +81,21 @@ call plug#begin() Plug 'preservim/nerdtree' Plug 'majutsushi/tagbar' - Plug 'plasticboy/vim-markdown' + Plug 'MeanderingProgrammer/render-markdown.nvim' Plug 'iamcco/markdown-preview.nvim', { 'do': 'cd app && npx --yes yarn install' } Plug 'tpope/vim-fugitive' - Plug 'airblade/vim-gitgutter' + Plug 'lewis6991/gitsigns.nvim' Plug 'kdheepak/lazygit.nvim' Plug 'neoclide/coc.nvim', {'branch': 'release'} Plug 'nvim-treesitter/nvim-treesitter' - """ - "" avante and its dependents - " Deps - Plug 'nvim-lua/plenary.nvim' - Plug 'MunifTanjim/nui.nvim' - Plug 'MeanderingProgrammer/render-markdown.nvim' - - " Optional deps - Plug 'hrsh7th/nvim-cmp' - Plug 'nvim-tree/nvim-web-devicons' "or Plug 'echasnovski/mini.icons' - Plug 'HakonHarnes/img-clip.nvim' Plug 'zbirenbaum/copilot.lua' - Plug 'stevearc/dressing.nvim' " for enhanced input UI - Plug 'folke/snacks.nvim' " for modern input UI - " Yay, pass source=true if you want to build from source - Plug 'yetone/avante.nvim', { 'branch': 'main', 'do': 'make' } - "" - "" + " execute 'source' fnameescape(expand(':p:h') . '/opt/avante.vim') + " execute 'source' fnameescape(expand(':p:h') . '/opt/leetcode.vim') call plug#end() @@ -140,10 +123,22 @@ endif " fzf.vim setting "---------------------- if has_key(plugs, 'fzf.vim') - "mapping for fzf.vim + function! s:ProjectRg(query) abort + let dir = expand('%:p:h') + let dir = isdirectory(dir) ? dir : getcwd() + let root = systemlist('git -C ' . shellescape(dir) . ' rev-parse --show-toplevel 2>/dev/null') + if v:shell_error || empty(root) + echoerr 'Not in a Git repository' + return + endif + call fzf#vim#grep2( + \ 'rg --hidden --glob "!.git" --column --line-number --no-heading --color=always --smart-case -- ', + \ a:query, fzf#vim#with_preview({'dir': root[0]})) + endfunction + + command! -nargs=* ProjectRg call ProjectRg() nnoremap :GFiles - "as default / pair used to page down/up entire page - nnoremap :Tags + nnoremap :ProjectRg endif "---------------------- @@ -233,11 +228,25 @@ endif "---------------------- if has_key(plugs, 'nvim-treesitter') lua require('plugin-config/nvim-treesitter') +endif + +if has_key(plugs, 'indent-blankline.nvim') + lua require('ibl').setup({ scope = { enabled = false } }) +endif + +if has_key(plugs, 'gitsigns.nvim') + lua require('plugin-config/gitsigns') +endif - "set foldmethod=expr - set foldmethod=indent - set foldexpr=nvim_treesitter#foldexpr() - set foldlevel=99 +if has_key(plugs, 'lazygit.nvim') + nnoremap lg :LazyGit +endif + +"---------------------- +" copilot.lua setting +"---------------------- +if has_key(plugs, 'copilot.lua') + lua require('plugin-config/copilot') endif "---------------------- @@ -247,14 +256,17 @@ if has_key(plugs, 'avante.nvim') lua require('plugin-config/avante') endif +"---------------------- +" leetcode.nvim setting +"---------------------- +if has_key(plugs, 'leetcode.nvim') + lua require('plugin-config/leetcode') +endif + nnoremap J :tabprevious nnoremap K :tabnext nnoremap J :tabmove -1 nnoremap K :tabmove +1 -nnoremap h -nnoremap j -nnoremap k -nnoremap l nnoremap " viwa"bi"lel nnoremap ' viwa'bi'lel nnoremap + :resize +5 @@ -273,10 +285,3 @@ xnoremap "HighLight trailing whitespace" highlight ExtraWhitespace ctermbg=red guibg=red match ExtraWhitespace /\s\+$/ - -"use powerline-vim for normal use -"instead of installing for both user and root -"run to install lib: pip3 install --user powerline-status -"python3 from powerline.vim import setup as powerline_setup -"python3 powerline_setup() -"python3 del powerline_setup