为什么 Vim 爱好者喜欢 Herbstluftwm Linux 窗口管理器
创始人
2024-03-02 04:19:58
0

本文是 24 天 Linux 桌面特别系列的一部分。如果你是 Vim 爱好者,请试试 Herbstluftwm,这是一个受到 “Vim 方式”启发的平铺式 Linux 窗口管理器。

每个人都喜欢 Vim(除了 Dvorak 和 Emacs 用户)。Vim 非常流行,它不仅仅是个编辑器,还有整个都使用 Vim 键绑定来浏览网页的 Web 浏览器,在非常流行的 Zsh 终端仿真器中也有 Vim 模式。此外,还有一个名为 herbstluftwm 的窗口管理器,它部分模仿了 “Vim 方式”。Herbstluftwm 取消了窗口,而是在程序载入和使用时使用平铺的贴片或者象限代替。你可以使用键盘(Alt+hAlt+jAlt+kAlt+l)从一个平铺贴片移动到另一个平铺贴片。

可以从发行版软件仓库安装 Herbstluftwm。安装后,请退出当前桌面会话,以便可以登录到新会话。默认情况下,会话管理器(KDM、GDM、LightDM 或 XDM,具体取决于你的设置)将继续登录到以前的桌面,因此在登录之前必须覆盖它。

在 GDM 中:

在 SDDM 中:

Herbstluftwm 桌面之旅

第一次登录 Herbstluftwm 时,你只会看到一个绿屏,边缘有深绿色边框。你所看到的是初始的平铺贴片,其中没有加载任何应用程序。要启动默认应用,请按 Alt+Enter

文档中强调使用 $HOME/.config/herbstluftwm/autostart 作为登录时启动重要应用的配置文件。对于不必在每次登录时启动的应用,可以使用 xterm 作为启动守护进程。与往常一样,在命令后加一个 & 符号会将 shell 的控制权返回给你。例如,要启动 Emacs:

% emacs &

这将在新的平铺贴片中启动 Emacs 窗口,然后返回命令行。

Emacs running in Herbstluftwm

切换平铺贴片

要从一个平铺贴片移动到另一个平铺贴片,请使用经典的 hjklAlt 的 Vim 导航组合键。例如,要从终端切换到其下方的平铺贴片中的应用(即屏幕底部),请按 Alt+j。要返回,请按 Alt+k。左移和右移分别为 Alt+hAlt+l

分割屏幕

你可以使用 Alt+o 垂直分割屏幕,使用 Alt+u 水平分割屏幕。

要删除空白平铺贴片,请移动到该平铺贴片,然后按 Alt+r

配置 herbstluftwm

除了 Alt 键绑定外,你还可通过 herbstclient 命令与 Herbstluftwm 进行通信。此命令可以在 shell 中交互,或者你可在配置文件中保留你的首选项。

你可以查看 Herbstluftwm 中的所有可用属性:

$ herbstclient attr

Herbstluftwm 的默认行为定义在其默认配置文件中,你可以将其复制到你的家目录并进行修改。启动后,Herbstluftwm 执行配置文件中包含的命令。例如,你觉得使用以 Alt 为中心的键绑定很笨拙(它传统上是应用内保留快捷键),那你可以在配置文件中更改触发 Herbstluftwm 操作的键:

% mkdir ~/.config/herbstluftwm
% cp /usr/xdg/herbstluftwm/autostart ~/.config/herbstluftwm
% sed -i 's/Mod=Mod1/Mod=Mod4/' ~/.config/herbstluftwm
% herbstclient reload

这将使 Herbstluftwm 的修饰键更改为 Super 键(“Windows” 或 “Tux” 键,具体取决于你的键盘)。

使用 autostart 文件,你可以设置自定义键绑定,为特定类型的应用创建标签,以便以一致的方式平铺应用,并执行更多操作。

为何你要尝试 herbstluftwm

Herbstluftwm 是一个平铺窗口管理器的很好例子。它默认平铺窗口,并允许用户定义全局规则的例外。它使用类似 Vim 的导航方式,但可以快速简单地覆盖它。它可能是你一直在寻找的平铺管理器,所以请马上尝试一下。


via: https://opensource.com/article/19/12/herbstluftwm-linux-desktop

作者:Seth Kenlon 选题:lujun9972 译者:geekpi 校对:wxy

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

相关内容

不知道如何在OS X上在V...
在OS X上,在Vim终端之间复制可以使用Vim的剪贴板功能。以下...
2025-01-12 07:30:30
不支持对函数进行vsvim...
在VSCode中,VSCodeVim插件默认不支持对函数进行调用。...
2025-01-11 22:00:40
不移动光标,VIM 删除外...
在Vim中,可以使用以下命令删除外部/内部标签:删除外部标签:da...
2025-01-11 06:01:18
不要在vim中的逃逸时候向...
要在Vim中逃逸时向后退缩,而不使用映射,可以使用以下代码示例中的...
2025-01-11 04:31:25
不要通过请求Vimeo A...
使用Vimeo提供的嵌入代码来获取视频的缩略图图像,而不是通过请求...
2025-01-10 22:31:51
不要将当前选项应用于新打开...
在Vim中,可以通过设置set switchbuf=usetab来...
2025-01-10 19:31:46

热门资讯

使用 KRAWL 扫描 Kub... 用 KRAWL 脚本来识别 Kubernetes Pod 和容器中的错误。当你使用 Kubernet...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
通过 SaltStack 管理... 我在搜索Puppet的替代品时,偶然间碰到了Salt。我喜欢puppet,但是我又爱上Salt了:)...
Epic 游戏商店现在可在 S... 现在可以在 Steam Deck 上运行 Epic 游戏商店了,几乎无懈可击! 但是,它是非官方的。...
如何在 Github 上创建一... 学习如何复刻一个仓库,进行更改,并要求维护人员审查并合并它。你知道如何使用 git 了,你有一个 G...
2024 开年,LLUG 和你... Hi,Linuxer,2024 新年伊始,不知道你是否已经准备好迎接新的一年~ 2024 年,Lin...
Bazzite:专为 Stea... 为 Linux 桌面或者 Steam Deck 做好游戏准备,听起来都很刺激!对于一个专为 Linu...
Motrix:一个漂亮的跨平台... 一个开源的下载管理器,提供了一个简洁的用户界面,同时提供了跨平台操作的所有基本功能。在这里了解关于它...
Bash 脚本中如何使用 he... here 文档 here document (LCTT 译注:here 文档又称作 heredoc ...
使用 dialog 和 jq ... 为何选择文字用户界面(TUI)?许多人每日都在使用终端,因此, 文字用户界面 Text User I...