updated for version 7.0001
This commit is contained in:
295
runtime/syntax/sqr.vim
Normal file
295
runtime/syntax/sqr.vim
Normal file
@ -0,0 +1,295 @@
|
||||
" Vim syntax file
|
||||
" Language: Structured Query Report Writer (SQR)
|
||||
" Maintainer: Nathan Stratton Treadway (nathanst at ontko dot com)
|
||||
" URL: http://www.ontko.com/sqr/#editor_config_files
|
||||
"
|
||||
" Modification History:
|
||||
" 2002-Apr-12: Updated for SQR v6.x
|
||||
" 2002-Jul-30: Added { and } to iskeyword definition
|
||||
" 2003-Oct-15: Allow "." in variable names
|
||||
" highlight entire open '... literal when it contains
|
||||
" "''" inside it (e.g. "'I can''t say" is treated
|
||||
" as one open string, not one terminated and one open)
|
||||
" {} variables can occur inside of '...' literals
|
||||
"
|
||||
" Thanks to the previous maintainer of this file, Jeff Lanzarotta:
|
||||
" http://lanzarotta.tripod.com/vim.html
|
||||
" jefflanzarotta at yahoo dot com
|
||||
|
||||
" 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
|
||||
|
||||
if version >= 600
|
||||
setlocal iskeyword=@,48-57,_,-,#,$,{,}
|
||||
else
|
||||
set iskeyword=@,48-57,_,-,#,$,{,}
|
||||
endif
|
||||
|
||||
syn case ignore
|
||||
|
||||
" BEGIN GENERATED SECTION ============================================
|
||||
|
||||
" Generated by generate_vim_syntax.sqr at 2002/04/11 13:04
|
||||
" (based on the UltraEdit syntax file for SQR 6.1.4
|
||||
" found at http://www.ontko.com/sqr/#editor_config_files )
|
||||
|
||||
syn keyword sqrSection begin-footing begin-heading begin-procedure
|
||||
syn keyword sqrSection begin-program begin-report begin-setup
|
||||
syn keyword sqrSection end-footing end-heading end-procedure
|
||||
syn keyword sqrSection end-program end-report end-setup
|
||||
|
||||
syn keyword sqrParagraph alter-color-map alter-conection
|
||||
syn keyword sqrParagraph alter-locale alter-printer alter-report
|
||||
syn keyword sqrParagraph begin-document begin-execute begin-select
|
||||
syn keyword sqrParagraph begin-sql declare-chart declare-image
|
||||
syn keyword sqrParagraph declare-color-map declare-conection
|
||||
syn keyword sqrParagraph declare-layout declare-printer
|
||||
syn keyword sqrParagraph declare-report declare-procedure
|
||||
syn keyword sqrParagraph declare-toc declare-variable end-declare
|
||||
syn keyword sqrParagraph end-document end-select exit-select end-sql
|
||||
syn keyword sqrParagraph load-lookup
|
||||
|
||||
syn keyword sqrReserved #current-column #current-date #current-line
|
||||
syn keyword sqrReserved #end-file #page-count #return-status
|
||||
syn keyword sqrReserved #sql-count #sql-status #sqr-max-columns
|
||||
syn keyword sqrReserved #sqr-max-lines #sqr-pid #sqr-toc-level
|
||||
syn keyword sqrReserved #sqr-toc-page $sqr-database {sqr-database}
|
||||
syn keyword sqrReserved $sqr-dbcs {sqr-dbcs} $sqr-encoding
|
||||
syn keyword sqrReserved {sqr-encoding} $sqr-encoding-console
|
||||
syn keyword sqrReserved {sqr-encoding-console}
|
||||
syn keyword sqrReserved $sqr-encoding-database
|
||||
syn keyword sqrReserved {sqr-encoding-database}
|
||||
syn keyword sqrReserved $sqr-encoding-file-input
|
||||
syn keyword sqrReserved {sqr-encoding-file-input}
|
||||
syn keyword sqrReserved $sqr-encoding-file-output
|
||||
syn keyword sqrReserved {sqr-encoding-file-output}
|
||||
syn keyword sqrReserved $sqr-encoding-report-input
|
||||
syn keyword sqrReserved {sqr-encoding-report-input}
|
||||
syn keyword sqrReserved $sqr-encoding-report-output
|
||||
syn keyword sqrReserved {sqr-encoding-report-output}
|
||||
syn keyword sqrReserved $sqr-encoding-source {sqr-encoding-source}
|
||||
syn keyword sqrReserved $sql-error $sqr-hostname {sqr-hostname}
|
||||
syn keyword sqrReserved $sqr-locale $sqr-platform {sqr-platform}
|
||||
syn keyword sqrReserved $sqr-program $sqr-report $sqr-toc-text
|
||||
syn keyword sqrReserved $sqr-ver $username
|
||||
|
||||
syn keyword sqrPreProc #define #else #end-if #endif #if #ifdef
|
||||
syn keyword sqrPreProc #ifndef #include
|
||||
|
||||
syn keyword sqrCommand add array-add array-divide array-multiply
|
||||
syn keyword sqrCommand array-subtract ask break call clear-array
|
||||
syn keyword sqrCommand close columns commit concat connect
|
||||
syn keyword sqrCommand create-array create-color-palette date-time
|
||||
syn keyword sqrCommand display divide do dollar-symbol else encode
|
||||
syn keyword sqrCommand end-evaluate end-if end-while evaluate
|
||||
syn keyword sqrCommand execute extract find get get-color goto
|
||||
syn keyword sqrCommand graphic if input last-page let lookup
|
||||
syn keyword sqrCommand lowercase mbtosbs money-symbol move
|
||||
syn keyword sqrCommand multiply new-page new-report next-column
|
||||
syn keyword sqrCommand next-listing no-formfeed open page-number
|
||||
syn keyword sqrCommand page-size position print print-bar-code
|
||||
syn keyword sqrCommand print-chart print-direct print-image
|
||||
syn keyword sqrCommand printer-deinit printer-init put read
|
||||
syn keyword sqrCommand rollback security set-color set-delay-print
|
||||
syn keyword sqrCommand set-generations set-levels set-members
|
||||
syn keyword sqrCommand sbtombs show stop string subtract toc-entry
|
||||
syn keyword sqrCommand unstring uppercase use use-column
|
||||
syn keyword sqrCommand use-printer-type use-procedure use-report
|
||||
syn keyword sqrCommand while write
|
||||
|
||||
syn keyword sqrParam 3d-effects after after-bold after-page
|
||||
syn keyword sqrParam after-report after-toc and as at-end before
|
||||
syn keyword sqrParam background batch-mode beep before-bold
|
||||
syn keyword sqrParam before-page before-report before-toc blink
|
||||
syn keyword sqrParam bold border bottom-margin box break by
|
||||
syn keyword sqrParam caption center char char-size char-width
|
||||
syn keyword sqrParam chars-inch chart-size checksum cl
|
||||
syn keyword sqrParam clear-line clear-screen color color-palette
|
||||
syn keyword sqrParam cs color_ data-array
|
||||
syn keyword sqrParam data-array-column-count
|
||||
syn keyword sqrParam data-array-column-labels
|
||||
syn keyword sqrParam data-array-row-count data-labels date
|
||||
syn keyword sqrParam date-edit-mask date-seperator
|
||||
syn keyword sqrParam day-of-week-case day-of-week-full
|
||||
syn keyword sqrParam day-of-week-short decimal decimal-seperator
|
||||
syn keyword sqrParam default-numeric delay distinct dot-leader
|
||||
syn keyword sqrParam edit-option-ad edit-option-am
|
||||
syn keyword sqrParam edit-option-bc edit-option-na
|
||||
syn keyword sqrParam edit-option-pm encoding entry erase-page
|
||||
syn keyword sqrParam extent field fill fixed fixed_nolf float
|
||||
syn keyword sqrParam font font-style font-type footing
|
||||
syn keyword sqrParam footing-size foreground for-append
|
||||
syn keyword sqrParam for-reading for-reports for-tocs
|
||||
syn keyword sqrParam for-writing format formfeed from goto-top
|
||||
syn keyword sqrParam group having heading heading-size height
|
||||
syn keyword sqrParam horz-line image-size in indentation
|
||||
syn keyword sqrParam init-string input-date-edit-mask insert
|
||||
syn keyword sqrParam integer into item-color item-size key
|
||||
syn keyword sqrParam layout left-margin legend legend-placement
|
||||
syn keyword sqrParam legend-presentation legend-title level
|
||||
syn keyword sqrParam line-height line-size line-width lines-inch
|
||||
syn keyword sqrParam local locale loops max-columns max-lines
|
||||
syn keyword sqrParam maxlen money money-edit-mask money-sign
|
||||
syn keyword sqrParam money-sign-location months-case months-full
|
||||
syn keyword sqrParam months-short name need newline newpage
|
||||
syn keyword sqrParam no-advance nolf noline noprompt normal not
|
||||
syn keyword sqrParam nowait number number-edit-mask on-break
|
||||
syn keyword sqrParam on-error or order orientation page-depth
|
||||
syn keyword sqrParam paper-size pie-segment-explode
|
||||
syn keyword sqrParam pie-segment-percent-display
|
||||
syn keyword sqrParam pie-segment-quantity-display pitch
|
||||
syn keyword sqrParam point-markers point-size printer
|
||||
syn keyword sqrParam printer-type quiet record reset-string
|
||||
syn keyword sqrParam return_value reverse right-margin rows save
|
||||
syn keyword sqrParam select size skip skiplines sort source
|
||||
syn keyword sqrParam sqr-database sqr-platform startup-file
|
||||
syn keyword sqrParam status stop sub-title symbol-set system
|
||||
syn keyword sqrParam table text thousand-seperator
|
||||
syn keyword sqrParam time-seperator times title to toc
|
||||
syn keyword sqrParam top-margin type underline update using
|
||||
syn keyword sqrParam value vary vert-line wait warn when
|
||||
syn keyword sqrParam when-other where with x-axis-grid
|
||||
syn keyword sqrParam x-axis-label x-axis-major-increment
|
||||
syn keyword sqrParam x-axis-major-tick-marks x-axis-max-value
|
||||
syn keyword sqrParam x-axis-min-value x-axis-minor-increment
|
||||
syn keyword sqrParam x-axis-minor-tick-marks x-axis-rotate
|
||||
syn keyword sqrParam x-axis-scale x-axis-tick-mark-placement xor
|
||||
syn keyword sqrParam y-axis-grid y-axis-label
|
||||
syn keyword sqrParam y-axis-major-increment
|
||||
syn keyword sqrParam y-axis-major-tick-marks y-axis-max-value
|
||||
syn keyword sqrParam y-axis-min-value y-axis-minor-increment
|
||||
syn keyword sqrParam y-axis-minor-tick-marks y-axis-scale
|
||||
syn keyword sqrParam y-axis-tick-mark-placement y2-type
|
||||
syn keyword sqrParam y2-data-array y2-data-array-row-count
|
||||
syn keyword sqrParam y2-data-array-column-count
|
||||
syn keyword sqrParam y2-data-array-column-labels
|
||||
syn keyword sqrParam y2-axis-color-palette y2-axis-label
|
||||
syn keyword sqrParam y2-axis-major-increment
|
||||
syn keyword sqrParam y2-axis-major-tick-marks y2-axis-max-value
|
||||
syn keyword sqrParam y2-axis-min-value y2-axis-minor-increment
|
||||
syn keyword sqrParam y2-axis-minor-tick-marks y2-axis-scale
|
||||
|
||||
syn keyword sqrFunction abs acos asin atan array ascii asciic ceil
|
||||
syn keyword sqrFunction cos cosh chr cond deg delete dateadd
|
||||
syn keyword sqrFunction datediff datenow datetostr e10 exp edit
|
||||
syn keyword sqrFunction exists floor getenv instr instrb isblank
|
||||
syn keyword sqrFunction isnull log log10 length lengthb lengthp
|
||||
syn keyword sqrFunction lengtht lower lpad ltrim mod nvl power rad
|
||||
syn keyword sqrFunction round range replace roman rpad rtrim rename
|
||||
syn keyword sqrFunction sign sin sinh sqrt substr substrb substrp
|
||||
syn keyword sqrFunction substrt strtodate tan tanh trunc to_char
|
||||
syn keyword sqrFunction to_multi_byte to_number to_single_byte
|
||||
syn keyword sqrFunction transform translate unicode upper wrapdepth
|
||||
|
||||
" END GENERATED SECTION ==============================================
|
||||
|
||||
" Variables
|
||||
syn match sqrVariable /\(\$\|#\|&\)\(\k\|\.\)*/
|
||||
|
||||
|
||||
" Debug compiler directives
|
||||
syn match sqrPreProc /\s*#debug\a\=\(\s\|$\)/
|
||||
syn match sqrSubstVar /{\k*}/
|
||||
|
||||
|
||||
" Strings
|
||||
" Note: if an undoubled ! is found, this is not a valid string
|
||||
" (SQR will treat the end of the line as a comment)
|
||||
syn match sqrString /'\(!!\|[^!']\)*'/ contains=sqrSubstVar
|
||||
syn match sqrStrOpen /'\(!!\|''\|[^!']\)*$/
|
||||
" If we find a ' followed by an unmatched ! before a matching ',
|
||||
" flag the error.
|
||||
syn match sqrError /'\(!!\|[^'!]\)*![^!]/me=e-1
|
||||
syn match sqrError /'\(!!\|[^'!]\)*!$/
|
||||
|
||||
" Numbers:
|
||||
syn match sqrNumber /-\=\<\d*\.\=[0-9_]\>/
|
||||
|
||||
|
||||
|
||||
" Comments:
|
||||
" Handle comments that start with "!=" specially; they are only valid
|
||||
" in the first column of the source line. Also, "!!" is only treated
|
||||
" as a start-comment if there is only whitespace ahead of it on the line.
|
||||
|
||||
syn keyword sqrTodo TODO FIXME XXX DEBUG NOTE ###
|
||||
syn match sqrTodo /???/
|
||||
|
||||
if version >= 600
|
||||
" See also the sqrString section above for handling of ! characters
|
||||
" inside of strings. (Those patterns override the ones below.)
|
||||
syn match sqrComment /!\@<!!\([^!=].*\|$\)/ contains=sqrTodo
|
||||
" the ! can't be preceeded by another !,
|
||||
" and must be followed by at least one
|
||||
" character other than ! or =, or immediately
|
||||
" by the end-of-line
|
||||
syn match sqrComment /^!=.*/ contains=sqrTodo
|
||||
syn match sqrComment /^!!.*/ contains=sqrTodo
|
||||
syn match sqrError /^\s\+\zs!=.*/
|
||||
" it's an error to have "!=" preceeded by
|
||||
" just whitespace on the line ("!="
|
||||
" preceeded by non-whitespace is treated
|
||||
" as neither a comment nor an error, since
|
||||
" it is often correct, i.e.
|
||||
" if #count != 7
|
||||
syn match sqrError /.\+\zs!!.*/
|
||||
" a "!!" anywhere but at the beginning of
|
||||
" the line is always an error
|
||||
else "For versions before 6.0, same idea as above but we are limited
|
||||
"to simple patterns only. Also, the sqrString patterns above
|
||||
"don't seem to take precedence in v5 as they do in v6, so
|
||||
"we split the last rule to ignore comments found inside of
|
||||
"string literals.
|
||||
syn match sqrComment /!\([^!=].*\|$\)/ contains=sqrTodo
|
||||
syn match sqrComment /^!=.*/ contains=sqrTodo
|
||||
syn match sqrComment /^!!.*/ contains=sqrTodo
|
||||
syn match sqrError /^\s\+!=.*/
|
||||
syn match sqrError /^[^'!]\+!!/
|
||||
" flag !! on lines that don't have ! or '
|
||||
syn match sqrError /^\([^!']*'[^']*'[^!']*\)\+!!/
|
||||
" flag !! found after matched ' ' chars
|
||||
" (that aren't also commented)
|
||||
endif
|
||||
|
||||
|
||||
" 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 hightlighting yet.
|
||||
if version >= 508 || !exists("did_sqr_syn_inits")
|
||||
if version < 508
|
||||
let did_sqr_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink sqrSection Statement
|
||||
HiLink sqrParagraph Statement
|
||||
HiLink sqrReserved Statement
|
||||
HiLink sqrParameter Statement
|
||||
HiLink sqrPreProc PreProc
|
||||
HiLink sqrSubstVar PreProc
|
||||
HiLink sqrCommand Statement
|
||||
HiLink sqrParam Type
|
||||
HiLink sqrFunction Special
|
||||
|
||||
HiLink sqrString String
|
||||
HiLink sqrStrOpen Todo
|
||||
HiLink sqrNumber Number
|
||||
HiLink sqrVariable Identifier
|
||||
|
||||
HiLink sqrComment Comment
|
||||
HiLink sqrTodo Todo
|
||||
HiLink sqrError Error
|
||||
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "sqr"
|
||||
|
||||
" vim: ts=8 sw=2
|
||||
Reference in New Issue
Block a user