技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 其他 --> windows下使用vim(gvim)的不便及解决方案(1)-文件查找和软链接

windows下使用vim(gvim)的不便及解决方案(1)-文件查找和软链接

浏览:3113次  出处信息

    相信不少朋友像我一样,无论在linux还是windows下都用vim来办公,但是毕竟vim原生于linux,windows下的某些支持还是做的不太好。

     这个系列的文章,我们就一起探讨一下。

    一.鸡肋的文件查找

     在linux下,查找包含一段文字的文件列表是很方便的:

grep "txt" *

    要遍历所有所有的子文件夹也很容易:

grep "txt" * -r

    但是到了windows下,用那个鸡肋的文件查找功能基本上查不到任何想要的东西,怎么办呢?

     非常幸运的,vim考虑到了这一点,在内部实现了 vimgrep 这样一个命令,之前有在文章中介绍过,这次我们详细介绍一下.

     虽然名字看起来和grep很像,但是用法还是不一样的,先来看一下普通的查找:

vimgrep /an error/ *.c

    而如果需要循环遍历所有子目录的话,语法如下:

vimgrep /an error/ **/*

    搜索到的文件列表会加入到quickfix中去,执行:

 
copen

    即可看到所有的文件列表。

    OK,这样windows下内容查找的问题就解决啦~

    二.没有类似软链接功能

     有些没用过linux的朋友可能不明白什么叫软链接,简单来说即一个文件或者文件夹指向了另一个文件或者文件夹,在外面的使用者看起来,没有任何区别。但是为什么在windows下使用vim会遇到这个问题呢?

     这里要先介绍一下vimwiki这个插件,这个插件可以用vim来打造个人wiki,被号称是使用vim必装插件,笔者也确实一直在用着,主要是用来做GTD。

     但是wiki的问题就在于会生成很多独立的页面,而如果我有两台电脑,希望能够在家和工作都能对GTD的时间表进行处理,于是需要做同步该怎么办呢?现在国内已经有了不少不错的云存储服务,这里大家自己找一下。

     问题就在于如果云存储的同步目录和wiki存放的目录不一致怎么办呢?linux下面可以很简单的通过软链接的方式来解决,但是windows xp及之前却并没有自带这样的工具。

     问题当然是有解决办法的,详细参考这篇文章:

     http://jdev.tw/blog/1242/mklink-junction-quick-folders-access

     根据文中介绍,Vista及以上版本是默认带有mklink,实现了类似软链接的功能,而由于本人电脑用的是XP,所以使用junction来做的软链接,即:

junction virtual_dir real_dir

    这样不同目录之间做关联的问题也解决了,但是请千万注意一点:

     与linux的软链接不同,用junction做了关联之后,删除虚拟的文件目录,也同样会把真实的目录删掉!务必小心!

    OK,暂时只总结了这两点,希望能给windows下的vim(gvim)用户提供一些帮助,以后的文章我们再继续讨论~

建议继续学习:

  1. vim几个小技巧(批量替换,列编辑)    (阅读:35922)
  2. 简明Vim练级攻略    (阅读:20721)
  3. Vim下的代码自动补全和代码跳转阅读    (阅读:14358)
  4. 为什么要用 Emacs/Vim,而不是任何其他编辑器    (阅读:12147)
  5. 在vim(gvim)中运行终端(对,你没有看错,我也没有写反)    (阅读:9345)
  6. vim入门,进阶与折腾    (阅读:9177)
  7. 让vim在终端下的配色亮起来!    (阅读:8567)
  8. 最近总结的一些技巧(vim,python,svn,fiddler等)    (阅读:7049)
  9. vim的复制粘贴小结    (阅读:6482)
  10. Vim 中截取部分内容保存到其他文件    (阅读:6325)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1