困扰无数人的Linux Vim退出方法,有这么简单吗?

Vim 是使用最广泛的文本编辑器之一。在编程界,一直有一个关于它的神秘问题。知道答案的人很少,但却很难谈论。即:如何退出Vim?

据说很多程序员即使退休也没有退出Vim,比如这位:

他已经使用Vim 两年了,为什么?因为他不知道如何戒掉。

另一群程序员说:很简单,我刚卖了一台新电脑就搞定了。

很多人打开Vim 却不知道如何退出。这不是玩笑,而是一个令人尴尬的事实。

在知名IT 技术问答网站Stack Overflow 上,“如何退出Vim 编辑器?”问题的总浏览量现在已经突破200万了,无数程序员都来讨论如何退出Vim。

在百度体验中,类似问题一年内浏览量超过35万次。

我们来看看这个问题的答案。这个答案是准确的、规范的,但却让无数使用Vim的程序员感到汗颜。 (这个答案翻译自Stack Overflow)

如何退出Vim?

单击Esc键进入“普通模式”。然后您可以输入: 进入“命令行模式”。屏幕底部将出现一个冒号(:),您可以键入以下命令之一。要执行该命令,请按Enter 键。

· :q 退出(:quit 的缩写)

·:q!退出而不保存(:quit 的缩写!)

· :wq写入并退出

·:wq!即使文件只有读权限也可以写入并退出(如果文件没有写权限:强制写入)

· :x写入并退出(与:wq类似,但仅在有变化时写入)

· :exit 写入并退出(与:x相同)

· :qa 全部退出(:quitall 的缩写)

· :cq 不保存退出并使Vim 返回非零错误(即出错退出)

也可以直接从“正常模式”退出Vim,输入ZZ 保存并退出(使用:x)或ZQ 直接退出(使用:q!)

现在Vim已经更新到Vim8,“如何退出Vim”已经成为程序员们的热门话题。更多的程序员表面上不知道如何退出,但背地里却成了自学成才的Vim 高手。

现在我们已经了解了如何退出Vim的关键点,我们就可以开始深入学习Vim的旅程了。

在Cygwin中体验类UNIX的操作体验

Cygwin 是一个适用于Windows 的类UNIX 环境。它提供了命令行界面,致力于将强大的UNIX Shell命令行和相关支持工具带入Windows操作系统。

困扰无数人的Linux Vim退出方法,有这么简单吗?

Cygwin 应用程序可能称为Cygwin64 Terminal 或Cygwin Termianl,具体取决于操作系统的类型。找到它的图标,如图所示。

打开它,你会看到如下的命令行提示界面,Linux用户应该非常熟悉。

Cygwin 是一种在Windows 环境中体验Linux 系统Shell 命令的方式,这意味着一旦选择使用Cygwin,就需要遵循Linux 系统中的说明和约定。

同时,还需要注意Windows风格的换行符和Linux风格的换行符,因为Windows和Linux处理换行符的方式不同。如果遇到Vim 无法识别的^M 字符,可以通过对相应文件执行dos2unix 命令来解决问题。

Vim 的基本操作

1

打开文件

首先,用户可以打开自己喜欢的命令行终端(Linux和macOS系统中的Terminal,Windows系统中的Cygwin)并按照以下步骤编写一个非常基本的Python程序。

让我们从一个简单的平方根计算器开始并运行以下命令。

$vimanimal_farm.py 这将打开一个名为animal_farm.py 的文件。如果文件存在,读者将看到其内容;如果文件不存在,阅读器将得到一个空白界面

Vim 的底部状态中显示文件名,旁边有[New File] 字样,表明这是一个新文件。现在读者已经用Vim 打开了第一个文件。

如果您之前打开过Vim,则可以使用以下命令加载文件(不要忘记在命令后按Enter 键)。

$vimanimal_farm.py 这可能是您在Vim 中运行的第一个命令。输入冒号字符:表示进入命令行模式。在此模式下输入的文本将被Vim 解析为命令。按Enter 键结束命令。您可以通过Vim 命令执行许多复杂的操作,包括访问系统的命令行。命令:e 表示编辑。

2

修改文字

默认情况下,Vim 处于正常模式,其中每个键对应于某个命令。

输入命令我将使Vim 进入插入模式。底部状态栏会显示“INSERT”字样

插入模式下的行为与其他无模式编辑器中的行为类似。通常,除了添加新文本之外,您不需要在插入模式上花费太多空间。

现在输入如下所示的代码。这就是前面提到的Python程序。

按Esc 键返回Vim 的正常模式。这时状态栏上的“INSERT”字样消失,你可以继续在Vim中输入命令。

上面的代码并不是Python编程的最佳实践,这里只是用来演示Vim的一些功能。

3

保存并关闭文件

困扰无数人的Linux Vim退出方法,有这么简单吗?

要保存文件,请执行命令:w。

请注意,输入命令后按Enter 键。

:w表示写入。

:w命令还可以后面跟一个文件名并保存为新文件。修改的内容将被保存到这个新文件中,当前文件将成为这个新文件。尝试执行命令:w Animal_farm2.py。

退出Vim,检查文件是否已经生成。命令:q 表示退出。也可以将write和exit命令组合成:wq,即先保存后退出。

退出Vim并返回系统命令行后,可以检查当前目录的内容是否发生变化,如下所示:

