From cf482425427641a6b1418995d91ccebca960a875 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Fr=C3=B3es=20Franco?= Date: Tue, 26 May 2026 22:02:32 -0300 Subject: [PATCH] fix(syntax): target colorscheme-stable groups for inline markup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two undefined targets meant bold/italic rendered as plain text: - Neovim semantic-token defaults linked @vimwikiBold/Italic to markdownBold/Italic, which only exist when the markdown treesitter parser is loaded — never in a .wiki buffer. Use @markup.strong / @markup.italic / @markup.raw.inline / @markup.link instead; those are defined by every nvim 0.9+ colorscheme. - The static fallback linked nuwikiBold/Italic to Bold/Italic groups that exist in Neovim but not plain Vim, so on Vim the links resolved to nothing. Define them with explicit gui=bold/italic attributes so they render correctly everywhere. Co-Authored-By: Claude Sonnet 4.6 --- syntax/vimwiki.vim | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/syntax/vimwiki.vim b/syntax/vimwiki.vim index 4eb7d31..2553536 100644 --- a/syntax/vimwiki.vim +++ b/syntax/vimwiki.vim @@ -30,23 +30,26 @@ if has('nvim') highlight default link @vimwikiHeading.centered Title " Inline text styling. - highlight default link @vimwikiBold markdownBold - highlight default link @vimwikiItalic markdownItalic - highlight default link @vimwikiBoldItalic markdownBoldItalic - highlight default link @vimwikiStrikethrough Comment - highlight default link @vimwikiSuperscript Number - highlight default link @vimwikiSubscript Number + " Use @markup.* (nvim 0.9+ treesitter standard groups, defined by all + " colorschemes) instead of markdownBold/Italic which only exist when the + " markdown treesitter parser is loaded — never the case in a vimwiki buffer. + highlight default link @vimwikiBold @markup.strong + highlight default link @vimwikiItalic @markup.italic + highlight default link @vimwikiBoldItalic @markup.strong + highlight default link @vimwikiStrikethrough @markup.strikethrough + highlight default link @vimwikiSuperscript Special + highlight default link @vimwikiSubscript Special " Code + math. - highlight default link @vimwikiCode String - highlight default link @vimwikiCodeBlock String + highlight default link @vimwikiCode @markup.raw.inline + highlight default link @vimwikiCodeBlock @markup.raw.block highlight default link @vimwikiMath Number highlight default link @vimwikiMathBlock Number " Links + transclusions. - highlight default link @vimwikiWikilink Underlined - highlight default link @vimwikiExternalLink Underlined - highlight default link @vimwikiUrl Underlined + highlight default link @vimwikiWikilink @markup.link + highlight default link @vimwikiExternalLink @markup.link.url + highlight default link @vimwikiUrl @markup.link.url highlight default link @vimwikiTransclusion Identifier " Misc. @@ -96,8 +99,10 @@ highlight default link nuwikiCommentBlock Comment highlight default link nuwikiPreformatted String highlight default link nuwikiMathBlock Number highlight default link nuwikiPlaceholder PreProc -highlight default link nuwikiBold Bold -highlight default link nuwikiItalic Italic +" Bold / Italic use explicit attributes so they work in plain Vim too (no +" dependency on the 'Bold' / 'Italic' groups which are Neovim-only). +highlight default nuwikiBold gui=bold cterm=bold term=bold +highlight default nuwikiItalic gui=italic cterm=italic term=italic highlight default link nuwikiCode String highlight default link nuwikiMathInline Number highlight default link nuwikiKeyword Todo