#tool #thinkpad #laptop #keyboard #auto #linux #toggle

app tp-auto-kbbl

为 ThinkPad(以及可能的其他笔记本电脑)的 Linux 系统自动切换键盘背光

2 个版本

0.1.5 2020 年 10 月 4 日
0.1.4 2020 年 6 月 10 日

#9 in #laptop

MIT 许可证

16KB
258

⌨️💡 tp-auto-kbbl

ThinkPad 自动键盘背光

tp-auto-kbbl 在您开始输入时启用键盘背光。输入结束后(+超时),背光将自动关闭。它在您的 Linux 笔记本电脑后台运行,并检查键盘事件(默认 /dev/input/event3)。

它应该在任何 ThinkPad(已在 470s 上测试过)以及其他笔记本电脑上也能工作。如果它在您的设备上运行,请告诉我。

为了保持 CPU/RAM 使用率低且便携性高,我使用了 Rust 进行开发。这是我第一个 Rust 项目,所以如果您发现任何奇怪的地方——或者完全是错误的——请告诉我!对于任何建议都表示感谢。

警告

tp-auto-kbbl 与键盘记录器类似(需要 root 权限来捕获系统范围的键盘事件)。请务必检查源代码。

用法

Usage: tp-auto-kbbl [options]

Options:
    -h, --help          prints this help message
    -v, --version       prints the version
    -n, --no-dim        don't dim before bg turns off
    -l, --lazy          don't check actual hw brightness state
    -d, --device        specify the device file
    -b, --brightness    target keyboard brightness (1-2)
    -t, --timeout       time before the bg light turns off

安装

下载最新的 版本,或克隆并自行构建。

复制二进制文件

sudo cp tp-auto-kbbl /usr/bin/

试用

tp-auto-kbbl

# You'll probably get an error like this
thread 'main' panicked at 'Permission denied (os error 13)', src/main.rs:44:74

# Once more as root
sudo tp-auto-kbbl

Input device ID: bus 0x11 vendor 0x1 product 0x1
Evdev version: 10001
Input device name: "AT Translated Set 2 keyboard"
Phys location: isa0060/serio0/input0
Setting brightness to 0

您的背光应立即关闭。尝试按任何按钮看是否打开。如果不行,请检查输入设备是否正确,您可能需要通过 -d 参数进行调整。

Systemd 服务

# Copy the [unit file](https://raw.githubusercontent.com/saibotd/tp-auto-kbbl/master/tp-auto-kbbl.service)
sudo cp tp-auto-kbbl.service /etc/systemd/system/

# (optional) Check if the parameters are correct
sudo nano /etc/systemd/system/tp-auto-kbbl.service

# Reload daemons
sudo systemctl daemon-reload

# Start the service
sudo systemctl start tp-auto-kbbl

# Check if the service runs fine
sudo systemctl status tp-auto-kbbl

Mär 04 14:02:06 Huffer systemd[1]: Started Auto toggle keyboard back-lighting.
Mär 04 14:02:06 Huffer tp-auto-kbbl[343]: Input device ID: bus 0x11 vendor 0x1 p
Mär 04 14:02:06 Huffer tp-auto-kbbl[343]: Evdev version: 10001
Mär 04 14:02:06 Huffer tp-auto-kbbl[343]: Input device name: "AT Translated Set
Mär 04 14:02:06 Huffer tp-auto-kbbl[343]: Phys location: isa0060/serio0/input0
Mär 04 14:02:07 Huffer tp-auto-kbbl[343]: Setting brightness to 0
Mär 04 14:02:09 Huffer tp-auto-kbbl[343]: Setting brightness to 2
Mär 04 14:02:25 Huffer tp-auto-kbbl[343]: Setting brightness to 0

# Finally enable the service
sudo systemctl enable tp-auto-kbbl

版权所有 © 2020 Tobias Duehr

依赖项

~7.5MB
~167K SLoC