From 828352781fb641d2bb357631cdf266e386ebdec4 Mon Sep 17 00:00:00 2001 From: Barrett Ruth Date: Mon, 16 Feb 2026 21:27:03 -0500 Subject: [PATCH] feat: more stuf --- config/nvim/after/plugin/lsp.lua | 8 +++++++- config/nvim/filetype.lua | 2 +- config/nvim/init.lua | 19 ++++++++++++------ config/nvim/lua/config/fold.lua | 1 - config/nvim/lua/config/lines/init.lua | 3 ++- config/nvim/lua/config/lines/statuscolumn.lua | 8 +++++++- config/nvim/lua/config/lsp.lua | 14 +++++-------- config/nvim/lua/plugins/cp.lua | 15 +++++++++----- config/nvim/lua/plugins/git.lua | 3 ++- config/nvim/lua/plugins/guard.lua | 20 +++++++++++++------ config/nvim/lua/plugins/nvim.lua | 11 +++++----- config/nvim/plugin/highlight-undo.lua | 8 +++++++- home/modules/editor.nix | 7 ++++++- home/modules/git.nix | 4 ++++ 14 files changed, 84 insertions(+), 39 deletions(-) diff --git a/config/nvim/after/plugin/lsp.lua b/config/nvim/after/plugin/lsp.lua index d4033d5..81289ed 100644 --- a/config/nvim/after/plugin/lsp.lua +++ b/config/nvim/after/plugin/lsp.lua @@ -27,7 +27,13 @@ vim.lsp.config('*', { flags = { debounce_text_changes = 0 }, }) -map({ { 'n', 'x' }, 'gF', lsp.format }) +map({ + { 'n', 'x' }, + 'gF', + function() + vim.lsp.buf.format({ async = true }) + end, +}) for _, server in ipairs({ 'bashls', diff --git a/config/nvim/filetype.lua b/config/nvim/filetype.lua index 167c58b..77c5a72 100644 --- a/config/nvim/filetype.lua +++ b/config/nvim/filetype.lua @@ -5,6 +5,6 @@ vim.filetype.add({ }, filename = { ['requirements.txt'] = 'config', - dunstrc = 'dosini' + dunstrc = 'dosini', }, }) diff --git a/config/nvim/init.lua b/config/nvim/init.lua index 91c28ce..1dad008 100644 --- a/config/nvim/init.lua +++ b/config/nvim/init.lua @@ -42,15 +42,22 @@ for _, plugin in ipairs(disabled_plugins) do vim.g['loaded_' .. plugin] = 1 end -local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" +local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim' if not (vim.uv or vim.loop).fs_stat(lazypath) then - local lazyrepo = "https://github.com/folke/lazy.nvim.git" - local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) + local lazyrepo = 'https://github.com/folke/lazy.nvim.git' + local out = vim.fn.system({ + 'git', + 'clone', + '--filter=blob:none', + '--branch=stable', + lazyrepo, + lazypath, + }) if vim.v.shell_error ~= 0 then vim.api.nvim_echo({ - { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, - { out, "WarningMsg" }, - { "\nPress any key to exit..." }, + { 'Failed to clone lazy.nvim:\n', 'ErrorMsg' }, + { out, 'WarningMsg' }, + { '\nPress any key to exit...' }, }, true, {}) vim.fn.getchar() os.exit(1) diff --git a/config/nvim/lua/config/fold.lua b/config/nvim/lua/config/fold.lua index 8191abf..b5b7fc6 100644 --- a/config/nvim/lua/config/fold.lua +++ b/config/nvim/lua/config/fold.lua @@ -128,7 +128,6 @@ function M.foldexpr() return tostring(max_level) end - function M.setup() vim.opt.fillchars:append({ fold = ' ', diff --git a/config/nvim/lua/config/lines/init.lua b/config/nvim/lua/config/lines/init.lua index 0277068..79d4a01 100644 --- a/config/nvim/lua/config/lines/init.lua +++ b/config/nvim/lua/config/lines/init.lua @@ -1,6 +1,7 @@ return { setup = function() - vim.o.statusline = '%!v:lua.require("config.lines.statusline").statusline()' + vim.o.statusline = + '%!v:lua.require("config.lines.statusline").statusline()' vim.o.statuscolumn = '%!v:lua.require("config.lines.statuscolumn").statuscolumn()' end, diff --git a/config/nvim/lua/config/lines/statuscolumn.lua b/config/nvim/lua/config/lines/statuscolumn.lua index 11a7d0a..bdc77da 100644 --- a/config/nvim/lua/config/lines/statuscolumn.lua +++ b/config/nvim/lua/config/lines/statuscolumn.lua @@ -9,7 +9,13 @@ return { local relnum = vim.v.relnum local hl = relnum == 0 and 'CursorLineNr' or 'LineNr' - local marks = vim.api.nvim_buf_get_extmarks(0, -1, { lnum - 1, 0 }, { lnum - 1, 0 }, { details = true }) + local marks = vim.api.nvim_buf_get_extmarks( + 0, + -1, + { lnum - 1, 0 }, + { lnum - 1, 0 }, + { details = true } + ) for _, mark in ipairs(marks) do if mark[4] and mark[4].number_hl_group then hl = mark[4].number_hl_group diff --git a/config/nvim/lua/config/lsp.lua b/config/nvim/lua/config/lsp.lua index c8cb94b..1d5d58a 100644 --- a/config/nvim/lua/config/lsp.lua +++ b/config/nvim/lua/config/lsp.lua @@ -79,16 +79,12 @@ function M.on_attach(client, bufnr) end end -function M.format(opts) - local ok, ft_handler = pcall(require, 'guard.filetype') - if ok then - local conf = ft_handler[vim.bo.filetype] - if conf and conf.formatter and #conf.formatter > 0 then - require('guard').fmt() - return - end +function M.format() + if pcall(require, 'guard.filetype') then + vim.cmd.Guard('fmt') + else + vim.lsp.buf.format({ async = true }) end - vim.lsp.buf.format(opts or { async = true }) end return M diff --git a/config/nvim/lua/plugins/cp.lua b/config/nvim/lua/plugins/cp.lua index d9f8921..bfa8751 100644 --- a/config/nvim/lua/plugins/cp.lua +++ b/config/nvim/lua/plugins/cp.lua @@ -73,7 +73,8 @@ local cpp_single = cpp_base .. [[ solve(); return 0; } // }}}]] -local cpp_multi = cpp_base .. [[ u32 tc = 1; +local cpp_multi = cpp_base + .. [[ u32 tc = 1; std::cin >> tc; for (u32 t = 0; t < tc; ++t) { solve(); @@ -211,10 +212,10 @@ return { require('cp.helpers').clearcol(buf) end, before_run = function(_) - require('config.lsp').format({ async = true }) + require('config.lsp').format() end, before_debug = function(_) - require('config.lsp').format({ async = true }) + require('config.lsp').format() end, setup_code = function(state) vim.opt_local.winbar = '' @@ -234,9 +235,13 @@ return { local platform = state.get_platform() insert_template(buf, lang, platform) - local clang_format_path = vim.fn.getcwd() .. '/.clang-format' + local clang_format_path = vim.fn.getcwd() + .. '/.clang-format' if vim.fn.filereadable(clang_format_path) == 0 then - vim.fn.writefile(vim.split(clang_format, '\n'), clang_format_path) + vim.fn.writefile( + vim.split(clang_format, '\n'), + clang_format_path + ) end end, }, diff --git a/config/nvim/lua/plugins/git.lua b/config/nvim/lua/plugins/git.lua index 9e479a3..7ffc772 100644 --- a/config/nvim/lua/plugins/git.lua +++ b/config/nvim/lua/plugins/git.lua @@ -185,7 +185,8 @@ return { { 'go', with_forge(function(forge) - local branch = vim.trim(vim.fn.system('git branch --show-current')) + local branch = + vim.trim(vim.fn.system('git branch --show-current')) forge.browse(file_loc(), branch) end), mode = { 'n', 'v' }, diff --git a/config/nvim/lua/plugins/guard.lua b/config/nvim/lua/plugins/guard.lua index b658776..efa5148 100644 --- a/config/nvim/lua/plugins/guard.lua +++ b/config/nvim/lua/plugins/guard.lua @@ -10,18 +10,26 @@ return { lsp_as_default_formatter = true, } end, + keys = { + { 'gF', 'Guard fmt', mode = { 'n', 'x' } }, + }, config = function() local ft = require('guard.filetype') - ft('python'):fmt({ - cmd = 'isort', - args = { '--profile', 'black', '-' }, - stdin = true, - }):append('black'):lint('mypy') + ft('python') + :fmt({ + cmd = 'isort', + args = { '--profile', 'black', '-' }, + stdin = true, + }) + :append('black') + :lint('mypy') ft('lua'):fmt('stylua'):lint('selene') - ft('javascript,javascriptreact,typescript,typescriptreact'):fmt('prettierd'):lint('eslint_d') + ft('javascript,javascriptreact,typescript,typescriptreact') + :fmt('prettierd') + :lint('eslint_d') ft('css,graphql,html,json,jsonc,mdx,yaml'):fmt('prettierd') ft('sh,bash,zsh'):fmt({ diff --git a/config/nvim/lua/plugins/nvim.lua b/config/nvim/lua/plugins/nvim.lua index 6cc1b73..d10c98d 100644 --- a/config/nvim/lua/plugins/nvim.lua +++ b/config/nvim/lua/plugins/nvim.lua @@ -1,6 +1,7 @@ return { { 'barrettruth/midnight.nvim', + dir = '~/dev/midnight.nvim', enabled = true, config = function() vim.cmd.colorscheme('midnight') @@ -305,15 +306,15 @@ return { }, }, { 'tpope/vim-abolish', event = 'VeryLazy' }, - { 'tpope/vim-sleuth', event = 'BufReadPost' }, + { 'tpope/vim-sleuth', event = 'BufReadPost' }, { 'kylechui/nvim-surround', config = true, keys = { - { 'cs', mode = 'n' }, - { 'ds', mode = 'n' }, - { 'ys', mode = 'n' }, - { 'yS', mode = 'n' }, + { 'cs', mode = 'n' }, + { 'ds', mode = 'n' }, + { 'ys', mode = 'n' }, + { 'yS', mode = 'n' }, { 'yss', mode = 'n' }, { 'ySs', mode = 'n' }, }, diff --git a/config/nvim/plugin/highlight-undo.lua b/config/nvim/plugin/highlight-undo.lua index 578d13a..3e8c8ef 100644 --- a/config/nvim/plugin/highlight-undo.lua +++ b/config/nvim/plugin/highlight-undo.lua @@ -15,7 +15,13 @@ for _, key in ipairs({ 'u', '', 'U' }) do if not api.nvim_buf_is_valid(buf) then return end - vim.hl.range(buf, ns, 'HighlightUndo', { sr, sc }, { er, ec }) + vim.hl.range( + buf, + ns, + 'HighlightUndo', + { sr, sc }, + { er, ec } + ) vim.defer_fn(function() if api.nvim_buf_is_valid(buf) then api.nvim_buf_clear_namespace(buf, ns, 0, -1) diff --git a/home/modules/editor.nix b/home/modules/editor.nix index d2ee367..c7ee823 100644 --- a/home/modules/editor.nix +++ b/home/modules/editor.nix @@ -44,7 +44,7 @@ in luarocks tree-sitter nixfmt-tree - (texlive.combine { inherit (texlive) scheme-small latexindent latexmk; }) + (texlive.combine { inherit (texlive) scheme-small latexindent latexmk lastpage pgf collection-fontsrecommended; }) ]; programs.neovim = { @@ -58,4 +58,9 @@ in xdg.configFile."nvim".source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/nix/config/nvim"; + + xdg.configFile."latexmk/latexmkrc".text = '' + $out_dir = "build"; + $pdf_mode = 1; + ''; } diff --git a/home/modules/git.nix b/home/modules/git.nix index a36b2c2..111ddd5 100644 --- a/home/modules/git.nix +++ b/home/modules/git.nix @@ -116,6 +116,10 @@ "github.com" = { identityFile = "~/.ssh/id_ed25519"; }; + "jetson-nano" = { + hostname = "100.95.16.119"; + user = "charlie"; + } "lightsail" = { hostname = "52.87.124.139"; user = "ec2-user";