第二篇 简洁但功能强大的EditPlus——我的最爱


这是 打造全能的文本编辑器序列 的第二篇。在写这篇文章之前,polaris想说明几点:

1)文本编辑器数量众多,而人的精力有限,polaris不可能把所有的文本编辑器都“研究”一遍。所以,如果您很喜欢的文本编辑器,polaris没有涉及,可以留言告之,polaris会尝试使用;
2)萝卜青菜,各有所爱。polaris写作本序列文章的目的不是强制您使用哪个编辑器(呵呵,polaris也不可能有那个能耐),也不是贬低某个编辑器, 而是希望这一序列文章能够给那些还在使用Notepad但想换一个文本编辑器的网友提供一些参考意见,同时也希望给那些还在寻找一款合适编辑器的网友提供 一些参考,另一方面就是,polaris觉得这些文本编辑器确实挺好用,至少polaris用起来很顺手。
3)如果polaris有说的不对或不好的地方,还请您指正。如果您不同意polaris的观点,可以留言给出自己的观点,但请您“嘴上”留情,你不同意polaris的观点,您的观点也不一定就正确,咱们应该讨论,共同进步。“口水战”的确很没意思。
4)希望这一序列文章能够起到抛砖引玉的作用。您有更好的见解或觉得有更好用的编辑器,欢迎分享。

原本上面这些说明应该在文本编辑器序言中,然而这些是polaris应xbeta(善用佳软)邀请将这一序列文章投稿到 http://xbeta.info 上后,看到有些网友的回复,才觉得有必要说明一下。当然,polaris说了这些还是会有人来“口水战”,对此,polaris只能视而不见。

引言

EditPlus在 polaris的印象中,对文本编辑器的使用,大概追溯到当时看视频学JAVA的时候,不过当时对文本编辑器没什么印象。现在对当时使用的情况都很模糊 了,只记得当时使用的应该是UltraEdit,但对其却知之甚少。真正使用文本编辑器应该是在几年前接触到EditPlus,然后在polaris使用 的任何电脑上,都会安装上它,成了装机必备软件之一。

一开始喜欢上它,一来是因为其界面简洁,但功能却十分强大;二来是其启动速度十分快。 在polaris认识的人中,有不少人使用UltraEdit,说实话,这款软件的确做得很优秀,然而,一开始polaris就觉得其界面太过复杂,感觉 很多功能根本用不上,看着不爽,因而也就没有用下去。最近又将其装上了,感觉还是挺好用的,当然功能也很强大(装上也主要是想多试用各种编辑器,了解各大 编辑器的功能,选择一款最适合自己的或给新手一点帮助),在后续文章中,polaris可能会介绍UltraEdit。现在还是回到今天的主角上来—— EditPlus。

介绍之前,引用momo对EditPlus的评价[via]:

经过多种文本编辑软件的比较使用,我发现 Windows 下最好的文本编辑器是 EditPlus。
当然,我知道因个人习惯不同,各类用户可能会对文本编辑器提供的各种功能有不同程度的依赖,但我还是得推荐 EditPlus,因为它有以下几项突出的优点:

1)启动速度快。这几乎是最令人欣赏的一项特性 ,我知道 UltraEdit 是一个功能极其丰富而且强大的编辑器,但它的启动速度太慢了,我没理由为打开一个寥寥数行的文本文件等上好几秒。

2)界面简洁。这也是非常令人欣赏的特性,也许某些比较 Geek 的用户会对庞杂而丰满的程序主菜单仰慕不已,但我并不愿意为了一些并不常用的功能牺牲眼前电脑屏幕上更多的空间,正相反,我喜欢“Keep it simple, stupid”的界面设计,能用,够用就好。

