问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

source insight是怎样打开一个文件的?

发布网友 发布时间:2022-04-11 22:06

我来回答

2个回答

懂视网 时间:2022-04-12 02:27

http://blog.chinaunix.net/uid-27213819-id-3810619.html source insight并没有提供这样的快捷键,有时候用着比较烦人。终于找到了方法:使用宏命令,并设置快捷键与之绑定。 1、打开source insight,Project - Open Project,打开Base项目,注:Base项目是



http://blog.chinaunix.net/uid-27213819-id-3810619.html

source insight并没有提供这样的快捷键,有时候用着比较烦人。终于找到了方法:使用宏命令,并设置快捷键与之绑定。

1、打开source insight,Project -> Open Project,打开Base项目,注:Base项目是source insight默认已经创建的。

2、打开Utils.em文件,在该文件的末尾加入如下内容:

/* 
 cpp和hpp文件互换(当前只支持同一目录下的文件互换) 
*/ 
macro switch_cpp_hpp() 
{ 
 hwnd = GetCurrentWnd() 
 hCurOpenBuf = GetCurrentBuf() 
 if (hCurOpenBuf == 0) 
 stop 
 curOpenFileName = GetBufName(hCurOpenBuf) 
 curOpenFileNameLen = strlen(curOpenFileName) 
 
 // 文件类型临时缓冲区 
 strFileExt = NewBuf("strFileExtBuf") 
 ClearBuf(strFileExt) 
 
 // 头文件类型 
 index_hpp_begin = 0 // 头文件开始索引 
 AppendBufLine(strFileExt, ".h") 
 AppendBufLine(strFileExt, ".hpp") 
 index_hpp_end = GetBufLineCount(strFileExt) // 头文件结束索引 
 
 // 源文件类型 
 index_cpp_begin = index_hpp_end // 源文件开始索引 
 AppendBufLine(strFileExt, ".c") 
 AppendBufLine(strFileExt, ".cpp") 
 AppendBufLine(strFileExt, ".cc") 
 AppendBufLine(strFileExt, ".cx") 
 AppendBufLine(strFileExt, ".cxx") 
 index_cpp_end = GetBufLineCount(strFileExt) // 源文件结束索引 
 
 isCppFile = 0 // 0:未知 1:头文件 2:源文件,默认未知扩展名 
 curOpenFileExt = "" // 当前打开文件的扩展名 
 index = index_hpp_begin 
 // 遍历头文件,判断是否当前打开文件是头文件类型 
 while(index < index_cpp_end) 
 { 
 curExt = GetBufLine(strFileExt, index) 
 curExtLen = strlen(curExt) 
 curOpenFileExt = strmid(curOpenFileName, curOpenFileNameLen-curExtLen, curOpenFileNameLen) // 当前打开文件的扩展名 
  
 // 调试 
 // AppendBufLine(debugBuf, curExt) 
 // AppendBufLine(debugBuf, curOpenFileExt) 
 
  
 if(curOpenFileExt == curExt) // 匹配成功 
 { 
  if (index < index_hpp_end) 
  isCppFile = 1 // 当前打开文件是头文件 
  else 
  isCppFile = 2 // 源文件 
  break 
 } 
 index = index + 1 
 }// while(index < index_cpp_end) 
 
 // 调试 
 // AppendBufLine(debugBuf, isCppFile) 
 
 index_replace_begin = index_hpp_begin 
 index_replace_end = index_hpp_end 
 
 if (isCppFile == 1) // 当前打开文件是头文件 
 { 
 index_replace_begin = index_cpp_begin 
 index_replace_end = index_cpp_end 
 } 
 else if(isCppFile == 2) // 当前打开文件是源文件 
 { 
 index_replace_begin = index_hpp_begin 
 index_replace_end = index_hpp_end 
 
 // 调试 
 // AppendBufLine(debugBuf, "cpp") 
 } 
 else // 未知类型 
 { 
 //CloseBuf(strFileExt) // 关闭缓冲区 
 
 //stop 
 
 index_replace_begin = 9999 
 index_replace_end = index_replace_begin // 下面循环不会执行 
 } 
 
 index = index_replace_begin 
 while(index < index_replace_end) 
 { 
 destExt = GetBufLine(strFileExt, index) 
 destFileName = strmid(curOpenFileName, 0, curOpenFileNameLen-strlen(curOpenFileExt)) // 不包括扩展名,绝对路径 
  
 // 尝试当前目标扩展名是否能够打开 
 destFilePath = cat(destFileName, destExt) // 文件名(包括扩展名) 
  
 hCurOpenBuf = OpenBuf(destFilePath) 
 if(hCurOpenBuf != 0) 
 { 
  SetCurrentBuf(hCurOpenBuf) 
  break 
 } 
  
 // 尝试进行目录替换,看能否打开文件(如何设计:支持多个目录) 
 // ...(赞不支持) 
 index = index + 1 
 } 
 CloseBuf(strFileExt) // 关闭缓冲区 
 // 调试 
 // AppendBufLine(debugBuf, "finished") 
 
}
3、关闭Base项目,重新打开Source Insight。

