我主要解决了我自己的情况。希望这对其他人有帮助。它并不完美,但它满足了我的需求。
我做的第一件事是使用 GTK 调试器启动 yad。
export GTK_DEBUG=interactive
yad --title "my title" --button "button1:1" --button "button2:2" --button "button3:3" --text "some text"
在调试器中对我最有用的是选择和查找对象的名称以及动态编辑 css。我不知道css。我拼凑了我在其他网站上找到的大部分工作的点点滴滴。
然后另一件有帮助的事情是“即时”更改 GTK3 主题的能力。我这样做是使用:
export GTK_THEME="Adwaita-dark"
然后我又重新运行了 yad 线。它暂时使用了新主题。
我发现这个主题大部分都是我想要的,它似乎尊重我的自定义 css。由于某种我没有深入研究的原因,使用“Adwaita”的默认主题不尊重我的自定义 css。显然,如果我选择不同的主题,您必须将自定义 css 放在该主题的目录中,而不是“Adwaita-dark”
为了保存我的自定义设置,我创建了 $HOME/.themes 并在下面创建了以下目录:
- $HOME/.themes/Adwaita-dark
- $HOME/.themes/Adwaita-dark/gtk-3.0
然后我把我的自定义css放在 $HOME/.themes/Adwaita-dark/gtk-3.0/gtk.css
这是我的自定义 css,它覆盖了 yad 的默认值:
/* The background of the entire window
box {
background-image: image(rgb(224, 224, 209));
} */
/* The progress slider */
progress {
/* background-image: image(rgb(102, 102, 255)); */
background-image: image(rgb(102, 0, 255));
}
/* this gets us the highlighting behavior */
button:focus {
color: black;
border-top-color: yellow;
border-left-color: yellow;
border-right-color: yellow;
border-bottom-color: yellow;
border-bottom-width: 10px;
border-top-width: 10px;
border-bottom-width: 10px;
background-image: image(rgb(255,102,255));
}
button {
color: yellow;
font: 24px "comic sans";
border-top-color: black;
border-left-color: black;
border-right-color: black;
border-bottom-color: black;
border-bottom-width: 10px;
background-image: image(rgb(100,100,100));
}
上面的一些指令并没有真正对这个主题做任何事情,但我把它们留了下来,以防我将来想尝试它。我开始 yad 的方式是这样的:
GTK_THEME="Adwaita-dark" yad --title "my title" --button "button1:1" --button "button2:2" --button "button3:3" --text "some text"