From 337ef885aa4c1b349808dc2bdffc83831e734eff Mon Sep 17 00:00:00 2001 From: Gabe Venberg Date: Fri, 20 Oct 2023 23:59:41 -0500 Subject: [PATCH] switched over to lazy for nvim plugins. --- kitty/.config/kitty/kitty.conf | 2 +- neovim/.config/nvim/init.lua | 20 +- neovim/.config/nvim/lua/packages.lua | 634 ++++++------------- neovim/.config/nvim/lua/rust-tools-setup.lua | 5 +- 4 files changed, 212 insertions(+), 449 deletions(-) diff --git a/kitty/.config/kitty/kitty.conf b/kitty/.config/kitty/kitty.conf index 4d0c2d0..8523f0f 100644 --- a/kitty/.config/kitty/kitty.conf +++ b/kitty/.config/kitty/kitty.conf @@ -160,7 +160,7 @@ font_family Cascadia Code #: suffix px for pixels or % for percentage of original value. No #: suffix means use pts. For example:: -#: modify_font underline_position -2 + modify_font underline_position 2 #: modify_font underline_thickness 150% #: modify_font strikethrough_position 2px diff --git a/neovim/.config/nvim/init.lua b/neovim/.config/nvim/init.lua index 1e8b201..e40f8cd 100644 --- a/neovim/.config/nvim/init.lua +++ b/neovim/.config/nvim/init.lua @@ -3,13 +3,10 @@ local cmd = vim.cmd local opt = vim.opt local fn = vim.fn local map = vim.keymap.set -local wk = require("which-key") --leader key is set through a variable, for some reason. vim.g.mapleader = ';' ---this plugin makes startup time a bit faster. To bootsrap configuration, you need to comment this one out, ignore any errors you get, do packersync, then uncomment it. -require('impatient') --do package management require('packages') @@ -18,6 +15,8 @@ local function keyCode(string) return vim.api.nvim_replace_termcodes(str, true, true, true, true) end +local wk = require("which-key") + --options using vim.opt (aliased, of course.) opt.mouse = 'a' opt.lazyredraw = true @@ -117,7 +116,7 @@ map('n', 't', ':NvimTreeToggle', optsWithDesc("toggle file browser") --open symbols-outline with leader+o map('n', 'o', ':SymbolsOutline', optsWithDesc("toggle LSP symbol outline")) --telescope stuff ---setup leader-f prefix in whitch-key +-- setup leader-f prefix in whitch-key wk.register { ["f"]={ name="+telescope" @@ -143,19 +142,6 @@ map('n', 'gf', ':TablineBufferNext', optsWithDesc("next buffer")) map('n', 'gF', ':TablineBufferPrevious', optsWithDesc("prev buffer")) --gitsigns map('n', 'bl', ':Gitsigns toggle_current_line_blame', optsWithDesc("toggle inline git blame")) ---trouble plugin. -wk.register { - ["x"]={ - name="+trouble" - } -} -map("n", "xx", "TroubleToggle", optsWithDesc("toggle trouble")) -map("n", "xw", "TroubleToggle workspace_diagnostics", optsWithDesc("workspace diagnostics")) -map("n", "xd", "TroubleToggle document_diagnostics", optsWithDesc("document diagnostics")) -map("n", "xl", "TroubleToggle loclist", optsWithDesc("location list")) -map("n", "xq", "TroubleToggle quickfix", optsWithDesc("quickfix list")) -map("n", "lR", "TroubleToggle lsp_references", optsWithDesc("lsp references")) -map("n", "lD", "TroubleToggle lsp_definitions", optsWithDesc("lsp definitions")) -- toggle keymappings for venn using v map('n', 'v', ":lua Toggle_venn()", optsWithDesc("toggle venn.nvim")) -- treesj diff --git a/neovim/.config/nvim/lua/packages.lua b/neovim/.config/nvim/lua/packages.lua index 6a559bd..ac62e18 100644 --- a/neovim/.config/nvim/lua/packages.lua +++ b/neovim/.config/nvim/lua/packages.lua @@ -1,23 +1,23 @@ --- bootstrapping packer -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 - Packer_Bootstrap = fn.system({ 'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', - install_path }) +local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim' +if not vim.loop.fs_stat(lazypath) then + vim.fn.system({ + 'git', + 'clone', + '--filter=blob:none', + 'https://github.com/folke/lazy.nvim.git', + '--branch=stable', -- latest stable release + lazypath, + }) end +vim.opt.rtp:prepend(lazypath) -return require('packer').startup(function(use) - --startup speed - use 'lewis6991/impatient.nvim' - - --base plugins. - - use 'wbthomason/packer.nvim' - - use { 'nvim-treesitter/nvim-treesitter', - run = ':TSUpdate', +require('lazy').setup({ + { + 'nvim-treesitter/nvim-treesitter', + build = ':TSUpdate', config = function() - require('nvim-treesitter').setup { + local configs = require('nvim-treesitter.configs') + configs.setup { ensure_installed = { 'c', 'lua', @@ -48,54 +48,54 @@ return require('packer').startup(function(use) incremental_selection = { enable = true } } end, - } - use { - { - "williamboman/mason.nvim", - config = function() - require("mason").setup({ - ui = { - icons = { - package_installed = "✓", - package_pending = "➜", - package_uninstalled = "✗" - } - } - }) - end - }, - { - "williamboman/mason-lspconfig.nvim", - after = "mason.nvim", - config = function() - require("mason-lspconfig").setup({ - ensure_installed = { - 'lua_ls', - 'rust_analyzer', - 'pyright', - 'bashls', - 'pylsp', -- run PylspInstall pylsp-rope python-lsp-black python-lsp-ruff - 'pyright', - 'texlab', - 'clangd', - }, - automatic_installation = true - }) - end - }, - { - "neovim/nvim-lspconfig", - after = { "mason-lspconfig.nvim", "rust-tools.nvim" }, - config = function() - require('LSPconfig') - end - }, - { 'simrat39/rust-tools.nvim', }, - { 'mfussenegger/nvim-jdtls', }, - } - - use { 'hrsh7th/nvim-cmp', - requires = { + }, + { + 'williamboman/mason.nvim', + opts = { + ui = { + icons = { + package_installed = "✓", + package_pending = "➜", + package_uninstalled = "✗" + } + } + } + }, + { + "williamboman/mason-lspconfig.nvim", + config = function() + require("mason-lspconfig").setup({ + ensure_installed = { + 'lua_ls', + 'rust_analyzer', + 'bashls', + 'pylsp', -- run PylspInstall pylsp-rope python-lsp-black python-lsp-ruff + 'pyright', + 'texlab', + 'clangd', + }, + automatic_installation = true + }) + end + }, + { + "neovim/nvim-lspconfig", + config = function() + require('LSPconfig') + end + }, + { + 'simrat39/rust-tools.nvim', + -- config = function() + -- require('rust-tools-setup') + -- end + }, + { + 'hrsh7th/nvim-cmp', + config = function() + require('rust-tools-setup') + end, + dependencies = { 'neovim/nvim-lspconfig', 'hrsh7th/cmp-nvim-lsp', 'saadparwaiz1/cmp_luasnip', @@ -110,239 +110,41 @@ return require('packer').startup(function(use) 'hrsh7th/cmp-emoji', 'ray-x/cmp-treesitter', 'uga-rosa/cmp-dictionary', - }, - config = function() - require('cmp-lsp') - end - } - - use { 'L3MON4D3/LuaSnip', - requires = { + } + }, + { + 'L3MON4D3/LuaSnip', + dependencies = { 'rafamadriz/friendly-snippets' }, config = function() require("luasnip.loaders.from_snipmate").load() require("luasnip.loaders.from_vscode").load() end - } - - use { 'nvim-telescope/telescope.nvim', - requires = { - { 'nvim-lua/plenary.nvim' }, + }, + { + 'nvim-telescope/telescope.nvim', + config = true, + dependencies = { { 'nvim-lua/popup.nvim' }, { 'nvim-treesitter/nvim-treesitter' }, { 'nvim-telescope/telescope-symbols.nvim' }, { 'nvim-telescope/telescope-file-browser.nvim' }, - { 'folke/trouble.nvim' }, - }, - config = function() - local trouble = require("trouble.providers.telescope") - require('telescope').setup { - defaults = { - mappings = { - i = { [""] = trouble.open_with_trouble }, - n = { [""] = trouble.open_with_trouble }, - }, - }, - } - end - } - - use { 'folke/trouble.nvim', - requires = "kyazdani42/nvim-web-devicons", - config = function() - require("trouble").setup { - position = "bottom", -- position of the list can be: bottom, top, left, right - height = 10, -- height of the trouble list when position is top or bottom - width = 50, -- width of the list when position is left or right - icons = true, -- use devicons for filenames - mode = "workspace_diagnostics", -- "workspace_diagnostics", "document_diagnostics", "quickfix", "lsp_references", "loclist" - fold_open = "", -- icon used for open folds - fold_closed = "", -- icon used for closed folds - group = true, -- group results by file - padding = true, -- add an extra new line on top of the list - action_keys = { - -- key mappings for actions in the trouble list - -- map to {} to remove a mapping, for example: - -- close = {}, - close = "q", -- close the list - cancel = "", -- cancel the preview and get back to your last window / buffer / cursor - refresh = "r", -- manually refresh - jump = { "", "" }, -- jump to the diagnostic or open / close folds - open_split = { "" }, -- open buffer in new split - open_vsplit = { "" }, -- open buffer in new vsplit - open_tab = { "" }, -- open buffer in new tab - jump_close = { "o" }, -- jump to the diagnostic and close the list - toggle_mode = "m", -- toggle between "workspace" and "document" diagnostics mode - toggle_preview = "P", -- toggle auto_preview - hover = "K", -- opens a small popup with the full multiline message - preview = "p", -- preview the diagnostic location - close_folds = { "zM", "zm" }, -- close all folds - open_folds = { "zR", "zr" }, -- open all folds - toggle_fold = { "zA", "za", '' }, -- toggle fold of current file - previous = "k", -- previous item - next = "j" -- next item - }, - indent_lines = true, -- add an indent guide below the fold icons - auto_open = false, -- automatically open the list when you have diagnostics - auto_close = false, -- automatically close the list when you have no diagnostics - auto_preview = true, -- automatically preview the location of the diagnostic. to close preview and go back to last window - auto_fold = false, -- automatically fold a file trouble list at creation - auto_jump = { "lsp_definitions" }, -- for the given modes, automatically jump if there is only a single result - signs = { - -- icons / text used for a diagnostic - error = "", - warning = "", - hint = "", - information = "", - other = "﫠" - }, - use_diagnostic_signs = false -- enabling this will use the signs defined in your lsp client - } - end - } - - use { + } + }, + { "folke/todo-comments.nvim", - requires = { "nvim-lua/plenary.nvim" }, - config = function() - local opts = { - -- your configuration comes here - -- or leave it empty to use the default settings - } - require("todo-comments").setup(opts) - end - } - - --file browser - use { 'kyazdani42/nvim-tree.lua', - requires = { + dependencies = { "nvim-lua/plenary.nvim" }, + }, + { + 'kyazdani42/nvim-tree.lua', + config = true, + dependencies = { 'kyazdani42/nvim-web-devicons', -- optional, for file icon }, - config = function() - require 'nvim-tree'.setup { - - on_attach = function(bufnr) - local api = require('nvim-tree.api') - - local function opts(desc) - return { - desc = 'nvim-tree: ' .. desc, - buffer = bufnr, - noremap = true, - silent = true, - nowait = true - } - end - - - -- Default mappings. Feel free to modify or remove as you wish. - -- - -- BEGIN_DEFAULT_ON_ATTACH - vim.keymap.set('n', '', api.tree.change_root_to_node, opts('CD')) - vim.keymap.set('n', '', api.node.open.replace_tree_buffer, opts('Open: In Place')) - vim.keymap.set('n', '', api.node.show_info_popup, opts('Info')) - vim.keymap.set('n', '', api.fs.rename_sub, opts('Rename: Omit Filename')) - vim.keymap.set('n', '', api.node.open.tab, opts('Open: New Tab')) - vim.keymap.set('n', '', api.node.open.vertical, opts('Open: Vertical Split')) - vim.keymap.set('n', '', api.node.open.horizontal, opts('Open: Horizontal Split')) - vim.keymap.set('n', '', api.node.navigate.parent_close, opts('Close Directory')) - vim.keymap.set('n', '', api.node.open.edit, opts('Open')) - vim.keymap.set('n', '', api.node.open.preview, opts('Open Preview')) - vim.keymap.set('n', '>', api.node.navigate.sibling.next, opts('Next Sibling')) - vim.keymap.set('n', '<', api.node.navigate.sibling.prev, opts('Previous Sibling')) - vim.keymap.set('n', '.', api.node.run.cmd, opts('Run Command')) - vim.keymap.set('n', '-', api.tree.change_root_to_parent, opts('Up')) - vim.keymap.set('n', 'a', api.fs.create, opts('Create')) - vim.keymap.set('n', 'bmv', api.marks.bulk.move, opts('Move Bookmarked')) - vim.keymap.set('n', 'B', api.tree.toggle_no_buffer_filter, opts('Toggle No Buffer')) - vim.keymap.set('n', 'c', api.fs.copy.node, opts('Copy')) - vim.keymap.set('n', 'C', api.tree.toggle_git_clean_filter, opts('Toggle Git Clean')) - vim.keymap.set('n', '[c', api.node.navigate.git.prev, opts('Prev Git')) - vim.keymap.set('n', ']c', api.node.navigate.git.next, opts('Next Git')) - vim.keymap.set('n', 'd', api.fs.remove, opts('Delete')) - vim.keymap.set('n', 'D', api.fs.trash, opts('Trash')) - vim.keymap.set('n', 'E', api.tree.expand_all, opts('Expand All')) - vim.keymap.set('n', 'e', api.fs.rename_basename, opts('Rename: Basename')) - vim.keymap.set('n', ']e', api.node.navigate.diagnostics.next, opts('Next Diagnostic')) - vim.keymap.set('n', '[e', api.node.navigate.diagnostics.prev, opts('Prev Diagnostic')) - vim.keymap.set('n', 'F', api.live_filter.clear, opts('Clean Filter')) - vim.keymap.set('n', 'f', api.live_filter.start, opts('Filter')) - vim.keymap.set('n', 'g?', api.tree.toggle_help, opts('Help')) - vim.keymap.set('n', 'gy', api.fs.copy.absolute_path, opts('Copy Absolute Path')) - vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Dotfiles')) - vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Git Ignore')) - vim.keymap.set('n', 'J', api.node.navigate.sibling.last, opts('Last Sibling')) - vim.keymap.set('n', 'K', api.node.navigate.sibling.first, opts('First Sibling')) - vim.keymap.set('n', 'm', api.marks.toggle, opts('Toggle Bookmark')) - vim.keymap.set('n', 'o', api.node.open.edit, opts('Open')) - vim.keymap.set('n', 'O', api.node.open.no_window_picker, opts('Open: No Window Picker')) - vim.keymap.set('n', 'p', api.fs.paste, opts('Paste')) - vim.keymap.set('n', 'P', api.node.navigate.parent, opts('Parent Directory')) - vim.keymap.set('n', 'q', api.tree.close, opts('Close')) - vim.keymap.set('n', 'r', api.fs.rename, opts('Rename')) - vim.keymap.set('n', 'R', api.tree.reload, opts('Refresh')) - vim.keymap.set('n', 's', api.node.run.system, opts('Run System')) - vim.keymap.set('n', 'S', api.tree.search_node, opts('Search')) - vim.keymap.set('n', 'U', api.tree.toggle_custom_filter, opts('Toggle Hidden')) - vim.keymap.set('n', 'W', api.tree.collapse_all, opts('Collapse')) - vim.keymap.set('n', 'x', api.fs.cut, opts('Cut')) - vim.keymap.set('n', 'y', api.fs.copy.filename, opts('Copy Name')) - vim.keymap.set('n', 'Y', api.fs.copy.relative_path, opts('Copy Relative Path')) - vim.keymap.set('n', '<2-LeftMouse>', api.node.open.edit, opts('Open')) - vim.keymap.set('n', '<2-RightMouse>', api.tree.change_root_to_node, opts('CD')) - -- END_DEFAULT_ON_ATTACH - - - -- Mappings migrated from view.mappings.list - -- - -- You will need to insert "your code goes here" for any mappings with a custom action_cb - vim.keymap.set('n', '', api.node.open.edit, opts('Open')) - vim.keymap.set('n', 'o', api.node.open.edit, opts('Open')) - vim.keymap.set('n', '<2-LeftMouse>', api.node.open.edit, opts('Open')) - vim.keymap.set('n', '', api.node.open.replace_tree_buffer, opts('Open: In Place')) - vim.keymap.set('n', 'O', api.node.open.no_window_picker, opts('Open: No Window Picker')) - vim.keymap.set('n', '<2-RightMouse>', api.tree.change_root_to_node, opts('CD')) - vim.keymap.set('n', '', api.tree.change_root_to_node, opts('CD')) - vim.keymap.set('n', '', api.node.open.vertical, opts('Open: Vertical Split')) - vim.keymap.set('n', '', api.node.open.horizontal, opts('Open: Horizontal Split')) - vim.keymap.set('n', '', api.node.open.tab, opts('Open: New Tab')) - vim.keymap.set('n', '<', api.node.navigate.sibling.prev, opts('Previous Sibling')) - vim.keymap.set('n', '>', api.node.navigate.sibling.next, opts('Next Sibling')) - vim.keymap.set('n', 'P', api.node.navigate.parent, opts('Parent Directory')) - vim.keymap.set('n', '', api.node.navigate.parent_close, opts('Close Directory')) - vim.keymap.set('n', '', api.node.open.preview, opts('Open Preview')) - vim.keymap.set('n', 'K', api.node.navigate.sibling.first, opts('First Sibling')) - vim.keymap.set('n', 'J', api.node.navigate.sibling.last, opts('Last Sibling')) - vim.keymap.set('n', 'I', api.tree.toggle_gitignore_filter, opts('Toggle Git Ignore')) - vim.keymap.set('n', 'H', api.tree.toggle_hidden_filter, opts('Toggle Dotfiles')) - vim.keymap.set('n', 'R', api.tree.reload, opts('Refresh')) - vim.keymap.set('n', 'a', api.fs.create, opts('Create')) - vim.keymap.set('n', 'd', api.fs.remove, opts('Delete')) - vim.keymap.set('n', 'D', api.fs.trash, opts('Trash')) - vim.keymap.set('n', 'r', api.fs.rename, opts('Rename')) - vim.keymap.set('n', '', api.fs.rename_sub, opts('Rename: Omit Filename')) - vim.keymap.set('n', 'x', api.fs.cut, opts('Cut')) - vim.keymap.set('n', 'c', api.fs.copy.node, opts('Copy')) - vim.keymap.set('n', 'p', api.fs.paste, opts('Paste')) - vim.keymap.set('n', 'y', api.fs.copy.filename, opts('Copy Name')) - vim.keymap.set('n', 'Y', api.fs.copy.relative_path, opts('Copy Relative Path')) - vim.keymap.set('n', 'gy', api.fs.copy.absolute_path, opts('Copy Absolute Path')) - vim.keymap.set('n', '[c', api.node.navigate.git.prev, opts('Prev Git')) - vim.keymap.set('n', ']c', api.node.navigate.git.next, opts('Next Git')) - vim.keymap.set('n', '-', api.tree.change_root_to_parent, opts('Up')) - vim.keymap.set('n', 's', api.node.run.system, opts('Run System')) - vim.keymap.set('n', 'q', api.tree.close, opts('Close')) - vim.keymap.set('n', 'g?', api.tree.toggle_help, opts('Help')) - vim.keymap.set('n', 'W', api.tree.collapse_all, opts('Collapse')) - end, - -- on_attach = on_attach - } - end - } - - use { - "folke/which-key.nvim", + }, + { + 'folke/which-key.nvim', config = function() vim.o.timeout = true vim.o.timeoutlen = 300 @@ -361,81 +163,74 @@ return require('packer').startup(function(use) -- local wk = require("which-key") } end - } - - --UI stuff - - use { "akinsho/toggleterm.nvim", tag = '*', config = function() - require("toggleterm").setup { + }, + { + "akinsho/toggleterm.nvim", + opts = { insert_mappings = false, terminal_mappings = false, open_mapping = [[]], } - end } + }, + { + 'simrat39/symbols-outline.nvim', + opts = { + highlight_hovered_item = true, + show_guides = true, + auto_preview = false, + position = 'right', + relative_width = true, + width = 30, + auto_close = false, + show_numbers = false, + show_relative_numbers = false, + show_symbol_details = true, + preview_bg_highlight = 'Pmenu', + autofold_depth = nil, + auto_unfold_hover = true, + fold_markers = { '', '' }, + wrap = false, + } + }, + { + 'stevearc/dressing.nvim', + config = true, + }, + { + 'nvim-lualine/lualine.nvim', + dependencies = { 'kyazdani42/nvim-web-devicons' }, + opts = { + options = { + icons_enabled = true, + theme = 'auto', + component_separators = { left = '', right = '' }, + section_separators = { left = '', right = '' }, + disabled_filetypes = {}, + always_divide_middle = true, + }, + sections = { + lualine_a = { 'mode' }, + lualine_b = { 'branch', 'diff', 'diagnostics' }, + lualine_c = { 'filename' }, + lualine_x = { 'encoding', 'fileformat', 'filetype' }, + lualine_y = { 'progress' }, + lualine_z = { 'location' } + }, + inactive_sections = { + lualine_a = {}, + lualine_b = {}, + lualine_c = { 'filename' }, + lualine_x = { 'location' }, + lualine_y = {}, + lualine_z = {} + }, + extensions = {} + }, - use { 'simrat39/symbols-outline.nvim', - config = function() - local opts = { - highlight_hovered_item = true, - show_guides = true, - auto_preview = false, - position = 'right', - relative_width = true, - width = 30, - auto_close = false, - show_numbers = false, - show_relative_numbers = false, - show_symbol_details = true, - preview_bg_highlight = 'Pmenu', - autofold_depth = nil, - auto_unfold_hover = true, - fold_markers = { '', '' }, - wrap = false, - } - require("symbols-outline").setup(opts) - end - } - - use { 'stevearc/dressing.nvim', - config = function() - require('dressing').setup {} - end - } - - use { 'nvim-lualine/lualine.nvim', - requires = { 'kyazdani42/nvim-web-devicons', opt = true }, - config = function() - require('lualine').setup { - options = { - icons_enabled = true, - theme = 'auto', - component_separators = { left = '', right = '' }, - section_separators = { left = '', right = '' }, - disabled_filetypes = {}, - always_divide_middle = true, - }, - sections = { - lualine_a = { 'mode' }, - lualine_b = { 'branch', 'diff', 'diagnostics' }, - lualine_c = { 'filename' }, - lualine_x = { 'encoding', 'fileformat', 'filetype' }, - lualine_y = { 'progress' }, - lualine_z = { 'location' } - }, - inactive_sections = { - lualine_a = {}, - lualine_b = {}, - lualine_c = { 'filename' }, - lualine_x = { 'location' }, - lualine_y = {}, - lualine_z = {} - }, - extensions = {} - } - end, - } - - use { 'kdheepak/tabline.nvim', + }, + { + 'kdheepak/tabline.nvim', + dependencies = { 'nvim-lualine/lualine.nvim' }, config = function() require 'tabline'.setup { -- Defaults configuration options @@ -457,79 +252,62 @@ return require('packer').startup(function(use) set sessionoptions+=tabpages,globals " store tabpages and globals in session ]] end, - requires = { { 'hoob3rt/lualine.nvim', opt = true }, { 'kyazdani42/nvim-web-devicons', opt = true } } - } + }, + { + 'romgrk/nvim-treesitter-context', + dependencies = { 'nvim-treesitter/nvim-treesitter' }, + opts = { + enable = true, -- Enable this plugin (Can be enabled/disabled later via commands) + max_lines = 0, -- How many lines the window should span. Values <= 0 mean no limit. + trim_scope = 'outer', -- Which context lines to discard if `max_lines` is exceeded. Choices: 'inner', 'outer' + min_window_height = 0, -- Minimum editor window height to enable context. Values <= 0 mean no limit. + zindex = 200, -- The Z-index of the context window + mode = 'cursor', -- Line used to calculate context. Choices: 'cursor', 'topline' + -- Separator between context and content. Should be a single character string, like '-'. + -- When separator is set, the context will only show up when there are at least 2 lines above cursorline. + separator = nil, + } + }, + { + "lukas-reineke/indent-blankline.nvim", + main = "ibl", + opts = {} + }, + { + 'lewis6991/gitsigns.nvim', + config = true, + }, + 'chentau/marks.nvim', + 'sitiom/nvim-numbertoggle', + { + 'numToStr/Comment.nvim', + config = true, + }, + -- { + -- "tversteeg/registers.nvim", + -- config = true, + -- }, + { + 'Wansmer/treesj', + dependencies = { 'nvim-treesitter' }, + opts = { + -- Use default keymaps + -- (m - toggle, j - join, s - split) + use_default_keymaps = false, + max_join_length = 256, + } + }, + "jbyuki/venn.nvim", - use { 'romgrk/nvim-treesitter-context', - requires = 'nvim-treesitter/nvim-treesitter', - config = function() - require('treesitter-context').setup { - enable = true, -- Enable this plugin (Can be enabled/disabled later via commands) - max_lines = 0, -- How many lines the window should span. Values <= 0 mean no limit. - trim_scope = 'outer', -- Which context lines to discard if `max_lines` is exceeded. Choices: 'inner', 'outer' - min_window_height = 0, -- Minimum editor window height to enable context. Values <= 0 mean no limit. - zindex = 200, -- The Z-index of the context window - mode = 'cursor', -- Line used to calculate context. Choices: 'cursor', 'topline' - -- Separator between context and content. Should be a single character string, like '-'. - -- When separator is set, the context will only show up when there are at least 2 lines above cursorline. - separator = nil, - } - end - } + --colorscheme + { + 'bluz71/vim-moonfly-colors', + lazy = true, + }, - use { 'lewis6991/gitsigns.nvim', - -- tag = 'release', -- To use the latest release. currently bugged - config = function() require('gitsigns').setup() end - } + { + 'bluz71/vim-nightfly-guicolors', + lazy = true, + }, - use { 'chentau/marks.nvim' } - - use { 'sitiom/nvim-numbertoggle' } - - use { 'lukas-reineke/indent-blankline.nvim', - config = function() - vim.opt.list = true - vim.opt.listchars:append("eol:↴") - require('ibl').setup {} - end - } - - --editing utilities - - use { 'numToStr/Comment.nvim', - config = function() - require('Comment').setup() - end - } - - use { - "tversteeg/registers.nvim", - config = function() - require("registers").setup() - end, - } - - use { 'Wansmer/treesj', - requires = { 'nvim-treesitter' }, - config = function() - require('treesj').setup({ - -- Use default keymaps - -- (m - toggle, j - join, s - split) - use_default_keymaps = false, - max_join_length = 256, - }) - end, - } - - use "jbyuki/venn.nvim" - - --color scheme stuff. - - use 'bluz71/vim-moonfly-colors' - - use 'bluz71/vim-nightfly-guicolors' - - if Packer_Bootstrap then - require('packer').sync() - end -end) +}) diff --git a/neovim/.config/nvim/lua/rust-tools-setup.lua b/neovim/.config/nvim/lua/rust-tools-setup.lua index 263e121..9e589dc 100644 --- a/neovim/.config/nvim/lua/rust-tools-setup.lua +++ b/neovim/.config/nvim/lua/rust-tools-setup.lua @@ -1,4 +1,3 @@ -local nvim_lsp = require'lspconfig' local opts = { tools = { autoSetHints = true, @@ -15,7 +14,7 @@ local opts = { -- whether to show parameter hints with the inlay hints or not show_parameter_hints = true, -- whether to show variable name before type hints with the inlay hints or not - show_variable_name = false, + show_variable_name = true, -- prefix for parameter hints parameter_hints_prefix = "<- ", -- prefix for all the other hints (type, chaining) @@ -27,7 +26,7 @@ local opts = { -- whether to align to the extreme right or not right_align = true, -- padding from the right if right_align is true - right_align_padding = 7, + right_align_padding = 1, -- The color of the hints highlight = "Comment", },