mirror of
https://github.com/sxyazi/yazi.git
synced 2026-07-21 23:01:05 +00:00
fix: set orphan=true for xdg-open to work around its odd behavior with programs that are both CLI/GUI (#3581)
This commit is contained in:
parent
756964b10a
commit
a38a5e6377
7 changed files with 25 additions and 24 deletions
28
Cargo.lock
generated
28
Cargo.lock
generated
|
|
@ -541,9 +541,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "cc"
|
||||
version = "1.2.52"
|
||||
version = "1.2.53"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cd4932aefd12402b36c60956a4fe0035421f544799057659ff86f923657aada3"
|
||||
checksum = "755d2fce177175ffca841e9a06afdb2c4ab0f593d53b4dee48147dfaade85932"
|
||||
dependencies = [
|
||||
"find-msvc-tools",
|
||||
"jobserver",
|
||||
|
|
@ -677,9 +677,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "cmov"
|
||||
version = "0.4.5"
|
||||
version = "0.5.0-pre.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b1339d398d44e506d9b72c1af2f6f51a41c9c64f9a0738eb9aedede47ed1f683"
|
||||
checksum = "5417da527aa9bf6a1e10a781231effd1edd3ee82f27d5f8529ac9b279babce96"
|
||||
|
||||
[[package]]
|
||||
name = "color_quant"
|
||||
|
|
@ -958,9 +958,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "ctutils"
|
||||
version = "0.3.1"
|
||||
version = "0.3.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7c67c81499f542d1dd38c6a2a2fe825f4dd4bca5162965dd2eea0c8119873d3c"
|
||||
checksum = "758e5ed90be3c8abff7f9a6f37ab7f6d8c59c2210d448b81f3f508134aec84e4"
|
||||
dependencies = [
|
||||
"cmov",
|
||||
]
|
||||
|
|
@ -1503,9 +1503,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "find-msvc-tools"
|
||||
version = "0.1.7"
|
||||
version = "0.1.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f449e6c6c08c865631d4890cfacf252b3d396c9bcc83adb6623cdb02a8336c41"
|
||||
checksum = "8591b0bcc8a98a64310a2fae1bb3e9b8564dd10e381e6e28010fde8e8e8568db"
|
||||
|
||||
[[package]]
|
||||
name = "finl_unicode"
|
||||
|
|
@ -4764,9 +4764,9 @@ checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65"
|
|||
|
||||
[[package]]
|
||||
name = "vergen"
|
||||
version = "9.0.6"
|
||||
version = "9.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6b2bf58be11fc9414104c6d3a2e464163db5ef74b12296bda593cac37b6e4777"
|
||||
checksum = "b849a1f6d8639e8de261e81ee0fc881e3e3620db1af9f2e0da015d4382ceaf75"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"derive_builder",
|
||||
|
|
@ -4778,9 +4778,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "vergen-gitcl"
|
||||
version = "1.0.8"
|
||||
version = "9.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b9dfc1de6eb2e08a4ddf152f1b179529638bedc0ea95e6d667c014506377aefe"
|
||||
checksum = "77ff3b5300a085d6bcd8fc96a507f706a28ae3814693236c9b409db71a1d15b9"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"derive_builder",
|
||||
|
|
@ -4792,9 +4792,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "vergen-lib"
|
||||
version = "0.1.6"
|
||||
version = "9.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166"
|
||||
checksum = "b34a29ba7e9c59e62f229ae1932fb1b8fb8a6fdcc99215a641913f5f5a59a569"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"derive_builder",
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
use std::{io::Write, path::PathBuf, process::Stdio};
|
||||
|
||||
use ansi_to_tui::IntoText;
|
||||
use anyhow::{Result, bail};
|
||||
use anyhow::{Result, anyhow, bail};
|
||||
use crossterm::{cursor::MoveTo, queue};
|
||||
use ratatui::layout::Rect;
|
||||
use tokio::process::Command;
|
||||
|
|
@ -32,7 +32,8 @@ impl Chafa {
|
|||
.stdout(Stdio::piped())
|
||||
.stderr(Stdio::null())
|
||||
.kill_on_drop(true)
|
||||
.spawn()?;
|
||||
.spawn()
|
||||
.map_err(|e| anyhow!("failed to spawn chafa: {e}"))?;
|
||||
|
||||
let output = child.wait_with_output().await?;
|
||||
if !output.status.success() {
|
||||
|
|
|
|||
|
|
@ -33,4 +33,4 @@ clap = { workspace = true }
|
|||
clap_complete = "4.5.65"
|
||||
clap_complete_fig = "4.5.2"
|
||||
clap_complete_nushell = "4.5.10"
|
||||
vergen-gitcl = { version = "1.0.8", features = [ "build", "rustc" ] }
|
||||
vergen-gitcl = { version = "9.1.0", features = [ "build", "rustc" ] }
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ clap_complete = "4.5.65"
|
|||
clap_complete_fig = "4.5.2"
|
||||
clap_complete_nushell = "4.5.10"
|
||||
serde_json = { workspace = true }
|
||||
vergen-gitcl = { version = "1.0.8", features = [ "build" ] }
|
||||
vergen-gitcl = { version = "9.1.0", features = [ "build" ] }
|
||||
|
||||
[target.'cfg(target_os = "macos")'.dependencies]
|
||||
crossterm = { workspace = true, features = [ "use-dev-tty", "libc" ] }
|
||||
|
|
|
|||
|
|
@ -35,10 +35,10 @@ edit = [
|
|||
{ run = "code -w %s", desc = "code (block)", for = "windows", block = true },
|
||||
]
|
||||
play = [
|
||||
{ run = "xdg-open %s1", desc = "Play", for = "linux" },
|
||||
{ run = "open %s", desc = "Play", for = "macos" },
|
||||
{ run = 'start "" %s1', orphan = true, desc = "Play", for = "windows" },
|
||||
{ run = "termux-open %s1", desc = "Play", for = "android" },
|
||||
{ run = "xdg-open %s1", desc = "Play", for = "linux", orphan = true },
|
||||
{ run = "open %s", desc = "Play", for = "macos" },
|
||||
{ run = 'start "" %s1', desc = "Play", for = "windows", orphan = true },
|
||||
{ run = "termux-open %s1", desc = "Play", for = "android" },
|
||||
{ run = "mediainfo %s1; echo 'Press enter to exit'; read _", block = true, desc = "Show media info", for = "unix" },
|
||||
{ run = "mediainfo %s1 & pause", block = true, desc = "Show media info", for = "windows" },
|
||||
]
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ tokio-stream = { workspace = true }
|
|||
tracing = { workspace = true }
|
||||
|
||||
[build-dependencies]
|
||||
vergen-gitcl = { version = "1.0.8", features = [ "build" ] }
|
||||
vergen-gitcl = { version = "9.1.0", features = [ "build" ] }
|
||||
|
||||
[target."cfg(unix)".dependencies]
|
||||
uzers = { workspace = true }
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ function Tabs:click(event, up)
|
|||
if up or event.is_middle then
|
||||
return
|
||||
end
|
||||
for i = #self._offsets, 1, -1 do
|
||||
for i = #cx.tabs, 1, -1 do
|
||||
if event.x >= self._offsets[i] then
|
||||
ya.emit("tab_switch", { i - 1 })
|
||||
break
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue