pub struct NoFile;Expand description
Whether the buffer is NOT backed by an on-disk file the
editor can save and should track for unsaved changes.
false (the default) means :q warns on dirty, :w
writes to disk, and the modeline shows [+] for modified
state. true (vim’s &buftype = nofile) means the buffer
is a transcript / log / overlay whose content is owned by a
subsystem; the dirty guard skips it and :w is a no-op.
customizable = false — modes contribute
the override (messages-mode, lsp-log-mode, help-mode,
terminal-mode set NoFile = true); users don’t :set
it directly.
Implementations§
Source§impl NoFile
impl NoFile
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 NoFile
impl HasGroup for NoFile
Source§const GROUP_NAME: &'static str = <crate::Editor as ::lattice_config::OptionGroup>::NAME
const GROUP_NAME: &'static str = <crate::Editor 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 NoFile
impl OptionDecl for NoFile
Source§const NAME: &'static str = NoFile
const NAME: &'static str = NoFile
: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 = NoFile
const DOC: &'static str = NoFile
:describe-option, the :customize
form’s per-row help, and :apropos results.Source§const CUSTOMIZABLE: bool = false
const CUSTOMIZABLE: bool = false
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.