pub struct TerminalEscExits;Expand description
When true, pressing <Esc> inside Terminal-Insert exits
back to Normal-in-terminal (so :q, motions, and the rest
of the vim grammar are reachable without the <C-\><C-n>
chord). When false, <Esc> encodes to \x1b and goes
to the PTY — nested programs (vim, htop, less) keep their
own Esc semantics.
Default true: matches the table-stakes terminal UX of
modern editors (VS Code, Helix). Power users running vim
inside :terminal flip it off and use <C-\><C-n> to
exit (added by T2.c).
Implementations§
Source§impl TerminalEscExits
impl TerminalEscExits
Sourcepub fn build_spec() -> Option<bool>
pub fn build_spec() -> Option<bool>
Build the runtime spec for this declaration.
Used by the registry’s self-registration boot
path; not generally called by hand. Direct
construction of Option<T> is the macro’s
internal-only path – consumer code uses
config.get_typed::<#name_ident>() to read
and config.set_typed::<#name_ident>(...) to
write.
Trait Implementations§
Source§impl HasGroup for TerminalEscExits
impl HasGroup for TerminalEscExits
Source§const GROUP_NAME: &'static str = <crate::Terminal as ::lattice_config::OptionGroup>::NAME
const GROUP_NAME: &'static str = <crate::Terminal as ::lattice_config::OptionGroup>::NAME
"editor", "lsp", …). The macro
pulls this from the group = SomeGroup; directive at the
declaration block’s head.Source§impl OptionDecl for TerminalEscExits
impl OptionDecl for TerminalEscExits
Source§const NAME: &'static str = TerminalEscExits
const NAME: &'static str = TerminalEscExits
:set <NAME>=…,
TOML keys, completion candidates, :describe-option.
Internal access is type-driven. The macro derives this
from the option’s identifier (with namespace prefix when
declared via mode_options!); manually-typed NAMEs are
not supported for built-in options.Source§const DOC: &'static str = TerminalEscExits
const DOC: &'static str = TerminalEscExits
:describe-option, the :customize
form’s per-row help, and :apropos results.Source§const CUSTOMIZABLE: bool = true
const CUSTOMIZABLE: bool = true
true (the default) ⇒ option
appears in :set autocomplete + the :customize group
view. false ⇒ plugin / engine-internal state, hidden
from user surfaces. Equivalent of emacs’s defvar vs
defcustom. (See mode-architecture.md §6.5.3.)Source§fn default_value() -> Self::Value
fn default_value() -> Self::Value
const) so non-const-constructible types like String
can be defaults.