1*c572da5fSBram Moolenaar" Vim syntax file 2*c572da5fSBram Moolenaar" Language: N1QL / Couchbase Server 3*c572da5fSBram Moolenaar" Maintainer: Eugene Ciurana <n1ql AT cime.net> 4*c572da5fSBram Moolenaar" Version: 1.0 5*c572da5fSBram Moolenaar" Source: https://github.com/pr3d4t0r/n1ql-vim-syntax 6*c572da5fSBram Moolenaar" 7*c572da5fSBram Moolenaar" License: Vim is Charityware. n1ql.vim syntax is Charityware. 8*c572da5fSBram Moolenaar" (c) Copyright 2017 by Eugene Ciurana / pr3d4t0r. Licensed 9*c572da5fSBram Moolenaar" under the standard VIM LICENSE - Vim command :help uganda.txt 10*c572da5fSBram Moolenaar" for details. 11*c572da5fSBram Moolenaar" 12*c572da5fSBram Moolenaar" Questions, comments: <n1ql AT cime.net> 13*c572da5fSBram Moolenaar" https://ciurana.eu/pgp, https://keybase.io/pr3d4t0r 14*c572da5fSBram Moolenaar" 15*c572da5fSBram Moolenaar" vim: set fileencoding=utf-8: 16*c572da5fSBram Moolenaar 17*c572da5fSBram Moolenaar 18*c572da5fSBram Moolenaarif exists("b:current_syntax") 19*c572da5fSBram Moolenaar finish 20*c572da5fSBram Moolenaarendif 21*c572da5fSBram Moolenaar 22*c572da5fSBram Moolenaar 23*c572da5fSBram Moolenaarsyn case ignore 24*c572da5fSBram Moolenaar 25*c572da5fSBram Moolenaarsyn keyword n1qlSpecial DATASTORES 26*c572da5fSBram Moolenaarsyn keyword n1qlSpecial DUAL 27*c572da5fSBram Moolenaarsyn keyword n1qlSpecial FALSE 28*c572da5fSBram Moolenaarsyn keyword n1qlSpecial INDEXES 29*c572da5fSBram Moolenaarsyn keyword n1qlSpecial KEYSPACES 30*c572da5fSBram Moolenaarsyn keyword n1qlSpecial MISSING 31*c572da5fSBram Moolenaarsyn keyword n1qlSpecial NAMESPACES 32*c572da5fSBram Moolenaarsyn keyword n1qlSpecial NULL 33*c572da5fSBram Moolenaarsyn keyword n1qlSpecial TRUE 34*c572da5fSBram Moolenaar 35*c572da5fSBram Moolenaar 36*c572da5fSBram Moolenaar" 37*c572da5fSBram Moolenaar" *** keywords *** 38*c572da5fSBram Moolenaar" 39*c572da5fSBram Moolenaarsyn keyword n1qlKeyword ALL 40*c572da5fSBram Moolenaarsyn keyword n1qlKeyword ANY 41*c572da5fSBram Moolenaarsyn keyword n1qlKeyword ASC 42*c572da5fSBram Moolenaarsyn keyword n1qlKeyword BEGIN 43*c572da5fSBram Moolenaarsyn keyword n1qlKeyword BETWEEN 44*c572da5fSBram Moolenaarsyn keyword n1qlKeyword BREAK 45*c572da5fSBram Moolenaarsyn keyword n1qlKeyword BUCKET 46*c572da5fSBram Moolenaarsyn keyword n1qlKeyword CALL 47*c572da5fSBram Moolenaarsyn keyword n1qlKeyword CASE 48*c572da5fSBram Moolenaarsyn keyword n1qlKeyword CAST 49*c572da5fSBram Moolenaarsyn keyword n1qlKeyword CLUSTER 50*c572da5fSBram Moolenaarsyn keyword n1qlKeyword COLLATE 51*c572da5fSBram Moolenaarsyn keyword n1qlKeyword COLLECTION 52*c572da5fSBram Moolenaarsyn keyword n1qlKeyword CONNECT 53*c572da5fSBram Moolenaarsyn keyword n1qlKeyword CONTINUE 54*c572da5fSBram Moolenaarsyn keyword n1qlKeyword CORRELATE 55*c572da5fSBram Moolenaarsyn keyword n1qlKeyword COVER 56*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DATABASE 57*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DATASET 58*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DATASTORE 59*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DECLARE 60*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DECREMENT 61*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DERIVED 62*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DESC 63*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DESCRIBE 64*c572da5fSBram Moolenaarsyn keyword n1qlKeyword DO 65*c572da5fSBram Moolenaarsyn keyword n1qlKeyword EACH 66*c572da5fSBram Moolenaarsyn keyword n1qlKeyword ELEMENT 67*c572da5fSBram Moolenaarsyn keyword n1qlKeyword ELSE 68*c572da5fSBram Moolenaarsyn keyword n1qlKeyword END 69*c572da5fSBram Moolenaarsyn keyword n1qlKeyword EVERY 70*c572da5fSBram Moolenaarsyn keyword n1qlKeyword EXCLUDE 71*c572da5fSBram Moolenaarsyn keyword n1qlKeyword EXISTS 72*c572da5fSBram Moolenaarsyn keyword n1qlKeyword FETCH 73*c572da5fSBram Moolenaarsyn keyword n1qlKeyword FIRST 74*c572da5fSBram Moolenaarsyn keyword n1qlKeyword FLATTEN 75*c572da5fSBram Moolenaarsyn keyword n1qlKeyword FOR 76*c572da5fSBram Moolenaarsyn keyword n1qlKeyword FORCE 77*c572da5fSBram Moolenaarsyn keyword n1qlKeyword FROM 78*c572da5fSBram Moolenaarsyn keyword n1qlKeyword FUNCTION 79*c572da5fSBram Moolenaarsyn keyword n1qlKeyword GROUP 80*c572da5fSBram Moolenaarsyn keyword n1qlKeyword GSI 81*c572da5fSBram Moolenaarsyn keyword n1qlKeyword HAVING 82*c572da5fSBram Moolenaarsyn keyword n1qlKeyword IF 83*c572da5fSBram Moolenaarsyn keyword n1qlKeyword IGNORE 84*c572da5fSBram Moolenaarsyn keyword n1qlKeyword INCLUDE 85*c572da5fSBram Moolenaarsyn keyword n1qlKeyword INCREMENT 86*c572da5fSBram Moolenaarsyn keyword n1qlKeyword INDEX 87*c572da5fSBram Moolenaarsyn keyword n1qlKeyword INITIAL 88*c572da5fSBram Moolenaarsyn keyword n1qlKeyword INLINE 89*c572da5fSBram Moolenaarsyn keyword n1qlKeyword INNER 90*c572da5fSBram Moolenaarsyn keyword n1qlKeyword INTO 91*c572da5fSBram Moolenaarsyn keyword n1qlKeyword KEY 92*c572da5fSBram Moolenaarsyn keyword n1qlKeyword KEYS 93*c572da5fSBram Moolenaarsyn keyword n1qlKeyword KEYSPACE 94*c572da5fSBram Moolenaarsyn keyword n1qlKeyword KNOWN 95*c572da5fSBram Moolenaarsyn keyword n1qlKeyword LAST 96*c572da5fSBram Moolenaarsyn keyword n1qlKeyword LET 97*c572da5fSBram Moolenaarsyn keyword n1qlKeyword LETTING 98*c572da5fSBram Moolenaarsyn keyword n1qlKeyword LIMIT 99*c572da5fSBram Moolenaarsyn keyword n1qlKeyword LOOP 100*c572da5fSBram Moolenaarsyn keyword n1qlKeyword LSM 101*c572da5fSBram Moolenaarsyn keyword n1qlKeyword MAP 102*c572da5fSBram Moolenaarsyn keyword n1qlKeyword MAPPING 103*c572da5fSBram Moolenaarsyn keyword n1qlKeyword MATCHED 104*c572da5fSBram Moolenaarsyn keyword n1qlKeyword MATERIALIZED 105*c572da5fSBram Moolenaarsyn keyword n1qlKeyword MERGE 106*c572da5fSBram Moolenaarsyn keyword n1qlKeyword NAMESPACE 107*c572da5fSBram Moolenaarsyn keyword n1qlKeyword NEST 108*c572da5fSBram Moolenaarsyn keyword n1qlKeyword OPTION 109*c572da5fSBram Moolenaarsyn keyword n1qlKeyword ORDER 110*c572da5fSBram Moolenaarsyn keyword n1qlKeyword OUTER 111*c572da5fSBram Moolenaarsyn keyword n1qlKeyword OVER 112*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PARSE 113*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PARTITION 114*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PASSWORD 115*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PATH 116*c572da5fSBram Moolenaarsyn keyword n1qlKeyword POOL 117*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PRIMARY 118*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PRIVATE 119*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PRIVILEGE 120*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PROCEDURE 121*c572da5fSBram Moolenaarsyn keyword n1qlKeyword PUBLIC 122*c572da5fSBram Moolenaarsyn keyword n1qlKeyword REALM 123*c572da5fSBram Moolenaarsyn keyword n1qlKeyword REDUCE 124*c572da5fSBram Moolenaarsyn keyword n1qlKeyword RETURN 125*c572da5fSBram Moolenaarsyn keyword n1qlKeyword RETURNING 126*c572da5fSBram Moolenaarsyn keyword n1qlKeyword ROLE 127*c572da5fSBram Moolenaarsyn keyword n1qlKeyword SATISFIES 128*c572da5fSBram Moolenaarsyn keyword n1qlKeyword SCHEMA 129*c572da5fSBram Moolenaarsyn keyword n1qlKeyword SELF 130*c572da5fSBram Moolenaarsyn keyword n1qlKeyword SEMI 131*c572da5fSBram Moolenaarsyn keyword n1qlKeyword SHOW 132*c572da5fSBram Moolenaarsyn keyword n1qlKeyword START 133*c572da5fSBram Moolenaarsyn keyword n1qlKeyword STATISTICS 134*c572da5fSBram Moolenaarsyn keyword n1qlKeyword SYSTEM 135*c572da5fSBram Moolenaarsyn keyword n1qlKeyword THEN 136*c572da5fSBram Moolenaarsyn keyword n1qlKeyword TRANSACTION 137*c572da5fSBram Moolenaarsyn keyword n1qlKeyword TRIGGER 138*c572da5fSBram Moolenaarsyn keyword n1qlKeyword UNDER 139*c572da5fSBram Moolenaarsyn keyword n1qlKeyword UNKNOWN 140*c572da5fSBram Moolenaarsyn keyword n1qlKeyword UNSET 141*c572da5fSBram Moolenaarsyn keyword n1qlKeyword USE 142*c572da5fSBram Moolenaarsyn keyword n1qlKeyword USER 143*c572da5fSBram Moolenaarsyn keyword n1qlKeyword USING 144*c572da5fSBram Moolenaarsyn keyword n1qlKeyword VALIDATE 145*c572da5fSBram Moolenaarsyn keyword n1qlKeyword VALUE 146*c572da5fSBram Moolenaarsyn keyword n1qlKeyword VALUED 147*c572da5fSBram Moolenaarsyn keyword n1qlKeyword VALUES 148*c572da5fSBram Moolenaarsyn keyword n1qlKeyword VIEW 149*c572da5fSBram Moolenaarsyn keyword n1qlKeyword WHEN 150*c572da5fSBram Moolenaarsyn keyword n1qlKeyword WHERE 151*c572da5fSBram Moolenaarsyn keyword n1qlKeyword WHILE 152*c572da5fSBram Moolenaarsyn keyword n1qlKeyword WITHIN 153*c572da5fSBram Moolenaarsyn keyword n1qlKeyword WORK 154*c572da5fSBram Moolenaar 155*c572da5fSBram Moolenaar 156*c572da5fSBram Moolenaar" 157*c572da5fSBram Moolenaar" *** functions *** 158*c572da5fSBram Moolenaar" 159*c572da5fSBram Moolenaarsyn keyword n1qlOperator ABS 160*c572da5fSBram Moolenaarsyn keyword n1qlOperator ACOS 161*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_AGG 162*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_APPEND 163*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_AVG 164*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_CONCAT 165*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_CONTAINS 166*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_COUNT 167*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_DISTINCT 168*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_FLATTEN 169*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_IFNULL 170*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_INSERT 171*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_INTERSECT 172*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_LENGTH 173*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_MAX 174*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_MIN 175*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_POSITION 176*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_PREPEND 177*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_PUT 178*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_RANGE 179*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_REMOVE 180*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_REPEAT 181*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_REPLACE 182*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_REVERSE 183*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_SORT 184*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_START 185*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_SUM 186*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_SYMDIFF 187*c572da5fSBram Moolenaarsyn keyword n1qlOperator ARRAY_UNION 188*c572da5fSBram Moolenaarsyn keyword n1qlOperator ASIN 189*c572da5fSBram Moolenaarsyn keyword n1qlOperator ATAN 190*c572da5fSBram Moolenaarsyn keyword n1qlOperator ATAN2 191*c572da5fSBram Moolenaarsyn keyword n1qlOperator AVG 192*c572da5fSBram Moolenaarsyn keyword n1qlOperator BASE64 193*c572da5fSBram Moolenaarsyn keyword n1qlOperator BASE64_DECODE 194*c572da5fSBram Moolenaarsyn keyword n1qlOperator BASE64_ENCODE 195*c572da5fSBram Moolenaarsyn keyword n1qlOperator CEIL 196*c572da5fSBram Moolenaarsyn keyword n1qlOperator CLOCK_LOCAL 197*c572da5fSBram Moolenaarsyn keyword n1qlOperator CLOCK_STR 198*c572da5fSBram Moolenaarsyn keyword n1qlOperator CLOCK_TZ 199*c572da5fSBram Moolenaarsyn keyword n1qlOperator CLOCK_UTC 200*c572da5fSBram Moolenaarsyn keyword n1qlOperator CLOCL_MILLIS 201*c572da5fSBram Moolenaarsyn keyword n1qlOperator CONTAINS 202*c572da5fSBram Moolenaarsyn keyword n1qlOperator COS 203*c572da5fSBram Moolenaarsyn keyword n1qlOperator COUNT 204*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_ADD_MILLIS 205*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_ADD_STR 206*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_DIFF_MILLIS 207*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_DIFF_STR 208*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_FORMAT_STR 209*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_PART_MILLIS 210*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_PART_STR 211*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_RANGE_MILLIS 212*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_RANGE_STR 213*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_TRUC_STR 214*c572da5fSBram Moolenaarsyn keyword n1qlOperator DATE_TRUNC_MILLIS 215*c572da5fSBram Moolenaarsyn keyword n1qlOperator DECODE_JSON 216*c572da5fSBram Moolenaarsyn keyword n1qlOperator DEGREES 217*c572da5fSBram Moolenaarsyn keyword n1qlOperator DURATION_TO_STR 218*c572da5fSBram Moolenaarsyn keyword n1qlOperator E 219*c572da5fSBram Moolenaarsyn keyword n1qlOperator ENCODED_SIZE 220*c572da5fSBram Moolenaarsyn keyword n1qlOperator ENCODE_JSON 221*c572da5fSBram Moolenaarsyn keyword n1qlOperator EXP 222*c572da5fSBram Moolenaarsyn keyword n1qlOperator FLOOR 223*c572da5fSBram Moolenaarsyn keyword n1qlOperator GREATEST 224*c572da5fSBram Moolenaarsyn keyword n1qlOperator IFINF 225*c572da5fSBram Moolenaarsyn keyword n1qlOperator IFMISSING 226*c572da5fSBram Moolenaarsyn keyword n1qlOperator IFMISSINGORNULL 227*c572da5fSBram Moolenaarsyn keyword n1qlOperator IFNAN 228*c572da5fSBram Moolenaarsyn keyword n1qlOperator IFNANORINF 229*c572da5fSBram Moolenaarsyn keyword n1qlOperator IFNULL 230*c572da5fSBram Moolenaarsyn keyword n1qlOperator INITCAP 231*c572da5fSBram Moolenaarsyn keyword n1qlOperator ISARRAY 232*c572da5fSBram Moolenaarsyn keyword n1qlOperator ISATOM 233*c572da5fSBram Moolenaarsyn keyword n1qlOperator ISBOOLEAN 234*c572da5fSBram Moolenaarsyn keyword n1qlOperator ISNUMBER 235*c572da5fSBram Moolenaarsyn keyword n1qlOperator ISOBJECT 236*c572da5fSBram Moolenaarsyn keyword n1qlOperator ISSTRING 237*c572da5fSBram Moolenaarsyn keyword n1qlOperator LEAST 238*c572da5fSBram Moolenaarsyn keyword n1qlOperator LENGTH 239*c572da5fSBram Moolenaarsyn keyword n1qlOperator LN 240*c572da5fSBram Moolenaarsyn keyword n1qlOperator LOG 241*c572da5fSBram Moolenaarsyn keyword n1qlOperator LOWER 242*c572da5fSBram Moolenaarsyn keyword n1qlOperator LTRIM 243*c572da5fSBram Moolenaarsyn keyword n1qlOperator MAX 244*c572da5fSBram Moolenaarsyn keyword n1qlOperator META 245*c572da5fSBram Moolenaarsyn keyword n1qlOperator MILLIS 246*c572da5fSBram Moolenaarsyn keyword n1qlOperator MILLIS_TO_LOCAL 247*c572da5fSBram Moolenaarsyn keyword n1qlOperator MILLIS_TO_STR 248*c572da5fSBram Moolenaarsyn keyword n1qlOperator MILLIS_TO_TZ 249*c572da5fSBram Moolenaarsyn keyword n1qlOperator MILLIS_TO_UTC 250*c572da5fSBram Moolenaarsyn keyword n1qlOperator MILLIS_TO_ZONE_NAME 251*c572da5fSBram Moolenaarsyn keyword n1qlOperator MIN 252*c572da5fSBram Moolenaarsyn keyword n1qlOperator MISSINGIF 253*c572da5fSBram Moolenaarsyn keyword n1qlOperator NANIF 254*c572da5fSBram Moolenaarsyn keyword n1qlOperator NEGINFIF 255*c572da5fSBram Moolenaarsyn keyword n1qlOperator NOW_LOCAL 256*c572da5fSBram Moolenaarsyn keyword n1qlOperator NOW_MILLIS 257*c572da5fSBram Moolenaarsyn keyword n1qlOperator NOW_STR 258*c572da5fSBram Moolenaarsyn keyword n1qlOperator NOW_TZ 259*c572da5fSBram Moolenaarsyn keyword n1qlOperator NOW_UTC 260*c572da5fSBram Moolenaarsyn keyword n1qlOperator NULLIF 261*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_ADD 262*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_CONCAT 263*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_INNER_PAIRS 264*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_INNER_VALUES 265*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_LENGTH 266*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_NAMES 267*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_PAIRS 268*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_PUT 269*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_REMOVE 270*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_RENAME 271*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_REPLACE 272*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_UNWRAP 273*c572da5fSBram Moolenaarsyn keyword n1qlOperator OBJECT_VALUES 274*c572da5fSBram Moolenaarsyn keyword n1qlOperator PI 275*c572da5fSBram Moolenaarsyn keyword n1qlOperator POLY_LENGTH 276*c572da5fSBram Moolenaarsyn keyword n1qlOperator POSINIF 277*c572da5fSBram Moolenaarsyn keyword n1qlOperator POSITION 278*c572da5fSBram Moolenaarsyn keyword n1qlOperator POWER 279*c572da5fSBram Moolenaarsyn keyword n1qlOperator RADIANS 280*c572da5fSBram Moolenaarsyn keyword n1qlOperator RANDOM 281*c572da5fSBram Moolenaarsyn keyword n1qlOperator REGEXP_CONTAINS 282*c572da5fSBram Moolenaarsyn keyword n1qlOperator REGEXP_LIKE 283*c572da5fSBram Moolenaarsyn keyword n1qlOperator REGEXP_POSITION 284*c572da5fSBram Moolenaarsyn keyword n1qlOperator REGEXP_REPLACE 285*c572da5fSBram Moolenaarsyn keyword n1qlOperator REPEAT 286*c572da5fSBram Moolenaarsyn keyword n1qlOperator REPLACE 287*c572da5fSBram Moolenaarsyn keyword n1qlOperator REVERSE 288*c572da5fSBram Moolenaarsyn keyword n1qlOperator ROUND 289*c572da5fSBram Moolenaarsyn keyword n1qlOperator RTRIM 290*c572da5fSBram Moolenaarsyn keyword n1qlOperator SIGN 291*c572da5fSBram Moolenaarsyn keyword n1qlOperator SIN 292*c572da5fSBram Moolenaarsyn keyword n1qlOperator SPLIT 293*c572da5fSBram Moolenaarsyn keyword n1qlOperator SQRT 294*c572da5fSBram Moolenaarsyn keyword n1qlOperator STR_TO_DURATION 295*c572da5fSBram Moolenaarsyn keyword n1qlOperator STR_TO_MILLIS 296*c572da5fSBram Moolenaarsyn keyword n1qlOperator STR_TO_TZ 297*c572da5fSBram Moolenaarsyn keyword n1qlOperator STR_TO_UTC 298*c572da5fSBram Moolenaarsyn keyword n1qlOperator STR_TO_ZONE_NAME 299*c572da5fSBram Moolenaarsyn keyword n1qlOperator SUBSTR 300*c572da5fSBram Moolenaarsyn keyword n1qlOperator SUFFIXES 301*c572da5fSBram Moolenaarsyn keyword n1qlOperator SUM 302*c572da5fSBram Moolenaarsyn keyword n1qlOperator TAN 303*c572da5fSBram Moolenaarsyn keyword n1qlOperator TITLE 304*c572da5fSBram Moolenaarsyn keyword n1qlOperator TOARRAY 305*c572da5fSBram Moolenaarsyn keyword n1qlOperator TOATOM 306*c572da5fSBram Moolenaarsyn keyword n1qlOperator TOBOOLEAN 307*c572da5fSBram Moolenaarsyn keyword n1qlOperator TOKENS 308*c572da5fSBram Moolenaarsyn keyword n1qlOperator TONUMBER 309*c572da5fSBram Moolenaarsyn keyword n1qlOperator TOOBJECT 310*c572da5fSBram Moolenaarsyn keyword n1qlOperator TOSTRING 311*c572da5fSBram Moolenaarsyn keyword n1qlOperator TRIM 312*c572da5fSBram Moolenaarsyn keyword n1qlOperator TRUNC 313*c572da5fSBram Moolenaarsyn keyword n1qlOperator TYPE 314*c572da5fSBram Moolenaarsyn keyword n1qlOperator UPPER 315*c572da5fSBram Moolenaarsyn keyword n1qlOperator UUID 316*c572da5fSBram Moolenaarsyn keyword n1qlOperator WEEKDAY_MILLIS 317*c572da5fSBram Moolenaarsyn keyword n1qlOperator WEEKDAY_STR 318*c572da5fSBram Moolenaar 319*c572da5fSBram Moolenaar 320*c572da5fSBram Moolenaar" 321*c572da5fSBram Moolenaar" *** operators *** 322*c572da5fSBram Moolenaar" 323*c572da5fSBram Moolenaarsyn keyword n1qlOperator AND 324*c572da5fSBram Moolenaarsyn keyword n1qlOperator AS 325*c572da5fSBram Moolenaarsyn keyword n1qlOperator BY 326*c572da5fSBram Moolenaarsyn keyword n1qlOperator DISTINCT 327*c572da5fSBram Moolenaarsyn keyword n1qlOperator EXCEPT 328*c572da5fSBram Moolenaarsyn keyword n1qlOperator ILIKE 329*c572da5fSBram Moolenaarsyn keyword n1qlOperator IN 330*c572da5fSBram Moolenaarsyn keyword n1qlOperator INTERSECT 331*c572da5fSBram Moolenaarsyn keyword n1qlOperator IS 332*c572da5fSBram Moolenaarsyn keyword n1qlOperator JOIN 333*c572da5fSBram Moolenaarsyn keyword n1qlOperator LEFT 334*c572da5fSBram Moolenaarsyn keyword n1qlOperator LIKE 335*c572da5fSBram Moolenaarsyn keyword n1qlOperator MINUS 336*c572da5fSBram Moolenaarsyn keyword n1qlOperator NEST 337*c572da5fSBram Moolenaarsyn keyword n1qlOperator NESTING 338*c572da5fSBram Moolenaarsyn keyword n1qlOperator NOT 339*c572da5fSBram Moolenaarsyn keyword n1qlOperator OFFSET 340*c572da5fSBram Moolenaarsyn keyword n1qlOperator ON 341*c572da5fSBram Moolenaarsyn keyword n1qlOperator OR 342*c572da5fSBram Moolenaarsyn keyword n1qlOperator OUT 343*c572da5fSBram Moolenaarsyn keyword n1qlOperator RIGHT 344*c572da5fSBram Moolenaarsyn keyword n1qlOperator SOME 345*c572da5fSBram Moolenaarsyn keyword n1qlOperator TO 346*c572da5fSBram Moolenaarsyn keyword n1qlOperator UNION 347*c572da5fSBram Moolenaarsyn keyword n1qlOperator UNIQUE 348*c572da5fSBram Moolenaarsyn keyword n1qlOperator UNNEST 349*c572da5fSBram Moolenaarsyn keyword n1qlOperator VIA 350*c572da5fSBram Moolenaarsyn keyword n1qlOperator WITH 351*c572da5fSBram Moolenaarsyn keyword n1qlOperator XOR 352*c572da5fSBram Moolenaar 353*c572da5fSBram Moolenaar 354*c572da5fSBram Moolenaar" 355*c572da5fSBram Moolenaar" *** statements *** 356*c572da5fSBram Moolenaar" 357*c572da5fSBram Moolenaarsyn keyword n1qlStatement ALTER 358*c572da5fSBram Moolenaarsyn keyword n1qlStatement ANALYZE 359*c572da5fSBram Moolenaarsyn keyword n1qlStatement BUILD 360*c572da5fSBram Moolenaarsyn keyword n1qlStatement COMMIT 361*c572da5fSBram Moolenaarsyn keyword n1qlStatement CREATE 362*c572da5fSBram Moolenaarsyn keyword n1qlStatement DELETE 363*c572da5fSBram Moolenaarsyn keyword n1qlStatement DROP 364*c572da5fSBram Moolenaarsyn keyword n1qlStatement EXECUTE 365*c572da5fSBram Moolenaarsyn keyword n1qlStatement EXPLAIN 366*c572da5fSBram Moolenaarsyn keyword n1qlStatement GRANT 367*c572da5fSBram Moolenaarsyn keyword n1qlStatement INFER 368*c572da5fSBram Moolenaarsyn keyword n1qlStatement INSERT 369*c572da5fSBram Moolenaarsyn keyword n1qlStatement MERGE 370*c572da5fSBram Moolenaarsyn keyword n1qlStatement PREPARE 371*c572da5fSBram Moolenaarsyn keyword n1qlStatement RENAME 372*c572da5fSBram Moolenaarsyn keyword n1qlStatement REVOKE 373*c572da5fSBram Moolenaarsyn keyword n1qlStatement ROLLBACK 374*c572da5fSBram Moolenaarsyn keyword n1qlStatement SELECT 375*c572da5fSBram Moolenaarsyn keyword n1qlStatement SET 376*c572da5fSBram Moolenaarsyn keyword n1qlStatement TRUNCATE 377*c572da5fSBram Moolenaarsyn keyword n1qlStatement UPDATE 378*c572da5fSBram Moolenaarsyn keyword n1qlStatement UPSERT 379*c572da5fSBram Moolenaar 380*c572da5fSBram Moolenaar 381*c572da5fSBram Moolenaar" 382*c572da5fSBram Moolenaar" *** types *** 383*c572da5fSBram Moolenaar" 384*c572da5fSBram Moolenaarsyn keyword n1qlType ARRAY 385*c572da5fSBram Moolenaarsyn keyword n1qlType BINARY 386*c572da5fSBram Moolenaarsyn keyword n1qlType BOOLEAN 387*c572da5fSBram Moolenaarsyn keyword n1qlType NUMBER 388*c572da5fSBram Moolenaarsyn keyword n1qlType OBJECT 389*c572da5fSBram Moolenaarsyn keyword n1qlType RAW 390*c572da5fSBram Moolenaarsyn keyword n1qlType STRING 391*c572da5fSBram Moolenaar 392*c572da5fSBram Moolenaar 393*c572da5fSBram Moolenaar" 394*c572da5fSBram Moolenaar" *** strings and characters *** 395*c572da5fSBram Moolenaar" 396*c572da5fSBram Moolenaarsyn region n1qlString start=+"+ skip=+\\\\\|\\"+ end=+"+ 397*c572da5fSBram Moolenaarsyn region n1qlString start=+'+ skip=+\\\\\|\\'+ end=+'+ 398*c572da5fSBram Moolenaarsyn region n1qlBucketSpec start=+`+ skip=+\\\\\|\\'+ end=+`+ 399*c572da5fSBram Moolenaar 400*c572da5fSBram Moolenaar 401*c572da5fSBram Moolenaar" 402*c572da5fSBram Moolenaar" *** numbers *** 403*c572da5fSBram Moolenaar" 404*c572da5fSBram Moolenaarsyn match n1qlNumber "-\=\<\d*\.\=[0-9_]\>" 405*c572da5fSBram Moolenaar 406*c572da5fSBram Moolenaar 407*c572da5fSBram Moolenaar" 408*c572da5fSBram Moolenaar" *** comments *** 409*c572da5fSBram Moolenaar" 410*c572da5fSBram Moolenaarsyn region n1qlComment start="/\*" end="\*/" contains=n1qlTODO 411*c572da5fSBram Moolenaarsyn match n1qlComment "--.*$" contains=n1qlTODO 412*c572da5fSBram Moolenaarsyn sync ccomment n1qlComment 413*c572da5fSBram Moolenaar 414*c572da5fSBram Moolenaar 415*c572da5fSBram Moolenaar" 416*c572da5fSBram Moolenaar" *** TODO *** 417*c572da5fSBram Moolenaar" 418*c572da5fSBram Moolenaarsyn keyword n1qlTODO contained TODO FIXME XXX DEBUG NOTE 419*c572da5fSBram Moolenaar 420*c572da5fSBram Moolenaar 421*c572da5fSBram Moolenaar" 422*c572da5fSBram Moolenaar" *** enable *** 423*c572da5fSBram Moolenaar" 424*c572da5fSBram Moolenaarhi def link n1qlBucketSpec Underlined 425*c572da5fSBram Moolenaarhi def link n1qlComment Comment 426*c572da5fSBram Moolenaarhi def link n1qlKeyword Macro 427*c572da5fSBram Moolenaarhi def link n1qlOperator Function 428*c572da5fSBram Moolenaarhi def link n1qlSpecial Special 429*c572da5fSBram Moolenaarhi def link n1qlStatement Statement 430*c572da5fSBram Moolenaarhi def link n1qlString String 431*c572da5fSBram Moolenaarhi def link n1qlTODO Todo 432*c572da5fSBram Moolenaarhi def link n1qlType Type 433*c572da5fSBram Moolenaar 434*c572da5fSBram Moolenaarlet b:current_syntax = "n1ql" 435