Skip to content

Commit 188465b

Browse files
committed
big nvim config refactor
1 parent d7ef43e commit 188465b

12 files changed

+80
-41
lines changed

ctags

+11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,17 @@
11
--exclude=.git
22
--exclude=.gem
3+
--exclude=log
4+
--exclude=tmp
35
--exclude=node_modules
6+
--exclude=package-lock.json
7+
--exclude=yarn.lock
8+
--exclude=_build
9+
--exclude=deps
10+
--exclude=.elixir_ls
11+
--exclude=tests
12+
--exclude=test
13+
--exclude=coveralls.json
14+
--exclude=target
415

516
# SCSS Config
617
--langdef=scss

.default-gems default-gems

File renamed without changes.

.gemrc gemrc

File renamed without changes.

gitignore_global

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
*~
2+
.DS_Store
3+
.vim-test
4+
tags
5+
.elixir_ls

nvim/editorconfig

+5-7
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,14 @@ insert_final_newline = true
2020
eex,
2121
css,
2222
scss,
23-
styl
23+
styl,
24+
js,
25+
vue,
26+
jsx
2427
}]
2528
indent_size = 2
2629

2730
[*.{
28-
js,
29-
es6,
30-
json,
31-
jsx,
32-
go,
33-
vue
31+
go
3432
}]
3533
indent_size = 4

nvim/init.vim

+8-7
Original file line numberDiff line numberDiff line change
@@ -189,15 +189,16 @@ let g:rooter_change_directory_for_non_project_files = ''
189189

190190
" autozimu/LanguageClient-neovim
191191
" ==================================
192-
let g:LanguageClient_serverCommands = {
193-
\ 'elixir': ['~/.lsp/elixir/rel/language_server.sh'],
194-
\ 'javascript': ['javascript-typescript-stdio'],
195-
\ 'jsx': ['javascript-typescript-stdio'],
196-
\ 'ruby': ['~/.asdf/shims/solargraph', 'stdio'],
197-
\ 'rust': ['~/.cargo/bin/rustup', 'run', 'stable', 'rls'],
198-
\ }
192+
let g:LanguageClient_serverCommands = {}
193+
let g:LanguageClient_serverCommands.elixir = ['~/.lsp/elixir/rel/language_server.sh']
194+
let g:LanguageClient_serverCommands.javascript = ['javascript-typescript-stdio']
195+
let g:LanguageClient_serverCommands.jsx = ['javascript-typescript-stdio']
196+
let g:LanguageClient_serverCommands.ruby = ['~/.asdf/shims/solargraph', 'stdio']
197+
let g:LanguageClient_serverCommands.rust = ['~/.cargo/bin/rustup', 'run', 'stable', 'rls']
199198

200199
nnoremap <F5> :call LanguageClient_contextMenu()<CR>
200+
nnoremap <silent> gd :call LanguageClient#textDocument_definition()<CR>
201+
nnoremap <silent> <F2> :call LanguageClient#textDocument_rename()<CR>
201202
202203
" carlitux/deoplete-ternjs
203204
" ==================================

nvim/keybindings.vim

