From 7ba87a776f60e516d6a9580cee534b3bf42c7a96 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Fri, 7 Dec 2018 12:15:50 +0100 Subject: [PATCH 01/16] set vim as default editor --- .zshrc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.zshrc b/.zshrc index 721f680..74e1cd1 100644 --- a/.zshrc +++ b/.zshrc @@ -85,6 +85,9 @@ source $ZSH/oh-my-zsh.sh # ssh # export SSH_KEY_PATH="~/.ssh/rsa_id" +# Set vim as default editor +export EDITOR='vim' + # Set personal aliases, overriding those provided by oh-my-zsh libs, # plugins, and themes. Aliases can be placed here, though oh-my-zsh # users are encouraged to define aliases within the ZSH_CUSTOM folder. @@ -99,6 +102,4 @@ alias la='ls -la' if [ -f ~/.dotfiles/.localcommands ] then source ~/.dotfiles/.localcommands -else - echo "\n\n" fi From d2a57cd443e749218f19e09bdc7d406256d31866 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Fri, 7 Dec 2018 12:22:29 +0100 Subject: [PATCH 02/16] add autoinstall of vundle plugins --- setup.sh | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/setup.sh b/setup.sh index ad2cadb..c6447a5 100644 --- a/setup.sh +++ b/setup.sh @@ -12,9 +12,19 @@ ln -s ~/.dotfiles/.zshrc ~/.zshrc ln -s ~/.dotfiles/.vim ~/.vim ln -s ~/.dotfiles/tmux.conf ~/.tmux.conf -# install vundle -git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim -# next steps: -# - chage oh-my-zsh home directory -# - install Vundle plugins from inside vim :PluginInstall +# install vundle +if ! [ -d ~/.vim/bundle/Vundle.vim ]; then + echo '[INFO] Installing Vundle...' + git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim +else + echo '[INFO] Vundle is already installed.' +fi + +# Install vundle Plugins +if commandExists vim; then + echo '[INFO] Installing vim plugins via Vundle...' + vim +PluginInstall +qall +else + echo '[INFO] Vim is not installed, could not install the plugins.' +fi From c4abd688a8a0a1eb48c04cc459e5b2abdecc78e3 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Fri, 7 Dec 2018 12:32:38 +0100 Subject: [PATCH 03/16] add tmuxinator --- .zshrc | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.zshrc b/.zshrc index 74e1cd1..507d1ae 100644 --- a/.zshrc +++ b/.zshrc @@ -103,3 +103,9 @@ if [ -f ~/.dotfiles/.localcommands ] then source ~/.dotfiles/.localcommands fi +# Tmuxinator autocomplete +if [ -f ~/.bin/tmuxinator.zsh ]; then + source ~/.bin/tmuxinator.zsh +fi + +export PATH="$PATH:$(ruby -e 'print Gem.user_dir')/bin" From 1a8b0c1ed7da128ff4b302e66deb51dbf7d1b8ce Mon Sep 17 00:00:00 2001 From: Jidbo Date: Sat, 22 Dec 2018 15:28:44 +0100 Subject: [PATCH 04/16] add tmux-vim-navigator plugin --- .vimrc | 9 +++------ tmux.conf | 10 ++++++++++ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/.vimrc b/.vimrc index fb29fdd..223ccf7 100644 --- a/.vimrc +++ b/.vimrc @@ -1,9 +1,3 @@ -" if empty(glob("~/.vim/bundle/Vundle.vim")) - " silent !git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim - " autocmd GUIEnter * PluginInstall - " \ source ~/.vimrc -" endif - set nocompatible " required filetype off " required @@ -17,6 +11,9 @@ Plugin 'gmarik/Vundle.vim' " add all your plugins here (note older versions of Vundle " used Bundle instead of Plugin) +" tmux navigator +Plugin 'christoomey/vim-tmux-navigator' + " Simply Fold Plugin 'tmhedberg/SimpylFold' diff --git a/tmux.conf b/tmux.conf index f14f680..ed37510 100644 --- a/tmux.conf +++ b/tmux.conf @@ -2,6 +2,16 @@ # set vi keys set-window-option -g mode-keys vi +is_vim="ps -o state= -o comm= -t '#{pane_tty}' \ + | grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'" +bind-key -n C-h if-shell "$is_vim" "send-keys C-h" "select-pane -L" +bind-key -n C-j if-shell "$is_vim" "send-keys C-j" "select-pane -D" +bind-key -n C-k if-shell "$is_vim" "send-keys C-k" "select-pane -U" +bind-key -n C-l if-shell "$is_vim" "send-keys C-l" "select-pane -R" +bind-key -T copy-mode-vi C-h select-pane -L +bind-key -T copy-mode-vi C-j select-pane -D +bind-key -T copy-mode-vi C-k select-pane -U +bind-key -T copy-mode-vi C-l select-pane -R # default statusbar colors set-option -g status-bg black #base02 From 37bf8b7167accf8b485804c309fa9de1fe4ec024 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Wed, 9 Jan 2019 23:41:35 +0100 Subject: [PATCH 05/16] remap nerdtreetoggle --- .vimrc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.vimrc b/.vimrc index 223ccf7..33fd5cf 100644 --- a/.vimrc +++ b/.vimrc @@ -97,6 +97,11 @@ set incsearch set hlsearch set smartcase +" Disable Backup and Swap files +set noswapfile +set nobackup +set nowritebackup + " setup split set splitbelow set splitright @@ -128,7 +133,7 @@ au BufNewFile,BufRead *.js, *.html, *.css " PLUGIN SETTINGS " nerd tree setup let NERDTreeIgnore=['\.pyc$', '\~$'] "ignore files in NERDTree -map n :NERDTreeToggle +map e :NERDTreeToggle " ctrl-p setup let g:ctrlp_working_path_mode = 'ra' From 951d40698f01d55e8b3f7567aebb9600a1fbcc20 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Fri, 18 Jan 2019 18:34:26 +0100 Subject: [PATCH 06/16] enable autoread --- .vimrc | 1 + 1 file changed, 1 insertion(+) diff --git a/.vimrc b/.vimrc index 33fd5cf..42cc6e4 100644 --- a/.vimrc +++ b/.vimrc @@ -81,6 +81,7 @@ set virtualedit=block set scrolloff=1 set wildmenu set term=screen-256color +set autoread " tabs and line wrap set tabstop=4 From 045fc56de0b1969ca29dfa65b02e3a60a58003f6 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Fri, 18 Jan 2019 18:44:55 +0100 Subject: [PATCH 07/16] remove unused plugins --- .vimrc | 32 -------------------------------- 1 file changed, 32 deletions(-) diff --git a/.vimrc b/.vimrc index 42cc6e4..798419e 100644 --- a/.vimrc +++ b/.vimrc @@ -14,42 +14,24 @@ Plugin 'gmarik/Vundle.vim' " tmux navigator Plugin 'christoomey/vim-tmux-navigator' -" Simply Fold -Plugin 'tmhedberg/SimpylFold' - -" autodindent python -Plugin 'vim-scripts/indentpython.vim' - " syntax highlighting Plugin 'vim-syntastic/syntastic' -" pep8 checking -Plugin 'nvie/vim-flake8' - " jedi-vim Plugin 'davidhalter/jedi-vim' " winresizer Plugin 'simeji/winresizer' -" search for files -Plugin 'ctrlpvim/ctrlp.vim' - " color schemes Plugin 'flazz/vim-colorschemes' " nert-tree Plugin 'scrooloose/nerdtree' -" nerd-commenter -Plugin 'scrooloose/nerdcommenter' - " git Plugin 'tpope/vim-fugitive' -" surround blocks -Plugin 'tpope/vim-surround' - " latex Plugin 'lervag/vimtex' @@ -136,20 +118,6 @@ au BufNewFile,BufRead *.js, *.html, *.css let NERDTreeIgnore=['\.pyc$', '\~$'] "ignore files in NERDTree map e :NERDTreeToggle -" ctrl-p setup -let g:ctrlp_working_path_mode = 'ra' -let g:ctrlp_custom_ignore = { - \ 'dir': '\v[\/](\.(git|hg|svn))?(venv)?$', - \ 'file': '\v\.(exe|so|dll)$', - \ 'link': 'some_bad_symbolic_links', - \ } - -" see docstrings for folded code -let g:SimpylFold_docstring_preview=1 - " airline tabs let g:airline#extensions#tabline#enabled = 1 let g:airline#extensions#tabline#formatter = 'unique_tail_improved' - -" nerd-commenter setup -let g:NERDSpaceDelims = 1 From f19add3be9aa5dc5a1fcbe6b840f841ee9a9fc28 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Fri, 18 Jan 2019 18:49:35 +0100 Subject: [PATCH 08/16] change keys for switching between tabs --- .vimrc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.vimrc b/.vimrc index 798419e..0e86ddf 100644 --- a/.vimrc +++ b/.vimrc @@ -97,8 +97,8 @@ nnoremap h " tabs nnoremap t :tabnew -nnoremap u gT -nnoremap i gt +nnoremap gT +nnoremap gt " Enable folding set foldmethod=indent From 365d23825ecfb76eaf2977d1c7c7658a7f7562d3 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Fri, 18 Jan 2019 19:07:40 +0100 Subject: [PATCH 09/16] add vim-gitgutter plugin --- .vimrc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/.vimrc b/.vimrc index 0e86ddf..6a797da 100644 --- a/.vimrc +++ b/.vimrc @@ -14,6 +14,9 @@ Plugin 'gmarik/Vundle.vim' " tmux navigator Plugin 'christoomey/vim-tmux-navigator' +" vim gitgutter +Plugin 'airblade/vim-gitgutter' + " syntax highlighting Plugin 'vim-syntastic/syntastic' @@ -121,3 +124,15 @@ map e :NERDTreeToggle " airline tabs let g:airline#extensions#tabline#enabled = 1 let g:airline#extensions#tabline#formatter = 'unique_tail_improved' + +" gitgutter setup +let g:gitgutter_sign_added = '∙' +let g:gitgutter_sign_modified = '∙' +let g:gitgutter_sign_removed = '∙' +let g:gitgutter_sign_modified_removed = '∙' +nmap ]g :GitGutterNextHunk +nmap [g :GitGutterPrevHunk +augroup VimDiff + autocmd! + autocmd VimEnter,FilterWritePre * if &diff | GitGutterDisable | endif +augroup END From d11f617c07a1c06dc132078fc3b9653a70a448c4 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Fri, 18 Jan 2019 22:29:22 +0100 Subject: [PATCH 10/16] add fzf plugin for zsh and vim --- .vimrc | 24 +++++++++++++++++------- .zshrc | 1 + 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/.vimrc b/.vimrc index 6a797da..d904541 100644 --- a/.vimrc +++ b/.vimrc @@ -14,9 +14,6 @@ Plugin 'gmarik/Vundle.vim' " tmux navigator Plugin 'christoomey/vim-tmux-navigator' -" vim gitgutter -Plugin 'airblade/vim-gitgutter' - " syntax highlighting Plugin 'vim-syntastic/syntastic' @@ -26,18 +23,24 @@ Plugin 'davidhalter/jedi-vim' " winresizer Plugin 'simeji/winresizer' -" color schemes -Plugin 'flazz/vim-colorschemes' - " nert-tree Plugin 'scrooloose/nerdtree' +" fzf plugin +Plugin 'junegunn/fzf.vim' + " git Plugin 'tpope/vim-fugitive' +" vim gitgutter +Plugin 'airblade/vim-gitgutter' + " latex Plugin 'lervag/vimtex' +" color schemes +Plugin 'flazz/vim-colorschemes' + " powerline Plugin 'vim-airline/vim-airline' Plugin 'vim-airline/vim-airline-themes' @@ -108,7 +111,7 @@ set foldmethod=indent set foldlevel=99 " remap code folding -nnoremap f za +nnoremap g za " html css js indents au BufNewFile,BufRead *.js, *.html, *.css @@ -136,3 +139,10 @@ augroup VimDiff autocmd! autocmd VimEnter,FilterWritePre * if &diff | GitGutterDisable | endif augroup END + +" fzf setup +nmap :Buffers +nmap f :Files +nmap r :Tags +let g:fzf_buffers_jump = 1 + diff --git a/.zshrc b/.zshrc index 507d1ae..8a51cf7 100644 --- a/.zshrc +++ b/.zshrc @@ -61,6 +61,7 @@ plugins=( git pip screen + fzf ) source $ZSH/oh-my-zsh.sh From f7855ac589c22c66bf31671d13158a49880bedbb Mon Sep 17 00:00:00 2001 From: Jidbo Date: Sat, 19 Jan 2019 00:03:00 +0100 Subject: [PATCH 11/16] use vim-ale to communicate with language servers --- .vimrc | 35 ++++++++++++++++++++++++----------- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/.vimrc b/.vimrc index d904541..5dae6e2 100644 --- a/.vimrc +++ b/.vimrc @@ -11,33 +11,28 @@ Plugin 'gmarik/Vundle.vim' " add all your plugins here (note older versions of Vundle " used Bundle instead of Plugin) +" WINDOW MANAGEMENT " tmux navigator Plugin 'christoomey/vim-tmux-navigator' -" syntax highlighting -Plugin 'vim-syntastic/syntastic' - -" jedi-vim -Plugin 'davidhalter/jedi-vim' - " winresizer Plugin 'simeji/winresizer' +" FILE MANAGEMENT " nert-tree Plugin 'scrooloose/nerdtree' " fzf plugin Plugin 'junegunn/fzf.vim' +" GIT STUFF " git Plugin 'tpope/vim-fugitive' " vim gitgutter Plugin 'airblade/vim-gitgutter' -" latex -Plugin 'lervag/vimtex' - +" COLORS " color schemes Plugin 'flazz/vim-colorschemes' @@ -45,6 +40,13 @@ Plugin 'flazz/vim-colorschemes' Plugin 'vim-airline/vim-airline' Plugin 'vim-airline/vim-airline-themes' +" LANGUAGE SUPPORT +" vim ale for interaction with language servers +Plugin 'w0rp/ale' + +" latex +Plugin 'lervag/vimtex' + " promela syntax highlighting Plugin 'vim-scripts/promela.vim' @@ -102,7 +104,7 @@ nnoremap l nnoremap h " tabs -nnoremap t :tabnew +nnoremap t :tabnew nnoremap gT nnoremap gt @@ -143,6 +145,17 @@ augroup END " fzf setup nmap :Buffers nmap f :Files -nmap r :Tags let g:fzf_buffers_jump = 1 +" git ale setup +let g:ale_completion_enabled = 1 +let g:ale_lint_on_text_changed = 'never' +let g:ale_fixers = { +\ '*': ['trim_whitespace'], +\ 'python': ['autopep8'] +\ } +nmap d :ALEGoToDefinition +nmap r :ALEFindReferences +nmap b :ALEFix +nnoremap l :lnext +nnoremap p :lprevious From 3ec0d0c922f50d400ad5776da51828c6fae51d24 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Sat, 19 Jan 2019 00:05:19 +0100 Subject: [PATCH 12/16] add polyglot for multi language syntax --- .vimrc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.vimrc b/.vimrc index 5dae6e2..1ed6be2 100644 --- a/.vimrc +++ b/.vimrc @@ -44,6 +44,9 @@ Plugin 'vim-airline/vim-airline-themes' " vim ale for interaction with language servers Plugin 'w0rp/ale' +" language packs +Plugin 'sheerun/vim-polyglot' + " latex Plugin 'lervag/vimtex' From e715064399efc6910880e093f79f8f4865e6b2ac Mon Sep 17 00:00:00 2001 From: Jidbo Date: Sat, 19 Jan 2019 00:15:06 +0100 Subject: [PATCH 13/16] add vim-commentary plugin --- .vimrc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.vimrc b/.vimrc index 1ed6be2..c08e70a 100644 --- a/.vimrc +++ b/.vimrc @@ -11,6 +11,10 @@ Plugin 'gmarik/Vundle.vim' " add all your plugins here (note older versions of Vundle " used Bundle instead of Plugin) +" USEFUL +" comment plugin +Plugin 'tpope/vim-commentary' + " WINDOW MANAGEMENT " tmux navigator Plugin 'christoomey/vim-tmux-navigator' From cc7418ede8d8e2b136882321ff5fba2712025d16 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Sat, 19 Jan 2019 12:03:22 +0100 Subject: [PATCH 14/16] switch airline theme --- .vimrc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.vimrc b/.vimrc index c08e70a..61a3cec 100644 --- a/.vimrc +++ b/.vimrc @@ -64,8 +64,6 @@ filetype plugin indent on " required " syntax syntax on colorscheme Benokai -let g:airline_theme='luna' -let python_highlight_all=1 let mapleader=" " " random settings @@ -133,9 +131,12 @@ au BufNewFile,BufRead *.js, *.html, *.css let NERDTreeIgnore=['\.pyc$', '\~$'] "ignore files in NERDTree map e :NERDTreeToggle -" airline tabs +" airline setup let g:airline#extensions#tabline#enabled = 1 let g:airline#extensions#tabline#formatter = 'unique_tail_improved' +let g:airline_theme='solarized' +let g:airline_solarized_bg='dark' +let g:airline_powerline_fonts = 1 " gitgutter setup let g:gitgutter_sign_added = '∙' @@ -154,7 +155,7 @@ nmap :Buffers nmap f :Files let g:fzf_buffers_jump = 1 -" git ale setup +" vim-ale setup let g:ale_completion_enabled = 1 let g:ale_lint_on_text_changed = 'never' let g:ale_fixers = { From 6b21dddfca8111a9b9fe326539d41361111a5ace Mon Sep 17 00:00:00 2001 From: Jidbo Date: Sat, 19 Jan 2019 12:03:45 +0100 Subject: [PATCH 15/16] switch oh-my-zsh theme --- .zshrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.zshrc b/.zshrc index 8a51cf7..912cdb9 100644 --- a/.zshrc +++ b/.zshrc @@ -6,7 +6,7 @@ export ZSH="$HOME/.oh-my-zsh" # Set name of the theme to load. Optionally, if you set this to "random" # it'll load a random theme each time that oh-my-zsh is loaded. # See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes -ZSH_THEME="agnoster" +ZSH_THEME="robbyrussell" # Set list of themes to load # Setting this variable when ZSH_THEME=random From 8e66dbd90411412ef6e2ac8bb53f436b6dc7cea4 Mon Sep 17 00:00:00 2001 From: Jidbo Date: Sat, 19 Jan 2019 12:09:35 +0100 Subject: [PATCH 16/16] add closetag plugin --- .vimrc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.vimrc b/.vimrc index 61a3cec..1137de6 100644 --- a/.vimrc +++ b/.vimrc @@ -15,6 +15,9 @@ Plugin 'gmarik/Vundle.vim' " comment plugin Plugin 'tpope/vim-commentary' +" close xml/html tags +Plugin 'docunext/closetag.vim' + " WINDOW MANAGEMENT " tmux navigator Plugin 'christoomey/vim-tmux-navigator'