diff options
11 files changed, 111 insertions, 122 deletions
diff --git a/dotfiles/.config/nvim/init.vim b/dotfiles/.config/nvim/init.vim index ecb79d8..5b5d51f 100644 --- a/dotfiles/.config/nvim/init.vim +++ b/dotfiles/.config/nvim/init.vim @@ -3,96 +3,101 @@ let mapleader =" " " Check if vim-plug is installed, otherwise download and install if empty(glob('~/.local/share/nvim/site/autoload/plug.vim')) - silent !curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs - \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim - autocmd VimEnter * PlugInstall --sync | source $MYVIMRC + silent !curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs + \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim + autocmd VimEnter * PlugInstall --sync | source $MYVIMRC endif call plug#begin('~/.local/share/nvim/site/plugged') -Plug 'junegunn/goyo.vim' -Plug 'PotatoesMaster/i3-vim-syntax' -Plug 'jreybert/vimagit' -Plug 'tpope/vim-commentary' -Plug 'preservim/nerdtree' -Plug 'ervandew/supertab' -Plug 'neomake/neomake' -Plug 'jamessan/vim-gnupg' -Plug 'majutsushi/tagbar' -Plug 'rust-lang/rust.vim' -Plug 'cespare/vim-toml' -Plug 'xavierd/clang_complete' -Plug 'autozimu/LanguageClient-neovim', { - \ 'branch': 'next', - \ 'do': 'bash install.sh', - \ } + Plug 'junegunn/goyo.vim' + Plug 'PotatoesMaster/i3-vim-syntax' + Plug 'jreybert/vimagit' + Plug 'tpope/vim-commentary' + Plug 'preservim/nerdtree' + Plug 'vim-scripts/Smart-Tabs' + Plug 'ervandew/supertab' + Plug 'neomake/neomake' + Plug 'jamessan/vim-gnupg' + Plug 'majutsushi/tagbar' + Plug 'rust-lang/rust.vim' + Plug 'cespare/vim-toml' + Plug 'xavierd/clang_complete' + Plug 'autozimu/LanguageClient-neovim', { + \ 'branch': 'next', + \ 'do': 'bash install.sh', + \ } call plug#end() " Some basics: set nocompatible filetype plugin on syntax on - set omnifunc=syntaxcomplete#Complete - set background=dark - set termguicolors - set guicursor=n-v-c-sm:hor20,i-ci-ve:ver25,r-cr-o:block - set cursorline - let g:ultramar_italic=1 - colorscheme ultramar + set foldmethod=syntax + set omnifunc=syntaxcomplete#Complete + set background=dark + set termguicolors + set guicursor=n-v-c-sm:hor20,i-ci-ve:ver25,r-cr-o:block + set cursorline + let g:ultramar_italic=1 + colorscheme ultramar set number set relativenumber - set scrolloff=5 - set colorcolumn=+1 + set scrolloff=5 + set colorcolumn=+1 " Set screen title -let &titlestring = "vim - " . expand("%:t") -if &term == "screen" - set t_ts=^[k - set t_fs=^[\ -endif -set title -au BufEnter * let &titlestring = "vim - " . expand("%t") + let &titlestring = "vim - " . expand("%:t") + if &term == "screen" + set t_ts=^[k + set t_fs=^[\ + endif + set title + au BufEnter * let &titlestring = "vim - " . expand("%t") " Functions for git branch name on statusline - function! GitBranch() - return system("git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n'") - endfunction - function! StatuslineGit() - let l:branchname = GitBranch() - return strlen(l:branchname) > 0?' '.l:branchname.' ':'' - endfunction + function! GitBranch() + return system("git rev-parse --abbrev-ref HEAD 2>/dev/null | tr -d '\n'") + endfunction + function! StatuslineGit() + let l:branchname = GitBranch() + return strlen(l:branchname) > 0?' '.l:branchname.' ':'' + endfunction " Statusline - let laststatus=2 - set statusline= - set statusline+=%#CursorLineNR# - set statusline+=%{StatuslineGit()} - set statusline+=%#StatusLine# - set statusline+=%< - set statusline+=\ %f%r%m - set statusline+=%= - set statusline+=\ %l:%v/%L - set statusline+=\ - set statusline+=%#StatusLineNC# - set statusline+=\ %Y - set statusline+=\ %{&fileencoding?&fileencoding:&encoding} - set statusline+=\[%{&fileformat}\] - set statusline+=\ - -" default indentation + let laststatus=2 + set statusline= + set statusline+=%#CursorLineNR# + set statusline+=%{StatuslineGit()} + set statusline+=%#StatusLine# + set statusline+=%< + set statusline+=\ %f%r%m + set statusline+=%= + set statusline+=\ %l:%v/%L + set statusline+=\ + set statusline+=%#StatusLineNC# + set statusline+=\ %Y + set statusline+=\ %{&fileencoding?&fileencoding:&encoding} + set statusline+=\[%{&fileformat}\] + set statusline+=\ + + " default indentation filetype plugin indent on + set noexpandtab + set copyindent + set preserveindent + set softtabstop=0 set tabstop=4 set shiftwidth=4 - set expandtab " Splits open at the bottom and right, which is non-retarded, unlike vim defaults. set splitbelow set splitright " To avoid switching between keyboards - set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯХЪБЮ;ABCDEFGHIJKLMNOPQRSTUVWXYZ{}<>,фисвуапршолдьтщзйкыегмцчняхъэ;abcdefghijklmnopqrstuvwxyz[]' + set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯХЪБЮ;ABCDEFGHIJKLMNOPQRSTUVWXYZ{}<>,фисвуапршолдьтщзйкыегмцчняхъэ;abcdefghijklmnopqrstuvwxyz[]' " Toggle relative line numbers - map <leader>r :set invrelativenumber<CR> + map <leader>r :set invrelativenumber<CR> " Shortcutting split navigation, saving a keypress: map <C-h> <C-w>h @@ -119,31 +124,31 @@ au BufEnter * let &titlestring = "vim - " . expand("%t") map <F2> :setlocal spell! spelllang=en_us,es,ru<CR> " Save changes - noremap <leader>s :update<CR> + noremap <leader>s :update<CR> " with russian layout - noremap <leader>ы :update<CR> + noremap <leader>ы :update<CR> " Copy to clipboard - vnoremap <leader>y "+y - nnoremap <leader>Y "+yg_ - nnoremap <leader>y "+y - nnoremap <leader>yy "+yy + vnoremap <leader>y "+y + nnoremap <leader>Y "+yg_ + nnoremap <leader>y "+y + nnoremap <leader>yy "+yy " with russian layout - vnoremap <leader>н "+y - nnoremap <leader>Н "+yg_ - nnoremap <leader>н "+y - nnoremap <leader>нн "+yy + vnoremap <leader>н "+y + nnoremap <leader>Н "+yg_ + nnoremap <leader>н "+y + nnoremap <leader>нн "+yy " Paste from clipboard - nnoremap <leader>p "+p - nnoremap <leader>P "+P - vnoremap <leader>p "+p - vnoremap <leader>P "+P + nnoremap <leader>p "+p + nnoremap <leader>P "+P + vnoremap <leader>p "+p + vnoremap <leader>P "+P " with russian layout - nnoremap <leader>з "+p - nnoremap <leader>З "+P - vnoremap <leader>з "+p - vnoremap <leader>З "+P + nnoremap <leader>з "+p + nnoremap <leader>З "+P + vnoremap <leader>з "+p + vnoremap <leader>З "+P " Enable autocompletion: set wildmode=list:longest,full @@ -159,16 +164,16 @@ au BufEnter * let &titlestring = "vim - " . expand("%t") autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o " Join line with alt - nnoremap <M-j> J + nnoremap <M-j> J " with russian layout - nnoremap <M-о> J + nnoremap <M-о> J " Easier tab navigation (similar to qutebrowser) - nnoremap J :tabn<cr> - nnoremap K :tabp<cr> + nnoremap J :tabn<cr> + nnoremap K :tabp<cr> " with russian layout - nnoremap О :tabn<cr> - nnoremap Л :tabp<cr> + nnoremap О :tabn<cr> + nnoremap Л :tabp<cr> " C-T for new tab nnoremap <C-t> :tabe<Space> @@ -191,8 +196,8 @@ au BufEnter * let &titlestring = "vim - " . expand("%t") inoremap wj <Esc> " SuperTab - let g:SuperTabDefaultCompletionType = "context" - let g:SuperTabContextDefaultCompletionType = "<c-x><c-o>" + let g:SuperTabDefaultCompletionType = "context" + let g:SuperTabContextDefaultCompletionType = "<c-x><c-o>" " NERDTree map <leader>f :NERDTreeToggle<CR> @@ -201,19 +206,19 @@ au BufEnter * let &titlestring = "vim - " . expand("%t") map <F3> :TagbarToggle<CR> " LSP - let g:LanguageClient_serverCommands = { - \ 'c': ['/usr/bin/clangd'], - \ 'go': ['/usr/bin/gopls'], - \ 'cpp': ['/usr/bin/clangd'], - \ 'python': ['/usr/bin/pyls'], - \ 'rust': ['/usr/bin/rustup', 'run', 'stable', 'rls'], - \ 'javascript': ['/usr/bin/javascript-typescript-stdio'], - \ } + let g:LanguageClient_serverCommands = { + \ 'c': ['/usr/bin/clangd'], + \ 'go': ['/usr/bin/gopls'], + \ 'cpp': ['/usr/bin/clangd'], + \ 'python': ['/usr/bin/pyls'], + \ 'rust': ['/usr/bin/rustup', 'run', 'stable', 'rls'], + \ 'javascript': ['/usr/bin/javascript-typescript-stdio'], + \ } " LanguageClient-neovim - nmap <F4> <Plug>(lcn-menu) - nmap <silent> gd <Plug>(lcn-definition) + nmap <F4> <Plug>(lcn-menu) + nmap <silent> gd <Plug>(lcn-definition) " Goyo - let g:goyo_width = 100 - map <leader>g :Goyo<CR> + let g:goyo_width = 100 + map <leader>g :Goyo<CR> diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/c.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/c.vim deleted file mode 100644 index acc39c9..0000000 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/c.vim +++ /dev/null @@ -1,3 +0,0 @@ -setlocal shiftwidth=4 -setlocal tabstop=4 -setlocal foldmethod=syntax diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/cpp.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/cpp.vim deleted file mode 100644 index acc39c9..0000000 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/cpp.vim +++ /dev/null @@ -1,3 +0,0 @@ -setlocal shiftwidth=4 -setlocal tabstop=4 -setlocal foldmethod=syntax diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/go.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/go.vim new file mode 100644 index 0000000..deca82d --- /dev/null +++ b/dotfiles/.local/share/nvim/site/after/ftplugin/go.vim @@ -0,0 +1 @@ +setlocal tw=80 diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/html.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/html.vim deleted file mode 100644 index 289b7cd..0000000 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/html.vim +++ /dev/null @@ -1,2 +0,0 @@ -setlocal shiftwidth=4 -setlocal tabstop=4 diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/javascript.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/javascript.vim deleted file mode 100644 index acc39c9..0000000 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/javascript.vim +++ /dev/null @@ -1,3 +0,0 @@ -setlocal shiftwidth=4 -setlocal tabstop=4 -setlocal foldmethod=syntax diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/json.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/json.vim deleted file mode 100644 index 810fd8f..0000000 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/json.vim +++ /dev/null @@ -1,2 +0,0 @@ -setlocal shiftwidth=2 -setlocal tabstop=2 diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/python.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/python.vim deleted file mode 100644 index 289b7cd..0000000 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/python.vim +++ /dev/null @@ -1,2 +0,0 @@ -setlocal shiftwidth=4 -setlocal tabstop=4 diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/rust.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/rust.vim index 01d4271..947bdca 100644 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/rust.vim +++ b/dotfiles/.local/share/nvim/site/after/ftplugin/rust.vim @@ -1,4 +1,7 @@ -setlocal shiftwidth=4 +setlocal noexpandtab +setlocal copyindent +setlocal preserveindent +setlocal softtabstop=0 setlocal tabstop=4 -setlocal fdm=syntax +setlocal shiftwidth=4 setlocal tw=80 diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/toml.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/toml.vim deleted file mode 100644 index 40a20ba..0000000 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/toml.vim +++ /dev/null @@ -1,3 +0,0 @@ -setlocal shiftwidth=2 -setlocal tabstop=2 - diff --git a/dotfiles/.local/share/nvim/site/after/ftplugin/yaml.vim b/dotfiles/.local/share/nvim/site/after/ftplugin/yaml.vim deleted file mode 100644 index 810fd8f..0000000 --- a/dotfiles/.local/share/nvim/site/after/ftplugin/yaml.vim +++ /dev/null @@ -1,2 +0,0 @@ -setlocal shiftwidth=2 -setlocal tabstop=2 |