当前位置: 首页 > 科技观察

Vimvsnano:你应该选择哪个?

时间:2023-03-13 11:41:25 科技观察

我们需要使用文本编辑器来做笔记、编写程序或编辑系统配置文件来完成一些事情。无论您将其用于什么用途,您的Linux发行版都预装了一个文本编辑器。您很可能会注意到一些最好的现代文本编辑器,如Gedit、Geany、Kate等,它们已预装在您的Linux发行版中。但是,这些是基于GUI的程序。如果你想通过终端访问文本编辑器怎么办?您应该会发现它也内置在您的Linux发行版中。Vim和nano是两个最流行的CLI文本编辑器。但是是什么让它们如此受欢迎呢?您应该选择哪个作为文本编辑器?让我指出Vim和nano之间的区别,以帮助您做出决定。1.终端编辑器简介nano和Vim都提供了大部分的基本功能。虽然大多数Linux发行版都内置了nano,但您必须手动安装Vim。为了比较两者,让我简要介绍一下两者。VimVim是1991年开发的“Vi”文本编辑器的改进版本。Vim代表“ViImprovedViIMproved”。Vi是一个基于终端的文本编辑器,最初于1976年为Unix操作系统开发。Vim是它的增强版本,具有现代特性。考虑到其有助于编辑程序文件的各种功能,它也被称为“程序员的文本编辑器”。虽然它提供了一些高级功能,但您也可以使用它来编辑纯文本文件。GNUnanoGNUnano(我们在本文中称之为“nano”)是一个简单的基于终端的文本编辑器,其灵感来自Pico——华盛顿大学于1989年为套件中的Pine电子邮件部分开发的基于Unix的文本编辑器。Pico文本编辑器没有GPL(许可证),因此很难融入Linux发行版。因此,nano被开发为它的免费软件替代品。nano编辑器最初称为“tip”,然后在RichardStallman宣布它为官方GNU程序之前更名为nano。这个编辑器的亮点是它的易用性和最小的学习曲线。您不一定需要成为程序员才能使用nano。2.功能差异以下是Vim和nano的主要功能差异:Vim的主要特性多级撤销语法高亮命令行编辑文件名补全多窗口和缓冲区折叠Session支持宏nano的主要特性打开多个文件linebyline滚动撤消/重做语法着色行号请注意,通常Vim提供更高级的功能。但是,它们都提供了编辑系统配置文件、编程和文本编辑等基本功能。3.用作文本编辑器在Vim或nano中打开一个文件非常简单,只要输入你要使用的编辑器的名称,然后输入文件的路径即可。该路径可以是文件的绝对路径或文件的相对路径。vimDocuments/text.txtnanoDocuments/text.txt但是除了作为文本编辑器访问或打开文件之外,它还有很多其他功能,对吧?如果你想快速比较,这里有一些基于我的使用情况的比较点:Vim:模式驱动的编辑器,一开始学习曲线很大会话恢复语法高亮/着色提供高级功能nano:易于使用(经常使用的功能和它们的组合键列在底部)没有学习曲线专为快速编辑而设计nano和Vim之间的主要区别在于它们针对的受众非常不同。VimVim是一个模式驱动的编辑器。这意味着字母、数字和标点符号键在按下时都会执行独特的操作,而不是在屏幕上键入字符。这些模式是:普通模式可视模式插入模式命令行命令命令行编辑默认情况下,当您启动Vim时,它会以普通模式打开。每个键都有其独特的功能,不会立即开始键入被按下的字符。无论哪种模式,如果您愿意,您也可以将Vim配置为编写工具。要了解更多关于这些有趣的事情,您可以参考我们关于基本Vim命令和Vim提示和技巧的文章。启动Vim时的终端屏幕(不带参数)在正常模式下,按某些键将移动光标。例如,如果您按l(小写字母L),它会将光标向右移动一个字符,而按h键会将光标向左移动一个字符。如果要将光标向下移动一行,请按j键,如果要将光标向上移动一行,则应按k键。在普通模式下l,k,j,h是导航键。虽然您可以使用箭头键四处移动,但这样做效率更高。这些是Vim中的基本导航键。接下来最常用的键是w,b,e:按下w键可将光标移动到下一个单词。如果它已经在一个单词的开头,它会移动到下一个单词的开头。按b键,光标会移动到左边单词的开头。另一方面,e键将光标移动到右侧单词的末尾。您甚至可以将数字(作为前缀)与这些键混合使用。例如,按6w会将光标向前(向右)移动六个单词。如果你想进入一个模式,你必须按下组合键,比如:iforinsertmodeCTRL+Cbacktonormalmode:wqwritethefileandclosesthewindow.最后,我们列出了退出Vim的各种方法,如果你想看的话。这只是冰山一角。要了解有关Vim的更多信息,您可以使用vimtutor命令,它可以为您提供有关删除、编辑、保存文件等大多数基本命令的信息。GNUnanonano有一个基本界面,可以在窗口底部为您提供关键信息。对于入门,您可以参考我们的nano编辑器指南。![启动nanowithoutargumentswithoutarguments时的终端屏幕]13您无需参考手册页或任何文档即可执行基本操作。这就是为什么与Vim相比,nano被认为是用户友好的。尽管如此,nano中使用的一些术语仍然是“旧术语”,例如短语“WriteOut”、“WhereIs”分别代替了“Save”和“Find”。但是,这没什么大不了的。虽然很容易习惯,但它与使用记事本或Gedit(GUI程序)并不完全相同。例如,在大多数现代编辑器中,剪切的组合键通常是Ctrl+X,但在nano中是Ctrl+K。符号^用于表示Ctrl键与它旁边的键一起用作修饰键。您还可以找到组合键,如Ctrl+F(向前移动光标)、Ctrl+B(向后移动光标)。一些快捷键包括:Ctrl+X退出Ctrl+O写入(或另存为)Alt+U撤消上一个操作Ctrl+←后退一个词Ctrl+→前进一个词你可以查看官方备忘单GNUnano学习更多快捷键。总的来说,nano是一个对初学者更友好的编辑器,当你只想偶尔编辑一个文件时,它可以让你这样做。4.学习曲线考虑到以上所有信息,您一定已经意识到Vim与您习惯的传统文本编辑器不同。这是事实,这就是为什么Vim最初很难学习的原因。但是,对于高级用户来说,重要的是使用宏和自动完成等高级功能来节省时间。因此,如果您是一名程序员,或者碰巧经常编辑许多文件,Vim的学习曲线会很有成效。另一方面,nano提供了一个最小的学习曲线,并且比基于GUI的文本编辑器(如Gedit或记事本)更熟悉。哪个最适合你?Vim和nano都是合格的基于终端的文本编辑器。但是,当涉及到您如何与上述编辑器交互和使用时,它们是完全不同的。Vim非常灵活,可以适应各种工作流程,前提是您习惯了它的工作方式。相比之下,nano使用起来很简单,可以帮助你编辑任何你想要的东西。如果您还不确定,我建议您先从nano开始。而且,如果您认为需要更快地完成工作并需要更多功能,请切换到Vim。常见问题继续,让我谈谈几个问题,这些问题将帮助您有一个良好的开端。Vim比nano好吗?从技术上讲,是的。但是,如果您不需要它提供的所有功能,使用起来可能会让人不知所措。程序员使用Vim吗?系统管理员和程序员喜欢Vim的高级功能。所以,是的,他们倾向于使用它。纳米更受欢迎吗?可以说是的。nano是大多数用户使用的基于终端的编辑器。此外,它内置于大多数Linux发行版中。因此,它普遍受到用户的欢迎,而Vim仍然是针对特定人群的编辑器。