183 lines
5.2 KiB
Lua
183 lines
5.2 KiB
Lua
# vim:fileencoding=utf-8:foldmethod=marker
|
|
vim.cmd [[packadd packer.nvim]]
|
|
require('packer').startup(function(use)
|
|
|
|
-- {{{ Packer manages itself
|
|
use 'wbthomason/packer.nvim' -- Packer manages itself
|
|
-- }}}
|
|
-- {{{ VIM AutoSave
|
|
use({
|
|
'okuuva/auto-save.nvim',
|
|
tag = 'v1*',
|
|
config = function()
|
|
require('auto-save').setup({
|
|
-- your config goes here
|
|
-- or just leave it empty :)
|
|
})
|
|
end,
|
|
})
|
|
-- }}}
|
|
-- {{{ Nvim-Tree
|
|
use {
|
|
'nvim-tree/nvim-tree.lua',
|
|
config = function()
|
|
require('plugins.nvim-tree').setup()
|
|
end,
|
|
}
|
|
-- }}}
|
|
-- {{{ Themes
|
|
use 'gruvbox-community/gruvbox' -- Gruvbox theme
|
|
use 'folke/tokyonight.nvim' -- Tokyo Night theme
|
|
-- }}}
|
|
-- {{{ Treesitter
|
|
use {
|
|
'nvim-treesitter/nvim-treesitter',
|
|
run = ':TSUpdate' -- Keep parsers up to date
|
|
}
|
|
require('plugins.treesitter')
|
|
-- }}}
|
|
-- {{{ Rainbow Delimiters
|
|
use 'HiPhish/rainbow-delimiters.nvim'
|
|
require('plugins.rainbow_delimiters')
|
|
-- }}}
|
|
-- {{{ Git Integration
|
|
use 'lewis6991/gitsigns.nvim' -- Git decorations in the gutter
|
|
use 'tpope/vim-fugitive' -- Git commands in Neovim
|
|
-- }}}
|
|
-- {{{ Status Line
|
|
use {
|
|
'nvim-lualine/lualine.nvim',
|
|
requires = { 'kyazdani42/nvim-web-devicons', opt = true } -- Optional icons
|
|
}
|
|
require('plugins.lualine')
|
|
-- Override background transparency with custom highlights
|
|
vim.cmd [[
|
|
highlight lualine_a_normal guibg=NONE
|
|
highlight lualine_b_normal guibg=NONE
|
|
highlight lualine_c_normal guibg=NONE
|
|
]]
|
|
-- }}}
|
|
-- {{{ HardTime
|
|
use {
|
|
'm4xshen/hardtime.nvim',
|
|
requires = { 'MunifTanjim/nui.nvim' }
|
|
}
|
|
-- }}}
|
|
-- {{{ FZF
|
|
use {
|
|
'junegunn/fzf',
|
|
run = function() vim.fn['fzf#install']() end
|
|
}
|
|
use 'junegunn/fzf.vim'
|
|
-- }}}
|
|
-- {{{ Productivity
|
|
use 'numToStr/Comment.nvim'
|
|
use 'windwp/nvim-autopairs'
|
|
use 'tpope/vim-surround'
|
|
-- }}}
|
|
-- {{{ LaTeX
|
|
use 'lervag/vimtex'
|
|
require('plugins.vimtex')
|
|
-- }}}
|
|
-- -- {{{ Outline
|
|
-- use {
|
|
-- 'hedyhli/outline.nvim',
|
|
-- config = function()
|
|
-- require('plugins.outline').setup()
|
|
-- end
|
|
-- }
|
|
-- }}}
|
|
-- {{{ Org-Mode
|
|
use {'nvim-orgmode/orgmode', config = function()
|
|
require('orgmode').setup{}
|
|
end
|
|
}
|
|
--}}}
|
|
-- {{{ Telescope
|
|
use {
|
|
'nvim-telescope/telescope.nvim',
|
|
requires = { {'nvim-lua/plenary.nvim'} },
|
|
config = function()
|
|
-- Leader key mappings for Telescope
|
|
vim.api.nvim_set_keymap('n', '<leader>ff', ':Telescope find_files<CR>'
|
|
, { noremap = true, silent = true })
|
|
vim.api.nvim_set_keymap('n', '<leader>fg', ':Telescope live_grep<CR>',
|
|
{ noremap = true, silent = true })
|
|
vim.api.nvim_set_keymap('n', '<leader>fb', ':Telescope buffers<CR>', {
|
|
noremap = true, silent = true })
|
|
vim.api.nvim_set_keymap('n', '<leader>fh', ':Telescope help_tags<CR>',
|
|
{ noremap = true, silent = true })
|
|
end
|
|
}
|
|
-- }}}
|
|
-- Yazi.nvim {{{
|
|
use({
|
|
"mikavilpas/yazi.nvim",
|
|
config = function()
|
|
|
|
require("yazi").setup({
|
|
open_for_directories = false,
|
|
keymaps = {
|
|
show_help = "<F1>",
|
|
},
|
|
})
|
|
end,
|
|
})
|
|
--- }}}
|
|
-- Hop.nvim {{{
|
|
use {
|
|
'phaazon/hop.nvim',
|
|
branch = 'v2', -- optional but strongly recommended
|
|
config = function()
|
|
-- you can configure Hop the way you like here; see :h hop-config
|
|
require'hop'.setup { keys = 'etovxqpdygfblzhckisuran' }
|
|
end
|
|
}
|
|
-- }}}
|
|
-- nvim.cmp {{{
|
|
use {
|
|
'hrsh7th/nvim-cmp',
|
|
requires = {
|
|
'hrsh7th/cmp-buffer', -- Buffer completions
|
|
'hrsh7th/cmp-path', -- Path completions
|
|
'hrsh7th/cmp-nvim-lsp', -- LSP completions
|
|
'hrsh7th/cmp-nvim-lua', -- Neovim API completions
|
|
'saadparwaiz1/cmp_luasnip', -- Snippet completions
|
|
'L3MON4D3/LuaSnip', -- Snippet engine
|
|
'rafamadriz/friendly-snippets', -- Predefined snippets
|
|
'evesdropper/luasnip-latex-snippets.nvim'
|
|
}
|
|
}
|
|
-- }}}
|
|
-- Markdown {{{
|
|
use 'SidOfc/mkdx'
|
|
use({
|
|
'MeanderingProgrammer/render-markdown.nvim',
|
|
after = { 'nvim-treesitter' },
|
|
-- requires = { 'echasnovski/mini.nvim', opt = true }, -- if you use the mini.nvim suite
|
|
requires = { 'echasnovski/mini.icons', opt = true }, -- if you use standalone mini plugins
|
|
-- requires = { 'nvim-tree/nvim-web-devicons', opt = true }, -- if you prefer nvim-web-devicons
|
|
config = function()
|
|
require('render-markdown').setup({})
|
|
end,
|
|
})
|
|
-- }}}
|
|
-- Code Formatting {{{
|
|
use({
|
|
"nvimtools/none-ls.nvim",
|
|
config = function()
|
|
requires = { "nvim-lua/plenary.nvim" },
|
|
require("plugins.prettier")
|
|
end,
|
|
})
|
|
-- }}}
|
|
-- Zotero Integration (deactivated){{{
|
|
-- use {
|
|
-- 'jalvesaq/zotcite',
|
|
-- requires = {
|
|
-- 'vim-pandoc/vim-pandoc',
|
|
-- 'vim-pandoc/vim-pandoc-syntax'
|
|
-- }
|
|
-- }}}
|
|
end)
|