Chinaunix首页 | 论坛 | 博客
  • 博客访问: 89880
  • 博文数量: 22
  • 博客积分: 2011
  • 博客等级: 大尉
  • 技术积分: 260
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-12 11:16
文章分类

全部博文(22)

文章存档

2010年(1)

2009年(6)

2008年(15)

我的朋友

分类: LINUX

2008-10-28 17:01:53

查找文件

假定现在你在编辑一个 C 程序, 该程序有这样一行:

        #include "inits.h" 

你想要查看文件 "inits.h" 里有些什么. 把光标移到该文件名上, 并键入:

        gf

Vim 就会找到并打开这个文件.
   那么, 如果该文件不在当前目录里怎么办? Vim 将利用 'path' 选项来寻找这个文件.
该选项是一系列目录名, Vim 会在其中为你寻找文件.
   假设你把你的头文件存放在目录 "c:/prog/include" 里.  下面这个命令把该目录加入
'path' 选项:

        :set path+=c:/prog/include

这个目录名是一绝对路径. 不管你在哪儿, 它都指向同一目录. 如果你已经知道要编辑的
文件位于当前文件所在目录下某个子目录里, 你该怎么办呢? 那样的话, 你可以指定一个
相对路径. 相对路径以 "." 开始:

        :set path+=./proto

这个命令告诉 Vim 到目录 "proto" 里找文件, 而 "proto" 则位于你在其中用了 "gf"
命令的文件所在的目录下面. 如此一来, 对 "inits.h" 用 "gf" 命令, 就让 Vim 以当前
文件所在目录为起点, 寻找 "proto/inits.h".
   如果不加 "./", 只用 "proto", Vim 就会进入当前目录下的 "proto" 目录寻找. 然而
当前目录可能不是你在编辑的这个当前文件所在的目录.

'path' 选项还允许你用其它许多方法来指定在其中寻找文件的目录. 参见关于 'path'
选项的帮助.
   'isfname' 选项用来决定哪些字符可用于文件名, 以及哪些不可以 (如上例中的双引号
 " 字符).

当你要找的文件名没出现在你编辑的文件里时, 你可以键入这个文件名:

        :find inits.h

然后 Vim 就利用 'path' 选项来确定该文件的位置.  这就跟 ":edit" 命令一样, 只不
过 ":edit" 命令不用 'path' 选项.

要在新窗口内打开那个已经找到的文件, 用 CTRL-W f, 而不是 "gf", 或用 ":sfind"
而不是 ":find".

有个好办法可以直接启动 Vim 来编辑 'path' 中的某个文件:

        vim "+find stdio.h"

这会在你的 'path' 中查找 "stdio.h"。双引号是必需的,用来把括起来的当做一个参数

阅读(3589) | 评论(0) | 转发(0) |
0

上一篇:word-wrap和word-break

下一篇:tr命令

给主人留下些什么吧!~~