博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Vim学习笔记——编辑多个文件
阅读量:4218 次
发布时间:2019-05-26

本文共 2038 字,大约阅读时间需要 6 分钟。

7.1 编辑另一个文件

      :edit filename.txt  :编辑另一个文件

      :edit! filename.txt  :强制编辑另一个文件,不进行保存当前缓冲区的内容.

      :hide edit filename.txt :隐藏缓冲区内容,直接编辑另一个文件,但此时不保存当前的文件.

7.2 文件列表

      (1) 打开多个文件

          vim note05.txt note06.txt note07.txt

      (2) 文件列表——当前在编辑哪个文件???

          :args命令(arguments):显示当前的文件列表,当前文件以[]括起来.

      (3) 文件列表中的切换

          :next命令 :打开编辑下一个文件.

          :next!命令 :强制打开编辑下一个文件.

          :wnext命令 :完成两个单独的命令 :write :next

          :previous命令 :打开编辑上一个文件.

          :wprevious命令 :保存当前文件,打开编辑上一个文件.

          :last命令  :打开最后一个文件,wlast命令.

          :first命令  :打开第一个文件,wfirst命令.

          :2next命令  :使用计数命令,向前跳过两个文件.

      (4) 自动保存

          :set autowrite  :在不同的文件转移时,不需要每次都执行write命令.

          :set noautowrite  :关闭自动保存.

          备注:与word自动保存不同的,过一段时间会自动保存,指某个事件发生时自动保存这个文件.

      (5) 编辑另一个文件列表

          :args note01.txt note02.txt note03.txt

          :args *.txt   :支持通配符.

      (6) 最后文件了吗???

          当你有一个列表文件要编辑时,Vim会假设你要全部编辑它们.如果你要退出,需要再执行一次退出

命令.

  7.3 切换到另一个文件

      1. CTRL-^:两个文件之间快速的切换.

         :args note01.txt note02.txt note03.txt

         :next或previous之后,可以使用这个命令非常方便的在两个文件中进行切换.

      2. 多个文件之间的标记

         (1) 全局标记: 使用大写字母命名标记.

             如:note06.txt 50%mM note07.txt GmB

             '或`命令进行跳转到自定义标记的位置.

             备注:如果你删除了局部标记所在的行,也就相当于删除了这个局部标记.

                  与全局标记不同,全局标记会一直存在下去.

         (2) 预定义的标记

             `":关闭文件时的光标的位置.

             `.:文件最后一次修改的地方.

             备注:在多文件中也可以使用CTRL-o CTRL-i两个同样试用.

7.4 备份

      :set backup  :生成备份文件,文件名为原文件名加一个~.

      备注:ZZ进行退出,是不能生成备份文件的,需要使用:write

      :set backupext=.bak :修改生成一个名为原文件名加.bak的备份文件.

      :set patchmode=.orig :保存一份修改前的原始文件作为副本,同时后缀为.orig.

  7.5 在文件间复制粘贴

      1. 简单的复制粘贴

         :edit thisfile.txt

         /This

         vjjj$y

         :edit otherfile.txt

         /There

         p

      2. 使用寄存器

         复制多个独立的文本到另一个文件中时,这时可以使用寄存器,使用a到z的字母作为寄存器的名字.

         CTRL-vjjj$"by  :把一个文本块复制到名为b(block)的寄存器中.

         "fyas       :把一个句子复制到名为f(first)的寄存器中.

         "l3Y        :把3个整行的内容复制到名为l(line)的寄存器中.

         "bp         :取出寄存器b中的内容文本.

         "wdaw       :删除一个word并将其存入名为w(word)的寄存器中.

      3. 向文件中追加内容

         :read note06.txt     :向当前文件进行追加note06.txt文件内容.

         :write >> note06.txt :将当前文件追加到文件名为note06.txt文件中去,只能追加到文件的最后.

         :write logfile       :将当前文件写入到logfile中去

         备注:Visual模式下也可以进行选择要写入的文本.

  7.6 查看文件

      vim note07.txt  :直接打开编辑文件,可以读写.

      vim -R note07.txt  :以只读的方式打开该文本.

      view note07.txt    :以只读的方式打开该文本.

      vim -M note07.txt  :强制性地避免对文件进行修改,其中的-M选项告诉Vim工作于viewer模式中.

      :set modifiable

      :set write

  7.7 更改文件名

      :write filename   :将当前文件写入到新的文件中去.

      :saveas filename  :将当前文件进行另存为操作.

      :file filename    :与saveas功能相似,也可以实现文件名的更改.

转载地址:http://adxmi.baihongyu.com/

你可能感兴趣的文章
leetcode18. 4Sum
查看>>
leetcode3. Longest Substring Without Repeating Characters
查看>>
leetcode49. Group Anagrams
查看>>
leetcode136. Single Number
查看>>
leetcode187. Repeated DNA Sequences
查看>>
leetcode166. Fraction to Recurring Decimal
查看>>
leetcode36.Valid Sudoku
查看>>
leetcode85 maximal rectangle
查看>>
2016年半年计划~
查看>>
推荐系统简述(1)基于内容的推荐系统
查看>>
leetcode 149. Max Points on a Line
查看>>
python 小练习之山寨版markdown格式txt文件转html文件
查看>>
python小练习
查看>>
leetcode26. [Array]Remove Duplicates from Sorted Array
查看>>
leetcode 27. [Array]Remove Element
查看>>
leetcode66.[Array] Plus One
查看>>
leetcode283. [Array]Move Zeroes My Submissions Question
查看>>
leetcode292.[Array] Nim Game
查看>>
推荐系统简述(2)基于近邻推荐方法
查看>>
leetcode171.[math] Excel Sheet Column Number
查看>>