我有一个没有全屏设置的应用程序,它占据了整个屏幕,这真的很烦人。我正在寻找一种可以将应用程序变成窗口的方法。
答案1
如果问题在于dwm
将其全屏显示以填充图块,您可以在config.h
默认情况下告诉它浮动。
这是在以下位置完成的rules[]
:
static const Rule rules[] = {
/* class instance title tags mask isfloating monitor */
{ "Gimp", NULL, NULL, 0, 1, -1 },
{ "vlc", NULL, NULL, 0, 1, -1 },
{ "feh", NULL, NULL, 0, 1, -1 },
{ "Firefox", NULL, NULL, 1 << 8, 0, -1 },
};
正如您在我的例子中看到的Gimp
,vlc
并且feh
始终以浮动模式打开(isfl
),防止它们填充整个图块(并且还为我滑动其余窗口)。
要找出应放在第一列(类)中以告诉窗口管理器它是哪个窗口的名称,您可以使用该xprop
工具。示例Gimp
:
$ xprop
[...]
WM_PROTOCOLS(ATOM): protocols WM_DELETE_WINDOW, WM_TAKE_FOCUS, _NET_WM_PING, _NET_WM_SYNC_REQUEST
WM_CLASS(STRING) = "gimp", "Gimp"
WM_ICON_NAME(STRING) = "GNU Image Manipulation Program"
_NET_WM_ICON_NAME(UTF8_STRING) = "GNU Image Manipulation Program"
WM_NAME(STRING) = "GNU Image Manipulation Program"
_NET_WM_NAME(UTF8_STRING) = "GNU Image Manipulation Program"
请注意,运行时xprop
,光标将成为触发器,以便您可以单击目标窗口,在本例中为窗口Gimp
。
xprop
我们对的输出感兴趣的变量WM_CLASS(STRING)
具有结构WM_CLASS(STRING) = instance, class
。在上面的例子中,WM_CLASS(STRING) = "gimp", "Gimp"
我们需要Class
( Gimp
),这就是我们将在rules[]
.