关于vim:oeasy教您玩转vim-61-编辑过程

39次阅读

共计 1908 个字符,预计需要花费 5 分钟才能阅读完成。

编辑过程

回顾上次

  • vi能够加各种参数

    • vi +4 oeasy.txt
    • vi +/shiyanlou
    • vi +%s/shiyanlou/oeasy/g oeasy.txt
  • vi能够接管 stdin 的参数

    • ls -lah | vi -
  • vi还有各种模式

    • 命令行模式 ex oeasy.txt 或者vi -e oeasy.txt
    • 只读模式 vi -R oeasy.txt 或者view oeasy.txt

  • 如果加一个 -r 的参数能够么
  • 帮忙手册说的 swap 是什么意思?🤔

查看手册

  • 什么不会查什么
  • 咱们进入vim 查问:h swap
  • 看到编辑文件的过程

编辑过程

  • 进入 Code 文件夹
  • 间接关上vi

    • 并输出一些字符
    • 这个时候所有的编辑内容都在 内存
    • 如果 vim 过程完结,什么都会隐没
  • w oeasy.txt

    • 把内存外面的货色放进硬盘
    • 而后 持续编辑
    • 批改后的内容首先保留在内存
    • 而后被写入一个 oeasy.txtswap替换文件
  • 能够:sw

    • 看到这个替换文件的名字
    • 叫做.oeasy.txt.swp
    • 结尾的. 意味着 此文件为暗藏文件
    • 两头是 oeasy.txt 原始文件的名字
    • 前面是 .swp 意味着是 swap替换文件

复原文件

  • 咱们能够间接完结 terminal
  • 而后再开一个 terminal
  • 运行ls -lah *oeasy*
  • 能够看到两个文件

  • 一个是最后 :w 时保留的文件
  • 另一个是在内存主动保留的 .swp 交换文件

再次关上

  • 咱们运行vi oeasy.txt
  • 能够抉择

    • O 只读
    • E 间接编辑, 疏忽.oeasy.txt.swp

      • 如果这个时候持续编辑
      • 新的 swp 替换文件,命名为swo
      • 是降序的一个法则
      • 直到ssa
      • 能够通过 :sw 看到
      • 也能够 ls -lah 看到
    • R 间接读取 .oeasy.txt.swp 并关上

      • 这个时候进去之后,:w才把 swap 文件存储于oeasy.txt
    • D 删除交换文件

      • 这个要小心,间接就把交换文件删掉了
    • Q 退出
    • A 终止

复原文件

  • 复原文件能够有很多办法

    • vi oeasy.txt时抉择 Recover
    • 或者vi -r oeasy.txt
    • 或者 E 进入原始文件之后运行命令 :rec

      • 如果以后文件有批改
      • 运行之后要求保留以后地位文件
      • :w保留文件后,并不会把批改保留到 .swp 文件中
      • 如果有多个 swp 交换文件会让你选
      • 留神批改日期

另存与追加

  • 另存

    • :saveas oeasy.txt
    • 以后 buffer 另存为其余文件

  • 追加

    • :w >> o2z.txt
    • 把以后 buffer 追加写入其余文件

应用专门文件夹

  • 默认替换文件都在源文件同一文件夹
  • 能够从新设置一个新文件夹吗?

    • :set dir=/temp/vim

  • 配置专门的替换文件夹有什么益处吗?

    • 放在不同的硬盘,防灾
    • 缩小对于原始文件的文件夹进行净化
  • 能够写在 ~/.vimrc 中,每次都主动设置

更多细节

  • :nos(wapfile)

    • 能够让以后文件不必 swap 文件
  • swap文件更新的触发条件

    • 更新文字数

      • :set updatecount=300
      • 如果编辑文字达到 updatecount
      • 就会更新 swap 文件
      • 默认是200
    • 更新间隔时间

      • :set updatetime=10
      • 如果编辑文字时长达到 updatetime
      • 就会更新 swap 文件
      • 默认是 4000 毫秒
    • :preserver强行更新 swap 文件

设置备份

  • vim 个别没有产生备份文件
  • 如果你想要有个备份文件

    • :set backup

  • 备份文件名

    • 备份的缺省文件默认是在文件名前面加~
    • oeasy.txt~ 就是备份文件
    • 如果你想要设置备份文件的扩展名

      • :set backupext=.bak

  • 备份地位

    • 默认就在原地备份
    • 如果你想指定一个地位

      • :set backupdir=/tmp/backup
      • 如果无奈生成备份文件是因为没有文件夹
      • !mkdir /tmp/backup

写备份

  • 设置 写备份 writebackup

    • 如果:set nobackup
    • 并且:set writebackup
    • vim 也会备份一个备份文件
    • 然而只有你对源文件 :w 了之后
    • 备份就会隐没
    • 次要是怕写的过程中源文件隐没
  • 目前这些都能够通过 版本控制工具git 来解决

总结

  • 咱们这次理解了编辑过程
  • 默认有一个替换文件 swap

    • 批改的内容会保留到一个 swap 文件

      • 如果 swp 曾经存在
      • 会有个 swo 文件
      • 以此类推
    • 替换文件能够进行对源文件的修复
    • 没保留到源文件的可能保留到了替换文件
    • 能够对立设置替换文件的地位
    • 能够管制保留替换文件的触发条件

      • 字符数
      • 工夫长度
      • 手动触发
  • 还能够设置备份文件

    • 备份文件 backup
    • 写备份文件 writebackup
  • 其实咱们更常见的是另存为命令进行备份
  • 目前 vim 都是关上繁多文件
  • vim能够关上两个文件吗?🤔
  • 下次再说 👋

[Github 地址] (https://github.com/overmind19…)
[Gitee 地址] (https://gitee.com/overmind198…)
[蓝桥实验楼 邀请码 FJWYIMGB] (https://www.lanqiao.cn/course…)

正文完
 0