Files
Nvim/init.lua
2026-04-01 01:46:48 -05:00

62 lines
3.3 KiB
Lua

-- River Rooks nvim config
-- /init.lua
-- This file is the first thing nvim renderes on boot.
-- from here we tell it to load the options and keybinds files, as well as bootstrap Lazy, our plugin manager
-- execute the following files in the /lua directory
require('options')
require('keybinds')
require("config.lazy")
-- now that we have loaded our basic settings and started lazy, we need to configure lazy to our liking
require("lazy").setup({
spec = {
-- execute all files is /lua/plugins -- this is where I put plugins with more complex setups
{ import = "plugins" },
-- import the following list of plugins -- this is where i put plugins with minial settings
{
'RaafatTurki/hex.nvim',
'tpope/vim-commentary', -- commenting lines with shortcut
'vigoux/ltex-ls.nvim', -- grammer checking
-- 'vimpostor/vim-tpipeline', -- integrate with tmux status-line
'kshenoy/vim-signature', -- tag lines
'mg979/vim-visual-multi', -- work on multiple lines at once
'obsidian-nvim/obsidian.nvim', -- Obsidian lsp plugin
'0xm4n/resize.nvim', -- adds commands to resize panes
'nvim-tree/nvim-web-devicons', -- nerdfont!
'TamaMcGlinn/vim-termhere', --simple terminal QOL
'smjonas/inc-rename.nvim', --lsp plugin for renaming variable
'basola21/PDFview', -- rendering pdfs in nvim
{ 'nvim-telescope/telescope.nvim', tag = 'v0.2.0', dependencies = { 'nvim-lua/plenary.nvim', 'BurntSushi/ripgrep', 'sharkdp/fd' } }, -- fuzyfinding over lists
{ 'norcalli/nvim-colorizer.lua', config = function() require('colorizer').setup{"*"} end,}, -- preview colors
{ 'NMAC427/guess-indent.nvim', config = function() require('guess-indent').setup {} end,}, -- Detect tabstop and shiftwidth automatically
{ 'edluffy/hologram.nvim', auto_display = true,}, --image viewer
{ "denialofsandwich/sudo.nvim", dependencies = { "MunifTanjim/nui.nvim", },config = true, }, --write restricted files without restart
{ 'akinsho/toggleterm.nvim', version = "*", config = true}, -- terminal toggling and commands
{ 'nvim-java/nvim-java', config = function() require('java').setup() vim.lsp.enable('jdtls') end, }, --jave QOL
-- disable matugen if not using noctalia shell
{ 'RRethy/base16-nvim', config = function() require('matugen').setup() end,}, --colorshceme for noctalia integration
{ "lervag/vimtex", lazy = false, init = function() vim.g.vimtex_view_method = "zathura" end }, -- for latex editing
{ 'windwp/nvim-autopairs', event = "InsertEnter", config = true },
{ "folke/ts-comments.nvim", event = "VeryLazy", }, -- qol for commenting
{ "marcinjahn/gemini-cli.nvim", cmd = "Gemini", dependencies = { "folke/snacks.nvim", }, config = true, },
},
},
-- Configure any other settings here. See the documentation for more details.
-- colorscheme that will be used when installing plugins before loaded the matugen plugin for desktop colorscheme.
install = { colorscheme = { "miniautumn" } },
-- automatically check for plugin updates
checker = { enabled = true },
})
-- sync nvim colorscheme with noctalia
local theme_ok, matugen = pcall(require, "matugen")
if theme_ok then
matugen.setup()
end
-- load lsp and bufferline plugins
require("config.lsp")
-- render bufferline
require("bufferline").setup{}