可用于龙芯2F Debain6 vim编辑器下的c/c++ IDE集成开发环境
vim号称编辑之神,有了它,eclipse、netbeans、sourceinsight等都是浮云,通过脚本扩展后的vim堪比其它任何主流IDE集成开发环境。最重要的是它不需要图形界面支持,大大降低了系统开销,这是其它任何一款IDE无法比拟的。(遥想大学是的Turbo C,泪目!!!)
龙芯2f做为一款国产早期可运行debain6的mipsel CPU,虽然图形界面的显示较为吃力,但完全可用于特定行业的工程应用开发,性能远超各种单片机和一些ARM芯片。为了丰富国产龙芯的开发生态环境,经测试验证后,特撰此文,推出可用于龙芯2F Debain6 vim编辑器下的c/c++ IDE集成开发环境。
一.运行环境
1.平台:龙芯2f debain 6 已集成 vim 7.2
2.ctags 最先是用来生成C代码的tags文件,原地址http://ctags.sourceforge.net已失效,有了它,才能够帮助你更好地检索到各个自编函数的出处。龙芯2f可用此版本:https://download.csdn.net/download/erazy0/1711628,安装方式:./configure 、 make 、make install。
3.cscope是开发人员浏览c编程代码的工具。通过本人亲自安装验证,可应用于龙芯2f_Debain6平台,包含cscope安装及支持库源码包,首先安装flex、bison,第二安装ncurses,最后安装cscope。安装方法均为tar -zxvf <相应用文件压缩包>;进入相应压缩包,执行 ./configure,make,make install即可。下载地址:https://download.csdn.net/download/suwei80286/11909049
4.vim IDE扩展包,下载地址:https://download.csdn.net/download/suwei80286/11891486
安装方式:1). 把 Loongson_vim_IDE_expand.tar.gz压缩包拷贝到用户家目录 ~ 内;
2). cd ~ 进入用户家目录;
3). tar -zxvf Loongson_vim_IDE_expand.tar.gz 覆盖安装即可。
二.运行测试
打开终端输入vim,按下键盘F1、F2、F3、F4可得下图:
三、应用指导
1. vim指令学习
参考该博文:https://blog.csdn.net/hapksor/article/details/84575835
2. ctags应用学习
参考该博文:https://blog.csdn.net/u011570979/article/details/21305493
3.重要的F功能键讲解
F1键,显示vim帮助文档;
F2键,Tag list插件,位于窗口左侧,用来浏览源代码的Vim插件,使用它我们可以概览源代码的结构并在各个源文件中跳转浏览,非常方便。应用“ctags –R *”:“-R”表示递归创建,也就包括源代码根目录(当前目录)下的所有子目录。“*”表示所有文件。这条命令会在当前目录下产生一个“tags”文件,当用户在当前目录中运行vi时,会自动载入此tags文件;
F3键,Nerdtree插件,位于窗口右侧,用于浏览当前所在地址文件目录,鼠标双击相应文件,可打开对应文件;
F4键,MRU插件,位于窗口底部,用于打开历史编辑文件,上一次打开文件的位于开启插件的第一行;
F5键,lookupfile插件,位于窗口顶部,输入文件名可查找当前目录下的文件,ctrl+n可以向下选取文件并打开,ctrl+u清空输入内容取消当次查询(注:请不要按Esc键取消当次查询);
F6键,vimgrep全局搜索组件,位于窗口底部,可用于搜索当前目录下所有文件中的共性内容;
F9键,Ctags生成(务必安装好Ctags),按下该键,生成相应的标签后,Tag list插件才能够正常检索,一般新编程序,更新后都应该按下该键在当前目录下生成新的tags目录;
F10键,读入Ctags生成的tags文件,按下后,生成词法户类型表单,先按F9再按F10才有意义;
(注:F9 , F10 应当组合使用,先按F9,再按F10)
F11键,生成lookupfile插件查询所需的索引信息;
F12键,cscope生成(务必安装好Cscope),按下该键后就可以用 :cscope find *** 相关指令完成各种查找任务了,功能相当强大,相关内容于后文介绍。
4.cscope指令应用学习
注:在按下 F12 键完成cscope相关文件生成后,可进行此步操作。相关指令笔记如下图所示:
例 1 在打开的c文件内查找stdio.h头文件出处,指令如下:
:cs f i stdio.h
例 2 查找hello.c并打开:
:cs f f hello.c
例3 罗列main函数调用了哪些函数
:cs f d main
例4 罗列printf函数在哪里出现过
:cs f c printf
例5 查找具有任意三位十进制数连续出现的字段
:cs f e [0-9][0-9][0-9]
注:e参数可以使用正则表达式,可参考该网站:https://www.runoob.com/regexp/regexp-syntax.html
例6 快速跳转函数定义处和返回函数调用处
快速跳转函数定义处 ctrl + ]
快速返回函数调用处 ctrl + t
5.代码折叠功能
1)折叠定义 ,以注释语句+{{{ 开始,并以注释语句+}}} 结束。
例如 c语言代码折叠定义为以 /*{{{*/开始,以/*}}}*/结束。
如下图所示:
折叠展开:
折叠收起:
2)打开和关闭折叠组合键:
zo 打开光标下的折叠。
zO 打开光标下的折叠,以及嵌套的折叠。
zc 关闭光标下的折叠。
zC 关闭光标下的折叠,以及嵌套的折叠。
za 当光标在关闭折叠上时,打开之。在打开折叠上时,关闭之。
zA 和za类似,不过对当前折叠和其嵌套折叠都有效。
zv 打开当前光标所在折叠,仅打开足够的折叠使光标所在的行不被折叠。
zr和zm 一层一层打开折叠和一层一层关闭折叠,这两个命令会递减和递增一个叫foldlevel的变量。如果你发现zm和zr不灵了,那有可能是你连续按的zr或zm次数多了,只要多按几次让foldlevel回到正常状态即可。执行以下zR和zM也可直接让foldlevel回到正常状态。
zR和zM 打开所有折叠,设置foldlevel为最高级别。关闭所有折叠,设置foldlevel为0
6.代码补全功能
1)echofunc 函数提示。在输入函数至第一个半括号时,如下图:
则在vim的最底部生成如下提示,从而可以按相应提示完成函数参数输入。
2) SuperTab单词补全功能
SuperTab使用很简单,只要在输入变量名或路径名等符号中途按Tab键,就能得到以前输入过的符号列表,并通过Tab键循环选择。如下图所示:
3) cvim补全功能
功能: cvim可以自动生成代码编写的作者信息,如下图:
如若需要更改模板内容,可以打开 .vim/c-support/templates/Templates的对应内容调整。
Cvim还有很多功能,详见下表:
可用于龙芯2F Debain6 vim编辑器下的c/c++ IDE集成开发环境相关推荐
- 8086汇编工作环境_[C语言]什么是编辑器和编译器,什么是集成开发环境?编译原理又是什么?
我们平时所说的程序,是指双击后就可以直接运行的程序,这样的程序被称为可执行程序(Executable Program).在 Windows 下,可执行程序的后缀有 .exe 和 .com(其中 .ex ...
- [C语言]什么是编辑器和编译器,什么是集成开发环境?编译原理又是什么?
我们平时所说的程序,是指双击后就可以直接运行的程序,这样的程序被称为可执行程序(Executable Program).在 Windows 下,可执行程序的后缀有 .exe 和 .com(其中 .ex ...
- python软件包自带的集成开发环境-Python的10大集成开发环境和代码编辑器(指南)...
使用IDLE或者Python Shell来编写Python是非常适合于简单程序的,但是这些工具往往将大型的编程项目变成一个个充满绝望和沮丧的"坑".使用一款集成开发环境甚至是一款好 ...
- python自带的集成开发环境是什么-Python的10大集成开发环境和代码编辑器(指南)...
使用IDLE或者Python Shell来编写Python是非常适合于简单程序的,但是这些工具往往将大型的编程项目变成一个个充满绝望和沮丧的"坑".使用一款集成开发环境甚至是一款好 ...
- code vs 集成tfs_10大Python集成开发环境和代码编辑器
支持Python的通用编辑器和集成开发环境 Eclipse + PyDev 类别:集成开发环境 网址:www.eclipse.org Python工具:PyDev, www.pydev.org 优点: ...
- Python的10大集成开发环境和代码编辑器(指南)
分享一篇文章,原文链接:Python IDEs and Code Editors (Guide). 使用IDLE或者Python Shell来编写Python是非常适合于简单程序的,但是这些工具往往将 ...
- C语言加油站程序,c语言加油站1——编辑器、编译器和集成开发环境
要学习c语言,最基本的方法就是动手写程序.我们以一个hello world程序为例,看一看一个c语言程序是怎么从源代码变为可以执行的文件的. 纯文本编辑器 编辑器一般指的是纯文本编辑器,用它可以编辑纯 ...
- [转帖]你不曾见过的国产CPU:可能是最全的龙芯系列芯片家谱(下)
你不曾见过的国产CPU:可能是最全的龙芯系列芯片家谱(下) https://www.ijiwei.com/html/news/newsdetail?source=pc&news_id=7177 ...
- Python编辑器与集成开发环境(IDE)选择
上一篇文章记录了怎么安装Python环境,同时也成功的在电脑上安装好了Python环境,可以正式开始自己的编程之旅了.但是现在又有头疼的事情,该用什么来写Python程序呢,该用什么来执行Python ...
- python常用的集成开发环境和编辑器有哪些_常用的几款Python集成开发环境或者编辑器详解...
Python3开发常用工具一:为什么使用开发工具? 在Python3教程之<安装>中,我们已经安装了Python开发环境,但是在终端里执行相关命令始终是不能开发大型项目的,并且对写过的代码 ...
最新文章
- HTML5 学习笔记(一)- video
- 重磅 | 2017年深度学习优化算法研究亮点最新综述火热出炉
- “7th-place-solution-microsoft-malware-prediction”——kaggle微软恶意代码检测比赛第七名代码
- 河南工业大学计算机网络技术,河南工业大学2019年硕士研究生入学信息科学与工程学院计算机网络自命题考试大纲...
- 实战|渗透学校某内网服务器
- maven项目部署到linux上的奇葩问题
- JVM007_运行时栈帧结构
- 万兆网卡实际吞吐量_案例探索 | 千兆/万兆网卡每秒转发包数处理能力上限到底有多大?...
- PS Raw增效工具:Adobe Camera Raw13 for mac
- java jedis_Java操作Redis之Jedis用法详解
- 听云CTO访谈:解读现代应用性能管理(APM)技术
- 学习web标准、用户体验改善、Ajaxamp;Asp.Net
- 苹果服务两天内经历两次宕机:部分服务受影响 现已修复
- 【Luat-esp32】2.点屏-st7735
- php inpo,优化PHP in_array()函数,效率提高50倍
- 福布斯发布“亚洲30岁以下杰出青年榜”,中国获奖者近1/4来自AI行业
- Python打印菱形
- (一)Activiti 数据库25张表——流程历史记录表18(ACT_HI_ATTACHMENT)
- 面试经历(华为,瑞晟,大华,海康,虹软,顺丰)
- mysql 1813_ERROR 1813 (HY000) at line 404: Tablespace for table '`xxx`.`xxxxx`' exists.