dotfiles/sub/vim/vimrc
2022-07-18 19:10:48 +03:00

189 lines
4.3 KiB
VimL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

set number "номер строки
set ruler
set laststatus=2
" xclip requiered
set clipboard=unnamedplus
set shell=zsh
nnoremap <Leader>c :set cursorline!<CR>
let g:airline_powerline_fonts = 1 "Включить поддержку Powerline шрифтов
let g:airline#extensions#keymap#enabled = 0 "Не показывать текущий маппинг
let g:airline_section_z = "\ue0a1:%l/%L Col:%c" "Кастомная графа положения курсора
let g:Powerline_symbols='unicode' "Поддержка unicode
let g:airline#extensions#xkblayout#enabled = 0
let g:airline#extensions#branch#enabled=1
set ttimeoutlen=10 "Понижаем задержку ввода escape последовательностей
let &t_SI.="\e[5 q" "SI = режим вставки
let &t_SR.="\e[3 q" "SR = режим замены
let &t_EI.="\e[1 q" "EI = нормальный режим
set encoding=utf-8 "Ставит кодировку UTF-8
set nocompatible "Отключает обратную совместимость с Vi
syntax on "Включает подсветку синтаксиса
set expandtab
set smarttab
set tabstop=4
set softtabstop=4
set shiftwidth=4
set autoindent
set smartindent
set nowrap
set noerrorbells
set novisualbell
set showcmd
set showtabline=2
set ignorecase
set smartcase
set hlsearch
set incsearch
set mousehide
set mouse=a
set colorcolumn=120
set scrolloff=7
set virtualedit=onemore " allow for cursor beyond last character
" f4 toggle hlsearch
nnoremap <F4> :set invhlsearch<CR>
set ffs=unix,mac
set encoding=utf8
" tabs
nnoremap <C-Left> :tabprevious<CR>
nnoremap <C-Right> :tabnext<CR>
nnoremap <C-h> :tabprevious<CR>
nnoremap <C-l> :tabnext<CR>
" Plugins
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'vim-airline/vim-airline'
Plugin 'morhetz/gruvbox'
Plugin 'tpope/vim-surround'
Plugin 'tpope/vim-commentary'
Plugin 'ap/vim-css-color'
Plugin 'terryma/vim-multiple-cursors'
Plugin 'preservim/tagbar'
Plugin 'preservim/vimux'
Plugin 'francoiscabrol/ranger.vim'
Plugin 'rbgrouleff/bclose.vim'
Plugin 'frazrepo/vim-rainbow'
Plugin 'Pocco81/AutoSave.nvim'
" requiered patch your font
Plugin 'ryanoasis/vim-devicons'
Plugin 'jiangmiao/auto-pairs'
" pyright
Plugin 'neovim/nvim-lspconfig'
Plugin 'hrsh7th/nvim-cmp'
Plugin 'hrsh7th/cmp-nvim-lsp'
Plugin 'saadparwaiz1/cmp_luasnip'
Plugin 'L3MON4D3/LuaSnip'
Plugin 'powerman/vim-plugin-ruscmd' " Russian navigation
" golang
" Plugin 'fatih/vim-go'
call vundle#end()
filetype plugin indent on
" Python
let python_highlight_all = 1
set t_Co=256
autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except,finally,def,class,match,case
" run file by filetype
if (&filetype=='python')
nnoremap <silent> <special> <F10> :!python3 % <CR>
elseif (&filetype=='go')
nnoremap <silent> <special> <F10> :!go run % <CR>
endif
nnoremap <silent> <special> <F3> :Ranger <CR>
let g:ranger_replace_netrw = 1 " open ranger when vim open a directory
let g:ranger_map_keys = 0
" ctags required
nnoremap <silent> <special> <F8> :TagbarToggle <CR>
set laststatus=2
let g:lightline = {
\ 'colorscheme': 'iceberg',
\ 'active': {
\ 'left': [ [ 'mode', 'paste' ],
\ [ 'gitbranch', 'readonly', 'filename', 'modified' ] ]
\ },
\ 'component_function': {
\ 'gitbranch': 'fugitive#head'
\ },
\ }
" Colorscheme
colorscheme gruvbox
set bg=dark
let g:multi_cursor_use_default_mapping=0
" Default mapping
let g:multi_cursor_start_word_key = '<C-n>'
let g:multi_cursor_select_all_word_key = '<A-n>'
let g:multi_cursor_start_key = 'g<C-n>'
let g:multi_cursor_select_all_key = 'g<A-n>'
let g:multi_cursor_next_key = '<C-n>'
let g:multi_cursor_prev_key = '<C-p>'
let g:multi_cursor_skip_key = '<C-x>'
let g:multi_cursor_quit_key = '<Esc>'
" golang
" let g:go_def_mode='gopls'
" let g:go_info_mode='gopls'
au FileType py,go,c,cpp,objc,js call rainbow#load()
let g:rainbow_active = 1
set termguicolors
hi DiagnosticError guifg=Grey
hi DiagnosticWarn guifg=Grey
hi DiagnosticInfo guifg=Grey
hi DiagnosticHint guifg=Grey
luafile ~/.config/nvim/lua/init.lua