Compare commits

...

3 commits

5 changed files with 215 additions and 96 deletions

View file

@ -17,11 +17,13 @@
"flash.nvim": { "branch": "main", "commit": "ec0bf2842189f65f60fd40bf3557cac1029cc932" }, "flash.nvim": { "branch": "main", "commit": "ec0bf2842189f65f60fd40bf3557cac1029cc932" },
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" },
"fwatch.nvim": { "branch": "main", "commit": "a691f7349dc66285cd75a1a698dd28bca45f2bf8" }, "fwatch.nvim": { "branch": "main", "commit": "a691f7349dc66285cd75a1a698dd28bca45f2bf8" },
"fzf-lua": { "branch": "main", "commit": "1176d512b1390f992c775f08dcb155d4e0ba01cf" },
"git-conflict.nvim": { "branch": "main", "commit": "4bbfdd92d547d2862a75b4e80afaf30e73f7bbb4" }, "git-conflict.nvim": { "branch": "main", "commit": "4bbfdd92d547d2862a75b4e80afaf30e73f7bbb4" },
"gitsigns.nvim": { "branch": "main", "commit": "c23bbd3ed2c7a3fdc3399e97e24f9e158f57612f" }, "gitsigns.nvim": { "branch": "main", "commit": "c23bbd3ed2c7a3fdc3399e97e24f9e158f57612f" },
"glance.nvim": { "branch": "master", "commit": "1a08824835d7582457b67acbe23ca33487912a5e" }, "glance.nvim": { "branch": "master", "commit": "1a08824835d7582457b67acbe23ca33487912a5e" },
"grug-far.nvim": { "branch": "main", "commit": "3a8690461afac34c0e5bacb0f7b4bc3066aab665" }, "grug-far.nvim": { "branch": "main", "commit": "3a8690461afac34c0e5bacb0f7b4bc3066aab665" },
"helpview.nvim": { "branch": "main", "commit": "aca211993d7dd82bc03e7650bae859a570ba27d6" }, "helpview.nvim": { "branch": "main", "commit": "aca211993d7dd82bc03e7650bae859a570ba27d6" },
"hunk.nvim": { "branch": "master", "commit": "eb89245a66bdfce10436d15923bf4deb43d23c96" },
"image.nvim": { "branch": "master", "commit": "6ffafab2e98b5bda46bf227055aa84b90add8cdc" }, "image.nvim": { "branch": "master", "commit": "6ffafab2e98b5bda46bf227055aa84b90add8cdc" },
"img-clip.nvim": { "branch": "main", "commit": "28a32d811d69042f4fa5c3d5fa35571df2bc1623" }, "img-clip.nvim": { "branch": "main", "commit": "28a32d811d69042f4fa5c3d5fa35571df2bc1623" },
"jupytext.nvim": { "branch": "main", "commit": "c8baf3ad344c59b3abd461ecc17fc16ec44d0f7b" }, "jupytext.nvim": { "branch": "main", "commit": "c8baf3ad344c59b3abd461ecc17fc16ec44d0f7b" },
@ -62,14 +64,11 @@
"otter.nvim": { "branch": "main", "commit": "0e42fa795c35c7190935e3beda3791189c41bb72" }, "otter.nvim": { "branch": "main", "commit": "0e42fa795c35c7190935e3beda3791189c41bb72" },
"peek.nvim": { "branch": "master", "commit": "5820d937d5414baea5f586dc2a3d912a74636e5b" }, "peek.nvim": { "branch": "master", "commit": "5820d937d5414baea5f586dc2a3d912a74636e5b" },
"plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" }, "plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" },
"popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" },
"quarto-nvim": { "branch": "main", "commit": "abc417c7e7422033f1090c0da5f30ef3ecb0c7ca" }, "quarto-nvim": { "branch": "main", "commit": "abc417c7e7422033f1090c0da5f30ef3ecb0c7ca" },
"rainbow-delimiters.nvim": { "branch": "master", "commit": "dc788723f717bdd3041838b8db34cce53c9aa920" }, "rainbow-delimiters.nvim": { "branch": "master", "commit": "dc788723f717bdd3041838b8db34cce53c9aa920" },
"render-markdown": { "branch": "main", "commit": "f2bdf9f866671456f7a6119cc94501048d9d172c" }, "render-markdown": { "branch": "main", "commit": "f2bdf9f866671456f7a6119cc94501048d9d172c" },
"smartcolumn.nvim": { "branch": "main", "commit": "d01b99355c7fab13233f48d0f28dc097e68a03f7" }, "smartcolumn.nvim": { "branch": "main", "commit": "d01b99355c7fab13233f48d0f28dc097e68a03f7" },
"stickybuf.nvim": { "branch": "master", "commit": "2160fcd536d81f5fa43f7167dba6634e814e3154" }, "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" }, "texpresso.vim": { "branch": "main", "commit": "907838c08bbf99ad6bed3c908f1d0551a92ab4e0" },
"todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" },
"trouble.nvim": { "branch": "main", "commit": "bac1d9a9f51eecf4424b6ca8675db5a170fe572b" }, "trouble.nvim": { "branch": "main", "commit": "bac1d9a9f51eecf4424b6ca8675db5a170fe572b" },

