updates
This commit is contained in:
parent
ed72d632ca
commit
850f7b03b1
@ -54,6 +54,25 @@ autocmd("CursorMoved", {
|
||||
group = _group,
|
||||
})
|
||||
|
||||
local nvim_tree_events = require('nvim-tree.events')
|
||||
local bufferline_api = require('bufferline.api')
|
||||
|
||||
local function get_tree_size()
|
||||
return require 'nvim-tree.view'.View.width
|
||||
end
|
||||
|
||||
nvim_tree_events.subscribe('TreeOpen', function()
|
||||
bufferline_api.set_offset(get_tree_size())
|
||||
end)
|
||||
|
||||
nvim_tree_events.subscribe('Resize', function()
|
||||
bufferline_api.set_offset(get_tree_size())
|
||||
end)
|
||||
|
||||
nvim_tree_events.subscribe('TreeClose', function()
|
||||
bufferline_api.set_offset(0)
|
||||
end)
|
||||
|
||||
-- change tmux title
|
||||
autocmd("BufReadPost", {
|
||||
pattern = "*",
|
||||
|
@ -18,10 +18,6 @@ local on_attach = function(client, bufnr)
|
||||
vim.cmd [[autocmd BufWritePre * lua vim.lsp.buf.format()]]
|
||||
-- Enable completion triggered by <c-x><c-o>
|
||||
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
|
||||
if client.server_capabilities.colorProvider then
|
||||
-- Attach document colour support
|
||||
require("document-color").buf_attach(bufnr, { mode = "background" })
|
||||
end
|
||||
|
||||
-- Mappings.
|
||||
-- See `:help vim.lsp.*` for documentation on any of the below functions
|
||||
|
174
lua/plugins.lua
174
lua/plugins.lua
@ -1,9 +1,16 @@
|
||||
local vimp = require('vimp')
|
||||
return {
|
||||
|
||||
--vimp (in mappings.lua)
|
||||
-- https://github.com/tpope/vim-obsession
|
||||
'tpope/vim-obsession',
|
||||
|
||||
-- https://github.com/svermeulen/vimpeccable
|
||||
'svermeulen/vimpeccable',
|
||||
|
||||
-- https://github.com/kien/ctrlp.vim
|
||||
'ctrlpvim/ctrlp.vim',
|
||||
|
||||
-- https://github.com/nvim-treesitter/nvim-treesitter
|
||||
{
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
config = function()
|
||||
@ -13,8 +20,7 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
'ctrlpvim/ctrlp.vim',
|
||||
|
||||
-- https://github.com/fatih/vim-go
|
||||
{
|
||||
'fatih/vim-go',
|
||||
ft = { "go", "gomod" },
|
||||
@ -28,16 +34,7 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
-- obsession
|
||||
'tpope/vim-obsession',
|
||||
|
||||
--lsp (in lsp_settings.lua)
|
||||
'neovim/nvim-lspconfig',
|
||||
'williamboman/mason-lspconfig',
|
||||
'williamboman/mason.nvim',
|
||||
'mfussenegger/nvim-dap',
|
||||
|
||||
-- auto color hex/rgb
|
||||
-- https://github.com/norcalli/nvim-colorizer.lua
|
||||
{
|
||||
'norcalli/nvim-colorizer.lua',
|
||||
config = function()
|
||||
@ -45,6 +42,7 @@ return {
|
||||
end,
|
||||
},
|
||||
|
||||
-- https://github.com/numToStr/Comment.nvim
|
||||
{
|
||||
'numToStr/Comment.nvim',
|
||||
config = function()
|
||||
@ -52,18 +50,8 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
{
|
||||
'mrshmllow/document-color.nvim',
|
||||
config = function()
|
||||
require('document-color').setup({
|
||||
mode = "background",
|
||||
})
|
||||
vim.g.colorizer_auto_color = 1
|
||||
end
|
||||
},
|
||||
|
||||
|
||||
-- Markdown preview
|
||||
-- https://github.com/iamcco/markdown-preview.nvim
|
||||
{
|
||||
"iamcco/markdown-preview.nvim",
|
||||
run = "cd app && npm install",
|
||||
@ -78,6 +66,7 @@ return {
|
||||
ft = { "markdown" }
|
||||
},
|
||||
|
||||
-- https://github.com/ellisonleao/glow.nvim
|
||||
{
|
||||
"ellisonleao/glow.nvim",
|
||||
cmd = "Glow",
|
||||
@ -86,7 +75,7 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
-- auto pairs
|
||||
-- https://github.com/windwp/nvim-autopairs
|
||||
{
|
||||
'windwp/nvim-autopairs',
|
||||
config = function()
|
||||
@ -94,7 +83,7 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
-- show git diffs
|
||||
-- https://github.com/lewis6991/gitsigns.nvim
|
||||
{
|
||||
'lewis6991/gitsigns.nvim',
|
||||
config = function()
|
||||
@ -113,20 +102,7 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
|
||||
{
|
||||
"folke/todo-comments.nvim",
|
||||
requires = "nvim-lua/plenary.nvim",
|
||||
config = function()
|
||||
require("todo-comments").setup {
|
||||
-- your configuration comes here
|
||||
-- or leave it empty to use the default settings
|
||||
-- refer to the configuration section below
|
||||
}
|
||||
end
|
||||
},
|
||||
|
||||
-- fuzzy finder
|
||||
-- https://github.com/nvim-telescope/telescope.nvim
|
||||
{
|
||||
'nvim-telescope/telescope.nvim',
|
||||
branch = '0.1.x',
|
||||
@ -143,11 +119,13 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
-- file explorer
|
||||
-- https://github.com/nvim-tree/nvim-tree.lua
|
||||
{
|
||||
'kyazdani42/nvim-tree.lua',
|
||||
'nvim-tree/nvim-tree.lua',
|
||||
vimp.noremap({ 'silent' }, '<leader>n', [[:NvimTreeToggle<CR>]]),
|
||||
dependencies = { 'kyazdani42/nvim-web-devicons' },
|
||||
dependencies = {
|
||||
'nvim-tree/nvim-web-devicons'
|
||||
},
|
||||
config = function()
|
||||
require('nvim-tree').setup {
|
||||
sort_by = "case_sensitive",
|
||||
@ -167,10 +145,7 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
|
||||
|
||||
{ 'akinsho/toggleterm.nvim', version = "*", config = true },
|
||||
|
||||
-- https://github.com/kylechui/nvim-surround
|
||||
{
|
||||
"kylechui/nvim-surround",
|
||||
config = function()
|
||||
@ -180,7 +155,7 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
-- open file at last location
|
||||
-- https://github.com/ethanholz/nvim-lastplace
|
||||
{
|
||||
'ethanholz/nvim-lastplace',
|
||||
config = function()
|
||||
@ -190,10 +165,10 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
-- multiple cursors
|
||||
-- https://github.com/mg979/vim-visual-multi
|
||||
'mg979/vim-visual-multi',
|
||||
|
||||
-- wrap things inside pairs
|
||||
-- https://github.com/FooSoft/vim-argwrap
|
||||
{
|
||||
'FooSoft/vim-argwrap',
|
||||
config = function()
|
||||
@ -201,32 +176,24 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
-- pasting indents
|
||||
{
|
||||
'hrsh7th/nvim-pasta',
|
||||
config = function()
|
||||
require('pasta').setup {
|
||||
converters = {
|
||||
require('pasta.converters').indentation,
|
||||
},
|
||||
paste_mode = true,
|
||||
next_key = vim.api.nvim_replace_termcodes('<C-p>', true, true, true),
|
||||
prev_key = vim.api.nvim_replace_termcodes('<C-n>', true, true, true),
|
||||
}
|
||||
end
|
||||
},
|
||||
|
||||
{ 'akinsho/toggleterm.nvim', version = "*", config = true },
|
||||
|
||||
-- https://github.com/kylechui/nvim-surround
|
||||
{
|
||||
"kylechui/nvim-surround",
|
||||
config = function()
|
||||
require("nvim-surround").setup({
|
||||
-- Configuration here, or leave empty to use defaults
|
||||
})
|
||||
require("nvim-surround").setup()
|
||||
end
|
||||
},
|
||||
|
||||
-- https://github.com/neovim/nvim-lspconfig
|
||||
'neovim/nvim-lspconfig',
|
||||
|
||||
-- https://github.com/williamboman/mason-lspconfig.nvim
|
||||
'williamboman/mason-lspconfig',
|
||||
|
||||
-- https://github.com/williamboman/mason.nvim
|
||||
'williamboman/mason.nvim',
|
||||
|
||||
-- https://github.com/hrsh7th/nvim-cmp
|
||||
{
|
||||
"hrsh7th/nvim-cmp",
|
||||
dependencies = {
|
||||
@ -244,9 +211,8 @@ return {
|
||||
local cmp = require 'cmp'
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
-- REQUIRED - you must specify a snippet engine
|
||||
expand = function(args)
|
||||
require('luasnip').lsp_expand(args.body) -- For `luasnip` users.
|
||||
require('luasnip').lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
window = {
|
||||
@ -258,7 +224,7 @@ return {
|
||||
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
||||
['<C-Space>'] = cmp.mapping.complete(),
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
['<CR>'] = cmp.mapping.confirm({ select = false }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
||||
['<CR>'] = cmp.mapping.confirm({ select = false }),
|
||||
}),
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'nvim_lsp' },
|
||||
@ -268,16 +234,14 @@ return {
|
||||
})
|
||||
})
|
||||
|
||||
-- Set configuration for specific filetype.
|
||||
cmp.setup.filetype('gitcommit', {
|
||||
sources = cmp.config.sources({
|
||||
{ name = 'cmp_git' }, -- You can specify the `cmp_git` source if you were installed it.
|
||||
{ name = 'cmp_git' },
|
||||
}, {
|
||||
{ name = 'buffer' },
|
||||
})
|
||||
})
|
||||
|
||||
-- buffer source for `/` (if you enabled `native_menu`, this won't work anymore).
|
||||
cmp.setup.cmdline('/', {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = {
|
||||
@ -285,7 +249,6 @@ return {
|
||||
}
|
||||
})
|
||||
|
||||
-- cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore).
|
||||
cmp.setup.cmdline(':', {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = cmp.config.sources({
|
||||
@ -297,26 +260,7 @@ return {
|
||||
end,
|
||||
},
|
||||
|
||||
-- terminal toggler
|
||||
{
|
||||
"NvChad/nvterm",
|
||||
config = function()
|
||||
require("nvterm").setup()
|
||||
local toggle_modes = { 'n', 't' }
|
||||
local mappings = {
|
||||
{ toggle_modes, '<leader>th', function() require("nvterm.terminal").toggle('horizontal') end },
|
||||
{ toggle_modes, '<leader>tv', function() require("nvterm.terminal").toggle('vertical') end },
|
||||
{ toggle_modes, '<leader>tf', function() require("nvterm.terminal").toggle('float') end },
|
||||
}
|
||||
local opts = { noremap = true, silent = true }
|
||||
for _, mapping in ipairs(mappings) do
|
||||
vim.keymap.set(mapping[1], mapping[2], mapping[3], opts)
|
||||
end
|
||||
end
|
||||
},
|
||||
|
||||
--- THEME STUFF
|
||||
-- colors
|
||||
-- https://github.com/AlphaTechnolog/pywal.nvim
|
||||
{
|
||||
'AlphaTechnolog/pywal.nvim',
|
||||
priority = 1000,
|
||||
@ -327,10 +271,10 @@ return {
|
||||
end
|
||||
},
|
||||
|
||||
-- better statusbar
|
||||
-- https://github.com/nvim-lualine/lualine.nvim
|
||||
{
|
||||
'hoob3rt/lualine.nvim',
|
||||
dependencies = { { 'kyazdani42/nvim-web-devicons', lazy = true } },
|
||||
dependencies = { { 'nvim-tree/nvim-web-devicons' } },
|
||||
config = function()
|
||||
require('lualine').setup({
|
||||
options = {
|
||||
@ -340,21 +284,31 @@ return {
|
||||
end,
|
||||
},
|
||||
|
||||
-- better tabs
|
||||
-- https://github.com/romgrk/barbar.nvim
|
||||
{
|
||||
'kdheepak/tabline.nvim',
|
||||
dependencies = { { 'kyazdani42/nvim-web-devicons', lazy = true } },
|
||||
'romgrk/barbar.nvim',
|
||||
dependencies = 'nvim-tree/nvim-web-devicons',
|
||||
config = function()
|
||||
vimp.nnoremap({ 'silent' }, '<A-Right>', [[:TablineBufferNext<CR>]])
|
||||
vimp.nnoremap({ 'silent' }, '<A-Left>', [[:TablineBufferPrevious<CR>]])
|
||||
require('tabline').setup({ options = { theme = 'pywal-nvim' } })
|
||||
end,
|
||||
vimp.nnoremap({ 'silent' }, '<A-Right>', [[:BufferNext<CR>]])
|
||||
vimp.nnoremap({ 'silent' }, '<A-Left>', [[:BufferPrevious<CR>]])
|
||||
-- Set barbar's options
|
||||
require 'bufferline'.setup {
|
||||
animation = true,
|
||||
closable = true,
|
||||
clickable = true,
|
||||
-- Configure icons on the bufferline.
|
||||
icon_separator_active = ' ',
|
||||
icon_separator_inactive = ' ',
|
||||
icon_close_tab = '',
|
||||
icon_close_tab_modified = '●',
|
||||
icon_pinned = '車',
|
||||
}
|
||||
end
|
||||
},
|
||||
|
||||
-- fwatch updates colors automatically
|
||||
-- https://github.com/rktjmp/fwatch.nvim
|
||||
{
|
||||
'rktjmp/fwatch.nvim',
|
||||
dependencies = { 'pywal' },
|
||||
config = function()
|
||||
require('fwatch').watch(os.getenv("XDG_CACHE_HOME") .. "/wal/colors",
|
||||
{
|
||||
@ -367,10 +321,10 @@ return {
|
||||
end,
|
||||
},
|
||||
|
||||
-- greeter
|
||||
-- https://github.com/goolord/alpha-nvim
|
||||
{
|
||||
'goolord/alpha-nvim',
|
||||
dependencies = { 'kyazdani42/nvim-web-devicons' },
|
||||
dependencies = { 'nvim-tree/nvim-web-devicons' },
|
||||
config = function()
|
||||
local alpha = require('alpha')
|
||||
local dashboard = require('alpha.themes.dashboard')
|
||||
|
Loading…
Reference in New Issue
Block a user