diff --git a/nvim/init.lua b/nvim/init.lua deleted file mode 100644 index dd3b61d..0000000 --- a/nvim/init.lua +++ /dev/null @@ -1,11 +0,0 @@ -local function load_config_directory(directory) - local config_path = vim.fn.stdpath("config") .. "/lua/" .. directory - local files = vim.fn.glob(config_path .. "/*.lua", false, true) - - for _, file in ipairs(files) do - local file_name = vim.fn.fnamemodify(file, ":t:r") -- Extract filename without extension - require(directory .. "." .. file_name) - end -end - -load_config_directory("config") diff --git a/nvim/lua/config/keymaps.lua b/nvim/lua/config/keymaps.lua deleted file mode 100644 index a12a224..0000000 --- a/nvim/lua/config/keymaps.lua +++ /dev/null @@ -1,23 +0,0 @@ --- Keep cursor centered while navigating document -vim.keymap.set("n", "", "zz", { silent = true }) -vim.keymap.set("n", "", "zz", { silent = true }) - --- Remap Ctrl + J/K/H/L to navigate between windows -vim.keymap.set('n', '', 'j', { noremap = true, silent = true }) -vim.keymap.set('n', '', 'k', { noremap = true, silent = true }) -vim.keymap.set('n', '', 'h', { noremap = true, silent = true }) -vim.keymap.set('n', '', 'l', { noremap = true, silent = true }) - -vim.keymap.set('n', '', ':vertical resize +10', { noremap = true, silent = true }) -vim.keymap.set('n', '', ':vertical resize -10', { noremap = true, silent = true }) -vim.keymap.set('n', '', ':horizontal resize +10', { noremap = true, silent = true }) -vim.keymap.set('n', '', ':horizontal resize -10', { noremap = true, silent = true }) - --- Remap Shift + H/L to switch between buffers -vim.keymap.set('n', '', ':bprevious', { noremap = true, silent = true }) -vim.keymap.set('n', '', ':bnext', { noremap = true, silent = true }) - -vim.keymap.set("v", "<", "", ">gv") - -vim.keymap.set("n", "", ':nohlsearchlet @/=""', { noremap = true, silent = true}) diff --git a/nvim/lua/config/lazy.lua b/nvim/lua/config/lazy.lua deleted file mode 100644 index 89c356d..0000000 --- a/nvim/lua/config/lazy.lua +++ /dev/null @@ -1,35 +0,0 @@ --- Bootstrap lazy.nvim -local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" -if not (vim.uv or vim.loop).fs_stat(lazypath) then - local lazyrepo = "https://github.com/folke/lazy.nvim.git" - local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) - if vim.v.shell_error ~= 0 then - vim.api.nvim_echo({ - { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, - { out, "WarningMsg" }, - { "\nPress any key to exit..." }, - }, true, {}) - vim.fn.getchar() - os.exit(1) - end -end -vim.opt.rtp:prepend(lazypath) - --- Make sure to setup `mapleader` and `maplocalleader` before --- loading lazy.nvim so that mappings are correct. --- This is also a good place to setup other settings (vim.opt) -vim.g.mapleader = " " -vim.g.maplocalleader = "\\" - --- Setup lazy.nvim -require("lazy").setup({ - spec = { - -- import your plugins - { import = "plugins" }, - }, - -- Configure any other settings here. See the documentation for more details. - -- colorscheme that will be used when installing plugins. - install = { colorscheme = { "onedark" } }, - -- automatically check for plugin updates - checker = { enabled = false }, -}) diff --git a/nvim/.luarc.json b/src/user/modules/utils/modules/neovim/.luarc.json similarity index 100% rename from nvim/.luarc.json rename to src/user/modules/utils/modules/neovim/.luarc.json diff --git a/src/user/modules/utils/modules/neovim/config/lazyvim/init.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/init.lua index 2514f9e..dd3b61d 100644 --- a/src/user/modules/utils/modules/neovim/config/lazyvim/init.lua +++ b/src/user/modules/utils/modules/neovim/config/lazyvim/init.lua @@ -1,2 +1,11 @@ --- bootstrap lazy.nvim, LazyVim and your plugins -require("config.lazy") +local function load_config_directory(directory) + local config_path = vim.fn.stdpath("config") .. "/lua/" .. directory + local files = vim.fn.glob(config_path .. "/*.lua", false, true) + + for _, file in ipairs(files) do + local file_name = vim.fn.fnamemodify(file, ":t:r") -- Extract filename without extension + require(directory .. "." .. file_name) + end +end + +load_config_directory("config") diff --git a/nvim/lazy-lock.json b/src/user/modules/utils/modules/neovim/config/lazyvim/lazy-lock.json similarity index 100% rename from nvim/lazy-lock.json rename to src/user/modules/utils/modules/neovim/config/lazyvim/lazy-lock.json diff --git a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/keymaps.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/keymaps.lua index b41e639..a12a224 100644 --- a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/keymaps.lua +++ b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/keymaps.lua @@ -1,8 +1,23 @@ --- Keymaps are automatically loaded on the VeryLazy event --- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua --- Add any additional keymaps here - +-- Keep cursor centered while navigating document vim.keymap.set("n", "", "zz", { silent = true }) vim.keymap.set("n", "", "zz", { silent = true }) -vim.keymap.set("n", "H", ":bprev", { silent = true }) -vim.keymap.set("n", "L", ":bnext", { silent = true }) + +-- Remap Ctrl + J/K/H/L to navigate between windows +vim.keymap.set('n', '', 'j', { noremap = true, silent = true }) +vim.keymap.set('n', '', 'k', { noremap = true, silent = true }) +vim.keymap.set('n', '', 'h', { noremap = true, silent = true }) +vim.keymap.set('n', '', 'l', { noremap = true, silent = true }) + +vim.keymap.set('n', '', ':vertical resize +10', { noremap = true, silent = true }) +vim.keymap.set('n', '', ':vertical resize -10', { noremap = true, silent = true }) +vim.keymap.set('n', '', ':horizontal resize +10', { noremap = true, silent = true }) +vim.keymap.set('n', '', ':horizontal resize -10', { noremap = true, silent = true }) + +-- Remap Shift + H/L to switch between buffers +vim.keymap.set('n', '', ':bprevious', { noremap = true, silent = true }) +vim.keymap.set('n', '', ':bnext', { noremap = true, silent = true }) + +vim.keymap.set("v", "<", "", ">gv") + +vim.keymap.set("n", "", ':nohlsearchlet @/=""', { noremap = true, silent = true}) diff --git a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/lazy.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/lazy.lua index 6bf2050..89c356d 100644 --- a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/lazy.lua +++ b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/lazy.lua @@ -1,50 +1,35 @@ +-- Bootstrap lazy.nvim local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" -if not vim.loop.fs_stat(lazypath) then - -- bootstrap lazy.nvim - -- stylua: ignore - vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath }) +if not (vim.uv or vim.loop).fs_stat(lazypath) then + local lazyrepo = "https://github.com/folke/lazy.nvim.git" + local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) + if vim.v.shell_error ~= 0 then + vim.api.nvim_echo({ + { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, + { out, "WarningMsg" }, + { "\nPress any key to exit..." }, + }, true, {}) + vim.fn.getchar() + os.exit(1) + end end -vim.opt.rtp:prepend(vim.env.LAZY or lazypath) +vim.opt.rtp:prepend(lazypath) +-- Make sure to setup `mapleader` and `maplocalleader` before +-- loading lazy.nvim so that mappings are correct. +-- This is also a good place to setup other settings (vim.opt) +vim.g.mapleader = " " +vim.g.maplocalleader = "\\" + +-- Setup lazy.nvim require("lazy").setup({ - --config = function () - -- vim.cmd([[ - -- hi LazyNormal guibg=#060810 ctermbg=#060810 - -- hi LazyProp guibg=NONE ctermbg=NONE - -- ]]) - --end, - spec = { - -- add LazyVim and import its plugins - { "LazyVim/LazyVim", import = "lazyvim.plugins" }, - -- import any extras modules here - { import = "lazyvim.plugins.extras.dap.core" }, - -- import/override with your plugins - { import = "plugins" }, - }, - defaults = { - -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup. - -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default. - lazy = false, - -- It's recommended to leave version=false for now, since a lot the plugin that support versioning, - -- have outdated releases, which may break your Neovim install. - version = false, -- always use the latest git commit - -- version = "*", -- try installing the latest stable version for plugins that support semver - }, - install = { colorscheme = { "github-theme" } }, - checker = { enabled = false }, -- automatically check for plugin updates - performance = { - rtp = { - -- disable some rtp plugins - disabled_plugins = { - "gzip", - -- "matchit", - -- "matchparen", - -- "netrwPlugin", - "tarPlugin", - "tohtml", - "tutor", - "zipPlugin", - }, - }, - }, + spec = { + -- import your plugins + { import = "plugins" }, + }, + -- Configure any other settings here. See the documentation for more details. + -- colorscheme that will be used when installing plugins. + install = { colorscheme = { "onedark" } }, + -- automatically check for plugin updates + checker = { enabled = false }, }) diff --git a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/options.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/options.lua index b113093..06a94d8 100644 --- a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/options.lua +++ b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/options.lua @@ -1,30 +1,33 @@ --- Options are automatically loaded before lazy.nvim startup --- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua --- Add any additional options here +vim.o.clipboard = "unnamedplus" +vim.g.autoformat = false + +vim.opt.number = true +vim.opt.relativenumber = true +vim.opt.cursorline = true +vim.opt.termguicolors = true vim.opt.tabstop = 2 vim.opt.shiftwidth = 2 vim.opt.softtabstop = 2 vim.opt.expandtab = true vim.opt.smartindent = true - -vim.cmd([[ - autocmd FileType c,cpp,haskell,python setlocal tabstop=4 shiftwidth=4 softtabstop=4 -]]) - -vim.cmd([[ - au BufRead,BufNewFile *.purs set filetype=purescript -]]) - vim.opt.ignorecase = true -vim.opt.smartcase = true +vim.opt.smartcase = false +vim.opt.incsearch = false vim.opt.swapfile = false vim.opt.backup = false vim.opt.undofile = true -vim.o.termguicolors = true +vim.o.termguicolors = false vim.opt.guicursor = "n-v-c:block,i:block,r:block" -vim.g.autoformat = false -vim.cmd([[highlight PmenuSel guifg=#53565d guibg=#f0c981]]) +vim.opt.fillchars = { eob = " " } + +vim.cmd([[ + autocmd FileType python,haskell,c,cpp setlocal tabstop=4 shiftwidth=4 softtabstop=4 +]]) + +vim.cmd([[ + au BufRead,BufNewFile *.purs set filetype=purescript +]]) diff --git a/nvim/lua/plugins/bufferline.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/bufferline.lua similarity index 100% rename from nvim/lua/plugins/bufferline.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/bufferline.lua diff --git a/nvim/lua/plugins/colorscheme.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/colorscheme.lua similarity index 100% rename from nvim/lua/plugins/colorscheme.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/colorscheme.lua diff --git a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/disabled.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/disabled.lua new file mode 100644 index 0000000..cd3b799 --- /dev/null +++ b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/disabled.lua @@ -0,0 +1,7 @@ +return { + { "williamboman/mason.nvim", enabled = false }, + { "williamboman/mason-lspconfig.nvim", enabled = false }, + { "jay-babu/mason-nvim-dap.nvim", enabled = false }, + { "catppuccin/nvim", enabled = false }, + { "folke/flash.nvim", enabled = false }, +} diff --git a/nvim/lua/plugins/gitsigns.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/gitsigns.lua similarity index 100% rename from nvim/lua/plugins/gitsigns.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/gitsigns.lua diff --git a/nvim/lua/plugins/indent-blankline.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/indent-blankline.lua similarity index 100% rename from nvim/lua/plugins/indent-blankline.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/indent-blankline.lua diff --git a/nvim/lua/plugins/lsp.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/lsp.lua similarity index 87% rename from nvim/lua/plugins/lsp.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/lsp.lua index d2ce6a1..970f5fb 100644 --- a/nvim/lua/plugins/lsp.lua +++ b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/lsp.lua @@ -1,3 +1,19 @@ +local servers = { + "tsserver", + "pyright", + "nil_ls", + "cssls", + "html", + "lua_ls", + "marksman", + "tailwindcss", + "bashls", + "clangd", + "jsonls", + "vuels" + --"arduino-language-server" +} + return { { "nvim-treesitter/nvim-treesitter", @@ -55,18 +71,23 @@ return { -- end, --}, - { - "williamboman/mason.nvim", - config = function() - require("mason").setup{} - end - }, + { + "VonHeikemen/lsp-zero.nvim", + branch = "v2.x", + dependencies = { + { "neovim/nvim-lspconfig" }, - { - "williamboman/mason-lspconfig.nvim", - dependencies = { "williamboman/mason.nvim" }, - config = function() - require("mason-lspconfig").setup{} + { "hrsh7th/nvim-cmp" }, + { "hrsh7th/cmp-buffer" }, + { "hrsh7th/cmp-path" }, + { "hrsh7th/cmp-nvim-lsp" }, + + { "L3MON4D3/LuaSnip" }, + }, + config = function () + local lsp = require('lsp-zero').preset({}) + lsp.setup_servers(servers) + lsp.setup() end }, @@ -129,7 +150,6 @@ return { local lsp = require('lspconfig') local navic = require('nvim-navic') local capabilities = require('cmp_nvim_lsp').default_capabilities() - local servers = require('mason-lspconfig').get_installed_servers() for _, server in ipairs(servers) do lsp[server].setup { diff --git a/nvim/lua/plugins/lualine.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/lualine.lua similarity index 100% rename from nvim/lua/plugins/lualine.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/lualine.lua diff --git a/nvim/lua/plugins/neotree.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/neotree.lua similarity index 100% rename from nvim/lua/plugins/neotree.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/neotree.lua diff --git a/nvim/lua/plugins/telescope.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/telescope.lua similarity index 100% rename from nvim/lua/plugins/telescope.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/telescope.lua diff --git a/nvim/lua/plugins/which-key.lua b/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/which-key.lua similarity index 100% rename from nvim/lua/plugins/which-key.lua rename to src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/which-key.lua diff --git a/src/user/modules/utils/modules/nvim.old/config/lazyvim/init.lua b/src/user/modules/utils/modules/nvim.old/config/lazyvim/init.lua new file mode 100644 index 0000000..2514f9e --- /dev/null +++ b/src/user/modules/utils/modules/nvim.old/config/lazyvim/init.lua @@ -0,0 +1,2 @@ +-- bootstrap lazy.nvim, LazyVim and your plugins +require("config.lazy") diff --git a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/autocmds.lua b/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/autocmds.lua similarity index 100% rename from src/user/modules/utils/modules/neovim/config/lazyvim/lua/config/autocmds.lua rename to src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/autocmds.lua diff --git a/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/keymaps.lua b/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/keymaps.lua new file mode 100644 index 0000000..b41e639 --- /dev/null +++ b/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/keymaps.lua @@ -0,0 +1,8 @@ +-- Keymaps are automatically loaded on the VeryLazy event +-- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua +-- Add any additional keymaps here + +vim.keymap.set("n", "", "zz", { silent = true }) +vim.keymap.set("n", "", "zz", { silent = true }) +vim.keymap.set("n", "H", ":bprev", { silent = true }) +vim.keymap.set("n", "L", ":bnext", { silent = true }) diff --git a/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/lazy.lua b/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/lazy.lua new file mode 100644 index 0000000..6bf2050 --- /dev/null +++ b/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/lazy.lua @@ -0,0 +1,50 @@ +local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +if not vim.loop.fs_stat(lazypath) then + -- bootstrap lazy.nvim + -- stylua: ignore + vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath }) +end +vim.opt.rtp:prepend(vim.env.LAZY or lazypath) + +require("lazy").setup({ + --config = function () + -- vim.cmd([[ + -- hi LazyNormal guibg=#060810 ctermbg=#060810 + -- hi LazyProp guibg=NONE ctermbg=NONE + -- ]]) + --end, + spec = { + -- add LazyVim and import its plugins + { "LazyVim/LazyVim", import = "lazyvim.plugins" }, + -- import any extras modules here + { import = "lazyvim.plugins.extras.dap.core" }, + -- import/override with your plugins + { import = "plugins" }, + }, + defaults = { + -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup. + -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default. + lazy = false, + -- It's recommended to leave version=false for now, since a lot the plugin that support versioning, + -- have outdated releases, which may break your Neovim install. + version = false, -- always use the latest git commit + -- version = "*", -- try installing the latest stable version for plugins that support semver + }, + install = { colorscheme = { "github-theme" } }, + checker = { enabled = false }, -- automatically check for plugin updates + performance = { + rtp = { + -- disable some rtp plugins + disabled_plugins = { + "gzip", + -- "matchit", + -- "matchparen", + -- "netrwPlugin", + "tarPlugin", + "tohtml", + "tutor", + "zipPlugin", + }, + }, + }, +}) diff --git a/nvim/lua/config/options.lua b/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/options.lua similarity index 51% rename from nvim/lua/config/options.lua rename to src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/options.lua index 36ec19f..b113093 100644 --- a/nvim/lua/config/options.lua +++ b/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/config/options.lua @@ -1,33 +1,30 @@ -vim.o.clipboard = "unnamedplus" -vim.g.autoformat = false - -vim.opt.number = true -vim.opt.relativenumber = true -vim.opt.cursorline = true -vim.opt.termguicolors = true +-- Options are automatically loaded before lazy.nvim startup +-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua +-- Add any additional options here vim.opt.tabstop = 2 vim.opt.shiftwidth = 2 vim.opt.softtabstop = 2 vim.opt.expandtab = true vim.opt.smartindent = true -vim.opt.ignorecase = true -vim.opt.smartcase = false -vim.opt.incsearch = false - -vim.opt.swapfile = false -vim.opt.backup = false -vim.opt.undofile = true - -vim.o.termguicolors = false -vim.opt.guicursor = "n-v-c:block,i:block,r:block" - ---vim.opt.fillchars = { eob = " " } vim.cmd([[ - autocmd FileType python,haskell,c,cpp setlocal tabstop=4 shiftwidth=4 softtabstop=4 + autocmd FileType c,cpp,haskell,python setlocal tabstop=4 shiftwidth=4 softtabstop=4 ]]) vim.cmd([[ au BufRead,BufNewFile *.purs set filetype=purescript ]]) + +vim.opt.ignorecase = true +vim.opt.smartcase = true + +vim.opt.swapfile = false +vim.opt.backup = false +vim.opt.undofile = true + +vim.o.termguicolors = true +vim.opt.guicursor = "n-v-c:block,i:block,r:block" +vim.g.autoformat = false + +vim.cmd([[highlight PmenuSel guifg=#53565d guibg=#f0c981]]) diff --git a/src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/core.lua b/src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/plugins/core.lua similarity index 100% rename from src/user/modules/utils/modules/neovim/config/lazyvim/lua/plugins/core.lua rename to src/user/modules/utils/modules/nvim.old/config/lazyvim/lua/plugins/core.lua diff --git a/src/user/modules/utils/modules/nvim.old/config/pkgs.nix b/src/user/modules/utils/modules/nvim.old/config/pkgs.nix new file mode 100644 index 0000000..e34740f --- /dev/null +++ b/src/user/modules/utils/modules/nvim.old/config/pkgs.nix @@ -0,0 +1,27 @@ +{ pkgs, ... }: + +let + lsp = with pkgs; [ + nil + marksman + sumneko-lua-language-server stylua + nodePackages."@tailwindcss/language-server" + clang-tools + #arduino-language-server + ]; + + lsp' = with pkgs.nodePackages; [ + typescript-language-server + vscode-langservers-extracted + bash-language-server + pyright + vls + ]; + + extraPackages = with pkgs; [ + lazygit + gcc + ]; + +in + extraPackages ++ lsp ++ lsp' diff --git a/src/user/modules/utils/modules/nvim.old/default.nix b/src/user/modules/utils/modules/nvim.old/default.nix new file mode 100644 index 0000000..b1019f4 --- /dev/null +++ b/src/user/modules/utils/modules/nvim.old/default.nix @@ -0,0 +1,23 @@ +{ pkgs, lib, config, ... }: + +with lib; +let + cfg = config.modules.user.utils.neovim; + +in +{ options.modules.user.utils.neovim = { enable = mkEnableOption "user.utils.neovim"; }; + config = mkIf cfg.enable { + programs.neovim = { + enable = true; + defaultEditor = true; + vimAlias = true; + vimdiffAlias = true; + extraPackages = import ./config/pkgs.nix { inherit pkgs; }; + }; + + home.file.".config/nvim" = { + source = ./config/lazyvim; + recursive = true; + }; + }; +}