Created
March 11, 2021 18:02
-
-
Save daig/dedf8f5a1a0bfa50f18adb67575d538c to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
set nocompatible | |
set number | |
set ruler | |
set nowrap | |
set showmode | |
set tw=80 | |
set smartcase | |
set smarttab | |
set smartindent | |
set autoindent | |
set softtabstop=2 | |
set shiftwidth=2 | |
set expandtab | |
set incsearch | |
set mouse=a | |
set history=1000 | |
set clipboard=unnamed,autoselect | |
set completeopt=menuone,menu,longest | |
set wildignore+=*\\tmp\\*,*.swp,*.swo,*.zip,.git,.cabal-sandbox | |
set wildmode=longest,list,full | |
set wildmenu | |
set completeopt+=longest | |
set t_Co=256 | |
set cmdheight=1 | |
map <Leader>n :NERDTreeToggle<CR> | |
let g:haskell_tabular = 1 | |
vmap a= :Tabularize /=<CR> | |
vmap a; :Tabularize /::<CR> | |
vmap a- :Tabularize /-><CR> | |
set statusline+=%#warningmsg# | |
set statusline+=%{SyntasticStatuslineFlag()} | |
set statusline+=%* | |
let g:syntastic_always_populate_loc_list = 1 | |
let g:syntastic_auto_loc_list = 1 | |
let g:syntastic_check_on_open = 1 | |
let g:syntastic_check_on_wq = 0 | |
let g:idris_conceal = 1 | |
map <silent> <Leader>t :CtrlP()<CR> | |
noremap <leader>b<space> :CtrlPBuffer<cr> | |
let g:ctrlp_custom_ignore = '\v[\/]dist$' | |
execute pathogen#infect() | |
syntax on | |
filetype on | |
filetype plugin indent on | |
autocmd BufWritePost package.yaml call Hpack() | |
function Hpack() | |
let err = system('hpack ' . expand('%')) | |
if v:shell_error | |
echo err | |
endif | |
endfunction | |
call plug#begin() | |
Plug 'neoclide/coc.nvim', {'branch': 'release'} | |
call plug#end() | |
" Use tab for trigger completion with characters ahead and navigate. | |
" NOTE: Use command ':verbose imap <tab>' to make sure tab is not mapped by | |
" other plugin before putting this into your config. | |
inoremap <silent><expr> <TAB> | |
\ pumvisible() ? "\<C-n>" : | |
\ <SID>check_back_space() ? "\<TAB>" : | |
\ coc#refresh() | |
inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>" | |
function! s:check_back_space() abort | |
let col = col('.') - 1 | |
return !col || getline('.')[col - 1] =~# '\s' | |
endfunction | |
" Use `[g` and `]g` to navigate diagnostics | |
" Use `:CocDiagnostics` to get all diagnostics of current buffer in location list. | |
nmap <silent> [g <Plug>(coc-diagnostic-prev) | |
nmap <silent> ]g <Plug>(coc-diagnostic-next) | |
" GoTo code navigation. | |
nmap <silent> gd <Plug>(coc-definition) | |
nmap <silent> gy <Plug>(coc-type-definition) | |
nmap <silent> gi <Plug>(coc-implementation) | |
nmap <silent> gr <Plug>(coc-references) | |
" Use K to show documentation in preview window. | |
nnoremap <silent> K :call <SID>show_documentation()<CR> | |
function! s:show_documentation() | |
if (index(['vim','help'], &filetype) >= 0) | |
execute 'h '.expand('<cword>') | |
elseif (coc#rpc#ready()) | |
call CocActionAsync('doHover') | |
else | |
execute '!' . &keywordprg . " " . expand('<cword>') | |
endif | |
endfunction | |
" Highlight the symbol and its references when holding the cursor. | |
autocmd CursorHold * silent call CocActionAsync('highlight') | |
" Symbol renaming. | |
nmap <leader>rn :CocCommand document.renameCurrentWord<CR> | |
" Formatting selected code. | |
xmap <leader>f <Plug>(coc-format-selected) | |
nmap <leader>f <Plug>(coc-format-selected) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment