runtime(typst): add folding to typst ftplugin
closes: #15897
Signed-off-by: Gregory Anders <greg@gpanders.com>
Signed-off-by: Luca Saccarola <github.e41mv@aleeas.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/ftplugin/typst.vim b/runtime/ftplugin/typst.vim
index 895fc68..3841e42 100644
--- a/runtime/ftplugin/typst.vim
+++ b/runtime/ftplugin/typst.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: Typst
" Maintainer: Gregory Anders
-" Last Change: 2024 Oct 04
+" Last Change: 2024 Oct 21
" Based on: https://github.com/kaarmu/typst.vim
if exists('b:did_ftplugin')
@@ -21,6 +21,12 @@
let b:undo_ftplugin .= ' cole<'
endif
+if has("folding") && get(g:, 'typst_folding', 0)
+ setlocal foldexpr=typst#foldexpr()
+ setlocal foldmethod=expr
+ let b:undo_ftplugin .= "|setl foldexpr< foldmethod<"
+endif
+
if !exists('current_compiler')
compiler typst
let b:undo_ftplugin ..= "| compiler make"