#parser #output #filter #query #interface #methods #xrandr

xrandr-parser

XRandR-Parser 是将 xrandr --query 的输出解析为 Rust 结构体并通过方法过滤的接口。

3 个版本 (破坏性)

0.3.0 2022年7月11日
0.2.0 2022年7月11日
0.1.0 2022年7月8日

#5 in #xrandr

每月下载量 27

GPL-3.0 或更高版本

38KB
340

XRandR-Parser

XRandR-Parser 是将 xrandr --query 的输出解析为 Rust 结构体并通过方法过滤的接口。

测试

$ EXAMPLE_DIR=$(pwd)/examples cargo test --doc --features "test"

许可协议

本项目的所有文件均按照 GNU GPLv3 或更高版本许可协议分发。


lib.rs:

XRandR-Parser

XRandR-Parser 是将 xrandr --query 的输出解析为 Rust 结构体并通过方法过滤的接口。

示例

获取 HDMI-1 的可用分辨率以及 HDMI-1 @ 1920 x 1080 的可用刷新率。

#[allow(non_snake_case)]

use xrandr_parser::Parser;

fn main() -> Result<(), String> {
    let mut XrandrParser = Parser::new();

    XrandrParser.parse()?;

    let connector = &XrandrParser.get_connector("HDMI-1")?;

    let available_resolutions = &connector.available_resolutions_pretty()?;
    let available_refresh_rates = &connector.available_refresh_rates("1920x1080")?;

    println!(
        "Available Resolutions for HDMI-1: {:#?}",
        available_resolutions
    );
    println!(
        "Available Refresh Rates for HDMI-1 @ 1920x1080: {:#?}",
        available_refresh_rates
    );
    Ok(())
}

依赖关系

~0.7–1.3MB
~29K SLoC