lspkind-nvim
vscode-like pictograms for neovim lsp completion items [Moved to: https://github.com/onsails/lspkind.nvim] (by onsails)
vim-floaterm
:computer: Terminal manager for (neo)vim (by voldikss)
lspkind-nvim | vim-floaterm | |
---|---|---|
4 | 59 | |
541 | 2,388 | |
- | - | |
6.2 | 5.9 | |
about 2 years ago | 27 days ago | |
Lua | Vim Script | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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
Posts with mentions or reviews of lspkind-nvim.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-16.
-
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, })
vim-floaterm
Posts with mentions or reviews of vim-floaterm.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-16.
-
Terminal workflow with GUI Neovim
Using https://github.com/voldikss/vim-floaterm and remap the same shortcuts to (un)toggle the terminal would be interesting for you, also about compatibility, because if tomorrow you use nvim in the terminal you have the same key maps.
-
Terminal filemanager that works good with neovim
vim-floaterm has wrappers around some terminal filemanagers.
-
Tools for productivity
If you don't like distro's and want to use something of your own, make sure that you have a few plugins like telescope.nvim, lazy.nvim, toggleterm.nvim Or vim-floaterm, gitsigns.nvim, which-key.nvim, which will make your neovim journey smooth. Again these are just few, but I highly recommend it.
-
Managing your files. How do you do it?
My personal favorite is ranger, a multi-panel console file manager that works nicely in a Neovim terminal. I also use floaterm to get floating terminal windows for ranger and lazygit, but that's optional. A Neovim tab with a terminal would work equally well.
-
Git CLI tools and vim
For simple tasks like opening a dirty file in nvim I prefer vim-floaterm. It has a really nice integration with a bunch of TUI tools.
- Neovim - Workflow para Java, C# e JS/TypeScript (Atualização com Neovim 0.8 e LSP)
- Plugin suggestion
-
I appreciate the excellent FTerm.nvim plugin
The two obvious candidates are vim-floaterm and toggleterm.nvim.
-
vim as a python IDE?
I’d suggest taking a look at vim-floaterm. While I don’t use this feature, it should have the ability to do what you’ve described
-
What is your approach to quick note taking during development?
vimwiki + floatterm + vimwiki-sync
What are some alternatives?
When comparing lspkind-nvim and vim-floaterm you can also consider the following projects:
cmp-nvim-lsp - nvim-cmp source for neovim builtin LSP client
toggleterm.nvim - A neovim lua plugin to help easily manage multiple terminal windows
lspsaga.nvim - improve neovim lsp experience [Moved to: https://github.com/nvimdev/lspsaga.nvim]
lazygit.nvim - Plugin for calling lazygit from within neovim.
vscode-codicons - The icon font for Visual Studio Code
nvim-bqf - Better quickfix window in Neovim, polish old quickfix window.
nvim-lspconfig - Quickstart configs for Nvim LSP
nvim-compe - Auto completion Lua plugin for nvim
tig - Text-mode interface for git
nlsp-settings.nvim - A plugin for setting Neovim LSP with JSON or YAML files
vim-slime - A vim plugin to give you some slime. (Emacs)
lspkind-nvim vs cmp-nvim-lsp
vim-floaterm vs toggleterm.nvim
lspkind-nvim vs lspsaga.nvim
vim-floaterm vs lazygit.nvim
lspkind-nvim vs vscode-codicons
vim-floaterm vs nvim-bqf
lspkind-nvim vs nvim-lspconfig
vim-floaterm vs lspsaga.nvim
lspkind-nvim vs nvim-compe
vim-floaterm vs tig
lspkind-nvim vs nlsp-settings.nvim
vim-floaterm vs vim-slime