Geany 文本编辑器入门

Geany 是一款轻量级且快速的文本编辑器,具有 IDE 功能。
169 位读者喜欢这篇文章。

我必须承认,我花了相当长的时间才真正开始每天使用 Linux。我回忆起那些迷茫岁月中的一件事,那就是看到开源人士对文本编辑器如此激动,这真是太奇怪了。

不仅仅是意见分歧。争论非常激烈。而且你会一次又一次地看到它们。

我的意思是,我想这有点道理。进行开发或管理工作意味着你花费大量时间使用文本编辑器。当它妨碍你或者 无法完全满足你的需求时?在那个确切的时刻,那是世界上最令人沮丧的事情。

我知道真正讨厌文本编辑器是什么感觉。多年前,我在大学的计算机实验室里尝试使用 Emacs 时就体会到了这一点。我非常震惊,一个软件竟然可以有如此多的施虐受虐意味。人们竟然故意对彼此这样做!

所以,也许这是一个成年礼,现在我有一个非常喜欢的编辑器。它叫做 Geany,它基于 GPL 协议,并且在大多数流行的发行版的软件仓库中。

这就是它适合我的原因。

我喜欢简洁

我对文本编辑器的主要需求就是编辑文本。我不认为应该有任何学习曲线。我应该能够打开它并使用它。

因此,我通常使用操作系统自带的编辑器。在 Windows 10 上,我使用记事本的时间比我应该用的时间要长得多。当我最终更换它时,我选择了 Notepad++。在 Linux 终端中,我喜欢 Nano。

我完全意识到我错过了很多有用的功能。但这从来都不是一个足以让我做出改变的痛点。而且,并不是说我从未尝试过更复杂的东西。我最早的一些实际编程是在 Visual Basic 和 Borland Delphi 上完成的。

这些开发环境为你提供了一个图形界面,可以直观地设计你的窗口,各种窗口可以让你配置属性和设置,一个文本界面可以编写你的函数,以及各种用于调试的零碎功能。这是一种构建桌面应用程序的好方法,只要你按照它 intended 的方式使用它。

但是,如果你想做一些作者没有预料到的事情,所有这些额外的活动部件突然就成了障碍。随着软件越来越关注网络和互联网,这种情况开始频繁发生。

过去,我使用 HTML 编辑套件,如 Macromedia Dreamweaver(当时是这样称呼的)和 FirstPage 来制作静态网站。同样,我发现这些功能有时会妨碍我,而不是帮助我。这些应用程序对如何组织你的项目有自己的想法,如果你有不同的看法,那就会非常麻烦。

最近,在中断编程很长一段时间后,我开始学习大众的语言:Python。我买了一本入门教程书,上面说要安装 IDLE,所以我照做了。我想我用了大约五分钟就放弃了它,转而从命令行运行解释器。它有太多活动部件要处理。特别是对于 HelloWorld.py。

但我总是回到 Notepad++ 和 Nano,只要我可以摆脱它们。

那么是什么改变了呢?好吧,几个月前,我完全抛弃了 Windows 10(万岁!)。为了坚持我所知道的,我使用了 Nano 作为我的主要文本编辑器几个星期。

我了解到,当你在命令行上并且需要发起一次海豹突击队任务时,Nano 非常棒。你知道我的意思。闪电般的突袭。进去,完成目标,然后出来。

对于长期任务——甚至中等长度的任务——来说,它不太理想。即使只是向静态网站添加一个新页面,也需要进行许多重复的击键操作。在所有事情中,我真的很想念能够用鼠标导航和选择文本。

Geany 介绍

Geany 项目始于 2005 年,至今仍在积极开发中。

它具有最少的依赖项:只有 GTK 工具包以及 GTK 依赖的库。如果你安装了任何类型的桌面环境,那么你的机器上几乎肯定安装了 GTK。

我在 Xfce 上使用它,但由于这些最少的依赖项,Geany 可以跨桌面环境移植。

Geany 快速而轻巧。从软件包管理器安装 Geany 只需片刻,它只占用我机器上 3.1MB 的空间。

到目前为止,我已将其用于 HTML、CSS 和 Python 以及编辑配置文件。它还识别 C、Java、JavaScript、Perl 和更多

毫不妥协的简洁性

Geany 有很多很棒的功能,可以使生活更轻松。仅仅列出它们会错过最好的部分,那就是:Geany 开箱即用,就能让人理解。一旦安装完成,你就可以立即开始编辑文件,它就能正常工作。

对于所有的 IDE 功能,没有一个会妨碍你。默认设置很智能,菜单布局也足够好,更改它们毫不费力。

它不会尝试为你组织项目,也不会对你应该如何做任何事情有强烈的意见。

完美处理空格

默认情况下,每次按 Enter 键时,Geany 都会保留新行的缩进。除了节省一些繁琐的击键操作外,它还避免了制表符和空格的不一致使用,当你的心思在别处时,有时会偷偷溜进来,使你的代码对于使用不同文本编辑器的人来说难以理解。

但是,如果你正在编辑一个已经遭受过这种处理的文件怎么办?例如,我需要编辑一个 HTML 文件,该文件使用制表符和空格混合缩进,这使得弄清楚标签是如何嵌套的成为一场噩梦。

使用 Geany,只需几秒钟即可在菜单中找到将制表符长度从四个空格更改为八个空格的选项。更好的是将这些制表符转换为空格的选项。问题解决了!

