let mapleader="," if ! filereadable(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/plug.vim"')) echo "Downloading junegunn/vim-plug to manage plugins..." silent !mkdir -p ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/ silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/plug.vim autocmd VimEnter * PlugInstall endif call plug#begin() Plug 'morhetz/gruvbox' Plug 'navarasu/onedark.nvim' Plug 'preservim/nerdtree' Plug 'jreybert/vimagit' Plug 'tpope/vim-commentary' Plug 'ap/vim-css-color' " Plug 'ervandew/supertab' " Plug 'neovim/nvim-lspconfig' call plug#end() let g:gruvbox_termcolors = 16 let g:gruvbox_italic = 1 let g:onedark_config = { 'style': 'dark', 'term_colors': 'true', 'transparent': 'true' } " let g:SuperTabDefaultCompletionType = "context" " let g:SuperTabContextDefaultCompletionType = "" colorscheme gruvbox syntax on set number relativenumber set splitbelow splitright set clipboard+=unnamedplus set encoding=utf-8 set cursorline set nohlsearch set ignorecase set smartcase set mouse=a set scroll=10 set scrolloff=5 set tabstop=4 set shiftwidth=4 set laststatus=2 set completeopt=menuone,noinsert " set omnifunc=v:lua.vim.lsp.omnifunc set statusline+=%< set statusline+=\ %F%r%m set statusline+=%= set statusline+=\ %l/%L,\ %v set statusline+=\ set statusline+=%#StatusLineNC# set statusline+=\ %Y set statusline+=\ %{&fileencoding?&fileencoding:&encoding} set statusline+=\[%{&fileformat}\] set statusline+=\ set langmap=ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯХЪБЮ;ABCDEFGHIJKLMNOPQRSTUVWXYZ{}<>,фисвуапршолдьтщзйкыегмцчняхъэ;abcdefghijklmnopqrstuvwxyz[]' imap ;j map h map j map k map l nnoremap f :NERDTreeToggle " lua require('lspconfig').pylsp.setup{} " lua require('lspconfig').clangd.setup{filetypes = { "c", "cpp", "objc", "objcpp", "ch" }} " lua require('lspconfig').gopls.setup{} " lua require('lspconfig').rls.setup{} " lua require('lspconfig').quick_lint_js.setup{} " nmap gd lua vim.lsp.buf.definition() " nmap gD lua vim.lsp.buf.declaration() " nmap gK lua vim.lsp.buf.hover() " nmap gz lua vim.lsp.buf.references() " nmap n lua vim.lsp.buf.rename() " nmap b lua vim.lsp.buf.formatting() " nmap a lua vim.lsp.buf.code_action() " nmap w lua vim.lsp.buf.workspace_symbol() " nmap l lua vim.diagnostic.setloclist() " nmap ]g lua vim.diagnostic.goto_next() " nmap [g lua vim.diagnostic.goto_prev() autocmd FileType c map e :w:exec '!gcc' shellescape(@%, 1) '-o out; ./out' autocmd FileType python map e :w:exec '!python' shellescape(@%, 1) autocmd FileType sh map e :w:exec '!sh' shellescape(@%, 1) " autocmd VimEnter * hi Normal guibg=NONE ctermbg=NONE autocmd VimLeave,VimSuspend * set guicursor=a:block-blinkon250