#窗口管理器 #窗口 #i3 #管理器 #wm

app wmfocus

通过标签视觉聚焦窗口

13个稳定版本

1.5.0 2024年1月1日
1.4.0 2023年1月22日
1.3.0 2021年10月22日
1.2.0 2021年7月11日
1.0.2 2018年9月27日

#72GUI

Download history 2/week @ 2024-03-15 42/week @ 2024-03-29 4/week @ 2024-04-19 48/week @ 2024-04-26

每月 56 次下载

MIT 许可协议

110KB
924

wmfocus - 通过标签视觉聚焦窗口

CI Crates.io license Stars Lines of Code

这个工具允许您快速选择特定的窗口,而无需使用鼠标或方向键导航。

Screen cast

由于使用了cairo,它应该可以在各种屏幕上工作,并自动根据您的DPI显示正确的尺寸。

安装

Packaging status

在Arch Linux上: pacman -S wmfocus

使用Cargo: cargo install --features i3 wmfocus

用法

在所有窗口的左上角绘制标签

wmfocus

完全填充窗口并在中间绘制标签(尝试使用透明度!)

wmfocus --fill

使用不同的字体(由fontconfig提供)

wmfocus -f "Droid Sans":100

更改默认颜色

wmfocus --textcolor red --textcoloralt "#eeeeee" --bgcolor "rgba(50, 50, 200, 0.5)"

wmfocus将使用合成器来实现真正的透明度。

完整帮助

wmfocus 1.5.0

Sven-Hendrik Haase <svenstaro@gmail.com>

Visually focus windows by label

USAGE:
    wmfocus [OPTIONS]

OPTIONS:
        --textcolor <TEXT_COLOR>                          Text color (CSS notation) [default: #dddddd]
        --textcoloralt <TEXT_COLOR_ALT>                   Text color alternate (CSS notation) [default: #666666]
        --bgcolor <BG_COLOR>                              Background color (CSS notation) [default: "rgba(30, 30, 30, 0.9)"]
        --textcolorcurrent <TEXT_COLOR_CURRENT>           Text color current window (CSS notation) [default: #333333]
        --textcolorcurrentalt <TEXT_COLOR_CURRENT_ALT>    Text color current window alternate (CSS notation) [default: #999999]
        --bgcolorcurrent <BG_COLOR_CURRENT>               Background color current window (CSS notation) [default: "rgba(200, 200, 200, 0.9)"]
        --halign <HORIZONTAL_ALIGN>                       Horizontal alignment of the box inside the window [default: left] [possible values: left, center, right]
        --valign <VERTICAL_ALIGN>                         Vertical alignment of the box inside the window [default: top] [possible values: top, center, bottom]
        --fill                                            Completely fill out windows
    -c, --chars <HINT_CHARS>                              Define a set of possbile values to use as hint characters [default: sadfjklewcmpgh]
    -e, --exit-keys <EXIT_KEYS>...                        List of keys to exit application, sequences separator is space, key separator is '+', eg Control_L+g
                                                          Shift_L+f
    -f, --font <FONT>                                     Use a specific TrueType font with this format: family:size [default: Mono:72]
    -h, --help                                            Print help information
    -m, --margin <MARGIN>                                 Add an additional margin around the text box (value is a factor of the box size) [default: 0.2]
    -o, --offset <OFFSET>                                 Offset box from edge of window relative to alignment (x,y) [default: 0,0]
    -p, --print-only                                      Print the window id only but don't change focus
    -V, --version                                         Print version information

故障排除

如果出现一些奇怪的问题,您可以通过运行wmfocus并使用RUST_LOG=trace来追踪

RUST_LOG=trace wmfocus

这将打印出大量有用的调试信息。

编译

您需要安装最新的rustcargoxcb-util-keysymslibxkbcommon-x11cairo

然后,像平常一样克隆它,并使用cargo run来获取输出

git clone https://github.com/svenstaro/wmfocus.git
cd wmfocus
cargo run --features i3

窗口管理器支持

虽然这个工具是窗口管理器无关的,但可能还没有实现您喜欢的窗口管理器的版本。当前支持

  • i3
  • sway(部分,接受PRs)

如果您想实现更多窗口管理器的支持,请查看i3实现

这个工具深受i3-easyfocus的启发。

发布

这主要是我关于如何发布这个项目的笔记

  • cargorelease
  • cargorelease --execute
  • 发布将由GitHub Actions自动部署。
  • 更新Arch软件包。

依赖项

~14–30MB
~458K SLoC