gleam-lang / tree-sitter-gleam

🌳 A tree-sitter grammar for the Gleam programming language
Apache License 2.0
71 stars 13 forks source link

Try (again) to make GitHub's Linguist .gitattributes work #23

Closed J3RN closed 2 years ago

J3RN commented 2 years ago

Our present Linguist configuration in .gitattributes doesn't seem to be having any effect, as can be seen when viewing this commit: https://github.com/gleam-lang/tree-sitter-gleam/commit/7159ce961592192b0e7cdf88782cda0fdf41a4cb.

Historically we've employed the style employed by tree-sitter-elixir (here) to no avail. This new attempt combines usage of the shorthand from tree-sitter-rust with the no-leading-slash style from Linguist's own documentation. Hopefully it works this time :crossed_fingers:

J3RN commented 2 years ago

cc @the-mikedavis wanted you to take a look at this; the Linguist attributes appear to be working now based on viewing a commit to this branch.

the-mikedavis commented 2 years ago

Ah the

As an added bonus, unlike vendored and documentation files, these files are suppressed in diffs

is the difference for generated, that makes sense! I think it makes sense to prefer linguist-generated then so it will hide those changes in PR diffs.

J3RN commented 2 years ago

Ah, good catch! Funny enough, you had originally written linguist-generated and I talked you out of it :sweat_smile:

I definitely think that linguist-generated is the right call for us since everything in src is generated. I'm wondering if tree-sitter-rust, tree-sitter-javascript, etc use linguist-vendored because they have custom hand-written parsers that live in src, but it would seem like they should just use more specific path matching. :shrug: