Skip to content

Commit eed5f2d

Browse files
authored
feat(treesitter)!: support [email protected] (#151)
Older version is no longer supported.
1 parent 22cfe4b commit eed5f2d

File tree

2 files changed

+305
-217
lines changed

2 files changed

+305
-217
lines changed

lua/zenbones/specs/dark.lua

+152-108
Original file line numberDiff line numberDiff line change
@@ -191,116 +191,163 @@ local function generate(p, opt)
191191
DiagnosticUnderlineOk { fg = opt.colorize_diagnostic_underline_text and DiagnosticOk.fg or "NONE", gui = "undercurl", sp = DiagnosticOk.fg },
192192

193193
-- Tree-sitter
194-
sym "@annotation" { PreProc },
195-
sym "@attribute" { PreProc },
196-
sym "@boolean" { Number },
197-
sym "@character" { Constant },
198-
sym "@character.special" { Special },
199-
sym "@comment" { Comment },
200-
sym "@conditional" { Statement },
201-
sym "@constant" { Identifier, gui = "bold" },
202-
sym "@constant.builtin" { Number },
203-
sym "@constant.macro" { Number },
204-
sym "@constructor" { Special },
205-
sym "@debug" { Special },
206-
sym "@define" { PreProc },
207-
sym "@exception" { Statement },
208-
sym "@field" { Identifier },
209-
sym "@float" { Number },
210-
sym "@function" { Function },
211-
sym "@function.builtin" { Special },
212-
sym "@function.call" { Function },
213-
sym "@function.macro" { PreProc },
214-
sym "@include" { PreProc },
215-
sym "@keyword" { Statement },
216-
sym "@keyword.function" { Statement },
217-
sym "@keyword.operator" { Statement },
218-
sym "@keyword.return" { Statement },
219-
sym "@keyword.coroutine" { Statement },
220-
sym "@label" { Statement },
221-
sym "@method" { Function },
222-
sym "@method.call" { Function },
223-
sym "@namespace" { Special },
224-
sym "@none" { },
225-
sym "@number" { Number },
226-
sym "@operator" { Statement },
227-
sym "@parameter" { Identifier },
228-
sym "@parameter.reference" { sym "@parameter" },
229-
sym "@preproc" { PreProc },
230-
sym "@property" { Identifier },
231-
sym "@punctuation.bracket" { Delimiter },
232-
sym "@punctuation.delimiter" { Delimiter },
233-
sym "@punctuation.special" { Delimiter },
234-
sym "@repeat" { Statement },
235-
sym "@storageclass" { Type },
236-
sym "@string" { Constant },
237-
sym "@string.escape" { Special },
238-
sym "@string.regex" { Constant },
239-
sym "@string.special" { Special },
240-
sym "@symbol" { Identifier },
241-
sym "@tag" { Special },
242-
sym "@tag.attribute" { sym "@property" },
243-
sym "@tag.delimiter" { Delimiter },
244-
sym "@text" { sym "@none" },
245-
sym "@text.danger" { Error },
246-
sym "@text.emphasis" { Italic },
247-
sym "@text.environment" { PreProc },
248-
sym "@text.environment.name" { Type },
249-
sym "@text.literal" { Constant },
250-
sym "@text.math" { Special },
251-
sym "@text.note" { DiagnosticInfo },
252-
sym "@text.reference" { Constant },
253-
sym "@text.strike" { gui = "strikethrough" },
254-
sym "@text.strong" { Bold },
255-
sym "@text.title" { Title },
256-
sym "@text.underline" { Underlined },
257-
sym "@text.uri" { Underlined },
258-
sym "@text.warning" { WarningMsg },
259-
sym "@todo" { Todo },
260-
sym "@type" { Type },
261-
sym "@type.builtin" { Type },
262-
sym "@type.definition" { Type },
263-
sym "@type.qualifier" { Type },
264-
sym "@variable" { Identifier },
265-
sym "@variable.builtin" { Number },
194+
sym "@variable" { Identifier },
195+
sym "@variable.builtin" { Number },
196+
sym "@variable.parameter" { sym "@variable" },
197+
sym "@variable.member" { sym "@variable" },
198+
199+
sym "@constant" { Identifier, gui = "bold" },
200+
sym "@constant.builtin" { Number },
201+
sym "@constant.macro" { Number },
202+
203+
sym "@module" { Number },
204+
sym "@module.builtin" { sym "@module" },
205+
sym "@label" { Statement },
206+
207+
sym "@string" { Constant },
208+
sym "@string.documentation" { sym "@string" },
209+
sym "@string.regexp" { Constant },
210+
sym "@string.escape" { Special },
211+
sym "@string.special" { Special },
212+
sym "@string.special.symbol" { Identifier },
213+
sym "@string.special.url" { sym "@string.special" },
214+
sym "@string.special.path" { sym "@string.special" },
215+
216+
sym "@character" { Constant },
217+
sym "@character.special" { Special },
218+
219+
sym "@boolean" { Number },
220+
sym "@number" { Number },
221+
sym "@number.float" { sym "@number" },
222+
223+
sym "@type" { Type },
224+
sym "@type.builtin" { sym "@type" },
225+
sym "@type.definition" { sym "@type" },
226+
sym "@type.qualifier" { sym "@type" },
227+
228+
sym "@attribute" { PreProc },
229+
sym "@property" { Identifier },
230+
231+
sym "@function" { Function },
232+
sym "@function.builtin" { Special },
233+
sym "@function.call" { sym "@function" },
234+
sym "@function.macro" { PreProc },
235+
236+
sym "@function.method" { sym "@function" },
237+
sym "@function.method.call" { sym "@function" },
238+
239+
sym "@constructor" { Special },
240+
sym "@operator" { Statement },
241+
242+
sym "@keyword.coroutine" { Statement },
243+
sym "@keyword.function" { Statement },
244+
sym "@keyword.operator" { Statement },
245+
sym "@keyword.import" { PreProc },
246+
sym "@keyword.storage" { Type },
247+
sym "@keyword.repeat" { Statement },
248+
sym "@keyword.return" { Statement },
249+
sym "@keyword.debug" { Special },
250+
sym "@keyword.exception" { Statement },
251+
252+
sym "@keyword.conditional" { Statement },
253+
sym "@keyword.conditional.ternary" { sym "@keyword.conditional" },
254+
sym "@keyword.directive" { PreProc },
255+
sym "@keyword.directive.define" { sym "@keyword.directive" },
256+
257+
sym "@punctuation.delimiter" { Delimiter },
258+
sym "@punctuation.bracket" { Delimiter },
259+
sym "@punctuation.special" { Delimiter },
260+
261+
sym "@comment" { Comment },
262+
sym "@comment.documentation" { sym "@comment" },
263+
264+
sym "@comment.error" { Error },
265+
sym "@comment.warning" { WarningMsg },
266+
sym "@comment.todo" { Todo },
267+
sym "@comment.note" { DiagnosticInfo },
268+
269+
sym "@markup.strong" { Bold },
270+
sym "@markup.itailc" { Italic },
271+
sym "@markup.strikethrough" { gui = "strikethrough" },
272+
sym "@markup.underline" { Underlined },
273+
274+
sym "@markup.heading" { Title },
275+
276+
sym "@markup.quote" { fg = p1.fg4 },
277+
sym "@markup.math" { Special },
278+
sym "@markup.environment" { PreProc },
279+
280+
sym "@markup.link" { Constant },
281+
sym "@markup.link.label" { Special },
282+
sym "@markup.link.url" { Constant },
283+
284+
sym "@markup.raw" { Constant },
285+
sym "@markup.raw.block" { sym "@markup.raw" },
286+
287+
sym "@markup.list" { Special },
288+
sym "@markup.list.checked" { sym "@markup.list" },
289+
sym "@markup.list.unchecked" { sym "@markup.list" },
290+
291+
sym "@diff.plus" { fg = p.leaf },
292+
sym "@diff.minus" { fg = p.rose },
293+
sym "@diff.delta" { fg = p.water },
294+
295+
sym "@tag" { Special },
296+
sym "@tag.attribute" { sym "@property" },
297+
sym "@tag.delimiter" { Delimiter },
298+
299+
sym "@none" { },
266300

267301
sym "@punctuation.special.markdown" { Special },
268302
sym "@string.escape.markdown" { SpecialKey },
269-
sym "@text.reference.markdown" { Identifier, gui = "underline" },
270-
sym "@text.emphasis.markdown" { Italic },
271-
sym "@text.title.markdown" { Statement },
272-
sym "@text.literal.markdown" { Type },
273-
sym "@text.uri.markdown" { SpecialComment },
303+
sym "@markup.link.markdown" { Identifier, gui = "underline" },
304+
sym "@markup.italic.markdown" { Italic },
305+
sym "@markup.title.markdown" { Statement },
306+
sym "@markup.raw.markdown" { Type },
307+
sym "@markup.link.url.markdown" { SpecialComment },
274308

275309
-- LSP Semantic Token Groups
276-
sym "@lsp.type.boolean" { sym "@boolean" },
277-
sym "@lsp.type.builtinType" { sym "@type.builtin" },
278-
sym "@lsp.type.comment" { sym "@comment" },
279-
sym "@lsp.type.enum" { sym "@type" },
280-
sym "@lsp.type.enumMember" { sym "@constant" },
281-
sym "@lsp.type.escapeSequence" { sym "@string.escape" },
282-
sym "@lsp.type.formatSpecifier" { sym "@punctuation.special" },
283-
sym "@lsp.type.keyword" { sym "@keyword" },
284-
sym "@lsp.type.namespace" { sym "@namespace" },
285-
sym "@lsp.type.number" { sym "@number" },
286-
sym "@lsp.type.parameter" { sym "@parameter" },
287-
sym "@lsp.type.property" { sym "@property" },
288-
sym "@lsp.type.selfKeyword" { sym "@variable.builtin" },
289-
sym "@lsp.type.string.rust" { sym "@string" },
290-
sym "@lsp.type.typeAlias" { sym "@type.definition" },
291-
sym "@lsp.type.unresolvedReference" { gui = "undercurl", sp = Error.fg },
292-
sym "@lsp.type.variable" { sym "@variable" },
293-
sym "@lsp.typemod.class.defaultLibrary" { sym "@type.builtin" },
294-
sym "@lsp.typemod.enum.defaultLibrary" { sym "@type.builtin" },
295-
sym "@lsp.typemod.enumMember.defaultLibrary" { sym "@constant.builtin" },
296-
sym "@lsp.typemod.method.defaultLibrary" { sym "@function.builtin" },
297-
sym "@lsp.typemod.function.defaultLibrary" { sym "@function.builtin" },
298-
sym "@lsp.typemod.macro.defaultLibrary" { sym "@function.builtin" },
299-
sym "@lsp.typemod.keyword.async" { sym "@keyword.coroutine" },
300-
sym "@lsp.typemod.operator.injected" { sym "@operator" },
301-
sym "@lsp.typemod.string.injected" { sym "@string" },
302-
sym "@lsp.typemod.variable.defaultLibrary" { sym "@variable.builtin" },
303-
sym "@lsp.typemod.variable.injected" { sym "@variable" },
310+
sym "@lsp.type.boolean" { sym "@boolean" },
311+
sym "@lsp.type.builtinType" { sym "@type.builtin" },
312+
sym "@lsp.type.comment" { sym "@comment" },
313+
sym "@lsp.type.decorator" { sym "@attribute" },
314+
sym "@lsp.type.deriveHelper" { sym "@attribute" },
315+
sym "@lsp.type.enum" { sym "@type" },
316+
sym "@lsp.type.enumMember" { sym "@constant" },
317+
sym "@lsp.type.escapeSequence" { sym "@string.escape" },
318+
sym "@lsp.type.formatSpecifier" { sym "@markup.list" },
319+
sym "@lsp.type.generic" { sym "@variable" },
320+
sym "@lsp.type.interface" { sym "@type" },
321+
sym "@lsp.type.keyword" { Statement },
322+
sym "@lsp.type.lifetime" { sym "@keyword.storage" },
323+
sym "@lsp.type.namespace" { sym "@module" },
324+
sym "@lsp.type.number" { sym "@number" },
325+
sym "@lsp.type.operator" { sym "@operator" },
326+
sym "@lsp.type.parameter" { sym "@variable.parameter" },
327+
sym "@lsp.type.property" { sym "@property" },
328+
sym "@lsp.type.selfKeyword" { sym "@variable.builtin" },
329+
sym "@lsp.type.selfTypeKeyword" { sym "@variable.builtin" },
330+
sym "@lsp.type.string" { sym "@string" },
331+
sym "@lsp.type.typeAlias" { sym "@type.definition" },
332+
sym "@lsp.type.unresolvedReference" { gui = "undercurl", sp = Error.fg },
333+
sym "@lsp.type.variable" { },
334+
sym "@lsp.typemod.class.defaultLibrary" { sym "@type.builtin" },
335+
sym "@lsp.typemod.enum.defaultLibrary" { sym "@type.builtin" },
336+
sym "@lsp.typemod.enumMember.defaultLibrary" { sym "@constant.builtin" },
337+
sym "@lsp.typemod.function.defaultLibrary" { sym "@function.builtin" },
338+
sym "@lsp.typemod.keyword.async" { sym "@keyword.coroutine" },
339+
sym "@lsp.typemod.keyword.injected" { Statement },
340+
sym "@lsp.typemod.macro.defaultLibrary" { sym "@function.builtin" },
341+
sym "@lsp.typemod.method.defaultLibrary" { sym "@function.builtin" },
342+
sym "@lsp.typemod.operator.injected" { sym "@operator" },
343+
sym "@lsp.typemod.string.injected" { sym "@string" },
344+
sym "@lsp.typemod.struct.defaultLibrary" { sym "@type.builtin" },
345+
sym "@lsp.typemod.type.defaultLibrary" { sym "@type" },
346+
sym "@lsp.typemod.typeAlias.defaultLibrary" { sym "@type" },
347+
sym "@lsp.typemod.variable.callable" { sym "@function" },
348+
sym "@lsp.typemod.variable.defaultLibrary" { sym "@variable.builtin" },
349+
sym "@lsp.typemod.variable.injected" { sym "@variable" },
350+
sym "@lsp.typemod.variable.static" { sym "@constant" },
304351

305352
-- Syntax
306353
diffAdded { fg = p.leaf },
@@ -312,9 +359,6 @@ local function generate(p, opt)
312359
diffLine { fg = p.blossom, gui = "bold" },
313360
diffIndexLine { fg = p.wood },
314361

315-
sym "@text.diff.add" { diffAdded },
316-
sym "@text.diff.delete" { diffRemoved },
317-
318362
gitcommitOverflow { WarningMsg },
319363

320364
markdownUrl { SpecialComment },

0 commit comments

Comments
 (0)