aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lua/plugin
diff options
context:
space:
mode:
authorXander Swan <email>2025-12-03 10:00:41 -0500
committerXander Swan <email>2025-12-03 10:00:41 -0500
commitae7523c0c3cf8a04d35a7a448554e7b8d3a074f8 (patch)
treee8fc0c29ed648b130501774fe045521b4786a97d /.config/nvim/lua/plugin
parentab57a70296890a7cbc4bb8b47e309e4857c6cd29 (diff)
Goodest nvim conf
Diffstat (limited to '.config/nvim/lua/plugin')
-rw-r--r--.config/nvim/lua/plugin/autopairs.lua13
-rw-r--r--.config/nvim/lua/plugin/lsp.lua48
-rw-r--r--.config/nvim/lua/plugin/lualine.lua7
-rw-r--r--.config/nvim/lua/plugin/presence.lua20
-rw-r--r--.config/nvim/lua/plugin/telescope.lua7
-rw-r--r--.config/nvim/lua/plugin/treesitter.lua9
6 files changed, 104 insertions, 0 deletions
diff --git a/.config/nvim/lua/plugin/autopairs.lua b/.config/nvim/lua/plugin/autopairs.lua
new file mode 100644
index 0000000..c30a37d
--- /dev/null
+++ b/.config/nvim/lua/plugin/autopairs.lua
@@ -0,0 +1,13 @@
+
+require("nvim-autopairs").setup {
+ fast_wrap = {
+ map = "<M-e>",
+ chars = { "{", "[", "(", "\"", "'" },
+ pattern = [=[[%"%"%>%]%)%}%,]]=],
+ end_key = "$",
+ keys = "qwertyuiopzxcvbnmasdfghjkl",
+ check_comma = true,
+ highlight = "Search",
+ highlight_grey="Comment"
+ }
+}
diff --git a/.config/nvim/lua/plugin/lsp.lua b/.config/nvim/lua/plugin/lsp.lua
new file mode 100644
index 0000000..1cce12f
--- /dev/null
+++ b/.config/nvim/lua/plugin/lsp.lua
@@ -0,0 +1,48 @@
+local lsp = require("lsp-zero")
+local lspconfig = require("lspconfig")
+
+lsp.preset("recommended")
+
+lsp.ensure_installed {
+ "lua_ls",
+ "clangd",
+ "cmake",
+ "rust_analyzer",
+}
+
+lspconfig.gdscript.setup {}
+
+local cmp = require("cmp")
+local cmp_select = { behavior = cmp.SelectBehavior.Select }
+local cmp_mappings = lsp.defaults.cmp_mappings {
+ ["<down>"] = cmp.mapping.select_next_item(cmp_select),
+ ["<up>"] = cmp.mapping.select_prev_item(cmp_select),
+ ["<C-a>"] = cmp.mapping.confirm({ select = true }),
+ ["<CR>"] = cmp.mapping.confirm({ select = true }),
+}
+
+lsp.setup_nvim_cmp {
+ mapping = cmp_mappings
+}
+
+lsp.set_preferences {
+ suggest_lsp_servers = false,
+ sign_icons = {
+ error = "E",
+ warn = "W",
+ hint = "H",
+ info = "I",
+ }
+}
+
+lsp.on_attach(function(_, buffer)
+ local opts = { buffer=buffer, remap=false }
+
+ vim.keymap.set("n", "<leader>ld", function() vim.lsp.buf.definition() end, opts)
+end)
+
+lsp.setup()
+
+vim.diagnostic.config {
+ virtual_text = true
+}
diff --git a/.config/nvim/lua/plugin/lualine.lua b/.config/nvim/lua/plugin/lualine.lua
new file mode 100644
index 0000000..81071ec
--- /dev/null
+++ b/.config/nvim/lua/plugin/lualine.lua
@@ -0,0 +1,7 @@
+
+require("lualine").setup {
+ options = {
+ component_separators = { left = "", right = "" },
+ section_separators = { left = "", right = "" },
+ },
+}
diff --git a/.config/nvim/lua/plugin/presence.lua b/.config/nvim/lua/plugin/presence.lua
new file mode 100644
index 0000000..46369be
--- /dev/null
+++ b/.config/nvim/lua/plugin/presence.lua
@@ -0,0 +1,20 @@
+require("presence").setup{
+ auto_update = true,
+ neovim_image_text = "The One True Text Editor",
+ main_image = "neovim",
+ log_level = nil,
+ debounce_timeout = 10,
+ enable_line_number = false,
+ blacklist = {},
+ buttons = true,
+ file_assets = {},
+ show_time = true,
+
+ editing_text = "Editing %s",
+ file_explorer_text = "Browsing %s",
+ git_commit_text = "Committing changes",
+ plugin_manager_text = "Managing plugins",
+ reading_text = "Reading %s",
+ workspace_text = "Working on %s",
+ line_number_text = "Line %s out of %s",
+}
diff --git a/.config/nvim/lua/plugin/telescope.lua b/.config/nvim/lua/plugin/telescope.lua
new file mode 100644
index 0000000..d5bea56
--- /dev/null
+++ b/.config/nvim/lua/plugin/telescope.lua
@@ -0,0 +1,7 @@
+local builtin = require("telescope.builtin")
+vim.keymap.set("n", "<leader>ff", builtin.find_files, {})
+vim.keymap.set("n", "<leader>fg", builtin.git_files, {})
+vim.keymap.set("n", "<leader>fs", function()
+ builtin.grep_string({ search = vim.fn.input("grep>") })
+end)
+
diff --git a/.config/nvim/lua/plugin/treesitter.lua b/.config/nvim/lua/plugin/treesitter.lua
new file mode 100644
index 0000000..a6a4bf8
--- /dev/null
+++ b/.config/nvim/lua/plugin/treesitter.lua
@@ -0,0 +1,9 @@
+require("nvim-treesitter.configs").setup {
+ ensure_installed = { "c", "rust", "lua", "vimdoc" },
+ sync_install = false,
+ highlight = {
+ enable = true,
+ additional_vim_regex_highlighting = true,
+ },
+ indent = { enable = true },
+}