Forráskód Böngészése

nvim: add sneak, airline, ctrlp, emmet configs + more sensible basic settings + mappings for coc-git

Noah Vogt 3 éve
szülő
commit
c84b7b7445

+ 24 - 1
dot-config/nvim/general/basic.vim

@@ -12,15 +12,20 @@ set path+=**
 set wildmenu
 
 " making me comfortable
-set nu
+set number
 set tabstop=4 softtabstop=4
 set shiftwidth=4
+
+"convert tabs to spaces
 set expandtab
 set nosmartindent
 set nocindent
 set smartcase
+
+" disable swapfiles (mostly to avoid problems)
 set noswapfile
 set nobackup
+
 set incsearch
 set spelllang=de_ch,en
 set noshowmode
@@ -41,3 +46,21 @@ set colorcolumn=80
 
 " set encoding
 set encoding=utf-8
+
+" enable mouse
+set mouse=a
+
+" horizontal splits will automatically be below
+set splitbelow
+
+" vertical splits will automatically be to the right
+set splitright
+
+" so that I can see `` in markdown files
+set conceallevel=0
+
+" make sure to enable syntax highlighting
+syntax enable
+
+" always show tabs
+"set showtabline=2

+ 4 - 0
dot-config/nvim/init.vim

@@ -7,6 +7,10 @@ source $XDG_CONFIG_HOME/nvim/general/basic.vim
 source $XDG_CONFIG_HOME/nvim/vim-plug/plugins.vim
 " get plugin configs
 source $XDG_CONFIG_HOME/nvim/plug-conf/fern.vim
+source $XDG_CONFIG_HOME/nvim/plug-conf/emmet.vim
+source $XDG_CONFIG_HOME/nvim/plug-conf/ctrlp.vim
+source $XDG_CONFIG_HOME/nvim/plug-conf/sneak.vim
+source $XDG_CONFIG_HOME/nvim/plug-conf/airline.vim
 " get theme
 source $XDG_CONFIG_HOME/nvim/theme/theme.vim
 " get keybinds

+ 15 - 0
dot-config/nvim/keys/bindings.vim

@@ -92,6 +92,10 @@ function! FernInit() abort
   nmap <buffer> v <Plug>(fern-action-open:vsplit)
   nmap <buffer> h <Plug>(fern-action-collapse)
   nmap <buffer> l <Plug>(fern-action-expand:stay)
+  nmap <silent> <buffer> p     <Plug>(fern-action-preview:toggle)
+  nmap <silent> <buffer> <C-p> <Plug>(fern-action-preview:auto:toggle)
+  nmap <silent> <buffer> <C-d> <Plug>(fern-action-preview:scroll:down:half)
+  nmap <silent> <buffer> <C-u> <Plug>(fern-action-preview:scroll:up:half)
   nmap <buffer><nowait> < <Plug>(fern-action-leave)
   nmap <buffer><nowait> > <Plug>(fern-action-enter)
 endfunction
@@ -142,3 +146,14 @@ nnoremap N Nzzzv
 
 " toggle tag bar
 nmap <leader>g :TagbarToggle<CR>
+
+" please write
+cmap w!! w !doas tee %
+
+" navigate chunks of current buffer
+nmap [h <Plug>(coc-git-prevchunk)
+nmap ]h <Plug>(coc-git-nextchunk)
+
+" navigate conflicts of current buffer
+nmap [c <Plug>(coc-git-prevconflict)
+nmap ]c <Plug>(coc-git-nextconflict)

+ 10 - 0
dot-config/nvim/plug-conf/airline.vim

@@ -0,0 +1,10 @@
+" enable tabline
+" let g:airline#extensions#tabline#enabled = 1
+" let g:airline#extensions#tabline#left_sep = ''
+" let g:airline#extensions#tabline#left_alt_sep = ''
+" let g:airline#extensions#tabline#right_sep = ''
+" let g:airline#extensions#tabline#right_alt_sep = ''
+
+" enable powerline fonts
+let g:airline_powerline_fonts = 1
+let g:airline#extensions#wordcount#enabled = 1

+ 15 - 0
dot-config/nvim/plug-conf/sneak.vim

@@ -0,0 +1,15 @@
+let g:sneak#label = 1
+
+" case insensitive sneak
+let g:sneak#use_ic_scs = 1
+
+" immediately move to the next instance of search, if you move the cursor sneak
+" is back to default behavior
+let g:sneak#s_next = 1
+
+" change the colors
+highlight Sneak guifg=black guibg=#00C7DF ctermfg=black ctermbg=cyan
+highlight SneakScope guifg=red guibg=yellow ctermfg=red ctermbg=yellow
+
+" custom prompt
+let g:sneak#prompt = '🔎'

+ 6 - 0
dot-config/nvim/vim-plug/plugins.vim

@@ -24,6 +24,8 @@ Plug 'lambdalisue/fern-git-status.vim'
 " with nerdfont icons
 Plug 'lambdalisue/nerdfont.vim'
 Plug 'lambdalisue/fern-renderer-nerdfont.vim'
+" and a floating, scrollable preview window
+Plug 'yuki-yano/fern-preview.vim'
 
 " asynchronous lint engine
 "Plug 'dense-analysis/ale'
@@ -60,6 +62,10 @@ Plug 'tpope/vim-commentary'
 " tag bar for easy navigation
 Plug 'preservim/tagbar'
 
+" better html / css handling
 Plug 'mattn/emmet-vim'
 
+" fast search 'n' jump
+Plug 'justinmk/vim-sneak'
+
 call plug#end()