Skip to content
This repository has been archived by the owner on Dec 21, 2021. It is now read-only.

add language file for ziglang #9

Merged
merged 1 commit into from
May 8, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
211 changes: 211 additions & 0 deletions plugins/language_zig.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,211 @@
-- 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",
},
}