2021-03-31 13:47:11 +03:00
|
|
|
|
"Функция получения текущего режима редактора
|
|
|
|
|
function GetMode()
|
|
|
|
|
let s:editor_mode = mode()
|
|
|
|
|
|
|
|
|
|
let s:editor_modes_list = [
|
|
|
|
|
\ "NORMAL",
|
|
|
|
|
\ "INSERT",
|
|
|
|
|
\ "VISUAL",
|
|
|
|
|
\ "VISUAL-LINE",
|
|
|
|
|
\ "VISUAL-BLOCK",
|
|
|
|
|
\ "REPLACE"
|
|
|
|
|
\ ]
|
|
|
|
|
|
|
|
|
|
if s:editor_mode == "n"
|
|
|
|
|
return s:editor_modes_list[0]
|
|
|
|
|
|
|
|
|
|
elseif s:editor_mode == "i"
|
|
|
|
|
return s:editor_modes_list[1]
|
|
|
|
|
|
|
|
|
|
elseif s:editor_mode == "v"
|
|
|
|
|
return s:editor_modes_list[2]
|
|
|
|
|
elseif s:editor_mode == "V"
|
|
|
|
|
return s:editor_modes_list[3]
|
|
|
|
|
elseif s:editor_mode =="\<C-v>"
|
|
|
|
|
return s:editor_modes_list[4]
|
|
|
|
|
|
|
|
|
|
elseif s:editor_mode == "R"
|
|
|
|
|
return s:editor_modes_list[5]
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
return "?MODE"
|
|
|
|
|
endif
|
|
|
|
|
endfunction
|
|
|
|
|
|
2021-03-29 12:13:02 +03:00
|
|
|
|
"Менеджер плагинов: Vim-Plug
|
|
|
|
|
"Подключение плагинов (для установки - :PlugInstal)
|
|
|
|
|
call plug#begin('~/.vim/plugged')
|
|
|
|
|
Plug 'preservim/nerdtree'
|
2021-03-31 00:06:07 +03:00
|
|
|
|
Plug 'airblade/vim-gitgutter'
|
2021-03-29 12:13:02 +03:00
|
|
|
|
call plug#end()
|
|
|
|
|
|
|
|
|
|
"Включаем подсветку синтаксиса
|
2021-02-04 13:20:02 +03:00
|
|
|
|
syntax on
|
|
|
|
|
|
2020-10-20 23:14:27 +03:00
|
|
|
|
set nocompatible
|
2021-03-31 00:06:07 +03:00
|
|
|
|
" Включение поддержки мыши
|
|
|
|
|
"set mouse=a
|
2020-10-20 23:14:27 +03:00
|
|
|
|
|
2020-10-05 09:41:03 +03:00
|
|
|
|
set encoding=utf8
|
|
|
|
|
|
|
|
|
|
"Включает колонку нумерации строк
|
|
|
|
|
set number
|
|
|
|
|
set numberwidth=4
|
2020-10-18 18:08:17 +03:00
|
|
|
|
set cursorline
|
2020-10-05 09:41:03 +03:00
|
|
|
|
|
2021-03-31 13:47:11 +03:00
|
|
|
|
"Не показывать режим (он отображается в нашей строке статуса)
|
|
|
|
|
set noshowmode
|
|
|
|
|
|
2021-03-31 00:06:07 +03:00
|
|
|
|
"Настройки строки статуса
|
2020-10-05 09:41:03 +03:00
|
|
|
|
set laststatus=2
|
2021-03-31 00:06:07 +03:00
|
|
|
|
|
|
|
|
|
set statusline=
|
2021-03-31 13:47:11 +03:00
|
|
|
|
set statusline+=%#StatusLineCyan#\ %{GetMode()}\
|
2021-03-31 00:06:07 +03:00
|
|
|
|
set statusline+=%#StatusLineWhite#\ %f\
|
2021-03-31 13:47:11 +03:00
|
|
|
|
set statusline+=%#StatusLineGrey#\ %{&ff}\
|
2021-03-31 00:06:07 +03:00
|
|
|
|
set statusline+=%#StatusLineClear#%=
|
|
|
|
|
set statusline+=%r\ %y\
|
|
|
|
|
set statusline+=%#StatusLineWhite#\ %l:%c\
|
2021-03-31 13:47:11 +03:00
|
|
|
|
set statusline+=%#StatusLineCyan#\ %p%%\
|
2021-03-29 12:13:02 +03:00
|
|
|
|
|
2020-10-05 09:41:03 +03:00
|
|
|
|
"Выключает перенос строк
|
|
|
|
|
set nowrap
|
|
|
|
|
|
|
|
|
|
"Автоподстановка табов
|
|
|
|
|
set smarttab
|
|
|
|
|
"Замена табов на пробелы
|
|
|
|
|
set expandtab
|
|
|
|
|
"Установка отступа на 4 символа
|
|
|
|
|
set tabstop=4
|
|
|
|
|
set shiftwidth=4
|
|
|
|
|
set softtabstop=4
|
|
|
|
|
|
|
|
|
|
"Автодополнение отступов
|
|
|
|
|
set autoindent
|
|
|
|
|
set smartindent
|
|
|
|
|
|
2021-03-29 12:13:02 +03:00
|
|
|
|
"Кеймапы для NERDTree
|
2021-03-31 00:06:07 +03:00
|
|
|
|
nmap <C-n> :NERDTreeToggle<CR>
|
2021-03-29 12:13:02 +03:00
|
|
|
|
|
2020-10-05 09:41:03 +03:00
|
|
|
|
"Кеймапы для запуска Python скриптов
|
2021-03-29 12:13:02 +03:00
|
|
|
|
autocmd BufRead *.py nmap <F5> :!python3 %<CR>
|
|
|
|
|
autocmd BufRead *.py nmap <F6> :!sudo python3 %<CR>
|
2021-01-19 22:48:02 +03:00
|
|
|
|
autocmd BufRead *.py nmap <F9> :!pep8 --max-line-length=230 %<CR>
|
2020-10-05 09:41:03 +03:00
|
|
|
|
|
|
|
|
|
"Кеймапы запуска Bash скриптов
|
|
|
|
|
autocmd BufRead *.sh nnoremap <F5> :!bash %<CR>
|
|
|
|
|
|
2021-02-04 13:20:02 +03:00
|
|
|
|
"Перенос сток для .md файлов
|
|
|
|
|
autocmd BufRead *.md set wrap
|
|
|
|
|
|
2020-10-05 09:41:03 +03:00
|
|
|
|
"Кеймапы обновления темы vim
|
2021-03-26 12:00:41 +03:00
|
|
|
|
autocmd BufRead *.vim nnoremap <F5> :colorscheme my_first_scheme<CR>
|
2020-10-05 09:41:03 +03:00
|
|
|
|
|
|
|
|
|
"Установка своей цветовой схемы
|
2021-03-26 12:00:41 +03:00
|
|
|
|
colorscheme my_first_scheme
|