some nvim updates

This commit is contained in:
2025-04-02 20:26:07 +02:00
parent f6c8c405dc
commit 0634216a1d
13 changed files with 129 additions and 1 deletions

7
.config/nvim/init.lua Normal file
View File

@@ -0,0 +1,7 @@
-- Initialize core settings first
require("config.options")
-- Load plugin manager
require("config.lazy")
-- Configure UI components last

View File

@@ -0,0 +1,19 @@
{
"LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" },
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
"cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" },
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" },
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" },
"nvim-cmp": { "branch": "main", "commit": "059e89495b3ec09395262f16b1ad441a38081d04" },
"nvim-deus": { "branch": "master", "commit": "b930172dc75d00084233abc6f19f0708c298d8be" },
"nvim-lspconfig": { "branch": "master", "commit": "40f120c10ea4b87311175539a183c3b75eab95a3" },
"nvim-tree.lua": { "branch": "master", "commit": "44d9b58f11d5a426c297aafd0be1c9d45617a849" },
"nvim-treesitter": { "branch": "master", "commit": "30654ee72a69e7c76a54b66d748dae088429e863" },
"nvim-web-devicons": { "branch": "master", "commit": "4c3a5848ee0b09ecdea73adcd2a689190aeb728c" },
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" },
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
}

View File

@@ -0,0 +1,35 @@
-- Bootstrap lazy.nvim
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not (vim.uv or vim.loop).fs_stat(lazypath) then
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
if vim.v.shell_error ~= 0 then
vim.api.nvim_echo({
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
{ out, "WarningMsg" },
{ "\nPress any key to exit..." },
}, true, {})
vim.fn.getchar()
os.exit(1)
end
end
vim.opt.rtp:prepend(lazypath)
-- Make sure to setup `mapleader` and `maplocalleader` before
-- loading lazy.nvim so that mappings are correct.
-- This is also a good place to setup other settings (vim.opt)
vim.g.mapleader = " "
vim.g.maplocalleader = "\\"
-- Setup lazy.nvim
require("lazy").setup({
spec = {
-- import your plugins
{ import = "plugins" },
},
-- Configure any other settings here. See the documentation for more details.
-- colorscheme that will be used when installing plugins.
install = { colorscheme = { "deus" } },
-- automatically check for plugin updates
checker = { enabled = true },
})

View File

@@ -0,0 +1,21 @@
-- Basic settings
vim.o.number = true
vim.o.relativenumber = true
vim.o.tabstop = 2
vim.o.shiftwidth = 2
vim.o.expandtab = true
vim.o.smartindent = true
vim.o.wrap = false
vim.o.cursorline = true
vim.o.termguicolors = true
vim.o.ruler = true
vim.o.visualbell = true
vim.o.modelines = 0
vim.o.colorcolumn = '+1,100,120'
vim.o.hidden = true
vim.o.showmode = true
-- Syntax highlighting and filetype plugins
vim.cmd('syntax enable')
vim.cmd('filetype plugin indent on')

View File

@@ -0,0 +1,11 @@
-- Autocompletion system
return {
"hrsh7th/nvim-cmp",
dependencies = {
"hrsh7th/cmp-nvim-lsp", -- LSP source for nvim-cmp
"hrsh7th/cmp-buffer", -- Buffer source
"hrsh7th/cmp-path", -- Path source
"L3MON4D3/LuaSnip", -- Snippet engine
"saadparwaiz1/cmp_luasnip", -- Snippet source
},
}

View File

@@ -0,0 +1,4 @@
-- Color scheme
return {
"theniceboy/nvim-deus"
}

View File

@@ -0,0 +1,9 @@
-- Language Server Protocol support
return {
"neovim/nvim-lspconfig", -- Base LSP configurations
dependencies = {
-- Server installation manager
"williamboman/mason.nvim",
"williamboman/mason-lspconfig.nvim",
},
}

View File

@@ -0,0 +1,2 @@
-- Utility functions
return {"nvim-lua/plenary.nvim"}

View File

@@ -0,0 +1,5 @@
-- Fuzzy finder
return {
"nvim-telescope/telescope.nvim",
dependencies = { "nvim-lua/plenary.nvim" }
}

View File

@@ -0,0 +1,5 @@
-- File explorer
return {
"nvim-tree/nvim-tree.lua",
dependencies = { "nvim-tree/nvim-web-devicons" },
}

View File

@@ -0,0 +1,6 @@
-- Treesitter for syntax highlighting (load early)
return {
"nvim-treesitter/nvim-treesitter",
build = ":TSUpdate",
priority = 100, -- Load early
}

View File

@@ -0,0 +1,4 @@
-- Key binding helper
return {
"folke/which-key.nvim",
}

View File

@@ -18,4 +18,4 @@ export ELECTRON_OZONE_PLATFORM_HINT=wayland
export MOZ_ENABLE_WAYLAND=1
export GRIMBLAST_EDITOR='swappy -f'
export GRIMBLAST_EDITOR='satty -f'