River 窗口管理器使用教程
riverA dynamic tiling Wayland compositor项目地址:https://gitcode.com/gh_mirrors/riv/river
1. 项目的目录结构及介绍
River 窗口管理器的 GitHub 仓库(https://github.com/riverwm/river.git)包含以下主要目录和文件:
docs/
: 包含项目的文档文件,如使用说明、配置指南等。include/
: 包含项目的头文件,用于项目的编译和开发。protocols/
: 包含 Wayland 协议的定义文件。river/
: 包含 River 窗口管理器的主要源代码。subprojects/
: 包含项目依赖的子项目或库。tests/
: 包含项目的测试代码。meson.build
: 项目的构建配置文件,用于 Meson 构建系统。
2. 项目的启动文件介绍
River 窗口管理器的启动文件主要位于 river/
目录下,其中 main.c
是项目的入口文件。该文件负责初始化 River 窗口管理器并启动 Wayland 服务器。
// river/main.c
#include "server.h"
int main(int argc, char *argv[]) {
struct server server = {0};
if (!server_init(&server, argc, argv)) {
return EXIT_FAILURE;
}
server_run(&server);
server_destroy(&server);
return EXIT_SUCCESS;
}
3. 项目的配置文件介绍
River 窗口管理器的配置文件通常位于用户的主目录下,路径为 ~/.config/river/init
。该文件是一个脚本文件,用于配置 River 窗口管理器的启动行为和布局。
以下是一个简单的配置文件示例:
#!/bin/sh
riverctl map normal Mod1+Shift+q exit
riverctl map normal Mod1+Return spawn alacritty
riverctl map normal Mod1+d spawn rofi -show drun
riverctl float-filter-add app-id float
riverctl border-color-focused 0x555555
riverctl border-color-unfocused 0x333333
riverctl default-layout rivertile
rivertile -view-padding 6 -outer-padding 6
riverctl spawn "~/.config/river/autostart.sh"
该配置文件包含以下内容:
- 按键映射: 定义了按键组合和对应的操作,如退出 River、启动终端等。
- 浮动窗口过滤: 定义了哪些应用程序应该以浮动窗口显示。
- 边框颜色: 定义了聚焦和未聚焦窗口的边框颜色。
- 默认布局: 定义了默认的窗口布局管理器。
- 启动脚本: 定义了在 River 启动时执行的脚本。
通过编辑该配置文件,用户可以自定义 River 窗口管理器的行为和外观。
riverA dynamic tiling Wayland compositor项目地址:https://gitcode.com/gh_mirrors/riv/river