diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index d2404de..b4b20c5 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -17,13 +17,11 @@ "flash.nvim": { "branch": "main", "commit": "ec0bf2842189f65f60fd40bf3557cac1029cc932" }, "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, "fwatch.nvim": { "branch": "main", "commit": "a691f7349dc66285cd75a1a698dd28bca45f2bf8" }, - "fzf-lua": { "branch": "main", "commit": "1176d512b1390f992c775f08dcb155d4e0ba01cf" }, "git-conflict.nvim": { "branch": "main", "commit": "4bbfdd92d547d2862a75b4e80afaf30e73f7bbb4" }, "gitsigns.nvim": { "branch": "main", "commit": "c23bbd3ed2c7a3fdc3399e97e24f9e158f57612f" }, "glance.nvim": { "branch": "master", "commit": "1a08824835d7582457b67acbe23ca33487912a5e" }, "grug-far.nvim": { "branch": "main", "commit": "3a8690461afac34c0e5bacb0f7b4bc3066aab665" }, "helpview.nvim": { "branch": "main", "commit": "aca211993d7dd82bc03e7650bae859a570ba27d6" }, - "hunk.nvim": { "branch": "master", "commit": "eb89245a66bdfce10436d15923bf4deb43d23c96" }, "image.nvim": { "branch": "master", "commit": "6ffafab2e98b5bda46bf227055aa84b90add8cdc" }, "img-clip.nvim": { "branch": "main", "commit": "28a32d811d69042f4fa5c3d5fa35571df2bc1623" }, "jupytext.nvim": { "branch": "main", "commit": "c8baf3ad344c59b3abd461ecc17fc16ec44d0f7b" }, @@ -64,11 +62,14 @@ "otter.nvim": { "branch": "main", "commit": "0e42fa795c35c7190935e3beda3791189c41bb72" }, "peek.nvim": { "branch": "master", "commit": "5820d937d5414baea5f586dc2a3d912a74636e5b" }, "plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" }, + "popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" }, "quarto-nvim": { "branch": "main", "commit": "abc417c7e7422033f1090c0da5f30ef3ecb0c7ca" }, "rainbow-delimiters.nvim": { "branch": "master", "commit": "dc788723f717bdd3041838b8db34cce53c9aa920" }, "render-markdown": { "branch": "main", "commit": "f2bdf9f866671456f7a6119cc94501048d9d172c" }, "smartcolumn.nvim": { "branch": "main", "commit": "d01b99355c7fab13233f48d0f28dc097e68a03f7" }, "stickybuf.nvim": { "branch": "master", "commit": "2160fcd536d81f5fa43f7167dba6634e814e3154" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, + "telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "texpresso.vim": { "branch": "main", "commit": "907838c08bbf99ad6bed3c908f1d0551a92ab4e0" }, "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, "trouble.nvim": { "branch": "main", "commit": "bac1d9a9f51eecf4424b6ca8675db5a170fe572b" }, diff --git a/nvim/.config/nvim/lua/plugins/git.lua b/nvim/.config/nvim/lua/plugins/git.lua index bf443ca..550008e 100644 --- a/nvim/.config/nvim/lua/plugins/git.lua +++ b/nvim/.config/nvim/lua/plugins/git.lua @@ -1,15 +1,4 @@ return { - { - "julienvincent/hunk.nvim", - dependencies = { - "MunifTanjim/nui.nvim", - { "nvim-tree/nvim-web-devicons", optional = true }, - }, - cmd = { "DiffEditor" }, - config = function() - require("hunk").setup() - end, - }, { "akinsho/git-conflict.nvim", event = { "InsertEnter", "CursorHold", "VeryLazy" }, diff --git a/nvim/.config/nvim/lua/plugins/pickers.lua b/nvim/.config/nvim/lua/plugins/pickers.lua index fdd415c..f10af48 100644 --- a/nvim/.config/nvim/lua/plugins/pickers.lua +++ b/nvim/.config/nvim/lua/plugins/pickers.lua @@ -1,4 +1,4 @@ -return { -- file/item pickers and managers +return { { "vifm/vifm.vim", config = function() @@ -8,7 +8,10 @@ return { -- file/item pickers and managers vim.g.vifm_exec_args = '-c "set vifminfo=" -c "set statusline=" -c "only"' end, cmd = "Vifm", - keys = { { "E", "Vifm", desc = "buffer file browser" } }, + keys = { + { "E", "Vifm", desc = "buffer file browser" }, + { "vc", ":Vifm " .. vim.fn.stdpath("config") .. "", desc = "open config" }, + }, event = { "BufEnter" }, }, -- integrate file manager { @@ -46,255 +49,160 @@ return { -- file/item pickers and managers }, }, { "MagicDuck/grug-far.nvim", opts = {}, cmd = "GrugFar" }, + -- fuzzy matching picker { - "ibhagwan/fzf-lua", - dependencies = { "nvim-tree/nvim-web-devicons" }, - init = function() + "nvim-telescope/telescope.nvim", + dependencies = { + "nvim-lua/popup.nvim", + "nvim-lua/plenary.nvim", + { "nvim-telescope/telescope-fzf-native.nvim", build = "make" }, + }, + cmd = "Telescope", + config = function() if require("core.util").is_available("which-key") then - require("which-key").add({ "v", group = "vim" }) require("which-key").add({ "f", group = "find" }) end - end, - opts = { - fzf_opts = { ["--select-1"] = false }, - keymap = { - builtin = { - true, - [""] = "preview-page-down", - [""] = "preview-page-up", + -- Setup up telescope fuzzy finding settings + -- + -- Makes use of optionally installed external programs to work fully: + -- rg (ripgrep) for in-text searches + -- fd for quicker directory structure searches + -- lsp for a variety of lsp queries + local trouble_mappings = {} + if require("core.util").is_available("trouble") then + trouble_mappings = { + i = { [""] = require("trouble.sources.telescope").open }, + n = { [""] = require("trouble.sources.telescope").open }, + } + end + require("telescope").setup({ + defaults = { + vimgrep_arguments = { + "rg", + "--ignore-vcs", + "--hidden", + "--color=never", + "--no-heading", + "--with-filename", + "--line-number", + "--column", + "--smart-case", + }, + generic_sorter = require("mini.fuzzy").get_telescope_sorter, + -- Appearance + prompt_prefix = "󰍉 ", + selection_caret = "󰳟 ", + color_devicons = true, + mappings = trouble_mappings or {}, }, - fzf = { - true, - ["ctrl-q"] = "select-all+accept", - }, - }, - previewers = { - builtin = { - extensions = { - ["png"] = { "viu" }, - ["svg"] = { "chafa", "--format=symbols", "{file}" }, + pickers = { + buffers = { theme = "ivy" }, + oldfiles = { theme = "ivy" }, + find_files = { + theme = "dropdown", + -- nice minimal picker design + borderchars = { + { "─", "│", "─", "│", "┌", "┐", "┘", "└" }, + prompt = { "─", "│", " ", "│", "┌", "┐", "│", "│" }, + results = { "─", "│", "─", "│", "├", "┤", "┘", "└" }, + preview = { "─", "│", "─", "│", "┌", "┐", "┘", "└" }, + }, + width = 0.8, + previewer = false, + prompt_title = false, }, }, - }, - }, -- FIXME: Does not seem to work with single result and still closes instantly? - config = function(_, opts) - opts.actions = opts.actions or { true } - opts.actions["ctrl-q"] = require("fzf-lua").actions.file_sel_to_qf - require("fzf-lua").setup(opts) + }) + require("telescope").load_extension("fzf") end, - cmd = "FzfLua", keys = { { "vh", function() - require("fzf-lua").helptags() + require("telescope.builtin").help_tags() end, desc = "help tags", }, { "vH", function() - require("fzf-lua").manpages() + require("telescope.builtin").man_pages() end, desc = "man pages", }, - { - "vt", - function() - require("fzf-lua").filetypes() - end, - desc = "filetype", - }, - { - "vk", - function() - require("fzf-lua").keymaps() - end, - desc = "keymaps", - }, - { - "vy", - function() - require("fzf-lua").search_history() - end, - desc = "search history", - }, - { - "vc", - function() - require("fzf-lua").command_history() - end, - desc = "command history", - }, { "vC", function() - require("fzf-lua").colorschemes() + require("telescope.builtin").colorscheme(require("telescope.themes").get_ivy()) end, desc = "colorschemes", }, - { -- exclude hidden files with in the search - "ff", - function() - require("fzf-lua").files() - end, - desc = "files", - }, { "fb", function() - require("fzf-lua").buffers() + require("telescope.builtin").buffers(require("telescope.themes").get_ivy()) end, - desc = "buffers", + desc = "list buffers", }, { "fo", function() - require("fzf-lua").oldfiles() + require("telescope.builtin").oldfiles(require("telescope.themes").get_ivy()) end, - desc = "old files", + desc = "list old files", }, { - "fp", + "ff", function() - require("fzf-lua").complete_path() + require("telescope.builtin").find_files() end, - desc = "path complete", - }, - { -- TODO: Does it work reliably in various circumstances? - "", - function() - require("fzf-lua").complete_path() - end, - mode = "i", - desc = "path complete", + desc = "find files", }, { - "fP", + "fh", function() - require("fzf-lua").complete_file() + require("telescope.builtin").find_files({ hidden = true }) end, - desc = "filepath complete", + desc = "find hidden files", }, { "fw", function() - require("fzf-lua").live_grep_native() + require("telescope.builtin").live_grep() end, - desc = "grep", - }, - { - "fW", - function() - require("fzf-lua").live_grep_resume() - end, - desc = "grep resume", - }, - { - "fw", - function() - require("fzf-lua").grep_cword() - end, - mode = "v", - desc = "grep word", - }, - { - "fW", - function() - require("fzf-lua").grep_cWORD() - end, - mode = "v", - desc = "grep WORD", + desc = "grep search", }, { "fg", function() - require("fzf-lua").git_status() + require("telescope.builtin").git_status() end, desc = "git status", }, { "fc", function() - require("fzf-lua").git_bcommits() + require("telescope.builtin").git_bcommits() end, desc = "git buffer commits", }, { "fl", function() - require("fzf-lua").git_commits() + require("telescope.builtin").git_commits() end, - desc = "git log", - }, - { - "fr", - function() - require("fzf-lua").registers() - end, - desc = "registers", - }, - { - "fr", - function() - require("fzf-lua").jumps() - end, - desc = "jumps", - }, - { - "fq", - function() - require("fzf-lua").quickfix() - end, - desc = "quickfix", - }, - { - "fi", - function() - require("fzf-lua").loclist() - end, - desc = "loclist", + desc = "git commit log", }, { "z=", function() - require("fzf-lua").spell_suggest() + require("telescope.builtin").spell_suggest(require("telescope.themes").get_ivy()) end, desc = "spell suggest", }, - { - "fR", - function() - require("fzf-lua").resume() - end, - desc = "resume last query", - }, - - { - "fs", - function() - require("fzf-lua").lsp_finder() - end, - desc = "lsp symbol", - }, - { - "fd", - function() - require("fzf-lua").diagnostics_workspace() - end, - desc = "diagnostics workspace", - }, - { - "fD", - function() - require("fzf-lua").diagnostics_document() - end, - desc = "diagnostics document", - }, }, }, - -- fuzzy matching picker { "jiaoshijie/undotree", dependencies = { diff --git a/nvim/.config/nvim/lua/plugins/ui.lua b/nvim/.config/nvim/lua/plugins/ui.lua index e8f1d60..4b25481 100644 --- a/nvim/.config/nvim/lua/plugins/ui.lua +++ b/nvim/.config/nvim/lua/plugins/ui.lua @@ -94,6 +94,7 @@ return { }, { "OXY2DEV/helpview.nvim", + -- lazy = false, -- Recommended by dev? ft = "help", dependencies = { "nvim-treesitter/nvim-treesitter", diff --git a/vcs/jj/config/sh/alias.d/jj.sh b/vcs/jj/config/sh/alias.d/jj.sh index a68adf2..ed69305 100644 --- a/vcs/jj/config/sh/alias.d/jj.sh +++ b/vcs/jj/config/sh/alias.d/jj.sh @@ -10,27 +10,14 @@ if exist lazyjj; then fi alias js="jj status" -alias jd="jj diff" +alias jd="jj describe" alias jn="jj new" -alias jds="jj describe" alias jc="jj commit" -alias jln="jj log -T builtin_log_oneline" -alias jl="jj log -r '@ | ancestors(remote_bookmarks().., 2) | trunk()'" -alias jL="jj log -r 'all()'" -alias jlo="jj log --summary" -alias jLO="jj log --summary -r 'all()'" -alias jloo="jj log --patch" -alias jol="jj op log" -jlf() { - jj log -r "description($*)" -} -jlof() { - jj log --summary -r "description($*)" -} -jloof() { - jj log --patch -r "description($*)" -} +alias jl='jj log' +alias jlo='jj log --summary' +alias jloo='jj log --patch' +alias jo="jj op log" alias jss="jj squash" alias jsi="jj squash --interactive" @@ -38,11 +25,6 @@ alias jsi="jj squash --interactive" alias je="jj edit" alias jee="jj next --edit" -# show branches w a couple commits -alias jb="jj log -r 'ancestors(heads(all()), 3)'" - -alias jrb="jj rebase" - -alias ju="jj undo" +alias jun="jj undo" alias jp="jj git push"