@@ -771,6 +771,26 @@ fn hsplit(
771771 Ok(())
772772}
773773
774+fn vsplit_new(
775+ cx: &mut compositor::Context,
776+ _args: &[Cow<str>],
777+ _event: PromptEvent,
778+) -> anyhow::Result<()> {
779+ cx.editor.new_file(Action::VerticalSplit);
780+
781+ Ok(())
782+}
783+
784+fn hsplit_new(
785+ cx: &mut compositor::Context,
786+ _args: &[Cow<str>],
787+ _event: PromptEvent,
788+) -> anyhow::Result<()> {
789+ cx.editor.new_file(Action::HorizontalSplit);
790+
791+ Ok(())
792+}
793+
774794fn debug_eval(
775795 cx: &mut compositor::Context,
776796 args: &[Cow<str>],
@@ -1293,6 +1313,13 @@ pub const TYPABLE_COMMAND_LIST: &[TypableCommand] = &[
12931313 fun: vsplit,
12941314 completer: Some(completers::filename),
12951315 },
1316+ TypableCommand {
1317+ name: "vsplit-new",
1318+ aliases: &["vnew"],
1319+ doc: "Open a scratch buffer in a vertical split.",
1320+ fun: vsplit_new,
1321+ completer: None,
1322+ },
12961323 TypableCommand {
12971324 name: "hsplit",
12981325 aliases: &["hs", "sp"],
@@ -1300,6 +1327,13 @@ pub const TYPABLE_COMMAND_LIST: &[TypableCommand] = &[
13001327 fun: hsplit,
13011328 completer: Some(completers::filename),
13021329 },
1330+ TypableCommand {
1331+ name: "hsplit-new",
1332+ aliases: &["hnew"],
1333+ doc: "Open a scratch buffer in a horizontal split.",
1334+ fun: hsplit_new,
1335+ completer: None,
1336+ },
13031337 TypableCommand {
13041338 name: "tutor",
13051339 aliases: &[],