Wave:即使你讨厌命令行,也会喜欢的现代新 Linux 终端
这是 Linux 终端的 VS Code,有可能在年轻一代编程者和 Linux 用户中流行起来。
对于新的终端仿真器的想法,我并不总是怀着兴奋的心情。
这里有 数不清的用于 Linux 的终端软件。从你的 Linux 发行版中自带的默认终端,到古老的经典版——“终结者”,或更 “现代化” 的基于 Rust 且支持硬件加速的那种,如 Rio。
在这儿,可选择的软件绝对不匮乏。对我来说,为什么我需要关注另一个新的终端软件呢?
然而,当我发现这款新的终端时,我觉得,它有着引人瞩目的潜力。
让我来解释下为何我会这么说。对于一名经验丰富的 Linux 用户,终端只不过是执行工作的一种工具。真正的能量来源于命令以及如何运用它们。在这里,终端仿真器吸引人的一点是支持多窗口,这也可以通过熟练使用 CLI 工具,比如 screen
或 tmux
来实现。
然而,对于一部分 Linux 用户,对他们来说,终端就是一个令人畏惧的地方。他们只会在绝对必要时以及再无他法的情况下才会使用它。就好像一个五岁的小孩夜里去洗手间。
然而,对于后者类型的 Linux 用户来说,这个新终端应该会是一个他们觉得舒适的工具。
看完它的特性后,你就会明白原因。
Wave:为那些不习惯使用命令行的人设计的终端
呃... 这似乎就是这些开发者的初衷。
Wave 终端 主要是为了那些需要不时使用终端部署他们的项目或者调试应用的应用开发者们所打造。
现代化的代码编辑器界面
没错,这是一个终端,而不是代码编辑器。其界面设计类似于 VS Code,你可以把终端会话分组到工作区中。如果你的项目需要运行开发服务器、测试服务器和生产服务器,你可以把它们分组到一个工作区。
不用学任何键盘快捷键就能编辑文件
你可以直接编辑本地系统或远程机器上的文件。这里没有学习的难度。像常规的文本编辑器一样直接使用它即可。
可以查看 Markdown,JSON 或图片
你可以渲染 Markdown 的预览,美观地显示 JSON 文件或以表格形式显示 CSV 文件数据。你还可以查看图片。
保持 SSH 连接持久化并保有通用历史
另一个赞赏的功能就是 Wave 可以保持你的 SSH 连接持久化。不用担心因为闲置一个小时而从远程服务器断开连接。即使远程系统重启了,它也会自动为你重新连接。
此外,你还可以得到合并的历史搜索的功能。不记得在哪个终端会话中运行了哪条命令?没关系。Wave 在这方面已经帮你考虑好了。
🤩 保存并保持 SSH 连接持久化,把它们分组到工作区,并且在图形界面下编辑文件,这些都是一个开发者成为 Wave 终端粉丝的充足理由。
我使用 Wave 终端的经历
在使用它几个小时后,以下是我体验。
当我首次启动它时,我看到了一个弹出窗口。它默认开启了遥测功能,这是一个典型的 VS Code 式的功能。好吧,我把它禁用了。
下一个问题是服务条款。你必须接受它,但这个界面实际上没有提供阅读条款的途径。然而我可以在 他们的网站 上看到它。它是从 Basecamp 的开源政策 中引用过来的。
我不明白这个条款的必要性,因为这个软件在 Apache 2.0 下是开源许可的。这只会让人困惑。
无论如何,这就是第一次运行时的界面。如你所见,界面就像一个现代化的代码编辑器,它内含一个侧边栏可以让你将终端标签分组到工作区中。你可以为每个标签分配名称、图标和颜色。这在你需要连接到多个远程服务器时大有帮助。
在这方面,你还可以像经典的 Putty 那样保存你的 SSH 连接。
这样的话,你可以预设某个标签在启动时就开始特定的 SSH 连接。
对我来说最大的问题(如果这可以被称为“问题”)是输入字段。这只是底部的一个小输入框。你在这输入命令,它显示输出信息,整个输入命令及其输出都被组成一个框,然后移到上方。
我更习惯于经典的终端输入方式,从上开始输入,然后一行行向下移动(然后滚动)。而在这里,却恰恰相反。
看,这是有意为之的。每条命令及其输出都是一个独立的框,一个独立的元素。你可以复制它、最小化它或从视图中将其存档。
切片面包之后的最好东西
Wave 终端最大的目标就是它让你不会感觉自己在终端里。对于在终端中编辑文件的初学者来说,这就是他们的阿喀琉斯之踵。即使是在终端中使用基础编辑器(比如 Nano),那也要有一段学习曲线。
但是 Wave 不同。它内置了一个编辑器,你可以用 codeedit filename
命令调用,你就能像在图形文本编辑器中那样编辑文件。没错,你可以随意地使用你的鼠标。你还可以从编辑器菜单中选择文件类型。
对于在终端中编辑配置文件感到提心吊胆的人来说,这绝对是个天赐福音。
开发者经常需要处理 Markdown 和 JSON 文件。Wave 终端完全有能力渲染这些文件。
SSH 的连接是永久的。再也不用厌烦地频繁从远程服务器上断开连接了。Wave 完美地处理了它。
你可以从其 文档页面 进一步探索它的特性。
在 Linux 上安装 Wave 终端
你可以直接从他们的网站上下载 zip 文件。
解压它后,你会发现,它有一个命名为 Wave
的可执行文件,这个文件可以用来启动应用程序。
试试它,如果你喜欢它,那就把整个文件夹移到 /opt
目录,为它创建一个新的桌面文件,这样它在系统菜单中就可以被搜索到了。我目前就不详述了。
现在还没有像 deb/rpm 这样针对某些特定发行版的安装文件。目前也暂时没有 Snap 或 Flatpak 的包。这是一个新应用。给它一些时间。
源代码在 GitHub 上可供参考。如果你喜欢,能够给它打一个星标。
总结
如你所见所觉,这是一个为应用开发者所创造出来的应用程序 —— 那些在编程上花费更多时间,并且需要通过命令行来部署或调试他们的应用的人。
从设计上就看得出,这款产品是为 macOS 用户量身定做的。从界面到键盘快捷键,每一样都带有 macOS 的气息。
但是没关系。只要 Wave 在 Linux 上可用,那对 Linux 用户来说就不重要了。
我只希望它不会转为闭源且成为将来的付费工具。如果真的那样,那的确很扫兴。
via: https://news.itsfoss.com/wave-terminal/
- [1]来自浙江的 Chrome 118.0|Windows 10 用户 发表于 2023-12-01 10:34 的评论:我觉得真正的问题在于命令行本身,而不是终端,作为普通用户日常使用的工具,命令行是比较低效的,我觉得可以从一些细节优化命令行,比如cd进入目录后自动ls
- 来自江西南昌的 Firefox 121.0|GNU/Linux 用户 2024-01-04 12:35 4 赞 回复
- 你可以试试 felix 或者 ranger. 终端下的文件管理器。一直显示当前目录、交互式的 TUI,而不是 ls dir 这样单次的交互,确实很繁琐。
- [1]来自广东广州的 Chrome Mobile 119.0|Android 10 用户 发表于 2023-11-24 17:45 的评论:新的终端越来越多,使用Rust并支持GPU加速的有Alacritty、WozTerm、Rio,还有用Electron技术开发的Hyper(本地终端竟然要这么大的浏览器?),现在又来个Wave。每个终端都宣称自己的功能多么强大,反而让用户陷入选择困难症中。
- 来自福建厦门的 Chrome Mobile 108.0|Android 13 用户 2023-11-26 16:55 6 赞 回复
- 其实我觉得,若没有特殊需求,可以直接用桌面环境自带的终端,这样还能保证与桌面有比较好的整合。
- 来自福建厦门的 Chrome Mobile 108.0|Android 13 用户 2023-11-24 17:43 11 赞 回复
- "切片面包之后的最好东西"(The best thing after sliced bread) 是不是翻译成 "不二之选" 会更好一些?或者加个译注。即使基于人工智能,机器翻译似乎也不太擅长处理这些俗语、成句的翻译工作。