Compare commits

...

2 Commits

Author SHA1 Message Date
9d5f671e4f rm godot lsp 2025-02-20 15:10:42 +00:00
52dbbb30fd blip 2025-02-20 15:07:28 +00:00
2 changed files with 237 additions and 242 deletions

View File

@ -3,6 +3,7 @@ local use_google = require("utils").use_google
return { return {
"sindrets/diffview.nvim", "sindrets/diffview.nvim",
{ "folke/todo-comments.nvim", dependencies = { "nvim-lua/plenary.nvim" } }, { "folke/todo-comments.nvim", dependencies = { "nvim-lua/plenary.nvim" } },
{
"MagicDuck/grug-far.nvim", "MagicDuck/grug-far.nvim",
config = function() config = function()
require("grug-far").setup({ require("grug-far").setup({
@ -18,127 +19,127 @@ return {
}) })
end, end,
}, },
{ {
"shellRaining/hlchunk.nvim", "shellRaining/hlchunk.nvim",
event = { "BufReadPre", "BufNewFile" }, event = { "BufReadPre", "BufNewFile" },
opts = { opts = {
line_num = { enable = true }, line_num = { enable = true },
chunk = { chunk = {
enable = true, enable = true,
priority = 15, priority = 15,
style = { style = {
{ fg = "#393d4c" }, { fg = "#393d4c" },
}, },
chars = { chars = {
horizontal_line = "", horizontal_line = "",
-- vertical_line = "│", -- vertical_line = "│",
vertical_line = "", vertical_line = "",
left_top = "", left_top = "",
left_bottom = "", left_bottom = "",
right_arrow = ">", right_arrow = ">",
}, },
use_treesitter = true, use_treesitter = true,
textobject = "", textobject = "",
max_file_size = 1024 * 1024, max_file_size = 1024 * 1024,
error_sign = true, error_sign = true,
-- animation related -- animation related
duration = 0, duration = 0,
delay = 0, delay = 0,
}, },
}, },
}, },
"RRethy/vim-illuminate", "RRethy/vim-illuminate",
"kdheepak/lazygit.nvim", "kdheepak/lazygit.nvim",
"flwyd/vim-conjoin", "flwyd/vim-conjoin",
"rafcamlet/nvim-luapad", "rafcamlet/nvim-luapad",
"vim-scripts/vcscommand.vim", "vim-scripts/vcscommand.vim",
"AndrewRadev/tagalong.vim", "AndrewRadev/tagalong.vim",
"AndrewRadev/yankwin.vim", "AndrewRadev/yankwin.vim",
{ "squk/gdrama-syntax.vim", ft = "gdrama" }, { "squk/gdrama-syntax.vim", ft = "gdrama" },
{ "nvim-lua/plenary.nvim", lazy = false }, { "nvim-lua/plenary.nvim", lazy = false },
{ "squk/java-syntax.vim", ft = "java" }, { "squk/java-syntax.vim", ft = "java" },
{ "udalov/kotlin-vim", event = "VeryLazy", ft = "kotlin" }, { "udalov/kotlin-vim", event = "VeryLazy", ft = "kotlin" },
{ "andymass/vim-matchup", event = "VimEnter" }, { "andymass/vim-matchup", event = "VimEnter" },
{ "jghauser/mkdir.nvim", event = "BufWritePre" }, { "jghauser/mkdir.nvim", event = "BufWritePre" },
{ {
"rmagatti/auto-session", "rmagatti/auto-session",
dependencies = { dependencies = {
"nvim-telescope/telescope.nvim", -- Only needed if you want to use session lens "nvim-telescope/telescope.nvim", -- Only needed if you want to use session lens
}, },
config = function() config = function()
require("auto-session").setup({ require("auto-session").setup({
auto_session_suppress_dirs = { "~/", "~/Projects", "~/Downloads", "/" }, auto_session_suppress_dirs = { "~/", "~/Projects", "~/Downloads", "/" },
args_allow_single_directory = false, args_allow_single_directory = false,
bypass_save_filetypes = { "netrw" }, bypass_save_filetypes = { "netrw" },
}) })
end, end,
}, },
"tpope/vim-abolish", "tpope/vim-abolish",
{ {
"johmsalas/text-case.nvim", "johmsalas/text-case.nvim",
dependencies = { "nvim-telescope/telescope.nvim" }, dependencies = { "nvim-telescope/telescope.nvim" },
config = function() config = function()
require("textcase").setup({}) require("textcase").setup({})
require("telescope").load_extension("textcase") require("telescope").load_extension("textcase")
end, end,
cmd = { cmd = {
"Subs", "Subs",
}, },
-- stylua: ignore -- stylua: ignore
keys = { keys = {
{ "<leader>tc", "<cmd>TextCaseOpenTelescope<CR>", mode = { "n", "v" }, desc = "Telescope" }, { "<leader>tc", "<cmd>TextCaseOpenTelescope<CR>", mode = { "n", "v" }, desc = "Telescope" },
}, },
}, },
{ {
"NvChad/nvim-colorizer.lua", "NvChad/nvim-colorizer.lua",
ft = "lua", ft = "lua",
config = function() config = function()
require("colorizer").setup() require("colorizer").setup()
end, end,
}, },
{ {
"andweeb/presence.nvim", "andweeb/presence.nvim",
cond = not use_google(), cond = not use_google(),
config = function() config = function()
require("presence").setup({ require("presence").setup({
main_image = "file", main_image = "file",
show_time = false, show_time = false,
}) })
end, end,
}, },
{ {
"ntpeters/vim-better-whitespace", "ntpeters/vim-better-whitespace",
config = function() config = function()
vim.g.better_whitespace_filetypes_blacklist = { "dashboard" } vim.g.better_whitespace_filetypes_blacklist = { "dashboard" }
end, end,
}, },
{ {
"mbbill/undotree", "mbbill/undotree",
cmd = "UndotreeToggle", cmd = "UndotreeToggle",
config = function() config = function()
vim.g.undotree_SetFocusWhenToggle = 1 vim.g.undotree_SetFocusWhenToggle = 1
end, end,
-- stylua: ignore -- stylua: ignore
keys = { { "<leader>ut", ":UndotreeToggle<CR>" } }, keys = { { "<leader>ut", ":UndotreeToggle<CR>" } },
}, },
{ {
"stevearc/aerial.nvim", "stevearc/aerial.nvim",
opts = {}, opts = {},
cmd = { "AerialToggle", "AerialOn" }, cmd = { "AerialToggle", "AerialOn" },
-- stylua: ignore -- stylua: ignore
keys = { { "<leader>so", ":AerialToggle<CR>", desc = "[S]symbols [O]utline" } }, keys = { { "<leader>so", ":AerialToggle<CR>", desc = "[S]symbols [O]utline" } },
}, },
{ {
"andrewferrier/debugprint.nvim", "andrewferrier/debugprint.nvim",
opts = {}, opts = {},
-- Dependency only needed for NeoVim 0.8 -- Dependency only needed for NeoVim 0.8
dependencies = { dependencies = {
"nvim-treesitter/nvim-treesitter", "nvim-treesitter/nvim-treesitter",
}, },
-- Remove the following line to use development versions, -- Remove the following line to use development versions,
-- not just the formal releases -- not just the formal releases
version = "*", version = "*",
-- stylua: ignore -- stylua: ignore
keys = { keys = {
{ "<leader>dp", ":lua require('debugprint').debugprint()<cr>", desc = "Debug print" }, { "<leader>dp", ":lua require('debugprint').debugprint()<cr>", desc = "Debug print" },
@ -146,5 +147,5 @@ return {
{ "<leader>dq", ":lua require('debugprint').debugprint({variable = true})<cr>", desc = "Debug print" }, { "<leader>dq", ":lua require('debugprint').debugprint({variable = true})<cr>", desc = "Debug print" },
{ "<leader>dQ", ":lua require('debugprint').debugprint({variable = true, above = true})<cr>", desc = "Debug print", }, { "<leader>dQ", ":lua require('debugprint').debugprint({variable = true, above = true})<cr>", desc = "Debug print", },
}, },
}, },
} }

View File

@ -2,136 +2,130 @@ local use_google = require("utils").use_google
local flags = require("utils").flags local flags = require("utils").flags
return { return {
-- { -- {
-- "ray-x/lsp_signature.nvim", -- "ray-x/lsp_signature.nvim",
-- event = "VeryLazy", -- event = "VeryLazy",
-- opts = { -- opts = {
-- floating_window = true, -- floating_window = true,
-- hint_prefix = "󰡱 ", -- hint_prefix = "󰡱 ",
-- }, -- },
-- config = function(_, opts) -- config = function(_, opts)
-- require("lsp_signature").setup(opts) -- require("lsp_signature").setup(opts)
-- end, -- end,
-- }, -- },
{ {
"kosayoda/nvim-lightbulb", "kosayoda/nvim-lightbulb",
commit = "1cae7b7153ae98dcf1b11173a443ac1b6d8e3d49", commit = "1cae7b7153ae98dcf1b11173a443ac1b6d8e3d49",
event = { "LspAttach" }, event = { "LspAttach" },
opts = { opts = {
autocmd = { enabled = true }, autocmd = { enabled = true },
virtual_text = { virtual_text = {
enabled = true, enabled = true,
text = " 󱐋", text = " 󱐋",
hl = "DiagnosticWarn", hl = "DiagnosticWarn",
}, },
sign = { enabled = false }, sign = { enabled = false },
}, },
}, },
{ {
"L3MON4D3/LuaSnip", "L3MON4D3/LuaSnip",
build = "make install_jsregexp", build = "make install_jsregexp",
config = function() config = function()
require("luasnip.loaders.from_vscode").lazy_load() require("luasnip.loaders.from_vscode").lazy_load()
end, end,
dependencies = { "rafamadriz/friendly-snippets" }, dependencies = { "rafamadriz/friendly-snippets" },
}, },
{ {
"ray-x/go.nvim", "ray-x/go.nvim",
dependencies = { -- optional packages dependencies = { -- optional packages
"ray-x/guihua.lua", "ray-x/guihua.lua",
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
"nvim-treesitter/nvim-treesitter", "nvim-treesitter/nvim-treesitter",
}, },
-- cond = not use_google(), -- cond = not use_google(),
config = function() config = function()
local capabilities = flags.blink local capabilities = flags.blink
and require("blink.cmp").get_lsp_capabilities(vim.lsp.protocol.make_client_capabilities()) and require("blink.cmp").get_lsp_capabilities(vim.lsp.protocol.make_client_capabilities())
or require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities()) or require("cmp_nvim_lsp").default_capabilities(vim.lsp.protocol.make_client_capabilities())
capabilities.offsetEncoding = { "utf-16" } capabilities.offsetEncoding = { "utf-16" }
require("go").setup({ require("go").setup({
lsp_cfg = { capabilities = capabilities }, lsp_cfg = { capabilities = capabilities },
lsp_keymaps = false, lsp_keymaps = false,
lsp_inlay_hints = { lsp_inlay_hints = {
enable = not use_google(), -- doesn't work with ciderlsp enable = not use_google(), -- doesn't work with ciderlsp
}, },
}) })
-- Run gofmt + goimports on save -- Run gofmt + goimports on save
local format_sync_grp = vim.api.nvim_create_augroup("goimports", {}) local format_sync_grp = vim.api.nvim_create_augroup("goimports", {})
vim.api.nvim_create_autocmd("BufWritePre", { vim.api.nvim_create_autocmd("BufWritePre", {
pattern = "*.go", pattern = "*.go",
callback = function() callback = function()
require("go.format").goimports() require("go.format").goimports()
end, end,
group = format_sync_grp, group = format_sync_grp,
}) })
end, end,
ft = { "go", "gomod" }, ft = { "go", "gomod" },
build = ':lua require("go.install").update_all_sync()', -- if you need to install/update all binaries build = ':lua require("go.install").update_all_sync()', -- if you need to install/update all binaries
}, },
{ {
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
dependencies = { dependencies = {
"hrsh7th/nvim-cmp", "hrsh7th/nvim-cmp",
"saghen/blink.cmp", "saghen/blink.cmp",
"saghen/blink.compat", "saghen/blink.compat",
"nvim-lua/lsp-status.nvim", "nvim-lua/lsp-status.nvim",
"VonHeikemen/lsp-zero.nvim", "VonHeikemen/lsp-zero.nvim",
}, },
keys = { keys = {
{ "<leader>F", ":lua vim.lsp.buf.format()<CR>" }, { "<leader>F", ":lua vim.lsp.buf.format()<CR>" },
{ "<leader>rn", ":lua vim.lsp.buf.rename()<CR>" }, { "<leader>rn", ":lua vim.lsp.buf.rename()<CR>" },
{ "L", ":lua vim.lsp.buf.hover()<CR>" }, { "L", ":lua vim.lsp.buf.hover()<CR>" },
{ "gr", ":Telescope lsp_references<CR>" }, { "gr", ":Telescope lsp_references<CR>" },
{ "gd", ":lua vim.lsp.buf.definition()<CR>" }, { "gd", ":lua vim.lsp.buf.definition()<CR>" },
-- { "gd", "<cmd>Telescope lsp_definitions<CR>" }, -- { "gd", "<cmd>Telescope lsp_definitions<CR>" },
{ "gD", ":tab split | lua vim.lsp.buf.definition()<CR>" }, { "gD", ":tab split | lua vim.lsp.buf.definition()<CR>" },
{ "gi", ":lua vim.lsp.buf.implementation()<CR>" }, { "gi", ":lua vim.lsp.buf.implementation()<CR>" },
{ "gI", ":lua vim.lsp.buf.implementation()<CR>" }, { "gI", ":lua vim.lsp.buf.implementation()<CR>" },
{ "gR", ":lua vim.lsp.buf.references()<CR>" }, { "gR", ":lua vim.lsp.buf.references()<CR>" },
{ "gt", ":lua vim.lsp.buf.type_definition()<CR>" }, { "gt", ":lua vim.lsp.buf.type_definition()<CR>" },
{ "<C-g>", ":lua vim.lsp.buf.signature_help()<CR>" }, { "<C-g>", ":lua vim.lsp.buf.signature_help()<CR>" },
{ "<C-g>", ":lua vim.lsp.buf.signature_help()<CR>", mode = "i" }, { "<C-g>", ":lua vim.lsp.buf.signature_help()<CR>", mode = "i" },
}, },
config = function() config = function()
local nvim_lspconfig = require("lspconfig") local nvim_lspconfig = require("lspconfig")
local lsp_configs = require("lspconfig.configs") local lsp_configs = require("lspconfig.configs")
lsp_configs.ciderlsp = { lsp_configs.ciderlsp = {
default_config = { default_config = {
cmd = { cmd = {
"/google/bin/releases/cider/ciderlsp/ciderlsp", "/google/bin/releases/cider/ciderlsp/ciderlsp",
"--tooltag=nvim-lsp", "--tooltag=nvim-lsp",
"--noforward_sync_responses", "--noforward_sync_responses",
}, },
filetypes = { filetypes = {
"c", "c",
"cpp", "cpp",
"java", "java",
"kotlin", "kotlin",
"objc", "objc",
"proto", "proto",
"textproto", "textproto",
"go", "go",
"python", "python",
"bzl", "bzl",
"typescript", "typescript",
}, },
offset_encoding = "utf-8", offset_encoding = "utf-8",
root_dir = nvim_lspconfig.util.root_pattern(".citc"), root_dir = nvim_lspconfig.util.root_pattern(".citc"),
settings = {}, settings = {},
}, },
} }
nvim_lspconfig.ciderlsp.setup({}) nvim_lspconfig.ciderlsp.setup({})
-- Godot vim.cmd([[autocmd FileType gdscript setlocal commentstring=#\ %s]])
lspconfig.gdscript.setup({ vim.cmd([[autocmd FileType gdscript setlocal autoindent noexpandtab tabstop=4 shiftwidth=4]])
-- flags = { end,
-- debounce_text_changes = 2000, -- Wait 5 seconds before sending didChange },
-- },
})
vim.cmd([[autocmd FileType gdscript setlocal commentstring=#\ %s]])
vim.cmd([[autocmd FileType gdscript setlocal autoindent noexpandtab tabstop=4 shiftwidth=4]])
end,
},
} }