nvim-lsp
stay-centered.nvim
nvim-lsp | stay-centered.nvim | |
---|---|---|
1 | 1 | |
6,664 | 36 | |
- | - | |
10.0 | 3.6 | |
over 1 year ago | 28 days ago | |
Lua | Lua | |
GNU General Public License v3.0 or later | 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.
nvim-lsp
-
Setting up a local config for clangd not working for project not working.
return { local cwd = vim.fn.getcwd(-1, -1) if cwd == "/home/jared/Projects/CPP/NakOS" then local configs = require("nvim_lsp/configs") local util = require("nvim_lsp/util") local root_pattern = util.root_pattern("compile_commands.json", "compile_flags.txt", ".git") configs.clangd = { default_config = util.utf8_config({ cmd = { "clangd", "--background-index", "--query-driver", "/home/jared/Projects/CPP/NakOS/Toolchain/opt/cross/bin/i686-elf-g++", }, filetypes = { "c", "cpp", "objc", "objcpp" }, root_dir = function(fname) local filename = util.path.is_absolute(fname) and fname or util.path.join(vim.loop.cwd(), fname) return root_pattern(filename) or util.path.dirname(filename) end, }), -- commands = {}; -- on_new_config = function(new_config) end; -- on_attach = function(client, bufnr) end; docs = { description = [[ https://clang.llvm.org/extra/clangd/Installation.html **NOTE:** Clang >= 9 is recommended! See [this issue for more](https://github.com/neovim/nvim-lsp/issues/23). clangd relies on a [JSON compilation database](https://clang.llvm.org/docs/JSONCompilationDatabase.html) specified as compile_commands.json or, for simpler projects, a compile_flags.txt. ]], default_config = { root_dir = [[root_pattern("compile_commands.json", "compile_flags.txt", ".git") or dirname]], on_init = [[function to handle changing offsetEncoding]], capabilities = [[default capabilities, with offsetEncoding utf-8]], }, }, } end }
stay-centered.nvim
-
How do you keep the cursor in the vertical center of the screen
The only remedy I could find so far is to use arnamak/stay-centered.nvim. This seems to be working well, even after folding, but I haven't tested it on real projects / larger files yet. The plug-in calls scrolloff in the CursorMoved / CursorMovedI events and I worry it'll be slow.
What are some alternatives?
deep-symbols - LSP document symbols improved
AstroNvim - AstroNvim is an aesthetic and feature-rich neovim config that is extensible and easy to use with a great set of plugins
CuberiteExamplePlugin - [WIP] This is an example plugin to get you comfortable with Cuberite plugins etc
LunarVim - 🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven.
nlsp-settings.nvim - A plugin for setting Neovim LSP with JSON or YAML files
telescope.nvim - Find, Filter, Preview, Pick. All lua, all the time.
cellular-automaton.nvim - A useless plugin that might help you cope with stubbornly broken tests or overall lack of sense in life. It lets you execute aesthetically pleasing, cellular automaton animations based on the content of neovim buffer.
packer.nvim - A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config
pwnvim - 👾 Neovim, the k1ss way [Moved to: https://github.com/pwnwriter/pwnvim]
nvim-lspconfig - Quickstart configs for Nvim LSP
csv-tools.lua - for csv
NvChad - Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.