Sanchayan Maity
763f811931
We dropped the Haskell syntax plugin for treesitter and also ghcid. Remove settings which were for those plugins.
35 lines
1.5 KiB
VimL
35 lines
1.5 KiB
VimL
" https://www.reddit.com/r/neovim/comments/es8wn7/haskell_makeprg_for_stack_build/
|
|
" https://github.com/maxigit/vimrc/tree/2020/compiler
|
|
compiler stack
|
|
setlocal makeprg=stack\ build
|
|
|
|
nnoremap <buffer> <LocalLeader>t :AsyncDo hasktags -x -c .<CR>
|
|
nnoremap <buffer> <LocalLeader>h :AsyncDo hlint %<CR>
|
|
|
|
" Taken from https://github.com/danidiaz/miscellany/blob/master/linux/.vim/ftplugin/haskell/movements.vim
|
|
" Next top-level type signature
|
|
nnoremap <script> <silent> ]f /^\w[^:=$]*\(::\\|\n\s*::\)<CR>
|
|
" Previous top-level type signature
|
|
nnoremap <script> <silent> [f ?^\w[^:=$]*::\(::\\|\n\s*::\)<CR>
|
|
" Next type signature
|
|
nnoremap <script> <silent> ]l /^\s*\w[^:=$]*\(::\\|\n\s*::\)<CR>
|
|
" Previous type signature
|
|
nnoremap <script> <silent> [l ?^\s*\w[^:=$]*\(::\\|\n\s*::\)<CR>
|
|
" Next data declaration
|
|
nnoremap <script> <silent> ]t /^\(data \\|newtype \\|type \\|class\)<CR>
|
|
" Previous data declaration
|
|
nnoremap <script> <silent> [t ?^\(data \\|newtype \\|type \\|class\)<CR>
|
|
" Beginning of imports
|
|
nnoremap <script> <silent> [i gg/^import <CR>z<CR>
|
|
" End of imports
|
|
nnoremap <script> <silent> [I G?^import <CR>zb
|
|
" Beginning of module exports
|
|
nnoremap <script> <silent> [m gg/^module <CR>z<CR>
|
|
" End of module exports (wonky)
|
|
nnoremap <script> <silent> [M gg/^\s*)\s*where\s*$<CR>zb<CR>
|
|
" Next named chunk of documentation
|
|
" https://www.haskell.org/haddock/doc/html/ch03s05.html
|
|
nnoremap <script> <silent> ]n /^-- \$\w\+<CR>z<CR>
|
|
" Previous named chunk of documentation
|
|
nnoremap <script> <silent> [n ?^-- \$\w\+<CR>z<CR>
|