mirror of
https://github.com/kristoferssolo/vidir.yazi.git
synced 2025-10-21 20:10:39 +00:00
chore: add readme
This commit is contained in:
parent
c29a4410be
commit
3d1b0e17c9
29
README.md
29
README.md
@ -0,0 +1,29 @@
|
||||
# vidir.yazi
|
||||
|
||||
This plugin is a bulk-rename plugin using [vidir](https://linux.die.net/man/1/vidir).
|
||||
|
||||
## Requirements
|
||||
|
||||
- [yazi >= v25.2.7](https://github.com/sxyazi/yazi)
|
||||
- [vidir](https://linux.die.net/man/1/vidir) (sometimes included in [moreutils](https://man.archlinux.org/listing/extra/moreutils/) package)
|
||||
|
||||
## Installation
|
||||
|
||||
```bash
|
||||
ya pack -a kristoferssolo/vidir
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
Add this to your `~/.config/yazi/keymap.toml`:
|
||||
|
||||
```toml
|
||||
[[manager.prepend_keymap]]
|
||||
on = "B"
|
||||
run = [ "escape --visual", "plugin --sync vidir" ]
|
||||
desc = "Bulk rename with vidir"
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
This plugin is MIT-licensed. For more information check the [LICENSE](LICENSE) file.
|
||||
13
main.lua
13
main.lua
@ -1,14 +1,19 @@
|
||||
--- @sync entry
|
||||
|
||||
return {
|
||||
entry = function()
|
||||
local selected_items = cx.active.selected
|
||||
if #selected_items >= 1 then
|
||||
local selected_urls = ""
|
||||
-- For selected files, pass them directly to vidir
|
||||
local files = ""
|
||||
for _, v in pairs(selected_items) do
|
||||
selected_urls = selected_urls .. ya.quote(tostring(v))
|
||||
files = files .. ya.quote(tostring(v)) .. " "
|
||||
end
|
||||
ya.manager_emit("shell", { 'vidir "$@"', block = true, confirm = true })
|
||||
|
||||
ya.manager_emit("shell", { "vidir " .. files, block = true, confirm = true })
|
||||
else
|
||||
ya.manager_emit("rename", { hovered = false, cursor = "before_ext" })
|
||||
-- If no selection, use current directory (.)
|
||||
ya.manager_emit("shell", { "vidir .", block = true, confirm = true })
|
||||
end
|
||||
end,
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user