blob: 4c1aac12efdf9dde32891d001b5fabd5d160c997 [file] [log] [blame]
" Vim syntax file
" Language: po (gettext)
" Maintainer: Nam SungHyun <namsh@kldp.org>
" Last Change: 2001 Apr 26
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
syn match poComment "^#.*$"
syn match poSources "^#:.*$"
syn match poStatement "^\(domain\|msgid\|msgstr\)"
syn match poSpecial contained "\\\(x\x\+\|\o\{1,3}\|.\|$\)"
syn match poFormat "%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlL]\|ll\)\=\([diuoxXfeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained
syn match poFormat "%%" contained
syn region poString start=+"+ skip=+\\\\\|\\"+ end=+"+
\ contains=poSpecial,poFormat
syn region poFuzzy start=+^#,\sfuzzy+ end=+^$+
syn match poUntranslated +^msgstr\s""\n\n+
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_po_syn_inits")
if version < 508
let did_po_syn_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
HiLink poComment Comment
HiLink poSources PreProc
HiLink poStatement Statement
HiLink poSpecial Special
HiLink poFormat poSpecial
HiLink poString String
HiLink poFuzzy Todo
HiLink poUntranslated Todo
delcommand HiLink
endif
let b:current_syntax = "po"
" vim:set ts=8 sts=2 sw=2 noet: