From 093639a28a808fd789b149bb1a1f8c322e835b17 Mon Sep 17 00:00:00 2001 From: Smirnov Alexander Date: Thu, 10 Jun 2021 19:09:35 +0300 Subject: [PATCH] Update nvim --- README.md | 6 +-- config/bspwm/bspwmrc | 2 +- config/nvim/README.md | 17 +++++- config/nvim/init.vim | 45 ++++++++-------- config/nvim/lua/n-colorizer.lua | 13 ----- config/nvim/lua/plug/colorizer.lua | 11 ++++ .../nvim/lua/{n-compe.lua => plug/compe.lua} | 4 -- .../lua/{n-gitsigns.lua => plug/gitsigns.lua} | 0 config/nvim/lua/plug/lspconfig.lua | 3 ++ .../lua/{n-lualine.lua => plug/lualine.lua} | 0 config/nvim/lua/plug/neogit.lua | 1 + .../lua/{n-nvimtree.lua => plug/nvimtree.lua} | 2 +- config/nvim/lua/plug/telescope.lua | 13 +++++ config/nvim/lua/plug/treesitter.lua | 5 ++ config/nvim/lua/plugins.lua | 9 ++++ config/nvim/vimscript/barbar.vim | 5 +- config/nvim/vimscript/config.vim | 2 +- config/nvim/vimscript/emmet.vim | 2 +- config/nvim/vimscript/filetypes.vim | 3 ++ config/nvim/vimscript/mappings.vim | 4 +- config/ranger/rc.conf | 1 - config/ranger/rifle.conf | 52 ------------------- vscode/settings.json | 17 +++--- zshrc | 4 -- 24 files changed, 102 insertions(+), 119 deletions(-) delete mode 100644 config/nvim/lua/n-colorizer.lua create mode 100644 config/nvim/lua/plug/colorizer.lua rename config/nvim/lua/{n-compe.lua => plug/compe.lua} (57%) rename config/nvim/lua/{n-gitsigns.lua => plug/gitsigns.lua} (100%) create mode 100644 config/nvim/lua/plug/lspconfig.lua rename config/nvim/lua/{n-lualine.lua => plug/lualine.lua} (100%) create mode 100644 config/nvim/lua/plug/neogit.lua rename config/nvim/lua/{n-nvimtree.lua => plug/nvimtree.lua} (65%) create mode 100644 config/nvim/lua/plug/telescope.lua create mode 100644 config/nvim/lua/plug/treesitter.lua create mode 100644 config/nvim/lua/plugins.lua create mode 100644 config/nvim/vimscript/filetypes.vim delete mode 100644 config/ranger/rifle.conf diff --git a/README.md b/README.md index 097cafe..0f7290d 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,18 @@

dotfiles