3)完善的代码高亮。最近一直使用的是 EmEditor 6.0,但在编写 Perl 脚本时,我发现 EmEditor 的语法高亮有一定问题,它甚至不能正确识别 =comment … =cut 这样的 Perl 注释语句(polaris注:该问题EmEditor其实很容易解决,只需要自行配置语法注释即可)。而在 EditPlus 下,这种注释被支持得非常好。还有就是在EmEditor下,经常出现多个双引号高亮错误的情况,还以为自己写错代码了(polaris注:在EmEditor10.0 版本中没有发现该问题)……

4)代码折叠功能。这个功能在 EditPlus 版之前似乎没有提供,但现在已经有了,而且效果不错,至少比 EmEditor 的强很多(polaris注:现 在的EmEditor版本代码折叠功能也很强大了)。从我迷上玩博客以后,常常为分析 HTML/CSS 模版代码感到疲惫,因为必须把网页元素间的内在结构搞清楚才能有效地控制它们的显示效果。我以前的一篇文章曾经提到 用 Notepad++ 内置的代码折叠功能分析网页源码,不过说实话那个开源软件的确有很多需要改进的地方,尤其是中文支持方面远不如 EditPlus,EmEditor 这类商业软件(polaris注:EditPlus和EmEditor都是东方人编写的,一开始就对东方象形文字支持很好,毕竟开发者的母语就是象形文字,不过Notepad++是中国台湾人编写的,为啥这方面不如商业软件呢?)。

5)多文档编辑界面。这是个比较细节的特性,在 EmEditor 中,如果把最后一篇活动文档关闭,则主程序也会随之关闭,这给我带来了一些不便。尤其是当我希望创建新的空白文档时,我不得不在开始菜单中重新启动编辑器(polaris注:现行的EmEditor版本已无此问题)。而在 EditPlus 中,只要不点击最右上角的关闭按钮,编辑器始终是打开状态,我个人认为这样更方便一些。除此之外,在界面外观设计上 EditPlus 也有很多过人之处,我不能很好地将这种独特的属性描述出来,但我可以做一个比喻,如果把各种文本编辑器都看作一个美女的话,EditPlus 就属于那种苗条纤巧,落落大方的类型,相比之下 EmEditor 则略显富态(polaris注:EmEditor在这方面的确比不上EditPlus,启动速度也略差些),而 UltraEdit 简直就是肥婆了。

1 EditPlus简介

EditPlus是由韩国人编写的一款共享软件(1-user license: US$35),官方网址是 www.editplus.com 。最新版本是EditPlus 3.2(2010-08-04)。EditPlus是功能全面的文本、HTML、程序源代码编辑器。

主要特点如下:
(1)默认支持HTML、CSS、PHP、ASP、Perl、C/C++、Java、JavaScript和VBScript等语法高亮显示,通过定制语法文件,可以扩展到其他程序语言,在官方网站上可以下载(大部分语言都支持)。
(2)EditPlus提供了与Internet的无缝连接,可以在EditPlus的工作区域中打开Intelnet浏览窗口。
(3)提供了多工作窗口。不用切换到桌面,便可在工作区域中打开多个文档。
(4)正确地配置Java的编译器“Javac”以及解释器“Java”后,使用EditPlus的菜单可以直接编译执行Java程序。

总之,EditPlus功能强大,界面简洁美观,且启动速度快;中文支持比较好;支持语法高亮;支持代码折叠;支持代码自动完成(但其功能比较弱),不支持 代码提示功能;配置功能强大,且比较容易,扩展也比较强。像PHP、Java程序等的开发环境,只要看一下资料,几分钟就可以搞定配置,很适合初学者学习 使用。有不错的项目工程管理功能。内置浏览器功能,这一点对于网页开发者来说很是方便。本人特别推荐。

2 EditPlus特色功能介绍

EditPlus功能众多,有不少功能很多编辑器都是有的,就不进行介绍,当然也会有一些功能polaris没有用到,自然也就不可能拿出来介绍。(说明:由于polaris使用文本编辑器的数量有限,以下功能也许有些编辑器已有了,如您知晓,可以留言分享)

2.1 使用EditPlus书写电子邮件

