pub enum Action {
Show 45 variants
Down,
Up,
Top,
Bottom,
ToggleSidebar,
ToggleSidebarMode,
CycleSidebarLayout,
ToggleSidebarPosition,
FocusSwap,
FocusWorktrees,
FocusStatus,
Filter,
Refresh,
Sync,
Create,
DeleteConfirm,
Bootstrap,
ToggleDeleteBranch,
Pull,
Push,
EditWorktree,
ExitToWorktree,
LazyGitPty,
LazyGitFullscreen,
ReviewFullscreen,
ReviewPty,
YankPath,
YankBranchName,
YankWorktreeName,
TerminalPty,
TerminalFullscreen,
BrowseLinks,
OpenDocs,
LinkPrompt,
FetchGithub,
MuxPane,
Macro1,
Macro2,
CommandLogs,
ConfigPanel,
ExecOverlay,
CleanOverlay,
Help,
Quit,
CommandPalette,
}Expand description
Every user-rebindable verb the TUI exposes.
Variants whose semantics depend on the active view (Enter,
Esc, Ctrl+C) are deliberately not listed — see the
module-level “Hard-coded escape hatches” note for why.
Variants§
Down
Up
Top
Bottom
ToggleSidebar
ToggleSidebarMode
CycleSidebarLayout
ToggleSidebarPosition
FocusSwap
FocusWorktrees
FocusStatus
Filter
Refresh
Sync
Create
DeleteConfirm
Bootstrap
ToggleDeleteBranch
Pull
Push
EditWorktree
ExitToWorktree
LazyGitPty
LazyGitFullscreen
ReviewFullscreen
ReviewPty
YankPath
YankBranchName
YankWorktreeName
TerminalPty
TerminalFullscreen
BrowseLinks
OpenDocs
LinkPrompt
FetchGithub
MuxPane
Macro1
Macro2
CommandLogs
ConfigPanel
ExecOverlay
CleanOverlay
Help
Quit
CommandPalette
Implementations§
Source§impl Action
impl Action
Sourcepub fn slug(self) -> &'static str
pub fn slug(self) -> &'static str
Stable string slug used in [tui.keys], gwm tui keys, and
any future docs generator. Lowercase + underscores; never
renamed in a backwards-incompatible way without a deprecation
alias.
Sourcepub fn from_slug(s: &str) -> Option<Self>
pub fn from_slug(s: &str) -> Option<Self>
Inverse of Action::slug. Used by the config loader to
translate .gwm.toml keys into typed actions.
Source§impl Action
impl Action
Sourcepub fn from_slug_compat(s: &str) -> Option<Self>
pub fn from_slug_compat(s: &str) -> Option<Self>
Like Action::from_slug but also accepts the pre-#290 slugs that were
renamed. Use this in config deserialization so existing .gwm.toml files
with the old key names keep working after the upgrade.
The canonical slug is tried first; only on a miss do the compat aliases
fire. The aliases are intentionally one-way: Action::slug() still
returns the new canonical slug, so gwm tui keys and the help overlay
stay up-to-date.
Sourcepub fn is_repo_mutating(self) -> bool
pub fn is_repo_mutating(self) -> bool
Whether this action mutates a repo through the active repo context
(App.repo/workdir/config) rather than only the selected worktree’s
path. In workspace mode (#304) these are blocked while the selected row’s
repo can’t be activated, since they would otherwise target the previously
active repo. Navigation, yanks and read-only launchers are absent on
purpose — they don’t write through the active repo handle.
Sourcepub fn compat_alias_slugs(self) -> impl Iterator<Item = &'static str>
pub fn compat_alias_slugs(self) -> impl Iterator<Item = &'static str>
The pre-#290 alias slug(s) that resolve to this action, if any. Used by the in-TUI keymap editor (issue #294) to strip a stale alias from a legacy config when the canonical slug is (re)written — otherwise the alias, applied later in the sorted override walk, would silently shadow the new binding (Codex #297 review).
Trait Implementations§
impl Copy for Action
impl Eq for Action
impl StructuralPartialEq for Action
Auto Trait Implementations§
impl Freeze for Action
impl RefUnwindSafe for Action
impl Send for Action
impl Sync for Action
impl Unpin for Action
impl UnsafeUnpin for Action
impl UnwindSafe for Action
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more