mirror of
https://github.com/tiyn/dotfiles.git
synced 2025-03-25 04:27:46 +01:00
nvim: setup automatic loading with mason and other plugins
This commit is contained in:
parent
f2f39c84e8
commit
802d769a9c
@ -65,15 +65,11 @@ vim.api.nvim_set_keymap('n', '<leader>gu', ':diffget //2<CR>', { noremap = true
|
||||
vim.api.nvim_set_keymap('n', '<leader>gs', ':G<CR>', { noremap = true })
|
||||
|
||||
-- hrsh7th/nvim-cmp
|
||||
local on_attach = function(client, bufnr)
|
||||
local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end
|
||||
local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end
|
||||
local opts = { noremap=true, silent=true }
|
||||
buf_set_keymap('n', 'gD', '<Cmd>lua vim.lsp.buf.declaration()<CR>', opts)
|
||||
buf_set_keymap('n', 'gd', '<Cmd>lua vim.lsp.buf.definition()<CR>', opts)
|
||||
buf_set_keymap('n', 'gy', '<cmd>lua vim.lsp.buf.type_definition()<CR>', opts)
|
||||
buf_set_keymap('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>', opts)
|
||||
buf_set_keymap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts)
|
||||
buf_set_keymap('n', 'K', '<Cmd>lua vim.lsp.buf.hover()<CR>', opts)
|
||||
buf_set_keymap('n', '<F5>', '<cmd>lua vim.lsp.buf.rename()<CR>', opts)
|
||||
end
|
||||
vim.api.nvim_set_keymap('n', 'gD', ':lua vim.lsp.buf.declaration()<CR>', { noremap = true })
|
||||
vim.api.nvim_set_keymap('n', 'gd', ':lua vim.lsp.buf.definition()<CR>', { noremap = true })
|
||||
vim.api.nvim_set_keymap('n', 'gy', ':lua vim.lsp.buf.type_definition()<CR>', { noremap = true })
|
||||
vim.api.nvim_set_keymap('n', 'gi', ':lua vim.lsp.buf.implementation()<CR>', { noremap = true })
|
||||
vim.api.nvim_set_keymap('n', 'gr', ':lua vim.lsp.buf.references()<CR>', { noremap = true })
|
||||
vim.api.nvim_set_keymap('n', 'K', ':lua vim.lsp.buf.hover()<CR>', { noremap = true })
|
||||
vim.api.nvim_set_keymap('n', '<F5>', ':lua vim.lsp.buf.rename()<CR>', { noremap = true })
|
||||
vim.api.nvim_set_keymap('n', '<F8>', ':lua vim.lsp.buf.format()<CR>', { noremap = true })
|
||||
|
@ -16,14 +16,8 @@ local packer_bootstrap = ensure_packer()
|
||||
|
||||
-- load plugins with packer
|
||||
return require("packer").startup(function(use)
|
||||
-- package manager
|
||||
use 'wbthomason/packer.nvim'
|
||||
if packer_bootstrap then
|
||||
require('packer').sync()
|
||||
end
|
||||
|
||||
-- automatic closing of brackets
|
||||
use 'raimondi/delimitmate'
|
||||
-- package manager (first entry)
|
||||
use {'wbthomason/packer.nvim'}
|
||||
|
||||
-- improved java syntax highlighting
|
||||
use {'uiiaoo/java-syntax.vim',
|
||||
@ -43,7 +37,11 @@ return require("packer").startup(function(use)
|
||||
requires = 'ryanoasis/vim-devicons'}
|
||||
|
||||
-- nim language support
|
||||
use {'zah/nim.vim', ft = {'nim'}}
|
||||
use {'zah/nim.vim',
|
||||
ft = {'nim'}}
|
||||
|
||||
-- automatic closing of brackets
|
||||
use {'windwp/nvim-autopairs'}
|
||||
|
||||
-- autocompletion and its sources
|
||||
use {'hrsh7th/nvim-cmp',
|
||||
@ -53,23 +51,35 @@ return require("packer").startup(function(use)
|
||||
'l3mon4d3/luasnip',
|
||||
'saadparwaiz1/cmp_luasnip',
|
||||
'neovim/nvim-lspconfig',
|
||||
'onsails/lspkind-nvim'}}
|
||||
'onsails/lspkind-nvim',
|
||||
'williamboman/mason.nvim',
|
||||
'williamboman/mason-lspconfig.nvim',
|
||||
'jose-elias-alvarez/null-ls.nvim',
|
||||
'nvim-lua/plenary.nvim',
|
||||
'jayp0521/mason-null-ls.nvim'}}
|
||||
|
||||
-- showing color of hex values, etc
|
||||
use 'norcalli/nvim-colorizer.lua'
|
||||
use {'norcalli/nvim-colorizer.lua'}
|
||||
|
||||
-- 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'
|
||||
use {'luochen1990/rainbow'}
|
||||
|
||||
-- show tags
|
||||
use {'majutsushi/tagbar',
|
||||
cmd = 'TagbarToggle'}
|
||||
|
||||
-- git wrapper
|
||||
use 'tpope/vim-fugitive'
|
||||
use {'tpope/vim-fugitive'}
|
||||
|
||||
-- indicate git diff status of line
|
||||
use 'airblade/vim-gitgutter'
|
||||
use {'airblade/vim-gitgutter'}
|
||||
|
||||
-- golang language support
|
||||
use {'fatih/vim-go',
|
||||
@ -81,12 +91,17 @@ return require("packer").startup(function(use)
|
||||
requires = {'godlygeek/tabular'}}
|
||||
|
||||
-- bulk renamer
|
||||
use 'qpkorr/vim-renamer'
|
||||
use {'qpkorr/vim-renamer'}
|
||||
|
||||
-- additional quote/parantheses funtions
|
||||
use 'tpope/vim-surround'
|
||||
use {'tpope/vim-surround'}
|
||||
|
||||
-- colorscheme
|
||||
use 'tiyn/vim-tccs'
|
||||
use {'tiyn/vim-tccs'}
|
||||
|
||||
-- package manager sync (last entry)
|
||||
if packer_bootstrap then
|
||||
require('packer').sync()
|
||||
end
|
||||
|
||||
end)
|
||||
|
1
.config/nvim/plugin/nvim-autopairs.lua
Normal file
1
.config/nvim/plugin/nvim-autopairs.lua
Normal file
@ -0,0 +1 @@
|
||||
require("nvim-autopairs").setup {}
|
@ -1,4 +1,26 @@
|
||||
-- hrsh7th/nvim-cmp
|
||||
|
||||
-- mason package manager
|
||||
require("mason").setup()
|
||||
require("mason-lspconfig").setup({
|
||||
-- automatically install language servers setup below for lspconfig
|
||||
automatic_setup = true,
|
||||
})
|
||||
|
||||
-- jose-elias-alvarez/null-ls.nvim
|
||||
local null_ls = require("null-ls")
|
||||
|
||||
null_ls.setup({
|
||||
sources = {
|
||||
null_ls.builtins.formatting.autopep8,
|
||||
null_ls.builtins.formatting.nimpretty,
|
||||
},
|
||||
})
|
||||
|
||||
require("mason-null-ls").setup({
|
||||
automatic_installation = true
|
||||
})
|
||||
|
||||
-- Add additional capabilities supported by nvim-cmp
|
||||
capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||
|
||||
@ -94,7 +116,7 @@ local nvim_lsp = require('lspconfig')
|
||||
|
||||
-- Use a loop to conveniently call 'setup' on multiple servers and
|
||||
-- map buffer local keybindings when the language server attaches
|
||||
local servers = { "pyright", "bashls", "tsserver", "texlab", "ccls", "gopls", "hls", "nimls", "marksman" }
|
||||
local servers = { "pyright", "bashls", "texlab", "ccls", "nimls", "marksman" }
|
||||
for _, lsp in ipairs(servers) do
|
||||
nvim_lsp[lsp].setup {
|
||||
on_attach=on_attach,
|
||||
|
19
.config/nvim/plugin/nvim-treesitter.lua
Normal file
19
.config/nvim/plugin/nvim-treesitter.lua
Normal file
@ -0,0 +1,19 @@
|
||||
-- nvim-treesitter/nvim-treesitter
|
||||
|
||||
local ts_config = require "nvim-treesitter.configs"
|
||||
|
||||
ts_config.setup {
|
||||
ensure_installed = {
|
||||
"bash",
|
||||
"c",
|
||||
"cpp",
|
||||
"css",
|
||||
"html",
|
||||
"java",
|
||||
"markdown",
|
||||
"latex",
|
||||
"python",
|
||||
},
|
||||
|
||||
autotag = { enable = true },
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user