Skip to content

Commit 7445bb2

Browse files
committed
Add syntax based folding for block comments
This also enables folding of multiple consecutive line comments as a single block.
1 parent 32ad231 commit 7445bb2

File tree

1 file changed

+12
-4
lines changed

1 file changed

+12
-4
lines changed

syntax/racket.vim

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -605,13 +605,21 @@ syn region racketQuoted matchgroup=Delimiter start="#['`]("rs=s+3 matchgroup=Del
605605

606606
" Comments
607607
syn match racketComment /;.*$/ contains=racketTodo,racketNote,@Spell
608-
syn region racketMultilineComment start=/#|/ end=/|#/ contains=racketMultilineComment,racketTodo,racketNote,@Spell
608+
609+
if exists("racket_no_comment_fold")
610+
syn region racketBlockComment start=/#|/ end=/|#/ contains=racketBlockComment,racketTodo,racketNote,@Spell
611+
else
612+
syn region racketBlockComment start=/#|/ end=/|#/ contains=racketBlockComment,racketTodo,racketNote,@Spell fold
613+
syn region racketMultilineComment start="^\s*;.*\n\%(^\s*;\)\@=" end="^\s*;.*\n\%(^\s*;\)\@!" contains=racketComment transparent keepend fold
614+
endif
609615

610616
syn keyword racketTodo FIXME TODO XXX contained
611617
syntax match racketNote /\CNOTE\ze:\?/ contained
612618

613-
syn cluster racketNormal add=racketQuoted,racketComment,racketMultilineComment
614-
syn cluster racketQuotedOrNormal add=racketComment,racketMultilineComment
619+
syn cluster racketComments contains=racketComment,racketBlockComment,racketMultilineComment
620+
621+
syn cluster racketNormal add=racketQuoted,@racketComments
622+
syn cluster racketQuotedOrNormal add=@racketComments
615623

616624

617625
" Synchronization and the wrapping up...
@@ -648,7 +656,7 @@ if version >= 508 || !exists("did_racket_syntax_inits")
648656
HiLink racketConstant Constant
649657

650658
HiLink racketComment Comment
651-
HiLink racketMultilineComment Comment
659+
HiLink racketBlockComment Comment
652660
HiLink racketTodo Todo
653661
HiLink racketNote SpecialComment
654662
HiLink racketError Error

0 commit comments

Comments
 (0)