source insight配置(自动排版,多标签显示,注释,删除中文乱码)
来源:互联网 发布:上海淘车网络骗局 编辑:程序博客网 时间:2024/05/17 23:14
一.下载ASTYLE_2.0(自动排版)
1,http://pan.baidu.com/s/1nu5Apdv
2,打开你的SourceInsight, 选择菜单“Options–>Custom Commands–>Add”, 输入Artistic Style(可以随便输入一个名字)。
3,Run中输入: “”D:\Source insight\ASTYLE_2.0\AStyle\bin\AStyle.exe” –style=ansi -s4 -S -N -L -m0 -M40 –convert-tabs –suffix=.pre %f(前面是ASTYLE的路径(注意路径不可以是中文的))
4,Dir留空,将Iconic Window, File,then Line 前打上勾。
5,然后点对话框中右侧的按钮“Menu”, Menu—>Menu–>View–>, 右侧Insert, OK.
6,此时在SourceInsight中的View菜单下多了个Style的子菜单选项,可以用它来对单个C/C++文件进行格式化。
二.下载TabSiPlus多标签显示
http://pan.baidu.com/s/1nu2Suwh
三.快捷注释代码
添加一些配置文件宏,比如:注释掉代码:单行注释、多行注释,将选中内容注释掉;在一行代码的前、后添加注释性文字等。
打开Projcet->Open project,选择base,可以看到utils.em文件,将下列宏添加到该文件中,并在其他工程里加入该文件,
在上面介绍的快捷键添加方式里找到该宏并自定义快捷键。
单行、多行注释:
macro MultiLineComment() { hwnd = GetCurrentWnd() selection = GetWndSel(hwnd) LnFirst = GetWndSelLnFirst(hwnd) //取首行行号 LnLast = GetWndSelLnLast(hwnd) //取末行行号 hbuf = GetCurrentBuf() if(GetBufLine(hbuf, 0) == ”//magic-number:tph85666031”){ stop } Ln = Lnfirst buf = GetBufLine(hbuf, Ln) len = strlen(buf) while(Ln <= Lnlast) { buf = GetBufLine(hbuf, Ln) //取Ln对应的行 if(buf == ”“){ //跳过空行 Ln = Ln + 1 continue } if(StrMid(buf, 0, 1) == ”/”) { //需要取消注释,防止只有单字符的行 if(StrMid(buf, 1, 2) == ”/”){ PutBufLine(hbuf, Ln, StrMid(buf, 2, Strlen(buf))) } } if(StrMid(buf,0,1) != ”/”){ //需要添加注释 PutBufLine(hbuf, Ln, Cat(“//”, buf)) } Ln = Ln + 1 } SetWndSel(hwnd, selection) }
四.删除中文退格键
*① 复制入SourceInsight安装目录;
* ② Project→Open Project,打开Base项目;
* ③ 将复制过去的SuperBackspace.em添加入Base项目;
* ④ 重启SourceInsight;
* ⑤ Options→Key Assignments,将Marco: SuperBackspace绑定到BackSpace键;
* ⑥ Enjoy!!
macro SuperBackspace() { hwnd = GetCurrentWnd(); hbuf = GetCurrentBuf(); if (hbuf == 0) stop; // empty buffer // get current cursor postion ipos = GetWndSelIchFirst(hwnd); // get current line number ln = GetBufLnCur(hbuf); if ((GetBufSelText(hbuf) != "") || (GetWndSelLnFirst(hwnd) != GetWndSelLnLast(hwnd))) { // sth. was selected, del selection SetBufSelText(hbuf, " "); // stupid & buggy sourceinsight :( // del the " " SuperBackspace(1); stop; } // copy current line text = GetBufLine(hbuf, ln); // get string length len = strlen(text); // if the cursor is at the start of line, combine with prev line if (ipos == 0 || len == 0) { if (ln <= 0) stop; // top of file ln = ln - 1; // do not use "ln--" for compatibility with older versions prevline = GetBufLine(hbuf, ln); prevlen = strlen(prevline); // combine two lines text = cat(prevline, text); // del two lines DelBufLine(hbuf, ln); DelBufLine(hbuf, ln); // insert the combined one InsBufLine(hbuf, ln, text); // set the cursor position SetBufIns(hbuf, ln, prevlen); stop; } num = 1; // del one char if (ipos >= 1) { // process Chinese character i = ipos; count = 0; while (AsciiFromChar(text[i - 1]) >= 160) { i = i - 1; count = count + 1; if (i == 0) break; } if (count > 0) { // I think it might be a two-byte character num = 2; // This idiot does not support mod and bitwise operators if ((count / 2 * 2 != count) && (ipos < len)) ipos = ipos + 1; // adjust cursor position } } // keeping safe if (ipos - num < 0) num = ipos; // del char(s) text = cat(strmid(text, 0, ipos - num), strmid(text, ipos, len)); DelBufLine(hbuf, ln); InsBufLine(hbuf, ln, text); SetBufIns(hbuf, ln, ipos - num); stop;}/*
- source insight配置(自动排版,多标签显示,注释,删除中文乱码)
- source Insight中文注释显示乱码解决办法
- source insight 自动排版
- Source Insight中文注释为乱码
- source insight 中文注释为乱码解决
- source insight 中文注释乱码问题
- source insight 中文注释为乱码解决
- source insight 中文注释为乱码解决
- source insight 中文注释乱码解决
- source Insight 解决中文注释乱码问题
- source insight 中文注释为乱码解决
- TeamTalk在Source Insight显示中文乱码
- Source Insight显示中文乱码解决方法
- 部分解决Source Insight中文输入法打开时输入的乱码问题和自动添加注释
- Source Insight 代码自动排版
- source insight中文乱码
- source insight中文注释乱码问题的解决方案
- Source Insight中文注释乱码、字体大小、等宽解决方法
- AVRWARE++开发笔记9:应用Atmel Studio学习C语言
- 92. Reverse Linked List II LeetCode
- 蓝桥杯历届-穿越雷区
- Spring Boot系列——Hello World
- SQL基础-->数据库事务(TRANSACTION)
- source insight配置(自动排版,多标签显示,注释,删除中文乱码)
- centos7编译替换内核
- java7新特性之Improved exception handling
- (二)分布式微信公众平台框架--接收粉丝发来的信息并回复
- 程序员学习之路
- 数据结构(7)线性表之链表C++实现差集
- Latent dirichlet allocation note
- java基础(二)之数据类型
- 活用 巧用数据结构