试试动态窗口管理器 dwm 吧
创始人
2024-03-02 03:20:52
0次

如果你崇尚效率和极简主义,并且正在为你的 Linux 桌面寻找新的窗口管理器,那么你应该尝试一下 动态窗口管理器 dynamic window manager dwm。以不到 2000 标准行的代码写就的 dwm,是一个速度极快而功能强大,且可高度定制的窗口管理器。

你可以在平铺、单片和浮动布局之间动态选择,使用标签将窗口组织到多个工作区,并使用键盘快捷键快速导航。本文将帮助你开始使用 dwm。

安装

要在 Fedora 上安装 dwm,运行:

$ sudo dnf install dwm dwm-user

dwm 包会安装窗口管理器本身,dwm-user 包显著简化了配置,本文稍后将对此进行说明。

此外,为了能够在需要时锁定屏幕,我们还将安装 slock,这是一个简单的 X 显示锁屏。

$ sudo dnf install slock

当然,你可以根据你的个人喜好使用其它的锁屏。

快速入门

要启动 dwm,在登录屏选择 “dwm-user” 选项。

登录后,你将看到一个非常简单的桌面。事实上,顶部唯一的一个面板列出了代表工作空间的 9 个标签和一个代表窗户布局的 []= 符号。

启动应用

在查看布局之前,首先启动一些应用程序,以便你可以随时使用布局。可以通过按 Alt+p 并键入应用程序的名称,然后回车来启动应用程序。还有一个快捷键 Alt+Shift+Enter 用于打开终端。

现在有一些应用程序正在运行了,请查看布局。

布局

默认情况下有三种布局:平铺布局,单片布局和浮动布局。

平铺布局由条形图上的 []= 表示,它将窗口组织为两个主要区域:左侧为主区域,右侧为堆叠区。你可以按 Alt+t 激活平铺布局。

平铺布局背后的想法是,主窗口放在主区域中,同时仍然可以看到堆叠区中的其他窗口。你可以根据需要在它们之间快速切换。

要在两个区域之间交换窗口,请将鼠标悬停在堆叠区中的一个窗口上,然后按 Alt+Enter 将其与主区域中的窗口交换。

单片布局由顶部栏上的 [N] 表示,可以使你的主窗口占据整个屏幕。你可以按 Alt+m 切换到它。

最后,浮动布局可让你自由移动和调整窗口大小。它的快捷方式是 Alt+f,顶栏上的符号是 ><>。

工作区和标签

每个窗口都分配了一个顶部栏中列出的标签(1-9)。要查看特定标签,请使用鼠标单击其编号或按 Alt+1..9。你甚至可以使用鼠标右键单击其编号,一次查看多个标签。

通过使用鼠标突出显示后,并按 Alt+Shift+1..9,窗口可以在不同标签之间移动。

配置

为了使 dwm 尽可能简约,它不使用典型的配置文件。而是你需要修改代表配置的 C 语言头文件,并重新编译它。但是不要担心,在 Fedora 中你只需要简单地编辑主目录中的一个文件,而其他一切都会在后台发生,这要归功于 Fedora 的维护者提供的 dwm-user 包。

首先,你需要使用类似于以下的命令将文件复制到主目录中:

$ mkdir ~/.dwm
$ cp /usr/src/dwm-VERSION-RELEASE/config.def.h ~/.dwm/config.h

你可以通过运行 man dwm-start 来获取确切的路径。

其次,只需编辑 ~/.dwm/config.h 文件。例如,让我们配置一个新的快捷方式:通过按 Alt+Shift+L 来锁定屏幕。

考虑到我们已经安装了本文前面提到的 slock 包,我们需要在文件中添加以下两行以使其工作:

在 /* commands */ 注释下,添加:

static const char *slockcmd[] = { "slock", NULL };

添加下列行到 static Key keys[] 中:

{ MODKEY|ShiftMask, XK_l, spawn, {.v = slockcmd } },

最终,它应该看起来如下:

...
 /* commands */
 static char dmenumon[2] = "0"; /* component of dmenucmd, manipulated in spawn() */
 static const char *dmenucmd[] = { "dmenu_run", "-m", dmenumon, "-fn", dmenufont, "-nb", normbgcolor, "-nf", normfgcolor, "-sb", selbgcolor, "-sf", selfgcolor, NULL };
 static const char *termcmd[]  = { "st", NULL };
 static const char *slockcmd[] = { "slock", NULL };

 static Key keys[] = {
     /* modifier                     key        function        argument */
     { MODKEY|ShiftMask,             XK_l,      spawn,          {.v = slockcmd } },
     { MODKEY,                       XK_p,      spawn,          {.v = dmenucmd } },
     { MODKEY|ShiftMask,             XK_Return, spawn,          {.v = termcmd } },
 ...

保存文件。

最后,按 Alt+Shift+q 注销,然后重新登录。dwm-user 包提供的脚本将识别你已更改主目录中的config.h 文件,并会在登录时重新编译 dwm。因为 dwm 非常小,它快到你甚至都不会注意到它重新编译了。

你现在可以尝试按 Alt+Shift+L 锁定屏幕,然后输入密码并按回车键再次登录。

总结

如果你崇尚极简主义并想要一个非常快速而功能强大的窗口管理器,dwm 可能正是你一直在寻找的。但是,它可能不适合初学者,你可能需要做许多其他配置才能按照你的喜好进行配置。

要了解有关 dwm 的更多信息,请参阅该项目的主页: https://dwm.suckless.org/。


via: https://fedoramagazine.org/lets-try-dwm-dynamic-window-manger/

作者:Adam Šamalík 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

dwm

相关内容

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...