发送电子邮件时,可以写在EditPlus中写好。写完之后,执行“文件”→“其他”→“发送邮件…”,会启动当前系统默认的邮件客户端,当前文档会被拷贝入邮件正文,这样只要输入发送人地址就可以将邮件发出去了。

2.2 锁定文件不让其他程序修改

执行“文件”→“其他”→“锁定文件”,该文件便被锁定,其他程序便无法修改它。

2.3 复制为HTML

在“编辑”→“剪贴板”中有若干功能,如图:

其中有一项“复制为HTML”,polaris觉得很有特色,也很有用处。您可以复制试试,看看粘贴后是什么样子。

2.4 HTML预览

这个功能不少文本编辑器都有,或者通过插件可以实现,然而polaris觉得EditPlus的HTML预览功能用起来最舒服、方便,也许这跟EditPlus界面简洁有关。

对HTML文件直接按Ctrl+B或点击HTML工具栏的HTML预览图标就会自动在一个文档中启动浏览,这对于测试HTML文件或JavaScript有一定的好处(当然,更专业的测试或调试有专门的工具)。

2.5 有特色的窗口设置

在“窗口”→“其他”菜单中,有若干有特色的设置:

通过这里,可以将EditPlus前端显示或透明显示等。如果您闲任务栏图标太多,您可以选中“最小化为托盘图标”,这样最小EditPlus的时候,EditPlus的图标便不会在任务栏中显示,而是最小化为托盘图标了。

3 EditPlus使用技巧

在此推荐一篇文章《EditPlus 使用技巧集萃》,这篇文章在网上被多次署名或不署名转载。目前可知的最早出处是 dream4ever,但原始网址不可访问,Liangjh是主要编者。[via]。这里面的技巧,在现在的EditPlus版本中已经很容易实现,可能算不上什么技巧了,比如删除空行,现在的版本已经直接提供了该命令。然而,有不少技巧还是值得一看,polaris也对其进行了转载,格式或某些内容进行了改动,点击此处查看

4 自定义语法文件

很多时候,使用EditPlus并不需要自定义语法文件,因为官方网站上已经有大量语法文件可供下载。在此介绍自定义语法高亮文件,主要是为了方便修改已有语法文件,使其更适合自己。

4.1 语法高亮

EditPlus 支持强大的、可自定义的语法高亮功能,内置了 HTML, CSS, PHP, ASP, Perl, C/C++, Java, JavaScript, VBScript 的语法文件,你也可以创建自己的语法文件来支持其它设计语言。

要支持自己的语法类型,你必须创建一个语法文件并把它添加到“参数选择”对话框中的“设置与语法”中。

语法文件是一个扩展名为“.stx”并按预定格式编写的纯文本文件,这种格式非常简单。建议查看用于 C/C++ 的语法文件(cpp.stx),以它为例来学习创建这种语法文件。

