8月20 vim/gvim 什么是vim/gvim,如果看官连vi都不知道,那就别往下看了。一些对Linux一知半解的人说,vi不就是一个和Win下的note pad一样的工具吗?其实大错特错了,如果仅仅是和note pad一样的功能,那它早就不叫vi了。 Taglist Taglist是一个vim的源代码浏览插件,具体功能介绍还烦请各位看官自己google一下。很多事情还需要亲身经历才有用,别人代劳是不行的。 需要安装这个插件,插件下载地址:Taglist下载地址 http://www.vim.org/scripts/script.php?script_id=273 里面有很多版本,可以下载目前最新版本:http://www.vim.org/scripts/download_script.php?src_id=7701 下载后,首先解压,怎么解压?自己想办法吧。 然后在用户主目录下建立一个隐藏文件夹.vim,并将Taglist解压得到的目录中的plugin复制到.vim目录中。当然,连同其他目录一同复制进去也没有问题。 Ctags Ctags是一个用于生产tags文件的软件。下载地址,还是上网搜搜吧,还是说了吧:http://ctags.sourceforge.net。 下载有进行解压编译安装即可。怎么解压编译安装?当然,比Win下直接双击setup.exe要复杂一些,但是不同世界有不同规则,没有办法,呵呵。 如果在ubuntu下,直接使用 新立得 进行安装即可,不再介绍,是不值得介绍。 阅读源代码 首先进入准备查看的源代码的目录,先生成一个tags文件。 $ ctags -R 然后使用vim打开一个C文件。如果要想知道某个人函数或者结构体在什么地方,只要将光标移动到函数上,然后按住CTRL+]即可,看完后安CTRL+O又会回到原来的地方。 查看函数列表。还需要启动Taglist,在Vim的命令状态输入:TlistToggle,在Vim界面的左面就会出现函数列表。安CTRL+WW(2次W),可以切换到函数列表区,移动到函数名称行后按ENTER即可查看函数代码。 gvim 可 能很多看官对vim的命令操作不熟悉,或者不习惯键盘操作,那就可以使用gvim加上以上两个工具即可。只要使用gvim打开C文件,然后启用函数列表, 直接双击函数名称就会跳转到函数处。按住CTRL+鼠标左右键即可跟踪或者回退,操作更加方便,比Win下很多工具还要 1.taglist注意:taglist依赖于ctags,所以要先装ctags,否则taglist装了也没法用!(1)将taglist_45.zip解压得到的两个文件夹:doc和plugin 放到 ~/.vim文件夹里面,如果主目录下没有这个隐藏的文件夹,就建一个。(2)plugin/taglist.vim – taglist插件doc/taglist.txt - taglist帮助文件(3)常用快捷键ctrl+ww 在列表和源文件中切换ctrl + ] 查看函数定义ctrl + o 返回上一级文件。gf 查看头文件gd 转到当前光标所指的局部变量的定义处。* 转到当前光标所在单词的下一次出现的地方。# 转到当前光标所在的单词的上一次出现的地方。<CR> 跳到光标下tag所定义的位置,用鼠标双击此tag功能也一样 o 在一个新打开的窗口中显示光标下tag <Space> 显示光标下tag的原型定义 u 更新taglist窗口中的tag s 更改排序方式,在按名字排序和按出现顺序排序间切换 x taglist窗口放大和缩小,方便查看较长的tag + 打开一个折叠,同zoctags常用快捷键ctags常用快捷键 - 将tag折叠起来,同zc * 打开所有的折叠,同zR = 将所有tag折叠起来,同zM [[ 跳到前一个文件 ]] 跳到后一个文件 q 关闭taglist窗口 taglist 窗口ENTER 2.ctags(1)安装ctags : sudo apt-get install ctags(2)使用ctags -R 对当前目录下的文件递归产生tags文件。ctags file.c(3)在.vimrc文件中添加配置:TlistToggle 或 :Tlist 显示函数列表在.vimrc文件中加上键盘映射map <F8> :Tlist<CR>这样我就可以使用快捷键F8直接进入tlist模式了。这里注意<F8>和 : 之间有空格的。在.vimrc下加入一下两行set tags=tags;set autochdir这样使用tags时可以首先在当前目录下查找tags文件,如果没有则转到父目录查找。依次向上。查看帮助文件:help helptags:help taglist.txt3.cscope(1)仔细阅读了cscope的手册后发现,原来cscope在产生索引文件时,只搜索类型为 C, lex和yacc的文件(后缀名为.c, .h, .l, .y),C++的文件根本没有生成索引。不过按照手册上的说明,cscope支持c++和Java语言的文件。于是按照cscope手册上提供的方法,先产生一个文件列表,然后让cscope为这个列表中的每个文件都生成索引。为了方便使用,编写了下面的脚本来更新cscope和ctags的索引文件: #!/bin/sh find . -name "*.h" -o -name "*.c" -o -name "*.cc" > cscope.files cscope -bkq -i cscope.files ctags -R -R : 在生成索引文件时,搜索子目录树中的代码 -b : 只生成索引文件,不进入cscope的界面 -k : 在生成索引文件时,不搜索 / usr / include目录 -q : 生成cscope . in . out和cscope . po . out文件,加快cscope的索引速度将这个脚本保存到/usr/local/bin/cscopes.sh,以后就可以在源代码目录下使用sudo bash cscope.sh命令直接生成索引拉!(2)cscope常用快捷键:先按 ctrl+\ 然后 c: 查找该函数被调用的位置 d: 查找该函数调用了哪些函数 e: 查找指定的正规表达式 f: 查找指定的文件 g: 查找指定标识符的定义位置 i: 查找该文件在哪些地方被包含 s: 查找指定标识符的使用位置 t: 查找指定的文本字符串 10月18 ircut日夜模式相关 白天:day_night_mode=0 晚上:day_night_mode=1 自动:day_night_mode=2 /dm368/ipnc_rdk/av_capture/framework/alg/src/alg_aewb_control.c 白黑 571 ALG_aewbSetDayNight /home/hsp/dm3683/ipnc_rdk/av_capture/application/ipnc/av_server/src/video/video2aThr.c 122 VIDEO_aewbTskRun ALG_aewbRun 1072 ALG_aewbSetDayNight 1123 av_capture/framework/drv/usermod/src/imgs_IMX122_CXD4191/drv_imgs_IMX122_CXD4191.c DRV_imgsGetDayNightStatus() 获得日夜模式 av_capture/framework/drv/usermod/src/imgs_IMX122_CMD4191/drv_imgs_IMX122_CXD4191.c DRV_ispInit DAY_N_HOLD 0 DNCNT_TH_ND 1 DNCNT_TH_ND 1 DAY_N_TH_A 17c3 DAY_N_TH_B 0584 av_capture/application/ipnc/av_server/src/common/avServerUi.c 其他 恢复默认:sys_cmd=load_default /dm368/ipnc_rdk/ipnc_app/sys_server/src/system_control.c/ 213 SetDefault 最大曝光时间增加两项:1/8000 --- 13, 1/10000 --- 14 nc_rdk/ipnc_app/network/boa-0.94.13/src/appro_api.c/appro_api.c set_maxexposure 抓包: host 192.168.0.65 and port 80 (ip.src==192.168.0.65&&ip.dst==192.168.0.249)||(ip.src==192.168.0.249&&ip.dst==192.168.0.65) 烧写: 1.按照给的sdk开发包和文档,编译烧录,程序能够正确运行;xvf --1.参照/home/lms/.bashrc修改自己的环境变量; ..bashrc(source .bashrc) --2.进入ipnc_rdk/,执行make sysclean make sysall编译通过; 2.配置nfs运行模式ok; --1.配置/etc/exports,/home/hsp/rootfs *(rw,sync,no_root_squash,no_all_squashp/rootfs) service nfs restart重启nfs服务; --2.复制文件系统:cp -rfa target/filesys ~/rootfs --3.u-boot中修改bootargs参数支持nfs启动;
bj
最新推荐文章于 2024-05-10 16:56:50 发布