linux 如何退出控制台中的“vim -y”?

8oomwypt  于 2023-02-15  发布在  Linux
关注(0)|答案(4)|浏览(225)

我不小心输入了vim -y install python-requests而不是yum ...,现在我不知道如何退出vim。shift + : + q!的标准选项不起作用。有什么选项可以在不杀死vim的情况下退出它吗?

lsmepo6l

lsmepo6l1#

使用-y(简单模式),Vim默认为 insert mode,并且您不能通过<Esc>永久退出到 normal mode。但是,与默认Vim一样,您可以通过<C-O>发出单个normal mode命令。因此,要退出,请键入<C-O>:q!<CR>
或者,有一个特殊的<C-L>Map,用于轻松模式返回到正常模式。

vnzz0bqm

vnzz0bqm2#

-y选项使vim在轻松模式下启动,您可以键入CTRL-L返回正常模式,然后键入:q!退出。

pgx2nnw8

pgx2nnw83#

我使用 gVim Easy,在.gvimrc中添加set im!对我很有效。
gVim Easy v.s. gVim

pprl5pva

pprl5pva4#

最好记住vimvim -y(gVim Easy)除了以下几点不同之外几乎完全相同:

  • vim以NORMAL模式启动;vim -y以INSERT模式启动。
  • vim中,Esc、Ctrl-[和Ctrl-C退出INSERT模式。但是,这些在vim -y中不起作用。相反,它们已被替换为Ctrl-L。

最好记住这一重要的相似之处:
在INSERT模式下,vimvim -y都允许您使用在INSERT模式下有效的Ctrl-命令。示例包括:

  • 按Ctrl-T缩进当前行。
  • Ctrl-D缩进(即取消缩进)当前行。
  • 按Ctrl-N和Ctrl-P可自动完成当前键入的单词。
  • 按Ctrl-Rx将寄存器x的内容粘贴到光标所在的位置。

与此相关的是:

  • Ctrl-O暂时进入NORMAL模式,发出一个NORMAL模式命令(之后立即返回INSERT模式)。

希望您能看到,最后一个命令(Ctrl-O命令)将允许您保存(使用:w)、保存并退出(使用:wq)、放弃未保存的更改(使用:e!),以及简单地不保存就退出(使用:q!)。
您也可以使用Ctrl-O后跟非ex命令,如u(表示“撤消”)、dd(删除当前行)、ZZ(保存并退出)和ZQ(退出而不保存)。
因此,如果您不熟悉在vim的INSERT模式下使用Ctrl-命令,我强烈建议您至少学习一下Ctrl-O命令,因为记住这一点将帮助您弄清楚如何退出vim -y(以及如何在vim -y中保存文档)(虽然Ctrl-L知识对vim -y有帮助,但Ctrl-O知识对vim -yvim都有帮助)。

要点

如果你只记得这篇文章中的两件事,请记住:

  1. vim退出INSERT模式的常规方式(即Esc、Ctrl-[和Ctrl-C)在vim -y(Vim Easy)中已被替换为Ctrl-L。
  2. Ctrl-O的INSERT模式命令在vim -y(Vim Easy)中和在vim中一样好用,所以你可以利用它来执行你想要的任何NORMAL命令。

相关问题