Discussion
Loading...

#Tag

Log in
  • About
  • Code of conduct
  • Privacy
  • Users
  • Instances
  • About Bonfire
Alan Zimmerman boosted
Bricked
Bricked
@bricked@tilde.zone  ·  activity timestamp 3 weeks ago

TIL that in Nix, if you have a multi-line string of code, you can simply prefix it with a comment stating the name of the language and Tree-sitter will highlight it for you!

{
# The TOML string below will be highlighted!
programs.foo.extraConfig = /* toml */ ''
bar = "baz"
'';
}

#nix #nixos #treesitter

  • Copy link
  • Flag this post
  • Block
Bricked
Bricked
@bricked@tilde.zone  ·  activity timestamp 3 weeks ago

TIL that in Nix, if you have a multi-line string of code, you can simply prefix it with a comment stating the name of the language and Tree-sitter will highlight it for you!

{
# The TOML string below will be highlighted!
programs.foo.extraConfig = /* toml */ ''
bar = "baz"
'';
}

#nix #nixos #treesitter

  • Copy link
  • Flag this post
  • Block
Alan Zimmerman boosted
snamellit
snamellit
@snamellit@social.snamellit.com  ·  activity timestamp 5 months ago

Recently with verion 0.25 the treesitter library changed ABI version
to 15. Newer parsers will complain about a version mismatch if the
installed library used by emacs is lower than this version. This ABI
version was introduced in the 0.25 branch of treesitter.

The best course of action till lib treesitter is updated is to pin
the version of the parser to the last version supporting ABI 14.

With the new ABI 15 version, parsers are required to provide a
treesitter.json file with additional metadata which can be used as
proxy to find a version which still supports ABI-14, i.e. the commit
before that.

A lot of the parsers are provided by the treesitter project as sub
repos, and they follow the same version convention as the library,
selecting the last tag before the 0.25 tag is a good way to find a
compatible version.

This branch can be added after the repo url in the
treesit-language-source-alist variable. Note that if you use
treesit-auto-install-all to get it over with, you have to probably
restart your emacs as treesit-auto apparently caches the value
during iniitialisation and changes are not picked up. #emacs#treesitter

  • Copy link
  • Flag this post
  • Block
snamellit
snamellit
@snamellit@social.snamellit.com  ·  activity timestamp 5 months ago

Recently with verion 0.25 the treesitter library changed ABI version
to 15. Newer parsers will complain about a version mismatch if the
installed library used by emacs is lower than this version. This ABI
version was introduced in the 0.25 branch of treesitter.

The best course of action till lib treesitter is updated is to pin
the version of the parser to the last version supporting ABI 14.

With the new ABI 15 version, parsers are required to provide a
treesitter.json file with additional metadata which can be used as
proxy to find a version which still supports ABI-14, i.e. the commit
before that.

A lot of the parsers are provided by the treesitter project as sub
repos, and they follow the same version convention as the library,
selecting the last tag before the 0.25 tag is a good way to find a
compatible version.

This branch can be added after the repo url in the
treesit-language-source-alist variable. Note that if you use
treesit-auto-install-all to get it over with, you have to probably
restart your emacs as treesit-auto apparently caches the value
during iniitialisation and changes are not picked up. #emacs#treesitter

  • Copy link
  • Flag this post
  • Block
Programming Languages Delft
Programming Languages Delft
@DelftPL@akademienl.social  ·  activity timestamp 10 months ago

Master thesis by Hendy Liang: "Property-Based ASTs: Enabling Language Parametricity in Refactoring Tools"

"By leveraging Tree-Sitter, a parser generator that creates parsers that produce generic, property-based ASTs, this research adapts Renaissance, an existing industrial refactoring tool, to support multi-language extensibility with minimal additional effort."

https://repository.tudelft.nl/record/uuid:6e143a35-32b8-4f7e-928e-52057ea57566

#LanguageParametricity #refactoring #treesitter #thesis

Property-Based ASTs | TU Delft Repository

  • Copy link
  • Flag this post
  • Block

bonfire.cafe

A space for Bonfire maintainers and contributors to communicate

bonfire.cafe: About · Code of conduct · Privacy · Users · Instances
Bonfire social · 1.0.1-alpha.40 no JS en
Automatic federation enabled
Log in
  • Explore
  • About
  • Members
  • Code of Conduct