Merge pull request #30528 from wxy/20231123-Wave--A-Modern-New-Linux-Terminal-that-You-ll-Love-if-You-Hate-Command-Line

ATRP:wxy:20231123-Wave--A-Modern-New-Linux-Terminal-that-You-ll-Love-if-You-Hate-Command-Line
This commit is contained in:
Xingyu.Wang 2023-11-24 16:51:34 +08:00 committed by GitHub
commit a54a905b5c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 177 additions and 178 deletions

View File

@ -0,0 +1,177 @@
[#]: subject: "Wave: A Modern New Linux Terminal that You'll Love if You Hate Command Line"
[#]: via: "https://news.itsfoss.com/wave-terminal/"
[#]: author: "Abhishek https://news.itsfoss.com/author/root/"
[#]: collector: "lujun9972/lctt-scripts-1700446145"
[#]: translator: "ChatGPT"
[#]: reviewer: "wxy"
[#]: publisher: "wxy"
[#]: url: "https://linux.cn/article-16409-1.html"
Wave即使你讨厌命令行也会喜欢的现代新 Linux 终端
======
![][0]
> 这是 Linux 终端的 VS Code有可能在年轻一代编程者和 Linux 用户中流行起来。
对于新的终端仿真器的想法,我并不总是怀着兴奋的心情。
这里有 [数不清的用于 Linux 的终端软件][1]。从你的 Linux 发行版中自带的默认终端,到古老的经典版——“<ruby>终结者<rt>Terminator</rt></ruby>”,或更 “现代化” 的基于 Rust 且支持硬件加速的那种,如 [Rio][2]。
在这儿,可选择的软件绝对不匮乏。对我来说,为什么我需要关注另一个新的终端软件呢?
然而,当我发现这款新的终端时,我觉得,它有着引人瞩目的潜力。
![][3]
让我来解释下为何我会这么说。对于一名经验丰富的 Linux 用户,终端只不过是执行工作的一种工具。真正的能量来源于命令以及如何运用它们。在这里,终端仿真器吸引人的一点是支持多窗口,这也可以通过熟练使用 CLI 工具,比如 `screen``tmux` 来实现。
然而,对于一部分 Linux 用户,对他们来说,终端就是一个令人畏惧的地方。他们只会在绝对必要时以及再无他法的情况下才会使用它。就好像一个五岁的小孩夜里去洗手间。
然而,对于后者类型的 Linux 用户来说,这个新终端应该会是一个他们觉得舒适的工具。
看完它的特性后,你就会明白原因。
### Wave为那些不习惯使用命令行的人设计的终端
呃... 这似乎就是这些开发者的初衷。
[Wave 终端][4] 主要是为了那些需要不时使用终端部署他们的项目或者调试应用的应用开发者们所打造。
#### 现代化的代码编辑器界面
![][5]
没错,这是一个终端,而不是代码编辑器。其界面设计类似于 VS Code你可以把终端会话分组到工作区中。如果你的项目需要运行开发服务器、测试服务器和生产服务器你可以把它们分组到一个工作区。
#### 不用学任何键盘快捷键就能编辑文件
你可以直接编辑本地系统或远程机器上的文件。这里没有学习的难度。像常规的文本编辑器一样直接使用它即可。
![][6]
#### 可以查看 MarkdownJSON 或图片
你可以渲染 Markdown 的预览,美观地显示 JSON 文件或以表格形式显示 CSV 文件数据。你还可以查看图片。
![][7]
#### 保持 SSH 连接持久化并保有通用历史
另一个赞赏的功能就是 Wave 可以保持你的 SSH 连接持久化。不用担心因为闲置一个小时而从远程服务器断开连接。即使远程系统重启了,它也会自动为你重新连接。
此外你还可以得到合并的历史搜索的功能。不记得在哪个终端会话中运行了哪条命令没关系。Wave 在这方面已经帮你考虑好了。
> 🤩 保存并保持 SSH 连接持久化,把它们分组到工作区,并且在图形界面下编辑文件,这些都是一个开发者成为 Wave 终端粉丝的充足理由。
### 我使用 Wave 终端的经历
在使用它几个小时后,以下是我体验。
当我首次启动它时,我看到了一个弹出窗口。它默认开启了遥测功能,这是一个典型的 VS Code 式的功能。好吧,我把它禁用了。
![][8]
下一个问题是服务条款。你必须接受它,但这个界面实际上没有提供阅读条款的途径。然而我可以在 [他们的网站][9] 上看到它。它是从 [Basecamp 的开源政策][10] 中引用过来的。
我不明白这个条款的必要性,因为这个软件在 Apache 2.0 下是开源许可的。这只会让人困惑。
无论如何,这就是第一次运行时的界面。如你所见,界面就像一个现代化的代码编辑器,它内含一个侧边栏可以让你将终端标签分组到工作区中。你可以为每个标签分配名称、图标和颜色。这在你需要连接到多个远程服务器时大有帮助。
![][11]
在这方面,你还可以像经典的 Putty 那样保存你的 SSH 连接。
![][12]
这样的话,你可以预设某个标签在启动时就开始特定的 SSH 连接。
对我来说最大的问题(如果这可以被称为“问题”)是输入字段。这只是底部的一个小输入框。你在这输入命令,它显示输出信息,整个输入命令及其输出都被组成一个框,然后移到上方。
![][13]
我更习惯于经典的终端输入方式,从上开始输入,然后一行行向下移动(然后滚动)。而在这里,却恰恰相反。
看,这是有意为之的。每条命令及其输出都是一个独立的框,一个独立的元素。你可以复制它、最小化它或从视图中将其存档。
#### 切片面包之后的最好东西
Wave 终端最大的目标就是它让你不会感觉自己在终端里。对于在终端中编辑文件的初学者来说,这就是他们的阿喀琉斯之踵。即使是在终端中使用基础编辑器(比如 Nano那也要有一段学习曲线。
但是 Wave 不同。它内置了一个编辑器,你可以用 `codeedit filename` 命令调用,你就能像在图形文本编辑器中那样编辑文件。没错,你可以随意地使用你的鼠标。你还可以从编辑器菜单中选择文件类型。
![][14]
对于在终端中编辑配置文件感到提心吊胆的人来说,这绝对是个天赐福音。
开发者经常需要处理 Markdown 和 JSON 文件。Wave 终端完全有能力渲染这些文件。
![][15]
SSH 的连接是永久的。再也不用厌烦地频繁从远程服务器上断开连接了。Wave 完美地处理了它。
你可以从其 [文档页面][16] 进一步探索它的特性。
### 在 Linux 上安装 Wave 终端
你可以直接从他们的网站上下载 zip 文件。
> **[下载 Wave][18]**
解压它后,你会发现,它有一个命名为 `Wave` 的可执行文件,这个文件可以用来启动应用程序。
![][19]
试试它,如果你喜欢它,那就把整个文件夹移到 `/opt` 目录,为它创建一个新的桌面文件,这样它在系统菜单中就可以被搜索到了。我目前就不详述了。
现在还没有像 deb/rpm 这样针对某些特定发行版的安装文件。目前也暂时没有 Snap 或 Flatpak 的包。这是一个新应用。给它一些时间。
源代码在 GitHub 上可供参考。如果你喜欢,能够给它打一个星标。
> **[Wave Terminal 的 GitHub 仓库][20]**
### 总结
如你所见所觉,这是一个为应用开发者所创造出来的应用程序 —— 那些在编程上花费更多时间,并且需要通过命令行来部署或调试他们的应用的人。
从设计上就看得出,这款产品是为 macOS 用户量身定做的。从界面到键盘快捷键,每一样都带有 macOS 的气息。
但是没关系。只要 Wave 在 Linux 上可用,那对 Linux 用户来说就不重要了。
我只希望它不会转为闭源且成为将来的付费工具。如果真的那样,那的确很扫兴。
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/wave-terminal/
作者:[Abhishek][a]
选题:[lujun9972][b]
译者:[ChatGPT](https://linux.cn/lctt/ChatGPT)
校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/root/
[b]: https://github.com/lujun9972
[1]: https://itsfoss.com/linux-terminal-emulators/
[2]: https://raphamorim.io/rio/
[3]: https://news.itsfoss.com/content/images/2023/11/wave-terminal.webp
[4]: https://www.waveterm.dev/
[5]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-1.webp
[6]: https://news.itsfoss.com/content/images/2023/11/wave-edit-files-inline.webp
[7]: https://news.itsfoss.com/content/images/2023/11/view-images-wave-terminal.webp
[8]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-tos.png
[9]: https://www.waveterm.dev/tos
[10]: https://github.com/basecamp/policies/blob/master/terms/index.md
[11]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-first-screen.png
[12]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-putty-like-ssh-connection-add.png
[13]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-interface.png
[14]: https://news.itsfoss.com/content/images/2023/11/editing-files-wave-terminal.png
[15]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-markdown-view.png
[16]: https://docs.waveterm.dev/quickstart
[17]: https://mintlify.s3-us-west-1.amazonaws.com/commandline/_generated/favicon/apple-touch-icon.png?v=3
[18]: https://www.waveterm.dev/download
[19]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-executable.png
[20]: https://github.com/wavetermdev/waveterm
[0]: https://img.linux.net.cn/data/attachment/album/202311/24/164058enkoo1pol4sllr1p.jpg

View File

@ -1,178 +0,0 @@
[#]: subject: "Wave: A Modern New Linux Terminal that You'll Love if You Hate Command Line"
[#]: via: "https://news.itsfoss.com/wave-terminal/"
[#]: author: "Abhishek https://news.itsfoss.com/author/root/"
[#]: collector: "lujun9972/lctt-scripts-1700446145"
[#]: translator: " "
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Wave: A Modern New Linux Terminal that You'll Love if You Hate Command Line
======
The VS Code of Linux Terminals is here and it has the potential to
become popular among the gen z of coders and Linux users.
Not every day I get excited about the idea of a new terminal emulator.
There are [tons of terminals available for Linux][1]. From the default one that comes with your distribution to the classic of yore, terminator or the more 'modern' Rust-based, hardware accelerated ones like [Rio][2].
There is no dearth of choices here. Why should I care about one more addition to the long list?
And yet, when I came across this new terminal, I got the feeling that it has the potential to go big.
![][3]
Hear me out on why I say that. For a seasoned Linux user, the terminal is just a tool to get things done. The main power lies with the commands and how they are used. The one thing that attracts here is the multiple windows and that too can be achieved by mastering CLI tools like screen or tmux.
But there is a population of Linux users for whom the terminal is a scary place. They go there only when it is absolutely necessary and there is no alternative. Like a five-year-old child going to the washroom at night.
And this new terminal should be a comfortable tool for this second type of Linux user.
You'll understand after you see its features.
### Wave: A terminal for those who are not comfortable with the command line
Well... that's what the developers seem to have in mind here.
[Wave terminal][4] is created primarily for application developers who have to use the terminal every now and then to deploy their project or troubleshoot their application.
#### Moder code editor like interface
![][5]
Yes, that's a terminal, not a code editor. The interface is like VS Code where you have the ability to group terminal sessions into workspaces. Working on a project that has a dev server, a test server and a production server, group them in a workspace.
#### Edit files without mastering any keyboard shortcuts
You can edit files inline, be it on your local system or the remote machine. And there is no learning curve here. Just use it like a regular text editor.
![][6]
#### View Markdown, JSON or images
You can render Markdown preview, pretty display JSON files or display CSV files data in tabular format. You can also view images.
![][7]
#### Persistent SSH connections and universal history
Another awesome feature is that Wave gives you persistent SSH connections. Don't worry about getting disconnected from the remote server because you were idle for an hour. It will automatically connect you, even if the remote system reboots.
You also get the feature of combined history search. Don't remember which command you run in which terminal session? No problem. Wave has got your back there.
🤩
The ability to save and have persistent SSH connections, group them in workspaces, and the graphical editing of files are good enough reasons for a developer to become a fan of Wave terminal.
### My experience with Wave terminal
Here's what I feel after using it for a couple of hours.
When I first started it, I was greeted with a pop screen. It had telemetry enabled by default. Classic VS Code like feature. Fine, I disabled it.
![][8]
The next hiccup is the terms of service. You have to accept it but there is no way to actually read the terms on this screen. However, I can see it on [their website][9]. It's been adopted from the [Basecamp open source policies][10].
I really don't see the need for this when the software is open source licensed under Apache 2.0. It is just going to confuse people.
Anyway, this is what the interface looked like in the first run. As you can see, the interface is like a modern code editor with a sidebar that allows you to group terminal tabs in workspaces. You can assign name, icons and colors to each tab. This is helpful if you connect to multiple remote servers.
![][11]
In that regard, you can also save your SSH connections in the classic Putty style.
![][12]
This way, you can preconfigure a certain tab to start with a particular SSH connection.
The main trouble for me (if I can call it that) is with the input field. It's a tiny input box at the bottom. You enter the command and it shows the output as the entire command and its output are grouped into a box and moved up.
![][13]
I am used to the classic terminal input style where things start at top and then move towards bottom. Here, it is the opposite.
See, that's intentional. Each command and its output is a separate box, a separate element. You can copy it, minimize it or archive it from the view.
#### The best thing after sliced bread
The biggest promise of Wave terminal is that it doesn't make you feel like you are in the terminal. The Achilles heel for beginners is editing files in the terminal. Even the simplest of the terminal-based editor (read Nano) has a learning curve.
But not Wave. It has a built-in editor that can be invoked with `codeedit filename` command and you get to edit the file the same way you do in a graphical text editor. Yes, you can use your mouse as freely. You may also specify the file type from the menu in the editor.
![][14]
For a person who gets cold feet while editing config files in the terminal, this is a god-send feature.
A developer often has to deal with Markdown and JSON files. Wave terminal is perfectly capable of rendering these files.
![][15]
And the SSH connections are persistent. Forget about being disconnected from remote server time and again. Wave handles it perfectly.
You can further explore its features from its [documentation page][16].
![][17]
### Installing Wave terminal on Linux
You can download the zip from their website.
[Download Wave][18]
Extract it and you'll see that it has an executable file named `Wave` that can be run to launch the application.
![][19]
Play around with it and if you like it enough, move the entire folder to the /opt directory, create a new desktop file for it so that it can be searchable in the system menu. I won't go in those details for the moment.
There are no distro specific installer files like deb/rpm. Snap and Flatpak packages are also not present for the moment. It's a new application. Give it some time.
The source code is available on GitHub. Check it out and give it a star if you like it.
[Wave Terminal on GitHub][20]
### Conclusion
As you can see and feel, this is an application created for application developers. People who spend more time on coding and have to deal with the command line for deploying their applications or debug them.
It is also evident that it is crafted for macOS users. The interface, keyboard shortcuts, everything screams mac.
But that's okay. It should not matter to the Linux users as long as Wave is available on Linux.
I just hope that it doesn't go closed source and become a paid tool in the future. If that happens,
* * *
--------------------------------------------------------------------------------
via: https://news.itsfoss.com/wave-terminal/
作者:[Abhishek][a]
选题:[lujun9972][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://news.itsfoss.com/author/root/
[b]: https://github.com/lujun9972
[1]: https://itsfoss.com/linux-terminal-emulators/
[2]: https://raphamorim.io/rio/
[3]: https://news.itsfoss.com/content/images/2023/11/wave-terminal.webp
[4]: https://www.waveterm.dev/
[5]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-1.webp
[6]: https://news.itsfoss.com/content/images/2023/11/wave-edit-files-inline.webp
[7]: https://news.itsfoss.com/content/images/2023/11/view-images-wave-terminal.webp
[8]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-tos.png
[9]: https://www.waveterm.dev/tos
[10]: https://github.com/basecamp/policies/blob/master/terms/index.md
[11]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-first-screen.png
[12]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-putty-like-ssh-connection-add.png
[13]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-interface.png
[14]: https://news.itsfoss.com/content/images/2023/11/editing-files-wave-terminal.png
[15]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-markdown-view.png
[16]: https://docs.waveterm.dev/quickstart
[17]: https://mintlify.s3-us-west-1.amazonaws.com/commandline/_generated/favicon/apple-touch-icon.png?v=3
[18]: https://www.waveterm.dev/download
[19]: https://news.itsfoss.com/content/images/2023/11/wave-terminal-executable.png
[20]: https://github.com/wavetermdev/waveterm