zig.vim
zig.vim copied to clipboard
Substantial reorganization of syntax highlighting file
As discussed in the Zig Programming Language Discord, I have been working on rewriting the entire zig.vim plugin from scratch. This pull request contains all of the improvements I have made to syntax highlighting and heavily reorganizes the syntax file to hopefully make it more maintainable for the future.
@rsaihe I forgot where we left off on this, I know the last time I had asked there hasn't been much progress. I want to ask, does this fix some of the weird indentation rules for zig? Also, if you no longer want to work on this or can't, is it okay if I finish up?
This is only syntax highlighting, but I did manage to fix a lot of cases of incorrect indentation in my personal Vim plugin for Zig (found here). I don't have much energy right now to move my indentation changes into a pull request but you are totally free to use what I have there.
@haze What is the status of this? I'd like to lookup the color rules to document necessary changes for semantic tokens and treesitter color rules by zls and treesitter-zig to match the provided colors here.
Specifically I am annoyed that control flow instructions do not have a special rule within semantic tokens to highlight it properly.
I’ve incorporated some of the standout features of #80 minus the reorg in the develop branch at https://github.com/atweiden/zig.vim, in addition to a few recent pull requests. IIRC I haven’t done anything with #80’s string handling yet.
As a point of differentiation compared to #80, besides not reorging, it handles @""
variables by |hl-Ignore|
ing the @""
chars and highlighting the name of the variable the same as any other variable. Feedback has been negative on using hl-Ignore
in the past, but I kind of don’t mind it. Not to digress too much, but it might be better for colorscheme authors to implement custom colouring for the @""
chars in Zig (similar to how many colorschemes implement custom handling of select filetypes already).