diff options
author | Ryan Fowler | 2023-07-09 14:38:50 +0000 |
---|---|---|
committer | GitHub | 2023-07-09 14:38:50 +0000 |
commit | 828c7432e363c46cd9202cdb973a67f0421d2c0f (patch) | |
tree | 328283d9b4c71f3f086bb756dac8381c2949e6bb /helix-term/src | |
parent | 1698992de6a601e65a0598ed132cab5419f7e578 (diff) |
Implement the wa! command (#7577)
Diffstat (limited to 'helix-term/src')
-rw-r--r-- | helix-term/src/commands/typed.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/helix-term/src/commands/typed.rs b/helix-term/src/commands/typed.rs index 5198e5bd..94cc33f0 100644 --- a/helix-term/src/commands/typed.rs +++ b/helix-term/src/commands/typed.rs @@ -739,6 +739,18 @@ fn write_all( write_all_impl(cx, false, true) } +fn force_write_all( + cx: &mut compositor::Context, + _args: &[Cow<str>], + event: PromptEvent, +) -> anyhow::Result<()> { + if event != PromptEvent::Validate { + return Ok(()); + } + + write_all_impl(cx, true, true) +} + fn write_all_quit( cx: &mut compositor::Context, _args: &[Cow<str>], @@ -2445,6 +2457,13 @@ pub const TYPABLE_COMMAND_LIST: &[TypableCommand] = &[ signature: CommandSignature::none(), }, TypableCommand { + name: "write-all!", + aliases: &["wa!"], + doc: "Forcefully write changes from all buffers to disk creating necessary subdirectories.", + fun: force_write_all, + signature: CommandSignature::none(), + }, + TypableCommand { name: "write-quit-all", aliases: &["wqa", "xa"], doc: "Write changes from all buffers to disk and close all views.", |