如何从命令行在 Vim 中的垂直/水平拆分窗口中打开文件

And*_*ilo 452 vim command-line window

一定有办法,像这样:

vim -[option] <file-list>
Run Code Online (Sandbox Code Playgroud)

从命令提示符不是从 Vim 中打开文件。

  • 垂直或/和水平拆分窗口
  • 在单独的选项卡中

LB4*_*B40 484

Ctrl+ W, S(大写)用于水平分割

Ctrl+ W, v(小写)用于垂直分割

Ctrl+ W,Q关闭一个

Ctrl+ W, Ctrl+W在窗口之间切换

Ctrl+ W, J(xor K, H, L) 切换到相邻窗口(直观上、下、左、右)

  • 要切换屏幕,请按“Ctrl-w”,然后按“向上箭头”或“向下箭头”来切换屏幕。 (13认同)
  • 啊,但你可以使用常规的 vim 移动,例如 `ctrl+wj` 跳转到当前缓冲区下方的缓冲区。 (8认同)

Lau*_*ves 448

我假设你的意思是从命令行。来自vim --help

-o[N]                Open N windows (default: one for each file)
-O[N]                Like -o but split vertically
Run Code Online (Sandbox Code Playgroud)

所以输入这个来打开水平分割的文件,例如:

vim -o file1.txt file2.txt file3.txt
Run Code Online (Sandbox Code Playgroud)

  • `-o` 就像 `:split`,`-O` 就像 `:vsplit` (28认同)
  • 真的吗?我从来不需要提供 N。 (15认同)
  • 确实,它似乎是我的 .vimrc 中的某些东西造成的。如果我把它移到一边,没有 N 的 -o 会按照文档中的说明工作。 (3认同)

Tay*_*ese 372

运行 vim 时:

  1. :sp filename 对于水平分割
  2. :vsp filename:vs filename垂直拆分

  • 这并没有回答提出的问题......但它确实帮助了我:D 谢谢! (70认同)
  • 谢谢,正是我要找的。我也`:set splitright` (8认同)
  • ctrl-ww 用于在拆分之间切换 (4认同)

小智 23

另一个有趣的技巧是 CLI -p 参数 - 它在最近版本的 vim 和 gvim 的单独选项卡中打开它们。

gvim -p file1.txt file2.txt
Run Code Online (Sandbox Code Playgroud)