summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortsxv478 <vt0451@yandex.ru>2023-03-06 02:33:14 +0300
committertsxv478 <vt0451@yandex.ru>2023-03-06 02:33:14 +0300
commit774300829e66964d87dc7ae8a43c6a0a68597c85 (patch)
tree42c997530dd5cdc751999743f00af39e71207015
parent2ab24956c58d59c07dde559fb45333b687b257cd (diff)
nvim
-rw-r--r--nvim/init.vim85
1 files changed, 85 insertions, 0 deletions
diff --git a/nvim/init.vim b/nvim/init.vim
new file mode 100644
index 0000000..f63195c
--- /dev/null
+++ b/nvim/init.vim
@@ -0,0 +1,85 @@
+let mapleader=","
+
+if empty(glob('~/.local/share/nvim/site/autoload/plug.vim'))
+ silent !curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs
+ \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
+ autocmd VimEnter * PlugInstall --sync
+endif
+
+call plug#begin()
+Plug 'neovim/nvim-lspconfig'
+Plug 'ervandew/supertab'
+Plug 'morhetz/gruvbox'
+Plug 'preservim/nerdtree'
+Plug 'jreybert/vimagit'
+Plug 'tpope/vim-commentary'
+Plug 'ap/vim-css-color'
+call plug#end()
+
+let g:gruvbox_termcolors = 16
+let g:gruvbox_italic = 1
+let g:SuperTabDefaultCompletionType = "context"
+let g:SuperTabContextDefaultCompletionType = "<c-x><c-o>"
+
+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 omnifunc=v:lua.vim.lsp.omnifunc
+set completeopt=menuone,noinsert
+
+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 <Esc>
+imap жо <Esc>
+map <C-h> <C-w>h
+map <C-j> <C-w>j
+map <C-k> <C-w>k
+map <C-l> <C-w>l
+nnoremap <leader>f :NERDTreeToggle<CR>
+
+" 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 <silent> gd <cmd>lua vim.lsp.buf.definition()<CR>
+nmap <silent> gD <cmd>lua vim.lsp.buf.declaration()<CR>
+nmap <silent> gK <cmd>lua vim.lsp.buf.hover()<CR>
+nmap <silent> gz <cmd>lua vim.lsp.buf.references()<CR>
+nmap <silent> <leader>n <cmd>lua vim.lsp.buf.rename()<CR>
+nmap <silent> <leader>b <cmd>lua vim.lsp.buf.formatting()<CR>
+nmap <silent> <leader>a <cmd>lua vim.lsp.buf.code_action()<CR>
+nmap <silent> <leader>w <cmd>lua vim.lsp.buf.workspace_symbol()<CR>
+nmap <silent> <leader>l <cmd>lua vim.diagnostic.setloclist()<CR>
+nmap <silent> ]g <cmd>lua vim.diagnostic.goto_next()<CR>
+nmap <silent> [g <cmd>lua vim.diagnostic.goto_prev()<CR>
+
+autocmd FileType c map <buffer> <leader>e :w<CR>:exec '!gcc' shellescape(@%, 1) '-o out; ./out'<CR>
+autocmd FileType python map <buffer> <leader>e :w<CR>:exec '!python' shellescape(@%, 1)<CR>
+autocmd FileType sh map <buffer> <leader>e :w<CR>:exec '!sh' shellescape(@%, 1)<CR>
+autocmd VimLeave,VimSuspend * set guicursor=a:block-blinkon250