8个版本

0.1.7 2023年8月11日
0.1.6 2023年8月6日
0.1.1 2023年7月28日

#6 in #desktop-environment

Download history

每月54次下载

MIT/Apache

19KB
425 代码行

term-detect

终端模拟器检测器

实现细节

它使用3种方法工作。

  1. TERMINAL环境变量
    通过读取TERMINAL环境变量来检测终端。
  2. DE(桌面环境)特定检查
    通过检查DE特定配置文件来检测终端。
  3. $PATH搜索
    如果在$PATH中找到终端,则从列表中选取终端。

示例

在一个终端窗口中以私有模式运行fish。命令结束时不要关闭窗口。

use std::process::Command;
use term_detect::{DetectionError, InTerminalAuto};

fn main() -> Result<(), DetectionError> {
    let child = Command::new("fish")
        .arg("--private")
        // Konsole-specific flag
        .in_terminal_args(["--noclose"])?
        .spawn()?
        .wait()?;
    Ok(())
}

依赖关系

~0.4–0.9MB
~19K SLoC