From 10b08936e4d2b14a1e4ab5c3443323fc73f4499a Mon Sep 17 00:00:00 2001 From: philw Date: Wed, 9 Apr 2025 23:26:15 +0200 Subject: Optimize nvim config Signed-off-by: philw --- init.lua | 99 ++++++++++++++++++++++++---------------------------------- lazy-lock.json | 20 ++++-------- 2 files changed, 46 insertions(+), 73 deletions(-) diff --git a/init.lua b/init.lua index 7b7114e..f710136 100644 --- a/init.lua +++ b/init.lua @@ -1,6 +1,6 @@ ----@diagnostic disable: undefined-global, +--@diagnostic disable: undefined-global, local option = vim.opt -local keymap = vim.keymap +-- local vim.keymap = vim.vim.keymap local api = vim.api local fn = vim.fn @@ -24,7 +24,7 @@ option.smartindent = true option.ruler = false option.wrap = false option.swapfile = false -option.hlsearch = false +option.hlsearch = true option.incsearch = true option.updatetime = 50 option.laststatus = 0 @@ -53,7 +53,7 @@ api.nvim_create_autocmd( "BufWritePost", { group = "RunPfOnSave", - pattern = {"*.js", "*.ts", "*.jsx", "*.json", "*.tsx", "*.css", "*.html", "*.yaml", "*.md", "*.svelte"}, + pattern = {"*.js", "*.ts", "*.jsx", "*.json", "*.tsx", "*.css", "*.html", "*.yaml", "*.md", "*.svelte, *.lua"}, command = "silent! !prettier --write %" } ) @@ -189,48 +189,26 @@ end vim.opt.rtp:prepend(lazypath) require("lazy").setup({ - { - 'mrcjkb/rustaceanvim', - version = '^5', - lazy = false, - }, - { 'rust-lang/rust.vim' }, - { - "ellisonleao/gruvbox.nvim", - priority = 1000, - config = true, - opts = {}, - }, + { + "ibhagwan/fzf-lua", + opts = {} +}, { "airblade/vim-gitgutter" }, { "norcalli/nvim-colorizer.lua" }, - { "nvim-treesitter/nvim-treesitter" }, { "neovim/nvim-lspconfig", lazy = false, dependencies = { { "ms-jpq/coq_nvim", branch = "coq" }, { "ms-jpq/coq.artifacts", branch = "artifacts" }, - { "williamboman/mason.nvim" }, - { "williamboman/mason-lspconfig.nvim" } }, init = function() - vim.g.coq_settings = { auto_start = "shut-up" } + vim.g.coq_settings = { auto_start = "shut-up", + } end }, - { - "nvim-telescope/telescope.nvim", - lazy = false, - tag = "0.1.5", - dependencies = { "nvim-lua/plenary.nvim" } - }, - { - "nvim-telescope/telescope-fzf-native.nvim", - lazy = true, - build = "cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release && cmake --install build --prefix build", - }, }) -vim.cmd('colorscheme gruvbox') require("colorizer").setup() vim.api.nvim_create_autocmd( @@ -244,16 +222,18 @@ vim.api.nvim_create_autocmd( local lsp_servers = {} -require("mason").setup({ - ui = { - icons = { - package_installed = "✓", - package_pending = "➜", - package_uninstalled = "✗" - } - } +require('lspconfig').clangd.setup({ + filetypes = { "c", "cpp", "objc", "objcpp" }, +}) +require('lspconfig').svelte.setup({ + filetypes = { "svelte" }, +}) +require('lspconfig').ts_ls.setup({ + filetypes = { "typescript", "typescriptreact", "javascript", "javascriptreact" }, +}) +require('lspconfig').rust_analyzer.setup({ + filetypes = { "rust" }, }) - local server_maps = function(opts) end @@ -275,28 +255,29 @@ set_highlights() vim.g.mapleader = " " -keymap.set("n", "e", ToggleVExplorer, {desc = "Toggle VExplorer"}) -keymap.set("n", "z", [[:%s/\<\>//gI]]) -keymap.set("n", "a", "ggVG") -keymap.set("n", "y", "cc") -keymap.set("n", "", "yy") -keymap.set("n", "", "p") -keymap.set("n", "", "u") -keymap.set("v", "J", ":m '>+1gv=gv") -keymap.set("n", "j", "5j") -keymap.set("n", "k", "5k") -keymap.set("v", "K", ":m '<-2gv=gv") -keymap.set("n", "f", "Telescope find_files") -keymap.set("n", "g", "Telescope live_grep") -keymap.set("n", "d", vim.lsp.buf.definition, opts) -keymap.set("n", "k", vim.lsp.buf.hover, opts) -keymap.set('n', 'r', color_mode, {desc = "Change mode light/dark"}) -keymap.set("n", "t", function() +vim.keymap.set("n", "e", ToggleVExplorer, {desc = "Toggle VExplorer"}) +vim.keymap.set("n", "z", [[:%s/\<\>//gI]]) +vim.keymap.set("n", "a", "ggVG") +vim.keymap.set("n", "y", "cc") +vim.keymap.set("n", "", "yy") +vim.keymap.set("n", "", "p") +vim.keymap.set("n", "", "u") +vim.keymap.set("v", "J", ":m '>+1gv=gv") +vim.keymap.set("n", "j", "5j") +vim.keymap.set("n", "k", "5k") +vim.keymap.set("v", "K", ":m '<-2gv=gv") +vim.keymap.set("n", "f", "FzfLua files") +vim.keymap.set("n", "F", "FzfLua live_grep", { noremap = true, silent = true }) +vim.keymap.set("n", "b", "FzfLua buffers") +vim.keymap.set("n", "d", vim.lsp.buf.definition, opts) +vim.keymap.set("n", "k", vim.lsp.buf.hover, opts) +vim.keymap.set('n', 'r', color_mode, {desc = "Change mode light/dark"}) +vim.keymap.set("n", "t", function() vim.cmd("terminal") vim.cmd("startinsert") end, { desc = "Open terminal in current window" }) -keymap.set('t', '', function() +vim.keymap.set('t', '', function() vim.cmd([[stopinsert]]) vim.cmd([[b#]]) end, { noremap = true, silent = true }) diff --git a/lazy-lock.json b/lazy-lock.json index 2ad2495..336f4b2 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,17 +1,9 @@ { - "coq.artifacts": { "branch": "artifacts", "commit": "a1ffcee295905171d87b40ee456001d45b10329b" }, - "coq_nvim": { "branch": "coq", "commit": "976012b0c13763a47edbd55492ba53b03b498cdd" }, - "gruvbox.nvim": { "branch": "main", "commit": "c6f42890551b4827253387e93b035568826a9cb7" }, - "lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "e942edf5c85b6a2ab74059ea566cac5b3e1514a4" }, - "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, + "coq.artifacts": { "branch": "artifacts", "commit": "ef5f21d638ccc456cfa5b8d0ab37093cefe48c8b" }, + "coq_nvim": { "branch": "coq", "commit": "d83bc18d044cfcd65e91dc49740a353546bc143b" }, + "fzf-lua": { "branch": "main", "commit": "47b85a25c0c0b2c20b4e75199ed01bb71e7814f5" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" }, - "nvim-lspconfig": { "branch": "master", "commit": "339ccc81e08793c3af9b83882a6ebd90c9cc0d3b" }, - "nvim-treesitter": { "branch": "master", "commit": "984214ef8e4ca18d77639663319aabdfba89632f" }, - "plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" }, - "rust.vim": { "branch": "master", "commit": "889b9a7515db477f4cb6808bef1769e53493c578" }, - "rustaceanvim": { "branch": "master", "commit": "1486b5a2cc0de646d6d0837ec77127c9d6e2c50f" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, - "telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" }, - "vim-gitgutter": { "branch": "main", "commit": "7b0b5098e3e57be86bb96cfbf2b8902381eef57c" } + "nvim-lspconfig": { "branch": "master", "commit": "94dda50b2d9a29d0b76562a9027029538840e2d7" }, + "vim-gitgutter": { "branch": "main", "commit": "6620e5fbbe6a28de0bfed081f5bd2767023b7eea" } } -- cgit v1.2.3