zenway
1.0.0
WIP Sway bar的替代方案并不是真正的栏,而是在工作区顶部显示的覆盖层。当按下摇摆mod键时,覆盖层是可见的。
屏幕截图显示了Neovim和Firefox的背景,上面显示了Zenway状态。

在Sway Config添加条目以启动Zenway:
exec zenway
在Sway Config Bar配置:
bar {
mode hide
modifier Mod1
swaybar_command whatever
}
搜索以下配置文件:
config.lua应返回包含静态零件配置属性的LUA表:
return {
panels = {
{
anchor = " left "
widgets = {
{ sources = { ' time ' , ' date ' }, on_render = render_time },
{ sources = { ' keyboard ' }, on_render = render_keyboard , on_click = click_keyboard , on_wheel = wheel_keyboard },
},
direction = " column " ,
},
{
anchor = " right "
...
},
}上面的配置将在屏幕左侧显示一个带有两个小部件的面板。当Zenway确定任何指定的源在“ TIME”或键盘布局在“键盘”中更改的计时器时,如果调用了指定的ON_RENDER LUA函数,则会更改。 Zenway保持所有来源的状态,并使该状态从LUA获得。
这就是键盘渲染函数的外观:
local function render_keyboard ()
-- State of sources are kept in zen.<source>.<prop>
local layout = zen . keyboard . layout
-- Pango markup
local markup = " <span size='20pt' color='#909090'> " .. layout .. " </span> "
-- Simplified layout rendered by Zenway
return {
type = " box " ,
markup = markup ,
color = " #1c1b19 " ,
radius = 5 ,
border = { width = 2 , color = ' #10101080 ' },
tag = " id " ,
}
end小部件将呈现,按时间对齐的时间,按照方向=“列”指定的键盘渲染的键盘。
键盘小部件还指定了on_click和on_wheel中的其他两个LUA功能。当用户鼠标单击窗口小部件上时,这些被调用。渲染函数指定标签,如果用户单击小部件的那部分,则标签将是事件处理程序的第一个参数。
请参阅Docker容器匹配您的平台以在本地构建。 Docker容器有两个目的。一个是根据拉动请求和两个建立,在本地为不同的平台构建。
基于Docker的构建脚本用于不同的分布。每个构建脚本都输出到可以找到二进制的相应构建目录。需要手动安装对主机的运行时依赖关系。
支持的分布:
这些软件包需要在本地构建(确切的名称和版本可能会有所不同):
要构建您需要GCC,PKG-Config,Meson和Ninja
在repo root中:梅森构建,忍者-c构建
二进制和配置当前尚未安装,因此可以从构建目录中调用二进制文件。将配置文件夹复制到〜/.config/zenway/