zoukankan      html  css  js  c++  java
  • 【ctags/cscope/project安装使用】给神编辑器vim添加新的翅膀

     

    本文地址

    分享提纲:

      1.安装

      2.使用cscope

      3.使用project

    1.安装

      1.1)linux(yum下安装)

        

    yum -y install cscope  
    

       1.2)linux(unbuntu下安装)

    sudo apt-get install cscope
    

       1.3)mac下安装

     
     
      1.4)项目管理插件project安装
        解压 project-1.4.1.tar.gz 到 ~/.vim目录下,只保留 doc和 plugin两个目录
        【安装】参考链接: http://blog.csdn.net/mybelief321/article/details/9220063
         【使用】参考链接:http://blog.csdn.net/clevercode/article/details/51363050

    2. 使用

      

      2.1) 添加需要索引的文件(*.php,*.js,*.css.*.sh)

    $ cd /home/test/myWork
    $ find /home/test/myWork -name "*.js" -o -name "*.sh" -o -name "*.php"   > /home/test/myWork/cscope.files
    


      2.2) 建立索引文件(会生成cscope.out文件)

    $ cd /home/test/myWork
    $ cscope -b 
    


      2.3)使用

        2.3.1 手动加载cscope.out库

      

    :cs add /home/test/myWork/cscope.out
    

        2.3.2  ~/.vimrc中加载

      

    $ vim ~/.vimrc
    
    
    if has("cscope") && filereadable("/usr/bin/cscope")
       set csprg=/usr/bin/cscope
       set csto=0
       set cst 
       set nocsverb
       " add any database in current directory
       if filereadable("/home/test/myWork/cscope.out")
          cs add /home/test/myWork/cscope.out
       endif
    endif
    


        2.3.3 查看库

      

    :cs show
    



      2.4) find查找命令

    :cs f s ---- 查找C语言符号,即查找函数名、宏、枚举值等出现的地方
    :cs f g ---- 查找函数、宏、枚举等定义的位置,类似ctags所提供的功能
    :cs f d ---- 查找本函数调用的函数
    :cs f c ---- 查找调用本函数的函数
    :cs f t ---- 查找指定的字符串
    :cs f e ---- 查找egrep模式,相当于egrep功能,但查找速度快多了
    :cs f f ---- 查找并打开文件,类似vim的find功能
    :cs f i ---- 查找包含本文件的文

      2.5)跳转

       Ctrl+] 将跳到光标所在变量或函数的定义处 
       Ctrl+T 返回
     
      :set csto=0

      ‘csto’的值决定了|:cstag|执行查找的顺序。假如’csto’被设置为0,那么cscope数据将会被优先查找,假如cscope没有返回匹配项,然后才会查找tag文件。反之,则查找顺序相反。默认值是0。

    3.使用project

      

      3.1)首次使用

        如果项目地址为:/home/test/myWork。

        命令行中输入vim命令;然后输入:Project ;再然后C创建一个项目。(注意是C 大写的C)

        

    $ vim 
    :Project 
    



        C。Enter the Name of the Entry: myWork



        Enter the Absolute Directory to Load: /home/test/myWork


                                                                                        

        Enter the CD parameter: /home/test/myWork



        Enter the File Filter: *.csv *.php *.js *.sh *.sql *.conf *.xslt *.xml *.avatar *.tpl *.dev *.prd crontab.* *.cfg.* *.html *.htm *.intftest *.vim *.plx *.txt



        保存

        :w



      3.2) 再次使用

      方式一 

        $ vim

        :Project


      方式二

        $  vim -c 'Project /home/test/.vimprojects'    


      3.3)添加项目

         3.3.1)在已有项目中添加;如需要在/home/test/myWork项目中。在db目录中添加conn文件夹。

        a) $ vim -c 'Project /home/test/.vimprojects'  


        b)光标移动到db目录下 a.txt那一行。conn即会在a.txt下方建立。



        c) 命令模式输入:C。添加conn

          Enter the Name of the Entry: conn 

          Enter the Directory to Load: conn

          Enter the CD parameter: 

          Enter the File Filter:



         3.3.2)添加新项目

          只需要将光标移动最后一行。然后按照4.1节新建项目即可。


      3.4) ~/.vimprojects

        所有的项目的文档目录都会保存在~/.vimprojects。格式如下:


    myWork=/home/test/myWork CD=/home/test/myWork filter="*.csv *.php *.js *.sh *.sql *.conf *.xslt *.xml *.avatar *.tpl *.dev *.prd crontab.* *.cfg.* *.html *.htm *.intftest *.vim *.plx *.txt" {  
     index.php  
     config=config {  
     }  
     css=css {  
     }  
     db=db {  
      a.txt  
      conn=conn {  
       mysql.php  
      }  
      b.txt  
     }  
    }  
    myWork2=/home/test/myWork2 CD=/home/test/myWork2 {  
     a.txt  
     b.txt  
    }  
    

        3.5)其它一些操作

      启动 project 插件后,相对应的就会支持一些命令。在常规模式下输入(注意区分大小写):


       根据项目过滤符更新折叠处的文件。
      R 递归执行 。
      c 创建一个项目。但不包括指定目录下的子目录。
      C 递归执行 c,包括指定目录下的所有子目录。
      <Return> 打开文件;打开或关闭折叠。
      <S-Return> Shift+Return
      s 同 <Return> 打开文件,打开文件时水平分割窗口。
      S 加载所有文件到当前窗口,当前窗口会被水平分割显示所有文件。
      <C-Return> Ctrl+Return
      o 打开指定文件到一个窗口中,并且关闭所有其它窗口,
      <M-Return> Alt+Return
      v 仅仅打开文件,光标仍然保留在项目列表中。
      <CTRL-Up>
      <Up> 移动文本或者折叠到当前光标的上一行。
      <CTRL-Down>
      <Down> 移动文本或者折叠到当前光标的下一行。
      i 在状态栏中显示光标所在折叠的完整参数以及继承参数。
      I 在状态栏中显示文件的完整路径。
      l 加载当前项目层的所有文件到到当前 vim 中。在加载的过程中,任何按键都导致停止。
      L 加载当前项目以及子项目中的文件到当前 vim 中。谨慎使用。
      g 在当前项目层执行 grep 。
      G 在当前项目层及子项目执行 grep 。
      <F12> 当在变量 g:proj_flags 中使用了标志位 'g' 时, 该键用来切换打开和关闭项目窗口.


      其它操作参见 project.txt 。

     


  • 相关阅读:
    给Clouderamanager集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解)
    给Clouderamanager集群里安装可视化分析利器工具Hue步骤(图文详解)
    appium----【已解决】【Mac】ANDROID_HOME的环境变量配置
    appium---【已解决】【Mac】如何查看java的安装路径及JAVA_HOME环境变量的配置
    appium----【已解决】【Mac】环境配置提示“Xcode Command Line Tools are NOT installed!"
    appium----【已解决】【Mac】安装sudo npm install -g appium-doctor总是提示“Error: EACCES: permission denied........”
    appium---【已解决】【Mac】from appium import webdriver报错提示“Unresolved import webdriver”
    Jmeter----A接口response中body的某一个参数传递给B接口request的body中使用(参数的传递)
    Jmeter----创建第一个接口测试流程
    Jmeter----【Mac电脑】环境配置与打开Jmeter界面
  • 原文地址:https://www.cnblogs.com/aiweixiao/p/6510976.html
Copyright © 2011-2022 走看看