xref: /vim-8.2.3635/runtime/syntax/man.vim (revision 89bcfda6)
1" Vim syntax file
2" Language:	Man page
3" Maintainer:	SungHyun Nam <[email protected]>
4" Previous Maintainer:	Gautam H. Mudunuri <[email protected]>
5" Version Info:
6" Last Change:	2015 Nov 24
7
8" Additional highlighting by Johannes Tanzler <[email protected]>:
9"	* manSubHeading
10"	* manSynopsis (only for sections 2 and 3)
11
12" quit when a syntax file was already loaded
13if exists("b:current_syntax")
14  finish
15endif
16
17" Get the CTRL-H syntax to handle backspaced text
18runtime! syntax/ctrlh.vim
19
20syn case ignore
21syn match  manReference       "\f\+([1-9][a-z]\=)"
22syn match  manTitle	      "^\f\+([0-9]\+[a-z]\=).*"
23syn match  manSectionHeading  "^[a-z][a-z -]*[a-z]$"
24syn match  manSubHeading      "^\s\{3\}[a-z][a-z -]*[a-z]$"
25syn match  manOptionDesc      "^\s*[+-][a-z0-9]\S*"
26syn match  manLongOptionDesc  "^\s*--[a-z0-9-]\S*"
27" syn match  manHistory		"^[a-z].*last change.*$"
28
29if getline(1) =~ '^[a-zA-Z_]\+([23])'
30  syntax include @cCode <sfile>:p:h/c.vim
31  syn match manCFuncDefinition  display "\<\h\w*\>\s*("me=e-1 contained
32  syn region manSynopsis start="^SYNOPSIS"hs=s+8 end="^\u\+\s*$"me=e-12 keepend contains=manSectionHeading,@cCode,manCFuncDefinition
33endif
34
35
36" Define the default highlighting.
37" Only when an item doesn't have highlighting yet
38command -nargs=+ HiLink hi def link <args>
39
40HiLink manTitle	    Title
41HiLink manSectionHeading  Statement
42HiLink manOptionDesc	    Constant
43HiLink manLongOptionDesc  Constant
44HiLink manReference	    PreProc
45HiLink manSubHeading      Function
46HiLink manCFuncDefinition Function
47
48delcommand HiLink
49
50let b:current_syntax = "man"
51
52" vim:ts=8 sts=2 sw=2:
53