From db07b8284159e31849a2800286c9789d12942cbd Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Tue, 3 Dec 2024 14:13:46 +0800 Subject: [PATCH 01/26] Remove lazy-lock.json from .gitignore --- .gitignore | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitignore b/.gitignore index 005b535b606..8a192cab54d 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,3 @@ test.sh nvim spell/ -lazy-lock.json From 82f8658d34dac4681d50569e9b4e4c6e780a040b Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Tue, 3 Dec 2024 20:35:08 +0800 Subject: [PATCH 02/26] Update nvim config --- init.lua | 35 +++++++++++++++++++++++++++++------ lazy-lock.json | 23 +++++++++++++++++++++++ 2 files changed, 52 insertions(+), 6 deletions(-) create mode 100644 lazy-lock.json diff --git a/init.lua b/init.lua index b98ffc6198a..2ab4d9f3db6 100644 --- a/init.lua +++ b/init.lua @@ -102,7 +102,7 @@ vim.g.have_nerd_font = false vim.o.number = true -- You can also add relative line numbers, to help with jumping. -- Experiment for yourself to see if you like it! --- vim.o.relativenumber = true +vim.opt.relativenumber = true -- Enable mouse mode, can be useful for resizing splits for example! vim.o.mouse = 'a' @@ -114,9 +114,9 @@ vim.o.showmode = false -- Schedule the setting after `UiEnter` because it can increase startup-time. -- Remove this option if you want your OS clipboard to remain independent. -- See `:help 'clipboard'` -vim.schedule(function() - vim.o.clipboard = 'unnamedplus' -end) +-- vim.schedule(function() +-- vim.opt.clipboard = 'unnamedplus' +-- end) -- Enable break indent vim.o.breakindent = true @@ -205,6 +205,29 @@ vim.keymap.set('n', '', '', { desc = 'Move focus to the upper win -- vim.keymap.set("n", "", "J", { desc = "Move window to the lower" }) -- vim.keymap.set("n", "", "K", { desc = "Move window to the upper" }) +-- [[ Custom Keymaps ]] +vim.keymap.set('n', 'p', vim.cmd.Ex, { desc = 'File explorer' }) + +vim.keymap.set('v', 'J', ":m '>+1gv=gv", { desc = 'Move text down' }) +vim.keymap.set('v', 'K', ":m '<-2gv=gv", { desc = 'Move text up' }) + +vim.keymap.set('n', '', 'zz') +vim.keymap.set('n', '', 'zz') + +vim.keymap.set('n', 'n', 'nzz') +vim.keymap.set('n', 'N', 'Nzz') + +vim.keymap.set('n', 'J', '5j') +vim.keymap.set('n', 'K', '5k') + +vim.keymap.set('n', 'gh', vim.lsp.buf.hover, { desc = 'Hover documentation' }) + +vim.keymap.set('n', 'J', 'mzJ`z', { desc = 'Keep cursor position and join lines' }) + +vim.keymap.set('n', 'y', '"+y', { desc = 'Yank to system clipboard' }) +vim.keymap.set('v', 'y', '"+y', { desc = 'Yank selection to system clipboard' }) +vim.keymap.set('n', 'Y', '"+Y', { desc = 'Yank line to system clipboard' }) + -- [[ Basic Autocommands ]] -- See `:help lua-guide-autocommands` @@ -672,7 +695,7 @@ require('lazy').setup({ -- For example, to see the options for `lua_ls`, you could go to: https://luals.github.io/wiki/settings/ local servers = { -- clangd = {}, - -- gopls = {}, + gopls = {}, -- pyright = {}, -- rust_analyzer = {}, -- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs @@ -984,7 +1007,7 @@ require('lazy').setup({ -- This is the easiest way to modularize your config. -- -- Uncomment the following line and add your plugins to `lua/custom/plugins/*.lua` to get going. - -- { import = 'custom.plugins' }, + { import = 'custom.plugins' }, -- -- For additional information with loading, sourcing and examples see `:help lazy.nvim-🔌-plugin-spec` -- Or use telescope! diff --git a/lazy-lock.json b/lazy-lock.json new file mode 100644 index 00000000000..6111f47d485 --- /dev/null +++ b/lazy-lock.json @@ -0,0 +1,23 @@ +{ + "LuaSnip": { "branch": "master", "commit": "faf3c94a44508cec1b961406d36cc65113ff3b98" }, + "blink.cmp": { "branch": "main", "commit": "9bcb14b43852a6f2bfd5ac9ef29cb5cf09b1b39b" }, + "conform.nvim": { "branch": "master", "commit": "6feb2f28f9a9385e401857b21eeac3c1b66dd628" }, + "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" }, + "gitsigns.nvim": { "branch": "main", "commit": "8b729e489f1475615dc6c9737da917b3bc163605" }, + "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "d24b3f1612e53f9d54d866b16bedab51813f2bf1" }, + "mason-tool-installer.nvim": { "branch": "main", "commit": "75d60a8f928decd8b38897f80849768b7c540a5b" }, + "mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" }, + "mini.nvim": { "branch": "main", "commit": "6c6ac83b59e8918e42a3d395282b2d555c288a92" }, + "nvim-lspconfig": { "branch": "master", "commit": "3ea99227e316c5028f57a4d86a1a7fd01dd876d0" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, + "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, + "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, + "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, + "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, + "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } +} From 7229a4cd96a98f1d211fa70e856d7cf955f353bc Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Sun, 12 Jan 2025 15:06:00 +0800 Subject: [PATCH 03/26] Add colorcolumn --- init.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/init.lua b/init.lua index 2ab4d9f3db6..735c62e0c46 100644 --- a/init.lua +++ b/init.lua @@ -166,6 +166,8 @@ vim.o.scrolloff = 10 -- See `:help 'confirm'` vim.o.confirm = true +vim.opt.colorcolumn = '80' + -- [[ Basic Keymaps ]] -- See `:help vim.keymap.set()` From b62a7e510814acf304780bda8c7a5eb238a4c72f Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Sun, 12 Jan 2025 15:57:54 +0800 Subject: [PATCH 04/26] Change color scheme to catppuccin --- init.lua | 9 +++++++-- lazy-lock.json | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/init.lua b/init.lua index 735c62e0c46..f0a05532d0c 100644 --- a/init.lua +++ b/init.lua @@ -906,7 +906,8 @@ require('lazy').setup({ -- change the command in the config to whatever the name of that colorscheme is. -- -- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`. - 'folke/tokyonight.nvim', + 'catppuccin/nvim', + name = 'catppuccin', priority = 1000, -- Make sure to load this before all the other start plugins. config = function() ---@diagnostic disable-next-line: missing-fields @@ -919,7 +920,11 @@ require('lazy').setup({ -- Load the colorscheme here. -- Like many other themes, this one has different styles, and you could load -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'. - vim.cmd.colorscheme 'tokyonight-night' + -- vim.cmd.colorscheme 'tokyonight-night' + vim.cmd.colorscheme 'catppuccin-mocha' + + -- You can configure highlights by doing something like: + vim.cmd.hi 'Comment gui=none' end, }, diff --git a/lazy-lock.json b/lazy-lock.json index 6111f47d485..cbd45da2cc6 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,6 +1,7 @@ { "LuaSnip": { "branch": "master", "commit": "faf3c94a44508cec1b961406d36cc65113ff3b98" }, "blink.cmp": { "branch": "main", "commit": "9bcb14b43852a6f2bfd5ac9ef29cb5cf09b1b39b" }, + "catppuccin": { "branch": "main", "commit": "f67b886d65a029f12ffa298701fb8f1efd89295d" }, "conform.nvim": { "branch": "master", "commit": "6feb2f28f9a9385e401857b21eeac3c1b66dd628" }, "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" }, "gitsigns.nvim": { "branch": "main", "commit": "8b729e489f1475615dc6c9737da917b3bc163605" }, From 8d295e8249f80b2b52cd7b0261fd276063ed6220 Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Sun, 12 Jan 2025 16:06:39 +0800 Subject: [PATCH 05/26] Update plugins --- lazy-lock.json | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index cbd45da2cc6..b1a8470025a 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,24 +1,28 @@ { - "LuaSnip": { "branch": "master", "commit": "faf3c94a44508cec1b961406d36cc65113ff3b98" }, + "LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" }, "blink.cmp": { "branch": "main", "commit": "9bcb14b43852a6f2bfd5ac9ef29cb5cf09b1b39b" }, "catppuccin": { "branch": "main", "commit": "f67b886d65a029f12ffa298701fb8f1efd89295d" }, - "conform.nvim": { "branch": "master", "commit": "6feb2f28f9a9385e401857b21eeac3c1b66dd628" }, - "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" }, - "gitsigns.nvim": { "branch": "main", "commit": "8b729e489f1475615dc6c9737da917b3bc163605" }, - "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, - "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, - "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "d24b3f1612e53f9d54d866b16bedab51813f2bf1" }, - "mason-tool-installer.nvim": { "branch": "main", "commit": "75d60a8f928decd8b38897f80849768b7c540a5b" }, - "mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" }, - "mini.nvim": { "branch": "main", "commit": "6c6ac83b59e8918e42a3d395282b2d555c288a92" }, - "nvim-lspconfig": { "branch": "master", "commit": "3ea99227e316c5028f57a4d86a1a7fd01dd876d0" }, - "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, - "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" }, + "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, + "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, + "conform.nvim": { "branch": "master", "commit": "70019124aa4f2e6838be9fbd2007f6d13b27a96d" }, + "fidget.nvim": { "branch": "main", "commit": "a0abbf18084b77d28bc70e24752e4f4fd54aea17" }, + "gitsigns.nvim": { "branch": "main", "commit": "abcd00a7d5bc1a9470cb21b023c575acade3e4db" }, + "lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" }, + "lazydev.nvim": { "branch": "main", "commit": "8620f82ee3f59ff2187647167b6b47387a13a018" }, + "luvit-meta": { "branch": "main", "commit": "55709f183b0742a7e4f47688c284f81148ad4dc0" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "97d9f1d3ad205dece6bcafd1d71cf1507608f3c7" }, + "mason-tool-installer.nvim": { "branch": "main", "commit": "c5e07b8ff54187716334d585db34282e46fa2932" }, + "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, + "mini.nvim": { "branch": "main", "commit": "3a3178419ce9947f55708966dabf030eca40735a" }, + "nvim-cmp": { "branch": "main", "commit": "8c82d0bd31299dbff7f8e780f5e06d2283de9678" }, + "nvim-lspconfig": { "branch": "master", "commit": "88157521e890fe7fdf18bee22438875edd6300a6" }, + "nvim-treesitter": { "branch": "master", "commit": "097fb77312c731347180e8907424f6c967323f05" }, + "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, - "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, - "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, - "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } + "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, + "vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" }, + "which-key.nvim": { "branch": "main", "commit": "1f8d414f61e0b05958c342df9b6a4c89ce268766" } } From 0297d7043f0ff2fe8aef15ad2b566166f47be707 Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Tue, 14 Jan 2025 10:01:29 +0800 Subject: [PATCH 06/26] Add plugin vim-fugitive --- lazy-lock.json | 2 ++ lua/custom/plugins/fugitive.lua | 3 +++ 2 files changed, 5 insertions(+) create mode 100644 lua/custom/plugins/fugitive.lua diff --git a/lazy-lock.json b/lazy-lock.json index b1a8470025a..4e0da28c748 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -23,6 +23,8 @@ "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, + "undotree": { "branch": "master", "commit": "2556c6800b210b2096b55b66e74b4cc1d9ebbe4f" }, + "vim-fugitive": { "branch": "master", "commit": "174230d6a7f2df94705a7ffd8d5413e27ec10a80" }, "vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" }, "which-key.nvim": { "branch": "main", "commit": "1f8d414f61e0b05958c342df9b6a4c89ce268766" } } diff --git a/lua/custom/plugins/fugitive.lua b/lua/custom/plugins/fugitive.lua new file mode 100644 index 00000000000..b6b4c97bc32 --- /dev/null +++ b/lua/custom/plugins/fugitive.lua @@ -0,0 +1,3 @@ +return { + 'tpope/vim-fugitive', +} From 069ff40250e2e00ac6c4b6f8b35d84e606f3bc93 Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Tue, 14 Jan 2025 10:03:46 +0800 Subject: [PATCH 07/26] Add plugin undotree --- lua/custom/plugins/undotree.lua | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 lua/custom/plugins/undotree.lua diff --git a/lua/custom/plugins/undotree.lua b/lua/custom/plugins/undotree.lua new file mode 100644 index 00000000000..c09143e705d --- /dev/null +++ b/lua/custom/plugins/undotree.lua @@ -0,0 +1,6 @@ +return { + 'mbbill/undotree', + keys = { + { 'u', 'UndotreeToggle', desc = 'Toggle undotree' }, + }, +} From 531cb42119629f3647e8f83e41bf47bc86068cc0 Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Tue, 14 Jan 2025 10:20:22 +0800 Subject: [PATCH 08/26] Map to --- init.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/init.lua b/init.lua index f0a05532d0c..c74bb0f4f77 100644 --- a/init.lua +++ b/init.lua @@ -230,6 +230,8 @@ vim.keymap.set('n', 'y', '"+y', { desc = 'Yank to system clipboard' }) vim.keymap.set('v', 'y', '"+y', { desc = 'Yank selection to system clipboard' }) vim.keymap.set('n', 'Y', '"+Y', { desc = 'Yank line to system clipboard' }) +vim.keymap.set('n', '', '') + -- [[ Basic Autocommands ]] -- See `:help lua-guide-autocommands` From a3b83ce090ba0a9c64dfbd87263de4d4d28a24ef Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Fri, 24 Jan 2025 09:15:22 +0800 Subject: [PATCH 09/26] Enable nerd font --- init.lua | 2 +- lazy-lock.json | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/init.lua b/init.lua index c74bb0f4f77..7457becb154 100644 --- a/init.lua +++ b/init.lua @@ -91,7 +91,7 @@ vim.g.mapleader = ' ' vim.g.maplocalleader = ' ' -- Set to true if you have a Nerd Font installed and selected in the terminal -vim.g.have_nerd_font = false +vim.g.have_nerd_font = true -- [[ Setting options ]] -- See `:help vim.o` diff --git a/lazy-lock.json b/lazy-lock.json index 4e0da28c748..3ca9cc2ab16 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -18,6 +18,7 @@ "nvim-cmp": { "branch": "main", "commit": "8c82d0bd31299dbff7f8e780f5e06d2283de9678" }, "nvim-lspconfig": { "branch": "master", "commit": "88157521e890fe7fdf18bee22438875edd6300a6" }, "nvim-treesitter": { "branch": "master", "commit": "097fb77312c731347180e8907424f6c967323f05" }, + "nvim-web-devicons": { "branch": "master", "commit": "aafa5c187a15701a7299a392b907ec15d9a7075f" }, "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, From ca8353f7700f09e020373038aa57b13e0292fa1c Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Mon, 27 Jan 2025 15:21:42 +0800 Subject: [PATCH 10/26] Set undotree_SetFocusWhenToggle to 1 --- lua/custom/plugins/undotree.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lua/custom/plugins/undotree.lua b/lua/custom/plugins/undotree.lua index c09143e705d..0ba2ed64f69 100644 --- a/lua/custom/plugins/undotree.lua +++ b/lua/custom/plugins/undotree.lua @@ -3,4 +3,7 @@ return { keys = { { 'u', 'UndotreeToggle', desc = 'Toggle undotree' }, }, + config = function() + vim.g.undotree_SetFocusWhenToggle = 1 + end, } From 996c0683bf5c423e2f8bbef4efda26c16b22f00e Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Wed, 5 Mar 2025 14:40:03 +0800 Subject: [PATCH 11/26] Add eslint and prettier --- init.lua | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/init.lua b/init.lua index 7457becb154..887a9d3fc07 100644 --- a/init.lua +++ b/init.lua @@ -711,6 +711,11 @@ require('lazy').setup({ -- ts_ls = {}, -- + prettierd = {}, + + eslint_d = {}, + + lua_ls = { -- cmd = { ... }, -- filetypes = { ... }, @@ -799,7 +804,9 @@ require('lazy').setup({ -- python = { "isort", "black" }, -- -- You can use 'stop_after_first' to run the first available formatter from the list - -- javascript = { "prettierd", "prettier", stop_after_first = true }, + javascript = { 'prettierd', 'eslint_d', stop_after_first = true }, + typescript = { 'prettierd', 'eslint_d', stop_after_first = true }, + vue = { 'prettierd', 'eslint_d', stop_after_first = true }, }, }, }, From aa5e5fd70d1428a5237babcffca6fb037f934089 Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Wed, 5 Mar 2025 14:41:25 +0800 Subject: [PATCH 12/26] Add vue lsp --- init.lua | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/init.lua b/init.lua index 887a9d3fc07..574f1e4a8ad 100644 --- a/init.lua +++ b/init.lua @@ -703,18 +703,31 @@ require('lazy').setup({ -- pyright = {}, -- rust_analyzer = {}, -- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs - -- + -- Some languages (like typescript) have entire language plugins that can be useful: -- https://github.com/pmizio/typescript-tools.nvim -- -- But for many setups, the LSP (`ts_ls`) will work just fine - -- ts_ls = {}, - -- + ts_ls = { + filetypes = { + 'javascript', + 'typescript', + 'javascriptreact', + 'typescriptreact', + }, + }, prettierd = {}, eslint_d = {}, + volar = { + init_options = { + vue = { + hybridMode = false, + }, + }, + }, lua_ls = { -- cmd = { ... }, From 93a3a3dc224becff350f834e93fe6ff4812fae49 Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Thu, 13 Mar 2025 12:12:32 +0800 Subject: [PATCH 13/26] Add formatter for json files --- init.lua | 1 + 1 file changed, 1 insertion(+) diff --git a/init.lua b/init.lua index 574f1e4a8ad..a2cace268be 100644 --- a/init.lua +++ b/init.lua @@ -820,6 +820,7 @@ require('lazy').setup({ javascript = { 'prettierd', 'eslint_d', stop_after_first = true }, typescript = { 'prettierd', 'eslint_d', stop_after_first = true }, vue = { 'prettierd', 'eslint_d', stop_after_first = true }, + json = { 'prettierd' }, }, }, }, From e7bf9eb74549bea2cb44efc91731d32ba404d368 Mon Sep 17 00:00:00 2001 From: Marcus Ho Date: Thu, 13 Mar 2025 12:13:34 +0800 Subject: [PATCH 14/26] Increase timeout of conform plugin --- init.lua | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/init.lua b/init.lua index a2cace268be..d601f4bf5f1 100644 --- a/init.lua +++ b/init.lua @@ -934,17 +934,17 @@ require('lazy').setup({ priority = 1000, -- Make sure to load this before all the other start plugins. config = function() ---@diagnostic disable-next-line: missing-fields - require('tokyonight').setup { - styles = { - comments = { italic = false }, -- Disable italics in comments - }, - } + -- require('tokyonight').setup { + -- styles = { + -- comments = { italic = false }, -- Disable italics in comments + -- }, + -- } -- Load the colorscheme here. -- Like many other themes, this one has different styles, and you could load -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'. -- vim.cmd.colorscheme 'tokyonight-night' - vim.cmd.colorscheme 'catppuccin-mocha' + vim.cmd.colorscheme = 'catppuccin-mocha' -- You can configure highlights by doing something like: vim.cmd.hi 'Comment gui=none' From 7c168a29dc413b784fc38339e57706b86f46b480 Mon Sep 17 00:00:00 2001 From: Marcus Date: Wed, 18 Jun 2025 17:39:16 +0800 Subject: [PATCH 15/26] Enable vim.diagnostic virtual_text --- init.lua | 4 ++++ lazy-lock.json | 49 ++++++++++++++++++++++--------------------------- 2 files changed, 26 insertions(+), 27 deletions(-) diff --git a/init.lua b/init.lua index d601f4bf5f1..04df4c2f21d 100644 --- a/init.lua +++ b/init.lua @@ -168,6 +168,10 @@ vim.o.confirm = true vim.opt.colorcolumn = '80' +vim.diagnostic.config { + virtual_text = true, +} + -- [[ Basic Keymaps ]] -- See `:help vim.keymap.set()` diff --git a/lazy-lock.json b/lazy-lock.json index 3ca9cc2ab16..18f3b5d9bc0 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,31 +1,26 @@ { - "LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" }, + "LuaSnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" }, "blink.cmp": { "branch": "main", "commit": "9bcb14b43852a6f2bfd5ac9ef29cb5cf09b1b39b" }, - "catppuccin": { "branch": "main", "commit": "f67b886d65a029f12ffa298701fb8f1efd89295d" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" }, - "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, - "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, - "conform.nvim": { "branch": "master", "commit": "70019124aa4f2e6838be9fbd2007f6d13b27a96d" }, - "fidget.nvim": { "branch": "main", "commit": "a0abbf18084b77d28bc70e24752e4f4fd54aea17" }, - "gitsigns.nvim": { "branch": "main", "commit": "abcd00a7d5bc1a9470cb21b023c575acade3e4db" }, - "lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" }, - "lazydev.nvim": { "branch": "main", "commit": "8620f82ee3f59ff2187647167b6b47387a13a018" }, - "luvit-meta": { "branch": "main", "commit": "55709f183b0742a7e4f47688c284f81148ad4dc0" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "97d9f1d3ad205dece6bcafd1d71cf1507608f3c7" }, - "mason-tool-installer.nvim": { "branch": "main", "commit": "c5e07b8ff54187716334d585db34282e46fa2932" }, - "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, - "mini.nvim": { "branch": "main", "commit": "3a3178419ce9947f55708966dabf030eca40735a" }, - "nvim-cmp": { "branch": "main", "commit": "8c82d0bd31299dbff7f8e780f5e06d2283de9678" }, - "nvim-lspconfig": { "branch": "master", "commit": "88157521e890fe7fdf18bee22438875edd6300a6" }, - "nvim-treesitter": { "branch": "master", "commit": "097fb77312c731347180e8907424f6c967323f05" }, - "nvim-web-devicons": { "branch": "master", "commit": "aafa5c187a15701a7299a392b907ec15d9a7075f" }, - "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, + "catppuccin": { "branch": "main", "commit": "fa42eb5e26819ef58884257d5ae95dd0552b9a66" }, + "conform.nvim": { "branch": "master", "commit": "4c9003aab62879612c50136649baa1b8ed36cfa1" }, + "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" }, + "gitsigns.nvim": { "branch": "main", "commit": "588264bee92993df92535b6742576f5655c91b1c" }, + "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "c4c84f4521d62de595c0d0f718a9a40c1890c8ce" }, + "mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" }, + "mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" }, + "mini.nvim": { "branch": "main", "commit": "8ca3965e68edfee5f438d4063f5adf5afa255884" }, + "nvim-lspconfig": { "branch": "master", "commit": "1cb30b1bafe5a63a5c6ac20dc39f83487df38855" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-web-devicons": { "branch": "master", "commit": "19d6211c78169e78bab372b585b6fb17ad974e82" }, + "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, - "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, - "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, - "undotree": { "branch": "master", "commit": "2556c6800b210b2096b55b66e74b4cc1d9ebbe4f" }, - "vim-fugitive": { "branch": "master", "commit": "174230d6a7f2df94705a7ffd8d5413e27ec10a80" }, - "vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" }, - "which-key.nvim": { "branch": "main", "commit": "1f8d414f61e0b05958c342df9b6a4c89ce268766" } + "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" }, + "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, + "undotree": { "branch": "master", "commit": "7a8b831e9bfb9f6fe05cc33294882648dd6801fb" }, + "vim-fugitive": { "branch": "master", "commit": "593f831d6f6d779cbabb70a4d1e6b1b1936a88af" }, + "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } } From 50aa39ad190f76e5dabb3da7f9b3d245da82b4a7 Mon Sep 17 00:00:00 2001 From: Marcus Date: Wed, 18 Jun 2025 17:40:26 +0800 Subject: [PATCH 16/26] Change typescript language server to tsgo --- init.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/init.lua b/init.lua index 04df4c2f21d..f1886eb9518 100644 --- a/init.lua +++ b/init.lua @@ -713,6 +713,8 @@ require('lazy').setup({ -- -- But for many setups, the LSP (`ts_ls`) will work just fine ts_ls = { + cmd = { 'tsgo' }, + filetypes = { 'javascript', 'typescript', From 511a8a4203b2d11777b400dd249ffea0622572be Mon Sep 17 00:00:00 2001 From: Marcus Date: Mon, 30 Jun 2025 11:18:17 +0800 Subject: [PATCH 17/26] Remap Y to +y$ --- init.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/init.lua b/init.lua index f1886eb9518..e8c00500bb5 100644 --- a/init.lua +++ b/init.lua @@ -232,7 +232,7 @@ vim.keymap.set('n', 'J', 'mzJ`z', { desc = 'Keep cursor position and joi vim.keymap.set('n', 'y', '"+y', { desc = 'Yank to system clipboard' }) vim.keymap.set('v', 'y', '"+y', { desc = 'Yank selection to system clipboard' }) -vim.keymap.set('n', 'Y', '"+Y', { desc = 'Yank line to system clipboard' }) +vim.keymap.set('n', 'Y', '"+y$', { desc = 'Yank until end of line to system clipboard' }) vim.keymap.set('n', '', '') From 261ea9c3fc5a4c35646b352c915bf655bf8a5a1e Mon Sep 17 00:00:00 2001 From: Marcus Date: Tue, 1 Jul 2025 11:23:28 +0800 Subject: [PATCH 18/26] Add neo-tree plugin --- init.lua | 4 ++-- lazy-lock.json | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/init.lua b/init.lua index e8c00500bb5..b5fc51b854c 100644 --- a/init.lua +++ b/init.lua @@ -950,7 +950,7 @@ require('lazy').setup({ -- Like many other themes, this one has different styles, and you could load -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'. -- vim.cmd.colorscheme 'tokyonight-night' - vim.cmd.colorscheme = 'catppuccin-mocha' + vim.cmd.colorscheme 'catppuccin-mocha' -- You can configure highlights by doing something like: vim.cmd.hi 'Comment gui=none' @@ -1036,7 +1036,7 @@ require('lazy').setup({ -- require 'kickstart.plugins.indent_line', -- require 'kickstart.plugins.lint', -- require 'kickstart.plugins.autopairs', - -- require 'kickstart.plugins.neo-tree', + require 'kickstart.plugins.neo-tree', -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps -- NOTE: The import below can automatically add your own plugins, configuration, etc from `lua/custom/plugins/*.lua` diff --git a/lazy-lock.json b/lazy-lock.json index 18f3b5d9bc0..ec5da248b4e 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -12,6 +12,8 @@ "mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" }, "mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" }, "mini.nvim": { "branch": "main", "commit": "8ca3965e68edfee5f438d4063f5adf5afa255884" }, + "neo-tree.nvim": { "branch": "main", "commit": "f481de16a0eb59c985abac8985e3f2e2f75b4875" }, + "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, "nvim-lspconfig": { "branch": "master", "commit": "1cb30b1bafe5a63a5c6ac20dc39f83487df38855" }, "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, "nvim-web-devicons": { "branch": "master", "commit": "19d6211c78169e78bab372b585b6fb17ad974e82" }, From 14df971b8e7752ab1dfc501da5007138d1f7e4a0 Mon Sep 17 00:00:00 2001 From: Marcus Date: Wed, 13 Aug 2025 10:22:57 +0800 Subject: [PATCH 19/26] Fix broken neotree buffer after session restore --- lua/kickstart/plugins/neo-tree.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lua/kickstart/plugins/neo-tree.lua b/lua/kickstart/plugins/neo-tree.lua index c7067891df0..07faf83b891 100644 --- a/lua/kickstart/plugins/neo-tree.lua +++ b/lua/kickstart/plugins/neo-tree.lua @@ -13,7 +13,10 @@ return { keys = { { '\\', ':Neotree reveal', desc = 'NeoTree reveal', silent = true }, }, + ---@module "neo-tree" + ---@type neotree.Config? opts = { + auto_clean_after_session_restore = true, filesystem = { window = { mappings = { From b6dfb885ea8edf99671f1df65dd0672507e99d9a Mon Sep 17 00:00:00 2001 From: Marcus Date: Wed, 13 Aug 2025 10:29:02 +0800 Subject: [PATCH 20/26] Update lazy packages --- lazy-lock.json | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index ec5da248b4e..fdc9190d3f5 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,28 +1,28 @@ { "LuaSnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" }, - "blink.cmp": { "branch": "main", "commit": "9bcb14b43852a6f2bfd5ac9ef29cb5cf09b1b39b" }, - "catppuccin": { "branch": "main", "commit": "fa42eb5e26819ef58884257d5ae95dd0552b9a66" }, - "conform.nvim": { "branch": "master", "commit": "4c9003aab62879612c50136649baa1b8ed36cfa1" }, - "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" }, - "gitsigns.nvim": { "branch": "main", "commit": "588264bee92993df92535b6742576f5655c91b1c" }, + "blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" }, + "catppuccin": { "branch": "main", "commit": "94f6e8a06b6bb7b8e5529cf9f93adb4654534241" }, + "conform.nvim": { "branch": "master", "commit": "973f3cb73887d510321653044791d7937c7ec0fa" }, + "fidget.nvim": { "branch": "main", "commit": "4ec7bed6c86b671ddde03ca1b227343cfa3e65fa" }, + "gitsigns.nvim": { "branch": "main", "commit": "b01433169be710d6c69f7b4ee264d9670698b831" }, "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "c4c84f4521d62de595c0d0f718a9a40c1890c8ce" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "f2fa60409630ec2d24acf84494fb55e1d28d593c" }, "mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" }, - "mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" }, - "mini.nvim": { "branch": "main", "commit": "8ca3965e68edfee5f438d4063f5adf5afa255884" }, - "neo-tree.nvim": { "branch": "main", "commit": "f481de16a0eb59c985abac8985e3f2e2f75b4875" }, + "mason.nvim": { "branch": "main", "commit": "3671ab0d40aa5bd24b1686562bd0a23391ecf76a" }, + "mini.nvim": { "branch": "main", "commit": "c122e852517adaf7257688e435369c050da113b1" }, + "neo-tree.nvim": { "branch": "main", "commit": "cea666ef965884414b1b71f6b39a537f9238bdb2" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, - "nvim-lspconfig": { "branch": "master", "commit": "1cb30b1bafe5a63a5c6ac20dc39f83487df38855" }, + "nvim-lspconfig": { "branch": "master", "commit": "3db16ceeea947517f0dc1404c24dcb5ab0c91d26" }, "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, - "nvim-web-devicons": { "branch": "master", "commit": "19d6211c78169e78bab372b585b6fb17ad974e82" }, - "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "nvim-web-devicons": { "branch": "master", "commit": "4a8369f4c78ef6f6f895f0cec349e48f74330574" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" }, "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, - "undotree": { "branch": "master", "commit": "7a8b831e9bfb9f6fe05cc33294882648dd6801fb" }, - "vim-fugitive": { "branch": "master", "commit": "593f831d6f6d779cbabb70a4d1e6b1b1936a88af" }, + "undotree": { "branch": "master", "commit": "28f2f54a34baff90ea6f4a735ef1813ad875c743" }, + "vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" }, "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } } From fbcffd3c052bee9f7f5b0ab031840d087a0d1f4e Mon Sep 17 00:00:00 2001 From: Marcus Date: Wed, 13 Aug 2025 19:08:25 +0800 Subject: [PATCH 21/26] Update Lazy packages --- lazy-lock.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index fdc9190d3f5..a4c1460a9c9 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,22 +1,22 @@ { "LuaSnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" }, "blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" }, - "catppuccin": { "branch": "main", "commit": "94f6e8a06b6bb7b8e5529cf9f93adb4654534241" }, + "catppuccin": { "branch": "main", "commit": "76a8d0515024cc55d8bd26fc13f1af88faef3ebf" }, "conform.nvim": { "branch": "master", "commit": "973f3cb73887d510321653044791d7937c7ec0fa" }, - "fidget.nvim": { "branch": "main", "commit": "4ec7bed6c86b671ddde03ca1b227343cfa3e65fa" }, - "gitsigns.nvim": { "branch": "main", "commit": "b01433169be710d6c69f7b4ee264d9670698b831" }, + "fidget.nvim": { "branch": "main", "commit": "2cb5edb2dd6700a958a446b20bb2be04d318da9d" }, + "gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" }, "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "f2fa60409630ec2d24acf84494fb55e1d28d593c" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "7f0bf635082bb9b7d2b37766054526a6ccafdb85" }, "mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" }, - "mason.nvim": { "branch": "main", "commit": "3671ab0d40aa5bd24b1686562bd0a23391ecf76a" }, - "mini.nvim": { "branch": "main", "commit": "c122e852517adaf7257688e435369c050da113b1" }, + "mason.nvim": { "branch": "main", "commit": "7dc4facca9702f95353d5a1f87daf23d78e31c2a" }, + "mini.nvim": { "branch": "main", "commit": "0e9d1f972a91acf5a0513319099ba41f7c09c30a" }, "neo-tree.nvim": { "branch": "main", "commit": "cea666ef965884414b1b71f6b39a537f9238bdb2" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, - "nvim-lspconfig": { "branch": "master", "commit": "3db16ceeea947517f0dc1404c24dcb5ab0c91d26" }, + "nvim-lspconfig": { "branch": "master", "commit": "45ff1914044de7dbd4cd85053dc09f47312a2f4d" }, "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, - "nvim-web-devicons": { "branch": "master", "commit": "4a8369f4c78ef6f6f895f0cec349e48f74330574" }, + "nvim-web-devicons": { "branch": "master", "commit": "c2599a81ecabaae07c49ff9b45dcd032a8d90f1a" }, "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, From 898819b16e03f215da5bb4bd1a904f7356e5e73e Mon Sep 17 00:00:00 2001 From: Marcus Date: Thu, 8 Jan 2026 10:17:50 +0800 Subject: [PATCH 22/26] Add plugin "nvim-treesitter-context" --- lazy-lock.json | 134 +++++++++++++++++----- lua/custom/plugins/treesitter-context.lua | 3 + 2 files changed, 111 insertions(+), 26 deletions(-) create mode 100644 lua/custom/plugins/treesitter-context.lua diff --git a/lazy-lock.json b/lazy-lock.json index a4c1460a9c9..3a142d6756b 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,28 +1,110 @@ { - "LuaSnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" }, - "blink.cmp": { "branch": "main", "commit": "bae4bae0eedd1fa55f34b685862e94a222d5c6f8" }, - "catppuccin": { "branch": "main", "commit": "76a8d0515024cc55d8bd26fc13f1af88faef3ebf" }, - "conform.nvim": { "branch": "master", "commit": "973f3cb73887d510321653044791d7937c7ec0fa" }, - "fidget.nvim": { "branch": "main", "commit": "2cb5edb2dd6700a958a446b20bb2be04d318da9d" }, - "gitsigns.nvim": { "branch": "main", "commit": "6e3c66548035e50db7bd8e360a29aec6620c3641" }, - "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, - "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, - "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "7f0bf635082bb9b7d2b37766054526a6ccafdb85" }, - "mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" }, - "mason.nvim": { "branch": "main", "commit": "7dc4facca9702f95353d5a1f87daf23d78e31c2a" }, - "mini.nvim": { "branch": "main", "commit": "0e9d1f972a91acf5a0513319099ba41f7c09c30a" }, - "neo-tree.nvim": { "branch": "main", "commit": "cea666ef965884414b1b71f6b39a537f9238bdb2" }, - "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, - "nvim-lspconfig": { "branch": "master", "commit": "45ff1914044de7dbd4cd85053dc09f47312a2f4d" }, - "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, - "nvim-web-devicons": { "branch": "master", "commit": "c2599a81ecabaae07c49ff9b45dcd032a8d90f1a" }, - "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, - "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, - "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" }, - "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, - "undotree": { "branch": "master", "commit": "28f2f54a34baff90ea6f4a735ef1813ad875c743" }, - "vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" }, - "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" } + "LuaSnip": { + "branch": "master", + "commit": "458560534a73f7f8d7a11a146c801db00b081df0" + }, + "blink.cmp": { + "branch": "main", + "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" + }, + "catppuccin": { + "branch": "main", + "commit": "af58927c55c9f3272c940ff02b3cee94a1249f26" + }, + "conform.nvim": { + "branch": "master", + "commit": "9fd3d5e0b689ec1bf400c53cbbec72c6fdf24081" + }, + "fidget.nvim": { + "branch": "main", + "commit": "e32b672d8fd343f9d6a76944fedb8c61d7d8111a" + }, + "gitsigns.nvim": { + "branch": "main", + "commit": "20ad4419564d6e22b189f6738116b38871082332" + }, + "guess-indent.nvim": { + "branch": "main", + "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" + }, + "lazy.nvim": { + "branch": "main", + "commit": "db067881fff0fd4be8c00e5bde7492e0e1c77a2f" + }, + "lazydev.nvim": { + "branch": "main", + "commit": "01bc2aacd51cf9021eb19d048e70ce3dd09f7f93" + }, + "mason-lspconfig.nvim": { + "branch": "main", + "commit": "2304ff65ecc8cb2afc2484de3e2ed9a407edf0b9" + }, + "mason-tool-installer.nvim": { + "branch": "main", + "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" + }, + "mason.nvim": { + "branch": "main", + "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" + }, + "mini.nvim": { + "branch": "main", + "commit": "64a23d04cce6d600f18d5d1610d319f6efa08958" + }, + "neo-tree.nvim": { + "branch": "main", + "commit": "8cdd6b1940f333c1dd085526a9c45b30fb2dbf50" + }, + "nui.nvim": { + "branch": "main", + "commit": "de740991c12411b663994b2860f1a4fd0937c130" + }, + "nvim-lspconfig": { + "branch": "master", + "commit": "ececa531ecae813422697b5ef627a11cc964c2a7" + }, + "nvim-treesitter": { + "branch": "master", + "commit": "42fc28ba918343ebfd5565147a42a26580579482" + }, + "nvim-treesitter-context": { + "branch": "master", + "commit": "64dd4cf3f6fd0ab17622c5ce15c91fc539c3f24a" + }, + "nvim-web-devicons": { + "branch": "master", + "commit": "b8221e42cf7287c4dcde81f232f58d7b947c210d" + }, + "plenary.nvim": { + "branch": "master", + "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" + }, + "telescope-fzf-native.nvim": { + "branch": "main", + "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" + }, + "telescope-ui-select.nvim": { + "branch": "master", + "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" + }, + "telescope.nvim": { + "branch": "master", + "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" + }, + "todo-comments.nvim": { + "branch": "main", + "commit": "19d461ddd543e938eb22505fb03fa878800270b6" + }, + "undotree": { + "branch": "master", + "commit": "0f1c9816975b5d7f87d5003a19c53c6fd2ff6f7f" + }, + "vim-fugitive": { + "branch": "master", + "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" + }, + "which-key.nvim": { + "branch": "main", + "commit": "b4177e3eaf15fe5eb8357ebac2286d488be1ed00" + } } diff --git a/lua/custom/plugins/treesitter-context.lua b/lua/custom/plugins/treesitter-context.lua new file mode 100644 index 00000000000..39d4e986a2e --- /dev/null +++ b/lua/custom/plugins/treesitter-context.lua @@ -0,0 +1,3 @@ +return { + 'nvim-treesitter/nvim-treesitter-context', +} From 6985ae7b89d002fdbb418900bd78c9f206d42055 Mon Sep 17 00:00:00 2001 From: Marcus Date: Thu, 29 Jan 2026 09:16:39 +0800 Subject: [PATCH 23/26] Set formatter for HTML and CSS --- init.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/init.lua b/init.lua index b5fc51b854c..cd838a33eaa 100644 --- a/init.lua +++ b/init.lua @@ -827,6 +827,8 @@ require('lazy').setup({ typescript = { 'prettierd', 'eslint_d', stop_after_first = true }, vue = { 'prettierd', 'eslint_d', stop_after_first = true }, json = { 'prettierd' }, + html = { 'prettierd' }, + css = { 'prettierd' }, }, }, }, From 3200803c2d8ec0cb2d7ff709633bf757a9ed379c Mon Sep 17 00:00:00 2001 From: Marcus Date: Thu, 29 Jan 2026 09:42:52 +0800 Subject: [PATCH 24/26] Remove treesitter-context underline --- lua/custom/plugins/treesitter-context.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lua/custom/plugins/treesitter-context.lua b/lua/custom/plugins/treesitter-context.lua index 39d4e986a2e..66fa2c87000 100644 --- a/lua/custom/plugins/treesitter-context.lua +++ b/lua/custom/plugins/treesitter-context.lua @@ -1,3 +1,6 @@ return { 'nvim-treesitter/nvim-treesitter-context', + config = function() + vim.api.nvim_set_hl(0, 'TreesitterContextBottom', { underline = false }) + end, } From c744184104bfeefdf195ff294a8f9c1806f0e77a Mon Sep 17 00:00:00 2001 From: Marcus Date: Thu, 29 Jan 2026 10:44:36 +0800 Subject: [PATCH 25/26] Enable telescope colorscheme preview --- init.lua | 6 ++- lazy-lock.json | 135 ++++++++++--------------------------------------- 2 files changed, 31 insertions(+), 110 deletions(-) diff --git a/init.lua b/init.lua index cd838a33eaa..8e8583d4b95 100644 --- a/init.lua +++ b/init.lua @@ -443,7 +443,9 @@ require('lazy').setup({ -- i = { [''] = 'to_fuzzy_refine' }, -- }, -- }, - -- pickers = {} + pickers = { + colorscheme = { enable_preview = true }, + }, extensions = { ['ui-select'] = { require('telescope.themes').get_dropdown(), @@ -466,7 +468,7 @@ require('lazy').setup({ vim.keymap.set('n', 'sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' }) vim.keymap.set('n', 'sr', builtin.resume, { desc = '[S]earch [R]esume' }) vim.keymap.set('n', 's.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' }) - vim.keymap.set('n', '', builtin.buffers, { desc = '[ ] Find existing buffers' }) + vim.keymap.set('n', '', builtin.buffers, { desc = '[ ] Search existing buffers' }) -- Slightly advanced example of overriding default behavior and theme vim.keymap.set('n', '/', function() diff --git a/lazy-lock.json b/lazy-lock.json index 3a142d6756b..7746823f494 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,110 +1,29 @@ { - "LuaSnip": { - "branch": "master", - "commit": "458560534a73f7f8d7a11a146c801db00b081df0" - }, - "blink.cmp": { - "branch": "main", - "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" - }, - "catppuccin": { - "branch": "main", - "commit": "af58927c55c9f3272c940ff02b3cee94a1249f26" - }, - "conform.nvim": { - "branch": "master", - "commit": "9fd3d5e0b689ec1bf400c53cbbec72c6fdf24081" - }, - "fidget.nvim": { - "branch": "main", - "commit": "e32b672d8fd343f9d6a76944fedb8c61d7d8111a" - }, - "gitsigns.nvim": { - "branch": "main", - "commit": "20ad4419564d6e22b189f6738116b38871082332" - }, - "guess-indent.nvim": { - "branch": "main", - "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" - }, - "lazy.nvim": { - "branch": "main", - "commit": "db067881fff0fd4be8c00e5bde7492e0e1c77a2f" - }, - "lazydev.nvim": { - "branch": "main", - "commit": "01bc2aacd51cf9021eb19d048e70ce3dd09f7f93" - }, - "mason-lspconfig.nvim": { - "branch": "main", - "commit": "2304ff65ecc8cb2afc2484de3e2ed9a407edf0b9" - }, - "mason-tool-installer.nvim": { - "branch": "main", - "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" - }, - "mason.nvim": { - "branch": "main", - "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" - }, - "mini.nvim": { - "branch": "main", - "commit": "64a23d04cce6d600f18d5d1610d319f6efa08958" - }, - "neo-tree.nvim": { - "branch": "main", - "commit": "8cdd6b1940f333c1dd085526a9c45b30fb2dbf50" - }, - "nui.nvim": { - "branch": "main", - "commit": "de740991c12411b663994b2860f1a4fd0937c130" - }, - "nvim-lspconfig": { - "branch": "master", - "commit": "ececa531ecae813422697b5ef627a11cc964c2a7" - }, - "nvim-treesitter": { - "branch": "master", - "commit": "42fc28ba918343ebfd5565147a42a26580579482" - }, - "nvim-treesitter-context": { - "branch": "master", - "commit": "64dd4cf3f6fd0ab17622c5ce15c91fc539c3f24a" - }, - "nvim-web-devicons": { - "branch": "master", - "commit": "b8221e42cf7287c4dcde81f232f58d7b947c210d" - }, - "plenary.nvim": { - "branch": "master", - "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" - }, - "telescope-fzf-native.nvim": { - "branch": "main", - "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" - }, - "telescope-ui-select.nvim": { - "branch": "master", - "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" - }, - "telescope.nvim": { - "branch": "master", - "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" - }, - "todo-comments.nvim": { - "branch": "main", - "commit": "19d461ddd543e938eb22505fb03fa878800270b6" - }, - "undotree": { - "branch": "master", - "commit": "0f1c9816975b5d7f87d5003a19c53c6fd2ff6f7f" - }, - "vim-fugitive": { - "branch": "master", - "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" - }, - "which-key.nvim": { - "branch": "main", - "commit": "b4177e3eaf15fe5eb8357ebac2286d488be1ed00" - } + "LuaSnip": { "branch": "master", "commit": "5a1e39223db9a0498024a77b8441169d260c8c25" }, + "blink.cmp": { "branch": "main", "commit": "b19413d214068f316c78978b08264ed1c41830ec" }, + "catppuccin": { "branch": "main", "commit": "beaf41a30c26fd7d6c386d383155cbd65dd554cd" }, + "conform.nvim": { "branch": "master", "commit": "c2526f1cde528a66e086ab1668e996d162c75f4f" }, + "fidget.nvim": { "branch": "main", "commit": "7fa433a83118a70fe24c1ce88d5f0bd3453c0970" }, + "gitsigns.nvim": { "branch": "main", "commit": "abf82a65f185bd54adc0679f74b7d6e1ada690c9" }, + "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, + "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, + "lazydev.nvim": { "branch": "main", "commit": "5231c62aa83c2f8dc8e7ba957aa77098cda1257d" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "3d89e7c92fbd96c5e10e0298fc2b006f21cf9428" }, + "mason-tool-installer.nvim": { "branch": "main", "commit": "443f1ef8b5e6bf47045cb2217b6f748a223cf7dc" }, + "mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" }, + "mini.nvim": { "branch": "main", "commit": "9b935c218ddba02e5dc75c94f90143bce1f7c646" }, + "neo-tree.nvim": { "branch": "main", "commit": "f3df514fff2bdd4318127c40470984137f87b62e" }, + "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, + "nvim-lspconfig": { "branch": "master", "commit": "5fef3b4a5f1057553b78d048322782c3a9ae69c6" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-treesitter-context": { "branch": "master", "commit": "64dd4cf3f6fd0ab17622c5ce15c91fc539c3f24a" }, + "nvim-web-devicons": { "branch": "master", "commit": "803353450c374192393f5387b6a0176d0972b848" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" }, + "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, + "telescope.nvim": { "branch": "master", "commit": "ad7d9580338354ccc136e5b8f0aa4f880434dcdc" }, + "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, + "undotree": { "branch": "master", "commit": "178d19e00a643f825ea11d581b1684745d0c4eda" }, + "vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" }, + "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" } } From 75f37c95d37638d8dab2137a4b49972da90b46c0 Mon Sep 17 00:00:00 2001 From: Marcus Date: Thu, 29 Jan 2026 11:31:29 +0800 Subject: [PATCH 26/26] Add telescope mapping to delete buffers --- init.lua | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/init.lua b/init.lua index 8e8583d4b95..c6d68965574 100644 --- a/init.lua +++ b/init.lua @@ -438,11 +438,16 @@ require('lazy').setup({ -- You can put your default mappings / updates / etc. in here -- All the info you're looking for is in `:help telescope.setup()` -- - -- defaults = { - -- mappings = { - -- i = { [''] = 'to_fuzzy_refine' }, - -- }, - -- }, + defaults = { + mappings = { + i = { + [''] = require('telescope.actions').delete_buffer, + }, + n = { + [''] = require('telescope.actions').delete_buffer, + }, + }, + }, pickers = { colorscheme = { enable_preview = true }, },