View file

@ -1,4 +1,15 @@
return { 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", "akinsho/git-conflict.nvim",
event = { "InsertEnter", "CursorHold", "VeryLazy" }, event = { "InsertEnter", "CursorHold", "VeryLazy" },

View file

@ -1,4 +1,4 @@
return { return { -- file/item pickers and managers
{ {
"vifm/vifm.vim", "vifm/vifm.vim",
config = function() config = function()
@ -8,10 +8,7 @@ return {
vim.g.vifm_exec_args = '-c "set vifminfo=" -c "set statusline=" -c "only"' vim.g.vifm_exec_args = '-c "set vifminfo=" -c "set statusline=" -c "only"'
end, end,
cmd = "Vifm", cmd = "Vifm",
keys = { keys = { { "<leader>E", "<cmd>Vifm<cr>", desc = "buffer file browser" } },
{ "<leader>E", "<cmd>Vifm<cr>", desc = "buffer file browser" },
{ "<leader>vc", ":Vifm " .. vim.fn.stdpath("config") .. "<cr>", desc = "open config" },
},
event = { "BufEnter" }, event = { "BufEnter" },
}, -- integrate file manager }, -- integrate file manager
{ {
@ -49,160 +46,255 @@ return {
}, },
}, },
{ "MagicDuck/grug-far.nvim", opts = {}, cmd = "GrugFar" }, { "MagicDuck/grug-far.nvim", opts = {}, cmd = "GrugFar" },
-- fuzzy matching picker
{ {
"nvim-telescope/telescope.nvim", "ibhagwan/fzf-lua",
dependencies = { dependencies = { "nvim-tree/nvim-web-devicons" },
"nvim-lua/popup.nvim", init = function()
"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 if require("core.util").is_available("which-key") then
require("which-key").add({ "<leader>v", group = "vim" })
require("which-key").add({ "<leader>f", group = "find" }) require("which-key").add({ "<leader>f", group = "find" })
end end
-- 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 = { ["<c-t>"] = require("trouble.sources.telescope").open },
n = { ["<c-t>"] = 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 {},
},
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,
},
},
})
require("telescope").load_extension("fzf")
end, end,
opts = {
fzf_opts = { ["--select-1"] = false },
keymap = {
builtin = {
true,
["<c-d>"] = "preview-page-down",
["<c-u>"] = "preview-page-up",
},
fzf = {
true,
["ctrl-q"] = "select-all+accept",
},
},
previewers = {
builtin = {
extensions = {
["png"] = { "viu" },
["svg"] = { "chafa", "--format=symbols", "{file}" },
},
},
},
}, -- 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)
end,
cmd = "FzfLua",
keys = { keys = {
{ {
"<leader>vh", "<leader>vh",
function() function()
require("telescope.builtin").help_tags() require("fzf-lua").helptags()
end, end,
desc = "help tags", desc = "help tags",
}, },
{ {
"<leader>vH", "<leader>vH",
function() function()
require("telescope.builtin").man_pages() require("fzf-lua").manpages()
end, end,
desc = "man pages", desc = "man pages",
}, },
{
"<leader>vt",
function()
require("fzf-lua").filetypes()
end,
desc = "filetype",
},
{
"<leader>vk",
function()
require("fzf-lua").keymaps()
end,
desc = "keymaps",
},
{
"<leader>vy",
function()
require("fzf-lua").search_history()
end,
desc = "search history",
},
{
"<leader>vc",
function()
require("fzf-lua").command_history()
end,
desc = "command history",
},
{ {
"<leader>vC", "<leader>vC",
function() function()
require("telescope.builtin").colorscheme(require("telescope.themes").get_ivy()) require("fzf-lua").colorschemes()
end, end,
desc = "colorschemes", desc = "colorschemes",
}, },
{ -- exclude hidden files with <alt-h> in the search
"<leader>ff",
function()
require("fzf-lua").files()
end,
desc = "files",
},
{ {
"<leader>fb", "<leader>fb",
function() function()
require("telescope.builtin").buffers(require("telescope.themes").get_ivy()) require("fzf-lua").buffers()
end, end,
desc = "list buffers", desc = "buffers",
}, },
{ {
"<leader>fo", "<leader>fo",
function() function()
require("telescope.builtin").oldfiles(require("telescope.themes").get_ivy()) require("fzf-lua").oldfiles()
end, end,
desc = "list old files", desc = "old files",
}, },
{ {
"<leader>ff", "<leader>fp",
function() function()
require("telescope.builtin").find_files() require("fzf-lua").complete_path()
end, end,
desc = "find files", desc = "path complete",
},
{ -- TODO: Does it work reliably in various circumstances?
"<c-m>",
function()
require("fzf-lua").complete_path()
end,
mode = "i",
desc = "path complete",
}, },
{ {
"<leader>fh", "<leader>fP",
function() function()
require("telescope.builtin").find_files({ hidden = true }) require("fzf-lua").complete_file()
end, end,
desc = "find hidden files", desc = "filepath complete",
}, },
{ {
"<leader>fw", "<leader>fw",
function() function()
require("telescope.builtin").live_grep() require("fzf-lua").live_grep_native()
end, end,
desc = "grep search", desc = "grep",
},
{
"<leader>fW",
function()
require("fzf-lua").live_grep_resume()
end,
desc = "grep resume",
},
{
"<leader>fw",
function()
require("fzf-lua").grep_cword()
end,
mode = "v",
desc = "grep word",
},
{
"<leader>fW",
function()
require("fzf-lua").grep_cWORD()
end,
mode = "v",
desc = "grep WORD",
}, },
{ {
"<leader>fg", "<leader>fg",
function() function()
require("telescope.builtin").git_status() require("fzf-lua").git_status()
end, end,
desc = "git status", desc = "git status",
}, },
{ {
"<leader>fc", "<leader>fc",
function() function()
require("telescope.builtin").git_bcommits() require("fzf-lua").git_bcommits()
end, end,
desc = "git buffer commits", desc = "git buffer commits",
}, },
{ {
"<leader>fl", "<leader>fl",
function() function()
require("telescope.builtin").git_commits() require("fzf-lua").git_commits()
end, end,
desc = "git commit log", desc = "git log",
},
{
"<leader>fr",
function()
require("fzf-lua").registers()
end,
desc = "registers",
},
{
"<leader>fr",
function()
require("fzf-lua").jumps()
end,
desc = "jumps",
},
{
"<leader>fq",
function()
require("fzf-lua").quickfix()
end,
desc = "quickfix",
},
{
"<leader>fi",
function()
require("fzf-lua").loclist()
end,
desc = "loclist",
}, },
{ {
"z=", "z=",
function() function()
require("telescope.builtin").spell_suggest(require("telescope.themes").get_ivy()) require("fzf-lua").spell_suggest()
end, end,
desc = "spell suggest", desc = "spell suggest",
}, },
{
"<leader>fR",
function()
require("fzf-lua").resume()
end,
desc = "resume last query",
},
{
"<leader>fs",
function()
require("fzf-lua").lsp_finder()
end,
desc = "lsp symbol",
},
{
"<leader>fd",
function()
require("fzf-lua").diagnostics_workspace()
end,
desc = "diagnostics workspace",
},
{
"<leader>fD",
function()
require("fzf-lua").diagnostics_document()
end,
desc = "diagnostics document",
},
}, },
}, },
-- fuzzy matching picker
{ {
"jiaoshijie/undotree", "jiaoshijie/undotree",
dependencies = { dependencies = {

View file

@ -94,7 +94,6 @@ return {
}, },
{ {
"OXY2DEV/helpview.nvim", "OXY2DEV/helpview.nvim",
-- lazy = false, -- Recommended by dev?
ft = "help", ft = "help",
dependencies = { dependencies = {
"nvim-treesitter/nvim-treesitter", "nvim-treesitter/nvim-treesitter",

View file

@ -10,14 +10,27 @@ if exist lazyjj; then
fi fi
alias js="jj status" alias js="jj status"
alias jd="jj describe" alias jd="jj diff"
alias jn="jj new" alias jn="jj new"
alias jds="jj describe"
alias jc="jj commit" alias jc="jj commit"
alias jl='jj log' alias jln="jj log -T builtin_log_oneline"
alias jlo='jj log --summary' alias jl="jj log -r '@ | ancestors(remote_bookmarks().., 2) | trunk()'"
alias jloo='jj log --patch' alias jL="jj log -r 'all()'"
alias jo="jj op log" 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 jss="jj squash" alias jss="jj squash"
alias jsi="jj squash --interactive" alias jsi="jj squash --interactive"
@ -25,6 +38,11 @@ alias jsi="jj squash --interactive"
alias je="jj edit" alias je="jj edit"
alias jee="jj next --edit" alias jee="jj next --edit"
alias jun="jj undo" # show branches w a couple commits
alias jb="jj log -r 'ancestors(heads(all()), 3)'"
alias jrb="jj rebase"
alias ju="jj undo"
alias jp="jj git push" alias jp="jj git push"