#TITLE=C/C++
#DELIMITER=,()}[]-+*%/=”‘~!&|\<>?:;.
#QUOTATION1=’
#QUOTATION2=”
#CONTINUE_QUOTE=n
#LINECOMMENT=//
#LINECOMMENT2=
#COMMENTON=/*
#COMMENTOFF=*/
#COMMENTON2=
#COMMENTOFF2=
#ESCAPE=\
#CASE=y
#PREFIX1=
#PREFIX2=
#PREFIX3=
#PREFIX4=
#PREFIX5=
#SUFFIX1=
#SUFFIX2=
#SUFFIX3=
#SUFFIX4=
#SUFFIX5=
#HTML_EMBEDDED=
#SCRIPT_BEGIN=
#SCRIPT_END=
#HEREDOC=
#AUTOCASE=
#NUMBER_PATTERN=cpp
#SPECIAL_STX=cpp
所有语法声明必须以“#”为前缀,具体解释如下:
#TITLE
这里定义语法文件标题,它必须出现在语法文件的首行,否则 EditPlus 将不能正确读取它的信息。
#DELIMITER
指定用于分解关键字的定界符。你不必指定空格和制表符,它们是程序内置的缺省定界符。
#QUOTATION1
指定引用语标记,例如单引号,这里只能定义一个字符。
#QUOTATION2
指定另一种引用语标记,例如双引号,这里只能定义一个字符。
#CONTINUE_QUOTE
这个选项允许不停止引用而将它延续到下一行。定义为“y”时允许跨行引用,定义为“n”时不允许跨行引用,“n”是默认值。
#LINECOMMENT
指定行内注释标记。如果你以“!”作为行内注释符的前缀,那么仅在它位于行首时才会起作用。
#LINECOMMENT2
指定另一种行内注释标记。如果你以“!”作为行内注释符的前缀,那么仅在它位于行首时才会起作用。
#COMMENTON
指定一个块级注释的启始标记。
#COMMENTOFF
指定一个块级注释的结束标记。
#COMMENTON2
指定另一种块级注释的启始标记。
#COMMENTOFF2
指定另一种块级注释的结束标记。
#ESCAPE
指定避让字符,这里只能定义一个字符。
#CASE
指定敏感性。取值为“n”或“n” 默认值为“n”。
#PREFIX1 – #PREFIX5
指定前缀关键字,任何跟随前缀的单词将被视为已经处理的关键字。
#SUFFIX1 – #SUFFIX5
指定后缀关键字,任何在后缀之前的单词将被视为已经处理的关键字。
#HTML_EMBEDDED
如果是像 PHP 这样的 HTML 植入脚本,指定为“y”。可以参考“php.stx”中的用法。
#SCRIPT_BEGIN
指定 HTML 植入脚本的启始标记,仅在“#HTML_EMBEDDED”定义为“y”时发生作用,请参考“php.stx”中的用法。
#SCRIPT_END
指定 HTML 植入脚本的结束标记,仅在“#HTML_EMBEDDED”定义为“y”时发生作用,请参考“php.stx”中的用法。
#HEREDOC
指定一个字符串用于 Perl和 PHP 文件中的 heredoc。例如:#HEREDOC=<<EOF.
#AUTOCASE
如果希望使用关键字自动完成特性,将它定义为“y”。
#NUMBER_PATTERN
‘cpp’用于 C/C++数字语法高亮。
#SPECIAL_STX
“html”用于 HTML 语法文件,“cpp”用于 C/C++ 语法文件,“perl”用于 Perl 语法文件,留空则可用于其它语法文件。
同其它语言一样,你也可以在语法文件中插入注释,注释行必须以英文的分号“;”启始。如果你希望指定英文分号作为一个关键字,必须以避让字符“^”作为它的前缀。
关键字组 Keyword groups#KEYWORD=Reserved words
abstract
boolean
break
#KEYWORD=Compiler directives

每个关键字组以#KEYWORD=启始,之后定义该组的描述。关键字清单从下一行开始,如果需要在关键字里包含“#”,必须以避让字符“^”为前缀,像 “^#”这样。在这种情况下,“#”标记不应该包含在“#DELIMITER”定义中。你最多可以定义 10 个关键字组。

4.2 用户文件保存机制

在 EditPlus 官网上用户文件页面上有一个用户文件(stx、ctl、acp 文件)集合。若您愿意与其他用户分享您的文件,您可以提交您自己的语法文件到<submit@editplus.com> 。(正文完)

“我的最爱”–补充说明:更新本文的时候,原本打算把标题中的“我的最爱”去掉,因为这个时候,polaris最爱的已经不是EditPlus,而是转为EmEditor,最后想想还是保留原样,毕竟现在polaris是EmEditor为主,EditPlus与Vim为辅,而且EditPlus是曾经的最爱。(2010-09-13)


