neovim-lua VS kickstart.nvim

Compare neovim-lua vs kickstart.nvim and see what are their differences.

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
neovim-lua kickstart.nvim
25 284
799 14,592
- 22.2%
3.6 9.0
27 days ago 7 days ago
Lua Lua
GNU General Public License v3.0 only 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.

neovim-lua

Posts with mentions or reviews of neovim-lua. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-01-18.
  • GitHub - brainfucksec/neovim-lua: Neovim KISS configuration with Lua - Update config with lazy.nvim and other changes.
    1 project | /r/neovim | 25 Feb 2023
  • Finally written my nvim config in lua here is the link of my dots https://github.com/mdk4if/nvimDots.git . It's not too good i am damn sure but i will make it better for sure . Thanks for reading
    2 projects | /r/neovim | 18 Jan 2023
    I used this as a starting point: https://github.com/brainfucksec/neovim-lua/blob/main/nvim/lua/core/options.lua, but remove matchit from the table.
  • LSP warnings when assigning most vim options
    2 projects | /r/neovim | 3 Jan 2023
    -- LSP Configuration & Plugins local M = { 'neovim/nvim-lspconfig', event = "BufReadPre", dependencies = { -- Automatically install LSP servers, DAP servers, linters, formatters 'williamboman/mason.nvim', -- Recommended when using mason together with LSP, bridges the gap 'williamboman/mason-lspconfig.nvim', -- Useful status updates for LSP 'j-hui/fidget.nvim', -- Additional lua configuration 'folke/neodev.nvim', -- Integration "hrsh7th/cmp-nvim-lsp", -- Integration 'kevinhwang91/nvim-ufo', }, } function M.config() require("mason").setup() local u = require("core/utils") -- Customizing how diagnostics are displayed, source: https://github.com/brainfucksec/neovim-lua/blob/main/nvim/lua/lsp/lspconfig.lua vim.diagnostic.config({ update_in_insert = true, float = { focusable = false, style = "minimal", border = "rounded", source = "always", header = "", prefix = "", }, }) -- diagnostic (l) -- See `:help vim.diagnostic.*` for documentation on any of the below functions local opts = { noremap=true, silent=true } u.bind(u.normal, "Show diagnostics in a floating window (#lsp)", "ll", vim.diagnostic.open_float, opts) u.bind(u.normal, "Goto next diagnostic (#lsp)", "ln", vim.diagnostic.goto_next, opts) u.bind(u.normal, "Goto previous diagnostic (#lsp)", "lp", vim.diagnostic.goto_prev, opts) u.bind(u.normal, "Show diagnostics list in location list (#lsp)", "lq", vim.diagnostic.setloclist, opts) -- Use an on_attach function to only map the following keys -- after the language server attaches to the current buffer local on_attach = function(_, bufnr) -- Enable completion triggered by vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc') -- lsp (l) -- See `:help vim.lsp.*` for documentation on any of the below functions local bufopts = { noremap=true, silent=true, buffer=bufnr } u.bind(u.normal, "Jump to definition (#lsp)", {"ld", "gd"}, vim.lsp.buf.definition, bufopts) u.bind(u.normal, "Jump to declaration (#lsp)", {"lD", "gD"}, vim.lsp.buf.declaration, bufopts) u.bind(u.normal, "Jump to type definition (#lsp)", "lt", vim.lsp.buf.type_definition, bufopts) u.bind(u.normal, "Show implementations list in quickfix window (#lsp)", {"li", "gi"}, vim.lsp.buf.implementation, bufopts) u.bind(u.normal, "Show references in the quickfix window (#lsp)", {"lr", "gr"}, vim.lsp.buf.references, bufopts) u.bind(u.normal, "Show signature help in floating window (#lsp)", {"lk", ""}, vim.lsp.buf.signature_help, bufopts) u.bind(u.normal, "Show hover information in floating window (#lsp)", "lK", vim.lsp.buf.hover, bufopts) vim.keymap.set("n", "K", function() local winid = require("ufo").peekFoldedLinesUnderCursor() if not winid then vim.lsp.buf.hover() end end) u.bind(u.normal, "Rename buffer (#lsp)", "lR", vim.lsp.buf.rename, bufopts) u.bind(u.normal, "Select code action (#lsp)", "la", vim.lsp.buf.code_action, bufopts) u.bind(u.normal, "Format buffer (#lsp)", "lf", function() vim.lsp.buf.format { async = true } end, bufopts) -- workspace u.bind(u.normal, "Add buffer location as workspace folder (lsp)", "lw", vim.lsp.buf.add_workspace_folder, bufopts) u.bind(u.normal, "Remove buffer location as workspace folder (lsp)", "lW", vim.lsp.buf.remove_workspace_folder, bufopts) u.bind(u.normal, "List workspace folders (lsp)", "lL", function() print(vim.inspect(vim.lsp.buf.list_workspace_folders())) end, bufopts) u.bind(u.normal, "Show workspace diagnostics in Telescope (lsp)", "lQ", "Telescope diagnostics", bufopts) end -- nvim-cmp supports additional completion capabilities, so broadcast that to servers local capabilities = vim.lsp.protocol.make_client_capabilities() capabilities = require('cmp_nvim_lsp').default_capabilities(capabilities) -- Neovim hasn't added foldingRange to default capabilities, users must add it manually, source: https://github.com/kevinhwang91/nvim-ufo capabilities.textDocument.foldingRange = { dynamicRegistration = false, lineFoldingOnly = true } local mason_lspconfig = require("mason-lspconfig") local servers = { astro = {}, bashls = {}, cssls = {}, dockerls = {}, eslint = {}, graphql = {}, html = {}, jsonls = { on_new_config = function(new_config) new_config.settings.json.schemas = new_config.settings.json.schemas or {} vim.list_extend(new_config.settings.json.schemas, require("schemastore").json.schemas()) end, settings = { json = { format = { enable = true, }, validate = { enable = true }, }, }, }, tsserver = {}, marksman = {}, pyright = {}, tailwindcss = {}, yamlls = {}, sumneko_lua = { Lua = { workspace = { checkThirdParty = false }, telemetry = { enable = false }, diagnostics = { -- Get the language server to recognize the `vim` global. globals = { 'vim', 'require' }, }, }, }, } -- Setup neovim lua configuration require('neodev').setup() mason_lspconfig.setup { ensure_installed = vim.tbl_keys(servers), automatic_installation = true, } local lspconfig = require("lspconfig") mason_lspconfig.setup_handlers { -- This is a default handler that will be called for each installed server (also for new servers that are installed during a session) function (server_name) lspconfig[server_name].setup { on_attach = on_attach, capabilities = capabilities, settings = servers[server_name], } end, } -- Turn on lsp status information require('fidget').setup() end return M
  • What are best plugins for C++, Java, Kotlin, Python, & LaTex
    9 projects | /r/neovim | 30 Dec 2022
    I'm not a lua expert, so prior, I simply grabbed one off GitHub, and made a few changes. It's been okay, but does not support LSP for Java or Kotlin. And doesn't use fzf (telescope?).
  • Appending to errorformat breaks quickfix
    1 project | /r/neovim | 20 Nov 2022
    Disclaimer: It may appear that I know what the hell I am doing with lua, but I do not. I am using a lua configuration from here: https://github.com/brainfucksec/neovim-lua. I am appending the above to his options.lua and am copying his append example from above in the same file.
  • neovim-lua - Working on improvements for LSP and celebrating 2 years with Lua
    4 projects | /r/neovim | 18 Nov 2022
    neovim-lua
  • What is the most reliable neovim based editor?
    1 project | /r/neovim | 18 Nov 2022
    What I ended up starting with that worked out of the box was brainfucksec’s kiss setup
  • wanting to switch from vscode to neovim
    10 projects | /r/neovim | 26 Sep 2022
    Rather than NvChad, I think this might be a better place to start since it includes only those you need This playlist was very helpful: https://www.youtube.com/watch?v=ctH-a-1eUME&list=PLhoH5vyxr6Qq41NFL4GvhFp-WLd5xzIzZ
  • I am getting ready to make a new lua config and want a basic config to start with.
    4 projects | /r/neovim | 31 Aug 2022
    https://github.com/brainfucksec/neovim-lua I found this one pretty simple, still all the basics are covered.
  • Share any cool configuration templates that you know
    5 projects | /r/neovim | 11 Aug 2022

