clangd
nvim-treesitter
Our great sponsors
clangd | nvim-treesitter | |
---|---|---|
52 | 300 | |
1,274 | 9,225 | |
4.8% | 6.0% | |
2.2 | 9.9 | |
6 days ago | about 6 hours ago | |
Shell | Scheme | |
Apache License 2.0 | 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.
clangd
-
Effect of Perceptual Load on Performance Within IDE in People with ADHD Symptoms
> As a side note, I despise things like imports and aliases. I'd prefer that when I do jump to a function, I can read it without having to check if anything is imported or not.
One idea might be to use an LSP (Language Server Protocol) interface. It could describe the fully qualified symbol for you when you, say, select the abbreviated symbol or press a keyboard shortcut. I've been working on a moderately large C program with Emacs and clangd[1] recently and have been amazed at how 'immersive' it feels, and that's from someone who's used to the comfort of a Lisp REPL!
-
vscode alternative for C++ on M1 mac?
Come to the light side: VSCodium with clangd
More Details here: https://clangd.llvm.org/
-
Looking for projects to contribute to
If you use the clangd LSP: https://github.com/clangd/clangd/issues
-
C++ dev environment in pure lua based plugins.
Overall I think it’s pretty good. Though I’ve found a nasty clangd bug might push me back to YCM. Though. I don’t recall this being a issue in my previous vim setup.
- Lazyvim/Neovim Formatting Issue upon saving: A space is required between consecutive right angle brackets (use '> >') (fix available) clang
-
Most comfortable with C/C++. Want to make the jump to Rust.
That's why most people don't even try to do that, they use clangd instead.
-
First time nvim user here. Wanted to ask some questions.
- set up neovim with "intellisense" (language server + code completion). I would suggest https://github.com/VonHeikemen/lsp-zero.nvim with the "recommended" preset to start with. From there,when you edit a C++ file for the first time, I'll ask if you want to add a language server for it: just say "YES". This will install `clangd` (https://clangd.llvm.org/) automagically.
-
neovim-lua - Working on improvements for LSP and celebrating 2 years with Lua
LSP is just a communication protocol. You need two parts: an LSP client and a server. What Neovim includes is the client, the part that integrates with the editor. You will still need a separate server for each language, e.g. pylsp for Python or clangd for C. These are separate programs which exist outside of Neovim, they are editor-agnostic and can be used with any other LSP client as well.
-
linux c++ devs, what does your dev environment look like?
clangd as lsp server
nvim-treesitter
-
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.
-
Do I need NeoVIM?
https://github.com/hrsh7th/nvim-cmp This is an autocompletion engine https://github.com/nvim-treesitter/nvim-treesitter This allows NeoVim to install parsing scripts so NeoVim can do things like code highlighting. https://github.com/williamboman/mason.nvim Not strictly necessary, but allows you to access a repo of LSP, install them, and configure them for without you actively messing about in config files. https://github.com/neovim/nvim-lspconfig Also not strictly necessary, but vastly simplifies LSP setup. https://github.com/williamboman/mason-lspconfig.nvim This lets the above two plugins talk to each other more easily.
- Problem with highlighting when attempting to create own treesitter parser
-
neorg problem, all other plugins deactivate when added to init.lua
vim.opt.rtp:prepend(lazypath) require('lazy').setup({ { "nvim-neorg/neorg", build = ":Neorg sync-parsers", opts = { load = { ["core.defaults"] = {}, -- Loads default behaviour ["core.concealer"] = {}, -- Adds pretty icons to your documents ["core.dirman"] = { -- Manages Neorg workspaces config = { workspaces = { notes = "~/notes", }, defaultworkspace = "notes", }, }, }, }, dependencies = { { "nvim-lua/plenary.nvim", }, { -- YOU ALMOST CERTAINLY WANT A MORE ROBUST nvim-treesitter SETUP -- see https://github.com/nvim-treesitter/nvim-treesitter "nvim-treesitter/nvim-treesitter", opts = { auto_install = true, highlight = { enable = true, additional_vim_regex_highlighting = false, }, }, config = function(,opts) require('nvim-treesitter.configs').setup(opts) end }, { "folke/tokyonight.nvim", config=function(,) vim.cmd.colorscheme "tokyonight-storm" end,}, }, }, }) require 'plugins' ```
- What is this color scheme
-
How do you fix inconsistent colorscheme (struct and class)?
Install nvim-treesitter
-
tree-sitter-comment now supports http/s links
To use it, just update to the latest version of nvim-treesitter, and don't forget to run `:TSUpdate` and have the comment parser installed.
-
Plugin for Automatic Highlight of Custom (typedef-d) Types?
If you are using Neovim, Tree-sitter does this very well for quite a number of languages, inc C and C++. https://github.com/nvim-treesitter/nvim-treesitter
-
[WIP] A feature-rich, polished, highly customizable winbar, with drop down menu support and multiple backends
Zero-depency, yes, this is not another extension of navic. It does not even depends on nvim-treesitter or nvim-lspconfig, nor do you need to register an 'on_attach' function. as long as treesitter parsers or language servers are intalled correctly, the winbar should start working out of the box
-
How do I show Markdown headings in different colours?
Are you using tree sitter? If so support for this was merged relatively recently https://github.com/nvim-treesitter/nvim-treesitter/pull/4798
What are some alternatives?
ccls - C/C++/ObjC language server supporting cross references, hierarchies, completion and semantic highlighting
coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
nvim-lspconfig - Quickstart configs for Nvim LSP
vim-polyglot - A solid language pack for Vim.
vim-python-pep8-indent - A nicer Python indentation style for vim.
packer.nvim - A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config
tree-sitter - An incremental parsing system for programming tools
telescope.nvim - Find, Filter, Preview, Pick. All lua, all the time.
nvim-autopairs - autopairs for neovim written in lua
indent-blankline.nvim - Indent guides for Neovim
semshi - 🌈 Semantic Highlighting for Python in Neovim