在 xterm(或 gnome-terminal)中运行以下命令设置所谓的“图标名称”:
echo -en "\e]1;some_value\a"
这是做什么的?
请注意,可以使用相同的命令将“窗口标题”和“图标名称”设置为相同的值,因此我不明白“图标名称”如何成为图像的路径。
答案1
很久以前,有一个名为 twm 的窗口管理器——实际上,它仍然存在并且运行得很好。它不像 MS Windows、Mac OS X 和许多现代窗口管理器那样将窗口最小化为屏幕底部的一个栏(或类似的栏),而是将它们缩小为带标签的图标(“iconfify”)。
这维基百科 twm 文章有一些不错的图片,例如:
窗口标题是标题栏中的内容(例如“计算器”或“xterm”)。图标名称是图标化时图标下方的内容(“xclock”)。现代窗口管理器可能都忽略图标名称,因为它们不使用图标 UI。
两者的完整描述可以是在ICCCM中发现。
答案2
我将在这里讨论xterm
:它是一个旧软件,它的许多术语现在已经过时了。其中man xterm
写道:
iconName (class IconName) Specifies a label for xterm when iconified. Xterm provides no default value; some window managers may assume the application name, e.g., "xterm" Setting the iconName resource sets the icon label unless overridden by zIconBeep or the control sequences which change the window and icon labels.
这意味着它不能是图标图像,它只是窗口图标化时iconName
赋予窗口的标签。xterm
也可以使用-n
选项设置:
-n string This option specifies the icon name for xterm's windows. It is shorthand for specifying the "iconName" resource. Note that this is not the same as the toolkit option -name (see below). The default icon name is the application name.
像这样开始后xterm
,使用title
!=iconName
我仍然看不到ICON
图标化窗口后显示的字符串xterm
(Alt-F9 in fluxbox
):
$ xterm -n ICON -T a-new-title
进一步挖掘xterm
联机帮助页发现(**
我的):
activeIcon (class ActiveIcon) Specifies whether or not active icon windows are to be used when the xterm window is iconified, if this feature is compiled into xterm. The active icon is a miniature representation of the content of the window and will update as the content changes. Not all window managers necessarily support application icon windows. Some window managers will allow you to enter keystrokes into the active icon window. The default is "default". Xterm accepts either a keyword (ignoring case) or the number shown in parentheses: false (0) No active icon is shown. true (1) The active icon is shown. If you are using twm, use this setting to enable active-icons. default (2) Xterm checks at startup, and shows an active icon only for window managers which it can identify and which are known to support the feature. **These are fvwm (full support), and window maker (limited).** A few other windows managers (such as twm and ctwm) support active icons, but do not support the exten- sions which allow xterm to identify the window manager.
activeIcon
可能与功能没有直接关系iconName
,但是它给我们提供了一个线索,即与图标相关的功能xterm
只能在某些窗口管理器中正常工作。我建议Xephyr
测试一个fvwm
或window maker
按照联机帮助页中的指定进行测试:
$ Xephyr :1 -ac -screen 800x600
在另一个终端中:
$ DISPLAY=:1 wmaker
现在让我们开始xterm
内部window maker
:右键单击 -> Applications
-> Terminals
-> xterm
。再次xterm
从选项开始-n
:
$ xterm -n ICON -T a-new-title
右键单击标题栏并选择Miniaturize
。现在您可以看到xterm
图标实际上被标记为ICON
。单击它将其恢复,并看到标题栏为a-new-title
。结论是该iconName
功能仅适用于某些窗口管理器,很可能是较旧的窗口管理器。如果您感觉足够强大,您可以浏览window maker
源代码并修补您自己的窗口管理器(如果它不支持iconName
.
顺便说一句,要更改xterm
图标图像,请参阅:https://superuser.com/questions/344320/how-do-i-change-the-icon-of-an-xterm。