kickstart.nvim

Posts with mentions or reviews of kickstart.nvim. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-05.
  • Using a venv with Neovim's Python LSP
    2 projects | dev.to | 5 Apr 2024
    I recently started coding with Neovim using kickstart.nvim as the template for my editor configuration. I downloaded the python-lsp-server package using Mason, but I was disappointed to discover that the IntelliSense on my third party dependencies didn't work. The LSP was resolving to my global Python installation, which did not have the packages from my virtual environment (venv) installed.
  • I Learned Neovim In A Weekend
    1 project | dev.to | 11 Mar 2024
    First thing I did was get kickstart.nvim. I had heard it was extremely useful (and it was). It was very easy to install. I start reading through init.lua, and it told me to run :Tutor, which is almost 1,000 lines of learning how to use Neovim, to which I obviously ran that command and started reading. Obviously, it takes a bit of time to complete :Tutor, but it's well worth it. "hjkl" wasn't too hard to get used to, also repeating motions by using numbers was useful, such as using '5dd' to delete 5 lines. I highly suggest reading this file, especially since I didn't really know about the different modes, which is probably why I failed to switch the other times. You would start writing your code, then Neovim would say that it can't find that command, you would accidently type an i and then start typing, and so on, it was a nightmare. For those that don't know the modes, here is each mode and how to get between them.
  • Kickstart.nvim: Single file launch point for a personal nvim config
    1 project | news.ycombinator.com | 7 Mar 2024
  • Neovide – a simple, no-nonsense, cross-platform GUI for Neovim
    17 projects | news.ycombinator.com | 31 Jan 2024
    I also suggest against using distributions. Instead of learning how to configure nvim itself you're learning to configure that specific distro.

    I suggest to take someone's lua config and start from there. Kickstart.nvim is a good one: https://github.com/nvim-lua/kickstart.nvim

  • It’s been an hour and I have made no progress
    2 projects | /r/neovim | 9 Dec 2023
  • Do I need NeoVIM?
    11 projects | /r/neovim | 7 Dec 2023
    1) the option I wouldn’t chose, use Kickstarter. It’s a minimal starter config, using a single init.lua that helps you build a config slowly. https://github.com/nvim-lua/kickstart.nvim
  • ready to use neovim for web development (frontend) - beginners
    4 projects | /r/neovim | 5 Dec 2023
    I highly recommend Lazyvim for if you want to have a VSCode (ish) like experience that still exposes you to configuring in Lua. Or Kickstart.nvim if you want a more "from scratch" experience
  • Search commands slow in neovim but fast in vim
    2 projects | /r/neovim | 2 Dec 2023
    In case it is helpful, I am using kickstart.nvim with only minor modifications.
  • Kickstart.emacs Starter kit for Gnu Emacs
    2 projects | /r/emacs | 13 Nov 2023
    One of the project goals is to become something like kickstart.nvim. Or, to be a reference if someone doesn't know how to do something.
  • I want to remove this "./" path on the nvim explorer
    1 project | /r/neovim | 12 Nov 2023
    Hey guys! I don't use the "./" path at all since I see it useless, I would love to remove it to be kind with my own soul, I'd love some help with this. My nvim setup is kickstart.nvim with Lua of course.

What are some alternatives?

When comparing neovim-lua and kickstart.nvim you can also consider the following projects:

NvChad - Blazing fast Neovim config providing solid defaults and a beautiful UI, enhancing your neovim experience.

vista.vim - :cactus: Viewer & Finder for LSP symbols and tags

nvim-lua-guide - A guide to using Lua in Neovim

Neovim-from-scratch - 📚 A Neovim config designed from scratch to be understandable

LazyVim - Neovim config for the lazy

NvChad - An attempt to make neovim cli as functional as an IDE while being very beautiful , blazing fast. [Moved to: https://github.com/NvChad/NvChad]

lazy.nvim - 💤 A modern plugin manager for Neovim

Cozette - A bitmap programming font optimized for coziness 💜

KotlinLanguageServer - Kotlin code completion, diagnostics and more for any editor/IDE using the Language Server Protocol

packer.nvim - A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config