nvim migrate to lazy

This commit is contained in:
Niktia Bykov
2024-01-02 13:41:28 +05:00
parent e7abdf2c87
commit 9ff851257a
12 changed files with 116 additions and 459 deletions

View File

@ -1 +1,2 @@
plugin/
lazy-lock.json

View File

@ -1,5 +1,7 @@
require("user.plugins")
require("user.themes.kanagawa")
require("user.options")
require("user.keymaps")
require("user.cmp")
@ -18,10 +20,6 @@ require("user.lualine")
require("user.dap.dap")
require("user.dap.dapui")
require("user.neotree")
-- require("user.colorschemes.tokyo_night")
-- require("user.nvim_tree")
-- require("user.heirline")
vim.cmd("set cursorline")
vim.cmd("colorscheme kanagawa")
-- vim.cmd([[highlight IndentBlanklineContextChar guifg=#757575]])

View File

@ -15,7 +15,6 @@ local check_backspace = function()
return col == 0 or vim.fn.getline("."):sub(col, col):match "%s"
end
--   פּ ﯟ   some other good icons
local kind_icons = {
Text = "",
Method = "m",
@ -68,12 +67,12 @@ cmp.setup {
["<Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_next_item()
-- elseif luasnip.expandable() then
-- luasnip.expand()
-- elseif luasnip.expand_or_jumpable() then
-- luasnip.expand_or_jump()
-- elseif check_backspace() then
-- fallback()
elseif luasnip.expandable() then
luasnip.expand()
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
elseif check_backspace() then
fallback()
else
fallback()
end
@ -99,7 +98,6 @@ cmp.setup {
format = function(entry, vim_item)
-- Kind icons
vim_item.kind = string.format("%s", kind_icons[vim_item.kind])
-- vim_item.kind = string.format('%s %s', kind_icons[vim_item.kind], vim_item.kind) -- This concatonates the icons with the name of the item kind
vim_item.menu = ({
nvim_lsp = "[LSP]",
luasnip = "[Snippet]",

View File

@ -29,7 +29,14 @@ keymap("v", "p", '"_dP', opts)
keymap("v", "<", "<gv", opts)
keymap("v", ">", ">gv", opts)
--center when moving with ctrl-u, ctrl-d
-- center view for different commands
keymap("n", "n", "nzz", opts)
keymap("n", "N", "Nzz", opts)
keymap("n", "*", "*zz", opts)
keymap("n", "#", "#zz", opts)
keymap("n", "g*", "g*zz", opts)
keymap("n", "g#", "g#zz", opts)
keymap("n", "<C-u>", "<C-u>zz", opts)
keymap("n", "<C-d>", "<C-d>zz", opts)

View File

@ -1,9 +1,11 @@
vim.opt.backup = false
vim.opt.cmdheight = 1
vim.opt.completeopt = { "menuone", "noselect" }
vim.opt.showmode = false
vim.opt.fileencoding = "utf-8"
vim.opt.ignorecase = true
vim.opt.showtabline = 2
vim.opt.pumblend = 10
vim.opt.smartindent = true
vim.opt.smartcase = true
vim.opt.splitright = true
@ -15,6 +17,8 @@ vim.opt.shiftwidth = 2
vim.opt.updatetime = 300
vim.opt.ttimeoutlen = 5
vim.g.netrw_banner = 0
vim.api.nvim_create_autocmd("FileType", {
pattern = "cs",
command = "setlocal shiftwidth=4 tabstop=4"

View File

@ -1,140 +1,130 @@
local fn = vim.fn
-- Automatically install packer
local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim"
if fn.empty(fn.glob(install_path)) > 0 then
PACKER_BOOTSTRAP = fn.system({
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--depth",
"1",
"https://github.com/wbthomason/packer.nvim",
install_path,
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable", -- latest stable release
lazypath,
})
print("Installing packer close and reopen Neovim...")
vim.cmd([[packadd packer.nvim]])
end
-- Autocommand that reloads neovim whenever you save the plugins.lua file
vim.cmd([[
augroup packer_user_config
autocmd!
autocmd BufWritePost plugins.lua source <afile> | PackerSync
augroup end
]])
vim.opt.rtp:prepend(lazypath)
-- Use a protected call so we don't error out on first use
local status_ok, packer = pcall(require, "packer")
local status_ok, lazy = pcall(require, "lazy")
if not status_ok then
return
end
-- Have packer use a popup window
packer.init({
display = {
open_fn = function()
return require("packer.util").float({ border = "rounded" })
end,
},
})
lazy.setup({
-- Install your plugins here
return packer.startup(function(use)
-- My plugins here
use("wbthomason/packer.nvim") -- Have packer manage itself
use("nvim-lua/popup.nvim") -- An implementation of the Popup API from vim in Neovim
use("nvim-lua/plenary.nvim") -- Useful lua functions used ny lots of plugins
--colorschemes
use("navarasu/onedark.nvim")
use("morhetz/gruvbox")
use("Mofiqul/dracula.nvim")
use("folke/tokyonight.nvim")
-- use("lunarvim/colorschemes")
"nvim-lua/popup.nvim", -- An implementation of the Popup API from vim in Neovim
"nvim-lua/plenary.nvim", -- Useful lua functions used ny lots of plugins
"navarasu/onedark.nvim",
"morhetz/gruvbox",
"Mofiqul/dracula.nvim",
"folke/tokyonight.nvim",
use("windwp/nvim-autopairs")
"windwp/nvim-autopairs",
use("hrsh7th/nvim-cmp") -- The completion plugin
use("hrsh7th/cmp-buffer") -- buffer completions
use("hrsh7th/cmp-path") -- path completions
use("hrsh7th/cmp-cmdline") -- cmdline completions
use("saadparwaiz1/cmp_luasnip") -- snippet completions
use("hrsh7th/cmp-nvim-lsp")
"hrsh7th/nvim-cmp", -- The completion plugin
"hrsh7th/cmp-buffer", -- buffer completions
"hrsh7th/cmp-path", -- path completions
"hrsh7th/cmp-cmdline", -- cmdline completions
"saadparwaiz1/cmp_luasnip", -- snippet completions
"hrsh7th/cmp-nvim-lsp",
-- snippets
use("L3MON4D3/LuaSnip") --snippet engine
use("rafamadriz/friendly-snippets") -- a bunch of snippets to use
use({ "dsznajder/vscode-es7-javascript-react-snippets", run = "yarn install --frozen-lockfile && yarn compile" })
"L3MON4D3/LuaSnip", --snippet engine
"rafamadriz/friendly-snippets", -- a bunch of snippets to use
{ "dsznajder/vscode-es7-javascript-react-snippets", run = "yarn install --frozen-lockfile && yarn compile" },
-- LSP
use("williamboman/mason.nvim") -- simple to use language server installer
use("williamboman/mason-lspconfig.nvim")
use("neovim/nvim-lspconfig") -- enable LSP
-- use("williamboman/nvim-lsp-installer") -- simple to use language server installer
use("nvim-treesitter/nvim-treesitter-refactor")
"williamboman/mason.nvim", -- simple to use language server installer
"williamboman/mason-lspconfig.nvim",
"neovim/nvim-lspconfig", -- enable LSP
-- "williamboman/nvim-lsp-installer") -- simple to use language server installer
"nvim-treesitter/nvim-treesitter-refactor",
-- file explorer
vim.cmd([[ let g:neo_tree_remove_legacy_commands = 1 ]])
use {
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v2.x",
requires = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
"MunifTanjim/nui.nvim",
}
}
branch = "v2.x",
requires = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
"MunifTanjim/nui.nvim",
},
},
use({
{
"kyazdani42/nvim-tree.lua",
requires = {
"kyazdani42/nvim-web-devicons", -- optional, for file icons
},
tag = "nightly", -- optional, updated every week. (see issue #1193)
})
},
use({ "akinsho/bufferline.nvim", tag = "v2.*", requires = "kyazdani42/nvim-web-devicons" })
{
"akinsho/bufferline.nvim",
tag = "v2.*",
requires = "kyazdani42/nvim-web-devicons",
},
use({
{
"nvim-treesitter/nvim-treesitter",
run = ":TSUpdate",
})
},
use({
{
"nvimtools/none-ls.nvim",
})
},
use("lukas-reineke/lsp-format.nvim")
use("Vimjas/vim-python-pep8-indent")
"lukas-reineke/lsp-format.nvim",
"Vimjas/vim-python-pep8-indent",
--telescope
use("nvim-telescope/telescope.nvim")
use("nvim-telescope/telescope-media-files.nvim")
"nvim-telescope/telescope.nvim",
"nvim-telescope/telescope-media-files.nvim",
--comment out
use("tpope/vim-commentary")
use("lukas-reineke/indent-blankline.nvim")
use("windwp/nvim-ts-autotag")
"tpope/vim-commentary",
"lukas-reineke/indent-blankline.nvim",
"windwp/nvim-ts-autotag",
use("sickill/vim-monokai")
use("rebelot/kanagawa.nvim")
{
"rebelot/kanagawa.nvim",
lazy = false,
priority = 1000,
},
--scrollbar
use("petertriho/nvim-scrollbar")
"petertriho/nvim-scrollbar",
--heirline statusbar
use("rebelot/heirline.nvim")
"rebelot/heirline.nvim",
--heirline statusbar
use("lewis6991/gitsigns.nvim")
"lewis6991/gitsigns.nvim",
--debugging
use("mfussenegger/nvim-dap")
use("rcarriga/nvim-dap-ui")
"mfussenegger/nvim-dap",
"rcarriga/nvim-dap-ui",
use("nvim-lualine/lualine.nvim")
-- Automatically set up your configuration after cloning packer.nvim
-- Put this at the end after all plugins
if PACKER_BOOTSTRAP then
require("packer").sync()
end
end)
"nvim-lualine/lualine.nvim",
"folke/neodev.nvim",
"MunifTanjim/nui.nvim",
})
-- vim.cmd([[
-- augroup packer_user_config
-- autocmd!
-- autocmd BufWritePost plugins.lua source <afile> | PackerSync
-- augroup end
-- ]])
-- Use a protected call so we don't error out on first use

View File

@ -12,10 +12,17 @@ require("kanagawa").setup({
colors = {
-- add/modify theme and palette colors
palette = {},
theme = { wave = {}, lotus = {}, dragon = {}, all = {} },
theme = { wave = {}, lotus = {}, dragon = {}, all = { ui = { bg_gutter = "none" } } },
},
overrides = function(colors) -- add/modify highlights
return {}
local theme = colors.theme
return {
Pmenu = { fg = theme.ui.shade0, bg = theme.ui.bg_p1, blend = vim.o.pumblend }, -- add `blend = vim.o.pumblend` to enable transparency
PmenuSel = { fg = "NONE", bg = theme.ui.bg_p2 },
PmenuSbar = { bg = theme.ui.bg_m1 },
PmenuThumb = { bg = theme.ui.bg_p2 },
CursorLine = { bg = "#272735" },
}
end,
theme = "wave", -- Load "wave" theme when 'background' option is not set
background = { -- map the value of 'background' option to a theme