Merge branch 'master' into arch-desktop

This commit is contained in:
Michael Chalupiak
2026-05-03 18:11:54 -04:00
8 changed files with 160 additions and 228 deletions

1
.gitignore vendored
View File

@@ -12,6 +12,7 @@ config/.config/kak/plugins/*
config/.config/mutt/chalupmc@rose-hulman
config/.config/mutt/mikecchalupiak@outlook
config/.config/mutt/spamreciver1@outlook
config/.config/nvim/lazy-lock.json
config/.config/qt5ct/colors/*
config/.config/qutebrowser/autoconfig.yml
config/.config/qutebrowser/rosepine/*

View File

@@ -4,12 +4,44 @@ local setnx = function(key, command, desc)
end
setnx('<leader>ff', Snacks.picker.files, 'Find files')
setnx('<leader>fF', function() Snacks.picker.files({ dirs = { '.' }}) end, 'Find files in current dir')
setnx('<leader>f/', Snacks.picker.grep_word, 'Search current word')
setnx('<leader>fg', Snacks.picker.grep, 'Search in files')
setnx('<leader>fr', Snacks.picker.recent, 'Find recent files')
setnx('<leader>b', Snacks.picker.buffers, 'List buffers')
setnx('<leader>h', Snacks.picker.help, 'Search help')
setnx('<leader>X', require'hex'.toggle, 'Toggle hex editor')
setnx('<leader>P', '<CMD>Markview splitToggle<CR>', 'Open markview preview')
setnx('<leader>z', Snacks.zen.zen, 'Toggle snacks zen mode')
local setto = function(key, command, desc)
set({ 'x', 'o' }, key, command, { desc = desc })
end
local setton = function(key, command, desc)
set({ 'n', 'x', 'o' }, key, command, { desc = desc })
end
local select_to = function(query)
return function ()
require'nvim-treesitter-textobjects.select'.select_textobject(query, "textobjects")
end
end
local move_next_start = function(query)
return function ()
require'nvim-treesitter-textobjects.move'.goto_next_start(query, "textobjects")
end
end
local move_prev_start = function(query)
return function ()
require'nvim-treesitter-textobjects.move'.goto_previous_start(query, "textobjects")
end
end
setto('if', select_to("@function.inner"), 'Select inside function')
setto('af', select_to("@function.outer"), 'Select around function')
setto('ia', select_to("@parameter.inner"), 'Select inside parameter')
setto('aa', select_to("@parameter.outer"), 'Select around parameter')
setton(']p', move_next_start("@parameter.inner"), 'Goto next parameter')
setton('[p', move_prev_start("@parameter.inner"), 'Goto previous parameter')
setnx('<leader>m', Snacks.picker.marks, 'Search marks')
setnx('<leader>q', Snacks.picker.qflist, 'Search quickfix list')
setnx('<leader>l', Snacks.picker.loclist, 'Search location list')
@@ -48,8 +80,8 @@ setnx('`', '\'', 'Goto mark without column')
setnx('<leader>x', '<CMD>bd!<CR>', 'Close Current Buffer')
setnx('grr', Snacks.picker.lsp_references, 'Search lsp references')
-- setnx('grI', tele.lsp_incoming_calls, 'Find incoming function calls')
-- setnx('grO', tele.lsp_outgoing_calls, 'Find outgoing function calls')
setnx('grI', Snacks.picker.lsp_incoming_calls, 'Find incoming function calls')
setnx('grO', Snacks.picker.lsp_outgoing_calls, 'Find outgoing function calls')
setnx('grd', Snacks.picker.diagnostics, 'Show LSP diagnostics')
setnx('grD', (function()
local diag = true

View File

@@ -8,41 +8,22 @@ vim.api.nvim_create_autocmd('LspAttach', {
end
})
-- vim.lsp.config('rust-analyzer', {
-- settings = {
-- ["rust-analyzer"] = {
-- inlayHints = {
-- bindingModeHints = {
-- enable = false,
-- },
-- chainingHints = {
-- enable = true,
-- },
-- closingBraceHints = {
-- enable = true,
-- minLines = 25,
-- },
-- closureReturnTypeHints = {
-- enable = "never",
-- },
-- lifetimeElisionHints = {
-- enable = "never",
-- useParameterNames = false,
-- },
-- maxLength = 25,
-- parameterHints = {
-- enable = true,
-- },
-- reborrowHints = {
-- enable = "never",
-- },
-- renderColons = true,
-- typeHints = {
-- enable = true,
-- hideClosureInitialization = false,
-- hideNamedConstructor = false,
-- },
-- },
-- }
-- }
-- })
vim.lsp.config('lua_ls', {
settings = {
Lua = {
workspace = {
library = vim.api.nvim_get_runtime_file("", true),
maxPreload = 100000,
preloadFileSize = 100000,
}
}
}
})
vim.lsp.config('tinymist', {
settings = {
exportPdf = "onType",
},
})
vim.diagnostic.config({ update_in_insert = true, float = true, virtual_lines = true})

View File

@@ -14,6 +14,7 @@ vim.opt.winborder = 'none'
vim.opt.smartindent = true
vim.opt.foldlevel = 9999
-- vim.opt.spell = true
vim.opt.spelllang = 'en_us'

View File

@@ -21,15 +21,6 @@ return {
},
},
-- {
-- "MysticalDevil/inlay-hints.nvim",
-- event = "LspAttach",
-- dependencies = { "neovim/nvim-lspconfig" },
-- config = function()
-- require("inlay-hints").setup()
-- end
-- },
--
{
'saghen/blink.cmp',
-- optional: provides snippets for the snippet source

View File

@@ -1,66 +1,39 @@
return {
{
'nvim-treesitter/nvim-treesitter',
-- branch = 'main',
'neovim-treesitter/nvim-treesitter',
dependencies = { 'neovim-treesitter/treesitter-parser-registry' },
branch = 'main',
version = false,
lazy = false,
build = ':TSUpdate',
config = function()
require'nvim-treesitter.configs'.setup {
textobjects = {
select = {
enable = true,
lookahead = true,
keymaps = {
["af"] = "@function.outer",
["if"] = "@function.inner",
}
},
move = {
enable = true,
set_jumps = false,
goto_next_start = {
[']a'] = '@parameter.inner',
},
goto_previous_start = {
['[a'] = '@parameter.inner',
}
},
},
auto_install = true,
highlight = {
enable = true,
},
}
local langs = require'nvim-treesitter'.get_installed('parsers')
vim.api.nvim_create_autocmd('FileType', {
pattern = langs,
callback = function()
vim.treesitter.start() -- highlighting
vim.wo.foldexpr = 'v:lua.vim.treesitter.foldexpr()' -- folds
vim.wo.foldmethod = 'expr'
vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()" -- indentation
end,
})
end
},
{
'nvim-treesitter/nvim-treesitter-textobjects',
branch = 'main',
opts = {
select = {
lookahead = true,
}
}
},
-- {
-- 'folke/twilight.nvim',
-- dependencies = {
-- 'nvim-treesitter/nvim-treesitter',
-- },
-- cmd = {
-- 'Twilight',
-- 'TwilightEnable',
-- 'TwilightDisable',
-- },
-- },
-- {
-- 'RRethy/vim-illuminate',
-- event = 'VeryLazy',
-- lazy = false,
-- },
{
'0oAstro/dim.lua',
dependencies = {
'nvim-treesitter/nvim-treesitter',
'neovim-treesitter/nvim-treesitter',
'neovim/nvim-lspconfig'
},
event = 'LspAttach',

View File

@@ -5,30 +5,12 @@ return {
event = 'VeryLazy',
},
-- {
-- 'lukas-reineke/indent-blankline.nvim',
-- event = 'VeryLazy',
-- config = function()
-- require'ibl'.setup{ scope = { enabled = false } }
-- end
-- },
{
'nvim-tree/nvim-web-devicons',
-- event = 'VeryLazy',
lazy = true,
},
-- {
-- 'goolord/alpha-nvim',
-- dependencies = {
-- 'nvim-tree/nvim-web-devicons',
-- },
-- config = function()
-- require('alpha').setup(require'alpha.themes.startify'.config)
-- end
-- },
{
'lewis6991/gitsigns.nvim',
event = 'VeryLazy',
@@ -37,9 +19,9 @@ return {
}
},
{
'Bekaboo/dropbar.nvim',
},
-- {
-- 'Bekaboo/dropbar.nvim',
-- },
{
'nvim-lualine/lualine.nvim',
@@ -52,8 +34,8 @@ return {
for i, server in pairs(vim.lsp.get_clients({ bufnr = 0 })) do
table.insert(names, server.name)
end
return " [" .. table.concat(names, " ") .. "]"
-- return "[" .. table.concat(names, " ") .. "]"
-- return " [" .. table.concat(names, " ") .. "]"
return "[" .. table.concat(names, " ") .. "]"
end
require('lualine').setup {
options = {

View File

@@ -1,21 +1,4 @@
return {
{
'nvim-lua/plenary.nvim',
-- event = 'VeryLazy',
lazy = true,
},
{
'RaafatTurki/hex.nvim',
config = true,
cmd = {
'HexDump',
'HexAssemble',
'HexToggle',
},
},
{
"sindrets/diffview.nvim",
event = 'VeryLazy',
@@ -33,7 +16,6 @@ return {
"NeogitOrg/neogit",
lazy = true,
dependencies = {
"nvim-lua/plenary.nvim", -- required
"sindrets/diffview.nvim", -- optional - Diff integration
-- Only one of these is needed.
@@ -44,6 +26,14 @@ return {
},
},
{
"OXY2DEV/markview.nvim",
lazy = false,
-- Completion for `blink.cmp`
dependencies = { "saghen/blink.cmp" },
},
{
'vieitesss/command.nvim',
lazy = false,
@@ -51,12 +41,6 @@ return {
opts = {},
},
{
'glacambre/firenvim',
build = ":call firenvim#install(0)"
},
{
'brenoprata10/nvim-highlight-colors',
event = 'VeryLazy',
@@ -92,7 +76,29 @@ return {
-- or leave it empty to use the default settings
-- refer to the configuration section below
bigfile = { enabled = true },
-- dashboard = { enabled = true },
dashboard = {
enabled = true,
presets = {
},
formats = {
key = function(item)
return { { "[", hl = "special" }, { item.key, hl = "key" }, { "]", hl = "special" } }
end,
},
sections = {
-- { section = "terminal", cmd = "fortune -s | cowsay", hl = "header", padding = 1, indent = 8 },
{ section = "header" },
{ section = "startup" },
{ title = "MRU", padding = 1 },
{ section = "recent_files", limit = 8, padding = 1 },
{ title = "MRU ", file = vim.fn.fnamemodify(".", ":~"), padding = 1 },
{ section = "recent_files", cwd = true, limit = 8, padding = 1 },
{ title = "Sessions", padding = 1 },
{ section = "projects", padding = 1 },
{ title = "Bookmarks", padding = 1 },
{ section = "keys" },
},
},
dim = { enabled = true },
-- explorer = { enabled = true },
-- git = { enabled = false },
@@ -113,92 +119,57 @@ return {
},
notifier = { enabled = true },
-- quickfile = { enabled = true },
-- scope = { enabled = true },
scope = { enabled = true },
-- scroll = { enabled = true },
terminal = { enabled = false },
-- statuscolumn = { enabled = true },
-- words = { enabled = true },
words = { enabled = true },
zen = {
enabled = true,
-- toggles = {
-- git_signs = true,
-- },
win = {
backdrop = {
transparent = false,
blend = 99,
},
},
},
},
},
{
'echasnovski/mini.nvim',
config = function()
require('mini.starter').setup()
-- require('mini.cursorword').setup()
local miniclue = require'mini.clue'
miniclue.setup{
window = {
delay = 0,
config = {
width = 'auto',
},
},
triggers = {
-- Leader triggers
{ mode = 'n', keys = '<Leader>' },
{ mode = 'x', keys = '<Leader>' },
-- Built-in completion
{ mode = 'i', keys = '<C-x>' },
-- `g` key
{ mode = 'n', keys = 'g' },
{ mode = 'x', keys = 'g' },
-- Next
{ mode = 'n', keys = '['},
{ mode = 'n', keys = ']'},
{ mode = 'x', keys = '['},
{ mode = 'x', keys = ']'},
-- Marks
{ mode = 'n', keys = "'" },
{ mode = 'n', keys = '`' },
{ mode = 'x', keys = "'" },
{ mode = 'x', keys = '`' },
-- Registers
{ mode = 'n', keys = '"' },
{ mode = 'x', keys = '"' },
{ mode = 'i', keys = '<C-r>' },
{ mode = 'c', keys = '<C-r>' },
-- Window commands
{ mode = 'n', keys = '<C-w>' },
-- `z` key
{ mode = 'n', keys = 'z' },
{ mode = 'x', keys = 'z' },
-- Localleader
{ mode = 'n', keys = '<Localleader>'},
{ mode = 'x', keys = '<Localleader>'},
},
clues = {
-- Enhance this by adding descriptions for <Leader> mapping groups
miniclue.gen_clues.builtin_completion(),
miniclue.gen_clues.g(),
miniclue.gen_clues.marks(),
miniclue.gen_clues.registers(),
miniclue.gen_clues.windows(),
miniclue.gen_clues.z(),
{ mode = 'n', keys = '<leader>f', desc = '+Find' },
{ mode = 'x', keys = '<leader>f', desc = '+Find' },
{ mode = 'n', keys = '<leader>o', desc = '+Open' },
{ mode = 'x', keys = '<leader>o', desc = '+Open' },
{ mode = 'n', keys = '<leader>g', desc = '+Git' },
{ mode = 'x', keys = '<leader>g', desc = '+Git' },
{ mode = 'n', keys = '<leader>c', desc = '+Compile' },
{ mode = 'x', keys = '<leader>c', desc = '+Compile' },
},
}
end
"folke/which-key.nvim",
event = "VeryLazy",
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
preset = 'helix',
sort = { "order", "alphanum", "local", "mod" },
win = {
border = 'none',
},
icons = {
rules = false,
},
spec = {
{ '<leader>f', group = 'Find' },
{ '<leader>o', group = 'Open' },
{ '<leader>g', group = 'Git' },
{ '<leader>c', group = 'Compile' },
},
},
keys = {
{
"<leader>?",
function()
require("which-key").show({ global = false })
end,
desc = "Buffer Local Keymaps (which-key)",
},
},
},
{
@@ -302,19 +273,19 @@ return {
-- Add cursor at next argument treesitter
set({'n', 'x'}, ']A', function()
if vim.v.count < 1 then
mc.addCursor(']a')
mc.addCursor(']p')
else
for _=1, vim.v.count - 1 do
mc.addCursor(']a')
mc.addCursor(']p')
end
end
end, { desc = 'Create multicursor on next argument'})
set({'n', 'x'}, '[A', function()
if vim.v.count < 1 then
mc.addCursor('[a')
mc.addCursor('[p')
else
for _=1, vim.v.count - 1 do
mc.addCursor('[a')
mc.addCursor('[p')
end
end
end, { desc = 'Create multicursor on previous argument'})