diff options
| author | Mohammad Reza Karimi <m.r.karimi.j@gmail.com> | 2026-01-20 15:55:27 -0500 |
|---|---|---|
| committer | Mohammad Reza Karimi <m.r.karimi.j@gmail.com> | 2026-01-20 15:55:27 -0500 |
| commit | aa5717f00fd14430c80939a68d7107c26de6e554 (patch) | |
| tree | 784e99d9b018e0554369c41cb33e2e195e28d3c6 /plugin/14_commands.lua | |
first commit
Diffstat (limited to 'plugin/14_commands.lua')
| -rw-r--r-- | plugin/14_commands.lua | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/plugin/14_commands.lua b/plugin/14_commands.lua new file mode 100644 index 0000000..c1f248a --- /dev/null +++ b/plugin/14_commands.lua @@ -0,0 +1,44 @@ +local command = vim.api.nvim_create_user_command + +local complete_plugin_names = function(arg, _, _) + local inactive_plugs_starting_with_arg = vim.tbl_filter( + function(p) return p.active == false and vim.startswith(p.spec.name, arg) end, + vim.pack.get() + ) + return vim.tbl_map(function(p) return p.spec.name end, inactive_plugs_starting_with_arg) +end + +command( + "DiffOrig", + [[ + vert new + setlocal buftype=nofile + read ++edit # + 0d_ + diffthis + wincmd p + diffthis + ]], + { desc = "DiffOrig (see `:h DiffOrig`)" } +) + +command("Pup", function(_) vim.pack.update() end, { desc = "Update packages" }) +command( + "Pdel", + function(opts) vim.pack.del(vim.split(opts.args, " ")) end, + { nargs = "*", complete = complete_plugin_names } +) + +command( + "LspLog", + function() vim.cmd.tabnew(vim.lsp.log.get_filename()) end, + { desc = "Opens the Nvim LSP client log." } +) + +command("Align", function(_) + -- TODO +end, { + nargs = "*", + range = true, + desc = "align selection with respect to a substring", +}) |
