commit 069a5ef8e02e1d0c9b12828fc1ff57cd0feac6d3
parent a71ea81b865b87f7c83bc324f769f73b772bcadd
Author: zeertzjq <zeertzjq@outlook.com>
Date: Mon, 19 Jan 2026 07:02:16 +0800
vim-patch:0b103d6: runtime(haskell): add include-search and define support in ftplugin
closes: vim/vim#19143
https://github.com/vim/vim/commit/0b103d6a7c2dd6a858f02a0bc93c5d93efc303c7
Co-authored-by: Mateo Gjika <104777599+mateoxh@users.noreply.github.com>
Diffstat:
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/runtime/ftplugin/haskell.vim b/runtime/ftplugin/haskell.vim
@@ -4,6 +4,7 @@
" Previous Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2018-08-27
" 2025 Jul 09 by Vim Project revert setting iskeyword #8191
+" 2026 Jan 18 by Vim Project add include-search and define support #19143
if exists("b:did_ftplugin")
finish
@@ -13,11 +14,19 @@ let b:did_ftplugin = 1
let s:cpo_save = &cpo
set cpo&vim
-let b:undo_ftplugin = "setl com< cms< fo<"
+let b:undo_ftplugin = "setl com< cms< fo< su< sua< inex< inc< def<"
setlocal comments=s1fl:{-,mb:-,ex:-},:-- commentstring=--\ %s
setlocal formatoptions-=t formatoptions+=croql
setlocal omnifunc=haskellcomplete#Complete
+setlocal suffixes+=.hi
+setlocal suffixesadd=.hs,.lhs,.hsc
+
+setlocal includeexpr=findfile(tr(v:fname,'.','/'),'.;')
+setlocal include=^import\\>\\%(\\s\\+safe\\>\\)\\?\\%(\\s\\+qualified\\>\\)\\?
+
+setlocal define=^\\%(data\\>\\\|class\\>\\%(.*=>\\)\\?\\\|\\%(new\\)\\?type\\>\\\|\\ze\\k\\+\\s*\\%(::\\\|=\\)\\)
+
let &cpo = s:cpo_save
unlet s:cpo_save