Update
This commit is contained in:
@@ -9,6 +9,7 @@ call CmdAlias('hasktags', '!hasktags -c .<CR>')
|
||||
" from
|
||||
" https://raw.githubusercontent.com/begriffs/haskell-vim-now/master/git-hscope
|
||||
call CmdAlias('codex', 'call system("haskell-ctags")<CR><CR>call LoadHscope()<CR>')
|
||||
call CmdAlias('Cc', 'Clap commits<CR>')
|
||||
|
||||
|
||||
map <leader>ctg :codex<CR>
|
||||
@@ -18,7 +19,6 @@ set tags=tags;/,codex.tags;/
|
||||
" nnoremap <leader>gd <C-]>
|
||||
|
||||
" nnoremap <silent> <leader>cgd :cs find g <C-R>=expand("<cword>")<CR><CR>
|
||||
nnoremap <silent> <leader>cgd :Tags <C-R>=expand("<cword>")<CR><CR>
|
||||
nnoremap <silent> <C-\> :cs find c <C-R>=expand("<cword>")<CR><CR>
|
||||
|
||||
set cscopeprg=do_at_stack_root\ hscope
|
||||
@@ -55,14 +55,24 @@ let g:haskell_indent_disable = 0
|
||||
" let g:haskell_enable_arrowsyntax = 1
|
||||
" let g:haskell_enable_pattern_synonyms = 1
|
||||
" let g:haskell_enable_typeroles = 1
|
||||
" let g:haskell_indent_if = 3
|
||||
" let g:haskell_indent_case = 5
|
||||
" let g:haskell_indent_let = 4
|
||||
let g:haskell_indent_where = 2
|
||||
" let g:haskell_indent_do = 3
|
||||
" let g:haskell_indent_in = 1
|
||||
let g:haskell_disable_TH = 1
|
||||
let g:haskell_indent_if = 0
|
||||
let g:haskell_indent_case = 4
|
||||
let g:haskell_indent_let = 4
|
||||
let g:haskell_indent_where = 6
|
||||
let g:haskell_indent_before_where = 2
|
||||
let g:haskell_indent_after_bare_where = 2
|
||||
let g:haskell_indent_do = 4
|
||||
let g:haskell_indent_in = 0
|
||||
let g:haskell_indent_guard = 4
|
||||
" let g:haskell_disable_TH = 1
|
||||
|
||||
" vim-hindent
|
||||
let g:hindent_on_save = 0
|
||||
let g:hindent_indent_size = 4
|
||||
let g:hindent_line_length = 80
|
||||
|
||||
" vim-stylishhask
|
||||
let g:stylishask_on_save = 0
|
||||
|
||||
" haskellmode-vim
|
||||
function! HaskellDocCurrentWord()
|
||||
@@ -73,8 +83,8 @@ endfunction
|
||||
" done by LSP now
|
||||
nmap <F7> :call HaskellDocCurrentWord()<CR><CR>
|
||||
|
||||
nmap <silent> <F3> :silent update <bar> HsimportModule<CR>
|
||||
nmap <silent> <F4> :silent update <bar> HsimportSymbol<CR>
|
||||
" nmap <silent> <F3> :silent update <bar> HsimportModule<CR>
|
||||
" nmap <silent> <F4> :silent update <bar> HsimportSymbol<CR>
|
||||
|
||||
|
||||
" liquid-types
|
||||
@@ -94,30 +104,6 @@ let g:vim_annotations_offset = '/.liquid/'
|
||||
" endfunction
|
||||
|
||||
|
||||
|
||||
" nnoremap <leader>ld :call LanguageClient#textDocument_definition()<CR>
|
||||
" nnoremap <leader>lr :call LanguageClient#textDocument_rename()<CR>
|
||||
" nnoremap <leader>lf :call LanguageClient#textDocument_formatting()<CR>
|
||||
" nnoremap <leader>lt :call LanguageClient#textDocument_typeDefinition()<CR>
|
||||
" nnoremap <leader>lx :call LanguageClient#textDocument_references()<CR>
|
||||
" nnoremap <leader>la :call LanguageClient_workspace_applyEdit()<CR>
|
||||
" nnoremap <leader>lc :call LanguageClient#textDocument_completion()<CR>
|
||||
" nnoremap <leader>lh :call LanguageClient#textDocument_hover()<CR>
|
||||
" nnoremap <leader>ls :call LanguageClient_textDocument_documentSymbol()<CR>
|
||||
" nnoremap <leader>lm :call LanguageClient_contextMenu()<CR>
|
||||
" nnoremap <F6> :call LanguageClient#textDocument_hover()<CR>
|
||||
|
||||
|
||||
" deoplete
|
||||
"call deoplete#custom#option('sources',{
|
||||
" \ '_': ['buffer'],
|
||||
" \ 'haskell': ['neosnippet', 'buffer', 'file', 'neco-ghc']
|
||||
" \ })
|
||||
" " \ 'haskell': ['neosnippet', 'buffer', 'file', 'neco-ghc']
|
||||
"call deoplete#enable()
|
||||
"call deoplete#enable_logging('DEBUG', $HOME . '/deoplete.log')
|
||||
"" inoremap <expr><tab> pumvisible() ? "\<c-n>" : "\<tab>"
|
||||
|
||||
let g:ghcmod_hlint_options = ['--ignore=Eta reduce $']
|
||||
|
||||
" ALE
|
||||
@@ -132,73 +118,17 @@ let g:ale_haskell_argon_error_level = 14
|
||||
let g:ale_haskell_argon_warn_level = 10
|
||||
let g:ale_haskell_argon_info_level = 6
|
||||
|
||||
" completion
|
||||
"
|
||||
" neco-ghc
|
||||
" let g:necoghc_enable_detailed_browse = 1
|
||||
" let g:haskellmode_completion_ghc = 0
|
||||
" autocmd FileType haskell setlocal omnifunc=necoghc#omnifunc
|
||||
" let g:ycm_semantic_triggers = {'haskell' : ['.']}
|
||||
|
||||
" let g:ycm_language_server = [ { 'name': 'haskell', 'filetypes': [ 'haskell', 'hs', 'lhs' ], 'cmdline': [ 'hie-wrapper' ], 'project_root_files': [ '.stack.yaml', 'cabal.config', 'package.yaml', 'cabal.project' ] } ]
|
||||
|
||||
|
||||
|
||||
" clear search
|
||||
" nmap <F2> :noh<CR>:GhcModTypeClear<CR>
|
||||
" imap <F2> <C-O>:noh<CR>:GhcModTypeClear<CR>
|
||||
|
||||
" unmap <F3>
|
||||
" unmap <F4>
|
||||
|
||||
" nmap <F6> :GhcModType<CR>
|
||||
|
||||
" for intero
|
||||
" if has("nvim")
|
||||
" let g:ale_enabled = 0
|
||||
|
||||
" " let g:intero_backend = {
|
||||
" " \ 'command': 'cabal new-repl',
|
||||
" " \ 'options': '',
|
||||
" " \ 'cwd': expand('%:p:h'),
|
||||
" " \}
|
||||
|
||||
" " Intero starts automatically. Set this if you'd like to prevent that.
|
||||
" let g:intero_start_immediately = 1
|
||||
|
||||
" " Enable type information on hover (when holding cursor at point for ~1 second).
|
||||
" let g:intero_type_on_hover = 1
|
||||
|
||||
" " Change the intero window size; default is 10.
|
||||
" let g:intero_window_size = 15
|
||||
|
||||
" " Sets the intero window to split vertically; default is horizontal
|
||||
" " let g:intero_vertical_split = 1
|
||||
|
||||
" " let g:intero_ghci_options = '-dynamic'
|
||||
|
||||
" " OPTIONAL: Make the update time shorter, so the type info will trigger faster.
|
||||
" set updatetime=1000
|
||||
|
||||
let g:neoformat_enabled_haskell = ['brittany']
|
||||
|
||||
|
||||
|
||||
" map <silent> <leader>t <Plug>InteroGenericType
|
||||
" nnoremap <silent> <leader>jd :InteroGoToDef<CR>
|
||||
" map <silent> <leader>T <Plug>InteroType
|
||||
" nnoremap <silent> <leader>it :InteroTypeInsert<CR>
|
||||
" nnoremap <leader>ist :InteroSetTargets<SPACE>
|
||||
" endif
|
||||
|
||||
|
||||
|
||||
" LSP
|
||||
let g:LanguageClient_rootMarkers = ['cabal.project', '*.cabal', 'stack.yaml']
|
||||
|
||||
" \ 'haskell': ['ghcide', "--lsp"],
|
||||
let g:LanguageClient_serverCommands = {
|
||||
\ 'haskell': ['hie-wrapper', '--lsp'],
|
||||
\ 'haskell': ['haskell-language-server-wrapper', '--lsp'],
|
||||
\ }
|
||||
|
||||
|
||||
@@ -207,8 +137,8 @@ let g:echodoc#enable_at_startup = 1
|
||||
|
||||
call deoplete#enable()
|
||||
call deoplete#custom#source('LanguageClient',
|
||||
\ 'min_pattern_length',
|
||||
\ 2)
|
||||
\ 'min_pattern_length',
|
||||
\ 2)
|
||||
inoremap <expr><tab> pumvisible() ? "\<c-n>" : "\<tab>"
|
||||
|
||||
|
||||
@@ -247,3 +177,9 @@ let g:tagbar_type_haskell = {
|
||||
\ }
|
||||
\ }
|
||||
|
||||
|
||||
" vista
|
||||
let g:vista_ctags_cmd = {
|
||||
\ 'haskell': 'hasktags -x -o - -c',
|
||||
\ }
|
||||
let g:vista_fzf_preview = ['right:0%']
|
||||
|
||||
Reference in New Issue
Block a user