start revive
This commit is contained in:
@@ -1,20 +0,0 @@
|
||||
{
|
||||
"up": ["up", "k"],
|
||||
"down": ["down", "j"],
|
||||
"left": ["left", "h"],
|
||||
"right": ["right", "l"],
|
||||
"cycle": ["tab"], // this will cycle no matter the depth/orientation
|
||||
"dive": ["return"],
|
||||
"out": ["esc"],
|
||||
"inverseModifier": ["shift"],
|
||||
"leader": ":", // will not trigger while focused on input
|
||||
"quit": ["<leader>q"],
|
||||
"refresh": ["<leader>r"],
|
||||
"audio-toggle": ["<leader>p"],
|
||||
"audio-pause": [],
|
||||
"audio-play": [],
|
||||
"audio-next": ["<leader>n"],
|
||||
"audio-prev": ["<leader>l"],
|
||||
"audio-seek-forward": ["<leader>sf"],
|
||||
"audio-seek-backward": ["<leader>sb"],
|
||||
}
|
||||
73
src/config/keybinds.jsonc
Normal file
73
src/config/keybinds.jsonc
Normal file
@@ -0,0 +1,73 @@
|
||||
{
|
||||
// ── Yazi-style keybinds for PodTui ──────────────────────────────────────
|
||||
// Notation:
|
||||
// "j" single lowercase key
|
||||
// "G" shift + g (uppercase letter = shift)
|
||||
// "ctrl-d" ctrl modifier
|
||||
// "shift-j" shift modifier (equivalent to "J")
|
||||
// "meta-x" alt/meta modifier (macOS users: map Option to Alt)
|
||||
// ["g","g"] a two-key sequence (matches only when pressed in order)
|
||||
// "return" special key (also: escape tab space backspace up down left right)
|
||||
//
|
||||
// Yazi heritage: j/k move, h/l swipe between panes, Enter open, Space select,
|
||||
// v visual mode, gg/G top/bottom, [ ] switch tabs, 1-6 goto tab,
|
||||
// : command bar, q quit, ~ help. Audio transport kept on shifted keys / ctrl.
|
||||
|
||||
// ── Movement (within a pane) ─────────────────────────────────────────────
|
||||
"move-down": ["j", "down"],
|
||||
"move-up": ["k", "up"],
|
||||
"page-down": ["ctrl-d"],
|
||||
"page-up": ["ctrl-u"],
|
||||
"full-down": ["ctrl-f"],
|
||||
"full-up": ["ctrl-b"],
|
||||
"jump-down": ["J"], // 5 lines down (shift+j)
|
||||
"jump-up": ["K"], // 5 lines up (shift+k)
|
||||
"goto-top": [["g", "g"]],
|
||||
"goto-bottom": ["G"],
|
||||
|
||||
// ── Pane focus / swipe (yazi h/l) ────────────────────────────────────────
|
||||
"swipe-prev": ["h", "left"], // focus left pane (parent)
|
||||
"swipe-next": ["l", "right"], // focus right pane (preview)
|
||||
|
||||
// ── Open / activate ──────────────────────────────────────────────────────
|
||||
"open": ["return", "enter"],
|
||||
"open-interactive": ["shift-return"],
|
||||
|
||||
// ── Selection & visual mode ──────────────────────────────────────────────
|
||||
"toggle-select": ["space"],
|
||||
"visual-mode": ["v"],
|
||||
"toggle-all": ["ctrl-a"],
|
||||
"invert-all": ["ctrl-r"],
|
||||
"escape": ["escape", "ctrl-["],
|
||||
|
||||
// ── Tabs ──────────────────────────────────────────────────────────────────
|
||||
"tab-prev": ["["],
|
||||
"tab-next": ["]"],
|
||||
"tab-goto-1": ["1"],
|
||||
"tab-goto-2": ["2"],
|
||||
"tab-goto-3": ["3"],
|
||||
"tab-goto-4": ["4"],
|
||||
"tab-goto-5": ["5"],
|
||||
"tab-goto-6": ["6"],
|
||||
|
||||
// ── Command bar & help & quit ────────────────────────────────────────────
|
||||
"command": [":"],
|
||||
"quit": ["q", "ctrl-c"],
|
||||
"help": ["~", "f1"],
|
||||
|
||||
// ── List operations (yazi: s search, f filter, , sort, . hidden, r refresh)
|
||||
"search": ["s"],
|
||||
"filter": ["f"],
|
||||
"sort": [","],
|
||||
"toggle-hidden": ["."],
|
||||
"refresh": ["r"],
|
||||
|
||||
// ── Audio transport (preserved) ──────────────────────────────────────────
|
||||
// Kept on shifted single keys so they never collide with the yazi core
|
||||
// (space=select, s=search, f=filter, etc.). Edit freely in this file.
|
||||
"audio-toggle": ["P"], // play / pause (shift+p)
|
||||
"audio-next": ["N"], // next episode (shift+n)
|
||||
"audio-prev": ["B"], // prev episode (shift+b)
|
||||
"audio-seek-forward": ["shift-."], // seek forward (shift+.)
|
||||
"audio-seek-backward": ["shift-,"] // seek backward (shift+,)
|
||||
}
|
||||
@@ -1,6 +1,26 @@
|
||||
/**
|
||||
* Yazi-style keybind reference (mirrors src/config/keybinds.jsonc).
|
||||
* Shown in help overlays; the canonical source remains keybinds.jsonc.
|
||||
* Edit that file (or ~/.config/podtui/keybinds.jsonc) to remap.
|
||||
*/
|
||||
export const shortcuts = [
|
||||
{ keys: "Ctrl+Q", action: "Quit" },
|
||||
{ keys: "Ctrl+S", action: "Save" },
|
||||
{ keys: "Left/Right", action: "Switch tabs" },
|
||||
{ keys: "Esc", action: "Close modal" },
|
||||
] as const
|
||||
{ keys: "j / k", action: "Move down / up (within pane)" },
|
||||
{ keys: "h / l", action: "Swipe to prev / next pane" },
|
||||
{ keys: "J / K", action: "Jump 5 lines down / up" },
|
||||
{ keys: "ctrl-d / u", action: "Half page down / up" },
|
||||
{ keys: "g g / G", action: "Go to top / bottom of list" },
|
||||
{ keys: "1-6", action: "Go to tab 1-6" },
|
||||
{ keys: "[ / ]", action: "Previous / next tab" },
|
||||
{ keys: "Enter", action: "Open / activate focused item" },
|
||||
{ keys: "Space", action: "Toggle selection on item" },
|
||||
{ keys: "v", action: "Enter visual (range) select mode" },
|
||||
{ keys: "ctrl-a / ctrl-r", action: "Select all / invert selection" },
|
||||
{ keys: "Esc", action: "Clear selection / exit visual / cancel" },
|
||||
{ keys: ":", action: "Open command bar (:quit :refresh :play …)" },
|
||||
{ keys: "r / s / f", action: "Refresh / search / filter" },
|
||||
{ keys: ", / .", action: "Sort / toggle hidden" },
|
||||
{ keys: "P / N / B", action: "Play-pause / next / prev episode" },
|
||||
{ keys: "< / >", action: "Seek backward / forward 10s" },
|
||||
{ keys: "~ / F1", action: "Help" },
|
||||
{ keys: "q", action: "Quit" },
|
||||
] as const;
|
||||
|
||||
Reference in New Issue
Block a user