Bash grammar for tree-sitter (by tree-sitter)

Tree-sitter-bash Alternatives

Similar projects and alternatives to tree-sitter-bash

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better tree-sitter-bash alternative or higher similarity.

tree-sitter-bash reviews and mentions

Posts with mentions or reviews of tree-sitter-bash. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-02.
  • Ask HN: What are some unpopular technologies you wish people knew more about?
    56 projects | | 2 Dec 2023
    (1) Zulip Chat - - seems to be reasonably popular, but more people should know about it

    I’ve been using it for over 5 years now [1], and it’s as good as ever. It’s way faster than any other chat app I’ve used. It has a good UI and conversation model. It has a simple and functional API that lets me curl threads and write blog posts based on them.

    (only problem is that I Ctrl-+ in my browser to make the font bigger – I think it’s too dense for most people)

    (2) re2c regex to state machine compiler -

    A gem from the 90’s, which people have done a great job maintaining and improving (getting Go and Rust target support in the last few years). I started using it in 2016, and used for a new program a few months ago. I came to the conclusion that it should have been built into C, because C has shitty string processing – and Ken Thompson both invented C AND brought regular languages to computing !!

    In comparison, treesitter lexers are very low level, fiddly, and error prone. I recently saw dozens of ad hoc fixes to the tree-sitter-bash lexer, which is unsurprising if you look at the structure of the code (manually crawling through backslashes and braces in C).

    These fixes are definitely appreciated, but I think it indicates a problem with the model itself.

    (based on


  • Emacs and Java Development: Corfu + Cape + LSP-Mode + Treesit
    21 projects | /r/emacs | 19 May 2023
    (use-package treesit :ensure nil :custom ;; Some stuff taken from here: (treesit-extra-load-path '("/usr/lib64/")) (treesit-language-source-alist '((bash . ("")) (c . ("")) (c++ . ("")) (csharp . ("")) (css . ("")) (elixir ("")) (html . ("")) (java . ("")) (javascript . ("")) (json . ("")) (lua . ("")) (makefile . ("")) (org . ("")) (python . ("")) (tsx . ("" "master" "tsx/src")) (typescript . ("" "master" "typescript/src")) (ruby . ("")) (rust . ("")) (sql . ("")) (toml . ("")) (yaml . ("")))) (major-mode-remap-alist '((c-mode . c-ts-mode) (c++-mode . c++-ts-mode) (csharp-mode . csharp-ts-mode) (css-mode . css-ts-mode) (html-mode . html-ts-mode) (java-mode . java-ts-mode) (js-mode . js-ts-mode) (json-mode . json-ts-mode) (makefile-mode . makefile-ts-mode) ;; (org-mode . org-ts-mode) ;; not mature yet (python-mode . python-ts-mode) (typescript-mode . typescript-ts-mode) (ruby-mode . ruby-ts-mode) (rust-mode . rust-ts-mode) (toml-mode . toml-ts-mode) (yaml-mode . yaml-ts-mode))) (treesit-auto-fallback-alist '((toml-ts-mode . conf-toml-mode) (typescript-ts-mode . nil) (tsx-ts-mode . nil))) (treesit-font-lock-settings t) (treesit-simple-indent t) (treesit-defun-type-regexp t)) (use-package treesit-auto :demand t :config (setq treesit-auto-install t) (global-treesit-auto-mode))
  • Treesiter problem with .bashrc
    4 projects | /r/neovim | 14 Mar 2023
    I ran into this issue as well a few weeks ago, there's already a few issues for it:
  • Building tree-sitter languages for Emacs
    20 projects | /r/emacs | 30 Dec 2022
  • Convert curl commands to code in several languages
    13 projects | | 11 Mar 2022
    All 3 of these are linked to under "Related Tools".

    Those projects use a pretty basic tokenizer

    Insomnia and Postman use commander.js for their bash parsing which looks like it just splits on space:

    and only support a few of curl's options. Curlconverter uses tree-sitter's Bash grammar and tries to at least correctly discard all of curl's options and any options that curl used to have.

  • A note from our sponsor - | 26 Feb 2024
    LearnThisRepo lets you learn 300+ open source repos including Postgres, Langchain, VS Code, and more by chatting with them using AI! Learn more →


Basic tree-sitter-bash repo stats
3 days ago
The modern API for authentication & user identity.
The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.