Files
org-vim/runtime/syntax/haredoc.vim
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

44 lines
1.1 KiB
VimL
Raw Normal View History

2025-09-08 15:30:41 -04:00
vim9script
# Vim syntax file.
# Language: Haredoc (Hare documentation format)
# Maintainer: Amelia Clarke <selene@perilune.dev>
# Last Change: 2025 Aug 14
# Upstream: https://git.sr.ht/~sircmpwn/hare.vim
2024-05-24 08:05:00 +02:00
if exists('b:current_syntax')
finish
endif
2025-09-08 15:30:41 -04:00
# Syntax {{{1
2024-05-24 08:05:00 +02:00
syn case match
syn iskeyword @,48-57,_
2025-09-08 15:30:41 -04:00
# Embedded code samples.
syn region haredocCode start='\t\zs' end='$' contains=@NoSpell display
2024-05-24 08:05:00 +02:00
2025-09-08 15:30:41 -04:00
# References to other declarations and modules.
syn match haredocRef '\v\[\[\h\w*%(::\h\w*)*%(::)?]]' contains=@NoSpell display
2024-05-24 08:05:00 +02:00
2025-09-08 15:30:41 -04:00
# Miscellaneous.
2024-05-24 08:05:00 +02:00
syn keyword haredocTodo FIXME TODO XXX
2025-09-08 15:30:41 -04:00
# Default highlighting {{{1
hi def link haredocCode Comment
hi def link haredocRef Special
2024-05-24 08:05:00 +02:00
hi def link haredocTodo Todo
2025-09-08 15:30:41 -04:00
# Highlight incorrect whitespace by default.
syn match haredocSpaceError '\s\+$' containedin=ALL display
syn match haredocSpaceError '^ \zs \+\ze\t' containedin=ALL display
syn match haredocSpaceError '[^ ]\zs \+\ze\t' containedin=ALL display
if get(g:, 'hare_space_error', 1)
hi! def link haredocSpaceError Error
else
hi! def link haredocSpaceError NONE
endif
b:current_syntax = 'haredoc'
# vim: fdm=marker et sts=2 sw=2 ts=8 tw=80