tree-sitter-rust
nvim-treesitter
tree-sitter-rust | nvim-treesitter | |
---|---|---|
8 | 309 | |
372 | 11,212 | |
2.7% | 2.8% | |
7.8 | 9.9 | |
about 1 month ago | 2 days ago | |
JavaScript | Scheme | |
MIT License | Apache License 2.0 |
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-rust
-
Topiary: A code formatting engine leveraging Tree-sitter
Yes. It's typically a fair bit slower than a hand-coded parser. The idea sounds great until you're working on a codebase with 2 million LOC. At that point, the speed of a cold parse is most important, whereas TS is designed for fast re-parsing of a single file. These aren't great numbers but the Rust TS parser is reportedly 2x slower than rustc's https://github.com/tree-sitter/tree-sitter-rust. It's no surprise that you just use the faster option if it's convenient.
- Emacs and Java Development: Corfu + Cape + LSP-Mode + Treesit
- Treesitter large file performance... Even with everything disabled?
- Building tree-sitter languages for Emacs
-
Is it possible to have Rust doc test comments highlighted in Neovim?
Notes for anyone interested, there is this PR https://github.com/tree-sitter/tree-sitter-rust/pull/128, which merges successive doc comments.
-
Rust and Neovim - A Thorough Guide and Walkthrough
Tree-sitter is a fantastic parser generation and incremental parsing library, that supports Rust language bindings and has an available parser Rust tree-sitter-rust.
-
Plugins to help writing a new tree-sitter parser?
You can see a much more in-depth version at https://github.com/tree-sitter/tree-sitter-typescript or https://github.com/tree-sitter/tree-sitter-rust
-
Is rust-analyzer for neovim ever going to support semantic syntax highlighting?
I'll be really interested to see what folks end up preferring once nvim 0.5 ships with treesitter support. Do folks have any experience with the Rust grammar?
nvim-treesitter
-
How to Setup Vim for Kotlin Development
Neovim could use the default regex based grammar that Vim uses for syntax highlighting. But I recommended installing treesitter. This uses a concrete syntax tree to provide more semantic meaning to tokens, allowing enriched (and faster) highlighting.
- Ask HN: Current best open-source or commercial automated LLM coding agent?
-
Lite 🚀 ApolloNvim Distro 2024
👉 Tree-sitter plugin for code highlighting.
-
Neovim for beginners
Treesitter is what makes your neovim colorful. It uses the LSP and colorscheme and colors your variables, keywords and other stuff. To understand how treesitter works and configure treesitter please read the docs. Here is my configuration for treesitter:
-
Simple Neovim config
nvim-treesitter is a plugin that has been around for 4 years now. A lot of people will say this is essential to your Neovim experience, and I do agree to some extend. It is incredibly useful... as a dependency for other plugins. It allows Neovim to gather more information about source code of the current file, and plugin authors can do really cool things that. For "normal users" like you and me there are some modules we can enable. One of them can be used to enhance the syntax highlight of many programming languages. That I think the feature nvim-treesitter is known for.
- Bro Install Neovim On Windows And Setup Neovim Without Neovim Package Manager 🙀
-
Leaving Neovim for Zed
I wouldn't really count those. Every editor with treesitter support will have those, it's for treesitter: https://github.com/nvim-treesitter/nvim-treesitter/blob/mast...
-
Customizing Your Lazyvim Setup for Personal Preferences
nvim-treesitter/nvim-treesitter (to provide a simple and easy way to use the interface for tree-sitter in Neovim and to provide some basic functionality such as highlighting based on it)
-
Ultimate Neovim Setup Guide: lazy.nvim Plugin Manager
nvim-treesitter/nvim-treesitter: Nvim Treesitter configurations and abstraction layer.
-
JetBrains' unremovable AI assistant meets irresistible outcry
I suggest looking for blog posts about this, you're gunnuh wanna pick out a plugin manager and stuff. It's kind of like a package manager for neovim. You can install everything manually but usually you manually install a plugin manager and it gives you commands to manage the rest of your plugins.
These two plugins are the bare minimum in my view.
https://github.com/nvim-treesitter/nvim-treesitter
Treesitter gives you much better syntax highlighting based on a parser for a given language.
https://github.com/neovim/nvim-lspconfig
This plugin helps you connect to a given language LSP quickly with sensible defaults. You more or less pick your language from here and copy paste a snippet, and then install the relevant LSP:
https://github.com/neovim/nvim-lspconfig/blob/master/doc/ser...
For Python you'll want pylsp. For JavaScript it will depend on what frontend framework you're using, I probably can't help you there.
pylsp itself takes some plugins and you'll probably want them. https://github.com/python-lsp/python-lsp-server
Best of luck! Happy hacking.
What are some alternatives?
coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
rust-analyzer - A Rust compiler front-end for IDEs
nvim-lspconfig - Quickstart configs for Nvim LSP
tree-sitter-graphql - Treesitter grammar for GraphQL
vim-polyglot - A solid language pack for Vim.
LanguageClient-neovim - Language Server Protocol (LSP) support for vim and neovim.
vim-python-pep8-indent - A nicer Python indentation style for vim.
rust-analyzer - A Rust compiler front-end for IDEs [Moved to: https://github.com/rust-lang/rust-analyzer]
packer.nvim - A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config
rust.vim - Vim configuration for Rust.
tree-sitter - An incremental parsing system for programming tools