当前位置: 首页 > news >正文

【vim进阶】vim编辑器的多文件操作(如何打开多个文件,如何进行文件间的切换,如何关闭其中的某一个文件)

一、如何打开多个文件?

方法一:启动打开

现在有多个文件 file1 ,file2 , … ,filen.

现在举例打开两个文件 file1,file2

vim file1 file2

该方式打开文件,显示屏默认显示第一个文件也就是 file1。

方法二:编辑中打开

在命令模式下使用edit指令

  • 打开一个文件可以通过: edit filename(或者简写为 e ) 。这里的文件名可以采用绝对路径或者是相对路径。

    :edit filename
    
  • 例如我们想打开项目中的基础配置文件lua/basic/settings.lua,就可以执行:e lua/basic/settings.lua。vim的命令模式是支持自动补全的,我们可以通过tab来快速补全路径。甚至可以在窗口中通过方向键手动选择路径。
    在这里插入图片描述

  • 假设现在已经打开了这个文件,我想打开它同级目录下的文件keybinds.lua 的话,我要同样的输入:edit lua/basic/keybinds.lua。本来我已经打开了与它同级目录中的 settings.lua 了,我为了打开keybinds.lua 要输入这么大一堆,如果我能以当前settings.lua 的路径作为相对路径就好了。

  • vim 在命令行中提供了一个 % 作为活动缓冲区的完整路径。我们在介绍批量替换文本的时候,%作为范围时表示当前打开的整个文本(详细内容点这里!)。这里它作为路径参数的话,表示的是当前打开文本的完整路径。

    :edit %<Tab>
    
  • 我们可以通过 :edit %<Tab> 来自动显示整个路径,然后通过<ctrl-w> 来删除单词,直到删除到当前目录,然后再输入keybinds.lua 就可以了

在这里插入图片描述

  • 用这种方法是简单了点,但是最后还要删除个文件名,上面我们按了3次 ,也挺麻烦的。有没有什么方法可以直接定位到对应的目录,让我直接输入文件名呢?可以通过 在%的后面加上:h 来自动去掉文件名,即输入:edit %:h 来自动出现对应的目录,然后直接输入文件名即可。
    :edit %:h<Tab>
    

二、如何进行文件间的切换?

  • 命令模式下,输入指令 ls ,屏幕上会出现打开的所有文件的序号和文件名。

    :ls
    

    上面的这个命令将会显示所有打开的文件。

  • 我们继续输入冒号 然后输入 bn (n指文件序号),即可切换到对应序号的文件。(当然也可以直接输入bn)

    :b2
    

    上面的这个命令将会在显示屏上显示第二个文件。


三、如何关闭其中的某一个文件?

  1. 先切换至要关闭的文件

  2. 在命令模式下输入指令bd即可关闭当前文件

    :bd
    
http://www.lryc.cn/news/55971.html

相关文章:

  • ToBeWritten之车辆通信
  • 自定义 Jackson 的 ObjectMapper, springboot多个模块共同引用,爽
  • 【面试】Redis面试题
  • 前端后端交互系列之原生Ajax的使用
  • openGauss 5.0企业版主从部署,实战狂飙
  • Vue中props组件和slot标签的区别
  • 基于Windows下VSCode搭建Vue开发环境
  • Android开发 Dialog对话框 DatePickerDialog
  • 开心档开发入门网之C++ Web 编程
  • C# 和 VB .NET 的纯 FFmpeg 包装器:CSFFmpeg Crack
  • python外篇(序列化和非序列化)
  • Linux总结(二)
  • 【4.1】Socket编程、TCP挥手
  • 【竞赛经历】CSDN第41期竞赛题解
  • 【Linux学习】信号——预备知识 | 信号产生 | 核心转储
  • 2023中国程序员薪酬报告出炉,你拖后腿了吗?
  • Mac下Python3安装及基于Idea开发
  • 2017年 团体程序设计天梯赛——题解集
  • “唯一靶点”的华堂宁会成控糖爆品吗?
  • Spring《三》DI依赖注入
  • leetcode 面试题 17.06. 2出现的次数
  • CMake入门教程【基础篇】5.configure_file构建配置
  • 软件开发可行性分析——健康食谱小程序
  • ShuffleNet V1 对花数据集训练
  • 测试人员转型是大势所趋:我的10年自动化测试经验分享
  • Pandas高级操作,建议收藏(一)
  • ASIC-WORLD Verilog(1)一日Verilog
  • 数据治理工具项目投标书技术部分-V1.6
  • ARMv8如何读取cache line中MOESI 状态以及Tag信息(tag RAM dirty RAM)
  • 学习通学习--脚本