{"id":414537,"date":"2024-06-29T23:49:19","date_gmt":"2024-06-29T23:49:19","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=414537"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=414537","title":{"rendered":"<span>\u041a\u0430\u043a \u044f \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u043b vim \u043a\u043e\u043d\u0444\u0438\u0433 \u0432 init.lua<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w780q1\/getpro\/habr\/upload_files\/e63\/e85\/c7e\/e63e85c7edcbc2ed67db7d5920c936b7.jpg\" width=\"780\" height=\"440\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e63\/e85\/c7e\/e63e85c7edcbc2ed67db7d5920c936b7.jpg\" data-blurred=\"true\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0421\u0442\u0430\u0442\u044c\u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u044f \u0441 \u043d\u0443\u043b\u044f \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u043b \u0441\u0432\u043e\u0439  nvim-\u043a\u043e\u043d\u0444\u0438\u0433 (init.vim)  \u0432 \u043a\u043e\u043d\u0444\u0438\u0433 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 lua (init.lua). <\/p>\n<h3>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h3>\n<p>\u042f \u0442\u0443\u0442 \u0441\u0438\u0434\u0435\u043b \u0438 \u043f\u0440\u0438\u0431\u044b\u0432\u0430\u043b \u0432 \u043f\u0440\u043e\u043a\u0440\u0430\u0441\u0442\u0438\u043d\u0430\u0446\u0438\u0438. \u041f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0431\u044b\u043b\u043e \u043b\u0435\u043d\u044c. \u0418, <a href=\"https:\/\/habr.com\/ru\/post\/585222\/\" rel=\"noopener noreferrer nofollow\">\u043b\u0438\u0441\u0442\u0430\u044f \u0441\u0442\u0430\u0440\u0443\u044e \u0442\u0435\u0442\u0440\u0430\u0434\u044c \u0440\u0430\u0441\u0441\u0442\u0440\u0435\u043b\u044f\u043d\u043d\u043e\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u043b\u0430<\/a>, \u044f \u0443\u0432\u0438\u0434\u0435\u043b \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043d\u0435 \u043d\u0430\u043f\u043e\u043c\u043d\u0438\u043b\u0438, \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043a\u0440\u0443\u0442\u043e \u043f\u0435\u0440\u0435\u0435\u0445\u0430\u0442\u044c \u043d\u0430 lua. \u042f  \u0441\u043b\u0435\u0436\u0443 \u0437\u0430 nvim&amp;lua \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435\u043c \u043d\u0430 \u0440\u0435\u0434\u0438\u0442\u0435, \u043d\u043e \u0432\u0441\u0435 \u043a\u0430\u043a-\u0442\u043e \u0440\u0443\u043a\u0438 \u043d\u0435 \u0434\u043e\u0445\u043e\u0434\u0438\u043b\u0438, \u0430 \u0442\u0443\u0442, \u0431\u0430\u0445, \u0438 \u043f\u0440\u043e\u043a\u0440\u0430\u0441\u0442\u0438\u043d\u0430\u0446\u0438\u044e \u043a\u0430\u043a \u0440\u0443\u043a\u043e\u0439 \u0441\u043d\u044f\u043b\u043e \u043e\u0442 \u0442\u0430\u043a\u0438\u0445 \u043c\u044b\u0441\u043b\u0435\u0439:<\/p>\n<ul>\n<li>\n<p>Lua \u044f \u043d\u0435 \u0437\u043d\u0430\u044e, \u043d\u043e \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431  \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u043d\u043e\u0432\u044b\u043c \u0434\u043b\u044f \u043c\u0435\u043d\u044f \u044f\u0437\u044b\u043a\u043e\u043c<\/p>\n<\/li>\n<li>\n<p>Vim \u0441\u0443\u043f\u0435\u0440 \u0431\u044b\u0441\u0442\u0440\u044b\u0439, \u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e lua \u043e\u043d \u0441\u0442\u0430\u043d\u0435\u0442 \u0435\u0449\u0451 \u0431\u044b\u0441\u0442\u0440\u0435\u0435<\/p>\n<\/li>\n<li>\n<p>\u0422\u0430\u043a \u0436\u0435 \u0441  \u043f\u043e\u043c\u043e\u0449\u044c\u044e lua \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0432\u0435\u0441\u0442\u0438 \u043f\u043e\u0440\u044f\u0434\u043e\u043a,  \u0440\u0430\u0437\u0431\u0438\u0442\u044c \u043d\u0430 \u0444\u0430\u0439\u043b\u044b \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430, \u0447\u0442\u043e\u0431\u044b \u0433\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 \u0431\u044b\u043b\u0438 \u0432 \u043e\u0434\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435, \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432 \u0434\u0440\u0443\u0433\u043e\u043c, \u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u044b \u0432 \u0442\u0440\u0435\u0442\u044c\u0435\u043c<\/p>\n<\/li>\n<li>\n<p>\u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u0435-\u043a\u0430\u043a\u0438\u0435 \u043f\u043b\u0430\u0433\u0438\u043d\u044b \u043d\u0430 \u0431\u043e\u043b\u0435\u0435 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443\u0436\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u044b \u043d\u0430 lua<\/p>\n<\/li>\n<li>\n<p>\u0412 \u043c\u0438\u0440\u0435 vi* \u0441\u0435\u0439\u0447\u0430\u0441 \u0438\u0434\u0435\u0442 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0430\u044f \u0440\u0435\u0432\u043e\u043b\u044e\u0446\u0438\u044f, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u0430\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c neovim \u0441 lua, \u0438 \u043f\u0440\u0438\u043e\u0431\u0449\u0438\u0442\u044c\u0441\u044f \u043a \u044d\u0442\u043e\u043c\u0443 \u0431\u0443\u0434\u0435\u0442 \u0432\u0435\u0441\u0435\u043b\u043e<\/p>\n<\/li>\n<\/ul>\n<h3>\u041c\u043e\u0439 \u0441\u0442\u0430\u0440\u044b\u0439 .vimrc (init.vim)<\/h3>\n<details class=\"spoiler\">\n<summary>\u041c\u043e\u0439 init.vim \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u0444\u0430\u0439\u043b<\/summary>\n<div class=\"spoiler__content\">\n<pre><code>call plug#begin('~\/.local\/share\/nvim\/plugged') \"------------------------------------------------------------------------------- \" \u041f\u041b\u0410\u0413\u0418\u041d\u042b \"------------------------------------------------------------------------------- \" --- Python --- Plug 'python-mode\/python-mode', { 'for': 'python', 'branch': 'develop' } Plug 'mitsuhiko\/vim-jinja' Plug 'fisadev\/vim-isort', {'do': 'pip install isort'} \" pip install isort \u041c\u043e\u0436\u0435\u0442 \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043c\u043f\u043e\u0440\u0442\u044b \u0432 \u0448\u0430\u043f\u043a\u0435. \" --- Perl --- Plug 'WolfgangMehner\/perl-support' \" --- JavaScript --- Plug 'pangloss\/vim-javascript' \" --- JSON --- Plug 'elzr\/vim-json' \" --- Bash --- Plug 'WolfgangMehner\/bash-support'    \" \\rr - \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \" --- HTML --- Plug 'othree\/html5.vim'               \" \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 microdata \u0438 \u043f\u0440\u043e\u0447\u0435\u0439 \u043b\u0430\u0431\u0443\u0434\u044b \u0432 html Plug 'idanarye\/breeze.vim'            \" \u041f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0438 \u043e\u0442\u043a\u0440\u044b. \u0442\u044d\u0433. \u0415\u0441\u043b\u0438, \u0433\u0434\u0435-\u0442\u043e \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u043e, \u0442\u043e \u043d\u0435 \u043f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442. Plug 'alvan\/vim-closetag'             \" \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c html \u0438 xml \u0442\u044d\u0433\u0438. \u041f\u0438\u0448\u0435\u0448\u044c &lt;h1> \u0438 \u043e\u043d \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c \u0437\u0430\u043a\u0440\u043e\u0435\u0442\u0441\u044f &lt;\/h1>. \u041d\u0430\u0436\u043c\u0438 >! \" --- CSS --- Plug 'JulesWang\/css.vim'              \" CSS syntax file Plug 'groenewege\/vim-less'            \" Vim syntax for LESS (dynamic CSS) Plug 'hail2u\/vim-css3-syntax' Plug 'ap\/vim-css-color' \" --- \u041e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 --- Plug 'vim-airline\/vim-airline'        \" \u041a\u0440\u0443\u0442\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u043d\u0438\u0437\u0443 \u044d\u043a\u0440\u0430\u043d\u0430 Plug 'vim-airline\/vim-airline-themes' Plug 'flazz\/vim-colorschemes'        \" \u041c\u043e\u0436\u0435\u0442 \u043c\u0435\u043d\u044f\u0442\u044c \u0446\u0432\u0435\u0442\u043e\u0432\u0443\u044e \u0441\u0445\u0435\u043c\u0443. \u0421\u043f\u0438\u0441\u043e\u043a \u0441\u0445\u0435\u043c: https:\/\/github.com\/flazz\/vim-colorschemes\/tree\/prep Plug 'joshdick\/onedark.vim'          \" \u0422\u0435\u043c\u0430 \u0434\u043b\u044f \u0432\u0438\u043c\u0430 Plug 'challenger-deep-theme\/vim'      \" \u0422\u0435\u043c\u0430 \u0432\u0438\u043c\u0430 \"Plug 'Yggdroot\/indentLine'            \" \u0422\u043e\u0447\u043a\u0438 \u0434\u043b\u044f \u0442\u0430\u0431\u043e\u0432 \" --- \u0410\u0432\u0442\u043e\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 --- Plug 'Chiel92\/vim-autoformat'         \" \u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0443\u0435\u0442 \u0432\u0441\u0435, \u043d\u043e \u043d\u0430\u0434\u043e \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u043b\u044f perl \u043d\u0430\u0434\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c perltidy. \" --- \u0410\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0438 --- \"  \u0417\u0434\u0435\u0441\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u043e\u0439 \u044f\u0437\u044b\u043a\u043e\u0432: \"  https:\/\/github.com\/Shougo\/deoplete.nvim\/wiki\/Completion-Sources \"  \u0414\u043b\u044f PHP, GO, TypeScript - \u0441\u043c\u043e\u0442\u0440\u0438 \u0442\u0430\u043c \u0436\u0435 Plug 'Shougo\/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }     \" \u0410\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0438 \u043e\u0442 COC Plug 'deoplete-plugins\/deoplete-jedi'                             \" \u041f\u043e\u0434\u043f\u043b\u0430\u0433\u0438\u043d \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f python Plug 'carlitux\/deoplete-ternjs'                                   \" \u041f\u043e\u0434\u043f\u043b\u0430\u0433\u0438\u043d \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f javascript Plug 'ternjs\/tern_for_vim', {'do': 'cd ~\/.local\/share\/nvim\/plugged\/tern_for_vim &amp;&amp; npm install'} \" --- \u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f --- Plug 'majutsushi\/tagbar'              \" \u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0434\u0435\u0440\u0435\u0432\u043e \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u043c\u043e\u0436\u043d\u043e \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0442\u044c\u0441\u044f \u043a\u043d\u043e\u043f\u043a\u0430 F8 Plug 'scrooloose\/nerdtree'            \" \u0414\u0435\u0440\u0435\u0432\u043e \u0444\u0430\u0439\u043b\u043e\u0432. \u0414\u043b\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u044e\u0437\u0430\u0439 t, \u0430 \u0434\u043b\u044f \u0441\u043f\u043b\u0438\u0442\u0430 s Plug 'mileszs\/ack.vim'                \" \u0423\u0434\u043e\u0431\u043d\u044b\u0439 grep \u043f\u043e \u0444\u0430\u0439\u043b\u0430\u043c Plug 'junegunn\/fzf', { 'do': { -> fzf#install() } } Plug 'junegunn\/fzf.vim' \" --- \u0420\u0430\u0437\u043d\u043e\u0435 --- Plug 'cohama\/lexima.vim'              \" \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c \u0441\u043a\u043e\u0431\u043a\u0438 Plug 'scrooloose\/nerdcommenter'       \" \u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u0431\u043b\u043e\u043a \\cc, \u0441\u043d\u0438\u043c\u0430\u0435\u0442 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u044b \u0441 \u0431\u043b\u043e\u043a\u0430 \\cu Plug 'tpope\/vim-surround'             \" \u041e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442 \u0438\u043b\u0438 \u0441\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0431\u0440\u0430\u043c\u043b\u0435\u043d\u0438\u0435. \u0412\u044b\u0434\u0435\u043b\u0438 \u0441\u043b\u043e\u0432\u043e, \u043d\u0430\u0436\u043c\u0438 S \u0438 \u043d\u0430\u0431\u0435\u0440\u0438 &lt;h1> Plug 'powerman\/vim-plugin-ruscmd'     \" \u0420\u0443\u0441\u0441\u043a\u0430\u044f \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0430 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 Plug 'chr4\/nginx.vim'                 \" nginx \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 Plug 'sheerun\/vim-polyglot'           \" \u041f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 \u0434\u043b\u044f \u0442\u044c\u043c\u044b \u044f\u0437\u044b\u043a\u043e, \u0432 \u0442.\u0447. \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0438 nginx Plug 'w0rp\/ale'                       \" \u041d\u0443\u0436\u0435\u043d, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b eslint, \u043a\u0430\u043a \u0432 \u0430\u0442\u043e\u043c\u0435 Plug 'tpope\/vim-unimpaired'           \" ]p - \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432\u044b\u0448\u0435, [p - \u043d\u0438\u0436\u0435 Plug 'google\/vim-searchindex'         \" \u0421\u0447\u0438\u0442\u0430\u0435\u0442 \u043a\u043e\u043b-\u0432\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0439 \u043f\u0440\u0438 \u043f\u043e\u0438\u0441\u043a\u0435 Plug 'tpope\/vim-repeat'               \" \u041c\u043e\u0436\u0435\u0442 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c \u0447\u0435\u0440\u0435\u0437 . vimsurround Plug 'terryma\/vim-multiple-cursors'   \" \u041c\u043e\u0436\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0438\u043c\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043c\u0435\u0441\u0442\u0430\u0445 ctrl-n \u043d\u0430 \u0438\u043c\u0435\u043d\u0438 \u0438 \u0441 Plug 'mhinz\/vim-startify'             \" \u0421\u0442\u0430\u0440\u0442\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430, \u0435\u0441\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0430\u0431\u0440\u0430\u0442\u044c vim \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0435 Plug 'skanehira\/translate.vim'        \" \u041f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a Plug 'mattn\/emmet-vim'                \" \u041e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 \u0442\u0435\u0433\u0438 \u043f\u043e ctrl- y call plug#end()  \"------------------------------------------------------------------------------- \" GLOBAL \"------------------------------------------------------------------------------- syntax on set autoindent filetype on filetype plugin on filetype plugin indent on \" \u0426\u0432\u0435\u0442\u043e\u0432\u0430\u044f \u0442\u0435\u043c\u0430 \u0438 \u043f\u0430\u043b\u0438\u0442\u0440\u0430 256 \u0438\u043b\u0438 24\u0431\u0438\u0442 \u0446\u0432\u0435\u0442\u043e\u0432 if ($MYCOLOR=='24bit')         set termguicolors endif \"Use 24-bit (true-color) mode in Vim\/Neovim when outside tmux. \"If you're using tmux version 2.2 or later, you can remove the outermost $TMUX check and use tmux's 24-bit color support \"(see &lt; http:\/\/sunaku.github.io\/tmux-24bit-color.html#usage > for more information.) if (empty($TMUX))         if (has(\"nvim\"))                 \"For Neovim 0.1.3 and 0.1.4 &lt; https:\/\/github.com\/neovim\/neovim\/pull\/2198 >                 let $NVIM_TUI_ENABLE_TRUE_COLOR=1         endif         \"For Neovim > 0.1.5 and Vim > patch 7.4.1799 &lt; https:\/\/github.com\/vim\/vim\/commit\/61be73bb0f965a895bfb064ea3e55476ac175162 >         \"Based on Vim patch 7.4.1770 (guicolors option) &lt; https:\/\/github.com\/vim\/vim\/commit\/8a633e3427b47286869aa4b96f2bfc1fe65b25cd >         \" &lt; https:\/\/github.com\/neovim\/neovim\/wiki\/Following-HEAD#20160511 >         if (has(\"termguicolors\"))                 set termguicolors         endif endif colorscheme challenger_deep \"colorscheme onedark \" \u041e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0438\u044f \u0434\u043b\u044f \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e \u0438 \u0440\u0443\u0441\u0441\u043a\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 set spelllang=en,ru \" \u0414\u0432\u0430 \u043f\u0440\u043e\u0431\u0435\u043b\u0430 \u043f\u0440\u0438 \u0442\u0430\u0431\u0443\u043b\u044f\u0446\u0438\u0438 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0442\u0441\u0442\u0443\u043f\u0430 \u0434\u043b\u044f js\/html\/xml \u0444\u0430\u0439\u043b\u043e\u0432, \u0434\u043b\u044f \" \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 4 set shiftwidth=4 set tabstop=4 set softtabstop=4 \" \u041a\u0430\u043a vim \u0441\u043f\u043b\u0438\u0442\u0438\u0442 \u044d\u043a\u0440\u0430\u043d set splitright set splitbelow \" \u0414\u0430\u0436\u0435, \u0435\u0441\u043b\u0438 \u0449\u0430 \u0440\u0443\u0441\u0441\u043a\u0430\u044f \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0430, \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043c\u043e\u0436\u043d\u043e \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0442\u0438\u043f\u0430 \" Ctrl + r \u0438 \u0442.\u0434. set keymap=russian-jcukenwin set iminsert=0  \" \u0427\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u0432\u0432\u043e\u0434 \u0431\u044b\u043b \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c, \u0430 \u043d\u0435 \u0440\u0443\u0441\u0441\u043a\u043e\u043c (start > i) set imsearch=0  \" \u0427\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u043f\u043e\u0438\u0441\u043a \u0431\u044b\u043b \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c, \u0430 \u043d\u0435 \u0440\u0443\u0441\u0441\u043a\u043e\u043c (start > \/) \" \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043d\u043e\u043c\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0442\u0440\u043e\u043a set number \" \u0412\u043a\u043b. \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0442\u0440\u043e\u043a, \u043d\u0430\u043f\u0440. 10j \u0438\u043b\u0438 5k set relativenumber \" \u041a\u0443\u0440\u0441\u043e\u0440 \u0432\u0441\u0435\u0433\u0434\u0430 \u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 set so=999 \" \u041f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u0438, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043a\u0443\u0440\u0441\u043e\u0440 set cursorline set nostartofline hi CursorLine cterm=underline \" \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043a\u0430\u0442\u0430 \u043d\u0430\u0437\u0430\u0434 \u0432 \u0444\u0430\u0439\u043b\u0435 set undofile \"------------------------------------------------------------------------------- \" LET'S \"------------------------------------------------------------------------------- \" python-mode let g:pymode_python = 'python3'                           \" \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e python-mode \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 python 2. \u0427\u0442\u043e\u0431\u044b \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c python 3 \" \u0417\u0434\u0435\u0441\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0435\u0435 \u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0443\u0442\u044c \u043a \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044e, \u0430 \u043d\u0435 \u043e\u0431\u0449\u0435\u043c\u0443. \u041d\u0430 \u0440\u043e\u043a\u043a\u0438 \" \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e let g:python3_host_prog='\/usr\/bin\/python3' let g:pymode_lint_ignore=[\"E722\", \"C901\"]                 \" \u0418\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043b\u0438\u043d\u0442\u044b \" \u0422\u0435\u043c\u0430 \u0434\u043b\u044f \u0430\u0439\u0440\u043b\u0430\u0439\u043d\u0430 \u0438 \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 tabline let g:airline_theme='papercolor' \"let g:airline_theme='onedark' let g:airline#extensions#tabline#formatter = 'unique_tail' let g:airline#extensions#tabline#enabled = 1           \" enable airline tabline let g:airline#extensions#tabline#tabs_label = ''       \" can put text here like BUFFERS to denote buffers (I clear it so nothing is shown) let g:airline#extensions#tabline#buffers_label = ''    \" can put text here like TABS to denote tabs (I clear it so nothing is shown) let g:airline#extensions#tabline#fnamemod = ':t'       \" disable file paths in the tab let g:airline#extensions#tabline#show_tab_count = 0    \" dont show tab numbers on the right let g:airline#extensions#tabline#show_buffers = 1      \" dont show buffers in the tabline let g:airline#extensions#tabline#tab_min_count = 1     \" minimum of 2 tabs needed to display the tabline let g:airline#extensions#tabline#show_splits = 0       \" disables the buffer name that displays on the right of the tabline let g:airline#extensions#tabline#show_tab_nr = 0       \" disable tab numbers let g:airline#extensions#tabline#show_tab_type = 0     \" disables the weird ornage arrow on the tabline let g:airline#extensions#tabline#left_sep = '' let g:airline#extensions#tabline#left_alt_sep = '|' \" fzf let g:fzf_buffers_jump = 1 \"let g:fzf_action = {  'enter': 'tab drop',  'ctrl-t': 'tab drop'} \" \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0443 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 let g:deoplete#enable_at_startup = 1 call deoplete#custom#option('num_processes', 4) \" \u0427\u0442\u043e\u0431\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u043f\u043e &lt;F8> \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043f\u043e \u043f\u0435\u0440\u043b\u043e\u0432\u043e\u043c\u0443 \u0444\u0430\u0439\u043b\u0443 let g:tagbar_type_perl = {                         \\ 'ctagstype' : 'perl',                         \\ 'kinds'     : [                         \\ 'p:package:0:0',                         \\ 'w:roles:0:0',                         \\ 'e:extends:0:0',                         \\ 'u:uses:0:0',                         \\ 'r:requires:0:0',                         \\ 'o:ours:0:0',                         \\ 'a:properties:0:0',                         \\ 'b:aliases:0:0',                         \\ 'h:helpers:0:0',                         \\ 's:subroutines:0:0',                         \\ 'd:POD:1:0'                         \\ ]                         \\ } \" \u041a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u044b\u0439 \u0432\u0438\u0434 \u0443 \u0442\u0430\u0433\u0431\u0430\u0440\u0430 let g:tagbar_compact = 1 \" \u041e\u0442\u043a. \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u0438\u043c\u0435\u043d\u0438 \u0443 \u0442\u0430\u0433\u0431\u0430\u0440\u0430 let g:tagbar_sort = 0 \" \u041a\u043e\u043d\u0444\u0438\u0433 ale + eslint let g:ale_fixers = { 'javascript': ['eslint'] } let g:ale_sign_error = '\u274c' let g:ale_sign_warning = '\u26a0\ufe0f' let g:ale_fix_on_save = 1 \" \u0417\u0430\u043f\u0443\u0441\u043a \u043b\u0438\u043d\u0442\u0435\u0440\u0430, \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 let g:ale_lint_on_text_changed = 'never' let g:ale_lint_on_insert_leave = 0 \" \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c ag \u0432\u043c\u0435\u0441\u0442\u043e grep. \u041e\u043d \u0431\u0443\u0434\u0435\u0442 \u0438\u0433\u043d\u043e\u0440\u0438\u0442\u044c \u043f\u0430\u043f\u043a\u0438 \u043f\u043e\u043c\u0435\u0447\u0435\u043d\u043d\u044b\u0435 .gitignore if executable('ag')         let g:ackprg = 'ag --vimgrep' endif \" \u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0441\u043a\u0440\u044b\u0442\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0438 \u043f\u0430\u043f\u043a\u0438 \u0432 NERDTree let NERDTreeShowHidden = 1 \" \u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 \u0441 \u0440\u0443\u0441\u0441\u043a\u043e\u0433\u043e \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439 let g:translate_source = \"ru\" let g:translate_target = \"en\" let g:translate_popup_window = 0 \"------------------------------------------------------------------------------- \" AUTOCMD \"------------------------------------------------------------------------------- \" \u0414\u043b\u044f \u043f\u0438\u0442\u043e\u043d\u043e\u0432\u0441\u043a\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u043e\u0432 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0414\u0435\u0440\u0435\u0432\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u0438 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 autocmd VimEnter .py,.pl,.js,.php TagbarToggle autocmd FileType javascript setlocal expandtab shiftwidth=2 tabstop=2 softtabstop=2 autocmd BufRead,BufNewFile .htm,.html,.xml,.json,.php,.css,*.rss setlocal tabstop=2 shiftwidth=2 softtabstop=2 \" \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0435\u0440\u0435\u043d\u043e\u0441 \u0442\u0435\u043a\u0441\u0442\u0430 \u0434\u043b\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 autocmd BufRead,BufNewFile *.txt  setlocal textwidth=80 \" \u0421 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0443\u0435\u0442 html \u0444\u0430\u0439\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 jinja2 au BufNewFile,BufRead *.html set filetype=htmldjango autocmd BufRead,BufNewFile *.conf let b:autoformat_autoindent=0 \" \u0417\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 \u0433\u0434\u0435 nvim \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0440\u0430\u0437 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u0444\u0430\u0439\u043b au BufReadPost * if line(\"'\"\") > 1 &amp;&amp; line(\"'\"\") &lt;= line(\"$\") | exe \"normal! g'\"\" | endif \" \u0417\u0430\u043f\u0443\u0441\u043a php \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \\rr autocmd FileType php noremap \\rr :w!&lt;CR>:!\/bin\/php %&lt;CR> \"------------------------------------------------------------------------------- \" \u0413\u041e\u0420\u042f\u0427\u0418\u0415 \u041a\u041d\u041e\u041f\u041a\u0418 \"------------------------------------------------------------------------------- \" \u0422\u0438\u043f\u0430 '\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u0442' \u043d\u0430 ESC \u043f\u0440\u0438 \u0431\u044b\u0441\u0442\u0440\u043e\u043c \u043d\u0430\u0436\u0430\u0442\u0438\u0438 jj, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0442\u044f\u043d\u0443\u0442\u0441\u044f imap jj &lt;Esc> \" \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0438 nnoremap &lt;Left> :echoe \"Use h\"&lt;CR> nnoremap &lt;Right> :echoe \"Use l\"&lt;CR> nnoremap &lt;Up> :echoe \"Use k\"&lt;CR> nnoremap &lt;Down> :echoe \"Use j\"&lt;CR> \" \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 \u043e\u0431\u043c\u0435\u043d\u0430 shift - Y \/ P noremap &lt;S-Y> \"+y \" \u041f\u043e F1 \u043e\u0447\u0438\u0449\u0430\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043f\u043e\u0438\u0441\u043a \u0441 \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u043e\u0439 nnoremap &lt;silent>&lt;F1> :noh&lt;CR> \" shift + F1 = \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0443\u0441\u0442\u044b\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 nnoremap &lt;S-F1> :g\/^$\/d&lt;CR> \" \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439 F2 \u0434\u043b\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0430\u0432\u0442\u043e \u0438\u0434\u0435\u043d\u0442 set pastetoggle=&lt;F2> \" \u041f\u0435\u0440\u0435\u0447\u0438\u0442\u0430\u0442\u044c .vimrc \/ init noremap &lt;F3> :source ~\/.config\/nvim\/init.vim&lt;CR> \" \u041e\u0442\u043a\u0440\u044b\u0442\u044c .config\/nvim\/init.vim \u0447\u0435\u0440\u0435\u0437 Shift + &lt;F3> \" \u041c\u043e\u0436\u0435\u0442 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 echo $TERM  xterm-256color noremap &lt;S-F3> :edit ~\/.config\/nvim\/init.vim&lt;CR> \" \u041f\u043e\u0438\u0441\u043a \u0441\u043b\u043e\u0432\u0430 \u043f\u043e\u0434 \u043a\u0443\u0440\u0441\u043e\u0440\u043e\u043c, \u0432\u043e\u0441\u043a\u043b. \u0437\u043d\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0431\u044b\u043b\u043e \u0430\u0432\u0442\u043e\u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0444\u0430\u0439\u043b\u0430 noremap &lt;F4> :Ack! &lt;cword> --ignore-dir={static,logs,files}&lt;cr> noremap &lt;S-F4> :Ack! --ignore-dir={static,logs,files} \" \u0422\u043e\u0433\u043b\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0438 \u043e\u0442\u043a\u043b\u044e. \u043f\u043e\u043a\u0430\u0437\u0430 \u0441\u0442\u0440\u043e\u043a \u0438 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u0438 \u0440\u0435\u043b\u0430\u0442\u0438\u0432\u043d\u044b\u0445 nnoremap  &lt;silent> &lt;F5> :exec &amp;nu==&amp;rnu? \"se nu!\" : \"se rnu!\"&lt;cr> \" \u0414\u0435\u0440\u0435\u0432\u043e \u0444\u0430\u0439\u043b\u043e\u0432. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439 \u0434\u043b\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0444\u0430\u0439\u043b\u043e\u0432 t  \u0438 s  \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u0438\u043b\u0438 \u0441\u043f\u043b\u0438\u0442\u0430 noremap &lt;F6> :NERDTreeRefreshRoot&lt;CR> :NERDTreeToggle&lt;CR> \" \u041f\u043e\u043a\u0430\u0437 \u0434\u0435\u0440\u0435\u0432\u0430 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u043f\u043b\u0430\u0433\u0438\u043d majutsushi\/tagbar nnoremap &lt;F8> :TagbarToggle&lt;CR> \" \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0438\u0438 &lt;F11> \u0434\u043b\u044f \u0440\u0443\u0441\u0441\u043a\u043e\u0433\u043e \u0438 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 nnoremap &lt;silent> &lt;F11> :set spell!&lt;cr> inoremap &lt;silent> &lt;F11> &lt;C-O>:set spell!&lt;cr> \" CTRL-s \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u043b\u043a\u0430 \u0438 \u0430\u0432\u0442\u043e\u0444\u043e\u0440\u043c\u0430\u0442 inoremap &lt;C-s> &lt;esc>:Autoformat&lt;CR>:w&lt;CR> noremap &lt;C-s> &lt;esc>:Autoformat&lt;CR>:w&lt;CR> \" \u041f\u0440\u043e\u043b\u0438\u0441\u0442\u043d\u0443\u0442\u044c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0432\u043d\u0438\u0437 (\u043a\u0430\u043a \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430\u0445) nnoremap &lt;Space> &lt;PageDown> zz \" \u041f\u0440\u043e\u043b\u0438\u0441\u0442\u043d\u0443\u0442\u044c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0432\u0432\u0435\u0440\u0445 nnoremap &lt;C-Space> &lt;PageUp> zz \" fzf noremap &lt;C-a> :Files&lt;CR> noremap &lt;C-p> :Buffers&lt;CR> \" \u041f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a vmap t &lt;Plug>(VTranslate) \" \u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043c\u0435\u0436\u0434\u0443 \u0431\u0443\u0444\u0435\u0440\u043e\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e TAB function! BSkipQuickFix(command)         let start_buffer = bufnr('%')         execute a:command         while &amp;buftype ==# 'quickfix' &amp;&amp; bufnr('%') != start_buffer                 execute a:command         endwhile endfunction nnoremap &lt;Tab> :call BSkipQuickFix(\"bn\")&lt;CR> nnoremap &lt;S-Tab> :call BSkipQuickFix(\"bp\")&lt;CR><\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u041f\u0438\u0441\u0430\u0442\u044c \u044f \u0435\u0433\u043e \u043d\u0430\u0447\u0430\u043b \u0435\u0449\u0451 \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 neovim \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043b. \u0427\u0442\u043e-\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u043b\u043e\u0441\u044c, \u0443\u0434\u0430\u043b\u044f\u043b\u043e\u0441\u044c \u0438  \u043d\u0430\u043a\u043e\u043f\u0438\u043b\u043e\u0441\u044c \u0432\u0441\u044f\u043a\u043e\u0433\u043e \u0440\u0430\u0437\u043d\u043e\u0433\u043e. \u0412\u0441\u0435 \u044d\u0442\u043e \u044f \u0438 \u0431\u0443\u0434\u0443 \u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432 lua, \u0437\u0430 \u043e\u0434\u043d\u043e \u0438 \u043f\u0440\u0438\u0447\u0435\u0448\u0443 \u0438 \u0438\u0437\u0431\u0430\u0432\u043b\u044e\u0441\u044c \u043e\u0442 \u043b\u0438\u0448\u043d\u0435\u0433\u043e.<\/p>\n<h3>\u0421\u0442\u0430\u0440\u0442\u043e\u0432\u044b\u0435 \u0443\u0441\u043b\u043e\u0432\u0438\u044f<\/h3>\n<p> <em>(\u041c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u043f\u0443\u0441\u0442\u0438\u0442\u044c, \u0435\u0441\u043b\u0438 \u0443 \u0432\u0430\u0441 \u0438\u0437 \u043f\u0430\u043a\u0435\u0442\u043d\u043e\u0433\u043e \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 \u0441\u0440\u0430\u0437\u0443 \u0441\u0442\u0430\u0432\u0438\u0442\u0441\u044f neovim 0.5.\u0445 \u0438 \u0432\u044b\u0448\u0435)<\/em> <\/p>\n<p>\u042f \u0440\u0435\u0448\u0438\u043b \u0432\u0437\u044f\u0442\u044c \u0441\u0442\u0430\u0440\u0435\u043d\u044c\u043a\u0443\u044e \u043c\u0430\u0448\u0438\u043d\u0443 \u0441 Centos 7, \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0430, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u044f \u0441\u043c\u043e\u0433\u0443 \u043d\u0430 \u043d\u0435\u0439 \u0432\u0441\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c, \u0442\u043e \u043d\u0430 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0438 \u043f\u043e\u0434\u0430\u0432\u043d\u043e \u0432\u0441\u0435 \u0437\u0430\u043f\u0443\u0449\u0443. \u0415\u0449\u0451 \u043c\u043d\u0435 \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f, \u0447\u0442\u043e \u043d\u0430 \u0441\u0442\u0430\u0440\u044b\u0445 \u043c\u0430\u0448\u0438\u043d\u0430\u0445 \u0442\u0430\u043a \u0436\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0438\u0431\u043e \u043c\u043d\u043e\u0433\u043e \u043b\u0435\u0433\u0430\u0441\u0438 \u0431\u043e\u043b\u0442\u0430\u0435\u0442\u0441\u044f \u043d\u0430 Centos 7, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043d\u0430\u0434\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c. <\/p>\n<p>\u0415\u0441\u0442\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0447\u0435\u0440\u0435\u0437 yum \u0441\u0442\u0430\u0432\u0438\u043b\u0430\u0441\u044c \u0441\u0442\u0430\u0440\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f nvim. \u041d\u043e \u043f\u043e\u0441\u043b\u0435 \u0442\u0430\u043a\u0438\u0445 \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u044f\u0446\u0438\u0439 \u0432\u0435\u0440\u0441\u0438\u044f \u0431\u044b\u043b\u0430 \u0443\u0436\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f. <\/p>\n<pre><code class=\"bash\">curl -LO https:\/\/github.com\/neovim\/neovim\/releases\/latest\/download\/nvim.appimage chmod u+x nvim.appimage mkdir .local\/bin mv nvim.appimage .local\/bin\/nvim<\/code><\/pre>\n<p>\u0418 \u0432 \u0444\u0430\u0439\u043b\u0435 .bash_profile \u043f\u043e\u043c\u0435\u043d\u044f\u043b PATH \u043d\u0430 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c. <\/p>\n<pre><code>PATH=$HOME\/.local\/bin:$HOME\/bin:$PATH<\/code><\/pre>\n<p><a href=\"https:\/\/appimage.org\/\" rel=\"noopener noreferrer nofollow\">AppImage<\/a> &#8212; \u0443\u043d\u0438\u0432\u0435\u0440\u0441\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f \u0432\u0441\u0435\u0445, \u0432\u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430 (Ubuntu, Redhat \u0438 \u0442.\u0434.) \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442\u0435 \u0444\u0430\u0439\u043b, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0435 \u0438 \u0432\u0441\u0435 \u0441\u0440\u0430\u0437\u0443 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.  <\/p>\n<p>\u0421\u0442\u0430\u0440\u0435\u043d\u044c\u043a\u0438\u0439 git <a href=\"https:\/\/computingforgeeks.com\/how-to-install-latest-version-of-git-git-2-x-on-centos-7\/\" rel=\"noopener noreferrer nofollow\">\u043e\u0431\u043d\u043e\u0432\u0438\u043b \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c<\/a>. \u0411\u0435\u0437 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0433\u043e git \u043f\u043b\u0430\u0433\u0438\u043d \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 Packman  \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b. <\/p>\n<p>\u0411\u043e\u043b\u044c\u0448\u0435 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441 Centos 7 \u043d\u0435 \u0431\u044b\u043b\u043e. <\/p>\n<h3>\u0421 \u043d\u0443\u043b\u044f <\/h3>\n<p>\u0412 <code>~\/.config\/nvim<\/code> \u0441\u043e\u0437\u0434\u0430\u043b 4 \u043f\u0443\u0441\u0442\u044b\u0445 \u0444\u0430\u0439\u043b\u0430 \u0438 \u043e\u0434\u043d\u0443 \u043f\u0430\u043f\u043a\u0443. \u0412\u043e\u0442 \u0442\u0430\u043a\u0430\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0430\u0441\u044c \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0430 \u0444\u0430\u0439\u043b\u043e\u0432:<\/p>\n<pre><code>. \u251c\u2500\u2500 init.lua \u251c\u2500\u2500 lua \u2502\u00a0\u00a0 \u251c\u2500\u2500 keymaps.lua \u2502\u00a0\u00a0 \u251c\u2500\u2500 plugins.lua \u2502\u00a0\u00a0 \u2514\u2500\u2500 settings.lua<\/code><\/pre>\n<p>\u0418 \u043d\u0430\u0447\u0430\u043b \u044d\u0442\u0438 \u0444\u0430\u0439\u043b\u044b \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0442\u044c&#8230;<\/p>\n<h3>\u0424\u0430\u0439\u043b init.lua <\/h3>\n<p>\u041e\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0444\u0430\u0439\u043b\u044b \u0441 \u043f\u043b\u0430\u0433\u0438\u043d\u0430\u043c\u0438, \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u0438 \u043c\u043e\u0438\u043c\u0438 \u0445\u043e\u0442\u043a\u0435\u044f\u043c\u0438 \u0438\u0437 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 ~<code>\/.config\/nvim\/lua<\/code>  <\/p>\n<pre><code class=\"lua\">----------------------------------------------------------- -- \u0418\u043c\u043f\u043e\u0440\u0442 \u043c\u043e\u0434\u0443\u043b\u0435\u0439 lua ----------------------------------------------------------- require('plugins') require('settings')  require('keymaps')<\/code><\/pre>\n<h3>\u0424\u0430\u0439\u043b keymaps.lua<\/h3>\n<p>\u0421\u043a\u043e\u043d\u0432\u0435\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043c\u043e\u0438 \u0445\u043e\u0442\u043a\u0435\u0438 \u043d\u0430 lua \u043d\u0435 \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u043b\u043e \u0442\u0440\u0443\u0434\u0430. <\/p>\n<details class=\"spoiler\">\n<summary>keymaps.lua<\/summary>\n<div class=\"spoiler__content\">\n<pre><code>local map = vim.api.nvim_set_keymap local default_opts = {noremap = true, silent = true}  -- \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0431\u0443\u0444\u0435\u0440 \u043e\u0431\u043c\u0435\u043d\u0430 shift - Y map('v', 'S-Y', '\"+y', {}) -- \u0422\u0438\u043f\u0430 '\u041d\u0430\u0436\u0438\u043c\u0430\u0435\u0442' \u043d\u0430 ESC \u043f\u0440\u0438 \u0431\u044b\u0441\u0442\u0440\u043e\u043c \u043d\u0430\u0436\u0430\u0442\u0438\u0438 jj, \u0447\u0442\u043e\u0431\u044b \u043d\u0435 \u0442\u044f\u043d\u0443\u0442\u0441\u044f map('i', 'jj', '&lt;Esc>', {noremap = true}) -- \u0421\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0438 \u043e\u0442\u043a\u043b. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c hjkl map('', '&lt;up>', ':echoe \"Use k\"&lt;CR>', {noremap = true, silent = false}) map('', '&lt;down>', ':echoe \"Use j\"&lt;CR>', {noremap = true, silent = false}) map('', '&lt;left>', ':echoe \"Use h\"&lt;CR>', {noremap = true, silent = false}) map('', '&lt;right>', ':echoe \"Use l\"&lt;CR>', {noremap = true, silent = false}) -- \u0410\u0432\u0442\u043e\u0444\u043e\u0440\u043c\u0430\u0442 + \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u043f\u043e CTRL-s , \u043a\u0430\u043a \u0432 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u043c, \u0442\u0430\u043a \u0438 \u0432 insert \u0440\u0435\u0436\u0438\u043c\u0435 map('n', '&lt;C-s>', ':Autoformat&lt;CR>:w&lt;CR>',  default_opts) map('i', '&lt;C-s>', '&lt;esc>:Autoformat&lt;CR>:w&lt;CR>', default_opts) -- \u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u043a\u043b\u0430\u0434\u043e\u043a \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e TAB \u0438\u043b\u0438 shift-tab (akinsho\/bufferline.nvim) map('n', '&lt;Tab>', ':BufferLineCycleNext&lt;CR>', default_opts) map('n', '&lt;S-Tab>', ':BufferLineCyclePrev&lt;CR>', default_opts) -- \u041f\u0440\u043e\u043b\u0438\u0441\u0442\u043d\u0443\u0442\u044c \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443 \u0432\u043d\u0438\u0437 \/ \u0432\u0432\u0435\u0440\u0445 (\u043a\u0430\u043a \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0430\u0445) map('n', '&lt;Space>', '&lt;PageDown> zz', default_opts) map('n', '&lt;C-Space>', '&lt;PageUp> zz', default_opts) -- \" \u041f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a \u0440\u0443\u0441 -> eng map('v', 't', '&lt;Plug>(VTranslate)', {}) -- fzf map('n', '&lt;C-a>', [[ &lt;cmd>lua require('telescope.builtin').find_files()&lt;cr> ]], default_opts) map('n', '&lt;C-p>', [[ &lt;cmd>lua require('telescope.builtin').buffers()&lt;cr> ]], default_opts)  ----------------------------------------------------------- -- \u0424\u043d. \u043a\u043b\u0430\u0432\u0438\u0448\u0438 \u043f\u043e F1 .. F12 ----------------------------------------------------------- -- \u041f\u043e F1 \u043e\u0447\u0438\u0449\u0430\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u043f\u043e\u0438\u0441\u043a \u0441 \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u043e\u0439 map('n', '&lt;F1>', ':nohl&lt;CR>', default_opts) -- shift + F1 = \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043f\u0443\u0441\u0442\u044b\u0435 \u0441\u0442\u0440\u043e\u043a\u0438 map('n', '&lt;S-F1>', ':g\/^$\/d&lt;CR>', default_opts) -- &lt;F2> \u0434\u043b\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u0432\u0441\u0442\u0430\u0432\u043a\u0438 \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430, \u0447\u0442\u043e\u0431\u044b \u043e\u0442\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0430\u0432\u0442\u043e \u0438\u0434\u0435\u043d\u0442 vim.o.pastetoggle='&lt;F2>' -- &lt;F3> \u043f\u0435\u0440\u0435\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e nvim \u041c\u043e\u0436\u0435\u0442 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 echo $TERM  xterm-256color map('n', '&lt;F3>', ':so ~\/.config\/nvim\/init.lua&lt;CR>:so ~\/.config\/nvim\/lua\/plugins.lua&lt;CR>:so ~\/.config\/nvim\/lua\/settings.lua&lt;CR>:so ~\/.config\/nvim\/lua\/keymaps.lua&lt;CR>', { noremap = true }) -- &lt;S-F3> \u041e\u0442\u043a\u0440\u044b\u0442\u044c \u0432\u0441\u044e nvim \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0434\u043b\u044f \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f map('n', '&lt;S-F3>', ':e ~\/.config\/nvim\/init.lua&lt;CR>:e ~\/.config\/nvim\/lua\/plugins.lua&lt;CR>:e ~\/.config\/nvim\/lua\/settings.lua&lt;CR>:e ~\/.config\/nvim\/lua\/keymaps.lua&lt;CR>', { noremap = true }) -- &lt;F4> \u041f\u043e\u0438\u0441\u043a \u0441\u043b\u043e\u0432\u0430 \u043f\u043e\u0434 \u043a\u0443\u0440\u0441\u043e\u0440\u043e\u043c map('n', '&lt;F4>', [[&lt;cmd>lua require('telescope.builtin').grep_string()&lt;cr>]], default_opts) -- &lt;S-F4> \u041f\u043e\u0438\u0441\u043a \u0441\u043b\u043e\u0432\u0430 \u0432 \u043c\u043e\u0434\u0430\u043b\u044c\u043d\u043e\u043c \u043e\u043a\u043e\u0448\u043a\u0435 map('n', '&lt;S-F4>', [[&lt;cmd>lua require('telescope.builtin').live_grep()&lt;cr>]], default_opts) -- &lt;F5> \u0440\u0430\u0437\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u0446\u0438\u0438 \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0439 \u0441\u0442\u0440\u043e\u043a, \u043c\u043e\u0436\u043d\u043e \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f map('n', '&lt;F5>', ':exec &amp;nu==&amp;rnu? \"se nu!\" : \"se rnu!\"&lt;CR>', default_opts) -- &lt;F6> \u0434\u0435\u0440\u0435\u0432\u043e \u0444\u0430\u0439\u043b\u043e\u0432. map('n', '&lt;F6>', ':NvimTreeRefresh&lt;CR>:NvimTreeToggle&lt;CR>', default_opts) -- &lt;F8>  \u041f\u043e\u043a\u0430\u0437 \u0434\u0435\u0440\u0435\u0432\u0430 \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u043f\u043b\u0430\u0433\u0438\u043d majutsushi\/tagbar map('n', '&lt;F8>', ':TagbarToggle&lt;CR>', default_opts) -- &lt;F11> \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0438\u0438  \u0434\u043b\u044f \u0440\u0443\u0441\u0441\u043a\u043e\u0433\u043e \u0438 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 map('n', '&lt;F11>', ':set spell!&lt;CR>', default_opts) map('i', '&lt;F11>', '&lt;C-O>:set spell!&lt;CR>', default_opts)<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0415\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f  \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u0430 \u0441 \u043f\u0435\u0440\u0435\u0447\u0438\u0442\u044b\u0432\u0430\u043d\u0438\u0435\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u043e\u0432. \u0412 \u0441\u0442\u0430\u0440\u043e\u043c init.vim \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u043f\u0435\u0440\u0435\u0447\u0438\u0442\u0430\u0442\u044c \u0432\u0441\u0435\u0433\u043e \u043e\u0434\u0438\u043d \u0444\u0430\u0439\u043b, \u044f \u044d\u0442\u043e \u0438 \u0434\u0435\u043b\u0430\u043b \u0442\u0430\u043a:<\/p>\n<pre><code>noremap &lt;F3> :source ~\/.config\/nvim\/init.vim&lt;CR><\/code><\/pre>\n<p>\u0410 \u0442\u0443\u0442 \u0444\u0430\u0439\u043b\u043e\u0432 \u0443\u0436\u0435 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f. \u041f\u043e\u043b\u0435\u0437 \u0432 \u0438\u043d\u0435\u0442, \u043d\u0430\u0447\u0430\u043b \u0433\u0443\u0433\u043b\u0438\u0442\u044c. \u041d\u0430\u0448\u0435\u043b \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0435 <a href=\"https:\/\/neovim.discourse.group\/t\/reload-init-lua-and-all-require-d-scripts\/971\/8\" rel=\"noopener noreferrer nofollow\">\u043e\u0431\u0441\u0443\u0436\u0434\u0435\u043d\u0438\u0435<\/a>, \u043d\u043e \u0443 \u043c\u0435\u043d\u044f \u043d\u0435 \u0432\u0437\u043b\u0435\u0442\u0435\u043b\u043e \u043d\u0438\u0447\u0435\u0433\u043e \u0438\u0437 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0442\u0430\u043c \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f. \u041e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c, \u0447\u0442\u043e lua \u0437\u0430 15 \u043c\u0438\u043d\u0443\u0442 &#8212; \u044d\u0442\u043e \u0446\u0438\u0440\u043a. \u041d\u0430\u0434\u043e \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0442\u044c\u0441\u044f.  \u0418 \u043a\u043e\u0440\u043e\u0447\u0435, \u044f \u043f\u0440\u043e\u0441\u0442\u043e \u0437\u0430\u0445\u0430\u0440\u0434\u043a\u043e\u0434\u0438\u043b \u0432 \u0438\u0442\u043e\u0433\u0435 \u0440\u0435\u043b\u043e\u0430\u0434 \u044d\u0442\u0438\u0445 4-\u0445 \u0444\u0430\u0439\u043b\u043e\u0432, \u043d\u043e \u0441\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0435 \u0431\u0443\u0434\u0443,  \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u044e \u043d\u0430\u0439\u0442\u0438 \u0430\u0434\u0435\u043a\u0432\u0430\u0442\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435. <\/p>\n<h3>\u0424\u0430\u0439\u043b settings.lua<\/h3>\n<p>\u0424\u0430\u0439\u043b \u0441 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u0442\u0430\u043a\u0438\u043c:<\/p>\n<details class=\"spoiler\">\n<summary>settings.lua<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"lua\">local cmd = vim.cmd             -- execute Vim commands local exec = vim.api.nvim_exec  -- execute Vimscript local g = vim.g                 -- global variables local opt = vim.opt             -- global\/buffer\/windows-scoped options -- \u041d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0430 \u0441 \u0440\u0443\u0441\u0441\u043a\u043e\u0433\u043e \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u0438\u0439 g.translate_source = 'ru' g.translate_target = 'en' -- \u041a\u043e\u043c\u043f\u0430\u043a\u0442\u043d\u044b\u0439 \u0432\u0438\u0434 \u0443 \u0442\u0430\u0433\u0431\u0430\u0440\u0430 \u0438 \u041e\u0442\u043a. \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u043a\u0430 \u043f\u043e \u0438\u043c\u0435\u043d\u0438 \u0443 \u0442\u0430\u0433\u0431\u0430\u0440\u0430 g.tagbar_compact = 1 g.tagbar_sort = 0  -- \u041a\u043e\u043d\u0444\u0438\u0433 ale + eslint g.ale_fixers = { javascript= { 'eslint' } } g.ale_sign_error = '\u274c' g.ale_sign_warning = '\u26a0\ufe0f' g.ale_fix_on_save = 1 -- \u0417\u0430\u043f\u0443\u0441\u043a \u043b\u0438\u043d\u0442\u0435\u0440\u0430, \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0438 g.ale_lint_on_text_changed = 'never' g.ale_lint_on_insert_leave = 0  ----------------------------------------------------------- -- \u0413\u043b\u0430\u0432\u043d\u044b\u0435 ----------------------------------------------------------- opt.colorcolumn = '80'              -- \u0420\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u043d\u0430 80 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 opt.cursorline = true               -- \u041f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u0438 \u0441 \u043a\u0443\u0440\u0441\u043e\u0440\u043e\u043c opt.spelllang= { 'en_us', 'ru' }    -- \u0421\u043b\u043e\u0432\u0430\u0440\u0438 \u0440\u0443\u0441 eng opt.number = true                   -- \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0442\u0440\u043e\u043a opt.relativenumber = true           -- \u0412\u043a\u043b. \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0442\u0440\u043e\u043a opt.so=999                          -- \u041a\u0443\u0440\u0441\u043e\u0440 \u0432\u0441\u0435\u0433\u0434\u0430 \u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 opt.undofile = true                 -- \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043a\u0430\u0442\u0430 \u043d\u0430\u0437\u0430\u0434 opt.splitright = true               -- vertical split \u0432\u043f\u0440\u0430\u0432\u043e opt.splitbelow = true               -- horizontal split \u0432\u043d\u0438\u0437 ----------------------------------------------------------- -- \u0426\u0432\u0435\u0442\u043e\u0432\u0430\u044f \u0441\u0445\u0435\u043c\u0430 ----------------------------------------------------------- opt.termguicolors = true      --  24-bit RGB colors cmd'colorscheme onedark' ----------------------------------------------------------- -- \u0422\u0430\u0431\u044b \u0438 \u043e\u0442\u0441\u0442\u0443\u043f\u044b ----------------------------------------------------------- cmd([[ filetype indent plugin on syntax enable ]]) opt.expandtab = true      -- use spaces instead of tabs opt.shiftwidth = 4        -- shift 4 spaces when tab opt.tabstop = 4           -- 1 tab == 4 spaces opt.smartindent = true    -- autoindent new lines -- don't auto commenting new lines cmd [[au BufEnter * set fo-=c fo-=r fo-=o]] -- remove line lenght marker for selected filetypes cmd [[autocmd FileType text,markdown,html,xhtml,javascript setlocal cc=0]] -- 2 spaces for selected filetypes cmd [[ autocmd FileType xml,html,xhtml,css,scss,javascript,lua,yaml,htmljinja setlocal shiftwidth=2 tabstop=2 ]] -- \u0421 \u044d\u0442\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u043e\u0442\u043b\u0438\u0447\u043d\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0443\u0435\u0442 html \u0444\u0430\u0439\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 jinja2 cmd[[ autocmd BufNewFile,BufRead *.html set filetype=htmldjango ]] ----------------------------------------------------------- -- \u041f\u043e\u043b\u0435\u0437\u043d\u044b\u0435 \u0444\u0438\u0448\u043a\u0438 ----------------------------------------------------------- -- \u0417\u0430\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 \u0433\u0434\u0435 nvim \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0440\u0430\u0437 \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043b \u0444\u0430\u0439\u043b cmd [[ autocmd BufReadPost * if line(\"'\\\"\") > 1 &amp;&amp; line(\"'\\\"\") &lt;= line(\"$\") | exe \"normal! g'\\\"\" | endif ]] -- \u041f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u043d\u0430 \u0434\u043e\u043b\u0438 \u0441\u0435\u043a\u0443\u043d\u0434\u044b \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0442\u0435\u043a\u0441\u0442\u0430 exec([[ augroup YankHighlight autocmd! autocmd TextYankPost * silent! lua vim.highlight.on_yank{higroup=\"IncSearch\", timeout=700} augroup end ]], false)  ----------------------------------------------------------- -- \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0434\u043b\u044f \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432 ----------------------------------------------------------- -- LSP settings local lsp_installer = require(\"nvim-lsp-installer\") lsp_installer.on_server_ready(function(server)     local opts = {}     if server.name == \"sumneko_lua\" then         -- only apply these settings for the \"sumneko_lua\" server         opts.settings = {             Lua = {                 diagnostics = {                     -- Get the language server to recognize the 'vim', 'use' global                     globals = {'vim', 'use'},                 },                 workspace = {                     -- Make the server aware of Neovim runtime files                     library = vim.api.nvim_get_runtime_file(\"\", true),                 },                 -- Do not send telemetry data containing a randomized but unique identifier                 telemetry = {                     enable = false,                 },             },         }     end     server:setup(opts) end)   -- nvim-cmp supports additional completion capabilities local capabilities = vim.lsp.protocol.make_client_capabilities() capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities) vim.o.completeopt = 'menuone,noselect' -- luasnip setup local luasnip = require 'luasnip' -- nvim-cmp setup local cmp = require 'cmp' cmp.setup {     snippet = {         expand = function(args)             luasnip.lsp_expand(args.body)         end,     },     sources = {         { name = 'nvim_lsp' },         { name = 'luasnip' },         { name = 'path' },         { name = 'buffer', opts = {             get_bufnrs = function()                 return vim.api.nvim_list_bufs()             end         },     }, }, }<\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0421 \u0444\u0430\u0439\u043b\u043e\u043c  \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043d\u0435 \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u043e, \u0432\u0441\u0435 \u043b\u0435\u0433\u043a\u043e \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b\u043e\u0441\u044c. \u0414\u043e\u0431\u0430\u0432\u0438\u043b\u0438\u0441\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u043b\u044f \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432: LSP \u0438 nvim-cmp, \u043d\u043e \u043e \u043f\u043b\u0430\u0433\u0438\u043d\u0430\u0445 \u0434\u0430\u043b\u044c\u0448\u0435&#8230;<\/p>\n<h3>\u0424\u0430\u0439\u043b plugins.lua<\/h3>\n<p>\u041c\u043e\u0439 \u0444\u0430\u0439\u043b \u0441 \u043f\u043b\u0430\u0433\u0438\u043d\u0430\u043c\u0438 \u043f\u043e\u0441\u043b\u0435 &#171;\u0440\u0435\u0432\u0438\u0437\u0438\u0438&#187; \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u0442\u0430\u043a\u0438\u043c:<\/p>\n<details class=\"spoiler\">\n<summary>plugins.lua<\/summary>\n<div class=\"spoiler__content\">\n<pre><code class=\"lua\"> vim.cmd [[packadd packer.nvim]]  return require('packer').startup(function()     -- Packer \u0441\u0430\u043c \u0441\u0435\u0431\u044f     use 'wbthomason\/packer.nvim'      -----------------------------------------------------------     -- \u041f\u041b\u0410\u0413\u0418\u041d\u042b \u0412\u041d\u0415\u0428\u041d\u0415\u0413\u041e \u0412\u0418\u0414\u0410     -----------------------------------------------------------      -- \u0426\u0432\u0435\u0442\u043e\u0432\u0430\u044f \u0441\u0445\u0435\u043c\u0430     use 'joshdick\/onedark.vim'     --- \u0418\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0432\u043d\u0438\u0437\u0443     use { 'nvim-lualine\/lualine.nvim',     requires = {'kyazdani42\/nvim-web-devicons', opt = true},     config = function()         require('lualine').setup()     end, }     -- \u0422\u0430\u0431\u044b \u0432\u0432\u0435\u0440\u0445\u0443     use {'akinsho\/bufferline.nvim', requires = 'kyazdani42\/nvim-web-devicons',     config = function()         require(\"bufferline\").setup{}     end, }       -----------------------------------------------------------     -- \u041d\u0410\u0412\u0418\u0413\u0410\u0426\u0418\u042f     -----------------------------------------------------------     -- \u0424\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440     use { 'kyazdani42\/nvim-tree.lua',     requires = 'kyazdani42\/nvim-web-devicons',     config = function() require'nvim-tree'.setup {} end, }     -- \u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u0432\u043d\u0443\u0442\u0440\u0438 \u0444\u0430\u0439\u043b\u0430 \u043f\u043e \u043a\u043b\u0430\u0441\u0441\u0430\u043c \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c     use 'majutsushi\/tagbar'     -- \u0417\u0430\u043c\u0435\u043d\u0430 fzf \u0438 ack     use { 'nvim-telescope\/telescope.nvim',     requires = { {'nvim-lua\/plenary.nvim'} },     config = function() require'telescope'.setup {} end, }       -----------------------------------------------------------     -- LSP \u0438 \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0430     -----------------------------------------------------------       -- Highlight, edit, and navigate code using a fast incremental parsing library     use 'nvim-treesitter\/nvim-treesitter'     -- Collection of configurations for built-in LSP client     use 'neovim\/nvim-lspconfig'     use 'williamboman\/nvim-lsp-installer'     -- \u0410\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0430     use 'hrsh7th\/nvim-cmp'     use 'hrsh7th\/cmp-nvim-lsp'     use 'hrsh7th\/cmp-buffer'     use 'saadparwaiz1\/cmp_luasnip'     --- \u0410\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u043b\u044f\u043b\u043a\u0430 \u043a \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435     use 'hrsh7th\/cmp-path'     -- Snippets plugin     use 'L3MON4D3\/LuaSnip'        -----------------------------------------------------------     -- PYTHON     -----------------------------------------------------------     --- \u0428\u0430\u043f\u043a\u0430 \u0441 \u0438\u043c\u043f\u043e\u0440\u0442\u0430\u043c\u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u0432 \u043f\u043e\u0440\u044f\u0434\u043e\u043a     use 'fisadev\/vim-isort'     -- \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u0442\u0435\u043c\u043f\u043b\u0435\u0439\u0442\u043e\u043c jinja2     use 'mitsuhiko\/vim-jinja'       -----------------------------------------------------------     -- HTML \u0438 CSS     -----------------------------------------------------------     -- \u041f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0438 \u043e\u0442\u043a\u0440\u044b. \u0442\u044d\u0433. \u0415\u0441\u043b\u0438, \u0433\u0434\u0435-\u0442\u043e \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u043e, \u0442\u043e \u043d\u0435 \u043f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442.     use 'idanarye\/breeze.vim'     -- \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c html \u0438 xml \u0442\u044d\u0433\u0438. \u041f\u0438\u0448\u0435\u0448\u044c &lt;h1> \u0438 \u043e\u043d \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c \u0437\u0430\u043a\u0440\u043e\u0435\u0442\u0441\u044f &lt;\/h1>     use 'alvan\/vim-closetag'     -- \u041f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442 #ffffff     use 'ap\/vim-css-color'      -----------------------------------------------------------     -- \u0420\u0410\u0417\u041d\u041e\u0415     -----------------------------------------------------------     -- \u0414\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u0440\u0443\u0441\u0441\u043a\u0430\u044f \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0430 vim \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c     use 'powerman\/vim-plugin-ruscmd'     -- '\u0410\u0432\u0442\u043e\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435' \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u044f\u0437\u044b\u043a\u043e\u0432     use 'Chiel92\/vim-autoformat'     -- ]p - \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432\u044b\u0448\u0435, [p - \u043d\u0438\u0436\u0435     use 'tpope\/vim-unimpaired'     -- \u041f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a \u0440\u0443\u0441 - \u0430\u043d\u0433\u043b     use 'skanehira\/translate.vim'     --- popup \u043e\u043a\u043e\u0448\u043a\u0438     use 'nvim-lua\/popup.nvim'     -- \u041e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442 \u0438\u043b\u0438 \u0441\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0431\u0440\u0430\u043c\u043b\u0435\u043d\u0438\u0435. \u0412\u044b\u0434\u0435\u043b\u0438 \u0441\u043b\u043e\u0432\u043e, \u043d\u0430\u0436\u043c\u0438 S \u0438 \u043d\u0430\u0431\u0435\u0440\u0438 &lt;h1>     use 'tpope\/vim-surround'     -- \u0421\u0447\u0438\u0442\u0430\u0435\u0442 \u043a\u043e\u043b-\u0432\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0439 \u043f\u0440\u0438 \u043f\u043e\u0438\u0441\u043a\u0435     use 'google\/vim-searchindex'     -- \u041c\u043e\u0436\u0435\u0442 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c \u0447\u0435\u0440\u0435\u0437 . vimsurround     use 'tpope\/vim-repeat'     -- \u0421\u0442\u0430\u0440\u0442\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430, \u0435\u0441\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0430\u0431\u0440\u0430\u0442\u044c vim \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0435     use 'mhinz\/vim-startify'     -- \u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u043f\u043e gc \u0432\u0441\u0435, \u0432\u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u044f\u0437\u044b\u043a\u0430 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f     use { 'numToStr\/Comment.nvim',     config = function() require('Comment').setup() end }     -- \u041e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 \u0442\u0435\u0433\u0438 \u043f\u043e ctrl- y + ,     use 'mattn\/emmet-vim'     -- \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c \u0441\u043a\u043e\u0431\u043a\u0438     use 'cohama\/lexima.vim'     -- \u041b\u0438\u043d\u0442\u0435\u0440, \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u044f\u0437\u044b\u043a\u043e\u0432     use 'dense-analysis\/ale'  end) <\/code><\/pre>\n<\/div>\n<\/details>\n<p>\u0417\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432 \u0434\u043b\u044f lua \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440 <a href=\"https:\/\/github.com\/wbthomason\/packer.nvim\" rel=\"noopener noreferrer nofollow\">packer.nvim<\/a>. \u041f\u0440\u0438\u043d\u0446\u0438\u043f \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0430\u043a\u043e\u0439 \u0436\u0435, \u043a\u0430\u043a \u0438 \u0443 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u043e\u0432.<\/p>\n<h2>\u041e \u043f\u043b\u0430\u0433\u0438\u043d\u0430\u0445<\/h2>\n<p>\u041d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u043b\u0430\u0433\u0438\u043d\u044b \u044f \u0443\u0434\u0430\u043b\u0438\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u044b\u043b\u0438 \u0432 init.vim,  \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u0438\u043b\u0438 \u0437\u0430\u043c\u0435\u043d\u0438\u043b. \u041e\u0431 \u044d\u0442\u043e\u043c \u0438 \u043f\u043e\u0439\u0434\u0435\u0442 \u0434\u0430\u043b\u044c\u0448\u0435 \u0440\u0435\u0447\u044c.<\/p>\n<h3>nvim-lspconfig \u0438 nvim-lsp-installer<\/h3>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/262\/a77\/f57\/262a77f57141bbe330ff3f875a0c9ebe.png\" alt=\"\u0420\u0430\u0431\u043e\u0442\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 nvim-lsp-installer\" title=\"\u0420\u0430\u0431\u043e\u0442\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 nvim-lsp-installer\" width=\"806\" height=\"516\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/262\/a77\/f57\/262a77f57141bbe330ff3f875a0c9ebe.png\"\/><figcaption>\u0420\u0430\u0431\u043e\u0442\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 nvim-lsp-installer<\/figcaption><\/figure>\n<p>\u0418\u0437 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0439 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432 \u043f\u043e\u043d\u044f\u0442\u043d\u043e, \u0447\u0442\u043e \u043e\u043d\u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u044e\u0442\u0441\u044f \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u043c \u0441 <a href=\"https:\/\/habr.com\/ru\/post\/555502\/\" rel=\"noopener noreferrer nofollow\">lsp<\/a>. \u0418 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 lsp \u0441\u0442\u0440\u043e\u0438\u0442\u0441\u044f \u0443\u0436\u0435 \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435: \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0438, \u043b\u0438\u043d\u0442\u0435\u0440\u044b \u0438 \u0442.\u0434.<\/p>\n<p>\u0414\u043e\u043f\u0443\u0441\u0442\u0438\u043c, \u0432\u044b \u043e\u0442\u043a\u0440\u044b\u043b\u0438 \u0434\u0432\u0430 \u0444\u0430\u0439\u043b\u0430, \u043e\u0434\u0438\u043d \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 Rust, \u0430 \u0434\u0440\u0443\u0433\u043e\u0439 \u043d\u0430 Typescript. \u041d\u0430 \u0433\u0438\u0444-\u043a\u0435 \u0441\u0432\u0435\u0440\u0445\u0443 \u0432\u0438\u0434\u043d\u043e, \u043a\u0430\u043a \u043f\u043b\u0430\u0433\u0438\u043d <a href=\"https:\/\/github.com\/williamboman\/nvim-lsp-installer\" rel=\"noopener noreferrer nofollow\">nvim-lsp-installer<\/a> \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043b\u044f \u044d\u0442\u0438\u0445 \u044f\u0437\u044b\u043a\u043e\u0432, \u0430 \u043a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0431\u044b\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b, \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u043e \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u043b\u0438\u043d\u0442\u0435\u0440\u044b \u0441 \u043a\u0440\u0438\u0442\u0438\u043a\u043e\u0439 \u043a\u043e\u0434\u0430. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b nvim-lsp-installer \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u043b\u0430\u0433\u0438\u043d <a href=\"https:\/\/github.com\/neovim\/nvim-lspconfig\" rel=\"noopener noreferrer nofollow\">nvim-lspconfig<\/a>. \u0415\u0441\u043b\u0438 \u0432\u0432\u0435\u0441\u0442\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0443 <code>:LspInstallInfo<\/code> , \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u044f\u0437\u044b\u043a\u043e\u0432 (\u0441\u0435\u0439\u0447\u0430\u0441, \u043a\u043e\u0433\u0434\u0430 \u044f \u044d\u0442\u043e \u043f\u0438\u0448\u0443, \u0438\u0445 57).<\/p>\n<h2>nvim-cmp <\/h2>\n<div class=\"tm-iframe_temp\" data-src=\"https:\/\/embedd.srv.habr.com\/iframe\/6181573dabb378f6450d1a64\" data-style=\"\" id=\"6181573dabb378f6450d1a64\" width=\"\"><\/div>\n<p><a href=\"https:\/\/github.com\/hrsh7th\/nvim-cmp\" rel=\"noopener noreferrer nofollow\">Nvim-cmp<\/a> &#8212; \u044d\u0442\u043e \u0434\u0432\u0438\u0436\u043e\u043a, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u0442\u0440\u043e\u044f\u0442\u0441\u044f \u043b\u044e\u0431\u044b\u0435 \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f. \u0414\u0432\u0438\u0436\u043e\u043a \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 lua. \u041c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u043c\u043e\u0435\u043c \u0444\u0430\u0439\u043b\u0435 plugins.lua, \u043a\u0430\u043a\u0438\u0435 \u044f \u0435\u0449\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0435 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u0438. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0430\u0432\u0442\u043e\u043a\u043e\u043c\u043f\u043b\u0438\u0442 \u043f\u043e \u043f\u0443\u0442\u044f\u043c \u0432 \u0444\u0430\u0439\u043b\u043e\u0432\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f <a href=\"https:\/\/github.com\/hrsh7th\/cmp-path\" rel=\"noopener noreferrer nofollow\">cmp-path<\/a>, \u0434\u043b\u044f lsp &#8212; <a href=\"https:\/\/github.com\/hrsh7th\/cmp-nvim-lsp\" rel=\"noopener noreferrer nofollow\">cmp-nvim-lsp<\/a> \u0438 \u0442.\u0434.<\/p>\n<h3>telescope.nvim<\/h3>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/264\/8a6\/c21\/2648a6c21d91e12d9bb0da8a0a568610.gif\" alt=\"telescope.nvim\" title=\"telescope.nvim\" width=\"1366\" height=\"768\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/264\/8a6\/c21\/2648a6c21d91e12d9bb0da8a0a568610.gif\"\/><figcaption>telescope.nvim<\/figcaption><\/figure>\n<p><a href=\"https:\/\/github.com\/nvim-telescope\/telescope.nvim\" rel=\"noopener noreferrer nofollow\">Telescope.nvim<\/a> &#8212; \u043c\u043e\u0434\u043d\u0430\u044f \u043f\u043e \u043d\u044b\u043d\u0435\u0448\u043d\u0438\u043c \u0432\u0440\u0435\u043c\u0435\u043d\u0430\u043c \u0448\u0442\u0443\u043a\u043e\u0432\u0438\u043d\u0430. \u0412 \u0441\u0432\u043e\u0435\u0439 <a href=\"https:\/\/habr.com\/ru\/post\/585222\/\" rel=\"noopener noreferrer nofollow\">\u043f\u0440\u043e\u0448\u043b\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435<\/a>, \u044f \u043f\u0438\u0441\u0430\u043b \u043e \u043f\u043b\u0430\u0433\u0438\u043d\u0430\u0445  fzf  \u0438  ack.vim. \u041f\u043b\u0430\u0433\u0438\u043d fzf  \u043e\u0442\u0432\u0435\u0447\u0430\u043b \u0437\u0430 \u043d\u0435\u0447\u0435\u0442\u043a\u0438\u0439 \u043f\u043e\u0438\u0441\u043a \u043f\u043e \u0444\u0430\u0439\u043b\u0430\u043c, \u0430 ack &#8212; \u043a\u043e\u0433\u0434\u0430 \u043d\u0443\u0436\u043d\u043e \u0433\u0440\u0435\u043f\u043d\u0443\u0442\u044c \u043a\u0430\u043a\u043e\u0435-\u043d\u0438\u0431\u0443\u0434\u044c \u0441\u043b\u043e\u0432\u043e.  \u0422\u0430\u043a \u0432\u043e\u0442 \u0422\u0435\u043b\u0435\u0441\u043a\u043e\u043f \u0434\u0435\u043b\u0430\u0435\u0442 \u043e\u0431\u0435 \u044d\u0442\u0438 \u0432\u0435\u0449\u0438 \u0432 \u043e\u0434\u043d\u043e\u043c \u0444\u043b\u0430\u043a\u043e\u043d\u0435. \u0423\u043c\u0435\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u0447\u0435\u0442\u043a\u0438\u0439 \u043f\u043e\u0438\u0441\u043a \u043f\u043e \u0444\u0430\u0439\u043b\u0430\u043c \u0438 \u0443\u043c\u0435\u0435\u0442 \u0438\u0441\u043a\u0430\u0442\u044c \u0441\u043b\u043e\u0432\u043e \u0432\u043d\u0443\u0442\u0440\u0438 \u0444\u0430\u0439\u043b\u043e\u0432. \u0418 \u0434\u0435\u043b\u0430\u0435\u0442 \u044d\u0442\u043e \u0432\u0441\u0435 \u0432 <em>\u043c\u043e\u0434\u0430\u043b\u044c\u043d\u043e\u043c \u0432\u0441\u043f\u043b\u044b\u0432\u0430\u044e\u0449\u0435\u043c \u043e\u043a\u043e\u0448\u043a\u0435<\/em>. <\/p>\n<h3>Comment.nvim<\/h3>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fbd\/28b\/0f8\/fbd28b0f895648f2cd65bd7ed543f375.gif\" alt=\"Comment.nvim\" title=\"Comment.nvim\" width=\"1153\" height=\"668\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/fbd\/28b\/0f8\/fbd28b0f895648f2cd65bd7ed543f375.gif\"\/><figcaption>Comment.nvim<\/figcaption><\/figure>\n<p>\u042f \u043d\u0430 \u0433\u0438\u0444-\u043a\u0435 \u0432\u044b\u0448\u0435 \u0432\u044b\u0434\u0435\u043b\u044f\u044e \u043a\u043e\u0434, \u043d\u0430\u0436\u0438\u043c\u0430\u044e <code>gc<\/code> , \u0438 \u043e\u043d \u0437\u0430\u043a\u043e\u043c\u0435\u043d\u0447\u0435\u043d. \u041f\u0440\u0435\u043b\u0435\u0441\u0442\u044c <a href=\"https:\/\/github.com\/numToStr\/Comment.nvim\" rel=\"noopener noreferrer nofollow\">Comment.nvim<\/a> \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0435 \u043d\u0430\u0434\u043e \u0434\u0443\u043c\u0430\u0442\u044c, \u0441 \u043a\u0430\u043a\u0438\u043c \u043d\u0430 \u0434\u0430\u043d\u043d\u044b\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u044f \u0438\u043c\u0435\u044e \u0434\u0435\u043b\u043e \u044f\u0437\u044b\u043a\u043e\u043c, \u0431\u0443\u0434\u044c \u0442\u043e php, perl \u0438\u043b\u0438 js \u0438 \u0442.\u0434.  \u041f\u043b\u0430\u0433\u0438\u043d \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0442\u044c \u043b\u044e\u0431\u043e\u0439 \u044f\u0437\u044b\u043a \u043f\u043e <code>gc<\/code>. \u0414\u043e \u044d\u0442\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u043f\u043b\u0430\u0433\u0438\u043d nerdcommenter, \u043d\u043e \u0432\u043e\u0442 \u043f\u0435\u0440\u0435\u0448\u0435\u043b \u043d\u0430 \u043d\u043e\u0432\u044b\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u043a\u0430\u043a \u0432\u044b \u0443\u0436\u0435 \u043f\u043e\u043d\u044f\u043b\u0438, \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 lua.<\/p>\n<h3>lualine.nvim<\/h3>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/1aa\/463\/121\/1aa4631217c3a0fd1e153489f8d722c4.png\" alt=\"lualine.nvim\" title=\"lualine.nvim\" width=\"780\" height=\"154\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/1aa\/463\/121\/1aa4631217c3a0fd1e153489f8d722c4.png\"\/><figcaption>lualine.nvim<\/figcaption><\/figure>\n<p>\u041c\u043d\u043e\u0433\u0438\u043c \u043b\u044e\u0434\u044f\u043c \u0432 nvim \u043d\u0440\u0430\u0432\u0438\u043b\u0430\u0441\u044c \u0441\u0442\u0440\u043e\u0447\u043a\u0430 \u0432\u043d\u0438\u0437\u0443 \u044d\u043a\u0440\u0430\u043d\u0430 \u0441\u043e \u0432\u0441\u044f\u043a\u043e\u0439 \u0442\u0430\u043c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439, \u043d\u0430\u0437\u044b\u0432\u0430\u043b\u0430\u0441\u044c \u043e\u043d\u0430 airline (\u0432 \u0441\u0442\u0430\u0440\u043e\u043c init.vim \u043e\u043d\u0430 \u0443 \u043c\u0435\u043d\u044f \u0431\u044b\u043b\u0430). \u041f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u043b\u0438 \u0435\u0435 \u043d\u0430 lua \u0438 \u043d\u0430\u0437\u0432\u0430\u043b\u0438 <a href=\"https:\/\/github.com\/nvim-lualine\/lualine.nvim\" rel=\"noopener noreferrer nofollow\">lualine.nvim<\/a>. \u0410\u0432\u0442\u043e\u0440 \u0434\u0430\u0436\u0435 \u043d\u0435 \u043f\u043e\u043b\u0435\u043d\u0438\u043b\u0441\u044f \u0438 \u0432\u044b\u043b\u043e\u0436\u0438\u043b \u0447\u0442\u043e-\u0442\u043e \u0432\u0440\u043e\u0434\u0435 \u0431\u0435\u0447\u043c\u0430\u0440\u043a\u0430, \u043d\u0430 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443 \u043d\u0435\u0433\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u044d\u0442\u0430 \u0441\u0442\u0440\u043e\u0447\u043a\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.<\/p>\n<h3>bufferline.nvim<\/h3>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d88\/8df\/4cb\/d888df4cba396e3d1d0a8ac6e7c98146.gif\" alt=\"bufferline.nvim\" title=\"bufferline.nvim\" width=\"1024\" height=\"172\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d88\/8df\/4cb\/d888df4cba396e3d1d0a8ac6e7c98146.gif\"\/><figcaption>bufferline.nvim<\/figcaption><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d5a\/2a7\/060\/d5a2a7060275b5e0d936595bfc08b200.png\" alt=\"\u0421\u043a\u0440\u0438\u043d \u043a\u043b\u0438\u043a\u0430\u0431\u0435\u043b\u044c\u043d\u044b\u0439 (\u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 bufferline.nvim)\" title=\"\u0421\u043a\u0440\u0438\u043d \u043a\u043b\u0438\u043a\u0430\u0431\u0435\u043b\u044c\u043d\u044b\u0439 (\u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 bufferline.nvim)\" width=\"3840\" height=\"2106\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d5a\/2a7\/060\/d5a2a7060275b5e0d936595bfc08b200.png\"\/><figcaption>\u0421\u043a\u0440\u0438\u043d \u043a\u043b\u0438\u043a\u0430\u0431\u0435\u043b\u044c\u043d\u044b\u0439 (\u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 bufferline.nvim)<\/figcaption><\/figure>\n<p>\u041f\u043b\u0430\u0433\u0438\u043d <a href=\"https:\/\/github.com\/akinsho\/bufferline.nvim\" rel=\"noopener noreferrer nofollow\">bufferline.nvim<\/a>  \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0442\u0430\u0431\u0430\u043c\u0438 (\u0431\u0443\u0444\u0435\u0440\u0430\u043c\u0438) \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432. \u042f \u043f\u043e\u0432\u0435\u0441\u0438\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432 \u0433\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438, \u0447\u0442\u043e\u0431\u044b \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0432\u043a\u043b\u0430\u0434\u043e\u0447\u043a\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e tab \u0438 shift-tab<\/p>\n<pre><code class=\"lua\">-- \u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0432\u043a\u043b\u0430\u0434\u043e\u043a \u0441 \u043f\u043e\u043c\u0449\u044c\u044e TAB \u0438\u043b\u0438 shift-tab (akinsho\/bufferline.nvim) map('n', '&lt;Tab>', ':BufferLineCycleNext&lt;CR>', default_opts) map('n', '&lt;S-Tab>', ':BufferLineCyclePrev&lt;CR>', default_opts)<\/code><\/pre>\n<p>\u041f\u043e\u043a\u0430 \u0432\u043a\u043b\u0430\u0434\u043e\u043a \u043d\u0435 \u043c\u043d\u043e\u0433\u043e &#8212; \u044d\u0442\u043e \u0443\u0434\u043e\u0431\u043d\u043e. \u041d\u043e \u043a\u0430\u043a \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0445 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u044f\u0442\u0438, \u0442\u043e \u043f\u0440\u043e\u0449\u0435 \u0447\u0435\u0440\u0435\u0437 fzf \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f.<\/p>\n<p>\u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u043f\u043b\u0430\u0433\u0438\u043d\u0430 \u043d\u0443\u0436\u043d\u044b <a href=\"https:\/\/www.nerdfonts.com\" rel=\"noopener noreferrer nofollow\">\u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0448\u0440\u0438\u0444\u0442\u044b<\/a>. \u0415\u0441\u043b\u0438 \u0437\u0430\u0445\u043e\u0434\u0438\u0442\u0435 \u043f\u043e ssh \u0441 windows, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f securecrt \u0438\u043b\u0438 putty, \u0442\u043e \u043d\u0430 \u0432\u0438\u043d\u0434\u0435 \u043d\u0430\u0434\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c <a href=\"https:\/\/github.com\/ryanoasis\/nerd-fonts\/blob\/master\/patched-fonts\/LiberationMono\/complete\/Literation%20Mono%20Nerd%20Font%20Complete%20Mono.ttf\" rel=\"noopener noreferrer nofollow\">\u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u044c\u043d\u044b\u0439 \u0448\u0440\u0438\u0444\u0442 nerd<\/a>, \u0447\u0442\u043e\u0431\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0438\u043a\u043e\u043d\u043a\u0438 \u043d\u0430 \u0432\u043a\u043b\u0430\u0434\u043a\u0430\u0445.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/586808\/\"> https:\/\/habr.com\/ru\/articles\/586808\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"\"><figcaption><\/figcaption><\/figure>\n<p>\u0421\u0442\u0430\u0442\u044c\u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043e \u0442\u043e\u043c, \u043a\u0430\u043a \u044f \u0441 \u043d\u0443\u043b\u044f \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u043b \u0441\u0432\u043e\u0439  nvim-\u043a\u043e\u043d\u0444\u0438\u0433 (init.vim)  \u0432 \u043a\u043e\u043d\u0444\u0438\u0433 \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 lua (init.lua). <\/p>\n<h3>\u041f\u0440\u0435\u0434\u0438\u0441\u043b\u043e\u0432\u0438\u0435<\/h3>\n<p>\u042f \u0442\u0443\u0442 \u0441\u0438\u0434\u0435\u043b \u0438 \u043f\u0440\u0438\u0431\u044b\u0432\u0430\u043b \u0432 \u043f\u0440\u043e\u043a\u0440\u0430\u0441\u0442\u0438\u043d\u0430\u0446\u0438\u0438. \u041f\u0438\u0441\u0430\u0442\u044c \u043a\u043e\u0434 \u0431\u044b\u043b\u043e \u043b\u0435\u043d\u044c. \u0418, <a href=\"https:\/\/habr.com\/ru\/post\/585222\/\" rel=\"noopener noreferrer nofollow\">\u043b\u0438\u0441\u0442\u0430\u044f \u0441\u0442\u0430\u0440\u0443\u044e \u0442\u0435\u0442\u0440\u0430\u0434\u044c \u0440\u0430\u0441\u0441\u0442\u0440\u0435\u043b\u044f\u043d\u043d\u043e\u0433\u043e \u0433\u0435\u043d\u0435\u0440\u0430\u043b\u0430<\/a>, \u044f \u0443\u0432\u0438\u0434\u0435\u043b \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043c\u043d\u0435 \u043d\u0430\u043f\u043e\u043c\u043d\u0438\u043b\u0438, \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u043a\u0440\u0443\u0442\u043e \u043f\u0435\u0440\u0435\u0435\u0445\u0430\u0442\u044c \u043d\u0430 lua. \u042f  \u0441\u043b\u0435\u0436\u0443 \u0437\u0430 nvim&amp;lua \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435\u043c \u043d\u0430 \u0440\u0435\u0434\u0438\u0442\u0435, \u043d\u043e \u0432\u0441\u0435 \u043a\u0430\u043a-\u0442\u043e \u0440\u0443\u043a\u0438 \u043d\u0435 \u0434\u043e\u0445\u043e\u0434\u0438\u043b\u0438, \u0430 \u0442\u0443\u0442, \u0431\u0430\u0445, \u0438 \u043f\u0440\u043e\u043a\u0440\u0430\u0441\u0442\u0438\u043d\u0430\u0446\u0438\u044e \u043a\u0430\u043a \u0440\u0443\u043a\u043e\u0439 \u0441\u043d\u044f\u043b\u043e \u043e\u0442 \u0442\u0430\u043a\u0438\u0445 \u043c\u044b\u0441\u043b\u0435\u0439:<\/p>\n<ul>\n<li>\n<p>Lua \u044f \u043d\u0435 \u0437\u043d\u0430\u044e, \u043d\u043e \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u044d\u0442\u043e \u043e\u0442\u043b\u0438\u0447\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431  \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0441 \u043d\u043e\u0432\u044b\u043c \u0434\u043b\u044f \u043c\u0435\u043d\u044f \u044f\u0437\u044b\u043a\u043e\u043c<\/p>\n<\/li>\n<li>\n<p>Vim \u0441\u0443\u043f\u0435\u0440 \u0431\u044b\u0441\u0442\u0440\u044b\u0439, \u043d\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e lua \u043e\u043d \u0441\u0442\u0430\u043d\u0435\u0442 \u0435\u0449\u0451 \u0431\u044b\u0441\u0442\u0440\u0435\u0435<\/p>\n<\/li>\n<li>\n<p>\u0422\u0430\u043a \u0436\u0435 \u0441  \u043f\u043e\u043c\u043e\u0449\u044c\u044e lua \u043c\u043e\u0436\u043d\u043e \u043d\u0430\u0432\u0435\u0441\u0442\u0438 \u043f\u043e\u0440\u044f\u0434\u043e\u043a,  \u0440\u0430\u0437\u0431\u0438\u0442\u044c \u043d\u0430 \u0444\u0430\u0439\u043b\u044b \u0434\u043b\u044f \u0443\u0434\u043e\u0431\u0441\u0442\u0432\u0430, \u0447\u0442\u043e\u0431\u044b \u0433\u043e\u0440\u044f\u0447\u0438\u0435 \u043a\u043b\u0430\u0432\u0438\u0448\u0438 \u0431\u044b\u043b\u0438 \u0432 \u043e\u0434\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435, \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432 \u0434\u0440\u0443\u0433\u043e\u043c, \u0430 \u043f\u043b\u0430\u0433\u0438\u043d\u044b \u0432 \u0442\u0440\u0435\u0442\u044c\u0435\u043c<\/p>\n<\/li>\n<li>\n<p>\u0417\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043a\u043e\u0435-\u043a\u0430\u043a\u0438\u0435 \u043f\u043b\u0430\u0433\u0438\u043d\u044b \u043d\u0430 \u0431\u043e\u043b\u0435\u0435 \u0441\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0438\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443\u0436\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u044b \u043d\u0430 lua<\/p>\n<\/li>\n<li>\n<p>\u0412 \u043c\u0438\u0440\u0435 vi* \u0441\u0435\u0439\u0447\u0430\u0441 \u0438\u0434\u0435\u0442 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0430\u044f \u0440\u0435\u0432\u043e\u043b\u044e\u0446\u0438\u044f, \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u0430\u044f \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c neovim \u0441 lua, \u0438 \u043f\u0440\u0438\u043e\u0431\u0449\u0438\u0442\u044c\u0441\u044f \u043a \u044d\u0442\u043e\u043c\u0443 \u0431\u0443\u0434\u0435\u0442 \u0432\u0435\u0441\u0435\u043b\u043e<\/p>\n<\/li>\n<\/ul>\n<h3>\u041c\u043e\u0439 \u0441\u0442\u0430\u0440\u044b\u0439 .vimrc (init.vim)<\/h3>\n<details class=\"spoiler\">\n<summary>\u041c\u043e\u0439 init.vim \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u043b \u0432\u043e\u0442 \u0442\u0430\u043a\u043e\u0439 \u0444\u0430\u0439\u043b<\/summary>\n<div class=\"spoiler__content\">\n<pre><code>call plug#begin('~\/.local\/share\/nvim\/plugged') \"------------------------------------------------------------------------------- \" \u041f\u041b\u0410\u0413\u0418\u041d\u042b \"------------------------------------------------------------------------------- \" --- Python --- Plug 'python-mode\/python-mode', { 'for': 'python', 'branch': 'develop' } Plug 'mitsuhiko\/vim-jinja' Plug 'fisadev\/vim-isort', {'do': 'pip install isort'} \" pip install isort \u041c\u043e\u0436\u0435\u0442 \u0441\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043c\u043f\u043e\u0440\u0442\u044b \u0432 \u0448\u0430\u043f\u043a\u0435. \" --- Perl --- Plug 'WolfgangMehner\/perl-support' \" --- JavaScript --- Plug 'pangloss\/vim-javascript' \" --- JSON --- Plug 'elzr\/vim-json' \" --- Bash --- Plug 'WolfgangMehner\/bash-support'    \" \\rr - \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \" --- HTML --- Plug 'othree\/html5.vim'               \" \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 microdata \u0438 \u043f\u0440\u043e\u0447\u0435\u0439 \u043b\u0430\u0431\u0443\u0434\u044b \u0432 html Plug 'idanarye\/breeze.vim'            \" \u041f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u044e\u0449\u0438\u0439 \u0438 \u043e\u0442\u043a\u0440\u044b. \u0442\u044d\u0433. \u0415\u0441\u043b\u0438, \u0433\u0434\u0435-\u0442\u043e \u0447\u0442\u043e-\u0442\u043e \u043d\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u043e, \u0442\u043e \u043d\u0435 \u043f\u043e\u0434\u0441\u0432\u0435\u0447\u0438\u0432\u0430\u0435\u0442. Plug 'alvan\/vim-closetag'             \" \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c html \u0438 xml \u0442\u044d\u0433\u0438. \u041f\u0438\u0448\u0435\u0448\u044c &lt;h1> \u0438 \u043e\u043d \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c \u0437\u0430\u043a\u0440\u043e\u0435\u0442\u0441\u044f &lt;\/h1>. \u041d\u0430\u0436\u043c\u0438 >! \" --- CSS --- Plug 'JulesWang\/css.vim'              \" CSS syntax file Plug 'groenewege\/vim-less'            \" Vim syntax for LESS (dynamic CSS) Plug 'hail2u\/vim-css3-syntax' Plug 'ap\/vim-css-color' \" --- \u041e\u0444\u043e\u0440\u043c\u043b\u0435\u043d\u0438\u0435 --- Plug 'vim-airline\/vim-airline'        \" \u041a\u0440\u0443\u0442\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u043d\u0438\u0437\u0443 \u044d\u043a\u0440\u0430\u043d\u0430 Plug 'vim-airline\/vim-airline-themes' Plug 'flazz\/vim-colorschemes'        \" \u041c\u043e\u0436\u0435\u0442 \u043c\u0435\u043d\u044f\u0442\u044c \u0446\u0432\u0435\u0442\u043e\u0432\u0443\u044e \u0441\u0445\u0435\u043c\u0443. \u0421\u043f\u0438\u0441\u043e\u043a \u0441\u0445\u0435\u043c: https:\/\/github.com\/flazz\/vim-colorschemes\/tree\/prep Plug 'joshdick\/onedark.vim'          \" \u0422\u0435\u043c\u0430 \u0434\u043b\u044f \u0432\u0438\u043c\u0430 Plug 'challenger-deep-theme\/vim'      \" \u0422\u0435\u043c\u0430 \u0432\u0438\u043c\u0430 \"Plug 'Yggdroot\/indentLine'            \" \u0422\u043e\u0447\u043a\u0438 \u0434\u043b\u044f \u0442\u0430\u0431\u043e\u0432 \" --- \u0410\u0432\u0442\u043e\u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u044f\u0437\u044b\u043a\u043e\u0432 --- Plug 'Chiel92\/vim-autoformat'         \" \u0424\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0443\u0435\u0442 \u0432\u0441\u0435, \u043d\u043e \u043d\u0430\u0434\u043e \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043c\u043e\u0434\u0443\u043b\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u0434\u043b\u044f perl \u043d\u0430\u0434\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c perltidy. \" --- \u0410\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0438 --- \"  \u0417\u0434\u0435\u0441\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0432\u0441\u0435\u0445 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u043e\u0439 \u044f\u0437\u044b\u043a\u043e\u0432: \"  https:\/\/github.com\/Shougo\/deoplete.nvim\/wiki\/Completion-Sources \"  \u0414\u043b\u044f PHP, GO, TypeScript - \u0441\u043c\u043e\u0442\u0440\u0438 \u0442\u0430\u043c \u0436\u0435 Plug 'Shougo\/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }     \" \u0410\u0441\u0438\u043d\u0445\u0440\u043e\u043d\u043d\u0430\u044f \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0431\u044b\u0441\u0442\u0440\u043e \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0438 \u043e\u0442 COC Plug 'deoplete-plugins\/deoplete-jedi'                             \" \u041f\u043e\u0434\u043f\u043b\u0430\u0433\u0438\u043d \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f python Plug 'carlitux\/deoplete-ternjs'                                   \" \u041f\u043e\u0434\u043f\u043b\u0430\u0433\u0438\u043d \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f javascript Plug 'ternjs\/tern_for_vim', {'do': 'cd ~\/.local\/share\/nvim\/plugged\/tern_for_vim &amp;&amp; npm install'} \" --- \u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f --- Plug 'majutsushi\/tagbar'              \" \u041f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0434\u0435\u0440\u0435\u0432\u043e \u043a\u043b\u0430\u0441\u0441\u043e\u0432 \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0439, \u043c\u043e\u0436\u043d\u043e \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0430\u0442\u044c\u0441\u044f \u043a\u043d\u043e\u043f\u043a\u0430 F8 Plug 'scrooloose\/nerdtree'            \" \u0414\u0435\u0440\u0435\u0432\u043e \u0444\u0430\u0439\u043b\u043e\u0432. \u0414\u043b\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0442\u0430\u0431\u043b\u0438\u0446\u044b \u044e\u0437\u0430\u0439 t, \u0430 \u0434\u043b\u044f \u0441\u043f\u043b\u0438\u0442\u0430 s Plug 'mileszs\/ack.vim'                \" \u0423\u0434\u043e\u0431\u043d\u044b\u0439 grep \u043f\u043e \u0444\u0430\u0439\u043b\u0430\u043c Plug 'junegunn\/fzf', { 'do': { -> fzf#install() } } Plug 'junegunn\/fzf.vim' \" --- \u0420\u0430\u0437\u043d\u043e\u0435 --- Plug 'cohama\/lexima.vim'              \" \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u043e\u043c \u0441\u043a\u043e\u0431\u043a\u0438 Plug 'scrooloose\/nerdcommenter'       \" \u041a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u0431\u043b\u043e\u043a \\cc, \u0441\u043d\u0438\u043c\u0430\u0435\u0442 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u044b \u0441 \u0431\u043b\u043e\u043a\u0430 \\cu Plug 'tpope\/vim-surround'             \" \u041e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442 \u0438\u043b\u0438 \u0441\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0431\u0440\u0430\u043c\u043b\u0435\u043d\u0438\u0435. \u0412\u044b\u0434\u0435\u043b\u0438 \u0441\u043b\u043e\u0432\u043e, \u043d\u0430\u0436\u043c\u0438 S \u0438 \u043d\u0430\u0431\u0435\u0440\u0438 &lt;h1> Plug 'powerman\/vim-plugin-ruscmd'     \" \u0420\u0443\u0441\u0441\u043a\u0430\u044f \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0430 \u0432 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 Plug 'chr4\/nginx.vim'                 \" nginx \u043f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 Plug 'sheerun\/vim-polyglot'           \" \u041f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 \u0434\u043b\u044f \u0442\u044c\u043c\u044b \u044f\u0437\u044b\u043a\u043e, \u0432 \u0442.\u0447. \u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0438 nginx Plug 'w0rp\/ale'                       \" \u041d\u0443\u0436\u0435\u043d, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b eslint, \u043a\u0430\u043a \u0432 \u0430\u0442\u043e\u043c\u0435 Plug 'tpope\/vim-unimpaired'           \" ]p - \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0438\u0437 \u0431\u0443\u0444\u0435\u0440\u0430 \u043d\u0430 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432\u044b\u0448\u0435, [p - \u043d\u0438\u0436\u0435 Plug 'google\/vim-searchindex'         \" \u0421\u0447\u0438\u0442\u0430\u0435\u0442 \u043a\u043e\u043b-\u0432\u043e \u0441\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0439 \u043f\u0440\u0438 \u043f\u043e\u0438\u0441\u043a\u0435 Plug 'tpope\/vim-repeat'               \" \u041c\u043e\u0436\u0435\u0442 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c \u0447\u0435\u0440\u0435\u0437 . vimsurround Plug 'terryma\/vim-multiple-cursors'   \" \u041c\u043e\u0436\u0435\u0442 \u0438\u0437\u043c\u0435\u043d\u044f\u0442\u044c \u0438\u043c\u044f \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0432 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043c\u0435\u0441\u0442\u0430\u0445 ctrl-n \u043d\u0430 \u0438\u043c\u0435\u043d\u0438 \u0438 \u0441 Plug 'mhinz\/vim-startify'             \" \u0421\u0442\u0430\u0440\u0442\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430, \u0435\u0441\u043b\u0438 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0430\u0431\u0440\u0430\u0442\u044c vim \u0432 \u043a\u043e\u043d\u0441\u043e\u043b\u0435 Plug 'skanehira\/translate.vim'        \" \u041f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a Plug 'mattn\/emmet-vim'                \" \u041e\u0431\u0440\u0430\u043c\u043b\u044f\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0443 \u0432 \u0442\u0435\u0433\u0438 \u043f\u043e ctrl- y call plug#end()  \"------------------------------------------------------------------------------- \" GLOBAL \"------------------------------------------------------------------------------- syntax on set autoindent filetype on filetype plugin on filetype plugin indent on \" \u0426\u0432\u0435\u0442\u043e\u0432\u0430\u044f \u0442\u0435\u043c\u0430 \u0438 \u043f\u0430\u043b\u0438\u0442\u0440\u0430 256 \u0438\u043b\u0438 24\u0431\u0438\u0442 \u0446\u0432\u0435\u0442\u043e\u0432 if ($MYCOLOR=='24bit')         set termguicolors endif \"Use 24-bit (true-color) mode in Vim\/Neovim when outside tmux. \"If you're using tmux version 2.2 or later, you can remove the outermost $TMUX check and use tmux's 24-bit color support \"(see &lt; http:\/\/sunaku.github.io\/tmux-24bit-color.html#usage > for more information.) if (empty($TMUX))         if (has(\"nvim\"))                 \"For Neovim 0.1.3 and 0.1.4 &lt; https:\/\/github.com\/neovim\/neovim\/pull\/2198 >                 let $NVIM_TUI_ENABLE_TRUE_COLOR=1         endif         \"For Neovim > 0.1.5 and Vim > patch 7.4.1799 &lt; https:\/\/github.com\/vim\/vim\/commit\/61be73bb0f965a895bfb064ea3e55476ac175162 >         \"Based on Vim patch 7.4.1770 (guicolors option) &lt; https:\/\/github.com\/vim\/vim\/commit\/8a633e3427b47286869aa4b96f2bfc1fe65b25cd >         \" &lt; https:\/\/github.com\/neovim\/neovim\/wiki\/Following-HEAD#20160511 >         if (has(\"termguicolors\"))                 set termguicolors         endif endif colorscheme challenger_deep \"colorscheme onedark \" \u041e\u0440\u0444\u043e\u0433\u0440\u0430\u0444\u0438\u044f \u0434\u043b\u044f \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e \u0438 \u0440\u0443\u0441\u0441\u043a\u043e\u0433\u043e \u044f\u0437\u044b\u043a\u0430 set spelllang=en,ru \" \u0414\u0432\u0430 \u043f\u0440\u043e\u0431\u0435\u043b\u0430 \u043f\u0440\u0438 \u0442\u0430\u0431\u0443\u043b\u044f\u0446\u0438\u0438 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043e\u0442\u0441\u0442\u0443\u043f\u0430 \u0434\u043b\u044f js\/html\/xml \u0444\u0430\u0439\u043b\u043e\u0432, \u0434\u043b\u044f \" \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0445 4 set shiftwidth=4 set tabstop=4 set softtabstop=4 \" \u041a\u0430\u043a vim \u0441\u043f\u043b\u0438\u0442\u0438\u0442 \u044d\u043a\u0440\u0430\u043d set splitright set splitbelow \" \u0414\u0430\u0436\u0435, \u0435\u0441\u043b\u0438 \u0449\u0430 \u0440\u0443\u0441\u0441\u043a\u0430\u044f \u0440\u0430\u0441\u043a\u043b\u0430\u0434\u043a\u0430, \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043c\u043e\u0436\u043d\u043e \u0432\u0432\u043e\u0434\u0438\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0442\u0438\u043f\u0430 \" Ctrl + r \u0438 \u0442.\u0434. set keymap=russian-jcukenwin set iminsert=0  \" \u0427\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u0432\u0432\u043e\u0434 \u0431\u044b\u043b \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c, \u0430 \u043d\u0435 \u0440\u0443\u0441\u0441\u043a\u043e\u043c (start > i) set imsearch=0  \" \u0427\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u043f\u043e\u0438\u0441\u043a \u0431\u044b\u043b \u043d\u0430 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u043c, \u0430 \u043d\u0435 \u0440\u0443\u0441\u0441\u043a\u043e\u043c (start > \/) \" \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043d\u043e\u043c\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0442\u0440\u043e\u043a set number \" \u0412\u043a\u043b. \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u044e \u0441\u0442\u0440\u043e\u043a, \u043d\u0430\u043f\u0440. 10j \u0438\u043b\u0438 5k set relativenumber \" \u041a\u0443\u0440\u0441\u043e\u0440 \u0432\u0441\u0435\u0433\u0434\u0430 \u0432 \u0446\u0435\u043d\u0442\u0440\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 set so=999 \" \u041f\u043e\u0434\u0441\u0432\u0435\u0442\u043a\u0430 \u0441\u0442\u0440\u043e\u043a\u0438, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043a\u0443\u0440\u0441\u043e\u0440 set cursorline set nostartofline hi CursorLine cterm=underline \" \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043e\u0442\u043a\u0430\u0442\u0430 \u043d\u0430\u0437\u0430\u0434 \u0432 \u0444\u0430\u0439\u043b\u0435 set undofile \"------------------------------------------------------------------------------- \" LET'S \"------------------------------------------------------------------------------- \" python-mode let g:pymode_python = 'python3'                           \" \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e python-mode \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430 python 2. \u0427\u0442\u043e\u0431\u044b \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c python 3 \" \u0417\u0434\u0435\u0441\u044c \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u0435\u0435 \u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0443\u0442\u044c \u043a \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044e, \u0430 \u043d\u0435 \u043e\u0431\u0449\u0435\u043c\u0443. \u041d\u0430 \u0440\u043e\u043a\u043a\u0438 \" \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u0431\u0435\u0437 \u044d\u0442\u043e\u0433\u043e let g:python3_host_prog='\/usr\/bin\/python3' let g:pymode_lint_ignore=[\"E722\", \"C901\"]                 \" \u0418\u0433\u043d\u043e\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0435 \u043b\u0438\u043d\u0442\u044b \" \u0422\u0435\u043c\u0430 \u0434\u043b\u044f \u0430\u0439\u0440\u043b\u0430\u0439\u043d\u0430 \u0438 \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 tabline let g:airline_theme='papercolor' \"let g:airline_theme='onedark' let g:airline#extensions#tabline#formatter = 'unique_tail' let g:airline#extensions#tabline#enabled = 1           \" enable airline tabline let g:airline#extensions#tabline#tabs_label = ''       \" can put text here like BUFFERS to denote buffers (I clear it so nothing is shown) let g:airline#extensions#tabline#buffers_label = ''    \" can put text here like TABS to denote tabs (I clear it so nothing is shown) let g:airline#extensions#tabline#fnamemod = ':t'       \" disable file paths in the tab let g:airline#extensions#tabline#show_tab_count = 0    \" dont show tab numbers on the right let g:airline#extensions#tabline#show_buffers = 1      \" dont show buffers in the tabline let g:airline#extensions#tabline#tab_min_count = 1     \" minimum of 2 tabs needed to display the tabline let g:airline#extensions#tabline#show_splits = 0       \" disables the buffer name that displays on the right of the tabline let g:airline#extensions#tabline#show_tab_nr = 0       \" disable tab numbers let g:airline#extensions#tabline#show_tab_type = 0     \" disables the weird ornage arrow on the tabline let g:airline#extensions#tabline#left_sep = '' let g:airline#extensions#tabline#left_alt_sep = '|' \" fzf let g:fzf_buffers_jump = 1 \"let g:fzf_action = {  'enter': 'tab drop',  'ctrl-t': 'tab drop'} \" \u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0430\u0432\u0442\u043e\u0434\u043e\u043f\u043e\u043b\u043d\u044f\u043b\u043a\u0443 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 let g:deoplete#enable_at_startup = 1 call deoplete#custom#option('num_processes', 4) \" \u0427\u0442\u043e\u0431\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e \u043f\u043e &lt;F8> \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f \u043f\u043e \u043f\u0435\u0440\u043b\u043e\u0432\u043e\u043c\u0443 \u0444\u0430\u0439\u043b\u0443 let g:tagbar_type_perl = {                         \\ 'ctagstype' : 'perl',                         \\ 'kinds'     : [                         \\ 'p:package:0:0',                         \\ 'w:roles:0:0',                         \\ 'e:extends:0:0',                         \\ 'u:uses:0:0',                         \\ 'r:requires:0:0',                         \\ 'o:ours:0:0',                         \\ 'a:properties:0:0',                         \\ 'b:aliases:0:0',                         \\ 'h:helpers:0:0',                         \\<\/code><\/pre>\n<\/div>\n<\/details>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-414537","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/414537","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=414537"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/414537\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=414537"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=414537"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=414537"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}