SourceInsight和UltraEdit技巧

合集下载

Source Insight用法精细

Source Insight用法精细

Source Insight实质上是一个支持多种开发语言(java,c ,c 等等)的编辑器,只不过由于其查找、定位、彩色显示等功能的强大,常被我们当成源代码阅读工具使用。

作为一个开放源代码的操作系统,Linux附带的源代码库使得广大爱好者有了一个广泛学习、深入钻研的机会,特别是Linux内核的组织极为复杂,同时,又不能像windows平台的程序一样,可以使用集成开发环境通过察看变量和函数,甚至设置断点、单步运行、调试等手段来弄清楚整个程序的组织结构,使得Linux内核源代码的阅读变得尤为困难。

当然Linux下的vim和emacs编辑程序并不是没有提供变量、函数搜索,彩色显示程序语句等功能。

它们的功能是非常强大的。

比如,vim和emacs就各自内嵌了一个标记程序,分别叫做ctag和etag,通过配置这两个程序,也可以实现功能强大的函数变量搜索功能,但是由于其配置复杂,linux附带的有关资料也不是很详细,而且,即使建立好标记库,要实现代码彩色显示功能,仍然需要进一步的配置(在另一片文章,我将会讲述如何配置这些功能),同时,对于大多数爱好者来说,可能还不能熟练使用vim和emacs那些功能比较强大的命令和快捷键。

为了方便的学习Linux源程序,我们不妨回到我们熟悉的window环境下,也算是“师以长夷以制夷”吧。

但是在Window平台上,使用一些常见的集成开发环境,效果也不是很理想,比如难以将所有的文件加进去,查找速度缓慢,对于非Windows平台的函数不能彩色显示。

于是笔者通过在互联网上搜索,终于找到了一个强大的源代码编辑器,它的卓越性能使得学习Linux内核源代码的难度大大降低,这便是Source Insight3.0,它是一个Windows平台下的共享软件,可以从/上边下载30天试用版本。

由于Source Insight是一个Windows平台的应用软件,所以首先要通过相应手段把Linux系统上的程序源代码弄到Windows平台下,这一点可以通过在linux平台上将/usr/src目录下的文件拷贝到Windows平台的分区上,或者从网上光盘直接拷贝文件到Windows平台的分区来实现。

sourceinsight使用技巧

sourceinsight使用技巧

sourceinsight使用技巧1 sourceinsight screen font的默认字体是Verdana的,它是一直变宽字体。

在Document style中可以将字体改为定宽的Courier2 勾掉indent Open Brace和Indent Close Brace的效果: 继上一段,在相对缩进行里, 如果输入"{"或"}", 则自动和上一行列对齐3 今天把一个用sourceinsight排版整齐的C文件,偶然用VC打开一看,全乱了。

研究了半天,发现SI对每个字符的宽度不太一致。

发现选上"view --> draft view",就可以让每个字符的宽度一致了。

快捷键是"Alt + F12"4选中几行代码按tab键或者shift+tab可以左右移动代码,调整代码时很有用。

配置成简单好用的c/java代码编辑器1、缩进与tab(1)Options菜单Preferences Typing卡,勾掉下面两项∶Typing tab indents line,regardless of selection,空行按tab无法前进Typing tab replaces current selection,选定部分内容、再按tab时会清除所选(2)Options菜单Document Options(针对不同文件类型,分别进行设置)下拉左上文件类型框、选择合适类型(c源文件)Editing Options框中,tab width=2 Editing Options框中,勾选Expand tabs(这样,按tab键、等价于输入2个空格)(3)Options菜单Document Options选择合适的文件类型点击右边中间的Auto Indent钮在弹出的框中,左边一定要点Smart,右边有两个复选框Indent Open Brace和Indent Close Brace,具体效果可以看SIS的HELP。

sourceinsight使用技巧

sourceinsight使用技巧

source insight 使用技巧1 sourceinsight screen font 的默认字体是Verdana 的,它是一直变宽字体。

在Document style中可以将字体改为定宽的Courier2 document options->auto indent 去掉indent Open Brace和Indent Close Brace的效果: 继上一段,在相对缩进行里, 如果输入"{"或"}", 则自动和上一行列对齐3 今天把一个用sourceinsight排版整齐的C文件,偶然用VC打开一看,全乱了。

