summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ftplugin/python.vim6
-rw-r--r--init.vim10
-rw-r--r--modules/ale.vim2
-rw-r--r--modules/colorizer.vim4
-rw-r--r--modules/emmet.vim1
-rw-r--r--modules/general.vim8
-rw-r--r--modules/language_server.vim6
-rw-r--r--modules/neosnippets.vim22
-rw-r--r--modules/plugins.vim12
-rw-r--r--modules/pydocstring.vim2
-rw-r--r--modules/rainbow.vim23
-rw-r--r--utils/commands/leadercommands.txt (renamed from commands/leadercommands.txt)0
12 files changed, 88 insertions, 8 deletions
diff --git a/ftplugin/python.vim b/ftplugin/python.vim
new file mode 100644
index 00000000..713a50c1
--- /dev/null
+++ b/ftplugin/python.vim
@@ -0,0 +1,6 @@
+" Python specific settings.
+setlocal tabstop=4
+setlocal shiftwidth=4
+setlocal expandtab
+setlocal autoindent
+setlocal smarttab
diff --git a/init.vim b/init.vim
index 8e667b4d..9ab83d4c 100644
--- a/init.vim
+++ b/init.vim
@@ -13,10 +13,18 @@ source $HOME/.config/nvim/modules/language_server.vim
source $HOME/.config/nvim/modules/ale.vim
source $HOME/.config/nvim/modules/goyo-limelight.vim
source $HOME/.config/nvim/modules/relativenums.vim
+source $HOME/.config/nvim/modules/pydocstring.vim
+source $HOME/.config/nvim/modules/neosnippets.vim
+source $HOME/.config/nvim/modules/emmet.vim
+source $HOME/.config/nvim/modules/colorizer.vim
+source $HOME/.config/nvim/modules/rainbow.vim
+" Special test file "
source $HOME/.config/nvim/modules/test.vim
-
+"TODO"
+"change install script to install pyls in base and clone base instead"
"npm i -g bash-language-server
+"npm install -g javascript-typescript-langserver
"install ripgrep" for gutentags to ignore .gitignore
"install universal ctags"
" TODO add this to script npm i -g bash-language-server
diff --git a/modules/ale.vim b/modules/ale.vim
index d2834cbd..4b67ff97 100644
--- a/modules/ale.vim
+++ b/modules/ale.vim
@@ -4,7 +4,7 @@ let g:ale_linters = {
\ 'c' : ['gcc'],
\ 'vim' : ['vint'],
\ 'python': ['pydocstyle', 'pycodestyle', 'vulture'],
- \ 'javascript': ['eslint']
+ \ 'javascript': []
\}
let g:ale_fixers = {
diff --git a/modules/colorizer.vim b/modules/colorizer.vim
new file mode 100644
index 00000000..9348451c
--- /dev/null
+++ b/modules/colorizer.vim
@@ -0,0 +1,4 @@
+let g:colorizer_syntax = 1
+let g:colorizer_auto_filetype='js,css,html,jsx,ts,tsx'
+au BufNewFile,BufRead *.css,*.html,*.htm,*.js,*.jsx,*.ts,*.tsx :ColorHighlight!
+
diff --git a/modules/emmet.vim b/modules/emmet.vim
new file mode 100644
index 00000000..5c55ee59
--- /dev/null
+++ b/modules/emmet.vim
@@ -0,0 +1 @@
+let g:user_emmet_leader_key=','
diff --git a/modules/general.vim b/modules/general.vim
index 5b187c79..b12f355c 100644
--- a/modules/general.vim
+++ b/modules/general.vim
@@ -14,15 +14,15 @@ set hidden " Required for specific actions that req
set nowrap " display long lines as just one line
set encoding=utf-8 " The encoding displayed
set fileencoding=utf-8 " The encoding written to file
-set ruler " show the cursor position all the time
+set ruler " show the cursor position all the time
set iskeyword+=- " treat dash separated words as a word text object"
set mouse=a " Enable your mouse
set splitbelow " Horizontal splits will automatically be below
set splitright " Vertical splits will automatically be to the right
set t_Co=256 " Support 256 colors
set autochdir " Your working directory will always be the same as your working directory
-set tabstop=4 " Insert 4 spaces for a tab
-set shiftwidth=4 " Change the number of space characters inserted for indentation
+set tabstop=2 " Insert 2 spaces for a tab
+set shiftwidth=2 " Change the number of space characters inserted for indentation
set smarttab " Makes tabbing smarter will realize you have 2 vs 4
set expandtab " Converts tabs to spaces
set smartindent " Makes indenting smart
@@ -92,6 +92,7 @@ nnoremap <silent> <leader>s :Startify<return>
nnoremap <silent> <leader>w :w<return>
nnoremap <silent> <leader>p :pclose<return>
nnoremap <silent> <leader>b :BuffergatorToggle<return>
+nnoremap <silent> <leader>ch :ColorToggle<return>
nnoremap <silent> <leader>gy :Goyo<return>
nnoremap <silent> <leader>hi :nohlsearch<return>
nnoremap <silent> <leader>hs :split<return>
@@ -112,6 +113,7 @@ nnoremap <silent> <leader>fr :call LanguageClient_textDocument_references()<CR>
endfun
nnoremap <silent> <leader>in :call OpenConfigFile('~/.config/nvim/init.vim')<cr>
nnoremap <silent> <leader>bashrc :call OpenConfigFile('~/.bashrc')<cr>
+nnoremap <silent> <leader>code :call OpenConfigFile('~/Library/Application Support/Code/User/settings.json')<cr>
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
diff --git a/modules/language_server.vim b/modules/language_server.vim
index e96c45a7..5f54e1d0 100644
--- a/modules/language_server.vim
+++ b/modules/language_server.vim
@@ -5,8 +5,8 @@ let g:LanguageClient_autoStart = 1
let g:LanguageClient_serverCommands = {
\ 'rust': ['~/.cargo/bin/rustup', 'run', 'stable', 'rls'],
- \ 'javascript': ['/usr/local/bin/javascript-typescript-stdio'],
- \ 'javascript.jsx': ['tcp://127.0.0.1:2089'],
+ \ 'javascript': ['javascript-typescript-stdio'],
+ \ 'javascript.jsx': ['javascript-typescript-stdio'],
\ 'python': ['pyls'],
\ 'sh': ['bash-language-server', 'start'],
\ 'c' : ['cquery'],
@@ -18,4 +18,4 @@ nnoremap <silent> <leader>gd :call LanguageClient_textDocument_definition()<CR>
nnoremap <silent> <leader>gr :call LanguageClient_textDocument_rename()<CR>
nnoremap <silent> <leader>gc :call LanguageClient_contextMenu()<CR>
nnoremap <silent> <leader>fr :call LanguageClient_textDocument_references()<CR>
-
+nnoremap <silent> <leader>fix :call LanguageClient#textDocument_formatting()<CR>
diff --git a/modules/neosnippets.vim b/modules/neosnippets.vim
new file mode 100644
index 00000000..8f626ab6
--- /dev/null
+++ b/modules/neosnippets.vim
@@ -0,0 +1,22 @@
+" Plugin key-mappings.
+" Note: It must be "imap" and "smap". It uses <Plug> mappings.
+imap <C-l> <Plug>(neosnippet_expand_or_jump)
+smap <C-l> <Plug>(neosnippet_expand_or_jump)
+xmap <C-l> <Plug>(neosnippet_expand_target)
+
+imap <F4> <Plug>(neosnippet_expand_or_jump)
+smap <F4> <Plug>(neosnippet_expand_or_jump)
+xmap <F4> <Plug>(neosnippet_expand_target)
+" SuperTab like snippets behavior.
+" Note: It must be "imap" and "smap". It uses <Plug> mappings.
+"imap <expr><TAB>
+" \ pumvisible() ? "\<C-n>" :
+" \ neosnippet#expandable_or_jumpable() ?
+" \ "\<Plug>(neosnippet_expand_or_jump)" : "\<TAB>"
+smap <expr><TAB> neosnippet#expandable_or_jumpable() ?
+\ "\<Plug>(neosnippet_expand_or_jump)" : "\<TAB>"
+
+" For conceal markers.
+if has('conceal')
+ set conceallevel=2 concealcursor=niv
+endif
diff --git a/modules/plugins.vim b/modules/plugins.vim
index 4fe4d5ce..debf33d1 100644
--- a/modules/plugins.vim
+++ b/modules/plugins.vim
@@ -15,6 +15,7 @@ if dein#load_state('~/.config/nvim/dein')
" call dein#add('joshdick/onedark.vim')
" call dein#add('morhetz/gruvbox')
call dein#add('jacoborus/tender.vim')
+ call dein#add('luochen1990/rainbow')
"Interface"
call dein#add('Shougo/denite.nvim')
" Neoterm
@@ -28,6 +29,8 @@ if dein#load_state('~/.config/nvim/dein')
call dein#add('vim-airline/vim-airline-themes')
" File manager
call dein#add('scrooloose/NERDTree')
+ " Comments "
+ call dein#add('scrooloose/nerdcommenter')
" Icons
call dein#add('ryanoasis/vim-devicons')
call dein#add('tiagofumo/vim-nerdtree-syntax-highlight')
@@ -70,6 +73,15 @@ if dein#load_state('~/.config/nvim/dein')
call dein#add('~/.config/nvim/dein/repos/github.com/Shougo/dein.vim')
call dein#add('Shougo/deoplete.nvim', {'do': 'UpdateRemotePlugins'})
call dein#add('Shougo/neoinclude.vim')
+ " Snippets "
+ call dein#add('Shougo/neosnippet.vim')
+ call dein#add('Shougo/neosnippet-snippets')
+ call dein#add('mattn/emmet-vim')
+ " Colorizer "
+ call dein#add('chrisbra/Colorizer')
+ " Python docstring "
+ call dein#add('heavenshell/vim-pydocstring')
+
if !has('nvim')
call dein#add('roxma/nvim-yarp')
call dein#add('roxma/vim-hug-neovim-rpc')
diff --git a/modules/pydocstring.vim b/modules/pydocstring.vim
new file mode 100644
index 00000000..34ce0e64
--- /dev/null
+++ b/modules/pydocstring.vim
@@ -0,0 +1,2 @@
+nmap <silent> <leader>doc <Plug>(pydocstring)
+
diff --git a/modules/rainbow.vim b/modules/rainbow.vim
new file mode 100644
index 00000000..3403f902
--- /dev/null
+++ b/modules/rainbow.vim
@@ -0,0 +1,23 @@
+let g:rainbow_active = 1 "0 if you want to enable it later via :RainbowToggle
+let g:rainbow_conf = {
+ \ 'guifgs': ['royalblue3', 'darkorange3', 'seagreen3', 'firebrick'],
+ \ 'ctermfgs': ['lightblue', 'lightyellow', 'lightcyan', 'lightmagenta'],
+ \ 'operators': '_,_',
+ \ 'parentheses': ['start=/(/ end=/)/ fold', 'start=/\[/ end=/\]/ fold', 'start=/{/ end=/}/ fold'],
+ \ 'separately': {
+ \ '*': {},
+ \ 'tex': {
+ \ 'parentheses': ['start=/(/ end=/)/', 'start=/\[/ end=/\]/'],
+ \ },
+ \ 'lisp': {
+ \ 'guifgs': ['royalblue3', 'darkorange3', 'seagreen3', 'firebrick', 'darkorchid3'],
+ \ },
+ \ 'vim': {
+ \ 'parentheses': ['start=/(/ end=/)/', 'start=/\[/ end=/\]/', 'start=/{/ end=/}/ fold', 'start=/(/ end=/)/ containedin=vimFuncBody', 'start=/\[/ end=/\]/ containedin=vimFuncBody', 'start=/{/ end=/}/ fold containedin=vimFuncBody'],
+ \ },
+ \ 'html': {
+ \ 'parentheses': ['start=/\v\<((area|base|br|col|embed|hr|img|input|keygen|link|menuitem|meta|param|source|track|wbr)[ >])@!\z([-_:a-zA-Z0-9]+)(\s+[-_:a-zA-Z0-9]+(\=("[^"]*"|'."'".'[^'."'".']*'."'".'|[^ '."'".'"><=`]*))?)*\>/ end=#</\z1># fold'],
+ \ },
+ \ 'css': 0,
+ \ }
+ \}
diff --git a/commands/leadercommands.txt b/utils/commands/leadercommands.txt
index c2d2479c..c2d2479c 100644
--- a/commands/leadercommands.txt
+++ b/utils/commands/leadercommands.txt