tree-sitter-module VS .emacs.d

Compare tree-sitter-module vs .emacs.d and see what are their differences.

tree-sitter-module

Building script for tree-sitter language definitions (by casouri)

.emacs.d

My personal Emacs config with any quirks, oddities, bugs, and man-eating errors I live with on a daily basis. (by jimeh)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
tree-sitter-module .emacs.d
10 26
158 110
- -
7.2 8.2
about 1 month ago 3 days ago
Shell Emacs Lisp
- -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

tree-sitter-module

Posts with mentions or reviews of tree-sitter-module. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-14.
  • Let's write an Emacs treesitter major mode
    7 projects | news.ycombinator.com | 14 Sep 2023
    BTW:

    While Emacs 29.1 comes with "treesitter" built-in, you still need to manually build and install any treesitter language plugin implementing the actual language specific parser. This can be fiddly and frustrating doing it yourself.

    I had a quick success with using this convenience script: https://github.com/casouri/tree-sitter-module/. It provides fully-automated builds for the most popular languages (including typescript, c and c++).

    This is how it works for "typescript":

    1. Clone the repository: https://github.com/casouri/tree-sitter-module/

    2. Install "build-essentials" (providing a c/c++ compiler if you're on Linux).

    3. run "./build typescript" from within the repo

    4. Copy the resulting shared library from "dist/libtree-sitter-typescript.so" into your "~/.emacs.d/tree-sitter/".

    5. Open a random typescript file and try "M-x typescript-ts-mode" which should not give you any error but instead nice syntax highlighting.

    You might find there is a treesitter plugin for your language available and it is even supported by "tree-sitter-module" but there is still no major mode, yet. Happened to me for Perl 5.

  • Mastering Emacs: What's new in Emacs 29.1
    6 projects | news.ycombinator.com | 7 Sep 2023
    I will look into building my own tree sitter grammars using https://github.com/casouri/tree-sitter-module as you suggest.

    Some time ago I followed this guide https://vxlabs.com/2022/06/12/typescript-development-with-em...

  • Getting Emacs 29 to Automatically Use Tree-sitter Modes · robbmann
    2 projects | /r/emacs | 22 Jan 2023
    ;; FIRST: git clone https://github.com/casouri/tree-sitter-module ;; bash batch.sh ;; THEN : sudo cp dist/* /usr/local/lib ;; FINALLY: (setq treesit-extra-load-path '("/usr/local/lib")) ;; Treesit ;; Eglot (setq treesit-eglot-modes '((:ts (bash-mode . bash-ts-mode) :pacman "bash-language-server") (:ts (c++-mode . c++-ts-mode) :pacman "ccls") (:ts (c-mode . c-ts-mode) :pacman "ccls") (:ts (cpp-mode . cpp-ts-mode) :pacman "ccls") (:ts (c-sharp-mode . sharp-ts-mode)) (:ts (cmake-mode . cmake-ts-mode)) (:ts (css-mode . css-ts-mode) :pacman "vscode-css-languageserver") (:ts (dockerfile-mode . dockerfile-ts-mode)) (:ts (elixir-mode . elixir-ts-mode)) (:ts (glsl-mode . glsl-ts-mode)) (:ts (go-mode . go-ts-mode) :pacman "gopls") (:ts (heex-mode . heex-ts-mode)) (:ts (html-mode . html-ts-mode) :pacman "vscode-html-languageserver") (:ts (java-mode . java-ts-mode)) (:ts (javascript-mode . js-ts-mode) :pacman "typescript-language-server") (:ts (js-json-mode . json-ts-mode) :pacman "vscode-json-languageserver") (:ts (julia-mode . julia-ts-mode)) (:ts (make-mode . make-ts-mode)) (:ts (markdown-mode . markdown-ts-mode)) (:ts (python-mode . python-ts-mode) :pacman "jedi-language-server") (:ts (typescript-mode . typescript-ts-mode) :pacman "typescript-language-server") (:ts (proto-mode . proto-ts-mode)) (:ts (ruby-mode . ruby-ts-mode)) (:ts (rust-mode . rust-ts-mode) :pacman "rust-analyzer") (:ts (sql-mode . sql-ts-mode)) (:ts (toml-mode . toml-ts-mode)) (:ts (tsx-mode . tsx-ts-mode)) (:ts (verilog-mode . verilog-ts-mode)) (:ts (vhdl-mode . vhdl-ts-mode)) (:ts (wgsl-mode . wgsl-ts-mode)) (:ts (yaml-mode . yaml-ts-mode) :pacman "yaml-language-server"))) ;; Not mature yet: ;; (push '(org-mode . org-ts-mode) major-mode-remap-alist) ;; (push '(perl-mode . perl-ts-mode) major-mode-remap-alist) ;; cpan Perl::LanguageServer (require 'treesit) ;; Function to parse the above and make an install command (if (treesit-available-p) (let ((pacman-install-list (list ))) (dolist (ts-pm treesit-eglot-modes) (let ((majmode-remap (plist-get ts-pm :ts)) (pacman-cmd (plist-get ts-pm :pacman))) ;; bind default major-mode to ts-mode (push majmode-remap major-mode-remap-alist) ;; populate install cmd (if pacman-cmd (unless (member pacman-cmd pacman-install-list) (push pacman-cmd pacman-install-list))))) (let ((install-cmd (concat "pacman -S --needed " (--reduce (concat acc " " it) pacman-install-list)))) (message install-cmd))) (user-error "Treesitter not available"))
  • tree-sitter-module: Building script for tree-sitter language definitions
    1 project | /r/planetemacs | 28 Dec 2022
  • Emacs 29: Install Tree-Sitter parser modules with a minor mode
    3 projects | /r/emacs | 26 Dec 2022
    Also this https://github.com/casouri/tree-sitter-module/issues/13
  • Do I still need to install tree-sitter manually, for native tree-sitter in emacs29 to work?
    2 projects | /r/emacs | 20 Dec 2022
    I've downloaded and generated the libraries for the various languages from: https://github.com/casouri/tree-sitter-module
  • Setup Eglot in Emacs29 to recognize Python virtualenv
    1 project | /r/emacs | 18 Dec 2022
    Third, I'm using tsitter in emacs29. I have https://github.com/casouri/tree-sitter-module installed as a sub-module in ~/.config/emacs, and have a symlink called tree-sitter to ./tree-sitter-module/dist (built by ./tree-sitter-module/batch.sh) . I'm mentioning the tsitter config here since I'm using python-ts-mode which is tree-sitter aware.
  • Is anyone working on a ruby tree sitter mode?
    1 project | /r/emacs | 6 Dec 2022
    I'd recommend checking out https://github.com/casouri/tree-sitter-module for building the native treesit libraries that are required to enable the various languages.
  • How to use Emacs 29 Tree-sitter?
    12 projects | /r/emacs | 3 Dec 2022
    The author of the built-in tree-sitter implementation has published this repo with a build script to help you build various grammars: https://github.com/casouri/tree-sitter-module

.emacs.d

Posts with mentions or reviews of .emacs.d. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-09.

What are some alternatives?

When comparing tree-sitter-module and .emacs.d you can also consider the following projects:

treesit-auto - Automatic installation, usage, and fallback for tree-sitter major modes in Emacs 29

projectile - Project Interaction Library for Emacs

tree-sitter-langs - Language bundle for Emacs's tree-sitter package

dogears.el - Never lose your place in Emacs again

tree-sitter-c-sharp - C# Grammar for tree-sitter

tree-sitter-typescript - TypeScript grammar for tree-sitter

diff-hl - Emacs package for highlighting uncommitted changes

nvim-treesitter-textobjects

gumshoe

git-sim - Visually simulate Git operations in your own repos with a single terminal command.

doom - Doom Emacs config