diff --git a/helix-view/src/clipboard.rs b/helix-view/src/clipboard.rs index d639902f..812c803e 100644 --- a/helix-view/src/clipboard.rs +++ b/helix-view/src/clipboard.rs @@ -73,9 +73,14 @@ pub fn get_clipboard_provider() -> Box { #[cfg(target_os = "macos")] pub fn get_clipboard_provider() -> Box { - use crate::env::binary_exists; + use crate::env::{binary_exists, env_var_is_set}; - if binary_exists("pbcopy") && binary_exists("pbpaste") { + if env_var_is_set("TMUX") && binary_exists("tmux") { + command_provider! { + paste => "tmux", "save-buffer", "-"; + copy => "tmux", "load-buffer", "-w", "-"; + } + } else if binary_exists("pbcopy") && binary_exists("pbpaste") { command_provider! { paste => "pbpaste"; copy => "pbcopy";