tree-sitter-c VS csharp-mode

Compare tree-sitter-c vs csharp-mode and see what are their differences.

tree-sitter-c

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

csharp-mode

A major-mode for editing C# in emacs (by emacs-csharp)
SurveyJS: Build JSON-Driven Surveys and Forms with Full Data Control
Add the SurveyJS UI components to your JS app (React/Angular/Vue3). Securely collect and analyze data without sending it to 3rd-party servers. Fully customizable, works with any backend, and ideal for data-heavy apps. Learn more.
surveyjs.io
featured
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video.
Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
getstream.io
featured
tree-sitter-c csharp-mode
8 4
328 158
3.4% 0.6%
5.7 0.0
28 days ago about 3 years ago
JavaScript Emacs Lisp
MIT License GNU General Public License v3.0 only
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-c

Posts with mentions or reviews of tree-sitter-c. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2025-02-28.
  • Show HN: Globstar – Open-source static analysis toolkit
    9 projects | news.ycombinator.com | 28 Feb 2025
    Supporting C / C++ is in our roadmap. It needs some additional work to handle preprocessor directives [1] [2], which is why we didn't focus on it for the initial release.

    [1] https://github.com/tree-sitter/tree-sitter-c/issues/13

    [2] https://github.com/tree-sitter/tree-sitter-c/issues/108

  • How to Get Started with Tree-Sitter
    4 projects | /r/emacs | 28 May 2023
  • Emacs and Java Development: Corfu + Cape + LSP-Mode + Treesit
    21 projects | /r/emacs | 19 May 2023
  • GitHub code search is generally available
    3 projects | news.ycombinator.com | 8 May 2023
    The feature isn't working well yet on C and C++. If I recall correctly it's based on Tree-Sitter[1] parsing, and there are still too many bugs in corresponding grammars - tree-sitter-c[2] and tree-sitter-cpp[3]. Hopefully, it will be greatly improved in the future as the share of the existing and newly written code in C and C++ is quite significant.

    [1] https://tree-sitter.github.io/tree-sitter/

    [2] https://github.com/tree-sitter/tree-sitter-c/issues

    [3] https://github.com/tree-sitter/tree-sitter-cpp/issues

  • Indent 8 spaces
    1 project | /r/HelixEditor | 8 Jan 2023
    [[language]] name = "c" scope = "source.c" injection-regex = "c" file-types = ["c"] # TODO: ["h"] roots = [] comment-token = "//" language-server = { command = "clangd" } indent = { tab-width = 8, unit = " " } [language.debugger] name = "lldb-vscode" transport = "stdio" command = "lldb-vscode" [[language.debugger.templates]] name = "binary" request = "launch" completion = [ { name = "binary", completion = "filename" } ] args = { console = "internalConsole", program = "{0}" } [[language.debugger.templates]] name = "attach" request = "attach" completion = [ "pid" ] args = { console = "internalConsole", pid = "{0}" } [[language.debugger.templates]] name = "gdbserver attach" request = "attach" completion = [ { name = "lldb connect url", default = "connect://localhost:3333" }, { name = "file", completion = "filename" }, "pid" ] args = { console = "internalConsole", attachCommands = [ "platform select remote-gdb-server", "platform connect {0}", "file {1}", "attach {2}" ] } [[grammar]] name = "c" source = { git = "https://github.com/tree-sitter/tree-sitter-c", rev = "7175a6dd5fc1cee660dce6fe23f6043d75af424a" }
  • Building tree-sitter languages for Emacs
    20 projects | /r/emacs | 30 Dec 2022
  • treesitter printf format highlighting?
    1 project | /r/neovim | 27 Oct 2021
    There's no way to highlight format specs currently, since the treesitter C grammar doesn't specify them. You could open an issue on the tree-sitter-c repo.
  • Tree-sitter: an incremental parsing system for programming tools
    24 projects | news.ycombinator.com | 22 Feb 2021
    [1] https://github.com/tree-sitter/tree-sitter-c/issues/51

csharp-mode

Posts with mentions or reviews of csharp-mode. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-02-22.

What are some alternatives?

When comparing tree-sitter-c and csharp-mode you can also consider the following projects:

tree-sitter-cpp - C++ grammar for tree-sitter

parser - A Ruby parser.

tree-sitter-rust - Rust grammar for tree-sitter

Moose - MOOSE - Platform for software and data analysis.

tree-sitter-kotlin - Kotlin grammar for Tree-sitter

moose - Multiphysics Object Oriented Simulation Environment

SurveyJS: Build JSON-Driven Surveys and Forms with Full Data Control
Add the SurveyJS UI components to your JS app (React/Angular/Vue3). Securely collect and analyze data without sending it to 3rd-party servers. Fully customizable, works with any backend, and ideal for data-heavy apps. Learn more.
surveyjs.io
featured
Stream - Scalable APIs for Chat, Feeds, Moderation, & Video.
Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
getstream.io
featured

Did you know that JavaScript is
the 4th most popular programming language
based on number of references?