-- lite-xl 1.16 local syntax = require "core.syntax" syntax.add { files = { "%.zig$" }, comment = "//", patterns = { { pattern = "//.-\n", type = "comment" }, { pattern = "#!.-\n", type = "comment" }, { pattern = { '"', '"', '\\' }, type = "string" }, { pattern = { "'", "'", '\\' }, type = "string" }, { pattern = "-?[iuf][%d_]+", type = "keyword2" }, { pattern = "-?\\x[%x_]+", type = "number" }, { pattern = "-?\\u{[%x_]+}", type = "number" }, { pattern = "-?%d+[%d%.eE]*f?", type = "number" }, { pattern = "-?%.?%d+f?", type = "number" }, { pattern = "[%+%-=/%*%^%%<>!~|&]", type = "operator" }, { pattern = "[%a_][%w_]*%f[(]", type = "function" }, { pattern = "@?[%a_][%w_]*", type = "symbol" }, }, symbols = { ["fn"] = "keyword", ["asm"] = "keyword", ["volatile"] = "keyword", ["continue"] = "keyword", ["break"] = "keyword", ["switch"] = "keyword", ["for"] = "keyword", ["while"] = "keyword", ["var"] = "keyword", ["anytype"] = "keyword", ["const"] = "keyword", ["test"] = "keyword", ["packed"] = "keyword", ["extern"] = "keyword", ["export"] = "keyword", ["pub"] = "keyword", ["defer"] = "keyword", ["errdefer"] = "keyword", ["align"] = "keyword", ["usingnamespace"] = "keyword", ["noasync"] = "keyword", ["async"] = "keyword", ["await"] = "keyword", ["cancel"] = "keyword", ["suspend"] = "keyword", ["resume"] = "keyword", ["threadlocal"] = "keyword", ["linksection"] = "keyword", ["callconv"] = "keyword", ["try"] = "keyword", ["catch"] = "keyword", ["orelse"] = "keyword", ["unreachable"] = "keyword", ["noreturn"] = "keyword", ["error"] = "keyword", ["if"] = "keyword", ["else"] = "keyword", ["return"] = "keyword", ["comptime"] = "keyword", ["stdcallcc"] = "keyword", ["ccc"] = "keyword", ["nakedcc"] = "keyword", ["and"] = "keyword", ["or"] = "keyword", -- std ["@import"] = "keyword", ["@cImport"] = "keyword", [ "@addWithOverflow" ] = "function", [ "@alignCast" ] = "function", [ "@alignOf" ] = "function", [ "@as" ] = "function", [ "@asyncCall" ] = "function", [ "@atomicLoad" ] = "function", [ "@atomicRmw" ] = "function", [ "@atomicStore" ] = "function", [ "@bitCast" ] = "function", [ "@bitOffsetOf" ] = "function", [ "@boolToInt" ] = "function", [ "@bitSizeOf" ] = "function", [ "@breakpoint" ] = "function", [ "@mulAdd" ] = "function", [ "@byteSwap" ] = "function", [ "@bitReverse" ] = "function", [ "@byteOffsetOf" ] = "function", [ "@call" ] = "function", [ "@cDefine" ] = "function", [ "@cImport" ] = "function", [ "@cInclude" ] = "function", [ "@clz" ] = "function", [ "@cmpxchgStrong" ] = "function", [ "@cmpxchgWeak" ] = "function", [ "@compileError" ] = "function", [ "@compileLog" ] = "function", [ "@ctz" ] = "function", [ "@cUndef" ] = "function", [ "@divExact" ] = "function", [ "@divFloor" ] = "function", [ "@divTrunc" ] = "function", [ "@embedFile" ] = "function", [ "@enumToInt" ] = "function", [ "@errorName" ] = "function", [ "@errorReturnTrace" ] = "function", [ "@errorToInt" ] = "function", [ "@errSetCast" ] = "function", [ "@export" ] = "function", [ "@fence" ] = "function", [ "@field" ] = "function", [ "@fieldParentPtr" ] = "function", [ "@floatCast" ] = "function", [ "@floatToInt" ] = "function", [ "@Frame" ] = "function", [ "@frame" ] = "function", [ "@frameAddress" ] = "function", [ "@frameSize" ] = "function", [ "@hasDecl" ] = "function", [ "@hasField" ] = "function", [ "@import" ] = "function", [ "@intCast" ] = "function", [ "@intToEnum" ] = "function", [ "@intToError" ] = "function", [ "@intToFloat" ] = "function", [ "@intToPtr" ] = "function", [ "@memcpy" ] = "function", [ "@memset" ] = "function", [ "@wasmMemorySize" ] = "function", [ "@wasmMemoryGrow" ] = "function", [ "@mod" ] = "function", [ "@mulWithOverflow" ] = "function", [ "@panic" ] = "function", [ "@popCount" ] = "function", [ "@ptrCast" ] = "function", [ "@ptrToInt" ] = "function", [ "@rem" ] = "function", [ "@returnAddress" ] = "function", [ "@setAlignStack" ] = "function", [ "@setCold" ] = "function", [ "@setEvalBranchQuota" ] = "function", [ "@setFloatMode" ] = "function", [ "@setRuntimeSafety" ] = "function", [ "@shlExact" ] = "function", [ "@shlWithOverflow" ] = "function", [ "@shrExact" ] = "function", [ "@shuffle" ] = "function", [ "@sizeOf" ] = "function", [ "@splat" ] = "function", [ "@src" ] = "function", [ "@sqrt" ] = "function", [ "@sin" ] = "function", [ "@cos" ] = "function", [ "@exp" ] = "function", [ "@exp2" ] = "function", [ "@log" ] = "function", [ "@log2" ] = "function", [ "@log10" ] = "function", [ "@fabs" ] = "function", [ "@floor" ] = "function", [ "@ceil" ] = "function", [ "@trunc" ] = "function", [ "@round" ] = "function", [ "@subWithOverflow" ] = "function", [ "@tagName" ] = "function", [ "@TagType" ] = "function", [ "@This" ] = "function", [ "@truncate" ] = "function", [ "@Type" ] = "function", [ "@typeInfo" ] = "function", [ "@typeName" ] = "function", [ "@TypeOf" ] = "function", [ "@unionInit" ] = "function", -- types ["void"] = "keyword2", ["c_void"] = "keyword2", ["isize"] = "keyword2", ["usize"] = "keyword2", ["c_short"] = "keyword2", ["c_ushort"] = "keyword2", ["c_int"] = "keyword2", ["c_uint"] = "keyword2", ["c_long"] = "keyword2", ["c_ulong"] = "keyword2", ["c_longlong"] = "keyword2", ["c_ulonglong"] = "keyword2", ["c_longdouble"] = "keyword2", ["bool"] = "keyword2", ["noreturn"] = "keyword2", ["type"] = "keyword2", ["anyerror"] = "keyword2", ["comptime_int"] = "keyword2", ["comptime_float"] = "keyword2", ["true"] = "literal", ["false"] = "literal", ["null"] = "literal", ["undefined"] = "literal", }, }