X-Git-Url: https://git.r.bdr.sh/rbdr/dotfiles/blobdiff_plain/2b6ed8d5ad9b22cf02848ede02c6076a5f77c2a1..04f376bb720976147aaef28e33920bb2a7a35a9a:/config/nvim/lua/plugins.lua?ds=inline diff --git a/config/nvim/lua/plugins.lua b/config/nvim/lua/plugins.lua index 8b5b64b..8ac2766 100644 --- a/config/nvim/lua/plugins.lua +++ b/config/nvim/lua/plugins.lua @@ -1,5 +1,4 @@ -local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim' -if not vim.loop.fs_stat(lazypath) then +local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim' if not vim.loop.fs_stat(lazypath) then vim.fn.system({ 'git', 'clone', @@ -12,38 +11,122 @@ end vim.opt.rtp:prepend(lazypath) require('lazy').setup({ - 'junegunn/fzf', + { + 'ibhagwan/fzf-lua', + config = function() + -- calling `setup` is optional for customization + require('fzf-lua').setup({ + winopts={ + width=1, + height=0.4, + row=1 + }, + fzf_opts={ + ['--layout']='default' + }, + fzf_colors = { + ['fg'] = {'fg', 'Normal'}, + ['bg'] = {'bg', 'Normal'}, + ['hl'] = {'fg', 'Comment'}, + ['fg+'] = {'fg', 'CursorLine'}, + ['bg+'] = {'bg', 'CursorLine'}, + ['hl+'] = {'fg', 'Statement'}, + ['info'] = {'fg', 'PreProc'}, + ['prompt'] = {'fg', 'Conditional'}, + ['pointer'] = {'fg', 'Exception'}, + ['marker'] = {'fg', 'Keyword'}, + ['spinner'] = {'fg', 'Label'}, + ['header'] = {'fg', 'Comment'} + }, + previewers = { + builtin = { + extensions = { + ['png'] = { 'chafa', '-f', 'symbols', '{file}' }, + ['gif'] = { 'chafa', '-f', 'symbols', '{file}' }, + ['svg'] = { 'chafa', '-f', 'symbols', '{file}' }, + ['jpg'] = { 'chafa', '-f', 'symbols', '{file}' }, + ['jpeg'] = { 'chafa', '-f', 'symbols', '{file}' } + } + } + } + }) + end + }, -- Syntaxes - 'https://git.sr.ht/~rbdr/api-notation.vim', - 'elzr/vim-json', - 'othree/yajs.vim', 'ARM9/snes-syntax-vim', - 'leafgarland/typescript-vim', - 'leafOfTree/vim-svelte-plugin', - 'bumaociyuan/vim-swift', - 'udalov/kotlin-vim', - 'tikhomirov/vim-glsl', - 'jparise/vim-graphql', - 'digitaltoad/vim-pug', 'https://git.sr.ht/~torresjrjr/gemini.vim', - 'rust-lang/rust.vim', - 'dart-lang/dart-vim-plugin', - 'ziglang/zig.vim', + { 'folke/neodev.nvim', opts = {} }, + + --'Debugging + { + 'mfussenegger/nvim-dap', + dependencies = { + 'nvim-neotest/nvim-nio' + } + }, + 'rcarriga/nvim-dap-ui', + 'mxsdev/nvim-dap-vscode-js', -- Editing - 'tpope/vim-endwise', - 'rstacruz/vim-closer', + 'ms-jpq/coq_nvim', + 'RRethy/nvim-treesitter-endwise', + { + 'm4xshen/autoclose.nvim', + config = function() + require('autoclose').setup() + end + }, 'michaeljsmith/vim-indent-object', + { + 'Pocco81/auto-save.nvim', + opts = { + condition = function(buf) + local fn = vim.fn + local utils = require('auto-save.utils.data') + + if fn.getbufvar(buf, '&modifiable') == 1 + and utils.not_in(fn.getbufvar(buf, '&filetype'), {'oil'}) then + return true + end + return false + end, + } + }, + { + 'danymat/neogen', + config = true + }, - -- Distraction free editing - 'junegunn/goyo.vim', - 'junegunn/limelight.vim', + -- Treesitter + 'nvim-treesitter/nvim-treesitter', + 'https://git.sr.ht/~rbdr/tree-sitter-api-notation', + + -- LSP + 'neovim/nvim-lspconfig', + 'folke/neodev.nvim', -- Tools - {'neoclide/coc.nvim', branch='release'}, + 'mbbill/undotree', 'vim-scripts/LargeFile', 'tpope/vim-fugitive', 'milkypostman/vim-togglelist', - 'jremmen/vim-ripgrep', + { + 'folke/which-key.nvim', + event = 'VeryLazy', + init = function() + vim.o.timeout = true + vim.o.timeoutlen = 300 + end, + opts = {} + }, + { 'stevearc/oil.nvim', opts = { + keymaps = { + [''] = false, + [''] = 'actions.preview' + } + } }, + + 'https://git.sr.ht/~rbdr/nota.nvim', + 'https://git.sr.ht/~rbdr/oleoboard.nvim', })