vim-lsp-cxx-highlight
vim-matchup
vim-lsp-cxx-highlight | vim-matchup | |
---|---|---|
7 | 37 | |
335 | 1,601 | |
- | - | |
0.0 | 6.7 | |
over 1 year ago | 7 days ago | |
Vim Script | Vim Script | |
MIT License | MIT License |
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.
vim-lsp-cxx-highlight
-
Need help with C/C++ setup for proper highlighting and LSP features
This vim plugin has worked for me for semantic highlighting: https://github.com/jackguo380/vim-lsp-cxx-highlight
-
Colored statusline doesn't load at start; I need to manually source $MYVIMRC
" This file contains common and basic plugins too essential not to include " See https://github.com/junegunn/vim-plug/wiki/tutorial " Auto install vim-plug (if not already installed) if empty(glob('~/.config/nvim/autoload/plug.vim')) silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim autocmd VimEnter * PlugInstall endif " Run PlugInstall if there are missing plugins autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)')) \| PlugInstall --sync | source $MYVIMRC \| endif " enable Vim-Plug: call plug#begin('~/.config/nvim/plugged') " Install/update plugins Plug 'https://github.com/tpope/vim-commentary.git' Plug 'https://github.com/morhetz/gruvbox' " Better C/C++ syntax highlighting; Plug 'https://github.com/jackguo380/vim-lsp-cxx-highlight' call plug#end() "---------- Basic configs ---------------------------------------------------- autocmd vimenter * ++nested colorscheme gruvbox " Enable transparent background let g:gruvbox_transparent_bg = 1
-
How to make it so my variable names are highlighted?
By looking around the Web, I think you can maybe do what you want in Vim with this plugin, which requires you to setup an LSP server for C (note: I haven't tried it). Otherwise, the way Vim makes its syntax highlighting (natively) simply cannot compete with tree-sitter or LSP-based highlighting which construct the entire AST of your code, because C's syntax is too complex. There is a proposal to include an alternative syntax highlighting system, but work on it hasn't even started as far as I know, so vim-lsp-cxx-highlight and tree-sitter are really the only way to highlight identifiers in C/C++.
-
How do I use ifdef-highlighting
I use coc.nvim with e.g. coc-clangd extension (with https://github.com/jackguo380/vim-lsp-cxx-highlight for extra highlighting, but that might not be necessary anymore with some recent update I think I read somewhere) which has a similar feature, but uses the compiler settings from a compile_commands.json or some configuration file to know which defines are which value, to do this kind of ifdef block highlighting.
-
Seeking for advice on a particular LSP setup
I was abled to build ccls on a RHEL 6 machine which also supports semantic highlighting with the help of this plugin. Would suggest to try that out.
- Is it possible to get LSP-aware highlighting for C++ with neovim LSP client using ccls or clangd?
- https://np.reddit.com/r/neovim/comments/jwhf60/error_using_ccls_with_nvim/gv25dc6/
vim-matchup
-
Existing non-lua plugins examples
Then you have all the vimscript plugins, most of which work in neovim too--my favorite of these is vim-matchup
-
Should vim-matchup go into neovim core?
It seems like https://github.com/andymass/vim-matchup is a superior version of both of them, at least that's how it's advertized.
-
Help Mapping Keys
Have you tried vim-matchup?
-
Set it and forget it plugins?
andymass/vim-matchup - nicer %
-
What's your solution to move between " "?
Thank you for you answer! This is the best option I've found by far. But some aditional steps need to be done to enable this behavior. It is documented here vim-matchup
-
Looking for some kinda specific plugins for visibility
vim-matchup does both of this things
-
Matching of Bracket Under Cursor Not Working
If you don't wanna deal with matchparen, you could also consider using vim-matchup, which has better performance than matchparen and can match way more tokens and keywords.
-
Do you use the "%" motion? Do you feel it has "quirks"?
vim-matchup improves these motions.and has a lot of nice features.
-
Which vim plugins do not have a lua equivalent yet?
vim-matchup is written in lua, isn't it? https://github.com/andymass/vim-matchup/tree/master/lua
-
TS-Node-Action: Inline Text Folding
https://github.com/andymass/vim-matchup Plus come custom highlight groups
What are some alternatives?
ale - Check syntax in Vim/Neovim asynchronously and fix files, with Language Server Protocol (LSP) support
todo-comments.nvim - ✅ Highlight, list and search todo comments in your projects
ifdef-highlighting - #ifdef highlighting in c/c++/idl
vim-sandwich - Set of operators and textobjects to search/select/edit sandwiched texts.
clangd-nvim - Neovim plugin for semantic highlighting in C++ based on Neovim's build-in LSP support. Mirror of https://gitlab.com/robert-oleynik/clangd-nvim/
lspkind.nvim - vscode-like pictograms for neovim lsp completion items
neovim - Vim-fork focused on extensibility and usability
FastFold - Speed up Vim by updating folds only when called-for.
clangd_extensions.nvim - Clangd's off-spec features for neovim's LSP client. Use https://sr.ht/~p00f/clangd_extensions.nvim instead
nvim-treesitter-pairs
kok.nvim - Fast as FUCK nvim completion. SQLite, concurrent scheduler, hundreds of hours of optimization.