From 220b99a9fabf10fad83a570f641ad39737d85875 Mon Sep 17 00:00:00 2001 From: Ogulcan Celik Date: Sun, 5 Jul 2026 20:18:24 +0300 Subject: fix: support custom command keybindings on windows refs #1041 --- src/platform/fallback.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/platform/fallback.rs') diff --git a/src/platform/fallback.rs b/src/platform/fallback.rs index e9134a8b..382ccf5e 100644 --- a/src/platform/fallback.rs +++ b/src/platform/fallback.rs @@ -6,6 +6,23 @@ use super::{ClipboardImage, ForegroundJob, Signal}; /// Unsupported platform stub. pub fn raise_server_nofile_limit() {} +fn raw_command_argv(command: &str, flag: &str) -> Vec { + vec!["/bin/sh".into(), flag.into(), command.into()] +} + +pub(crate) fn detached_custom_command_process_platform(command: &str) -> std::process::Command { + let argv = raw_command_argv(command, "-lc"); + let mut command = std::process::Command::new(&argv[0]); + command.args(&argv[1..]); + command +} + +pub(crate) fn pane_custom_command_pty_builder_platform( + command: &str, +) -> portable_pty::CommandBuilder { + portable_pty::CommandBuilder::from_argv(raw_command_argv(command, "-c")) +} + /// Unsupported platform stub. pub(crate) fn scrollback_editor_argv(_path: &std::path::Path) -> std::io::Result> { Err(std::io::Error::new( -- cgit v1.2.3