《 “第二篇 简洁但功能强大的EditPlus——我的最爱” 》 有 58 条评论

  1. 作者不错,你应该把所有的目前的编辑器都介绍一下,不用介绍缺点,只要介绍比别的编辑器最有优势的地方就行了。。这样干什么的时候就知道该用什么编辑器了。。我现在用的是vim+madEdit+ue ,再加上TC的F4menu,可以根据需要选择不同的编辑器进行编辑。。我想谁也不会只认准用一个编辑器的。。

    • 谢谢。一般的确不是只用一个编辑器,我现在用的是EmEditor+Vim+EditPlus,编辑器众多,而且精力有限,没法把所有的编辑器都介绍,只能力争多介绍些优秀的编辑器。

      • 哈哈。。这个应该感谢的是你啊,一篇一篇的慢慢写就好了。。支持你,就是因为大家都没有精力试用所有的,所以就要有一个先锋了。。等写好了,后来的人就有参考了。。写的完善不完善不要紧,关键是要写出一个产品的优点才是最重要的!

  2. 支持一下作者。感觉前些时日在polaris的个人博客上第一次见到的文章和这篇略有不同,是否自行做了一些修改,文章是越改越好了!

    • 常用emeditor,对Emeditor的说法我无法认同.

      那文章作者如下所说..:
      1.竟然不支持多文档..
      4、正则表达式支持不如UltraEdit。
      5、对大文件支持不好,过大的文件(数十MB)无法打开。

      ———————-
      1.多文档早支持了吧.- -..(他发帖时间是2010年.)
      4.我对UE不太熟悉.不知道哪里不如..不过支持js宏.那么用js的正则总没话说了吧.
      5.我不清楚啊.据说可以打开过G文件….和传言不一样么…这…

  3. 列编辑的话我觉得AptEdit也不错,不过它的免费版本不支持16进制的编辑,但可以查看。对Unicode支持也不错,至少我没有碰到过乱码。另外,支持FTP编辑也是一个特色。有一个缺点,没有中文界面,但影响不大。

  4. 自从上篇口水大战以后,我结识了hippoedit,它才是真正值得伴我左右的编辑器,我用过很多编辑器,什么emeditor,editplus,notepad++,NoteXPad,pspad,rj texted,scite,apteditor,programer’s editor等等都被我踢下场去.功能上基本上它都有了,最主要的是语法高亮和正则。不要说emeditor了,同一条正则规则,同一个文档,只是编辑器不同,但emeditor败下阵来。这么多的编辑器中,能找到真正相伴适宜的编辑器可不容易呀。目前,hippoedit正房,editplus情人,notepad++三陪,notepad2丫头。

  5. 盗着Editplus用了很多年, 喜欢它的小巧快速和正则表达式, 自动完成很赞, FTP打开也很快速.
    但对工程的支持太弱, 且至今还没代码提示功能, 工作上已被UE取代, 生活中被VIM替换.

  6. 我主要写verilog的,貌似合用的editor很少,一直在找好用的,目前在用ue
    几个要求
    语法高亮,列模式,块折叠,最好能有vc那种对变量和模块进行列表显示的。

    遗憾的是一直没找到

  7. EmEditor在打开上G的文件的时候是最快的。
    另外EmEditor的内码检测和转换功能最为强大,特别是我这样经常处理中日英德法俄多种不同编码文档的人来说太方便了。

  8. 试过很多的编辑器,现在的不需要编程了,只需要一个很轻量很轻量的编辑器,打开速度够快,可以替代notepad的即可,目前感觉还是editplus最快哦,
    但是editplus收费的,不想用破解版的,
    所以…………
    有没有什么free的,小巧的,快速的东东推荐~~~

  9. 有一个关于editplus的问题想请教一下。
    在emeditor 中,我可以通过设置快捷键的方式来控制emeditor到底是新建一个标签页,还是新建一个窗口。换句话说,我可以开N个emeditor的窗体。
    这样的功能我想请问如何在editplus上实现。因为editplus在通常情况下都是在一个窗口里面加载N个标签。
    我试验过通过其他程序,调用editplus,可以实现多个窗口的功能,但是我想在editplus上实现这个功能,请问有什么办法么。最好是通过快捷键的方式。

发表回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据