4、打开Option -> Key Assignments。在Command栏选中“Macro: switch_cpp_hpp”;点击Assign New Key按钮设置快捷键(Ctrl+·),点击OK,就设定好了。

5、再打开一个项目,试试你刚刚设定的快捷键吧!!!

热心网友 时间:2022-04-11 23:35

在菜单中选择,project->Add and Remove Project files,然后就会显示目录,你选择你要打开的具体文件就可以了
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何在手机百度上删除对话记录? 结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? 黑龙江债权转让合同纠纷该怎样取证 安徽债权转让合同纠纷应该怎么样取证 source insight头文件打不开 在source insight工程中打不开linux下的头文件 QQ:1055971771 收集下 source insight 常用的设置,常用的快捷键。 怎么修改source insight的快捷键 source insight 右边的文件列表怎么打开 如何在win7安装magento 关于建站开源系统magento与zencart的区别是什么?希望能给大家普 magento付款最后一步,点击Place Order按钮后无法跳转到paypal支付页面,magento版本1.8.0.0. 如何在magento中建立自定义页面 如何打开magento开发者调试模式 如何从头开始创建Magento2主题 magento block type值的定义,求大神解释一下 如何获取当前已登录的用户在Magento中的信息 magento打不开url重写页面 magento 页怎么调用css? magento模板中Block的type值的定义与意义,谁能详解下? magento Developer debug 怎么用 magento前台页面的链接如何设置跳转? 在magento中我想要在产品详细页面输出特定分类的产品(推荐产品),具体的请看问题补充。 清除Magento缓存的几种方法 如何安装Magento模板 source_insight快捷键列表 source insight怎么设置快捷键 source insight怎么快速jump to caller 使用source insight, 在Linux内核代码中,如何查看带有extern关键字的函数的具体实现代码? source insight 针对本文件中已选中的文本 查找方法又没?就像ue里 选中后摁f3和ctrl+f3 这样的 source insight3.0怎么看c语言工程 Source Insight 在工程窗口中输入关键字就能显示需要查找的文件, 而不用从头开始输入 C++的main函数怎样使用? 我想问下关于main()函数的问题 带参数的main函数,应该怎样运行呢 如何定义主函数main()呢,有什么技巧?? 关于C语言main函数的调用 关于主函数main()的定义,请高手详解 比较main()函数和其他自定义函数的 区别 C语言中的main( )函数究竟是个什么样的函数? C语言main函数详解 关于main函数的参数问题 高手指教,main()函数的参数,以及意义是什么呢? 很基本!很简单的问题~关于类 如何在MAIN函数中调用 类中的函数 C++中如何在main()函数之前执行操作