You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

129 lines
3.1 KiB

-- loadplugins
-- bootstrap packer
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()
-- load plugins with packer
return require("packer").startup(function(use)
-- package manager (first entry)
use { 'wbthomason/packer.nvim' }
-- improved java syntax highlighting
use { 'uiiaoo/java-syntax.vim',
ft = { 'java' } }
-- custom statusline
use { 'itchyny/lightline.vim',
require = { "tiyn/vim-tccs" } }
-- show signature while typing
use { 'ray-x/lsp_signature.nvim' }
-- latex asynchronous pdf rendering
use { 'donRaphaco/neotex',
ft = { 'tex' } }
-- fileexplorer on the side
use {
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
requires = {
"nvim-lua/plenary.nvim",
"nvim-tree/nvim-web-devicons",
"MunifTanjim/nui.nvim",
}
}
-- nim language support
use { 'zah/nim.vim',
ft = { 'nim' } }
-- automatic closing of brackets
use { 'windwp/nvim-autopairs' }
-- autocompletion and its sources
use { 'hrsh7th/nvim-cmp',
requires = { 'hrsh7th/cmp-buffer',
'hrsh7th/cmp-path',
'hrsh7th/cmp-nvim-lsp',
'lukas-reineke/cmp-under-comparator',
'antoinemadec/fixcursorhold.nvim',
'l3mon4d3/luasnip',
'saadparwaiz1/cmp_luasnip',
'neovim/nvim-lspconfig',
'onsails/lspkind-nvim',
'williamboman/mason.nvim',
'williamboman/mason-lspconfig.nvim',
'jose-elias-alvarez/null-ls.nvim',
'LostNeophyte/null-ls-embedded',
'nvim-lua/plenary.nvim',
'jay-babu/mason-null-ls.nvim' } }
-- showing color of hex values, etc
use { 'norcalli/nvim-colorizer.lua' }
-- show tags
use {
"SmiteshP/nvim-navbuddy",
requires = {
"neovim/nvim-lspconfig",
"SmiteshP/nvim-navic",
"MunifTanjim/nui.nvim",
}
}
-- better language highlighting by improved parsing
use { 'nvim-treesitter/nvim-treesitter' }
-- automatically close html-tags
use { 'windwp/nvim-ts-autotag',
requires = { 'nvim-treesitter/nvim-treesitter' } }
-- colorful brackets
use { 'luochen1990/rainbow' }
-- todo symbols and highlighting
use { 'folke/todo-comments.nvim',
requires = { 'nvim-lua/plenary.nvim' } }
-- git wrapper
use { 'tpope/vim-fugitive' }
-- indicate git diff status of line
use { 'airblade/vim-gitgutter' }
-- golang language support
use { 'fatih/vim-go',
ft = { 'go' } }
-- markdown language support
use { 'preservim/vim-markdown',
ft = { 'md' },
requires = { 'godlygeek/tabular' } }
-- bulk renamer
use { 'qpkorr/vim-renamer' }
-- additional quote/parantheses funtions
use { 'tpope/vim-surround' }
-- colorscheme
use { 'tiyn/vim-tccs' }
-- package manager sync (last entry)
if packer_bootstrap then
require('packer').sync()
end
end)