#sway #窗口 #焦点 #命令 #cli #聚焦 #i3-easyfocus

app sway-easyfocus

一个受 i3-easyfocus 启发的工具,用于帮助在 Sway 中高效地聚焦窗口

6 个版本

0.2.0 2024年7月12日
0.1.4 2024年6月12日
0.1.3 2024年1月20日
0.1.2 2023年7月14日

#882 in 命令行工具

Download history 106/week @ 2024-06-08 10/week @ 2024-06-15 74/week @ 2024-07-06 25/week @ 2024-07-13 3/week @ 2024-07-20 5/week @ 2024-07-27

每月下载 107 次

MIT 许可证

23KB
414

sway-easyfocus

一个受 i3-easyfocus 启发的工具,用于帮助在 Sway 中高效地聚焦窗口。

https://github.com/edzdez/sway-easyfocus/assets/31393290/b71b1875-6c8b-4891-803c-763b040a55ff

配置文件

配置文件位于 $XDG_CONFIG_HOME/sway-easyfocus/config.yaml 如果配置文件中找不到密钥,也没有作为 CLI 选项提供,则使用默认值。

以下是一个使用默认选项的示例配置

chars: 'fjghdkslaemuvitywoqpcbnxz'

window_background_color: '1d1f21'
window_background_opacity: 0.2

label_background_color: '1d1f21'
label_background_opacity: 1.0
label_text_color: 'c5c8c6'

focused_background_color: '285577'
focused_background_opacity: 1.0
focused_text_color: 'ffffff'

font_family: monospace
font_weight: bold
font_size: medium

label_padding_x: 4
label_padding_y: 0
label_margin_x: 4
label_margin_y: 2

用法

A tool to help efficiently focus windows in Sway inspired by i3-easyfocus.

Usage: sway-easyfocus [OPTIONS] [COMMAND]

Commands:
  focus  Focus the selected window (default)
  swap   Swap focused window with the selected window
  print  Print the selected window's ID
  help   Print this message or the help of the given subcommand(s)

Options:
      --chars <CHARS>
          list of chars to use for hints <fjghdkslaemuvitywoqpcbnxz>
      --window-background-color <WINDOW_BACKGROUND_COLOR>
          set the window background color <rrggbb>
      --window-background-opacity <WINDOW_BACKGROUND_OPACITY>
          set the window background opacity <0-1.0>
      --label-background-color <LABEL_BACKGROUND_COLOR>
          set the label background color <rrggbb>
      --label-background-opacity <LABEL_BACKGROUND_OPACITY>
          set the label background opacity <0-1.0>
      --label-text-color <LABEL_TEXT_COLOR>
          set the label text color <rrggbb>
      --focused-background-color <FOCUSED_BACKGROUND_COLOR>
          set the label background color <rrggbb>
      --focused-background-opacity <FOCUSED_BACKGROUND_OPACITY>
          set the focused background opacity <0-1.0>
      --focused-text-color <FOCUSED_TEXT_COLOR>
          set the focused text color <rrggbb>
      --font-family <FONT_FAMILY>
          set the font family
      --font-weight <FONT_WEIGHT>
          set the font weight
      --font-size <FONT_SIZE>
          set the font size, see: https://www.w3.org/TR/css-fonts-3/#font-size-prop
      --label-padding-x <LABEL_PADDING_X>
          set the label padding-x <px>
      --label-padding-y <LABEL_PADDING_Y>
          set the label padding-y <px>
      --label-margin-x <LABEL_MARGIN_X>
          set the label margin-x <px>
      --label-margin-y <LABEL_MARGIN_Y>
          set the label margin-y <px>
  -h, --help
          Print help
  -V, --version
          Print version

默认操作是聚焦所选窗口。可以使用 swap 命令交换聚焦窗口和所选窗口,使用 print 命令可以打印所选窗口 ID(Sway 容器 ID)。

构建

此程序是用 Rust 编写的。可以通过遵循 官方下载页面 上的说明来安装 Rust 编译器。

您还需要安装 gtkgtk-layer-shell

# Clone this repo
$ git clone https://github.com/edzdez/sway-easyfocus.git

# Build with cargo
$ cargo build --release
$ ./target/release/sway-easyfocus

# Alternatively, build and run in one step
$ cargo run --release

依赖关系

~20MB
~462K SLoC