dotfiles/sub/vim/vimrc
2022-05-25 23:22:19 +03:00

197 lines
4.5 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.

nnoremap <Left> :echoe "Use h"<CR>
nnoremap <Right> :echoe "Use l"<CR>
nnoremap <Up> :echoe "Use k"<CR>
nnoremap <Down> :echoe "Use j"<CR>
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>
" navigation on russian
nmap о j
nmap л k
nmap р h
nmap д l
nmap ш i
nmap ф a
nmap в d
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'
" requiered patch your font
Plugin 'ryanoasis/vim-devicons'
Plugin 'jiangmiao/auto-pairs'
" pip3 install pylint
Plugin 'neomake/neomake'
call vundle#end()
filetype plugin indent on
" Python
let python_highlight_all = 1
set t_Co=256
nnoremap <silent> <special> <F10> :!python3 % <CR>
autocmd BufRead *.py set smartindent cinwords=if,elif,else,for,while,try,except,finally,def,class,match,case
" nerdtree
" Ctrl + w l|h - change window
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>'
" pylint
call neomake#configure#automake('nrw', 50)
let g:neomake_echo_current_error = 0
let g:neomake_python_enabled_maker = ['pylint']
let g:neomake_virtualtext_prefix = ''
hi NeomakeVirtualtextError ctermfg=242
hi NeomakeVirtualtextWarning ctermfg=242
hi NeomakeVirtualtextInfo ctermfg=242
hi NeomakeVirtualtextMessage ctermfg=242
let g:neomake_python_pylint_maker = {
\ 'args': [
\ '-d', 'C0103, C0111',
\ '-f', 'text',
\ '--msg-template="{path}:{line}:{column}:{C}: [{symbol}] {msg}"',
\ '-r', 'n'
\ ],
\ 'errorformat':
\ '%A%f:%l:%c:%t: %m,' .
\ '%A%f:%l: %m,' .
\ '%A%f:(%l): %m,' .
\ '%-Z%p^%.%#,' .
\ '%-G%.%#',
\ }