研究了半天,发现SI对每个字符的宽度不太一致。

发现选上"view --> draft view",就可以让每个字符的宽度一致了。

快捷键是"Alt + F12"4选中几行代码按tab键或者shift+tab可以左右移动代码,调整代码时很有用。

配置成简单好用的c/java代码编辑器1、缩进与tab(1)Options菜单àPreferencesàTyping卡,勾掉下面两项∶Typing tab indents line,regardless of selection,空行按tab无法前进Typing tab replaces current selection,选定部分内容、再按tab时会清除所选(2)Options菜单àDocument Options(针对不同文件类型,分别进行设置)à下拉左上文件类型框、选择合适类型(c源文件)àEditing Options框中,tab width=2à Editing Options框中,勾选Expand tabs(这样,按tab键、等价于输入2个空格)(3)Options菜单àDocument Optionsà选择合适的文件类型à点击右边中间的Auto Indent钮à在弹出的框中,左边一定要点Smart,右边有两个复选框Indent Open Brace和Indent Close Brace,具体效果可以看SIS的HELP。

SourceInsight使用技巧(强大的编程必备工具)

SourceInsight使用技巧(强大的编程必备工具)

开胃菜-初级应用Source Insight常用的快捷键:Ctrl+= :Jump to definitionAlt+/ :Look up referenceF3 : search backwardF4 : search forwardF5: go to LineF7 :Look up symbolsF8 :Look up local symbolsF9 :Ident leftF10 :Ident rightAlt+, :Jump backwordAlt+. : Jump forwardShift+F3 : search the word under cusor backwardShift+F4 : search the word under cusor forwardF12 : incremental searchShift+Ctrl+f: search in projectshift+F8 : hilight word选择美丽的界面享受工作字体选择在SI中样式是可以被继承,如果要从根本上改变字体,最简单的方式就是直接修改根样式中的字体,因为其它样式都会由此继承而来。

选择Options/Document Options页面颜色定义选择Options/Style Properties页面,就可以在其中修改所有样式了。

选择等号(=)表示继承Parent Style,也可以选择Pick(或者ON/OFF等)去配置一个新值。

标识符样式选择在与颜色定义一节同样的界面while (1) {I }while (1){I}何乐而不为呢?显示坐标创建便捷的快捷键快乐工作几个较常用的快捷键默认情况下,SI已经定义了很多非常实用的快捷键:F5指定行号,实现行跳转,在遇到编译错误的时候,能特别方便的找到出错行。

Shift+F8高亮显示指定标识,快速浏览标识的使用情况。

Ctrl+鼠标点击标识直接跳转至标识定义处。

Ctrl+FF3F4F7打开Browse Project Symbols窗口,快速浏览工程内标识定义。

source insight 技巧

source insight 技巧

Source Insight 使用技巧标签:使用说明使用技巧文件快捷键分类:技术点滴2007-01-12 10:39 Source Insight是阅读和编写代码的好东东,基本上也算得上是经典之作了,虽然还有一点点小bug,不过对于我们这些C程序员来说可是一旦拥有别无所求。

下列小技巧是在工作中同事整理总结的,对提高工作效率多少有点帮助,其中有些是对应于SVN的,没有使用SVN做版本管理的人就不要白费力气了。

Option—>custom commands→run中填写下面的命令。

在commands中填写命令的标识(如Jonathan)选择RUN。

1.ShellExecute open explorer /e,/select,%f/*作用是在资源管理器中打开当前编辑文件并选中*//*可以设置快捷键如ctrl+e,(option→key assignments→选择刚添加的命令更改其快捷方式)这样能很方便的在资源管理器打开对应的文件,并进行tortoiseSVN的相关操作*/2.X:\Progra~1\T ortoiseSVN\bin\T ortoiseProc.exe /command:log /path:% /notempfile /closeonend/*使用前注意更改对应的bin安装路径*//*作用是直接查看当前文件的svn log*//*可以设置快捷键如ctrl+l*/3.X:\Progra~1\T ortoiseSVN\bin\T ortoiseProc.exe /command:diff /path:%f /notempfile /closeonend/*使用前注意更改对应的bin安装路径*//*作用是直接查看当前文件和基准版本的比较*//*可以设置快捷键如ctrl+d*/4.在Source Insight中快速添加注释将以下代码保存成Utils.em,详细使用说明看文章结尾。

