Minimal config with lazy, treesitter, lsp-zero, telescope, git diffview and more - (single file, <150 lines of lua)

This page summarizes the projects mentioned and recommended in the original post on /r/neovim

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • dotfiles

    My dotfiles (by SethBarberee)

  • lazy config

  • lazy.nvim

    💤 A modern plugin manager for Neovim

  • ------------------------------------------------------------------------------- -- Options ------------------------------------------------------------------------------- vim.opt.number = true vim.opt.cursorline = true vim.opt.smartindent = true vim.opt.expandtab = true vim.opt.tabstop = 4 vim.opt.shiftwidth = 4 vim.opt.laststatus = 3 vim.opt.cmdheight = 0 vim.opt.numberwidth = 4 vim.opt.signcolumn = "yes" ------------------------------------------------------------------------------- -- Keymap ------------------------------------------------------------------------------- -- Tab/Shift+tab to indent/dedent vim.keymap.set("v", "", ">gv") vim.keymap.set("n", "", "v>") vim.keymap.set("v", "", "", "v<") vim.keymap.set("i", "", "v<^i") ------------------------------------------------------------------------------- -- Bootstrap Package Manager ------------------------------------------------------------------------------- local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not vim.loop.fs_stat(lazypath) then print("Installing 'folke/lazy.nvim'...") vim.fn.system({ "git", "clone", "https://github.com/folke/lazy.nvim.git", lazypath }) end vim.opt.rtp:prepend(lazypath) ------------------------------------------------------------------------------- -- Plugins ------------------------------------------------------------------------------- require("lazy").setup { { "sainnhe/everforest", config = function() vim.opt.termguicolors = true vim.g.everforest_background = "hard" vim.g.everforest_disable_italic_comment = true vim.cmd.colorscheme("everforest") end }, { "nvim-lualine/lualine.nvim", dependencies = "kyazdani42/nvim-web-devicons", config = true }, { "nvim-neo-tree/neo-tree.nvim", dependencies = { "nvim-lua/plenary.nvim", "kyazdani42/nvim-web-devicons", "MunifTanjim/nui.nvim" }, keys = { { "", "NeoTreeFocusToggle", mode = { "n", "i", "v" } } }, config = true }, { "ethanholz/nvim-lastplace", config = true }, { "nvim-telescope/telescope.nvim", branch = "0.1.x", dependencies = "nvim-lua/plenary.nvim", keys = { { "", "Telescope", mode = { "n", "i", "v" } }, { "", "Telescope find_files", mode = { "n", "i", "v" } }, { "", "Telescope live_grep", mode = { "n", "i", "v" } }, { "", "Telescope commands", mode = { "n", "i", "v" } }, { "", "Telescope keymaps", mode = { "n", "i", "v" } }, { "", "Telescope grep_string", mode = { "n", "i", "v" } }, }, config = true }, { "VonHeikemen/lsp-zero.nvim", dependencies = { "neovim/nvim-lspconfig", "williamboman/mason.nvim", "williamboman/mason-lspconfig.nvim", "hrsh7th/nvim-cmp", "hrsh7th/cmp-buffer", "hrsh7th/cmp-path", "saadparwaiz1/cmp_luasnip", "hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-nvim-lua", "L3MON4D3/LuaSnip", "rafamadriz/friendly-snippets", { "lukas-reineke/lsp-format.nvim", config = true }, }, config = function() local lsp = require("lsp-zero") lsp.preset("recommended") lsp.on_attach(function(client, bufnr) require("lsp-format").on_attach(client, bufnr) end) lsp.nvim_workspace() lsp.setup() vim.diagnostic.config { virtual_text = true } end }, { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate", config = function() require("nvim-treesitter.configs").setup { ensure_installed = { "c", "lua", "rust" }, highlight = { enable = true, } } end }, { "terrortylor/nvim-comment", keys = { { "", "CommentTogglej", mode = { "n" } }, { "", "CommentToggleji", mode = { "i" } }, { "", ":'<,'>CommentTogglegvj", mode = { "v" } }, }, config = function() require("nvim_comment").setup() end }, { "fedepujol/move.nvim", keys = { { "", ":MoveLine(1)", mode = { "n" } }, { "", ":MoveLine(-1)", mode = { "n" } }, { "", ":MoveBlock(1)", mode = { "v" } }, { "", ":MoveBlock(-1)", mode = { "v" } }, { "", ":MoveLine(1)i", mode = { "i" } }, { "", ":MoveLine(-1)i", mode = { "i" } }, } }, { "sindrets/diffview.nvim", dependencies = { "nvim-lua/plenary.nvim", { "TimUntersberger/neogit", config = { disable_commit_confirmation = true } }, }, commit = "9359f7b1dd3cb9fb1e020f57a91f8547be3558c6", -- HEAD requires git 2.31 keys = { { "", "DiffviewOpen", mode = { "n", "i", "v" } } }, config = { keymaps = { view = { [""] = "DiffviewClose", ["c"] = "DiffviewClose|Neogit commit", }, file_panel = { [""] = "DiffviewClose", ["c"] = "DiffviewClose|Neogit commit", }, }, } }, { "akinsho/toggleterm.nvim", config = { open_mapping = [[]], direction = "tab" } }, }

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • dotfiles

    my dotfiles for my dev setup (by EuCaue)

  • Yeah, I have one. lazy config plugins config, You can send me a link to yours config?

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Need Help With Mason.nvim

    3 projects | /r/neovim | 20 Dec 2022
  • How to override the colors of NeoSolarized in NeoVim

    3 projects | dev.to | 21 Apr 2024
  • Neorg – organize your life in Neovim

    9 projects | news.ycombinator.com | 26 Mar 2024
  • Neovim plugin management inspired by Cargo

    1 project | news.ycombinator.com | 24 Mar 2024
  • Easy Access to Terminal Commands in Neovim using FTerm

    6 projects | dev.to | 18 Mar 2024