github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/scripts/crlogictest.vim (about) 1 " Vim syntax file 2 " Language: CockroachDB logic tests 3 " Maintainer: Radu Berinde <radu@cockroachlabs.com> 4 " 5 " To use, copy the file to ~/.vim/syntax/ 6 " Recommended in .vimrc: 7 " autocmd BufNewFile,BufRead */sql/logictest/testdata/* set filetype=crlogictest tw=0 8 9 if exists("b:current_syntax") 10 finish 11 endif 12 13 syn match Comment display '#.*$' contains=Todo 14 15 syn match let display '^let' skipwhite nextgroup=letVar 16 syn match letVar display '\$[a-zA-Z][a-zA-Z0-9_]*' 17 18 syn match stmt display '^statement' skipwhite nextgroup=stmtOk,stmtErr 19 syn match stmtOk contained display 'ok\|OK' 20 syn match stmtErr contained display 'error' skipwhite nextgroup=errorStr 21 syn match errorStr contained display '.*$' 22 23 syn match query display '^query' skipwhite nextgroup=stmtErr,queryCols 24 syn match queryCols contained display '[A-Z]\+' skipwhite nextgroup=queryKeyword 25 syn keyword queryKeyword contained nosort partialsort rowsort valuesort colnames trimdecimals 26 27 syn match Number '\<\d\+\>#\=' 28 29 syn region Constant start=+'+ end=+'+ 30 31 syn match separator display '^----$' 32 syn region results matchgroup=separator start='^----$' end='^$' contains=badWhitespace,number,parens,braces,constant,valueKeyword 33 34 " Highlight trailing whitespace and tabs. 35 syn match badWhitespace display '\s\+$' 36 syn match badWhitespace display '\t' 37 38 syn match parens display '[()]' 39 syn match braces display '[{}]' 40 41 hi def link parens Identifier 42 hi def link braces Special 43 hi def link separator Special 44 hi def link stmt Special 45 hi def link stmtOk Identifier 46 hi def link stmtErr Identifier 47 hi def link errorStr Constant 48 hi def link let Special 49 hi def link query Special 50 hi def link queryCols Type 51 hi def link queryKeyword Special 52 hi def link badWhitespace ErrorMsg 53 hi letVar ctermFg=Red 54 55 syn keyword Todo TODO XXX 56 57 syn case ignore 58 59 syn keyword valueKeyword FALSE TRUE NULL 60 61 syn keyword sqlKeyword ACTION ADD ALTER AT BACKUP BEGIN BLOB BY CASCADE COLUMNS COMMIT COMMITTED CONFLICT CONSTRAINTS COPY COVERING CUBE CURRENT CYCLE 62 syn keyword sqlKeyword DATA DATABASE DATABASES DAY DEALLOCATE DELETE DOUBLE DROP ENCODING EXECUTE EXPLAIN FILTER FIRST FOLLOWING FORCE_INDEX GRANTS 63 syn keyword sqlKeyword HELP HIGH HOUR INCREMENTAL INDEXES INSERT INT2VECTOR INTERLEAVE ISOLATION KEY KEYS 64 syn keyword sqlKeyword LC_COLLATE LC_CTYPE LEVEL LOCAL LOW MATCH MINUTE MONTH NAMES NAN NEXT NO NORMAL NO_INDEX_JOIN NULLS OF OFF OID OPTIONS ORDINALITY OVER 65 syn keyword sqlKeyword PARENT PARTIAL PARTITION PASSWORD PRECEDING PREPARE PRIORITY RANGE RANGES READ RECURSIVE REF REGCLASS REGPROC REGPROCEDURE REGNAMESPACE 66 syn keyword sqlKeyword REGTYPE RELEASE RENAME REPEATABLE RESTORE RESTRICT REVOKE ROLLBACK ROLLUP ROWS STATUS SAVEPOINT SEARCH SECOND SERIALIZABLE SESSION 67 syn keyword sqlKeyword SET SHOW SIMPLE SNAPSHOT SQL START STDIN STORING STRICT SPLIT SYSTEM TABLES TEMPLATE TEXT TRANSACTION TRUNCATE TYPE UNBOUNDED UNCOMMITTED UNKNOWN 68 syn keyword sqlKeyword UPDATE UPSERT USERS VALID VALIDATE VALUE VARYING WITHIN WITHOUT YEAR ZONE 69 70 syn keyword sqlReserved ALL ANALYSE ANALYZE AND ANY ARRAY AS ASC ASYMMETRIC BOTH CASE CAST CHECK COLLATE COLUMN CONSTRAINT CREATE 71 syn keyword sqlReserved CURRENT_CATALOG CURRENT_DATE CURRENT_ROLE CURRENT_TIME CURRENT_TIMESTAMP CURRENT_USER DEFAULT DEFERRABLE 72 syn keyword sqlReserved DESC DISTINCT DO ELSE END EXCEPT FAMILY FETCH FOR FOREIGN FROM GRANT GROUP HAVING IN INDEX 73 syn keyword sqlReserved INITIALLY INTERSECT INTO LATERAL LEADING LIMIT LOCALTIME LOCALTIMESTAMP NOT NOTHING OFFSET ON ONLY OR 74 syn keyword sqlReserved ORDER PLACING PRIMARY REFERENCES RETURNING SELECT SESSION_USER SOME SYMMETRIC TABLE THEN TO TRAILING 75 syn keyword sqlReserved UNION UNIQUE USER USING VARIADIC VIEW WHEN WHERE WINDOW WITH 76 77 syn keyword sqlType ANNOTATE_TYPE BETWEEN BIGINT BIGSERIAL BIT BOOL BOOLEAN BYTEA BYTES CHAR CHARACTER CHARACTERISTICS COALESCE DATE 78 syn keyword sqlType DEC DECIMAL EXISTS EXTRACT EXTRACT_DURATION FLOAT GREATEST GROUPING HISTOGRAM IF IFNULL INT INT2 INT4 INT8 INT64 INTEGER INTERVAL LEAST 79 syn keyword sqlType NAME NULLIF NUMERIC OUT OVERLAY POSITION PRECISION REAL ROW SEQUENCE SERIAL SERIAL2 SERIAL4 SERIAL8 SMALLINT SMALLSERIAL STATISTICS STRING SUBSTRING 80 syn keyword sqlType TIME TIMESTAMP TIMESTAMPTZ TREAT TRIM VALUES VARCHAR 81 82 syn keyword sqlKeyword COLLATION CROSS FULL INNER ILIKE IS JOIN LEFT LIKE NATURAL OUTER OVERLAPS RIGHT SIMILAR 83 84 syn keyword sqlFunc MIN MAX CORR COUNT SUM_INT AVG SUM STDDEV VARIANCE BOOL_AND BOOL_OR ARRAY_AGG BIT_AND BIT_OR 85 86 87 hi def link valueKeyword Constant 88 hi def link sqlFunc Function 89 hi def link sqlType Type 90 hi def link sqlReserved Keyword 91 hi def link sqlKeyword Keyword 92 93 let b:current_syntax = "crlogictest"