233 lines
7.8 KiB
Lua
Executable File
233 lines
7.8 KiB
Lua
Executable File
local fn = vim.fn
|
|
|
|
-- ----------------------------------------------------------------------------
|
|
-- Automatically install packer
|
|
-- ----------------------------------------------------------------------------
|
|
local install_path = fn.stdpath "data" .. "/site/pack/packer/start/packer.nvim"
|
|
|
|
if fn.empty(fn.glob(install_path)) > 0 then
|
|
PACKER_BOOTSTRAP = fn.system {
|
|
"git",
|
|
"clone",
|
|
"--depth",
|
|
"1",
|
|
"https://github.com/wbthomason/packer.nvim",
|
|
install_path,
|
|
}
|
|
|
|
print "Installing packer. Close and reopen Neovim..."
|
|
|
|
vim.cmd [[
|
|
packadd packer.nvim
|
|
]]
|
|
end
|
|
|
|
-- ----------------------------------------------------------------------------
|
|
-- Autocommand that reloads neovim whenever you save the plugins.lua file
|
|
-- ----------------------------------------------------------------------------
|
|
vim.cmd [[
|
|
augroup packer_user_config
|
|
autocmd!
|
|
autocmd BufWritePost plugins.lua source <afile> | PackerSync
|
|
augroup end
|
|
]]
|
|
|
|
-- ----------------------------------------------------------------------------
|
|
-- Use a protected call so we don't error out on first use
|
|
-- ----------------------------------------------------------------------------
|
|
local status, packer = pcall(require, "packer")
|
|
if not status then
|
|
return
|
|
end
|
|
|
|
-- ----------------------------------------------------------------------------
|
|
-- Have packer use a popup window
|
|
-- ----------------------------------------------------------------------------
|
|
packer.init {
|
|
display = {
|
|
open_fn = function()
|
|
return require("packer.util").float { border = "rounded" }
|
|
end,
|
|
},
|
|
}
|
|
|
|
-- ----------------------------------------------------------------------------
|
|
-- Install plugins
|
|
-- ----------------------------------------------------------------------------
|
|
return packer.startup(function(use)
|
|
|
|
-- ------------------------------------------------------
|
|
-- Have packer manage itself
|
|
-- ------------------------------------------------------
|
|
use "wbthomason/packer.nvim"
|
|
|
|
|
|
use "lewis6991/impatient.nvim"
|
|
|
|
-- ----------------------------------------------------
|
|
-- web devicons used by e.g.: nvim-tree, lualine, ...
|
|
-- ----------------------------------------------------
|
|
use "kyazdani42/nvim-web-devicons"
|
|
|
|
-- ----------------------------------------------------
|
|
-- colorschemas
|
|
-- ----------------------------------------------------
|
|
use { "bluz71/vim-nightfly-colors", as = "nighfly" }
|
|
use { "bluz71/vim-moonfly-colors", as = "moonfly" }
|
|
use { "rebelot/kanagawa.nvim", as = "kanagawa"}
|
|
|
|
-- ----------------------------------------------------
|
|
-- lualine (status line)
|
|
-- ----------------------------------------------------
|
|
use {
|
|
"nvim-lualine/lualine.nvim",
|
|
|
|
config = function()
|
|
require( "mzpx.plug.lualine")
|
|
end
|
|
}
|
|
|
|
-- --------------------------------------------------------------
|
|
-- telescope
|
|
-- --------------------------------------------------------------
|
|
use {
|
|
"nvim-telescope/telescope.nvim",
|
|
-- branch = "0.1.x",
|
|
branch = "0.1.x",
|
|
|
|
requires = {
|
|
{ "nvim-lua/plenary.nvim"},
|
|
{ "nvim-telescope/telescope-media-files.nvim"},
|
|
{ "nvim-telescope/telescope-fzy-native.nvim"},
|
|
},
|
|
|
|
config = function()
|
|
require( "mzpx.plug.telescope")
|
|
end
|
|
}
|
|
|
|
-- ----------------------------------------------------
|
|
-- nvim-tree
|
|
-- ----------------------------------------------------
|
|
use {
|
|
"nvim-tree/nvim-tree.lua",
|
|
|
|
config = function()
|
|
require( "mzpx.plug.nvim-tree")
|
|
end
|
|
}
|
|
|
|
-- --------------------------------------------------------------
|
|
-- autocompletion
|
|
-- --------------------------------------------------------------
|
|
use {
|
|
"hrsh7th/nvim-cmp",
|
|
|
|
requires = {
|
|
"hrsh7th/cmp-nvim-lsp",
|
|
"hrsh7th/cmp-nvim-lua",
|
|
"hrsh7th/cmp-buffer",
|
|
"hrsh7th/cmp-path",
|
|
"hrsh7th/cmp-calc",
|
|
"saadparwaiz1/cmp_luasnip",
|
|
},
|
|
|
|
config = function()
|
|
require( "mzpx.plug.nvim-cmp")
|
|
end
|
|
}
|
|
|
|
-- --------------------------------------------------------------
|
|
-- autocompletion/snippets
|
|
-- --------------------------------------------------------------
|
|
use {
|
|
"L3MON4D3/LuaSnip", -- Required
|
|
"rafamadriz/friendly-snippets", -- Optional
|
|
}
|
|
|
|
-- --------------------------------------------------------------
|
|
-- bufferline - mz
|
|
-- --------------------------------------------------------------
|
|
use {
|
|
"akinsho/bufferline.nvim",
|
|
tag = "*",
|
|
requires = "nvim-tree/nvim-web-devicons",
|
|
|
|
|
|
-- vim.opt.termguicolors = true
|
|
config = function()
|
|
-- require("bufferline").setup{}
|
|
require("mzpx.plug.bufferline")
|
|
end
|
|
|
|
}
|
|
|
|
-- --------------------------------------------------------------
|
|
-- fzf - mz
|
|
-- --------------------------------------------------------------
|
|
use {
|
|
"junegunn/fzf.vim",
|
|
requires = { 'junegunn/fzf', run = ':call fzf#install()' }
|
|
}
|
|
|
|
-- --------------------------------------------------------------
|
|
-- nvim-treesitter - mz
|
|
-- --------------------------------------------------------------
|
|
use {
|
|
'nvim-treesitter/nvim-treesitter',
|
|
branch = "master",
|
|
run = ':TSUpdate', -- This automatically updates parsers on install/update
|
|
}
|
|
|
|
-- --------------------------------------------------------------
|
|
-- render-markdown - mz
|
|
-- --------------------------------------------------------------
|
|
use {
|
|
"MeanderingProgrammer/render-markdown.nvim",
|
|
after = { 'nvim-treesitter' },
|
|
-- requires = { 'nvim-mini/mini.nvim', opt = true }, -- if you use the mini.nvim suite
|
|
requires = { 'nvim-mini/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
|
|
}
|
|
|
|
-- -------------------------------------------------------------
|
|
-- which-key
|
|
-- -------------------------------------------------------------
|
|
use "folke/which-key.nvim"
|
|
|
|
-- -------------------------------------------------------------
|
|
-- toggle-fullscreen - 2026-05-31
|
|
-- -------------------------------------------------------------
|
|
-- use {
|
|
-- "propet/toggle-fullscreen.nvim",
|
|
-- config = function()
|
|
-- require('toggle-fullscreen').setup({})
|
|
-- end
|
|
-- }
|
|
--
|
|
-- -------------------------------------------------------------
|
|
-- maximizer - 2026-05-31
|
|
-- -------------------------------------------------------------
|
|
use {
|
|
"0x00-ketsu/maximizer.nvim",
|
|
config = function()
|
|
require("maximizer").setup {
|
|
-- your configuration comes here
|
|
-- or leave it empty to use the default settings
|
|
-- refer to the configuration section below
|
|
}
|
|
end
|
|
}
|
|
|
|
-- -------------------------------------------------------------------
|
|
-- Automatically set up your configuration after cloning packer.nvim.
|
|
-- Put this at the end after all plugins.
|
|
-- -------------------------------------------------------------------
|
|
if PACKER_BOOTSTRAP then
|
|
require("packer").sync()
|
|
end
|
|
end)
|