You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Vim内用类似-O的方式批量打开文件到标签页/分栏?

哈哈,这个问题我太熟了!Vim确实没有直接对应-O的单命令来批量操作,但咱们可以用内置的命令组合来实现,分两种情况给你唠唠:

一、批量将文件打开到新标签页

如果想把多个文件各自放到独立的标签页里,有两种好用的方法:

  • 方法1:参数列表 + argdo 命令
    先把要打开的文件加入参数列表:
    :args file1.txt file2.txt file3.txt
    接着执行这条命令,每个文件就会在新标签页打开:
    :argdo tabe %
    要是之前参数列表有残留内容,先敲:args!清空就行。
  • 方法2:循环命令
    不想动参数列表的话,直接写个循环也很方便:
    :for f in ['file1.txt', 'file2.txt', 'file3.txt'] | execute 'tabe' f | endfor
    如果是批量处理同类型文件(比如所有Python脚本),用glob函数自动匹配更高效:
    :for f in glob('*.py') | execute 'tabe' f | endfor
二、当前标签页内批量垂直分栏打开文件(类似启动时的-O效果)

这个就是你想要的「在当前标签页里批量垂直分栏」的操作,两种方法都很实用:

  • 方法1:参数列表 + vert sball
    先把目标文件加入参数列表:
    :args file1.txt file2.txt file3.txt
    然后执行这条命令,瞬间就能得到和vim -O file1 file2 file3一模一样的垂直分栏效果:
    :vert sball
  • 方法2:链式分栏命令
    如果文件数量不多,直接链式写命令更直观:
    :vsp file1.txt | vsp file2.txt | vsp file3.txt
    它会从当前窗口开始,依次在右侧创建垂直分栏并打开对应文件。想要水平分栏的话,把vsp换成sp就OK。

最后补个小技巧:分栏后要是窗口大小参差不齐,敲:wincmd =就能让所有窗口自动调整到均等尺寸~

内容的提问来源于stack exchange,提问作者fde-capu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 14:42:53