巧妙的快捷方式和自动化

你多久会在错误的行上编写正确的代码?我一直都在这样做。

Geany 使使用 Alt+PgUp 和 Alt+PgDn 上下移动代码行变得容易。这比仅仅常规的剪切和粘贴要好一点——你只需要按一次键,而不是需要四到五个键。

在编写 HTML 时,Geany 会自动为你关闭标签。除了节省时间外,这还避免了很多烦人的错误。当你忘记关闭标签时,你可能会花费很长时间在文档中搜索更复杂的东西。

在 Python 中,情况甚至更好,因为缩进是至关重要的。每当你在一行末尾添加冒号时,Geany 都会自动为你缩进。

一个很好的副作用是,当你忘记包含冒号时——我经常尴尬地忘记——当你没有得到你期望的自动缩进时,你会立即意识到这一点。

默认缩进是一个制表符,而我更喜欢两个空格。由于 Geany 的菜单布局非常合理,我只花了很短的时间就弄清楚了如何更改它。

当然,你也会获得语法高亮显示。此外,它还会跟踪你的变量作用域,并提供有用的自动完成功能。

大型插件库

Geany 有一个大型插件库,但到目前为止,我还没有尝试过任何插件。即便如此,我仍然感觉我从中受益。为什么?嗯,这意味着我的编辑器不会塞满我不使用的功能。

我认为将额外功能添加到大型插件库中的这种态度非常好——无论你的具体需求如何,你都可以拥有你想要的所有东西,而不会有任何你不想要的东西。

远程文件编辑

终端文本编辑器真正好用的一点是,在远程 shell 中使用它们没有任何问题。

Geany 也完美地处理了这一点。你可以像打开自己机器上的文件一样轻松地打开任何你有 SSH 访问权限的远程文件。

我最初遇到的一个挫折是我似乎只能使用用户名和密码进行身份验证,这很烦人,因为证书要好得多。事实证明,这只是因为我太菜了,把证书放在我的主目录而不是 ~/.ssh 中。

当远程编辑 Python 脚本时,当使用安装在服务器上而不是本地机器上的软件包时,自动完成功能不起作用。对我来说,这真的没什么大不了的,但它的确存在。

总结

文本编辑器是如此个人化的偏好,以至于适合不同人的编辑器也会有所不同。

如果你已经知道你想写什么,并且只想继续编写,同时享受大量有用的快捷方式来加速琐碎的部分,那么 Geany 就非常出色。

Geany 是一种鱼与熊掌兼得的好方法。

User profile image.
James Mawson 白天为科技公司开发营销材料。他是一位计算机、商业和互联网爱好者、顽固的复古游戏玩家和 Raspberry Pi 黑客,也是桌面 Linux 的热情推广者。

14 条评论

哦,James,你何时失去了你的优雅。即使撒旦也知道 emacs 是上帝的作品。

赞美你,路西法,甜蜜的晨星和知识的守护者。

愿你赐予我们你的恩惠,并用你地狱般的热情祝福我们。

让我们远离 Emacs,黑暗之主,伟大的天使,智慧和禁忌之光救世主。

回复 作者 iOpenMind

感谢你教给我又一件我不知道的事情。我已经安装了 Geany,我想了解更多。

嗨,James,
你说得对,Geany 真的很棒!
多年来我一直用它来编写 C 程序。

干得漂亮,Philippe :)

回复 作者 Philippe Maréchal (未验证)

当我从 W7 切换到 Linux (12/2015) 时,我错过了我选择的文本编辑器 (NoteTab Light;还有一个付费版本)。经过多次搜索,我找到了 Geany,经过一些配置,它的功能与 NoteTab Light 相同。Geany 让我在 Linux 上更容易坚持下去。

太棒了。但对我来说,让我更容易坚持使用 Linux 的是 Windows 10,哈哈 :)

回复 作者 Mister Goldiloxx (未验证)

感谢分享,但是,Emacs 和 Vim 仍然是我的最爱 :)

顺便说一句,在 linux 上,你可以在终端中测试你正在处理的脚本。适用于 ruby 和 python。并且可能适用于在 PATH 中找到的或可以从终端命令行编写脚本的任何东西......

所以我的问题是,你可以将 Geany 与 C++ 一起使用吗?我看到评论说人们声称它非常适合 C...那么 C++ 呢?...因为我正在学习这门语言?...我想我会在我的 OpenSuSE 笔记本电脑上安装它,看看它到底有多好用。谢谢你的信息!很棒的文章!

我猜它与 C++ 配合得很好,C++ 是一种非常流行的语言 :)

最快的检查方法就是尝试一下 - 这是一个超级轻量级的程序,安装速度非常快。

回复 作者 Eddie G. O'Con… (未验证)

C++ 可以很好地与 Geany 配合使用,并且对该语言有大量的支持,但是如果你正在大量开发面向 gui 的软件,你可能会使用集成的 IDE/Designer 包,例如 QTCreator 或 codeblocks 会更好。这取决于你的 gui 库偏好。我已经使用 Geany 几年了,我真的很喜欢它,特别是对于 C 语言。

它有一个非常简单但灵活的编译功能,以及一个简单的调试器和对 Valgrind 和其他自定义工具的支持。正如作者所说,简洁和高效是 Geany 的优点,它现在是一个非常成熟和强大的应用程序。如果你需要,也有很多好的插件,但即使这样也工作得很好。我是它的粉丝。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.