blob: e45e31c3954f0d9b7cf5180a1849a316da56fff9 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: Informix 4GL
3" Maintainer: Rafal M. Sulejman <rms@poczta.onet.pl>
4" Update: 26 Sep 2002
5" Changes:
6" - Dynamic 4GL/FourJs/4GL 7.30 pseudo comment directives (Julian Bridle)
7" - Conditionally allow case insensitive keywords (Julian Bridle)
8"
9
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020010" quit when a syntax file was already loaded
11if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +000012 finish
13endif
14
15if exists("fgl_ignore_case")
16 syntax case ignore
17else
18 syntax case match
19endif
20syn keyword fglKeyword ABORT ABS ABSOLUTE ACCEPT ACCESS ACOS ADD AFTER ALL
21syn keyword fglKeyword ALLOCATE ALTER AND ANSI ANY APPEND ARG_VAL ARRAY ARR_COUNT
22syn keyword fglKeyword ARR_CURR AS ASC ASCENDING ASCII ASIN AT ATAN ATAN2 ATTACH
23syn keyword fglKeyword ATTRIBUTE ATTRIBUTES AUDIT AUTHORIZATION AUTO AUTONEXT AVERAGE AVG
24syn keyword fglKeyword BEFORE BEGIN BETWEEN BLACK BLINK BLUE BOLD BORDER BOTH BOTTOM
25syn keyword fglKeyword BREAK BUFFERED BY BYTE
26syn keyword fglKeyword CALL CASCADE CASE CHAR CHARACTER CHARACTER_LENGTH CHAR_LENGTH
27syn keyword fglKeyword CHECK CLASS_ORIGIN CLEAR CLIPPED CLOSE CLUSTER COLOR
28syn keyword fglKeyword COLUMN COLUMNS COMMAND COMMENT COMMENTS COMMIT COMMITTED
29syn keyword fglKeyword COMPOSITES COMPRESS CONCURRENT CONNECT CONNECTION
30syn keyword fglKeyword CONNECTION_ALIAS CONSTRAINED CONSTRAINT CONSTRAINTS CONSTRUCT
31syn keyword fglKeyword CONTINUE CONTROL COS COUNT CREATE CURRENT CURSOR CYAN
32syn keyword fglKeyword DATA DATABASE DATASKIP DATE DATETIME DAY DBA DBINFO DBSERVERNAME
33syn keyword fglKeyword DEALLOCATE DEBUG DEC DECIMAL DECLARE DEFAULT DEFAULTS DEFER
34syn keyword fglKeyword DEFERRED DEFINE DELETE DELIMITER DELIMITERS DESC DESCENDING
35syn keyword fglKeyword DESCRIBE DESCRIPTOR DETACH DIAGNOSTICS DIM DIRTY DISABLED
36syn keyword fglKeyword DISCONNECT DISPLAY DISTINCT DISTRIBUTIONS DO DORMANT DOUBLE
37syn keyword fglKeyword DOWN DOWNSHIFT DROP
38syn keyword fglKeyword EACH ELIF ELSE ENABLED END ENTRY ERROR ERRORLOG ERR_GET
39syn keyword fglKeyword ERR_PRINT ERR_QUIT ESC ESCAPE EVERY EXCEPTION EXCLUSIVE
40syn keyword fglKeyword EXEC EXECUTE EXISTS EXIT EXP EXPLAIN EXPRESSION EXTEND EXTENT
41syn keyword fglKeyword EXTERN EXTERNAL
42syn keyword fglKeyword F1 F10 F11 F12 F13 F14 F15 F16 F17 F18 F19 F2 F20 F21 F22 F23
43syn keyword fglKeyword F24 F25 F26 F27 F28 F29 F3 F30 F31 F32 F33 F34 F35 F36 F37 F38
44syn keyword fglKeyword F39 F4 F40 F41 F42 F43 F44 F45 F46 F47 F48 F49 F5 F50 F51 F52
45syn keyword fglKeyword F53 F54 F55 F56 F57 F58 F59 F6 F60 F61 F62 F63 F64 F7 F8 F9
46syn keyword fglKeyword FALSE FETCH FGL_GETENV FGL_KEYVAL FGL_LASTKEY FIELD FIELD_TOUCHED
47syn keyword fglKeyword FILE FILLFACTOR FILTERING FINISH FIRST FLOAT FLUSH FOR
48syn keyword fglKeyword FOREACH FOREIGN FORM FORMAT FORMONLY FORTRAN FOUND FRACTION
49syn keyword fglKeyword FRAGMENT FREE FROM FUNCTION GET_FLDBUF GLOBAL GLOBALS GO GOTO
50syn keyword fglKeyword GRANT GREEN GROUP HAVING HEADER HELP HEX HIDE HIGH HOLD HOUR
51syn keyword fglKeyword IDATA IF ILENGTH IMMEDIATE IN INCLUDE INDEX INDEXES INDICATOR
52syn keyword fglKeyword INFIELD INIT INITIALIZE INPUT INSERT INSTRUCTIONS INT INTEGER
53syn keyword fglKeyword INTERRUPT INTERVAL INTO INT_FLAG INVISIBLE IS ISAM ISOLATION
54syn keyword fglKeyword ITYPE
55syn keyword fglKeyword KEY LABEL
56syn keyword fglKeyword LANGUAGE LAST LEADING LEFT LENGTH LET LIKE LINE
57syn keyword fglKeyword LINENO LINES LOAD LOCATE LOCK LOG LOG10 LOGN LONG LOW
58syn keyword fglKeyword MAGENTA MAIN MARGIN MATCHES MAX MDY MEDIUM MEMORY MENU MESSAGE
59syn keyword fglKeyword MESSAGE_LENGTH MESSAGE_TEXT MIN MINUTE MOD MODE MODIFY MODULE
60syn keyword fglKeyword MONEY MONTH MORE
61syn keyword fglKeyword NAME NCHAR NEED NEW NEXT NEXTPAGE NO NOCR NOENTRY NONE NORMAL
62syn keyword fglKeyword NOT NOTFOUND NULL NULLABLE NUMBER NUMERIC NUM_ARGS NVARCHAR
63syn keyword fglKeyword OCTET_LENGTH OF OFF OLD ON ONLY OPEN OPTIMIZATION OPTION OPTIONS
64syn keyword fglKeyword OR ORDER OTHERWISE OUTER OUTPUT
65syn keyword fglKeyword PAGE PAGENO PAUSE PDQPRIORITY PERCENT PICTURE PIPE POW PRECISION
66syn keyword fglKeyword PREPARE PREVIOUS PREVPAGE PRIMARY PRINT PRINTER PRIOR PRIVATE
67syn keyword fglKeyword PRIVILEGES PROCEDURE PROGRAM PROMPT PUBLIC PUT
68syn keyword fglKeyword QUIT QUIT_FLAG
69syn keyword fglKeyword RAISE RANGE READ READONLY REAL RECORD RECOVER RED REFERENCES
70syn keyword fglKeyword REFERENCING REGISTER RELATIVE REMAINDER REMOVE RENAME REOPTIMIZATION
71syn keyword fglKeyword REPEATABLE REPORT REQUIRED RESOLUTION RESOURCE RESTRICT
72syn keyword fglKeyword RESUME RETURN RETURNED_SQLSTATE RETURNING REVERSE REVOKE RIGHT
73syn keyword fglKeyword ROBIN ROLE ROLLBACK ROLLFORWARD ROOT ROUND ROW ROWID ROWIDS
74syn keyword fglKeyword ROWS ROW_COUNT RUN
75syn keyword fglKeyword SCALE SCHEMA SCREEN SCROLL SCR_LINE SECOND SECTION SELECT
76syn keyword fglKeyword SERIAL SERIALIZABLE SERVER_NAME SESSION SET SET_COUNT SHARE
77syn keyword fglKeyword SHORT SHOW SITENAME SIZE SIZEOF SKIP SLEEP SMALLFLOAT SMALLINT
78syn keyword fglKeyword SOME SPACE SPACES SQL SQLAWARN SQLCA SQLCODE SQLERRD SQLERRM
79syn keyword fglKeyword SQLERROR SQLERRP SQLSTATE SQLWARNING SQRT STABILITY START
80syn keyword fglKeyword STARTLOG STATIC STATISTICS STATUS STDEV STEP STOP STRING STRUCT
81syn keyword fglKeyword SUBCLASS_ORIGIN SUM SWITCH SYNONYM SYSTEM
82syn keyword fglKeyword SysBlobs SysChecks SysColAuth SysColDepend SysColumns
83syn keyword fglKeyword SysConstraints SysDefaults SysDepend SysDistrib SysFragAuth
84syn keyword fglKeyword SysFragments SysIndexes SysObjState SysOpClstr SysProcAuth
85syn keyword fglKeyword SysProcBody SysProcPlan SysProcedures SysReferences SysRoleAuth
86syn keyword fglKeyword SysSynTable SysSynonyms SysTabAuth SysTables SysTrigBody
87syn keyword fglKeyword SysTriggers SysUsers SysViews SysViolations
88syn keyword fglKeyword TAB TABLE TABLES TAN TEMP TEXT THEN THROUGH THRU TIME TO
89syn keyword fglKeyword TODAY TOP TOTAL TRACE TRAILER TRAILING TRANSACTION TRIGGER
90syn keyword fglKeyword TRIGGERS TRIM TRUE TRUNC TYPE TYPEDEF
91syn keyword fglKeyword UNCOMMITTED UNCONSTRAINED UNDERLINE UNION UNIQUE UNITS UNLOAD
92syn keyword fglKeyword UNLOCK UNSIGNED UP UPDATE UPSHIFT USER USING
93syn keyword fglKeyword VALIDATE VALUE VALUES VARCHAR VARIABLES VARIANCE VARYING
94syn keyword fglKeyword VERIFY VIEW VIOLATIONS
95syn keyword fglKeyword WAIT WAITING WARNING WEEKDAY WHEN WHENEVER WHERE WHILE WHITE
96syn keyword fglKeyword WINDOW WITH WITHOUT WORDWRAP WORK WRAP WRITE
97syn keyword fglKeyword YEAR YELLOW
98syn keyword fglKeyword ZEROFILL
99
100" Strings and characters:
101syn region fglString start=+"+ skip=+\\\\\|\\"+ end=+"+
102syn region fglString start=+'+ skip=+\\\\\|\\"+ end=+'+
103
104" Numbers:
105syn match fglNumber "-\=\<[0-9]*\.\=[0-9_]\>"
106
107" Comments:
108syn region fglComment start="{" end="}"
109syn match fglComment "--.*"
110syn match fglComment "#.*"
111
112" Not a comment even though it looks like one (Dynamic 4GL/FourJs directive)
113syn match fglSpecial "--#"
114syn match fglSpecial "--@"
115
116syn sync ccomment fglComment
117
118" Define the default highlighting.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200119" Only when an item doesn't have highlighting yet
120command -nargs=+ HiLink hi def link <args>
Bram Moolenaar071d4272004-06-13 20:20:40 +0000121
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200122HiLink fglComment Comment
123"HiLink fglKeyword fglSpecial
124HiLink fglKeyword fglStatement
125HiLink fglNumber Number
126HiLink fglOperator fglStatement
127HiLink fglSpecial Special
128HiLink fglStatement Statement
129HiLink fglString String
130HiLink fglType Type
Bram Moolenaar071d4272004-06-13 20:20:40 +0000131
Bram Moolenaar89bcfda2016-08-30 23:26:57 +0200132delcommand HiLink
Bram Moolenaar071d4272004-06-13 20:20:40 +0000133
134let b:current_syntax = "fgl"
135
136" vim: ts=8