$ls$python3animal_farm.py$python3animal_farm.pycatdogsheep

下图显示了这三个命令的输出。

Vim进阶实用演练,迎来升华

以上的基本操作你都学会了吗?一旦我们熟练了,我们就可以结合专业教程进行Vim8的实际练习。

请前往异步社区购买

作为一本如何使用Vim的综合教程,本书介绍了编程中各种常用的文本编辑方法和实际操作,并深入探讨了Vim的内部数据结构和VimScript脚本编程,内容详尽。

本书基于Vim 8平台,介绍了前沿分支Neovim,同时也推荐了更高级的Oni编辑器,具有包容性,融合了Vim社区的典型使用经验和发展趋势。

本书适合初级、中级和高级程序员。本书将介绍如何在日常工作流程的各个方面有效地使用Vim。尽管涵盖了Python,但阅读本书并不需要具备Python 或Vim 的经验。

向下滚动查看目录:

第1 章

开始你的Vim 之旅。

介绍基本概念。

第2 章,

高级编辑和文本浏览。

介绍了光标移动方法和更复杂的编辑操作。此外,还推出了几个插件。

第3章

使用pilot key ——插件管理。

困扰无数人的Linux Vim退出方法,有这么简单吗?

介绍了模式、键盘映射和插件管理。

第4 章

理解课文。

描述如何在语义上使用代码库以及浏览代码库中的文件。

第5章

构建、测试和执行。

描述如何在编辑器内部和外部运行代码。

第6章

使用正则表达式和宏来重构代码,深入介绍代码重构操作。

第7章

定制您自己的Vim。

讨论如何进一步定制您的个人Vim 工作流程。

第8章

非凡的Vimscript。

深入介绍Vim 提供的强大脚本语言。

第9章

尼奥维姆。

引入了新的Vim 变体。

第10章

还要学什么。

用户评论


稳妥

终于找到一篇靠谱的关于Vim退出的文章了!之前一直被困扰,现在终于可以轻松退出Vim了,谢谢作者!

    有9位网友表示赞同!


陌颜幽梦

这篇文章真的太实用了!我之前一直不知道怎么退出Vim,每次都要用各种奇葩的方法,现在终于可以像正常人一样退出啦!

    有13位网友表示赞同!


良人凉人

Vim的退出方法确实挺多,但是这个方法确实是最简单易懂的,推荐给所有刚接触Vim的朋友!

    有15位网友表示赞同!


非想

感觉这篇文章写得有点简单,对于一些刚接触Vim的新手来说,可能不太容易理解,建议作者可以多加一些图文解释!

    有14位网友表示赞同!


揉乱头发

这篇文章的标题有点标题党的感觉,感觉并没有那么简单,但是确实提供了一些实用的小技巧,可以参考一下!

    有13位网友表示赞同!


海盟山誓总是赊

我觉得Vim的退出方法有很多种,这篇文章只介绍了一种,其他的方法也值得尝试一下,毕竟找到适合自己的才是最好的!

    有14位网友表示赞同!


颓废i

这篇文章真的是太棒了!我之前一直被Vim的退出方法困扰,现在终于可以轻松搞定啦!

    有18位网友表示赞同!


_心抽搐到严重畸形っ°

这篇文章太简洁了,感觉有些地方讲得不够清楚,比如一些特殊情况下的退出方法,作者可以补充一下!

    有6位网友表示赞同!


何必锁我心

之前一直被Vim的退出方法困扰,今天终于找到了一篇靠谱的文章!

    有18位网友表示赞同!


安好如初

这篇文章介绍的Vim退出方法确实很简单,但是对于一些新手来说,可能还是需要多练习才能熟练掌握!

    有8位网友表示赞同!


風景綫つ

感觉这篇文章有点过于简单,没有深入讲解Vim的退出机制,建议作者可以多加一些内容!

    有15位网友表示赞同!


青袂婉约

Vim的退出方法确实有很多种,这篇文章介绍的只是其中一种,但是已经足够用了!

    有9位网友表示赞同!


枫无痕

这篇文章的标题有点夸张,不过内容确实不错,可以推荐给所有使用Vim的朋友!

    有11位网友表示赞同!


赋流云

我尝试了一下这篇文章介绍的方法,感觉确实很实用,可以轻松退出Vim啦!

    有7位网友表示赞同!


陌上蔷薇

这篇文章的排版有点乱,建议作者可以改进一下,这样看起来更舒服!

    有5位网友表示赞同!


陌離

这篇文章的标题有点误导人,感觉并没有那么简单,但是内容还是比较实用的!

    有12位网友表示赞同!


惯例

Vim的退出方法确实是一个比较头疼的问题,这篇文章提供了一些解决方案,可以参考一下!

    有8位网友表示赞同!


有些人,只适合好奇~

这篇文章介绍的Vim退出方法很实用,可以推荐给所有使用Vim的朋友!

    有5位网友表示赞同!


凉城°

我之前一直以为Vim的退出方法很复杂,现在才知道原来这么简单!

    有5位网友表示赞同!


沐晴つ

这篇文章的标题确实有点吸引人,不过内容有点简单,建议作者可以多加一些内容!

    有11位网友表示赞同!

上一篇
下一篇

为您推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

联系我们

0898-88881688

在线咨询: QQ交谈

邮箱: email@zhutibaba.com

工作时间:周一至周五,9:00-17:30,节假日休息