效果如下图/* Utils.em - a small collection of useful editing macros *//*-------------------------------------------------------------------------I N S E R T H E A D E RInserts a comment header block at the top of the current function.This actually works on any type of symbol, not just functions.T o use this, define an environment variable "MYNAME" and set itto your email name. eg. set MYNAME=raygr-------------------------------------------------------------------------*/ macro InsertHeader(){// Get the owner's name from the environment variable: MYNAME.// If the variable doesn't exist, then the owner field is skipped.szMyName = getenv(MYNAME)// Get a handle to the current file buffer and the name// and location of the current symbol where the cursor is.hbuf = GetCurrentBuf()szFunc = GetCurSymbol()ln = GetSymbolLine(szFunc)// begin assembling the title stringsz = "/* "/* convert symbol name to T E X T L I K E T H I S */cch = strlen(szFunc)ich = 0while (ich < cch){ch = szFunc[ich]if (isupper(ch))sz = cat(sz, " ")elsesz = cat(sz, " ")sz = Cat(sz, toupper(ch))ich = ich + 1}sz = Cat(sz, " */")InsBufLine(hbuf, ln, sz)InsBufLine(hbuf, ln+1, "/*-------------------------------------------------------------------------")/* if owner variable exists, insert Owner: name */if (strlen(szMyName) > 0){InsBufLine(hbuf, ln+2, " Owner: @szMyName@")InsBufLine(hbuf, ln+3, " ")ln = ln + 4}elseInsBufLine(hbuf, ln, " ") // provide an indent alreadyInsBufLine(hbuf, ln+1, "-------------------------------------------------------------------------*/")// put the insertion point inside the header commentSetBufIns(hbuf, ln, 4)}/* InsertFileHeader:Inserts a comment header block at the top of the current function.This actually works on any type of symbol, not just functions.T o use this, define an environment variable "MYNAME" and set itto your email name. eg. set MYNAME=raygr*/macro InsertFileHeader(){szMyName = getenv(MYNAME)hbuf = GetCurrentBuf()InsBufLine(hbuf, 0, "/*-------------------------------------------------------------------------")/* if owner variable exists, insert Owner: name */InsBufLine(hbuf, 1, " ")if (strlen(szMyName) > 0){sz = " Owner: @szMyName@"InsBufLine(hbuf, 2, " ")InsBufLine(hbuf, 3, sz)ln = 4}elseln = 2InsBufLine(hbuf, ln, "-------------------------------------------------------------------------*/")}// Inserts "Returns True .. or False..." at the current linemacro ReturnTrueOrFalse(){hbuf = GetCurrentBuf()ln = GetBufLineCur(hbuf)InsBufLine(hbuf, ln, " Returns True if successful or False if errors.") }/* Inserts ifdef REVIEW around the selection */macro IfdefReview(){IfdefSz("REVIEW");}/* Inserts ifdef BOGUS around the selection */macro IfdefBogus(){IfdefSz("BOGUS");}/* Inserts ifdef NEVER around the selection */macro IfdefNever(){IfdefSz("NEVER");}// Ask user for ifdef condition and wrap it around current // selection.macro InsertIfdef(){sz = Ask("Enter ifdef condition:")if (sz != "")IfdefSz(sz);}macro InsertCPlusPlus(){IfdefSz("__cplusplus");}// Wrap ifdef <sz> .. endif around the current selection macro IfdefSz(sz){hwnd = GetCurrentWnd()lnFirst = GetWndSelLnFirst(hwnd)lnLast = GetWndSelLnLast(hwnd)hbuf = GetCurrentBuf()InsBufLine(hbuf, lnFirst, "#ifdef @sz@")InsBufLine(hbuf, lnLast+2, "#endif /* @sz@ */")}// Delete the current line and appends it to the clipboard buffer macro KillLine(){hbufCur = GetCurrentBuf();lnCur = GetBufLnCur(hbufCur)hbufClip = GetBufHandle("Clipboard")AppendBufLine(hbufClip, GetBufLine(hbufCur, lnCur)) DelBufLine(hbufCur, lnCur)}// Paste lines killed with KillLine (clipboard is emptied) macro PasteKillLine(){PasteEmptyBuf(GetBufHandle("Clipboard"))}// delete all lines in the buffermacro EmptyBuf(hbuf){lnMax = GetBufLineCount(hbuf)while (lnMax > 0){DelBufLine(hbuf, 0)lnMax = lnMax - 1}}// Ask the user for a symbol name, then jump to its declaration macro JumpAnywhere(){symbol = Ask("What declaration would you like to see?")JumpT oSymbolDef(symbol)}// list all siblings of a user specified symbol// A sibling is any other symbol declared in the same file.macro OutputSiblingSymbols(){symbol = Ask("What symbol would you like to list siblings for?") hbuf = ListAllSiblings(symbol)SetCurrentBuf(hbuf)}// Given a symbol name, open the file its declared in and// create a new output buffer listing all of the symbols declared // in that file. Returns the new buffer handle.macro ListAllSiblings(symbol){loc = GetSymbolLocation(symbol)if (loc == ""){msg ("@symbol@ not found.")stop}hbufOutput = NewBuf("Results")hbuf = OpenBuf(loc.file)if (hbuf == 0){msg ("Can't open file.")stop}isymMax = GetBufSymCount(hbuf)isym = 0;while (isym < isymMax){AppendBufLine(hbufOutput, GetBufSymName(hbuf, isym))isym = isym + 1}CloseBuf(hbuf)return hbufOutput}/*written by yubind*/macro SingleLineComment(){szMyName = "chenjsa"// Get a handle to the current file buffer and the name // and location of the current symbol where the cursor is. hbuf = GetCurrentBuf()ln = GetBufLnCur(hbuf)// Get current timeszTime = GetSysTime(1)Hour = szTime.HourMinute = szTime.MinuteSecond = szTime.SecondDay = szTime.DayMonth = szTime.MonthYear = szTime.Yearif (Day < 10)szDay = "0@Day@"elseszDay = Day//szMonth = NumT oName(Month)if (Month < 10)szMonth = "0@Month@"elseszMonth = MonthszDescription = Ask("请输入修改原因")// begin assembling the title stringInsBufLine(hbuf, ln+1, "/*@szDescription@ @szMyName@.xmyanfa @Year@-@szMonth@-@szDay@*/")}macro MultiLineCommentHeader(){szMyName = "chenjsa"// Get a handle to the current file buffer and the name// and location of the current symbol where the cursor is.hbuf = GetCurrentBuf()ln = GetBufLnCur(hbuf)// Get current timeszTime = GetSysTime(1)Hour = szTime.HourMinute = szTime.MinuteSecond = szTime.SecondDay = szTime.DayMonth = szTime.MonthYear = szTime.Yearif (Day < 10)szDay = "0@Day@"elseszDay = Day//szMonth = NumT oName(Month)if (Month < 10)szMonth = "0@Month@"elseszMonth = MonthszDescription = Ask("请输入修改原因:")// begin assembling the title stringInsBufLine(hbuf, ln + 1, "/*@szDescription@ @szMyName@.xmyanfa @Year@-@szMonth@-@szDay@ begin*/")}macro MultiLineCommentEnd(){szMyName = "chenjsa"// Get a handle to the current file buffer and the name // and location of the current symbol where the cursor is. hbuf = GetCurrentBuf()ln = GetBufLnCur(hbuf)// Get current timeszTime = GetSysTime(1)Hour = szTime.HourMinute = szTime.MinuteSecond = szTime.SecondDay = szTime.DayMonth = szTime.MonthYear = szTime.Yearif (Day < 10)szDay = "0@Day@"elseszDay = Day//szMonth = NumT oName(Month)if (Month < 10)szMonth = "0@Month@"elseszMonth = MonthInsBufLine(hbuf, ln + 1, "/*@szMyName@.xmyanfa @Year@-@szMonth@-@szDay@ end*/")}使用说明:可以实现在sourceinsight中快速添加修改注释。

c++使用source insight阅读技巧

c++使用source insight阅读技巧

Source Insight是一款非常强大的代码阅读和编辑工具,它可以帮助程序员更方便地阅读和理解源代码。

以下是一些使用Source Insight的阅读技巧:1. 使用符号跳转:在Source Insight中,你可以使用快捷键"Ctrl+Click"或"Shift+Click"来跳转到函数、变量或类的定义处,这样可以让你更快速地了解它们的用途和定义。

2. 利用大纲视图:Source Insight的大纲视图可以显示当前文件的结构,包括函数、类、变量等。

这个视图可以让你更容易地了解代码的结构,并且可以快速导航到各个部分。

3. 使用注释和文档:Source Insight可以显示函数、类和变量的注释和文档,这些注释和文档通常会提供有用的信息,帮助你理解代码的功能和实现。

4. 显示行号:在Source Insight中,你可以显示行号,这可以帮助你更容易地找到代码的位置。

5. 使用搜索功能:Source Insight的搜索功能非常强大,你可以使用它来查找特定的函数、类、变量或注释。

你可以使用快捷键"Ctrl+F"来打开搜索框,输入你要查找的内容,然后按下"Enter"键即可查找。

6. 定制快捷键:Source Insight允许你定制快捷键,你可以根据自己的习惯来设置快捷键,提高代码阅读和编辑的效率。

7. 使用自动完成:Source Insight的自动完成功能可以帮助你更快地输入代码,你只需要输入几个字符,然后按下"Ctrl+空格"键,Source Insight会自动显示出可能的选项,你可以从中选择你要输入的内容。

以上是一些使用Source Insight的阅读技巧,希望对你有所帮助。

source insight使用技巧

source insight使用技巧

勾选 Auto Indent 之 SMART 的效果∶在 C 程序里, 如果遇到行末没有分号的语句,如 IF, WHILE, SWITCH 等, 写到该行末按回车,则新行自动相对上一行缩进两列。
勾掉 Indent Open Brace 和 Indent Close Brace 的效果∶继上一段,在相对缩进行里, 如果输入 "}", 则自动和上一行列对齐(好像勾不勾都会有这个功能);而输入"{"时,不会与下面的行对齐(这是 勾上 Indent Open Brace 时的效果)。
5、恢复 ctrl+a 的全选功能
通过关键词 save 找到 save all,更改为 ctrl+shift+a,通过关键词 select 找到 select all, 更改 为 ctrl +a
6、解决字符等宽对齐问题。
SIS 默认字体是 VERDANA,很漂亮。这网页上应该也是用的 VERDANA 字体。但由于美观的缘故, VERDANA 字体是不等宽的。比如下面两行
llllllllll
MMMMMMMMMM
同样 10 个字符,长度差多了.用 VERDANA 来看程序,有些本应该对齐的就歪了。解放方法是使用 等宽的字体,但肯定比较丑。可以用 DOS 字体,也就是记事本里的默认字体 sysfixed 很丑,要有心理准 备。比较推荐的是用 Courier New。
SourceInsight 提供的功能
(3)Options 菜单Document Options选择合适的文件类型点击右边中间的 Auto Indent 钮在弹出的框中,左边一定要点 Smart,右边有两个复选框 Indent Open Brace 和 Indent Close Brace,具体效果可以看 SIS 的 HELP。按照部门里的编程风格要求,最方便的就是把两个复选框都取消 掉,然后点 OK。

source insight 高级用法

source insight 高级用法

source insight 高级用法
Source Insight 是一款功能强大的代码阅读和编辑工具,主要用于C、C++ 和汇编语言的开发。

以下是一些Source Insight 的高级用法:
1. 多光标编辑:你可以在多个位置放置光标,然后同时编辑文本。

这对于同时修改多个地方非常有用。

2. 查找和替换:你可以在整个项目或当前文件中查找和替换文本或符号。

这个功能在重构代码时非常有用。

3. 代码折叠:你可以折叠或展开代码块,以更好地理解代码结构。

4. 自动完成:Source Insight 可以自动完成你的代码,这可以大大提高编程效率。

5. 导航:你可以快速导航到任何符号或函数的定义处,也可以快速浏览项目的层次结构。

6. 注释和取消注释:你可以选择注释或取消注释代码块,这对于理解代码逻辑非常有用。

7. 显示行号:你可以在编辑器中显示行号,这有助于快速定位代码。

8. 语法高亮:Source Insight 可以根据语法高亮显示代码,这有助于快速理解代码结构。

9. 自定义设*:你可以根据自己的喜好自定义Source Insight 的界面和编辑器设置。

10. 集成版本控制:Source Insight 支持与Git、CVS 等版本控制系统集成,可以方便地查看和管理版本历史。

这些只是一些基本的Source Insight 高级用法,还有更多高级功能等待你去探索。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Source Insight使用技巧
默认情况下,SI已经定义了很多非常实用的快捷键:
F5
指定行号,实现行跳转,在遇到编译错误的时候,能特别方便的找到出错行。

Shift+F8
高亮显示指定标识,快速浏览标识的使用情况。

Ctrl+鼠标点击标识
直接跳转至标识定义处。

Ctrl+F
本文件内查找。

F3
本文件查找结果的上一个。

F4
本文件查找结果的下一个。

F7
打开Browse Project Symbols窗口,快速浏览工程内标识定义。

Ctrl+M
Source Insight设置
1、背景色选择
要改变背景色Options->preference->windows background->color设置背景色2、解决字符等宽对齐问题。

SIS默认字体是VERDANA,很漂亮。

这网页上应该也是用的VERDANA 字体。

但由于美观的缘故,VERDANA字体是不等宽的。

比如下面两行llllllllll
MMMMMMMMMM
同样10个字符,长度差多了.用VERDANA来看程序,有些本应该对齐的就歪了。

解放方法是使用等宽的字体,但肯定比较丑。

比较推荐的是用Courier New。

3、解决TAB键缩进问题
Options-> Document Options里面的右下角Editing Options栏里,把Expand tabs勾起来,然后确定。

OK,现在TAB键的缩进和四个空格的缩进在SIS里面看起来就对齐咯
4、SI中的自动对齐设置:
在C程序里, 如果遇到行末没有分号的语句,如IF, WHILE, SWITCH等, 写到该行末按回车,则新行自动相对上一行缩进两列。

Option->Document option下的Auto Indient中Auto Indient Type有三种类型None,Simple,Smart。

个人推荐选用Simple类型。

5、向项目中添加文件时,只添加特定类型的文件(文件类型过滤器)
编辑汇编代码时,在SIS里建立PROJECT并ADD TREE的时候,根据默认设置并不会把该TREE里面所有汇编文件都包含进来
只加了.inc和.asm后缀的,.s后缀的没有。

而且用SIS打开.s的文件,一片黑白没有色彩,感觉回到DOS的EDIT时代了……
解决方法是在Options->Document Options里面,点左上的Document Type 下拉菜单,选择x86 Asm Source File,
然后在右边的File filter里*.asm;*.inc;的后面加上*.s;接着CLOSE就可以了。

上面问题解决了,但注意加入*.s后还需要重新ADD TREE一遍才能把这些汇编加到PROJECT里面。

6、添加文件类型
用户可以定义自己的类型,Options->Document Options->add type,定义文件类型名以及文件名后缀。

勾选include when adding to projects在添加目录下文件到工程是该类文件就会添加进SI的工程。

如果需要将所有文件添加进SI的工程,可以定义一种文件类型*.*。

7、恢复ctrl+a的全选功能
通过关键词save 找到save all,更改为ctrl+shift+a,通过关键词select找到select all,更改为ctrl +a
Source Insight常用的快捷键:
Ctrl+= :Jump to definition
Alt+/ :Look up reference
F3 : search backward
F4 : search forward
F5: go to Line
F7 :Look up symbols
F8 :Look up local symbols
F9 :Ident left
F10 :Ident right
Alt+, :Jump backword
Alt+. : Jump forward
Shift+F3 : search the word under cusor backward
Shift+F4 : search the word under cusor forward
F12 : incremental search
Shift+Ctrl+f: search in project
shift+F8 : hilight word
Source Insight的窗口操作:
project window Ctrl+O打开
symbol window Alt+F8打开和关闭
Contex Window 自定义键打开和关闭
Relation Window 自定义键打开先锁定再刷新联系
UltraEdit 使用技巧
Tip 1: 如何去掉所编辑文本中包含特定字符串的行?
这则技巧是在UltraEdit的帮助文件里提到.CTRL+R 调出来替换(Replace)窗口,选中"使用正则表达式";然后用查找%*你的字符串*^p 替换成空内容即可.如,我当前有个文本文件,需要去掉所有包含/ 这个字符串的行,查找%*/*^p替换成空即可.注意,^p 是DOS 文件类型的换行符.如果是Unix 类型文件,则用^n.
Tip 2: 如何在行末添加特定字符,比如逗号?
有了上面的经验(其实我第一次是从同事那里学到的),CTRL+R 调出来替换(Replace)窗口,选中"使用正则表达式".然后可以查找^p(或者^n,如果是Unix 文件),用,^p(或者,^n)进行"全部替换"即可.补充一点,如果是MAC(Apple) 类型文件,则换行符号为^r .
Tip 3: 如何删除空行?
参考上面两个例子,查找^p$ 然后替换为空即可.
看来,正则表达式需要学习一下喽.
Tip 4: 编辑文件如何加入时间戳?
F7快捷键即可.你试试看?
Tip 5: 为何拷贝(Copy)/粘贴(Paste)功能不能用了?
不怕大家笑话,我有几次使用UltraEdit 的过程中发现拷贝与粘贴的内容是不匹配的.不知所以然,干脆重新启动了笔记本.今天翻看手册才恍然大悟:UltraEdit有10个剪切板(clipboard),分别用Ctrl+0 - Ctrl+9切换.Ctrl+0 是Windows 的,其他则为用户自定义的.我在使用的过程中错调用了CTRL+n, 结果内容就有问题了.你遇到过没?
一些UE的热键,非常实用
1:ctrl+b
写代码的时候,括号一般要一一对应的,但是如果嵌套太多,看花眼了,怎么办?你把光标放在括号开始的地方,按ctrl+b,UE 会帮你找到相对应的括号结尾的地方。

你还可以试试连着多按几次ctrl+b。

的却很有用
2:如何去掉所编辑文本中包含特定字符串的行?
这则技巧是在UltraEdit的帮助文件里提到.CTRL+R 调出来替换(Replace)窗口,选中"使用正则表达式";然后用查找%*你的字符串*^p 替换成空内容即可.
如,我当前有个文本文件,需要去掉所有包含DBA Blog 这个字符串的行,查找%*DBA Blog*^p替换成空即可.注意,^p 是DOS 文件类型的换行符.如果是Unix 类型文件,则用^n.
3: ctrl+ F3 ;F3
默认情况下,当你按F3的时候UltraEdit可以查找现在选中的内容,F3是下一个符合的内容,ctrl+f3是上一个符合的内容.
4:如何在行末添加特定字符,比如逗号?
CTRL+R 调出来替换(Replace)窗口,选中"使用正则表达式".然后可以查找^p(或者^n,如果是Unix 文件),用,^p(或者,^n)进行"全部替换".
5:删除空行?
查找^p$ 然后替换为空即可
6:ctrl+f2
代码会有很多行你当然可以记得你要到的行数,然后用ctrl+g,然后输入行号,到所在的行。

但是用ctrl+f2我觉得更方便。

比如说你要频繁在多个function 中切换。

可以在function开始的地方,按一下ctrl+f2,给这一行加一个书签。

然后再另外的function开始的地方,也来一下ctrl+f2,有书签的地方,字的背景色会不同。

当你想换到下一个书签的时候,就按f2,但是想到上一个标签怎么办?ctrl+f2?不对,再按就是加书签或者取消当前行的书签了。

应该是alt +f2.
7:ctrl+tab
多个文件中切换,用鼠标点,麻烦.
8:删除整行
定位光标要删除的行,然后用ctrl+e即可.
9:列编辑
Alt+c
10:插入系统时间
按F7,就看看效果怎么样.
11:拷贝(Copy)和粘贴(Paste)的内容不匹配
UltraEdit有10个剪切板(clipboard),分别用Ctrl+0 - Ctrl+9切换.Ctrl+0 是Windows 的,其他则为用户自定义的.如果在使用的过程中错调用了CTRL+n, 这就会使拷贝(Copy)和粘贴(Paste)的内容不匹配.。

相关文档
最新文档