summaryrefslogtreecommitdiff
path: root/.vim
diff options
context:
space:
mode:
authorRené 'Necoro' Neumann <necoro@necoro.net>2010-06-22 21:17:11 +0200
committerRené 'Necoro' Neumann <necoro@necoro.net>2010-06-22 21:17:13 +0200
commitc99a90c7dd3e6f25e9584848ca7d2b9ad82bb453 (patch)
tree0f6225efb372aeaf79dd56efbef2242da3c26362 /.vim
parentf49c21799b766df07366fda223bcfe21490a3920 (diff)
downloaddotfiles-c99a90c7dd3e6f25e9584848ca7d2b9ad82bb453.tar.gz
dotfiles-c99a90c7dd3e6f25e9584848ca7d2b9ad82bb453.tar.bz2
dotfiles-c99a90c7dd3e6f25e9584848ca7d2b9ad82bb453.zip
rewrote xquery syntax
Diffstat (limited to '.vim')
-rw-r--r--.vim/syntax/xquery.vim101
1 files changed, 47 insertions, 54 deletions
diff --git a/.vim/syntax/xquery.vim b/.vim/syntax/xquery.vim
index 70eaf9b..ebada94 100644
--- a/.vim/syntax/xquery.vim
+++ b/.vim/syntax/xquery.vim
@@ -1,10 +1,8 @@
" Vim syntax file
-" Language: XQuery
-" Author: Jean-Marc Vanel <http://jmvanel.free.fr/>
-" Last Change: mar jui 12 18:04:05 CEST 2005
-" Filenames: *.xq
-" URL: http://jmvanel.free.fr/vim/xquery.vim
-" $Id: xquery.vim,v 1.1 2005/07/18 21:44:56 vimboss Exp $
+" Language: XQuery
+" Author: René Neumann <necoro@necoro.eu>
+" Orig Author: Jean-Marc Vanel <http://jmvanel.free.fr/>
+" Updated: 06/22/2010
" REFERENCES:
" [1] http://www.w3.org/TR/xquery/
@@ -14,7 +12,7 @@ if exists("b:current_syntax")
finish
endif
-" - is allowed in kewords
+" - is allowed in keywords
setlocal iskeyword+=-
runtime syntax/xml.vim
@@ -22,64 +20,59 @@ runtime syntax/xml.vim
syn case match
" From XQuery grammar:
-syn keyword xqueryStatement ancestor ancestor-or-self and as ascending at attribute base-uri boundary-space by case cast castable child collation construction declare default descendant descendant-or-self descending div document element else empty encoding eq every except external following following-sibling for function ge greatest gt idiv if import in inherit-namespaces instance intersect is le least let lt mod module namespace ne no of or order ordered ordering parent preceding preceding-sibling preserve return satisfies schema self some stable strip then to treat typeswitch union unordered validate variable version where xmlspace xquery yes
+syn keyword xqStatement ancestor ancestor-or-self and as ascending at attribute base-uri boundary-space by case cast castable child collation construction declare default descendant descendant-or-self descending div document element else empty encoding eq every except external following following-sibling for function ge greatest gt idiv if import in inherit-namespaces instance intersect is le least let lt mod module namespace ne no of or order ordered ordering parent preceding preceding-sibling preserve return satisfies schema self some stable strip then to treat typeswitch union unordered validate variable version where xmlspace xquery yes
" TODO contains clashes with vim keyword
-syn keyword xqueryFunction abs adjust-date-to-timezone adjust-dateTime-to-timezone adjust-time-to-timezone avg base-uri boolean ceiling codepoint-equal codepoints-to-string collection compare concat count current-date current-dateTime current-time data dateTime day-from-date day-from-dateTime days-from-duration deep-equal default-collation distinct-values doc doc-available document-uri empty ends-with error escape-uri exactly-one exists false floor hours-from-dateTime hours-from-duration hours-from-time id idref implicit-timezone in-scope-prefixes index-of insert-before lang last local-name local-name-from-QName lower-case matches max min minutes-from-dateTime minutes-from-duration minutes-from-time month-from-date month-from-dateTime months-from-duration name namespace-uri namespace-uri-for-prefix namespace-uri-from-QName nilled node-name normalize-space normalize-unicode not number one-or-more position prefix-from-QName QName remove replace resolve-QName resolve-uri reverse root round round-half-to-even seconds-from-dateTime seconds-from-duration seconds-from-time starts-with static-base-uri string string-join string-length string-to-codepoints subsequence substring substring-after substring-before sum timezone-from-date timezone-from-dateTime timezone-from-time tokenize trace translate true unordered upper-case year-from-date year-from-dateTime years-from-duration zero-or-one
+syn keyword xqFunction abs adjust-date-to-timezone adjust-dateTime-to-timezone adjust-time-to-timezone avg base-uri boolean ceiling codepoint-equal codepoints-to-string collection compare concat count current-date current-dateTime current-time data dateTime day-from-date day-from-dateTime days-from-duration deep-equal default-collation distinct-values doc doc-available document-uri empty ends-with error escape-uri exactly-one exists false floor hours-from-dateTime hours-from-duration hours-from-time id idref implicit-timezone in-scope-prefixes index-of insert-before lang last local-name local-name-from-QName lower-case matches max min minutes-from-dateTime minutes-from-duration minutes-from-time month-from-date month-from-dateTime months-from-duration name namespace-uri namespace-uri-for-prefix namespace-uri-from-QName nilled node-name normalize-space normalize-unicode not number one-or-more position prefix-from-QName QName remove replace resolve-QName resolve-uri reverse root round round-half-to-even seconds-from-dateTime seconds-from-duration seconds-from-time starts-with static-base-uri string string-join string-length string-to-codepoints subsequence substring substring-after substring-before sum timezone-from-date timezone-from-dateTime timezone-from-time tokenize trace translate true unordered upper-case year-from-date year-from-dateTime years-from-duration zero-or-one
-syn keyword xqueryOperator add-dayTimeDuration-to-date add-dayTimeDuration-to-dateTime add-dayTimeDuration-to-time add-dayTimeDurations add-yearMonthDuration-to-date add-yearMonthDuration-to-dateTime add-yearMonthDurations base64Binary-equal boolean-equal boolean-greater-than boolean-less-than concatenate date-equal date-greater-than date-less-than dateTime-equal dateTime-greater-than dateTime-less-than dayTimeDuration-equal dayTimeDuration-greater-than dayTimeDuration-less-than divide-dayTimeDuration divide-dayTimeDuration-by-dayTimeDuration divide-yearMonthDuration divide-yearMonthDuration-by-yearMonthDuration except gDay-equal gMonth-equal gMonthDay-equal gYear-equal gYearMonth-equal hexBinary-equal intersect is-same-node multiply-dayTimeDuration multiply-yearMonthDuration node-after node-before NOTATION-equal numeric-add numeric-divide numeric-equal numeric-greater-than numeric-integer-divide numeric-less-than numeric-mod numeric-multiply numeric-subtract numeric-unary-minus numeric-unary-plus QName-equal subtract-dates-yielding-dayTimeDuration subtract-dateTimes-yielding-dayTimeDuration subtract-dayTimeDuration-from-date subtract-dayTimeDuration-from-dateTime subtract-dayTimeDuration-from-time subtract-dayTimeDurations subtract-times subtract-yearMonthDuration-from-date subtract-yearMonthDuration-from-dateTime subtract-yearMonthDurations time-equal time-greater-than time-less-than to union yearMonthDuration-equal yearMonthDuration-greater-than yearMonthDuration-less-than
+syn keyword xqOperator add-dayTimeDuration-to-date add-dayTimeDuration-to-dateTime add-dayTimeDuration-to-time add-dayTimeDurations add-yearMonthDuration-to-date add-yearMonthDuration-to-dateTime add-yearMonthDurations base64Binary-equal boolean-equal boolean-greater-than boolean-less-than concatenate date-equal date-greater-than date-less-than dateTime-equal dateTime-greater-than dateTime-less-than dayTimeDuration-equal dayTimeDuration-greater-than dayTimeDuration-less-than divide-dayTimeDuration divide-dayTimeDuration-by-dayTimeDuration divide-yearMonthDuration divide-yearMonthDuration-by-yearMonthDuration except gDay-equal gMonth-equal gMonthDay-equal gYear-equal gYearMonth-equal hexBinary-equal intersect is-same-node multiply-dayTimeDuration multiply-yearMonthDuration node-after node-before NOTATION-equal numeric-add numeric-divide numeric-equal numeric-greater-than numeric-integer-divide numeric-less-than numeric-mod numeric-multiply numeric-subtract numeric-unary-minus numeric-unary-plus QName-equal subtract-dates-yielding-dayTimeDuration subtract-dateTimes-yielding-dayTimeDuration subtract-dayTimeDuration-from-date subtract-dayTimeDuration-from-dateTime subtract-dayTimeDuration-from-time subtract-dayTimeDurations subtract-times subtract-yearMonthDuration-from-date subtract-yearMonthDuration-from-dateTime subtract-yearMonthDurations time-equal time-greater-than time-less-than to union yearMonthDuration-equal yearMonthDuration-greater-than yearMonthDuration-less-than
-syn match xqueryType "xs:\(\|Datatype\|primitive\|string\|boolean\|float\|double\|decimal\|duration\|dateTime\|time\|date\|gYearMonth\|gYear\|gMonthDay\|gDay\|gMonth\|hexBinary\|base64Binary\|anyURI\|QName\|NOTATION\|\|normalizedString\|token\|language\|IDREFS\|ENTITIES\|NMTOKEN\|NMTOKENS\|Name\|NCName\|ID\|IDREF\|ENTITY\|integer\|nonPositiveInteger\|negativeInteger\|long\|int\|short\|byte\|nonNegativeInteger\|unsignedLong\|unsignedInt\|unsignedShort\|unsignedByte\|positiveInteger\)"
+syn match xqType "xs:\(\|Datatype\|primitive\|string\|boolean\|float\|double\|decimal\|duration\|dateTime\|time\|date\|gYearMonth\|gYear\|gMonthDay\|gDay\|gMonth\|hexBinary\|base64Binary\|anyURI\|QName\|NOTATION\|\|normalizedString\|token\|language\|IDREFS\|ENTITIES\|NMTOKEN\|NMTOKENS\|Name\|NCName\|ID\|IDREF\|ENTITY\|integer\|nonPositiveInteger\|negativeInteger\|long\|int\|short\|byte\|nonNegativeInteger\|unsignedLong\|unsignedInt\|unsignedShort\|unsignedByte\|positiveInteger\)"
" From XPath grammar:
-syn keyword xqueryXPath some every in in satisfies if then else to div idiv mod union intersect except instance of treat castable cast eq ne lt le gt ge is child descendant attribute self descendant-or-self following-sibling following namespace parent ancestor preceding-sibling preceding ancestor-or-self void item node document-node text comment processing-instruction attribute schema-attribute schema-element
+syn keyword xqXPath some every in in satisfies if then else to div idiv mod union intersect except instance of treat castable cast eq ne lt le gt ge is child descendant attribute self descendant-or-self following-sibling following namespace parent ancestor preceding-sibling preceding ancestor-or-self void item node document-node text comment processing-instruction attribute schema-attribute schema-element
" eXist extensions
-syn match xqExist "&="
+syn match xqExist "&="
" XQdoc
-syn match XQdoc contained "@\(param\|return\|author\)\>"
-
-highlight def link xqueryStatement Statement
-highlight def link xqueryFunction Function
-highlight def link xqueryOperator Operator
-highlight def link xqueryType Type
-highlight def link xqueryXPath Operator
-highlight def link XQdoc Special
-highlight def link xqExist Operator
-
-"floating point number, with dot, optional exponent
-syn match cFloat "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\="
-"floating point number, starting with a dot, optional exponent
-syn match cFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
-"floating point number, without dot, with exponent
-syn match cFloat "\d\+e[-+]\=\d\+[fl]\=\>"
-syn match cNumber "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>"
-syn match cNumber "\<\d\+\>"
-highlight def link cNumber Number
-highlight def link cFloat Number
-
-syn region xqComment start='(:' excludenl end=':)' contains=XQdoc
-highlight def link xqComment Comment
-" syntax match xqVariable "$\w\+"
-syntax match xqVariable +$\<[a-zA-Z:_][-.0-9a-zA-Z0-9:_]*\>+
-highlight def link xqVariable Identifier
-
-" Redefine the default XML highlighting:
-highlight def link xmlTag Structure
-highlight def link xmlTagName Structure
-highlight def link xmlEndTag Structure
-
-syntax match xqSeparator ",\|;"
-highlight link xqSeparator Operator
-
-syn region xqString start=+"+ end=+"+
-highlight def link xqString String
-
-syn region xqCode transparent contained start='{' excludenl end='}' contains=xqueryFunction,xqCode,xmlRegionBis,xqComment,xqueryStatement,xmlString,xqSeparator,cNumber,xqVariable,xqString keepend extend
+syn match XQdoc contained "@\(param\|return\|author\)\>"
-syn region xmlRegionBis start=+<\z([^ /!?<>"']\+\)+ skip=+<!--\_.\{-}-->+ end=+</\z1\_\s\{-}>+ end=+/>+ fold contains=xmlTag,xmlEndTag,xmlCdata,xmlRegionBis,xmlComment,xmlEntity,xmlProcessing,xqCode keepend extend
+" floating point number, with dot, optional exponent
+syn match xqFloat "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\="
+" floating point number, starting with a dot, optional exponent
+syn match xqFloat "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
+" floating point number, without dot, with exponent
+syn match xqFloat "\d\+e[-+]\=\d\+[fl]\=\>"
+syn match xqNumber "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>"
+syn match xqNumber "\<\d\+\>"
+
+syn region xqString start=+"+ end=+"+
+syn region xqComment start='(:' excludenl end=':)' contains=XQdoc
-syn region List transparent start='(' excludenl end=')' contains=xqCode,xmlRegion,xqComment,xqSeparator,xqueryStatement,xqVariable,xqueryType,xqString,xqueryFunction keepend extend
+syn match xqVariable "$\<[a-zA-Z:_][-.0-9a-zA-Z0-9:_]*\>"
+syn match xqSeparator ",\|;"
+syn region xqCode transparent contained start='{' excludenl end='}' contains=xqFunction,xqCode,xmlRegionBis,xqComment,xqStatement,xmlString,xqSeparator,xqNumber,xqVariable,xqString keepend extend
+syn region xmlRegionBis start=+<\z([^ /!?<>"']\+\)+ skip=+<!--\_.\{-}-->+ end=+</\z1\_\s\{-}>+ end=+/>+ fold contains=xmlTag,xmlEndTag,xmlCdata,xmlRegionBis,xmlComment,xmlEntity,xmlProcessing,xqCode keepend extend
+hi def link xqNumber Number
+hi def link xqFloat Number
+hi def link xqString String
+hi def link xqVariable Identifier
+hi def link xqComment Comment
+hi def link xqSeparator Operator
+hi def link xqStatement Statement
+hi def link xqFunction Function
+hi def link xqOperator Operator
+hi def link xqType Type
+hi def link xqXPath Operator
+hi def link XQdoc Special
+hi def link xqExist Operator
+
+" override the xml highlighting
+hi link xmlTag Structure
+hi link xmlTagName Structure
+hi link xmlEndTag Structure
+
+let b:current_syntax = "xquery"