-#### System configuration +### System configuration - `OS` Arch - `WM` bspwm - `Terminal` kitty - `Shell` zsh - `Editor` nvim, vscode - `File manager` ranger -- `Browser` firefox, chrome +- `Browser` chrome - `Font` Jatbrains Mono - `Icon font` Font Awesome - `Launcher` rofi -#### Install config +### Install config Since i use **[rcm](https://github.com/thoughtbot/rcm)** set it: ```bash yay -S rcm diff --git a/config/bspwm/bspwmrc b/config/bspwm/bspwmrc index a8445dd..c58a7b2 100755 --- a/config/bspwm/bspwmrc +++ b/config/bspwm/bspwmrc @@ -50,4 +50,4 @@ R Nemo desktop='^5' focus=on follow=on R Zathura desktop='^5' focus=on follow=on state=tiled R discord desktop='^6' focus=on follow=off R TelegramDesktop desktop='^6' focus=off follow=on -R KeePassXC desktop='^7' focus=on follow=on +R KeePassXC desktop='^7' focus=on follow=on diff --git a/config/nvim/README.md b/config/nvim/README.md index fd24940..2787147 100644 --- a/config/nvim/README.md +++ b/config/nvim/README.md @@ -1,9 +1,24 @@ # NVIM -### Install LSP +## Install nvim +```bash +yay -S neovim-nightly-bin +``` + +## Install plugin manager(`vim-plug`) +```bash +sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ + https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' +``` + +## Install LSP servers ```bash # tsserver(JS/TS) npm i -g typescript typescript-language-server + # Go(gopls) go get golang.org/x/tools/gopls@latest + +# Python(pyls) +pip install python-language-server ``` diff --git a/config/nvim/init.vim b/config/nvim/init.vim index c6119f0..1eaa3d0 100644 --- a/config/nvim/init.vim +++ b/config/nvim/init.vim @@ -1,28 +1,33 @@ -call plug#begin('~/.vim/plugged') + call plug#begin('~/.vim/plugged') + Plug 'Smirnov-O/nten.vim' + Plug 'b3nj5m1n/kommentary' + " Plug 'mattn/emmet-vim', {'on': 'EmmetInstall'} + Plug 'nvim-lua/plenary.nvim' + Plug 'nvim-lua/popup.nvim' + " Plug 'editorconfig/editorconfig-vim' + Plug 'norcalli/nvim-colorizer.lua' + Plug 'kyazdani42/nvim-web-devicons' + " Status line && Tab line + Plug 'hoob3rt/lualine.nvim' + Plug 'romgrk/barbar.nvim' " LSP && Completion Plug 'neovim/nvim-lspconfig' Plug 'hrsh7th/nvim-compe' Plug 'jiangmiao/auto-pairs' - Plug 'mattn/emmet-vim', {'on': 'EmmetInstall'} - " File explorer - Plug 'junegunn/fzf.vim' - Plug 'kyazdani42/nvim-tree.lua' " Git + Plug 'TimUntersberger/neogit' Plug 'lewis6991/gitsigns.nvim' - " Theme - Plug 'Smirnov-O/nten.vim' - " Status line && Tab line - Plug 'hoob3rt/lualine.nvim' - Plug 'romgrk/barbar.nvim' + " File explorer + Plug 'kyazdani42/nvim-tree.lua' + Plug 'nvim-telescope/telescope.nvim' " Better syntax hl Plug 'sheerun/vim-polyglot' - Plug 'norcalli/nvim-colorizer.lua' - " Other - Plug 'nvim-lua/plenary.nvim' + Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'} call plug#end() colo codedark let mapleader=";" +set termguicolors "== Tab(or spaces) set ts=4 sw=4 sts=4 @@ -35,18 +40,10 @@ com! Notes :Files ~/notes com! GoFmt :sil !gofmt -w % "== Configs +luafile $HOME/.config/nvim/lua/plugins.lua source $HOME/.config/nvim/vimscript/config.vim source $HOME/.config/nvim/vimscript/barbar.vim source $HOME/.config/nvim/vimscript/emmet.vim -source /home/sasha/.config/nvim/vimscript/compe.vim +source $HOME/.config/nvim/vimscript/compe.vim +source $HOME/.config/nvim/vimscript/filetypes.vim source $HOME/.config/nvim/vimscript/mappings.vim -luafile $HOME/.config/nvim/lua/n-compe.lua -luafile $HOME/.config/nvim/lua/n-lualine.lua -luafile $HOME/.config/nvim/lua/n-nvimtree.lua -luafile $HOME/.config/nvim/lua/n-gitsigns.lua -luafile $HOME/.config/nvim/lua/n-colorizer.lua - -"== Custom setting for another files -au FileType python,elm setl sw=4 ts=4 sts=2 -au FileType javascript,html,vue,jst,pug,css,less,scss,json,yaml,lua setl sw=2 ts=2 sts=2 -au FileType go setl noet sw=4 ts=4 sts=2 diff --git a/config/nvim/lua/n-colorizer.lua b/config/nvim/lua/n-colorizer.lua deleted file mode 100644 index 214a937..0000000 --- a/config/nvim/lua/n-colorizer.lua +++ /dev/null @@ -1,13 +0,0 @@ -require'colorizer'.setup( - {'*';}, { - mode = 'background'; - RGB = true; -- #RGB hex codes - RRGGBB = true; -- #RRGGBB hex codes - RRGGBBAA = false; -- #RRGGBBAA hex codes - rgb_fn = true; -- CSS rgb() and rgba() functions - hsl_fn = false; -- CSS hsl() and hsla() functions - css = false; -- Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB - css_fn = true; -- Enable all CSS *functions*: rgb_fn, hsl_fn - names = false; -- "Name" codes like Blue - } -) diff --git a/config/nvim/lua/plug/colorizer.lua b/config/nvim/lua/plug/colorizer.lua new file mode 100644 index 0000000..fb5a83e --- /dev/null +++ b/config/nvim/lua/plug/colorizer.lua @@ -0,0 +1,11 @@ +require'colorizer'.setup({'*';}, { + mode = 'background'; + RGB = true; + RRGGBB = true; + RRGGBBAA = false; + rgb_fn = true; + hsl_fn = false; + css = false; + css_fn = true; + names = false; +}) diff --git a/config/nvim/lua/n-compe.lua b/config/nvim/lua/plug/compe.lua similarity index 57% rename from config/nvim/lua/n-compe.lua rename to config/nvim/lua/plug/compe.lua index 3dc2449..5a5228b 100644 --- a/config/nvim/lua/n-compe.lua +++ b/config/nvim/lua/plug/compe.lua @@ -1,7 +1,3 @@ -require'lspconfig'.tsserver.setup {} -require'lspconfig'.gopls.setup {} -require'lspconfig'.pyls.setup {} - require'compe'.setup { enabled = true, autocomplete = true, diff --git a/config/nvim/lua/n-gitsigns.lua b/config/nvim/lua/plug/gitsigns.lua similarity index 100% rename from config/nvim/lua/n-gitsigns.lua rename to config/nvim/lua/plug/gitsigns.lua diff --git a/config/nvim/lua/plug/lspconfig.lua b/config/nvim/lua/plug/lspconfig.lua new file mode 100644 index 0000000..b5c7838 --- /dev/null +++ b/config/nvim/lua/plug/lspconfig.lua @@ -0,0 +1,3 @@ +require'lspconfig'.tsserver.setup {} +require'lspconfig'.gopls.setup {} +require'lspconfig'.pyls.setup {} diff --git a/config/nvim/lua/n-lualine.lua b/config/nvim/lua/plug/lualine.lua similarity index 100% rename from config/nvim/lua/n-lualine.lua rename to config/nvim/lua/plug/lualine.lua diff --git a/config/nvim/lua/plug/neogit.lua b/config/nvim/lua/plug/neogit.lua new file mode 100644 index 0000000..f851d2d --- /dev/null +++ b/config/nvim/lua/plug/neogit.lua @@ -0,0 +1 @@ +require'neogit'.setup {} diff --git a/config/nvim/lua/n-nvimtree.lua b/config/nvim/lua/plug/nvimtree.lua similarity index 65% rename from config/nvim/lua/n-nvimtree.lua rename to config/nvim/lua/plug/nvimtree.lua index 47bd882..a5fac69 100644 --- a/config/nvim/lua/n-nvimtree.lua +++ b/config/nvim/lua/plug/nvimtree.lua @@ -2,7 +2,7 @@ local S = vim.g -- Settings S.nvim_tree_side = "left" -S.nvim_tree_ignore = {".git", ".cache", "node_modules", "venv"} +S.nvim_tree_ignore = {".git", ".cache", "node_modules", "venv", "env"} S.nvim_tree_auto_close = 0 S.nvim_tree_quit_on_open = 0 S.nvim_tree_width = 24 diff --git a/config/nvim/lua/plug/telescope.lua b/config/nvim/lua/plug/telescope.lua new file mode 100644 index 0000000..60c382b --- /dev/null +++ b/config/nvim/lua/plug/telescope.lua @@ -0,0 +1,13 @@ +local actions = require('telescope.actions') + +require('telescope').setup{ + defaults = { + prompt_prefix = "Search > ", + selection_caret = " ", + entry_prefix = " ", + file_ignore_patterns = {"node_modules", "env", ".cache"}, + mappings = { + i = {[""] = actions.close} + }; + }; +} diff --git a/config/nvim/lua/plug/treesitter.lua b/config/nvim/lua/plug/treesitter.lua new file mode 100644 index 0000000..b3ac070 --- /dev/null +++ b/config/nvim/lua/plug/treesitter.lua @@ -0,0 +1,5 @@ +require'nvim-treesitter.configs'.setup { + ensure_installed = {'javascript', 'typescript', 'python', 'go'}; + highlight = { enable = true }; + indent = { enable = true }; +} diff --git a/config/nvim/lua/plugins.lua b/config/nvim/lua/plugins.lua new file mode 100644 index 0000000..4461e4f --- /dev/null +++ b/config/nvim/lua/plugins.lua @@ -0,0 +1,9 @@ +require'plug.compe' +require'plug.lspconfig' +require'plug.nvimtree' +require'plug.lualine' +require'plug.gitsigns' +require'plug.neogit' +require'plug.treesitter' +require'plug.telescope' +require'plug.colorizer' diff --git a/config/nvim/vimscript/barbar.vim b/config/nvim/vimscript/barbar.vim index f723afc..46cb730 100644 --- a/config/nvim/vimscript/barbar.vim +++ b/config/nvim/vimscript/barbar.vim @@ -1,6 +1,5 @@ " Settings let bufferline = get(g:, 'bufferline', {}) -let bufferline.icons = v:false let bufferline.icon_close_tab = '🗴' " Mappings @@ -15,5 +14,5 @@ nno :BufferGoto 8 nno :BufferGoto 9 nno :BufferClose nno :BufferClose! -nno :BufferMoveNext -nno :BufferMovePrevious +nno :BufferMoveNext +nno :BufferMovePrevious diff --git a/config/nvim/vimscript/config.vim b/config/nvim/vimscript/config.vim index fb58d28..498c21d 100644 --- a/config/nvim/vimscript/config.vim +++ b/config/nvim/vimscript/config.vim @@ -1,6 +1,6 @@ "== Vim config set termguicolors " GUI colors -set nu rnu cul " Line numbers & cursor line highlight +set nu rnu nocul " Line numbers & cursor line highlight set nolbr nowrap " Line wrap set mouse=a mh " Mouse set history=500 " Set history size diff --git a/config/nvim/vimscript/emmet.vim b/config/nvim/vimscript/emmet.vim index e0e70f6..c0cd434 100644 --- a/config/nvim/vimscript/emmet.vim +++ b/config/nvim/vimscript/emmet.vim @@ -5,5 +5,5 @@ let g:user_emmet_leader = "," let g:user_emmet_settings = { \ 'javascript': {'extends': 'jsx'}} -"== Auto load +"== Load au FileType html,jst,pug,vue,css,less,scss :EmmetInstall diff --git a/config/nvim/vimscript/filetypes.vim b/config/nvim/vimscript/filetypes.vim new file mode 100644 index 0000000..84c0df0 --- /dev/null +++ b/config/nvim/vimscript/filetypes.vim @@ -0,0 +1,3 @@ +au FileType python,elm setl sw=4 ts=4 sts=2 +au FileType go setl noet sw=4 ts=4 sts=2 +au FileType javascript,html,jst,pug,css,less,scss,json,yaml,lua,vim setl sw=2 ts=2 sts=2 diff --git a/config/nvim/vimscript/mappings.vim b/config/nvim/vimscript/mappings.vim index 5cba94f..fa7815f 100644 --- a/config/nvim/vimscript/mappings.vim +++ b/config/nvim/vimscript/mappings.vim @@ -2,7 +2,9 @@ nno :w nno :noh nno t :Term nno e :NvimTreeToggle -nno ; :Files +nno ; :Telescope fd +nno : :Telescope git_files +nno g :Neogit " Buffer nno j :bn diff --git a/config/ranger/rc.conf b/config/ranger/rc.conf index c3d4116..b81ea2d 100644 --- a/config/ranger/rc.conf +++ b/config/ranger/rc.conf @@ -38,4 +38,3 @@ map sa shell zip -r archive.zip %s map ss shell tar -czvf archive.tar.gz %s map sd shell 7z a archive.7z %s map se shell extract %s - diff --git a/config/ranger/rifle.conf b/config/ranger/rifle.conf deleted file mode 100644 index 5f66c7a..0000000 --- a/config/ranger/rifle.conf +++ /dev/null @@ -1,52 +0,0 @@ -# vim:ft=cfg - -#== Web -ext x?html?, has google-chrome, X, flag f = google-chrome $@ -ext x?html?, has firefox, X, flag f = firefox -- "$@" - -#== Script -ext py = python -- "$1" -ext js = node -- "$1" -ext sh = bash -- "$1" - -#== Misc -#mime ^text, lable editor = $EDITOR -- "$@" -#mime ^text, label pager = $PAGER -- "$@" - - -!mime ^text, label editor, ext json|csv|tex|py|rb|js|sh = ${EDITOR} -- "$@" -!mime ^text, label pager, ext json|csv|tex|py|rb|js|sh = "$PAGER" -- "$@" -name ^[mM]akefile$ = make - - -#== Video/Audio -mime ^video, has mpv, X, flag f = mpv -- "$@" -mime ^video, has mpv, X, flag f = mpv --fs -- "$@" -mime ^video|audio, has vlc, X, flag f = vlc -- "$@" - -#== Documents -ext pptx?|od[dfgpst]|docx?|sxc|xlsx?|xlt|xlw|gnm|gnumeric, has libreoffice, X, flag f = libreoffice "$@" -ext pdf, has zathura, X, flag f = zathura -- "$@" -ext djvu, has zathura, X, flag f = zathura -- "$@" -ext epub, has zathura, X, flag f = zathura -- "$@" - -#== Images -mime ^image/svg, has inkscape, X, flag f = inkscape -- "$@" -mime ^image, has feh, X, flag f = feh -- "$@" -mime ^image, has ristretto, X, flag f = ristretto "$@" -mime ^image, has gimp, X, flag f = gimp -- "$@" -ext xcf, X, flag f = gimp -- "$@" - -#== Archives -ext 7z, has 7z = 7z -p l "$@" | "$PAGER" -ext ace|ar|arc|bz2?|cab|cpio|cpt|deb|dgc|dmg|gz, has atool = atool --list --each -- "$@" | "$PAGER" -ext iso|jar|msi|pkg|rar|shar|tar|tgz|xar|xpi|xz|zip, has atool = atool --list --each -- "$@" | "$PAGER" -ext 7z|ace|ar|arc|bz2?|cab|cpio|cpt|deb|dgc|dmg|gz, has atool = atool --extract --each -- "$@" -ext iso|jar|msi|pkg|rar|shar|tar|tgz|xar|xpi|xz|zip, has atool = atool --extract --each -- "$@" -ext tar|gz|bz2|xz, has tar = tar vvtf "$1" | "$PAGER" -ext tar|gz|bz2|xz, has tar = for file in "$@"; do tar vvxf "$file"; done -ext bz2, has bzip2 = for file in "$@"; do bzip2 -dk "$file"; done -ext zip, has unzip = unzip -l "$1" | less -ext zip, has unzip = for file in "$@"; do unzip -d "${file%.*}" "$file"; done -ext rar, has unrar = unrar l "$1" | less -ext rar, has unrar = for file in "$@"; do unrar x "$file"; done diff --git a/vscode/settings.json b/vscode/settings.json index 95a906c..58b1e0c 100644 --- a/vscode/settings.json +++ b/vscode/settings.json @@ -1,6 +1,7 @@ { "update.showReleaseNotes": false, "window.menuBarVisibility": "hidden", + "workbench.iconTheme": "vs-seti", "workbench.sideBar.location": "right", "workbench.editor.untitled.hint": "hidden", @@ -37,19 +38,17 @@ "extensions.ignoreRecommendations": true, "docker.showStartPage": false, "prettier.semi": false, + "javascript.suggestionActions.enabled": false, + "typescript.suggestionActions.enabled": false, - "emmet.includeLanguages": {"javascript": "javascriptreact"}, - "[javascript]": { - "editor.defaultFormatter": "esbenp.prettier-vscode", - "editor.tabSize": 2, - }, - "[javascriptreact]": { - "editor.defaultFormatter": "esbenp.prettier-vscode", - "editor.tabSize": 2, - }, "files.exclude": { "**/.cache": true, "**/node_modules": true }, + "emmet.includeLanguages": {"javascript": "javascriptreact"}, + "[javascript]": { + "editor.defaultFormatter": "esbenp.prettier-vscode", + "editor.tabSize": 2, + } } diff --git a/zshrc b/zshrc index 88e8139..ff05090 100644 --- a/zshrc +++ b/zshrc @@ -6,9 +6,6 @@ export GOPATH="$HOME/go" export PATH="$HOME/bin:$HOME/.local/bin:$HOME/.golang/bin:$GOPATH/bin:$PATH" export EDITOR="nvim" -## FZF -export FZF_DEFAULT_COMMAND="fd -t f -E node_modules" - ## Oh my zsh plugins=(dotenv) ZSH_THEME="simple" @@ -20,7 +17,6 @@ bindkey -s "^g" "lazygit\n" ## FNM eval $(fnm env) -eval $(fnm completions) ## Aliases alias cls="clear" cp="cp -r" mkdir="mkdir -p"