dwm补丁推荐

1.gridmode
此补丁为 dwm 添加了一种称为 grid 的额外布局模式,其中窗口以相同大小的网格排列。它非常方便,尤其是使用同时在多个窗口上运行的工具时;例如集群 SSH。
https://dwm.suckless.org/patches/gridmode/dwm-gridmode-20170909-ceac8c9.diff
2.gestures
手势为 dwm 添加了对简单鼠标手势的支持。该补丁假定 make 已运行并将手势数组添加到 config.h。一个手势可以调用任何 dwm 函数。我通常称之为 spawn。
https://dwm.suckless.org/patches/gestures/dwm-5.8-gestures.diff
3.emptyview
我喜欢我的壁纸。此外,我发现您无法将最后一个标签切换到视野之外,这有点不直观。所以我创建了一个补丁来不允许选择任何标签。
有了这个补丁,dwm 将在没有选择标签的情况下启动。当您启动一个没有标签规则且没有选择标签的客户端时,它会在第一个标签中打开。
版本 6.2 有一个 startontag 选项(默认为 1),它告诉 dwm 带
像往常一样在启动时查看第一个标签。 0 表示开始时没有活动标记。
https://dwm.suckless.org/patches/emptyview/dwm-emptyview-6.2.diff
4.cyclelayouts
使用 MOD-CTRL- 和 MOD-CTRL- 在所有可用布局中循环。
这会在列表末尾添加一个“NULL, NULL”布局,它应该始终是列表中的最后一个布局。
如果您使用大量布局,这可能只是“有用”。
https://dwm.suckless.org/patches/cyclelayouts/dwm-cyclelayouts-20180524-6.2.diff
5.alpha
在这里插入图片描述

允许 dwm 具有半透明条,同时保持其上的所有文本不透明,就像 st 的 alpha 补丁一样。
默认情况下,dwm 可能会在使用复合窗口管理器(例如 xcompmgr、picom)时使窗口的边框透明。 Alpha 补丁允许使边框不透明。
如果您只想使边框不透明,而不关心状态栏的不透明度和/或在应用 alpha 补丁时遇到问题,那么您可以改用 fixborders 补丁。
http://dwm.suckless.org/patches/alpha/dwm-alpha-6.1.diff
http://dwm.suckless.org/patches/alpha/dwm-fixborders-6.2.diff
6.clientopacity
此补丁在 config.h 中添加了一个默认的透明度参数,该参数指定了所有窗口启动时的透明度。它还为规则集添加了不透明度,从而能够在每个客户端的基础上覆盖不透明度。
此外,它还添加了一些快捷方式:
MOD + Shift + Numpad_Add -> 增加当前聚焦窗口的不透明度
MOD + Shift + Numpad_Subtract -> 降低当前聚焦窗口的不透明度
https://dwm.suckless.org/patches/clientopacity/dwm-clientopacity-20201012-61bb8b2.diff
7.defaulttransparency
此补丁在 config.h 中添加了一个默认的透明度参数,该参数指定了所有窗口启动时的透明度。
此外,它还添加了一些快捷方式:
MOD + Shift + s -> 降低当前聚焦窗口的透明度
MOD + Shift + d -> 增加当前聚焦窗口的透明度
MOD + Shift + f -> 将窗口设置为默认不透明度 (.75)
https://dwm.suckless.org/patches/defaulttransparency/dwm-defaulttransparency-r1521.diff
8.xmenu
在这里插入图片描述
XMenu 是 X 的菜单实用程序。 XMenu 在标准输入中接收菜单规范,显示一个菜单供用户选择其中一个选项,并将选择的选项输出到标准输出。 XMenu 可以通过鼠标和键盘进行控制。
为了根据 XDG 指定的 .desktop 条目生成应用程序菜单,请查看 OliverLew 的 xdg-xmenu。
查看我的另一个项目 xclickroot 以获取可以通过右键单击根窗口(即桌面)生成 xmenu 的应用程序。
XMenu 具有以下功能:
XMenu 以 UNIX 方式读入一些内容并打印出一些内容。
子菜单(某些菜单项可以产生另一个菜单)。
分隔符(菜单项可以用一行分隔)。
图标(菜单项前面可以有图标图像)。
X 资源支持(你不需要重新编译 xmenu 来配置它)。
多头(xmenu 通过使用 Xinerama 支持多台显示器)。
键入以选择(您可以通过键入其名称的一部分来选择项目)。
https://github.com/phillbush/xmenu
9.layoutmenu
在这里插入图片描述
在这里插入图片描述
此补丁添加了用于布局切换的上下文菜单。
右键单击布局图标会出现一个 xmenu 提示,提示您选择新布局,然后切换到所选布局。
Usage

  • Xmenu need to be installed.
  • Edit layoutmenu.sh with the installed layouts and with correct indexes.
  • Place layoutmenu.sh in PATH.
  • The text of the menu items is for display only. Name them however you want.
    https://dwm.suckless.org/patches/layoutmenu/dwm-layoutmenu-6.2.diff
    9.noborder
    当只有一个窗口可见时移除边框。
    https://dwm.suckless.org/patches/noborder/dwm-noborderfloatingfix-6.2.diff
    10.namedscratchpads
    允许创建多个便笺窗口,每个窗口分配给不同的键绑定。
    在按下键绑定窗口将:
    根据给定的命令生成(如果它尚未运行)
    切换窗口的可见性
    在规则数组中添加了一个新字段,以将命令与相应的规则相关联。
    与用于窗口定位的浮动规则配合良好。
    https://dwm.suckless.org/patches/namedscratchpads/dwm-namedscratchpads-6.2.diff
    浮动规则:https://dwm.suckless.org/patches/floatrules/
    11.Pango
    这个相对简单的补丁为状态栏添加了 pango 支持。这不仅增加了 TrueType 字体支持,还开启了一些在准系统 xft 下无法实现的有趣可能性:

