sourceInsight3.5 工具配置

来源:互联网 发布:js table 添加tr td 编辑:程序博客网 时间:2024/06/10 14:05

sourceInsight 3.5  有注册机的

新建工程

安装后, project -> new project 选择一个空目录作为项目的目录,确定后在选择源代码目录,

建议源代码目录不要与项目目录在一起,因为sourceInsight会在project目录里面生成一些文件(一些数据文件),

而且sourceInsight也会自动执行 Options->Save Configuration 这些文件默认保存在我的文档->source Insight

里面。如果卸载软件的话,这里面是会自动保存的,你下次再安装会用这些配置的。

1.让.cc文件支持颜色

导入C++项目发现 不支持 .cc文件 岂有此理cc姐都不支持,果断配置搞定

Options->Document Options -> Document Type  File filter:里面添加 *.cc,  Close即可

还有 Screen Fonts可以调节字体大小(建议不要乱调字体,自己调过很悲催)

这样子就解决了怎么支持 .cc文件的问题了。

2.TabSiPlus分页插件

发现打开多个文件后没有“分页的那个任务条”就是没有 Tab那个东西,果断上网查了查,有插件可以搞定,

下载了一个 TabSiPlus_0_99b2_1510.rar ,解压后允许里面的TabSiHost.exe即可安全方便。

3.头文件和源文件之间的跳转问题

在.h文件中对着一个函数名字 按Ctrl 键鼠标指针会变成手形,点击他应该跳到源代码才对,但是我们发现

他现在不能跳到源代码,原因在哪里呢,原因在于作者对源代码的组织方式。 .h中是把他放到一个名称空间以内。

就是用 namespace muduo{} 把类代码括起来,是不是说这个源代码查看器就不支持名称空间呢。不是的,那是以为

作者源代码这边名称空间的使用方式呢,这便是using namespace muduo;我们把他注释掉,如果这么写的话

namespace muduo{} 把源代码放里面。这样子就可以啦,在.h里面Ctrl点一下就可以定位到.cc文件,

原来原因在于作者源代码的组织方式问题。那这样子的话不是很麻烦吗。或者把光标定位到.h 的函数名中,

下边的窗口出现这个接口的代码,在那里双击也可以进入源代码(就可以很容易的跳过来)。

但是由于作者源代码的组织方式是using namespace muduo;是这样子的,我们总不能把他的代码都改了吧。

那怎么办呢,最好在设置一个东西能够在头文件和源文件之间来回切换,那也可以省事儿一些,

即使我们跳不过去,按某个快捷键也能够跳转到源文件的话也可以的。

先关闭这个工程,Project->Open Project 里面有个(sourceInsight默认就有的一个工程)的Base工程,

这个工程呢,有个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 // 当前打开文件是头文件elseisCppFile = 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")}


打开Option -> Key Assignments。在Command栏选中“Macro: switch_cpp_hpp”;

点击Assign New Key按钮设置快捷键(Ctrl+·),点击OK,就设定好,这时候就可以按 Ctrl+.  来在.cc文件和.h文件之间来回切换了。

开源的C++项目都有自己的命名空间的

4.汉语注释的字体之间的间距问题

Options-> Style Properties
Comment    Font Name 修改成宋体即可



5.配置文件的问题

SourceInsight的配置文件保存在我的文档,SourceInsight里面,卸载软件的时候最好把这个文件也删除掉,还有每一个工程也可以有自己的专属的配置文件。

6.为什么机器关机重启后分页没有了,还得重启打开exe的问题

你关闭sourceinsight并不会关闭tabhost.exe
所以可以用
但是如果你关机了,你就还需要启动tabhost.exe

原创粉丝点击