diff options
| author | philw <dscr@duck.com> | 2025-04-09 23:26:15 +0200 |
|---|---|---|
| committer | philw <dscr@duck.com> | 2025-04-09 23:26:15 +0200 |
| commit | 10b08936e4d2b14a1e4ab5c3443323fc73f4499a (patch) | |
| tree | 1405e661d83e19d1a628e218f1449d5e98d93a81 | |
| parent | c0f8ad2f0110f8cf7a22c06778fd1e2b8a117505 (diff) | |
| download | neovim-10b08936e4d2b14a1e4ab5c3443323fc73f4499a.tar.gz neovim-10b08936e4d2b14a1e4ab5c3443323fc73f4499a.zip | |
Optimize nvim config
Signed-off-by: philw <dscr@duck.com>
Diffstat (limited to '')
| -rw-r--r-- | init.lua | 99 | ||||
| -rw-r--r-- | lazy-lock.json | 20 |
2 files changed, 46 insertions, 73 deletions
| @@ -1,6 +1,6 @@ | |||
| 1 | ---@diagnostic disable: undefined-global, | 1 | --@diagnostic disable: undefined-global, |
| 2 | local option = vim.opt | 2 | local option = vim.opt |
| 3 | local keymap = vim.keymap | 3 | -- local vim.keymap = vim.vim.keymap |
| 4 | local api = vim.api | 4 | local api = vim.api |
| 5 | local fn = vim.fn | 5 | local fn = vim.fn |
| 6 | 6 | ||
| @@ -24,7 +24,7 @@ option.smartindent = true | |||
| 24 | option.ruler = false | 24 | option.ruler = false |
| 25 | option.wrap = false | 25 | option.wrap = false |
| 26 | option.swapfile = false | 26 | option.swapfile = false |
| 27 | option.hlsearch = false | 27 | option.hlsearch = true |
| 28 | option.incsearch = true | 28 | option.incsearch = true |
| 29 | option.updatetime = 50 | 29 | option.updatetime = 50 |
| 30 | option.laststatus = 0 | 30 | option.laststatus = 0 |
| @@ -53,7 +53,7 @@ api.nvim_create_autocmd( | |||
| 53 | "BufWritePost", | 53 | "BufWritePost", |
| 54 | { | 54 | { |
| 55 | group = "RunPfOnSave", | 55 | group = "RunPfOnSave", |
| 56 | pattern = {"*.js", "*.ts", "*.jsx", "*.json", "*.tsx", "*.css", "*.html", "*.yaml", "*.md", "*.svelte"}, | 56 | pattern = {"*.js", "*.ts", "*.jsx", "*.json", "*.tsx", "*.css", "*.html", "*.yaml", "*.md", "*.svelte, *.lua"}, |
| 57 | command = "silent! !prettier --write %" | 57 | command = "silent! !prettier --write %" |
| 58 | } | 58 | } |
| 59 | ) | 59 | ) |
| @@ -189,48 +189,26 @@ end | |||
| 189 | vim.opt.rtp:prepend(lazypath) | 189 | vim.opt.rtp:prepend(lazypath) |
| 190 | 190 | ||
| 191 | require("lazy").setup({ | 191 | require("lazy").setup({ |
| 192 | { | 192 | { |
| 193 | 'mrcjkb/rustaceanvim', | 193 | "ibhagwan/fzf-lua", |
| 194 | version = '^5', | 194 | opts = {} |
| 195 | lazy = false, | 195 | }, |
| 196 | }, | ||
| 197 | { 'rust-lang/rust.vim' }, | ||
| 198 | { | ||
| 199 | "ellisonleao/gruvbox.nvim", | ||
| 200 | priority = 1000, | ||
| 201 | config = true, | ||
| 202 | opts = {}, | ||
| 203 | }, | ||
| 204 | { "airblade/vim-gitgutter" }, | 196 | { "airblade/vim-gitgutter" }, |
| 205 | { "norcalli/nvim-colorizer.lua" }, | 197 | { "norcalli/nvim-colorizer.lua" }, |
| 206 | { "nvim-treesitter/nvim-treesitter" }, | ||
| 207 | { | 198 | { |
| 208 | "neovim/nvim-lspconfig", | 199 | "neovim/nvim-lspconfig", |
| 209 | lazy = false, | 200 | lazy = false, |
| 210 | dependencies = { | 201 | dependencies = { |
| 211 | { "ms-jpq/coq_nvim", branch = "coq" }, | 202 | { "ms-jpq/coq_nvim", branch = "coq" }, |
| 212 | { "ms-jpq/coq.artifacts", branch = "artifacts" }, | 203 | { "ms-jpq/coq.artifacts", branch = "artifacts" }, |
| 213 | { "williamboman/mason.nvim" }, | ||
| 214 | { "williamboman/mason-lspconfig.nvim" } | ||
| 215 | }, | 204 | }, |
| 216 | init = function() | 205 | init = function() |
| 217 | vim.g.coq_settings = { auto_start = "shut-up" } | 206 | vim.g.coq_settings = { auto_start = "shut-up", |
| 207 | } | ||
| 218 | end | 208 | end |
| 219 | }, | 209 | }, |
| 220 | { | ||
| 221 | "nvim-telescope/telescope.nvim", | ||
| 222 | lazy = false, | ||
| 223 | tag = "0.1.5", | ||
| 224 | dependencies = { "nvim-lua/plenary.nvim" } | ||
| 225 | }, | ||
| 226 | { | ||
| 227 | "nvim-telescope/telescope-fzf-native.nvim", | ||
| 228 | lazy = true, | ||
| 229 | build = "cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release && cmake --install build --prefix build", | ||
| 230 | }, | ||
| 231 | }) | 210 | }) |
| 232 | 211 | ||
| 233 | vim.cmd('colorscheme gruvbox') | ||
| 234 | require("colorizer").setup() | 212 | require("colorizer").setup() |
| 235 | 213 | ||
| 236 | vim.api.nvim_create_autocmd( | 214 | vim.api.nvim_create_autocmd( |
| @@ -244,16 +222,18 @@ vim.api.nvim_create_autocmd( | |||
| 244 | 222 | ||
| 245 | local lsp_servers = {} | 223 | local lsp_servers = {} |
| 246 | 224 | ||
| 247 | require("mason").setup({ | 225 | require('lspconfig').clangd.setup({ |
| 248 | ui = { | 226 | filetypes = { "c", "cpp", "objc", "objcpp" }, |
| 249 | icons = { | 227 | }) |
| 250 | package_installed = "✓", | 228 | require('lspconfig').svelte.setup({ |
| 251 | package_pending = "➜", | 229 | filetypes = { "svelte" }, |
| 252 | package_uninstalled = "✗" | 230 | }) |
| 253 | } | 231 | require('lspconfig').ts_ls.setup({ |
| 254 | } | 232 | filetypes = { "typescript", "typescriptreact", "javascript", "javascriptreact" }, |
| 233 | }) | ||
| 234 | require('lspconfig').rust_analyzer.setup({ | ||
| 235 | filetypes = { "rust" }, | ||
| 255 | }) | 236 | }) |
| 256 | |||
| 257 | 237 | ||
| 258 | local server_maps = function(opts) | 238 | local server_maps = function(opts) |
| 259 | end | 239 | end |
| @@ -275,28 +255,29 @@ set_highlights() | |||
| 275 | 255 | ||
| 276 | vim.g.mapleader = " " | 256 | vim.g.mapleader = " " |
| 277 | 257 | ||
| 278 | keymap.set("n", "<leader>e", ToggleVExplorer, {desc = "Toggle VExplorer"}) | 258 | vim.keymap.set("n", "<leader>e", ToggleVExplorer, {desc = "Toggle VExplorer"}) |
| 279 | keymap.set("n", "<leader>z", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]]) | 259 | vim.keymap.set("n", "<leader>z", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]]) |
| 280 | keymap.set("n", "<leader>a", "ggVG") | 260 | vim.keymap.set("n", "<leader>a", "ggVG") |
| 281 | keymap.set("n", "<leader>y", "cc") | 261 | vim.keymap.set("n", "<leader>y", "cc") |
| 282 | keymap.set("n", "<C-c>", "yy") | 262 | vim.keymap.set("n", "<C-c>", "yy") |
| 283 | keymap.set("n", "<C-v>", "p") | 263 | vim.keymap.set("n", "<C-v>", "p") |
| 284 | keymap.set("n", "<C-z>", "u") | 264 | vim.keymap.set("n", "<C-z>", "u") |
| 285 | keymap.set("v", "J", ":m '>+1<CR>gv=gv") | 265 | vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv") |
| 286 | keymap.set("n", "j", "5j") | 266 | vim.keymap.set("n", "j", "5j") |
| 287 | keymap.set("n", "k", "5k") | 267 | vim.keymap.set("n", "k", "5k") |
| 288 | keymap.set("v", "K", ":m '<-2<CR>gv=gv") | 268 | vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv") |
| 289 | keymap.set("n", "<leader>f", "<cmd>Telescope find_files<cr>") | 269 | vim.keymap.set("n", "<leader>f", "<cmd>FzfLua files<cr>") |
| 290 | keymap.set("n", "<leader>g", "<cmd>Telescope live_grep<cr>") | 270 | vim.keymap.set("n", "<leader>F", "<cmd>FzfLua live_grep<cr>", { noremap = true, silent = true }) |
| 291 | keymap.set("n", "<leader>d", vim.lsp.buf.definition, opts) | 271 | vim.keymap.set("n", "<leader>b", "<cmd>FzfLua buffers<cr>") |
| 292 | keymap.set("n", "<leader>k", vim.lsp.buf.hover, opts) | 272 | vim.keymap.set("n", "<leader>d", vim.lsp.buf.definition, opts) |
| 293 | keymap.set('n', '<leader>r', color_mode, {desc = "Change mode light/dark"}) | 273 | vim.keymap.set("n", "<leader>k", vim.lsp.buf.hover, opts) |
| 294 | keymap.set("n", "<leader>t", function() | 274 | vim.keymap.set('n', '<leader>r', color_mode, {desc = "Change mode light/dark"}) |
| 275 | vim.keymap.set("n", "<leader>t", function() | ||
| 295 | vim.cmd("terminal") | 276 | vim.cmd("terminal") |
| 296 | vim.cmd("startinsert") | 277 | vim.cmd("startinsert") |
| 297 | end, { desc = "Open terminal in current window" }) | 278 | end, { desc = "Open terminal in current window" }) |
| 298 | 279 | ||
| 299 | keymap.set('t', '<Esc>', function() | 280 | vim.keymap.set('t', '<Esc>', function() |
| 300 | vim.cmd([[stopinsert]]) | 281 | vim.cmd([[stopinsert]]) |
| 301 | vim.cmd([[b#]]) | 282 | vim.cmd([[b#]]) |
| 302 | end, { noremap = true, silent = true }) | 283 | 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 @@ | |||
| 1 | { | 1 | { |
| 2 | "coq.artifacts": { "branch": "artifacts", "commit": "a1ffcee295905171d87b40ee456001d45b10329b" }, | 2 | "coq.artifacts": { "branch": "artifacts", "commit": "ef5f21d638ccc456cfa5b8d0ab37093cefe48c8b" }, |
| 3 | "coq_nvim": { "branch": "coq", "commit": "976012b0c13763a47edbd55492ba53b03b498cdd" }, | 3 | "coq_nvim": { "branch": "coq", "commit": "d83bc18d044cfcd65e91dc49740a353546bc143b" }, |
| 4 | "gruvbox.nvim": { "branch": "main", "commit": "c6f42890551b4827253387e93b035568826a9cb7" }, | 4 | "fzf-lua": { "branch": "main", "commit": "47b85a25c0c0b2c20b4e75199ed01bb71e7814f5" }, |
| 5 | "lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" }, | 5 | "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, |
| 6 | "mason-lspconfig.nvim": { "branch": "main", "commit": "e942edf5c85b6a2ab74059ea566cac5b3e1514a4" }, | ||
| 7 | "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, | ||
| 8 | "nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" }, | 6 | "nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" }, |
| 9 | "nvim-lspconfig": { "branch": "master", "commit": "339ccc81e08793c3af9b83882a6ebd90c9cc0d3b" }, | 7 | "nvim-lspconfig": { "branch": "master", "commit": "94dda50b2d9a29d0b76562a9027029538840e2d7" }, |
| 10 | "nvim-treesitter": { "branch": "master", "commit": "984214ef8e4ca18d77639663319aabdfba89632f" }, | 8 | "vim-gitgutter": { "branch": "main", "commit": "6620e5fbbe6a28de0bfed081f5bd2767023b7eea" } |
| 11 | "plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" }, | ||
| 12 | "rust.vim": { "branch": "master", "commit": "889b9a7515db477f4cb6808bef1769e53493c578" }, | ||
| 13 | "rustaceanvim": { "branch": "master", "commit": "1486b5a2cc0de646d6d0837ec77127c9d6e2c50f" }, | ||
| 14 | "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, | ||
| 15 | "telescope.nvim": { "branch": "master", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" }, | ||
| 16 | "vim-gitgutter": { "branch": "main", "commit": "7b0b5098e3e57be86bb96cfbf2b8902381eef57c" } | ||
| 17 | } | 9 | } |
