使用键盘快捷键在 twm 中切换窗口

使用键盘快捷键在 twm 中切换窗口

我正在使用一个正在运行的系统twm,我想知道是否可以使用键盘快捷键在窗口之间切换,就像我在 gnome 中使用Alt+所做的那样Tab

答案1

f.warpring功能很接近,但是您必须定义属于环的一部分的窗口列表,并且似乎没有办法说“所有这些”。例如,设置 Alt+Tab 和 Shift+Alt+Tab 在 xterm 之间循环:

WindowRing { "XTerm" }
"Tab" = m     : all : f.warpring "next"
"Tab" = m | s : all : f.warpring "prev"

您尝试过图标管理器吗?它显示了窗口名称的二维网格,您可以将按键绑定到网格中的上、下、左、右。这是我的设置的一部分:

ShowIconManager
IconManagerGeometry "320x200+0+0" 3
"h" = m | c : all : f.lefticonmgr
"j" = m | c : all : f.downiconmgr
"k" = m | c : all : f.upiconmgr
"l" = m | c : all : f.righticonmgr

使用 Ctrl + Alt + vi 光标键选择窗口。 Unix 万岁!

真正使 twm 相对于 gnome 一代的窗口管理器有所改进的最大的事情是,我刚刚向您展示的所有功能都已正确记录(“正确”意味着“在手册页中”)。配置文件不是 SGML/XML-ish;它旨在被人类理解,并使用编辑器进行编辑,而不是 3 层配置抽象库之上的迷宫般的菜单。

答案2

是的,“环”需要将包含在其中的程序的名称。但是,假设您拥有的所有窗口也产生一个图标,您可以通过编程键在图标管理器上导航(我使用ShiftAltCtrlF9F10F11向左、向右或向下移动,并F12在图标化时取消图标管理器的图标化。这将无论窗口是否图标化都有效。

对于堆叠窗口,我同样使用F5F6来向上或向下堆叠,无论窗口是否在“环”中,这都有效。我已经F7F8“环”中向左和向右走了。

您还可以点击ShiftNum Lock将数字键盘变成鼠标移动键,然后使用Num Lock、和充当鼠标左键、中键和右键,并模拟单击。再次点击和即可关闭该功能。/*5ShiftNum Lock

至于“焦点”,你可以让它像在窗口上一样操作(即单击以将焦点放在具有该f.focus功能的窗口上。请参阅联机帮助页)。

您可以将.xsession,.Xresources.twmrc文件结合起来做一些非常聪明的事情。在某些 X11 设置中,前两个将.xinitrc扮演.XDefaults相同的角色。

我已经使用了twm20 年,快速、可靠、无混乱,并且支持通过客户端服务器网络进行多次登录(GNOME 和 KDE 往往不喜欢多个会话)。

答案3

我不认为 Twm 可以提供通过按住并重复按下在窗口之间循环的Alt+行为。有一些工具可以使用键盘在窗口之间切换,但它们是有限的。TabAltTab

Twm 应用了焦点跟随鼠标策略:聚焦窗口是鼠标指针所在的窗口。该函数f.warpring在一组固定窗口之间导航,由变量 确定WindowRing。例如,以下代码片段可让您使用+.twmrc在 xterm 窗口之间循环。AltF2

WindowRing { "XTerm" }
"F2" = m : all  : f.warpring "next"
"F2" = m|s : all  : f.warpring "prev"

该函数f.warpto根据名称扭曲到一个窗口。

"E" = m|s : all : f.warpto "Emacs"

有一个修补允许f.warpring循环所有窗口,但据我所知,它尚未被维护者接受。

如果您不喜欢 Twm,则不必使用它。这确实是非常原始的。您可以在您的~/.xinitrc或中调用不同的窗口管理器~/.xsession。即使您的系统上没有安装其他窗口管理器,您也可以编译它并将其安装在您的主目录下。如果您的系统资源非常有限,请尝试峰值速度或者弗瓦姆或者黑盒子或者老鼠药或许多其他占用空间小的窗口管理器。

答案4

############################################################################################
######                  Alt-Tab no wildcard add applications as required              ######
############################################################################################

WindowRing 
{

"abiword"
"audacity"
"claws-mail"
"dillo"
"geany"
"geeqie"
"gnumeric"
"gnucash"
"gogglesmm"
"lilyterm"
"leafpad"
"lowriter"
"localc"
"mpv"
"mumble"
"pidgin"
"ROX-Filer"
"runner" 
"Seamonkey"
"spacefm"
"utox"
"xterm"

}

"Tab" =             m     : all         : f.warpring "next"
"Tab" =             m | s : all         : f.warpring "prev"

############################################################################################
######                                   Alt-Tab end                                  ######
############################################################################################

相关内容