使用 pango 标记对状态消息进行简单标记(在 6.0 补丁中可选,在 config.h 中启用/禁用它)。因此,您可以格式化状态消息,指定 fg/bg 颜色、大小、子/上标、下划线、强调、粗体等。您也可以进行动态字体切换!为了安全使用状态栏的其余部分,标记支持仅限于您可以直接控制的状态消息区域。

后备字体,因此您可以使用 - 例如 - 一些标志性字体作为您的第二个系列:“DejaVu Sans,Icons 8”(见下文)。随着网络字体变得越来越流行,现在网络上有大量单色漂亮的 TTF 图标。请注意,您还可以使用 pango 标记启用的更强大的字体切换来实现相同的目标。也不要被 fontconfig 理解诸如“DejaVu Sans、Icons-8”之类的描述符甚至是 fonts.conf 中定义为别名的字体序列这一事实所误导。 xft 将一劳永逸地选择一种字体,而不是逐个字符地选择。

Icons 系列是我为状态栏制作的 Awesome 和 Ionicons 字体的非重叠合并。

在最新的补丁(20200428 - 6.2 版之后)中,drw.c/h 代码库有很多变化(也许有更好的做事方式,但它按原样工作)。

最后一个补丁修复了一些仅对 CJK 字体明显的垂直对齐问题。

https://dwm.suckless.org/patches/pango/dwm-pango-20201020-519f869.diff
12.reorganizetags
将每个标签的所有客户端转移到最左边的未占用标签。

例如,如果客户端 A、B、C 分别被标记在标签 1、5、9 上,则当调​​用此函数时,它们现在将位于 1、2 和 3。焦点客户端也将保持焦点。

多个标签上的客户端将被视为只在最左边的标签上,并在操作完成后减少为一个标签。
这提供了一个附加功能,可以通过标签尽可能均匀地分布客户端。

(标签从左到右填充,必要时循环返回。)

