程序大师的方天画戟 - vicc

三国第一战将吕布,拥有两种宝物:一是赤兔马,二便是方天画戟


简介

vicc 是一款工作在64位Linux的控制台环境下的程序开发编辑器

它的工作原理: (1).通过shell代码实现控制台的图形界面,引导用户去创建ctags和cscope的符号数据库,

                           (2).通过shell代码实现控制台的图形界面,调用vim-7.4作为代码编辑器时自动加载ctags,

                                 cscope所需的符号数据库文件,同时加载一些有用的vim插件辅助vim帮助用户更方便

                                地进行代码开发和管理;


使用门槛:  相对Windows下的IDE,难度颇高(全键盘操作)

                  要求使用者熟悉vim的操作


安装:   通过如下命令自动进行安装

git clone https://gitee.com/jllim/vicc_for_linux64_installer.git

cd vicc_for_linux64_installer

./vicc_installer_over_linux64.sh


使用方法:

1.创建vicc工程:  (实际上就是为每个工程创建“符号关联数据库"),以一个项目为例


(1).本项目LoRaMac-node_PortingByJLLim的目录树如下:


(2).运行命令 vicc -c 开始创建工程


(3).出现新增项目的菜单向导,新工程选择第一项”Add a new Project“,回车进行下一步


(4).输入项目名称:  LoRaMac-node_PortingByJLLim,回车进行下一步


(5).选项这个项目需要关联的源代码类型: 因为主要是C和Asm语言,和一些Makefile构建的源码树,

     我们项目的需要让这些源码中的符号可以跳转跟踪(即函数定义,调用关系等符号关联),因此

     选择C,Asm,Make, 按下q键进行下一步

(6).选择要关联的源码树路径, 这里图个方便全选了,但如果代码很大,不想全选,可以按Help For  Usage的

      说明操作目录树,按空格键可以选中或取消选中。选好后,按q键进行下一步

(7).此时只需要等待构建工程完成即可


2.使用vicc阅读源代码

vicc主要有两种方式打开源代码,但都需要在项目所在的任意子目录当中。

比如实例中必须在LoRaMac-node_PortingByJLLim/这个目录下的任意子目录中打开源代码文件,都是可以正确加载vicc的符号关联数据库文件的。

2.1.使用vicc正确打开源代码文件




输入 :cs show ,出现如下信息,表示确实加载了cscope符号关联数据库文件




输入 :Tlist 可以打开左侧窗口,显示函数列表和全局变量列表, 再输入一次 :Tlist 可关闭左侧窗口



光标如何在左侧窗口和右侧窗口进行切换: ctrl+w+w

光标在右侧主窗口:  ctrl+w+w将使光标切换到左侧窗口


光标在左侧主窗口:  ctrl+w+w将使光标切换到右侧窗口,

        或者选择某个函数(j向下选择,k向上选择)再按回车即可跳回主窗口相应的函数定义位置



在光标所在符号(比如函数,或者变量,或者类型等等完整单词处),键盘

上输入\+m即会高亮光标所在符号名,再输入一次\+m即可取消高亮:



查找变量/函数的引用定义: 同时按住 ctrl + \,松开后再按一下 s,即可下底部出现可选窗口(如果只有一项,不出现底部窗口,直接跳到目标变量/函数),输入对应的数字后回车即完成跳转到目标变量/函数的位置



查找变量/函数的定义: 

把光标移到变量名或函数名位置上,同时按下 ctrl + ]

比如:  光标在mode变量上,按下 ctrl + ]



出现mode所有定义的位置,有more表示多页显示,按j/k/空格都可以上下滚动菜单项,按下q或滚动到结束页,都会出现

输入对应的数字,再回车表示选中某一项跳转;如果没有输入任何数字直接回车,不完成跳转并回到原处;




2.2.使用vicc快速打开函数定义的位置

在vicc构建的项目所在任意目录下,执行

         vicc -t [函数名]

进入函数所定义的源代码位置








评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值