aboutsummaryrefslogtreecommitdiff
path: root/configs/nvim/lua/crupest/filesystem-cmd.lua
diff options
context:
space:
mode:
Diffstat (limited to 'configs/nvim/lua/crupest/filesystem-cmd.lua')
-rw-r--r--configs/nvim/lua/crupest/filesystem-cmd.lua49
1 files changed, 49 insertions, 0 deletions
diff --git a/configs/nvim/lua/crupest/filesystem-cmd.lua b/configs/nvim/lua/crupest/filesystem-cmd.lua
new file mode 100644
index 0000000..3148cef
--- /dev/null
+++ b/configs/nvim/lua/crupest/filesystem-cmd.lua
@@ -0,0 +1,49 @@
+local function setup_filesystem_user_commands()
+ vim.api.nvim_create_user_command("Mv", function(opts)
+ require("crupest.nvim").mv_buf_file(vim.api.nvim_get_current_buf(), opts.fargs[1])
+ end, {
+ nargs = 1,
+ complete = "file"
+ })
+
+ vim.api.nvim_create_user_command("MvFile", function(opts)
+ if (#opts.fargs ~= 2) then
+ vim.notify("MvFile accepts exactly two arguments, old file and new file.")
+ end
+ require("crupest.nvim").mv_file(opts.fargs[1], opts.fargs[2])
+ end, {
+ nargs = "+",
+ complete = "file"
+ })
+
+ vim.api.nvim_create_user_command("MvDir", function(opts)
+ if (#opts.fargs ~= 2) then
+ vim.notify("MvDir accepts exactly two arguments, old dir and new dir.")
+ end
+ require("crupest.nvim").mv_dir(opts.fargs[1], opts.fargs[2])
+ end, {
+ nargs = "+",
+ complete = "file"
+ })
+
+ vim.api.nvim_create_user_command("Rename", function(opts)
+ require("crupest.nvim").rename_buf_file(vim.api.nvim_get_current_buf(), opts.fargs[1])
+ end, {
+ nargs = 1,
+ complete = "file"
+ })
+
+ vim.api.nvim_create_user_command("RenameFile", function(opts)
+ if (#opts.fargs ~= 2) then
+ vim.notify("RenameFile accepts exactly two arguments, old file and new file.")
+ end
+ require("crupest.nvim").rename_file(opts.fargs[1], opts.fargs[2])
+ end, {
+ nargs = "+",
+ complete = "file"
+ })
+end
+
+return {
+ setup_filesystem_user_commands = setup_filesystem_user_commands
+}