例如,如果有 9 个客户端和 9 个标签,那么每个标签将有一个客户端。如果有 19 个客户端,那么 3 个将被标记到标签 1 上,2 个将被标记到标签 2 到 9 中的每一个上。
https://dwm.suckless.org/patches/reorganizetags/dwm-reorganizetags-6.2.diff
https://dwm.suckless.org/patches/reorganizetags/dwm-distributetags.h
13.resizecorners
默认情况下,只能从右下角调整窗口大小。使用此 Patch,鼠标会扭曲到最近的角落,然后您可以从那里调整其大小。
https://dwm.suckless.org/patches/resizecorners/dwm-resizecorners-6.2.diff
14.scratchpad
暂存器补丁允许您生成或恢复浮动终端窗口。让一个人做一些简短的打字通常很有用。
像 detach (http://detach.sourceforge.net) 这样的工具将它变成了 X 应用程序的启动板。
默认情况下使用您的终端 (st),默认键绑定是 MODKEY+XK_grave。补丁中包含 config.def.h 更改。
https://dwm.suckless.org/patches/scratchpad/dwm-scratchpad-6.2.diff
15.smartborders
灵感来自同名的 xmonad 功能。
仅在以下情况下绘制边框:
客户端窗口是浮动的

1 个平铺客户端可见
浮动布局
https://dwm.suckless.org/patches/smartborders/dwm-smartborders-6.2.diff

16.status2d
在这里插入图片描述
Status2d 允许在 DWM 状态栏中绘制颜色和矩形。请参阅下面我的带​​有多 CPU 和电池的状态栏示例。
https://dwm.suckless.org/patches/status2d/dwm-status2d-6.2.diff

如果您想包含 extrabar 补丁,请使用此补丁:https://dwm.suckless.org/patches/status2d/dwm-status2d-extrabar-6.2.diff

这个补丁增加了使用来自 xrdb 的终端颜色的能力,允许像 pywal 这样的程序改变状态栏颜色。还需要 xrdb 补丁:https://dwm.suckless.org/patches/status2d/dwm-status2d-xrdb-6.2.diff
xrdb 补丁:https://dwm.suckless.org/patches/xrdb/
这个补丁添加了一些额外的标签来管理下面描述的颜色:https://dwm.suckless.org/patches/status2d/dwm-status2d-swap-save-restore-6.2.diff

用法
^rx,y,w,h^ 绘制一个宽 w 高 h 的矩形,其左上角相对于 X 绘图光标位于 (x,y) 处。
^c#FF0000^ 设置前景色。
^b#55cdfc^ 设置背景色,只适用于文字,绘图时只需使用^r^命令改变背景即可。
^f<px>^ 将 X 绘图光标向前移动 <px> 像素。请记住,您必须将光标移动到足以显示您的绘图(通过绘图的 )。
^d^ 将颜色重置为 SchemeNorm。
^C<num>^ 将前景色设置为终端颜色 0-15。需要上面的 xrdb 子补丁。
^B<num>^ 将背景颜色设置为终端颜色 0-15。需要上面的 xrdb 子补丁。
^w^ 交换当前的前景色/背景色。在相互重叠绘制多个矩形时很有用。需要上面的交换-保存-恢复子补丁。
^v^ 保存当前的配色方案,以便以后可以使用 ^t^ 标签进行恢复。通过这种方式,脚本可以修改条中间的颜色,而与之前设置的颜色无关。需要上面的交换-保存-恢复子补丁。
^t^ 恢复由 ^v^ 标签保存的最后一个配色方案。需要上面的交换-保存-恢复子补丁。

EnglishVersion:

^rx,y,w,h^ Draw a rectangle of width w and height h, with its top left corner at (x,y) relative the X drawing cursor.
^c#FF0000^ Set foreground color.
^b#55cdfc^ Set background color, only applies to text, simply use the ^r^ command to change the background while drawing.
^f<px>^ Forward the X drawing cursor by <px> pixel. Please bear in mind that you have to move the cursor enough to display your drawing (by the with of your drawing).
^d^ Reset colors to SchemeNorm.
^C<num>^ Set foreground color to terminal color 0-15. Requires the xrdb sub-patch above.
^B<num>^ Set background color to terminal color 0-15. Requires the xrdb sub-patch above.
^w^ Swaps the current foreground/background colors. Useful when drawing multiple rectangles on top of one another. Requires the swap-save-restore sub-patch above.
^v^ Saves the current color scheme so it can be restored later with the ^t^ tag. This way a script can modify color in the middle of the bar agnostic to what color was set previously. Requires the swap-save-restore sub-patch above.
^t^ Restores the last color scheme saved by the ^v^ tag. Requires the swap-save-restore sub-patch above.
Example
xsetroot -name "[status2d] ^c#FF0000^red text with blue rectangle^c#55cdfc^^r3,3,14,14^^f20^^c#FFFFFF^^b#f7a8b8^ and white text on pink background "

绘制电池图标的步骤(调整值以适合您的设置):

Draw the nose: "^r00,07,02,04^" Draw the battery: "^r02,04,22,10^" Fill it so that the border stays: "^c#000000^^r03,05,20,08^" Fill it with the remaining capacaty: "^c#ffffff^^r10,05,13,08^" Reset the colorscheme and forward the cursor: "^d^^f24^"

Put it all together: xsetroot -name "^r0,7,2,4^^r2,4,22,10^^c#000000^^r3,5,20,8^^c#ffffff^^r10,5,13,8^^d^^f24^"

17.statusbar on all monitors
此补丁绘制并更新所有显示器上的状态栏。
https://dwm.suckless.org/patches/statusallmons/dwm-statusallmons-6.2.diff
18.custom urgent border
此补丁使“紧急”窗口的边框颜色不同。默认情况下它是鲜红色的。使用 config.h 项“urgbordercolor”来更改它。
提供最小紧急边界的替代补丁,利用现有特征为紧急标签提供特征奇偶校验,使用与它们反转的紧急标签相同的前景色。
https://dwm.suckless.org/patches/urgentborder/dwm-6.2-urg-border.diff
19.systray
一个简单的系统托盘实现。还支持多显示器。托盘跟随所选监视器。
如果切换栏时图标消失,请在 dwm 中尝试不同的字体大小。这至少在一种情况下对 pidgin 有所帮助。
https://dwm.suckless.org/patches/systray/dwm-systray-20210418-67d76bd.diff
20.tapresize
允许使用触摸板调整窗口大小。用两指滚动很有用。它实际上使用垂直和水平鼠标滚动事件,允许您使用单指点击移动窗口和两指点击调整大小。
https://dwm.suckless.org/patches/tapresize/dwm-tapresize-20200819-f04cac6.diff
21.xfce4-panel
无论如何,当系统上有 xfce4 工具时,在 dwm 中使用 xfce4-panel 可能是有意义的。此补丁修改了 dwm,以便它将名称为 xfce4-panel(默认)的窗口视为状态栏,即:

  • 它从来没有边界
  • 它从来没有焦点
  • 总是有 y=0
  • 它永远不会在标签指示器中显示为活动窗口
  • 它显示在所有标签上(通过配置中的标签规则)
    在这里插入图片描述
  • 当背景设置为纯色时看起来最好,与 dwm 状态行相同(示例中为黑色)
  • 该面板确实充当第三方工具的系统托盘,即不再需要系统托盘补丁
    该补丁是针对 dwm6.2 创建的。
    工作区切换器不起作用(但 dwm 的标签切换器仍然在左侧)
    xfce4 的其余 40 个左右面板应用程序应该可以工作(如果已安装)
    启动:通过 xinitrc 启动应该没问题。我使用自动启动补丁在后台启动:
  sleep 0.3
  xfce4-panel --disable-wm-check

Panel Config
通过 XFCE4 工具完成。
只配置一个面板,例如通过 xfce4-settings-manager -> 面板
在选项卡显示处:

  • 模式水平
  • 输出:您的主显示器(y=0)。面板将留在那里(!) - 锁定面板:false - 不要在边框上保留空间:true - 行大小:23 像素,1 行适合我 - Autom。增加长度:true
    您“正常”配置的面板内容,即通过在面板的项目选项卡中或通过 CLI 工具添加项目。
    xfce4 中的面板与同一用户的 dwm 会话中的面板不同,我没有尝试过。我想应该可以通过面板 UI 和 xfconf 的备份和恢复工具来实现。
    提示:切勿尝试从 dwm 中启动 xfce4-session,警告 Failed to connect to session manager at panel 启动是正常的。它将尝试自动探索您的可用工作区 - 并得出结论,您有 2**9,将其写回 xfce4 配置…我不得不通过 xfconf 手动清理配置。
    下面是一个使用示例。
    使用 genmon 小程序
    任何面板都提供了包含通用脚本输出的可能性。在 xfce4-panel 中,这是由面板项目完成的:“通用监视器”(genmon)。它具有带有 pango 标记和 mouseover/onclick 钩子样式的输出。
    以下是一些 genmon 脚本集合:
    https://awesomeopensource.com/project/xtonousou/xfce4-genmon-scripts
    https://github.com/almaceleste/xfce4-genmon-scripts
    https://github.com/levimake/xfce4-genmon-panel-scripts
    手册在这里:https://docs.xfce.org/panel-plugins/xfce4-genmon-plugin/start#usage
    就我个人而言,我希望 CPU 监视器显示当前高 CPU 消耗者的名称(如果存在)(在当前内核负载旁边),并且在鼠标悬停时记住过去最近高负载情况的最高输出:

在这里插入图片描述
为了得到这个,我在后台从 autostart.sh 中启动了这个脚本生成的文件的内容:
https://dwm.suckless.org/patches/xfce4-panel/cpu_mon.py

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Archlinux是一种Linux操作系统,而dwm是一种窗口管理器。dwm是一个非常轻量级的窗口管理器,它的设计理念是简单、高效和可定制化。它使用了一些非常独特的概念,例如动态窗口管理和标签式布局。它的配置文件非常简单,可以通过修改源代码来进行自定义。对于那些喜欢自定义和探索的Linux用户来说,Archlinux和dwm都是非常好的选择。 ### 回答2: Arch Linux是一款轻巧而稳定的Linux操作系统,它拥有庞大的功能强大的软件库,适合高级用户或技术人员使用。而DWM(Dynamic Window Manager)是一个精简的管理窗口的工具包,它允许用户按照自己的需求自定义窗口布局和快捷键,使得用户能够高效地处理任务。 Arch Linux和DWM的组合是非常适合那些想要自定义自己工作环境的高级用户。在这个环境中,用户可以完全根据自己的需求定制安装的软件包,以及利用DWM的配置文件来定制自己的窗口管理方案。 同时,Arch Linux和DWM的高度可扩展性也使得它们成为了开发者的首选。用户可以使用模块化的设计来定制自己的开发环境,以此来快速地开发软件。此外,DWM也非常适合那些需要同时处理多个任务的用户,可以通过非常快捷灵活的快捷键来切换和移动窗口。 当然,在使用Arch Linux和DWM时,用户需要具备一定的Linux操作系统知识,这样才能充分发挥这两款软件的优势。需要记住的是:正是因为它们是非常底层的工具,所以它们需要更多的手动配置和个性化设置,但这也正是它们吸引高级用户的原因之一。 总之,Arch Linux和DWM的组合是非常适合那些对个性化、可定制化、高效率工作环境有需求的高级用户或开发者。 ### 回答3: Arch Linux是Linux发行版之一,旨在使用户能够配置和控制系统的每个方面。它是一个轻量级的Linux发行版,拥有众多的用户和社区支持。在Arch Linux中,所有软件包都是最新的,并且它拥有一个类似于排水沟的软件包管理器,使用户可以快速地安装、升级和删除软件包。 DWM是一款非常轻量级的动态窗口管理器,具有高度可定制性和扩展性。它使用了一些XPath支持的脚本语言,可以对所有GUI部件进行编程,这使得它在不同用户之间的组合配置上表现出色。DWM是使用X Window System的,因此它具有兼容性和稳定性。与其他窗口管理器不同,DWM没有菜单、任务栏和图形设置界面等。 Arch Linux DWMin需要全面理解Unix的方式,并具备合适的经验和知识。使用Arch Linux DWMin需要做一些配置和自定义,才能获得最佳效果。在使用过程中,DWMin的文档和Arch Linux ArchWiki是非常重要的资源,因为它们提供了关于使用、配置和调试DWMin的详细信息和建议。 总的来说,Arch Linux DWMin是一款非常灵活和高度可定制的窗口管理器,它非常适合熟悉Linux操作系统和Unix哲学的用户。并且它可以提供更加个性化和高效的Linux使用体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值