diff options
| author | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2025-09-13 17:14:51 +0900 |
|---|---|---|
| committer | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2025-09-13 17:14:51 +0900 |
| commit | a3ed0a3cb36d192c37e040d0dfe57c42113f2161 (patch) | |
| tree | c216d680c4bfbe2e53232af1496c9655e347d79b /mac/.config/yazi/plugins/smart-enter.yazi | |
| parent | 2e6d3671d0e01ff5751893075e7fc5c53b288f95 (diff) | |
updates
Diffstat (limited to 'mac/.config/yazi/plugins/smart-enter.yazi')
| -rw-r--r-- | mac/.config/yazi/plugins/smart-enter.yazi/README.md | 40 | ||||
| -rw-r--r-- | mac/.config/yazi/plugins/smart-enter.yazi/main.lua | 11 |
2 files changed, 51 insertions, 0 deletions
diff --git a/mac/.config/yazi/plugins/smart-enter.yazi/README.md b/mac/.config/yazi/plugins/smart-enter.yazi/README.md new file mode 100644 index 0000000..742f2e1 --- /dev/null +++ b/mac/.config/yazi/plugins/smart-enter.yazi/README.md @@ -0,0 +1,40 @@ +# smart-enter.yazi + +[`Open`][open] files or [`enter`][enter] directories all in one key! + +## Installation + +```sh +ya pkg add yazi-rs/plugins:smart-enter +``` + +## Usage + +Bind your <kbd>l</kbd> key to the plugin, in your `~/.config/yazi/keymap.toml`: + +```toml +[[mgr.prepend_keymap]] +on = "l" +run = "plugin smart-enter" +desc = "Enter the child directory, or open the file" +``` + +## Advanced + +By default, `--hovered` is passed to the [`open`][open] command, make the behavior consistent with [`enter`][enter] avoiding accidental triggers, +which means both will only target the currently hovered file. + +If you still want `open` to target multiple selected files, add this to your `~/.config/yazi/init.lua`: + +```lua +require("smart-enter"):setup { + open_multi = true, +} +``` + +## License + +This plugin is MIT-licensed. For more information check the [LICENSE](LICENSE) file. + +[open]: https://yazi-rs.github.io/docs/configuration/keymap/#mgr.open +[enter]: https://yazi-rs.github.io/docs/configuration/keymap/#mgr.enter diff --git a/mac/.config/yazi/plugins/smart-enter.yazi/main.lua b/mac/.config/yazi/plugins/smart-enter.yazi/main.lua new file mode 100644 index 0000000..e9e2ec6 --- /dev/null +++ b/mac/.config/yazi/plugins/smart-enter.yazi/main.lua @@ -0,0 +1,11 @@ +--- @since 25.5.31 +--- @sync entry + +local function setup(self, opts) self.open_multi = opts.open_multi end + +local function entry(self) + local h = cx.active.current.hovered + ya.emit(h and h.cha.is_dir and "enter" or "open", { hovered = not self.open_multi }) +end + +return { entry = entry, setup = setup } |
