dotfiles/.config/nvim/lua/user/plugins.lua
Patrick Wadström 87c3a68540
Switch to kitty and swaync
Also prolong gpg-agent sync to ease claude development
2025-06-13 09:19:14 +02:00

122 lines
3.4 KiB
Lua

local ensure_packer = function()
local fn = vim.fn
local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
if fn.empty(fn.glob(install_path)) > 0 then
fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
vim.cmd [[packadd packer.nvim]]
return true
end
return false
end
local packer_bootstrap = ensure_packer()
return require('packer').startup(function()
-- Packer manages itself
use 'wbthomason/packer.nvim'
-- LSP Magic
use 'neovim/nvim-lspconfig'
-- Inlay type hints, i.e. type hints merged into codelines
use 'lvimuser/lsp-inlayhints.nvim'
-- CMP
use 'L3MON4D3/LuaSnip'
use {
'saadparwaiz1/cmp_luasnip',
requires = { 'L3MON4D3/LuaSnip' },
}
use 'hrsh7th/cmp-nvim-lsp'
use 'hrsh7th/cmp-buffer'
use 'hrsh7th/cmp-path'
use 'hrsh7th/cmp-cmdline'
use 'hrsh7th/cmp-nvim-lsp-signature-help'
use {
'hrsh7th/nvim-cmp',
requires = { 'saadparwaiz1/cmp_luasnip', 'hrsh7th/cmp-nvim-lsp' },
}
use {
'nvim-lualine/lualine.nvim',
requires = { 'kyazdani42/nvim-web-devicons', opt = true },
}
--use 'vim-airline/vim-airline'
--use 'vim-airline/vim-airline-themes'
use 'lewis6991/gitsigns.nvim'
use 'junegunn/fzf.vim'
use 'udalov/kotlin-vim'
use 'rust-lang/rust.vim'
use 'zivyangll/git-blame.vim'
--use 'arcticicestudio/nord-vim'
use 'ericvw/nordtheme-vim'
use 'hashivim/vim-terraform'
use 'chaoren/vim-wordmotion'
use 'cappyzawa/starlark.vim'
use 'editorconfig/editorconfig-vim'
use({
"andythigpen/nvim-coverage",
requires = "nvim-lua/plenary.nvim",
})
use {
'nvim-treesitter/nvim-treesitter',
run = ':TSUpdate'
}
--use 'muniftanjim/eslint.nvim'
use 'kyazdani42/nvim-web-devicons'
use {
'folke/trouble.nvim',
requires = 'kyazdani42/nvim-web-devicons',
config = function()
require("trouble").setup {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
}
end
}
use {
"nvim-neotest/neotest",
requires = {
'nvim-lua/plenary.nvim',
'nvim-treesitter/nvim-treesitter',
'nvim-neotest/neotest-plenary',
'antoinemadec/FixCursorHold.nvim',
'haydenmeade/neotest-jest',
}
}
use { "nvim-neotest/nvim-nio" }
use 'mfussenegger/nvim-dap'
use 'mfussenegger/nvim-jdtls' -- Java
use { "rcarriga/nvim-dap-ui", requires = {"mfussenegger/nvim-dap"} }
use { "mxsdev/nvim-dap-vscode-js", requires = {"mfussenegger/nvim-dap"} }
use {
"microsoft/vscode-js-debug",
opt = true,
run = "npm install --legacy-peer-deps && npm run compile"
}
use 'theHamsta/nvim-dap-virtual-text'
use 'wakatime/vim-wakatime'
use {
"nvimdev/lspsaga.nvim",
after = 'nvim-lspconfig',
config = function()
require('lspsaga').setup({
lightbulb = {
sign = false,
virtual_text = false
}
})
end,
}
if packer_bootstrap then
require('packer').sync()
end
end)