diff options
author | Yuqian Yang <crupest@crupest.life> | 2025-06-04 15:25:48 +0800 |
---|---|---|
committer | Yuqian Yang <crupest@crupest.life> | 2025-06-04 18:38:00 +0800 |
commit | 166bdbc8bfb89b007b1a9ede885af5582074481c (patch) | |
tree | 1fce9604b083d0e13d3b64815642f40639ba8546 | |
parent | 447b2d7b59333766ddc434e7a48320ed555bb8fd (diff) | |
download | crupest-166bdbc8bfb89b007b1a9ede885af5582074481c.tar.gz crupest-166bdbc8bfb89b007b1a9ede885af5582074481c.tar.bz2 crupest-166bdbc8bfb89b007b1a9ede885af5582074481c.zip |
config(nvim): new lsp config and use neo-tree.
-rw-r--r-- | store/home/config/nvim/init.lua | 19 | ||||
-rw-r--r-- | store/home/config/nvim/lazy-lock.json | 29 | ||||
-rw-r--r-- | store/home/config/nvim/lua/plugins.lua | 10 | ||||
-rw-r--r-- | store/home/config/nvim/lua/setup/lsp.lua | 67 | ||||
-rw-r--r-- | store/home/config/nvim/lua/setup/lsp/clangd.lua | 25 | ||||
-rw-r--r-- | store/home/config/nvim/lua/setup/lsp/init.lua | 27 | ||||
-rw-r--r-- | store/home/config/nvim/lua/setup/lsp/lua_ls.lua | 29 | ||||
-rw-r--r-- | store/home/config/nvim/lua/setup/plugins/init.lua | 11 |
8 files changed, 103 insertions, 114 deletions
diff --git a/store/home/config/nvim/init.lua b/store/home/config/nvim/init.lua index 881ce15..95d1c30 100644 --- a/store/home/config/nvim/init.lua +++ b/store/home/config/nvim/init.lua @@ -1,12 +1,3 @@ -if vim.g.neovide then - -- spellchecker: disable-next-line - vim.opt.guifont = "FiraCode Nerd Font"; - vim.g.neovide_normal_opacity = 0.95; - vim.g.neovide_input_ime = false; - vim.g.neovide_cursor_animate_in_insert_mode = false - vim.g.neovide_input_macos_option_key_is_meta = 'only_left' -end - local lazy_path = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not vim.uv.fs_stat(lazy_path) then vim.fn.system({ @@ -21,7 +12,13 @@ end vim.opt.rtp:prepend(lazy_path) require("lazy").setup("plugins") -vim.cmd("colorscheme catppuccin-macchiato") +if vim.g.neovide then + vim.opt.guifont = "Maple Mono NF"; + vim.g.neovide_normal_opacity = 0.95; + vim.g.neovide_input_ime = false; + vim.g.neovide_cursor_animate_in_insert_mode = false + vim.g.neovide_input_macos_option_key_is_meta = 'only_left' + vim.cmd("colorscheme catppuccin-macchiato") +end require("setup").setup() - diff --git a/store/home/config/nvim/lazy-lock.json b/store/home/config/nvim/lazy-lock.json index 5f6c226..9869b1d 100644 --- a/store/home/config/nvim/lazy-lock.json +++ b/store/home/config/nvim/lazy-lock.json @@ -1,18 +1,19 @@ { - "catppuccin": { "branch": "main", "commit": "5b5e3aef9ad7af84f463d17b5479f06b87d5c429" }, - "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" }, - "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, - "gitsigns.nvim": { "branch": "main", "commit": "7010000889bfb6c26065e0b0f7f1e6aa9163edd9" }, + "catppuccin": { "branch": "main", "commit": "a0c769bc7cd04bbbf258b3d5f01e2bdce744108d" }, + "cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" }, + "cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" }, + "gitsigns.nvim": { "branch": "main", "commit": "d0f90ef51d4be86b824b012ec52ed715b5622e51" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, - "lualine.nvim": { "branch": "master", "commit": "1517caa8fff05e4b4999857319d3b0609a7f57fa" }, - "nvim-autopairs": { "branch": "master", "commit": "6522027785b305269fa17088395dfc0f456cedd2" }, - "nvim-cmp": { "branch": "main", "commit": "1e1900b0769324a9675ef85b38f99cca29e203b3" }, - "nvim-lint": { "branch": "master", "commit": "93b8040115c9114dac1047311763bef275e752dc" }, - "nvim-lspconfig": { "branch": "master", "commit": "85e0dd26b710e834a105d679200d01e326a3d2b0" }, - "nvim-tree.lua": { "branch": "master", "commit": "44d9b58f11d5a426c297aafd0be1c9d45617a849" }, - "nvim-treesitter": { "branch": "master", "commit": "da5825bf70cc2ea7eacd1e60c32c07baf19adeba" }, - "nvim-web-devicons": { "branch": "master", "commit": "4c3a5848ee0b09ecdea73adcd2a689190aeb728c" }, + "lualine.nvim": { "branch": "master", "commit": "0c6cca9f2c63dadeb9225c45bc92bb95a151d4af" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "f481de16a0eb59c985abac8985e3f2e2f75b4875" }, + "nui.nvim": { "branch": "main", "commit": "7cd18e73cfbd70e1546931b7268b3eebaeff9391" }, + "nvim-autopairs": { "branch": "master", "commit": "4d74e75913832866aa7de35e4202463ddf6efd1b" }, + "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" }, + "nvim-lint": { "branch": "master", "commit": "b47cbb249351873e3a571751c3fb66ed6369852f" }, + "nvim-lspconfig": { "branch": "master", "commit": "8adb3b5938f6074a1bcc36d3c3916f497d2e8ec4" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, - "telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" } + "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" } } diff --git a/store/home/config/nvim/lua/plugins.lua b/store/home/config/nvim/lua/plugins.lua index 841f659..480ea8f 100644 --- a/store/home/config/nvim/lua/plugins.lua +++ b/store/home/config/nvim/lua/plugins.lua @@ -11,11 +11,15 @@ return { build = ":TSUpdate" }, { - "nvim-tree/nvim-tree.lua", - lazy = false, + "nvim-neo-tree/neo-tree.nvim", + branch = "v3.x", dependencies = { - "nvim-tree/nvim-web-devicons", + "nvim-lua/plenary.nvim", + "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended + "MunifTanjim/nui.nvim", + -- {"3rd/image.nvim", opts = {}}, -- Optional image support in preview window: See `# Preview Mode` for more information }, + lazy = false, -- neo-tree will lazily load itself }, { "nvim-lualine/lualine.nvim", diff --git a/store/home/config/nvim/lua/setup/lsp.lua b/store/home/config/nvim/lua/setup/lsp.lua new file mode 100644 index 0000000..15deacd --- /dev/null +++ b/store/home/config/nvim/lua/setup/lsp.lua @@ -0,0 +1,67 @@ +-- spellchecker: words denols luals + +vim.lsp.config("*", { + capabilities = vim.tbl_extend("force", + vim.lsp.protocol.make_client_capabilities(), + require("cmp_nvim_lsp").default_capabilities() + ) +}) + +local function setup_clangd() + local clangd = "clangd" + local brew_clangd_path = "/usr/local/opt/llvm/bin/clangd" + + if vim.uv.fs_stat(brew_clangd_path) ~= nil then + clangd = brew_clangd_path + end + + vim.lsp.config("clangd", { + cmd = { clangd } + }) + local old_on_attach = vim.lsp.config.clangd.on_attach + vim.lsp.config.clangd.on_attach = function(client, bufnr) + if old_on_attach then old_on_attach(client, bufnr) end + vim.keymap.set('n', 'grs', "<cmd>ClangdSwitchSourceHeader<cr>", { + buffer = bufnr + }) + end +end + +local function setup_luals() + vim.lsp.config("lua_ls", { + settings = { + Lua = { + runtime = { + version = "LuaJIT" + }, + diagnostics = { + globals = { "vim" }, + }, + workspace = { + library = { + [vim.fn.expand "$VIMRUNTIME/lua"] = true, + [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true, + [vim.fn.stdpath "data" .. "/lazy/lazy.nvim/lua/lazy"] = true, + }, + maxPreload = 100000, + preloadFileSize = 10000, + }, + }, + }, + }) +end + +local function setup() + vim.lsp.enable('denols') + vim.lsp.enable('cmake') + vim.lsp.enable('bashls') + vim.lsp.enable('html') + vim.lsp.enable('cssls') + setup_clangd() + setup_luals() +end + + +return { + setup = setup +} diff --git a/store/home/config/nvim/lua/setup/lsp/clangd.lua b/store/home/config/nvim/lua/setup/lsp/clangd.lua deleted file mode 100644 index 6080510..0000000 --- a/store/home/config/nvim/lua/setup/lsp/clangd.lua +++ /dev/null @@ -1,25 +0,0 @@ -local lspconfig = require("lspconfig") - -local brew_clangd_path = "/usr/local/opt/llvm/bin/clangd" - -local function setup() - local clangd = "clangd" - - if vim.uv.fs_stat(brew_clangd_path) ~= nil then - clangd = brew_clangd_path - end - - -- setup lsp clangd - lspconfig.clangd.setup { - cmd = { clangd }, - on_attach = function(_, bufnr) - vim.keymap.set('n', 'grs', "<cmd>ClangdSwitchSourceHeader<cr>", { - buffer = bufnr - }) - end - } -end - -return { - setup = setup -} diff --git a/store/home/config/nvim/lua/setup/lsp/init.lua b/store/home/config/nvim/lua/setup/lsp/init.lua deleted file mode 100644 index 313cf98..0000000 --- a/store/home/config/nvim/lua/setup/lsp/init.lua +++ /dev/null @@ -1,27 +0,0 @@ -local lspconfig = require("lspconfig") -local cmp_nvim_lsp = require("cmp_nvim_lsp") -local cmp_default_caps = cmp_nvim_lsp.default_capabilities() - -local lspconfig_default_caps = lspconfig.util.default_config.capabilities - -lspconfig.util.default_config = vim.tbl_extend( - "force", - lspconfig.util.default_config, - { - capabilities = vim.tbl_extend("force", lspconfig_default_caps, cmp_default_caps), - autostart = false, - }) - -local function setup() - lspconfig.cmake.setup {} - lspconfig.bashls.setup {} - lspconfig.html.setup {} - lspconfig.cssls.setup {} - require("setup.lsp.clangd").setup() - require("setup.lsp.lua_ls").setup() -end - - -return { - setup = setup -} diff --git a/store/home/config/nvim/lua/setup/lsp/lua_ls.lua b/store/home/config/nvim/lua/setup/lsp/lua_ls.lua deleted file mode 100644 index 93aa503..0000000 --- a/store/home/config/nvim/lua/setup/lsp/lua_ls.lua +++ /dev/null @@ -1,29 +0,0 @@ -local lspconfig = require("lspconfig") - -local function setup() - lspconfig.lua_ls.setup { - settings = { - Lua = { - runtime = { - version = "LuaJIT" - }, - diagnostics = { - globals = { "vim" }, - }, - workspace = { - library = { - [vim.fn.expand "$VIMRUNTIME/lua"] = true, - [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true, - [vim.fn.stdpath "data" .. "/lazy/lazy.nvim/lua/lazy"] = true, - }, - maxPreload = 100000, - preloadFileSize = 10000, - }, - }, - }, - } -end - -return { - setup = setup -} diff --git a/store/home/config/nvim/lua/setup/plugins/init.lua b/store/home/config/nvim/lua/setup/plugins/init.lua index 79ca3a8..5bcc219 100644 --- a/store/home/config/nvim/lua/setup/plugins/init.lua +++ b/store/home/config/nvim/lua/setup/plugins/init.lua @@ -1,12 +1,13 @@ local function setup() - require("setup.plugins.lint").setup() - require("setup.plugins.cmp").setup() + require("neo-tree").setup {} + require('lualine').setup {} + require("setup.plugins.telescope").setup() require("setup.plugins.gitsigns").setup() - require("setup.plugins.tree-sitter").setup() - require('lualine').setup {} - require("nvim-tree").setup {} + require("setup.plugins.tree-sitter").setup() + require("setup.plugins.lint").setup() + require("setup.plugins.cmp").setup() require("nvim-autopairs").setup {} end |