summaryrefslogtreecommitdiffstats
path: root/vim/ftplugin/haskell.vim
diff options
context:
space:
mode:
Diffstat (limited to 'vim/ftplugin/haskell.vim')
-rw-r--r--vim/ftplugin/haskell.vim33
1 files changed, 33 insertions, 0 deletions
diff --git a/vim/ftplugin/haskell.vim b/vim/ftplugin/haskell.vim
new file mode 100644
index 0000000..99f0cd7
--- /dev/null
+++ b/vim/ftplugin/haskell.vim
@@ -0,0 +1,33 @@
+setlocal omnifunc=necoghc#omnifunc ts=8 sts=4 sw=4 et sr
+
+let g:tagbar_type_haskell = {
+ \ 'ctagsbin' : 'hasktags',
+ \ 'ctagsargs' : '-x -c -o-',
+ \ 'kinds' : [
+ \ 'm:modules:0:1',
+ \ 'd:data: 0:1',
+ \ 'd_gadt: data gadt:0:1',
+ \ 't:type names:0:1',
+ \ 'nt:new types:0:1',
+ \ 'c:classes:0:1',
+ \ 'cons:constructors:1:1',
+ \ 'c_gadt:constructor gadt:1:1',
+ \ 'c_a:constructor accessors:1:1',
+ \ 'ft:function types:1:1',
+ \ 'fi:function implementations:0:1',
+ \ 'o:others:0:1'
+ \ ],
+ \ 'sro' : '.',
+ \ 'kind2scope' : {
+ \ 'm' : 'module',
+ \ 'c' : 'class',
+ \ 'd' : 'data',
+ \ 't' : 'type'
+ \ },
+ \ 'scope2kind' : {
+ \ 'module' : 'm',
+ \ 'class' : 'c',
+ \ 'data' : 'd',
+ \ 'type' : 't'
+ \ }
+\ }