aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan2023-07-13 03:01:17 +0000
committerGitHub2023-07-13 03:01:17 +0000
commit0e0501c510148e7bfa99778c4d561c186c1155bb (patch)
treeeb6391d9405bade232c8be70d531285a1d455377
parente86bb64b63856d85808ff4d484413dc3398fdc9c (diff)
Fix piping to Helix on macOS (#5468)
-rw-r--r--Cargo.lock12
-rw-r--r--helix-term/Cargo.toml3
-rw-r--r--helix-term/src/application.rs5
3 files changed, 15 insertions, 5 deletions
diff --git a/Cargo.lock b/Cargo.lock
index 68d5727f..ebc8cd0a 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -263,6 +263,7 @@ checksum = "a84cda67535339806297f1b331d6dd6320470d2a0fe65381e79ee9e156dd3d13"
dependencies = [
"bitflags 1.3.2",
"crossterm_winapi",
+ "filedescriptor",
"futures-core",
"libc",
"mio",
@@ -428,6 +429,17 @@ dependencies = [
]
[[package]]
+name = "filedescriptor"
+version = "0.8.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7199d965852c3bac31f779ef99cbb4537f80e952e2d6aa0ffeb30cce00f4f46e"
+dependencies = [
+ "libc",
+ "thiserror",
+ "winapi",
+]
+
+[[package]]
name = "filetime"
version = "0.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/helix-term/Cargo.toml b/helix-term/Cargo.toml
index e3f561d3..3576f684 100644
--- a/helix-term/Cargo.toml
+++ b/helix-term/Cargo.toml
@@ -70,6 +70,9 @@ grep-searcher = "0.1.11"
signal-hook-tokio = { version = "0.3", features = ["futures-v0_3"] }
libc = "0.2.147"
+[target.'cfg(target_os = "macos")'.dependencies]
+crossterm = { version = "0.26", features = ["event-stream", "use-dev-tty"] }
+
[build-dependencies]
helix-loader = { version = "0.6", path = "../helix-loader" }
diff --git a/helix-term/src/application.rs b/helix-term/src/application.rs
index 546a57a9..b8950ae0 100644
--- a/helix-term/src/application.rs
+++ b/helix-term/src/application.rs
@@ -211,11 +211,6 @@ impl Application {
}
} else if stdin().is_tty() || cfg!(feature = "integration") {
editor.new_file(Action::VerticalSplit);
- } else if cfg!(target_os = "macos") {
- // On Linux and Windows, we allow the output of a command to be piped into the new buffer.
- // This doesn't currently work on macOS because of the following issue:
- // https://github.com/crossterm-rs/crossterm/issues/500
- anyhow::bail!("Piping into helix-term is currently not supported on macOS");
} else {
editor
.new_file_from_stdin(Action::VerticalSplit)