Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
po.vim172 linesDownload Raw Back to syntax
1" Vim syntax file2" Language:	po (gettext)3" Maintainer:	Dwayne Bailey <dwayne@translate.org.za>4" Last Change:	2024 Nov 285" Contributors: Dwayne Bailey (Most advanced syntax highlighting)6"               Leonardo Fontenelle (Spell checking)7"               Nam SungHyun <namsh@kldp.org> (Original maintainer)8"               Eisuke Kawashima (add format-flags: #16132)9" Last Change:10" 2026 Mar 02 by Vim Project, various syntax improvements #1954811 12" quit when a syntax file was already loaded13if exists("b:current_syntax")14  finish15endif16let s:keepcpo= &cpo17set cpo&vim18 19syn sync minlines=1020 21" Identifiers22syn match  poStatementMsgCTxt "^msgctxt\>"23syn match  poStatementMsgidplural "^msgid_plural\>" contained24syn match  poPluralCaseN "[0-9]" contained25syn match  poStatementMsgstr "^msgstr\%(\[[0-9]\]\)" contains=poPluralCaseN26 27" Simple HTML and XML highlighting28syn match  poHtml "<\_[^<>]\+>" contains=poHtmlTranslatables,poLineBreak29syn match  poHtmlNot +"<[^<]\+>"+ms=s+1,me=e-130syn region poHtmlTranslatables start=+\<\%(abbr\|alt\|content\|summary\|standby\|title\)=\\"+ms=e-1 end=+\\"+ contained contains=@Spell31syn match poLineBreak +"\n"+ contained32 33" Translation blocks34syn region     poMsgCTxt	matchgroup=poStatementMsgCTxt start=+^msgctxt "+rs=e-1 matchgroup=poStringCTxt end=+^msgid "+me=s-1 contains=poStringCTxt35syn region     poMsgID	matchgroup=poStatementMsgid start=+^msgid "+rs=e-1 matchgroup=poStringID end=+^msgstr\%(\>\|\[[\]0\[]\]\) "+me=s-1 contains=poStringID,poStatementMsgidplural,poStatementMsgid36syn region     poMsgSTR	matchgroup=poStatementMsgstr start=+^msgstr\%(\>\|\[[\]0\[]\]\) "+rs=e-1 matchgroup=poStringSTR end=+\n\n+me=s-1 contains=poStringSTR,poStatementMsgstr37syn region poStringCTxt	start=+"+ skip=+\\\\\|\\"+ end=+"+38syn region poStringID	start=+"+ skip=+\\\\\|\\"+ end=+"+ contained39                            \ contains=poSpecial,poFormat,poCommentKDE,poPluralKDE,poKDEdesktopFile,poHtml,poAcceleratorId,poHtmlNot,poVariable40syn region poStringSTR	start=+"+ skip=+\\\\\|\\"+ end=+"+ contained41                            \ contains=@Spell,poSpecial,poFormat,poHeaderItem,poCommentKDEError,poHeaderUndefined,poPluralKDEError,poMsguniqError,poKDEdesktopFile,poHtml,poAcceleratorStr,poHtmlNot,poVariable42 43" Header and Copyright44syn match     poHeaderItem "\<\%(Project-Id-Version\|Report-Msgid-Bugs-To\|POT-Creation-Date\|PO-Revision-Date\|Last-Translator\|Language-Team\|Language\|MIME-Version\|Content-Type\|Content-Transfer-Encoding\|Plural-Forms\|X-Generator\): " contained45syn match     poHeaderUndefined "\<\%(PACKAGE VERSION\>\|YEAR-MO-DA HO:MI+ZONE\>\|FULL NAME <EMAIL@ADDRESS>\|LANGUAGE <LL@li.org>\|CHARSET\>\|ENCODING\>\|INTEGER\>\|EXPRESSION\>\)" contained46syn match     poCopyrightUnset "\<\%(SOME DESCRIPTIVE TITLE\|FIRST AUTHOR <EMAIL@ADDRESS>, YEAR\|Copyright (C) YEAR Free Software Foundation, Inc\|YEAR THE PACKAGE\'S COPYRIGHT HOLDER\|PACKAGE\)\>" contained47 48" Translation comment block including: translator comment, automatic comments, flags and locations49syn match     poComment "^#.*$"50syn keyword   poFlagFuzzy fuzzy contained51 52syn match     poFlagFormat /\<\%(no-\)\?awk-format\>/ contained53syn match     poFlagFormat /\<\%(no-\)\?boost-format\>/ contained54syn match     poFlagFormat /\<\%(no-\)\?c++-format\>/ contained55syn match     poFlagFormat /\<\%(no-\)\?c-format\>/ contained56syn match     poFlagFormat /\<\%(no-\)\?csharp-format\>/ contained57syn match     poFlagFormat /\<\%(no-\)\?d-format\>/ contained58syn match     poFlagFormat /\<\%(no-\)\?elisp-format\>/ contained59syn match     poFlagFormat /\<\%(no-\)\?gcc-internal-format\>/ contained60syn match     poFlagFormat /\<\%(no-\)\?gfc-internal-format\>/ contained61syn match     poFlagFormat /\<\%(no-\)\?go-format\>/ contained62syn match     poFlagFormat /\<\%(no-\)\?java-format\>/ contained63syn match     poFlagFormat /\<\%(no-\)\?java-printf-format\>/ contained64syn match     poFlagFormat /\<\%(no-\)\?javascript-format\>/ contained65syn match     poFlagFormat /\<\%(no-\)\?kde-format\>/ contained66syn match     poFlagFormat /\<\%(no-\)\?librep-format\>/ contained67syn match     poFlagFormat /\<\%(no-\)\?lisp-format\>/ contained68syn match     poFlagFormat /\<\%(no-\)\?lua-format\>/ contained69syn match     poFlagFormat /\<\%(no-\)\?modula2-format\>/ contained70syn match     poFlagFormat /\<\%(no-\)\?objc-format\>/ contained71syn match     poFlagFormat /\<\%(no-\)\?object-pascal-format\>/ contained72syn match     poFlagFormat /\<\%(no-\)\?perl-brace-format\>/ contained73syn match     poFlagFormat /\<\%(no-\)\?perl-format\>/ contained74syn match     poFlagFormat /\<\%(no-\)\?php-format\>/ contained75syn match     poFlagFormat /\<\%(no-\)\?python-brace-format\>/ contained76syn match     poFlagFormat /\<\%(no-\)\?python-format\>/ contained77syn match     poFlagFormat /\<\%(no-\)\?qt-format\>/ contained78syn match     poFlagFormat /\<\%(no-\)\?qt-plural-format\>/ contained79syn match     poFlagFormat /\<\%(no-\)\?ruby-format\>/ contained80syn match     poFlagFormat /\<\%(no-\)\?rust-format\>/ contained81syn match     poFlagFormat /\<\%(no-\)\?scheme-format\>/ contained82syn match     poFlagFormat /\<\%(no-\)\?sh-format\>/ contained83syn match     poFlagFormat /\<\%(no-\)\?sh-printf-format\>/ contained84syn match     poFlagFormat /\<\%(no-\)\?smalltalk-format\>/ contained85syn match     poFlagFormat /\<\%(no-\)\?tcl-format\>/ contained86syn match     poFlagFormat /\<\%(no-\)\?ycp-format\>/ contained87syn match     poFlagFormat /\<no-wrap\>/ contained88 89syn match     poCommentTranslator "^# .*$" contains=poCopyrightUnset90syn match     poCommentAutomatic "^#\..*$"91syn match     poCommentSources	"^#:.*$"92syn match     poCommentFlags "^#[,=].*$" contains=poFlagFuzzy,poFlagFormat93syn match     poCommentPrevious "^#|.*$"94 95" Translations (also includes header fields as they appear in a translation msgstr)96syn region poCommentKDE	  start=+"_: +ms=s+1 end="\\n" end="\"\n^msgstr"me=s-1 contained97syn region poCommentKDEError  start=+"\%(\|\s\+\)_:+ms=s+1 end="\\n" end=+"\n\n+me=s-1 contained98syn match  poPluralKDE   +"_n: +ms=s+1 contained99syn region poPluralKDEError   start=+"\%(\|\s\+\)_n:+ms=s+1 end="\"\n\n"me=s-1 contained100syn match  poSpecial	contained "\\\%(x\x\+\|\o\{1,3}\|.\|$\)"101syn match  poFormat	"%\%(\d\+\$\)\=[-+' #0*]*\%(\d*\|\*\|\*\d\+\$\)\%(\.\%(\d*\|\*\|\*\d\+\$\)\)\=\%([hlL]\|ll\)\=\%([diuoxXfeEgGcCsSpn]\|\[\^\=.[^]]*\]\)" contained102syn match  poFormat	"%%" contained103 104" msguniq and msgcat conflicts105syn region poMsguniqError matchgroup=poMsguniqErrorMarkers  start="#-#-#-#-#"  end='#\%("\n"\|\)-\%("\n"\|\)#\%("\n"\|\)-\%("\n"\|\)#\%("\n"\|\)-\%("\n"\|\)#\%("\n"\|\)-\%("\n"\|\)#\%("\n"\|\)\\n' contained106 107" Obsolete messages108syn match poObsolete "^#\~.*$"109 110" KDE Name= handling111syn match poKDEdesktopFile "\"\%(Name\|Comment\|GenericName\|Description\|Keywords\|About\)="ms=s+1,me=e-1112 113" Accelerator keys - this messes up if the preceding or following char is a multibyte unicode char114syn match poAcceleratorId  contained "[^&_~][&_~]\%(\a\|\d\)[^:]"ms=s+1,me=e-1115syn match poAcceleratorStr  contained "[^&_~][&_~]\%(\a\|\d\)[^:]"ms=s+1,me=e-1 contains=@Spell116 117" Variables simple118syn match poVariable contained "%\d"119 120" Define the default highlighting.121" Only when an item doesn't have highlighting yet122 123hi def link poCommentSources    PreProc124hi def link poComment	     Comment125hi def link poCommentAutomatic  Comment126hi def link poCommentTranslator Comment127hi def link poCommentFlags      Special128hi def link poCommentPrevious   Comment129hi def link poCopyrightUnset    Todo130hi def link poFlagFuzzy         Todo131hi def link poFlagFormat        Todo132hi def link poObsolete         Comment133 134hi def link poStatementMsgid   Statement135hi def link poStatementMsgstr  Statement136hi def link poStatementMsgidplural  Statement137hi def link poStatementMsgCTxt Statement138hi def link poPluralCaseN      Constant139 140hi def link poStringCTxt	    Comment141hi def link poStringID	    String142hi def link poStringSTR	    String143hi def link poCommentKDE       Comment144hi def link poCommentKDEError  Error145hi def link poPluralKDE        Comment146hi def link poPluralKDEError   Error147hi def link poHeaderItem       Identifier148hi def link poHeaderUndefined  Todo149hi def link poKDEdesktopFile   Identifier150 151hi def link poHtml              Identifier152hi def link poHtmlNot           String153hi def link poHtmlTranslatables String154hi def link poLineBreak         String155 156hi def link poFormat	    poSpecial157hi def link poSpecial	    Special158hi def link poAcceleratorId    Special159hi def link poAcceleratorStr   Special160hi def link poVariable         Special161 162hi def link poMsguniqError        Special163hi def link poMsguniqErrorMarkers Comment164 165 166let b:current_syntax = "po"167 168let &cpo = s:keepcpo169unlet s:keepcpo170 171" vim:set ts=8 sts=2 sw=2 noet:172 
codekingpro/portable-devtools · Team Ai