如何限制Wibar 上window 个条目的宽度?
How to limit the width of window entries on the Wibar?
现在如果我只打开一个 window,它会完全填满所有 wibar。直到我再开一个window,现在各占一半space.
有没有办法设置一个静态宽度,单个window可以在wibar上使用?
这是一个例子:
enter image description here
有几种方法可以做到这一点。我将列出其中的一些和 pros/cons
默认情况下,awful.widget.tasklist
小部件使用 wibox.layout.flex.horizontal
,分配宽度。您想要将其替换为 wibox.layout.fixed.horizontal
,默认为小部件首选大小。如果您希望宽度始终相同,您还需要添加 forced_width
。
-- Create a tasklist widget
s.mytasklist = awful.widget.tasklist {
screen = s,
filter = awful.widget.tasklist.filter.currenttags,
layout = wibox.layout.fixed.horizontal(),
widget_template = {
{
{
{
{
widget = awful.widget.clienticon,
},
margins = 2,
widget = wibox.container.margin,
},
{
id = "text_role",
widget = wibox.widget.textbox,
},
layout = wibox.layout.fixed.horizontal,
},
left = 10,
right = 10,
widget = wibox.container.margin
},
forced_width = 100,
id = "background_role",
widget = wibox.container.background,
},
buttons = tasklist_buttons
}
但您可能还想将其包装在 wibox.container.constraint 容器中。这使您能够设置 minimum/maximum 大小,而不是对值进行硬编码。
现在如果我只打开一个 window,它会完全填满所有 wibar。直到我再开一个window,现在各占一半space.
有没有办法设置一个静态宽度,单个window可以在wibar上使用?
这是一个例子:
enter image description here
有几种方法可以做到这一点。我将列出其中的一些和 pros/cons
默认情况下,awful.widget.tasklist
小部件使用 wibox.layout.flex.horizontal
,分配宽度。您想要将其替换为 wibox.layout.fixed.horizontal
,默认为小部件首选大小。如果您希望宽度始终相同,您还需要添加 forced_width
。
-- Create a tasklist widget
s.mytasklist = awful.widget.tasklist {
screen = s,
filter = awful.widget.tasklist.filter.currenttags,
layout = wibox.layout.fixed.horizontal(),
widget_template = {
{
{
{
{
widget = awful.widget.clienticon,
},
margins = 2,
widget = wibox.container.margin,
},
{
id = "text_role",
widget = wibox.widget.textbox,
},
layout = wibox.layout.fixed.horizontal,
},
left = 10,
right = 10,
widget = wibox.container.margin
},
forced_width = 100,
id = "background_role",
widget = wibox.container.background,
},
buttons = tasklist_buttons
}
但您可能还想将其包装在 wibox.container.constraint 容器中。这使您能够设置 minimum/maximum 大小,而不是对值进行硬编码。