aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSynray <31429825+Synray@users.noreply.github.com>2018-07-11 16:13:52 -0700
committerJustin M. Keyes <justinkz@gmail.com>2018-07-12 01:13:52 +0200
commit07499a842b1f06a810c074dc28ee14d8adc42b71 (patch)
tree6601785b0e6aaf6a2e8d8ed5b95066abc5e5d623
parent9adb6ed74ac72f6a3a694cc1502f783426e22c4d (diff)
downloadrneovim-07499a842b1f06a810c074dc28ee14d8adc42b71.tar.gz
rneovim-07499a842b1f06a810c074dc28ee14d8adc42b71.tar.bz2
rneovim-07499a842b1f06a810c074dc28ee14d8adc42b71.zip
man.vim: C highlighting for EXAMPLES section #8709
-rw-r--r--runtime/syntax/man.vim15
1 files changed, 13 insertions, 2 deletions
diff --git a/runtime/syntax/man.vim b/runtime/syntax/man.vim
index b8e605cb9a..9ae50d17a5 100644
--- a/runtime/syntax/man.vim
+++ b/runtime/syntax/man.vim
@@ -30,17 +30,28 @@ endif
if !exists('b:man_sect')
call man#init_pager()
endif
-if b:man_sect =~# '^[23]'
+if b:man_sect =~# '^[023]'
+ syntax case match
syntax include @c $VIMRUNTIME/syntax/c.vim
syntax match manCFuncDefinition display '\<\h\w*\>\ze\(\s\|\n\)*(' contained
+ syntax match manSentence display '\%(^ \{3,7}\u\|\. \u\)\_.\{-}
+ \\%(-$\|\.$\|:$\)\|
+ \ \{3,7}\a.*\%(\.\|:\)$' contained contains=manReference
syntax region manSynopsis start='^\%(
\SYNOPSIS\|
\SYNTAX\|
\SINTASSI\|
\SKŁADNIA\|
\СИНТАКСИС\|
- \書式\)$' end='^\%(\S.*\)\=\S$' keepend contains=manSectionHeading,@c,manCFuncDefinition
+ \書式\)$' end='^\%(\S.*\)\=\S$' keepend contains=manSentence,manSectionHeading,@c,manCFuncDefinition
highlight default link manCFuncDefinition Function
+
+ syntax region manExample start='^EXAMPLES\=$' end='^\%(\S.*\)\=\S$' keepend contains=manSentence,manSectionHeading,manSubHeading,@c,manCFuncDefinition
+
+ " XXX: groupthere doesn't seem to work
+ syntax sync minlines=500
+ "syntax sync match manSyncExample groupthere manExample '^EXAMPLES\=$'
+ "syntax sync match manSyncExample groupthere NONE '^\%(EXAMPLES\=\)\@!\%(\S.*\)\=\S$'
endif
" Prevent everything else from matching the last line