6个版本 (1个稳定版本)
1.0.0 | 2023年10月4日 |
---|---|
0.1.5 | 2022年9月13日 |
0.1.4 | 2022年5月12日 |
0.1.3 | 2020年1月4日 |
0.1.1 | 2019年8月17日 |
在 Unix API 中排名 228
每月下载 72 次
30KB
647 代码行
rot8
使用内置加速度计自动旋转显示
自动旋转现代Linux桌面屏幕和输入设备。适用于HP Spectre x360、Lenovo IdeaPad Flex等可转换触摸屏笔记本电脑,以及Pinephone等Linux手机。
与支持 wlr_output_management_v1
协议的X11和Wayland合成器兼容(如 sway 和 hyprland)。
安装
软件包
可在以下位置获取
Arch用户仓库: rot8-git
Void软件包: rot8
Nixpkgs: rot8
手动从源码构建
构建二进制文件需要Rust语言和cargo软件包管理器。
$ git clone https://github.com/efernau/rot8
$ cd rot8 && cargo build --release
$ cp target/release/rot8 /usr/bin/rot8
或者
$ cargo install rot8
使用方法
根据需要将输入映射到输出设备。例如,对于sway
$ swaymsg input <INPUTDEVICE> map_to_output <OUTPUTDEVICE>
从您的合成器配置中调用rot8。例如,对于sway
exec rot8
对于X11设置触摸屏设备
rot8 --touchscreen <TOUCHSCREEN>
这将会启动运行中的守护进程,持续检查旋转。
以下是一些参数(默认值)
--sleep // Set millis to sleep between rotation checks (500)
--display // Set Display Device (eDP-1)
--touchscreen // Set Touchscreen Device X11, allows multiple devices (ELAN0732:00 04F3:22E1)
--keyboard // Set keyboard to deactivate upon rotation, for Sway only
--threshold // Set a rotation threshold between 0 and 1, higher is more sensitive (0.5)
--normalization-factor // Set factor for sensor value normalization (1e6)
--invert-x // Invert readings from the HW x axis
--invert-y // Invert readings from the HW y axis
--invert-z // Invert readings from the HW z axis
--oneshot // Updates the screen rotation just once instead of continuously
--beforehooks // Execute a custom script before rotation
--hooks // Execute a custom script after the rotation has finished
--version // Returns the rot8 version
您可能需要调整归一化因子(尝试10的倍数)和轴反转,以便正确计算加速度计读数。
依赖项
~8–18MB
~246K SLoC