From 7a4fbddac725de1d5a506db13379d5a6da5f66d3 Mon Sep 17 00:00:00 2001 From: raichoo Date: Tue, 23 Aug 2016 09:42:44 +0200 Subject: [PATCH] #73 fix indentation for comma in blocks --- indent/haskell.vim | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/indent/haskell.vim b/indent/haskell.vim index 06ec6a0..594d647 100644 --- a/indent/haskell.vim +++ b/indent/haskell.vim @@ -156,12 +156,16 @@ function! GetHaskellIndent() call search(',', 'cW') let l:n = s:getNesting(s:getHLStack(line('.'), col('.'))) call search('[([{]', 'bW') + let l:cl = line('.') + let l:cc = col('.') - while l:n != s:getNesting(s:getHLStack(line('.'), col('.'))) + while l:n != s:getNesting(s:getHLStack(l:cl, l:cc)) || s:isSYN('haskellString', l:cl, l:cc) || s:isSYN('haskellChar', l:cl, l:cc) call search('[([{]', 'bW') + let l:cl = line('.') + let l:cc = col('.') endwhile - return col('.') - 1 + return l:cc - 1 else let l:s = s:indentGuard(match(l:line, ','), l:prevline) if l:s > -1