diff options
author | Jérémy Zurcher <jeremy@asynk.ch> | 2022-03-07 14:43:57 +0100 |
---|---|---|
committer | Jérémy Zurcher <jeremy@asynk.ch> | 2022-03-07 14:43:57 +0100 |
commit | 596823bc99e656d3913ad7fe7f6c0f27a30c0110 (patch) | |
tree | 9ddf40caf018cc630d445db327d7b8d52994f921 /lua/user/plugins.lua | |
parent | cbcab8684e06379c9f5c51cfc9cac68d8684fe0c (diff) | |
download | vim-596823bc99e656d3913ad7fe7f6c0f27a30c0110.zip vim-596823bc99e656d3913ad7fe7f6c0f27a30c0110.tar.gz |
switch to neovim + lua
Diffstat (limited to 'lua/user/plugins.lua')
-rw-r--r-- | lua/user/plugins.lua | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/lua/user/plugins.lua b/lua/user/plugins.lua new file mode 100644 index 0000000..12d4e2a --- /dev/null +++ b/lua/user/plugins.lua @@ -0,0 +1,106 @@ +local fn = vim.fn + +-- Automatically install packer : ~/.local/share/nvim +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_ok, packer = pcall(require, "packer") +if not status_ok then + return +end + +-- Have packer use a popup window +packer.init { + display = { + open_fn = function() + return require("packer.util").float { border = "rounded" } + end, + }, +} + +-- Install your plugins here +return packer.startup(function(use) + -- SEE : https://github.com/wbthomason/packer.nvim#quickstart + + -- My plugins here + use 'wbthomason/packer.nvim' -- Have packer manage itself + use 'nvim-lua/popup.nvim' -- An implementation of the Popup API from vim in Neovim + use 'nvim-lua/plenary.nvim' -- Useful lua functions used in lots of plugins + use 'numToStr/Comment.nvim' -- gc[N][motion] + -- use 'windwp/nvim-autopairs' -- Autopairs, integrates with both cmp and treesitter + use 'kyazdani42/nvim-web-devicons' -- nices icons + use 'kyazdani42/nvim-tree.lua' -- tree explorer + use 'akinsho/bufferline.nvim' -- buffer status line + -- use 'vim-airline/vim-airline' -- Status/Tab line + -- use 'vim-airline/vim-airline-themes' -- Status/Tab line Themes + use 'feline-nvim/feline.nvim' + use 'embear/vim-localvimrc' -- support .lvimrc + + -- Colorschemes + -- use 'lunarvim/colorschemes' -- A bunch of colorschemes you can try out + use 'lunarvim/darkplus.nvim' + -- use 'matsen/nvim-colors-solarized' + + -- languages + use 'habamax/vim-godot' + + -- cmp plugins + use 'hrsh7th/nvim-cmp' -- The completion plugin + use 'hrsh7th/cmp-buffer' -- buffer completions + use 'hrsh7th/cmp-path' -- path completions + use 'hrsh7th/cmp-cmdline' -- cmdline completions + use 'saadparwaiz1/cmp_luasnip' -- snippet completions + use 'hrsh7th/cmp-nvim-lsp' -- lsp completion + + -- snippets + use 'L3MON4D3/LuaSnip' -- snippet engine + use 'rafamadriz/friendly-snippets' -- a bunch of snippets to use + + -- LSP + use 'neovim/nvim-lspconfig' -- enable LSP + use 'williamboman/nvim-lsp-installer' -- simple to use language server installer + use 'tamago324/nlsp-settings.nvim' -- language server settings defined in json for + use 'jose-elias-alvarez/null-ls.nvim' -- for formatters and linters + use 'dense-analysis/ale' -- asynchronous lint engine + + -- Telescope + use 'nvim-telescope/telescope.nvim' -- highly extendable fuzzy finder + + -- Treesitter + use { -- language syntax tree for highlight + 'nvim-treesitter/nvim-treesitter', + run = ':TSUpdate', + } + use 'JoosepAlviste/nvim-ts-context-commentstring' -- to help Comment + use 'p00f/nvim-ts-rainbow' + -- use 'nvim-treesitter/playground' -- TSHighlightCapturesUnderCursor, TSPlaygroundToggle, ... + + -- Git + use "lewis6991/gitsigns.nvim" + + -- 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) |