From 31f7ee21e8895b6d9e4bd8072bf05357f15f4bc1 Mon Sep 17 00:00:00 2001 From: iofq Date: Sun, 5 Oct 2025 13:08:24 -0500 Subject: [PATCH] remove mini.sessions/jj --- flake.lock | 30 ++++++++----- flake.nix | 4 +- nvim/lua/config/autocmd.lua | 8 ++-- nvim/lua/config/init.lua | 6 +-- nvim/lua/plugins/lib/session_jj.lua | 70 ----------------------------- nvim/lua/plugins/mini.lua | 19 -------- 6 files changed, 26 insertions(+), 111 deletions(-) delete mode 100644 nvim/lua/plugins/lib/session_jj.lua diff --git a/flake.lock b/flake.lock index 0530187..a89f66c 100644 --- a/flake.lock +++ b/flake.lock @@ -6,14 +6,17 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1758080529, - "narHash": "sha256-Sup4+HacL6Xe6mTk23N6sD4uXoU9dcoqRgc9Mu0oQ5E=", - "path": "/home/e/dev/dart.nvim", - "type": "path" + "lastModified": 1757895736, + "narHash": "sha256-BBjs+YCOzgb6N2lew4vEmyS6s70y0z5xStKjGQaf55g=", + "owner": "iofq", + "repo": "dart.nvim", + "rev": "f059335a22811374d5a7e22c97889ea712db58d7", + "type": "github" }, "original": { - "path": "/home/e/dev/dart.nvim", - "type": "path" + "owner": "iofq", + "repo": "dart.nvim", + "type": "github" } }, "flake-compat": { @@ -448,14 +451,17 @@ "nvim-treesitter-textobjects": "nvim-treesitter-textobjects" }, "locked": { - "lastModified": 1759555972, - "narHash": "sha256-vdIHsEjpZUdTYVzoJKsDsXjIlCyyIXMsBubg3dIp+cE=", - "path": "/home/e/dev/nvim-treesitter-main", - "type": "path" + "lastModified": 1759559567, + "narHash": "sha256-cNu8MIRumBeW1HJK8c8IM6ge1yalz4xS5j5RCDbhf0Y=", + "owner": "iofq", + "repo": "nvim-treesitter-main", + "rev": "1f19cc0a907328d8dbf467ee9fe216277628d366", + "type": "github" }, "original": { - "path": "/home/e/dev/nvim-treesitter-main", - "type": "path" + "owner": "iofq", + "repo": "nvim-treesitter-main", + "type": "github" } }, "nvim-treesitter-textobjects": { diff --git a/flake.nix b/flake.nix index 3224f5f..a2231e4 100644 --- a/flake.nix +++ b/flake.nix @@ -10,10 +10,10 @@ inputs.nixpkgs.follows = "nixpkgs"; }; dart = { - url = "path:/home/e/dev/dart.nvim"; + url = "github:iofq/dart.nvim"; }; nvim-treesitter-main = { - url = "path:/home/e/dev/nvim-treesitter-main"; + url = "github:iofq/nvim-treesitter-main"; }; # Add bleeding-edge plugins here. # They can be updated with `nix flake update` (make sure to commit the generated flake.lock) diff --git a/nvim/lua/config/autocmd.lua b/nvim/lua/config/autocmd.lua index e5cfb89..db5346a 100644 --- a/nvim/lua/config/autocmd.lua +++ b/nvim/lua/config/autocmd.lua @@ -38,10 +38,10 @@ vim.api.nvim_create_autocmd('FileType', { vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()" pcall(vim.treesitter.start, bufnr) - vim.keymap.set({'v','n'}, ']f', function() + vim.keymap.set({'v','n'}, ']]', function() require('nvim-treesitter-textobjects.move').goto_next_start('@function.outer', 'textobjects') end, { buffer = bufnr, desc = 'next function def' }) - vim.keymap.set({'v','n'}, '[f', function() + vim.keymap.set({'v','n'}, '[[', function() require('nvim-treesitter-textobjects.move').goto_previous_start('@function.outer', 'textobjects') end, { buffer = bufnr, desc = 'prev function def' }) vim.keymap.set({'v','n'}, ']a', function() @@ -50,10 +50,10 @@ vim.api.nvim_create_autocmd('FileType', { vim.keymap.set({'v','n'}, '[a', function() require('nvim-treesitter-textobjects.move').goto_previous_start('@parameter.inner', 'textobjects') end, { buffer = bufnr, desc = 'prev param def' }) - vim.keymap.set({'v','n'}, 'a]', function() + vim.keymap.set({'v','n'}, ']A', function() require('nvim-treesitter-textobjects.swap').swap_next('@parameter.inner') end, { buffer = bufnr, desc = 'swap next arg' }) - vim.keymap.set({'v','n'}, 'a[', function() + vim.keymap.set({'v','n'}, '[A', function() require('nvim-treesitter-textobjects.swap').swap_previous('@parameter.inner') end, { buffer = bufnr, desc = 'swap prev arg' }) end, diff --git a/nvim/lua/config/init.lua b/nvim/lua/config/init.lua index 4ba1b24..4c47a68 100644 --- a/nvim/lua/config/init.lua +++ b/nvim/lua/config/init.lua @@ -32,7 +32,5 @@ vim.diagnostic.config { source = 'if_many', }, } -vim.schedule(function() - require('config.autocmd') - require('config.keymaps') -end) +require('config.autocmd') +require('config.keymaps') diff --git a/nvim/lua/plugins/lib/session_jj.lua b/nvim/lua/plugins/lib/session_jj.lua deleted file mode 100644 index c411d45..0000000 --- a/nvim/lua/plugins/lib/session_jj.lua +++ /dev/null @@ -1,70 +0,0 @@ -local M = {} - -M.setup = function() - local id = M.get_id() - if M.check_exists(id) then - vim.notify('Existing session for ' .. id) - end - - vim.keymap.set('n', 'fs', function() - M.load() - end, { noremap = true, desc = 'mini session select' }) -end - -M.get_id = function() - local jj_root = vim.system({ 'jj', 'workspace', 'root' }):wait() - - if jj_root.code ~= 0 then - return - end - - local result = vim - .system({ - 'jj', - 'log', - '-r', - 'latest(heads(::@ & bookmarks()))', - '--template', - 'bookmarks', - '--no-pager', - '--no-graph', - }) - :wait() - local branch = vim.trim(string.gsub(result.stdout, '[\n*]', '')) -- trim newlines and unpushed indicator - local root = vim.trim(string.gsub(jj_root.stdout, '\n', '')) - local id = string.gsub(string.format('jj:%s:%s', root, branch), '[./]', '-') -- slugify - return id -end - -M.check_exists = function(id) - for name, _ in pairs(MiniSessions.detected) do - if name == id then - return true - end - end - return false -end - -M.load = function() - local id = M.get_id() - if id == '' then - return - end - if M.check_exists(id) then - vim.ui.select({ - 'Yes', - 'No', - }, { prompt = 'Session found at ' .. id .. ', load it?' }, function(c) - if c == 'Yes' then - -- load session (buffers, etc) as well as shada (marks) - vim.opt.shadafile = vim.fn.stdpath('data') .. '/myshada/' .. id .. '.shada' - MiniSessions.read(id) - vim.notify('loaded jj session: ' .. id) - end - end) - else - MiniSessions.write(id) - end -end - -return M diff --git a/nvim/lua/plugins/mini.lua b/nvim/lua/plugins/mini.lua index e64b55f..bf2d6f1 100644 --- a/nvim/lua/plugins/mini.lua +++ b/nvim/lua/plugins/mini.lua @@ -34,7 +34,6 @@ return { n_lines = 300, custom_textobjects = { i = require('mini.extra').gen_ai_spec.indent(), - u = ai.gen_spec.function_call(), a = ai.gen_spec.treesitter { a = '@parameter.outer', i = '@parameter.inner' }, f = ai.gen_spec.treesitter { a = '@function.outer', i = '@function.inner' }, }, @@ -45,24 +44,6 @@ return { require('mini.surround').setup() require('mini.splitjoin').setup { detect = { separator = '[,;\n]' } } - require('mini.sessions').setup { - file = '', - autowrite = true, - hooks = { - pre = { - read = function(session) -- load Dart state *before* buffers are loaded - vim.cmd('rshada') - Dart.read_session(session['name']) - end, - write = function(session) - vim.cmd('wshada') - Dart.write_session(session['name']) - end, - }, - }, - } - require('plugins.lib.session_jj').setup() - local jump = require('mini.jump2d') jump.setup { view = { n_steps_ahead = 1, dim = true },