Nvim :help
页面,由 源代码 使用 tree-sitter-vimdoc 解析器生成。
CTRL-Z
来挂起。这将停止 Vim 并将您带回到启动它的 shell 中。然后,您可以执行任何其他命令,直到您对它们感到厌烦为止。然后,使用 "fg" 命令将 Vim 恢复回来。CTRL-Z {any sequence of shell commands} fg您将回到离开 Vim 的位置,没有任何改变。如果按下
CTRL-Z
不起作用,您也可以使用 ":suspend"。不要忘记将 Vim 恢复到前台,否则您所做的任何更改都会丢失!CTRL-Z
将改为最小化 Vim 窗口。:!ls :!dir第一个是用于 Unix 的,第二个是用于 MS-Windows 的。Vim 将执行该程序。当它结束时,您将收到一个提示,要求您按
<Enter>
。这允许您在返回到正在编辑的文本之前查看命令的输出。"!" 也用于在运行程序的其他地方使用。让我们看一下概述{program}
:r !{program} 执行 {program}
并读取其输出 :w !{program} 执行 {program}
并将其文本发送到其输入 :[range]!{program} 通过 {program}
过滤文本CTRL-Z
挂起 Vim。不同之处在于启动了一个新的 shell。:set shada=string该字符串指定要保存的内容。此字符串的语法是选项字符后跟一个参数。选项/参数对用逗号隔开。看看如何构建自己的 shada 字符串。首先,' 选项用于指定保存标记的文件数量(az)。为该选项选择一个不错的偶数(例如 1000)。您的命令现在看起来像这样
:set shada='1000f 选项控制是否存储全局标记(AZ 和 0-9)。如果此选项为 0,则不存储任何标记。如果它为 1 或您没有指定 f 选项,则会存储标记。您需要此功能,因此您现在拥有以下内容
:set shada='1000,f1< 选项控制为每个寄存器保存多少行。默认情况下,会保存所有行。如果为 0,则不保存任何内容。为了避免向 ShaDa 文件添加数千行(这些行可能永远不会被使用,并且会使 Vim 启动速度变慢),您最多使用 500 行
:set shada='1000,f1,<500
'0您将回到离开 Vim 的位置。因此您可以继续工作。每次您退出 Vim 时,Vim 都会创建一个标记。最后一个是 '0。'0 指向的位置将变成 '1。'1 将变成 '2,依此类推。标记 '9 将丢失。:marks 命令对于找出 '0 到 '9 将带您到哪里很有用。
:oldfiles
:e #<2除了 ":e" 之外,您还可以使用任何具有文件名参数的命令,"#<2" 项目可以在与 "%"(当前文件名)和 "#"(备用文件名)相同的位置使用。因此您也可以分割窗口以编辑第三个文件
:split #<3当您只想编辑一个文件时,#<123 这样的东西有点复杂。幸运的是,有一种更简单的方法
:browse oldfiles
<Enter>
(空表示取消)<Enter>
编辑第二个文件。:wshada! ~/tmp/shada并在第二个 Vim 中执行
:rshada! ~/tmp/shada显然,"w" 代表 "写入","r" 代表 "读取"。"! 字符由 ":wshada" 用于强制覆盖现有文件。当它被省略并且文件存在时,信息将合并到文件中。用于 ":rshada" 的 "!" 字符意味着 ShaDa 文件中的所有信息都优先于现有信息,这可能会覆盖它。如果没有 "!",则仅使用未设置的信息。这些命令还可以用于存储信息并在以后再次使用它。您可以创建一个包含 ShaDa 文件的目录,每个文件都包含用于不同目的的信息。
:mksession vimbook.vim稍后,如果您想恢复此会话,可以使用以下命令
:source vimbook.vim如果您想启动 Vim 并恢复特定会话,可以使用以下命令
vim -S vimbook.vim这告诉 Vim 在启动时读取特定文件。"S" 代表会话(实际上,您可以使用 -S 源任何 Vim 脚本,因此它也可以代表 "source")。
:set sessionoptions+=resize这里有会话,那里有会话
:wall :mksession! ~/.config/nvim/secret.vim :source ~/.config/nvim/boring.vim首先使用 ":wall" 写入所有已修改的文件。然后,使用 ":mksession!" 保存当前会话。这将覆盖以前的会话。下次您加载 secret 会话时,您可以从该位置继续。最后,您加载新的 "boring" 会话。
:source ~/.config/nvim/boring.vim因此,您可以完全控制是否要通过在会话中保存当前设置在下次继续工作,或者将会话文件用作起点。使用会话的另一种方法是创建您喜欢使用的窗口布局,并在会话中保存它。然后,您可以随时返回到此布局。例如,这是一个不错的布局
+----------------------------------------+ | VIM - main help file | | | |Move around: Use the cursor keys, or "h| |help.txt================================| |explorer | | |dir |~ | |dir |~ | |file |~ | |file |~ | |file |~ | |file |~ | |~/=========|[No File]===================| | | +----------------------------------------+
:help CTRL-W w :vertical split ~/您可以根据自己的喜好调整窗口的大小。然后使用以下命令保存会话
:mksession ~/.config/nvim/mine.vim现在,您可以使用此布局启动 Vim
vim -S ~/.config/nvim/mine.vim提示:要打开资源管理器窗口中列出的文件,请将光标移动到文件名并按 "O"。双击鼠标也会执行此操作。
:mksession! ~/.config/nvim/secret.vim :wshada! ~/.local/state/nvim/shada/secret.shada以及恢复此信息
:source ~/.config/nvim/secret.vim :rshada! ~/.local/state/nvim/shada/secret.shada
:mkviewVim 会决定将视图存储在何处。当你在以后编辑同一个文件时,你将使用此命令恢复视图
:loadview很简单,不是吗?现在你想在没有 'number' 选项的情况下查看文件,或者所有折叠都打开,你可以设置选项以使窗口看起来像那样。然后使用以下命令存储此视图
:mkview 1显然,你可以用以下命令恢复它
:loadview 1现在你可以通过在 ":loadview" 命令中使用和不使用 "1" 参数来在文件的两个视图之间切换。你可以通过这种方式为同一个文件存储最多十个视图,一个没有编号,九个编号为 1 到 9。
:mkview ~/.config/nvim/main.vim你可以用以下命令恢复它
:source ~/.config/nvim/main.vim
/* vim:set shiftwidth=4: */ ~将此行放在文件的前五个行或后五个行中的任何一行。在编辑文件时,你会注意到 'shiftwidth' 已经设置为 4。在编辑另一个文件时,它会恢复到默认值 8。对于某些文件,模型行很适合放在头部,因此可以将其放在文件的顶部。对于文本文件和其他模型行会妨碍正常内容的文件,将其放在文件的末尾。
:set modelines=10选项 'modeline' 可用于关闭此功能。当你以 Unix 上的 root 身份或 MS-Windows 上的管理员身份工作时,或者你不信任你正在编辑的文件时,请执行此操作
:set nomodeline使用以下格式作为模型行
any-text vim:set {option}={value} ... : any-text"any-text" 表示你可以在 Vim 将要使用的部分之前和之后放置任何文本。这允许使其看起来像注释,就像上面使用 "/*" 和 "*/" 所做的那样。" vim:" 部分是 Vim 用来识别此行的部分。在 "vim" 之前必须有空格,或者 "vim" 必须位于行的开头。因此,使用诸如 "gvim:" 之类的东西将不起作用。冒号之间的部分是一个 ":set" 命令。它的作用与键入 ":set" 命令相同,只是你需要在冒号之前插入一个反斜杠(否则它会被视为模型行的结尾)。
// vim:set textwidth=72 dir=c\:\tmp: use c:\tmp here第一个冒号之前有一个额外的反斜杠,因此它包含在 ":set" 命令中。第二个冒号之后的文本被忽略,因此可以在那里放置备注。