+2-3
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ nnoremap <leader>z <C-]>
1818
" Buffer Navigation
1919
nnoremap <leader>. :bn!<cr>
2020
nnoremap <leader>, :bp!<cr>
21-
nnoremap <leader>d :bd<cr>
21+
nnoremap <leader>q :bd<cr>
2222
nnoremap <leader>- :enew<cr>
2323
2424
" upper/lower word
@@ -31,7 +31,6 @@ nnoremap <leader>L mQgewvu`Q
3131
3232
" Easy save & quit
3333
nnoremap <leader>w :w<cr>
34-
nnoremap <leader>q :q<cr>
3534
nnoremap <leader>x :wq<cr>
3635
3736
" Make :Q and :W work like :q and :w
@@ -130,7 +129,7 @@ tnoremap <leader>. <c-\><c-n>:bn<cr>
130129
tnoremap <leader>, <c-\><c-n>:bp<cr>
131130
132131
" Easy exit terminal buffer
133-
tmap <leader>d <c-\><c-n>:bd!<cr>
132+
tmap <leader>q <c-\><c-n>:bd!<cr>
134133
135134
" Cope, super helpful, do ':help cope' if unsure
136135
nnoremap <localleader>cc :botright cope<cr>

nvim/plugin/ale.vim

+21-13
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
" w0rp/ale
22
" ==================================
33
let g:ale_enabled = 1
4-
let g:ale_completion_enabled = 1
4+
let g:ale_completion_enabled = 0
55
let g:ale_linters_explicit = 1
66
let g:ale_lint_on_text_changed = 0
77
let g:ale_lint_on_save = 1
@@ -22,19 +22,22 @@ augroup ale_lint
2222
autocmd ColorScheme * hi ALEWarningSign guifg=#fac863
2323
augroup END
2424

25-
let g:ale_linters = {
26-
\ 'javascript': ['standard', 'eslint'],
27-
\ 'elixir': ['elixir-ls', 'credo', 'dialyxir'],
28-
\ 'ruby': ['rubocop'],
29-
\ 'rust': ['rls', 'cargo'],
30-
\ 'go': ['gofmt']
31-
\}
25+
" Linters
26+
let g:ale_linters = {}
27+
let g:ale_linters.javascript = ['standard', 'eslint']
28+
let g:ale_linters.elixir = ['elixir-ls', 'credo', 'dialyxir']
29+
let g:ale_linters.ruby = ['rubocop']
30+
let g:ale_linters.rust = ['rls', 'cargo']
31+
let g:ale_linters.go = ['gofmt']
3232

33-
let g:ale_fixers = {
34-
\ '*': ['remove_trailing_lines', 'trim_whitespace'],
35-
\ 'javascript': ['standard'],
36-
\ 'css': ['prettier']
37-
\}
33+
" Fixers
34+
let g:ale_fixers = {'*': ['remove_trailing_lines', 'trim_whitespace']}
35+
let g:ale_fixers.javascript = ['standard']
36+
let g:ale_fixers.css = ['prettier']
37+
38+
nnoremap ]e :ALENextWrap<CR>
39+
nnoremap [e :ALEPreviousWrap<CR>
40+
nnoremap <leader>d :ALEGoToDefinition<cr>
3841
3942
" ---------------
4043
" ===> Javascript
@@ -53,6 +56,11 @@ endif
5356
let g:ale_elixir_elixir_ls_release = '~/.lsp/elixir/rel'
5457
let g:ale_elixir_credo_use_global = 0
5558

59+
" ---------
60+
" ===> Ruby
61+
" ---------
62+
" let g:ale_ruby_rubocop_executable = 'bundle'
63+
5664
" ---------
5765
" ===> Rust
5866
" ---------

nvim/plugin/deoplete.vim

+22-7
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,22 @@ let g:deoplete#omni#functions.html = 'htmlcomplete#CompleteTags'
2626
let g:deoplete#omni#functions.javascript = [ 'tern#Complete', 'jspc#omni', 'javascriptcomplete#CompleteJS' ]
2727
let g:deoplete#omni#functions.ruby = 'rubycomplete#Complete'
2828

29+
" Custom sources
30+
call deoplete#custom#option('sources', {
31+
\ '_': ['ale', 'omni', 'neosnippet', 'member', 'include', 'file/include', 'file', 'tag', 'around', 'buffer', 'dictionary', 'tmuxcomplete', 'syntax'],
32+
\ 'elixir': ['LanguageClient', 'alchemist'],
33+
\ 'javascript': ['LanguageClient', 'ternjs'],
34+
\ 'rust': ['LanguageClient', 'racer'],
35+
\ 'go': ['LanguageClient', 'go'],
36+
\ 'ruby': ['LanguageClient', 'ruby'],
37+
\ 'vim': ['vim'],
38+
\ 'fish': ['fish'],
39+
\})
40+
41+
2942
" Default rank is 100, higher is better
3043
call deoplete#custom#source('LanguageClient', 'rank', 610)
44+
call deoplete#custom#source('ale', 'rank', 610)
3145
" Elixir
3246
call deoplete#custom#source('alchemist', 'rank', 600)
3347
call deoplete#custom#source('alchemist', 'filetypes', ['elixir', 'eelixir'])
@@ -65,6 +79,7 @@ call deoplete#custom#source('syntax', 'rank', 200)
6579

6680
" Custom Marks
6781
call deoplete#custom#source('LanguageClient', 'mark', '*')
82+
call deoplete#custom#source('ale', 'mark', 'A')
6883
call deoplete#custom#source('alchemist', 'mark', '')
6984
call deoplete#custom#source('ternjs', 'mark', '')
7085
call deoplete#custom#source('racer', 'mark', '')
@@ -85,10 +100,10 @@ call deoplete#custom#source('tmuxcomplete', 'mark', '⊶')
85100
call deoplete#custom#source('syntax', 'mark', '')
86101

87102
" Custom sorters, working well with neosnippet
88-
call deoplete#custom#source('_', 'converters', [
89-
\ 'converter_auto_paren',
90-
\ 'converter_remove_overlap',
91-
\ 'converter_truncate_abbr',
92-
\ 'converter_truncate_menu',
93-
\ 'converter_auto_delimiter',
94-
\ ])
103+
" call deoplete#custom#source('_', 'converters', [
104+
" \ 'converter_auto_paren',
105+
" \ 'converter_remove_overlap',
106+
" \ 'converter_truncate_abbr',
107+
" \ 'converter_truncate_menu',
108+
" \ 'converter_auto_delimiter',
109+
" \ ])

nvim/plugins.vim

+1-1
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ Plug 'wellle/tmux-complete.vim' " Adjacent tmux panes completion
151151
" -------------------------------------------------------------------------------------------
152152

153153
" Main lintting framework
154-
Plug 'w0rp/ale'
154+
Plug 'dense-analysis/ale'
155155

156156
" -------------------------------------------------------------------------------------------
157157
" THEMES & UI

nvim/settings.vim

+2-1
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,8 @@ set wildignore+=**/build/**
7777
set wildignore+=**/deps/**
7878
set wildignore+=**/log/**
7979
set wildignore+=*/tmp/*,**/tmp/**
80+
set wildignore+=**/_build/**,**/deps/**
81+
set wildignore+=**/target/**
8082

8183
" Tabs/Spaces
8284
set autoindent " Auto indent
@@ -112,4 +114,3 @@ set noerrorbells " Don't beep
112114
set iskeyword+=-,_ " Consider - and _ part of a word
113115
set history=200 " Remember more commands and search history
114116
set undolevels=100 " Maximum levels of changes that can be undone
115-

scripts/osx.sh

+3-2
Original file line numberDiff line numberDiff line change
@@ -475,8 +475,9 @@ echo "--------------------------------------------------------------------------
475475

476476
# Copy Dotfiles ----------------------------------------------------------------
477477
# ------------------------------------------------------------------------------
478-
ln -sf `pwd`/.gemrc ~/.gemrc
479-
ln -sf `pwd`/.default-gems ~/.default-gems
478+
ln -sf `pwd`/gemrc ~/.gemrc
479+
ln -sf `pwd`/default-gems ~/.default-gems
480+
ln -sf `pwd`/gitignore_global ~/.gitignore_global
480481

481482
echo_item "All done here!" blue
482483
echo_item "Time for some manual stuff, sorry!\n" yellow

0 commit comments

Comments
 (0)