antler5 / emacs-makefile-ts

A major mode for editing Makesfile with the aid of tree-sitter.
GNU General Public License v3.0
0 stars 0 forks source link

Missing example files to target #2

Open antler5 opened 8 months ago

antler5 commented 8 months ago

My basic example only accounted for the syntax of the file I had in from of me at the time. The grammar, of course, includes the definitions of all the syntax it produces, but I find it hard to reason about which targets we'll want to query in the first place without first surfacing them organically in an example Makefile. I could do with an example of a big ol' Makefile that covers most of Make's syntactical surface-area so we have a reference for mapping additional faces to.

antler5 commented 8 months ago

Oh, and just because I wanted to write this down somewhere: I checked a bunch of parsers to see what does this specific highlighting correctly (ie. SCM code in a define directive featuring unpaired quotes).

? Parser Notes
:white_check_mark: Neovim (without tree-sitter) Broadly correct, there are a few symbols highlighted in an out-of-place manner but it's sufficient.
:white_check_mark: Github (Webview) Highlights sparsely (or function call or variable refs, but correctly.
:x: Github (IDE) Does not parse.
:x: Github (Gist Editor) Chokes, parses the rest of the file into a string.
:x: Emacs (make-mode.el) Chokes, parses the rest of the file into a string.
:x: Gitlab (Webview, Hightligh.js / Rouge) Chokes, parses the rest of the file into a string.
:white_check_mark: Gitlab (Web IDE, Monarch) Oh my gosh, it's beautiful. It even does subparsing for the Scheme and Shell correctly!