lspkind-nvim
gitsigns.nvim
lspkind-nvim | gitsigns.nvim | |
---|---|---|
4 | 80 | |
541 | 4,388 | |
- | - | |
6.2 | 9.2 | |
about 2 years ago | 5 days ago | |
Lua | Lua | |
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.
lspkind-nvim
-
Configurando Neovim para Java
local cmp = require 'cmp'; local lspkind = require 'lspkind' cmp.setup({ snippet = { expand = function(args) require('luasnip').lsp_expand(args.body) end }, mapping = cmp.mapping.preset.insert({ ['C-Space'] = cmp.mapping.complete(), [''] = cmp.mapping.confirm({ behavior = cmp.ConfirmBehavior.Replace, select = true }), }), sources = cmp.config.sources({ { name = 'nvim_lsp' }, { name = 'buffer' }, }), formatting = { format = lspkind.cmp_format({ mode = 'symbol', -- show only symbol annotations maxwidth = 50, -- prevent the popup from showing more than provided characters (e.g 50 will not show more than 50 characters) ellipsis_char = '...', -- when popup menu exceed maxwidth, the truncated part would show ellipsis_char instead (must define maxwidth first) -- The function below will be called before any actual modifications from lspkind -- so that you can provide more controls on popup customization. (See [#30](https://github.com/onsails/lspkind-nvim/pull/30)) before = function(entry, vim_item) return vim_item end }) } }) require('jdtls').start_or_attach(config)
-
Neovim - Workflow para Java, C# e JS/TypeScript (Atualização com Neovim 0.8 e LSP)
lspkind-nvim: plugin para adicionar ícones nas entidades de LSP (classe, método, snippet, etc) igual ao VS Code.
-
My Neovim setup for React, TypeScript, Tailwind CSS, etc
onsails/lspkind-nvim - VSCode-like pictograms
-
CMP acting up
local cmp_status_ok, cmp = pcall(require, "cmp") if not cmp_status_ok then return end local lspkind_status_ok, lspkind = pcall(require, "lspkind") if not lspkind_status_ok then return end local check_backspace = function() local col = vim.fn.col(".") - 1 return col == 0 or vim.fn.getline("."):sub(col, col):match("%s") end local source_mapping = { nvim_lsp = "[LSP]", cmp_tabnine = "[TN]", buffer = "[Buffer]", path = "[Path]", } cmp.setup({ mapping = { [""] = cmp.mapping.select_prev_item(), [""] = cmp.mapping.select_next_item(), [""] = cmp.mapping(cmp.mapping.scroll_docs(-1), { "i", "c" }), [""] = cmp.mapping(cmp.mapping.scroll_docs(1), { "i", "c" }), [""] = cmp.mapping(cmp.mapping.complete(), { "i", "c" }), [""] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `` mapping. [""] = cmp.mapping({ i = cmp.mapping.abort(), c = cmp.mapping.close(), }), -- Accept currently selected item. If none selected, `select` first item. -- Set `select` to `false` to only confirm explicitly selected items. [""] = cmp.mapping.confirm({ select = true }), [""] = cmp.mapping(function(fallback) if cmp.visible() then cmp.select_next_item() else fallback() end end, { "i", "s" }), [""] = cmp.mapping(function(fallback) if cmp.visible() then cmp.select_prev_item() else fallback() end end, { "i", "s" }), }, formatting = { fields = { "kind", "abbr", "menu" }, format = lspkind.cmp_format({ mode = "symbol_text", -- options: 'text', 'text_symbol', 'symbol_text', 'symbol' maxwidth = 40, -- prevent the popup from showing more than provided characters (e.g 50 will not show more than 50 characters) -- The function below will be called before any actual modifications from lspkind -- so that you can provide more controls on popup customization. (See [#30](https://github.com/onsails/lspkind-nvim/pull/30)) before = function(entry, vim_item) vim_item.kind = lspkind.presets.default[vim_item.kind] local menu = source_mapping[entry.source.name] if entry.source.name == "cmp_tabnine" then if entry.completion_item.data ~= nil and entry.completion_item.data.detail ~= nil then menu = entry.completion_item.data.detail .. " " .. menu end vim_item.kind = "" end vim_item.menu = menu return vim_item end, }), }, sources = { { name = "nvim_lsp" }, { name = "cmp_tabnine" }, { name = "buffer" }, { name = "path" }, }, confirm_opts = { behavior = cmp.ConfirmBehavior.Replace, select = false, }, experimental = { ghost_text = false, }, }) local tabnine = require("cmp_tabnine.config") tabnine:setup({ max_lines = 1000, max_num_results = 20, sort = true, run_on_every_keystroke = true, snippet_placeholder = "..", ignored_file_types = { -- default is not to ignore -- uncomment to ignore in lua: -- lua = true }, show_prediction_strength = true, })
gitsigns.nvim
-
Please, help with highlights.
those are gitsigns. read :h gitsigns-highlight-groups. i think the first 3 ones (gitsignsadd, gitsignschange, gitsignsdelete) would need their background cleared.
-
Gitsigns thinks that new lines in Windows are differences
I have installed Gitsigns in a Windows machine and when I execute the method diffthis it thinks that the new lines are differences.
-
Algebraic data types in Lua (Almost) post
Lack of tooling/LSP support compared to Lua. A rather popular neovim plugin, gitsigns, recently switched from teal to regular lua for (among other reasons) the tooling.
https://github.com/lewis6991/gitsigns.nvim/commit/4d63d996b0...
-
Benchmarking some of my favourite neovim plugins over time
gitsigns.nvim
-
Introducing multicursors.nvim plugin
The closest one would be gitsigns
-
How to use Git?
you can use gitsigns
-
Your favourite Neovim plugins?
https://github.com/lewis6991/satellite.nvim absolutely amazing choices, visual economy, integration with gitsigns and builtin vim features (marks).
-
Hacky way to return to original window after using gitsign's `diffthis`. There must be a better way to do this.
It's also nice to ask him directly.
-
Async module in Lua for Nvim
For a long time, I have been searching for solutions for asynchrony in Neovim, but what interested me the most was the one provided by gitsigns.nvim. Therefore, I decided to turn it into a separate module to make it easier to use async in Neovim. I have already created some usage examples.
-
[New plugin] deadcolumn.nvim -- gradually show you colorcolumn as you type
Oh, the symbols are provided by gitsigns.nvim and I have set :h statuscolumn so that they appear to the right of the line numbers. The settings are done in plugin/statuscolumn.lua. I put custom single-file scripts under plugin and ftplugin, where they serve as light-weighted mini plugins, you can even find the prototype of deadcolumn.nvim there :)
What are some alternatives?
cmp-nvim-lsp - nvim-cmp source for neovim builtin LSP client
vim-fugitive - fugitive.vim: A Git wrapper so awesome, it should be illegal
lspsaga.nvim - improve neovim lsp experience [Moved to: https://github.com/nvimdev/lspsaga.nvim]
vim-gitgutter - A Vim plugin which shows git diff markers in the sign column and stages/previews/undoes hunks and partial hunks.
vscode-codicons - The icon font for Visual Studio Code
neogit - An interactive and powerful Git interface for Neovim, inspired by Magit
nvim-lspconfig - Quickstart configs for Nvim LSP
lualine.nvim - A blazing fast and easy to configure neovim statusline plugin written in pure lua.
nvim-compe - Auto completion Lua plugin for nvim
gitui - Blazing 💥 fast terminal-ui for git written in rust 🦀
nlsp-settings.nvim - A plugin for setting Neovim LSP with JSON or YAML files
NvChad - Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.