最好用的编辑器:SciTE

最好用的编辑器 :SciTE


    学习 PHP 有一段日子了,最开始用DW,嫌太大,我的破电脑承受不了,可视化设计是很好,但是 代码 编 辑部分的功能不是很顺手,尤其是编写PHP代码。后来用一冲动改用Notepad,事实证明它就是编辑器中的废物,除了能编辑,什么都不能,放弃!用 Notepad写代码的人估计不是神就是疯子。于是去google,baidu搜啊搜,EditPlus,UltraEdit,Notepad2(这也是 一款不错的编辑器,完全可以替代Notepad),Notepad++, Zend (又大又慢),PHPDesigner,PHPCoder,DZ,PHPxxx,...,甚至VIM(据说很强大),寻寻觅觅,终于有一天让我找到了SciTE,它免费,它 开源 ,它小巧,它强大,一个字:趁手!
    不过对于一个从来没用过它的人来说,很难发现它的过人之处,修改和定制它的配置不亚于编写程序(全部是直接改配置文件,没有配置向导)!所以也许有人下载下来写了三行代码就Delete了,“什么玩意儿,太难用了!”。所以很少人用它来编写和调试代码。
    实在不忍心让这么好的编辑器埋没了,于是有了这篇文字,让大家了解它,配置它,使用它,最后爱上它。
    废话不多说,先来看一下SciTE的屏幕截图:
    1,无需安装,下载后解压缩即可运行,纯绿色,所有文件加起来大小不超过2M。完全可以放到U盘里。

    2,运行时截图。多文档打开,标签页,行号,书签,语法高亮 ,代码折叠,右侧的输出窗口,标签上的未保存提示,代码缩进线,括号匹配,智能缩进。这些都是作为一个代码编辑器必须有的功能,SciTE当然有。现在你可能还没有感觉到它有什么过人之处,不要着急,接着往下看。

    3,是的,自动完成 和函数提示。



   有点儿意思了吧,远不止这些。SciTE另外一个比较有意思的功能就是自定义缩略语,是什么呢?比如每次都输入<?PHP ?>是不是很烦,你可以把这段代码定义成缩略语,就叫php把,格式呢就像这样:
php=<?PHP\n\t//comment\n\t|\n?>
现在再输入php,再按ctrl+B,就会出现下面的内容:
<?PHP
    //comment
   
?>
光标会停在定义中"|"符号所在的位置。
    还有一个比较贴心的设计,就是之前输入过的单词(不一定是英文单词,应该是连续的字符),再次输入这个单词的前几个字符,就会出现如代码自动完成一样的一个列表,你可以选择想要的单词。对我这样打字比较慢的人来说简直太有用了!
    SciTE最大的有点就是超强的定制性,几乎所有的功能都可以用户自定义,下面就来说说它的一些配置。
    怎么图片都显示不出来?
    建议下载压缩包,不要下载安装包。包括主程序一个,动态库一个(没有这个DLL也可以正常运行),配置文件和语法文件(*.properties)N个,API文件(*.api)好像没有。
    本人英文不怎么样,先说说汉化的方法:
    下载简体中文的语言文件,改名为locale.properties,复制到SciTE文件目录中覆盖原来的文件,再运行程序就变成了中文界面,连提示也变了。
    然后开始真正配置你自己风格的SciTE:
    运行SciTE,选择菜单“选项-->打开Global Options文件”,打开的就是SciTE的全局配置文件,建议不要改动这个文件,以后再改动配置的时候以这个文件作为参考和对照。然后同样打开 “User Options文件”,空文件对不对,把Global Options文件中所有内容复制过来,意思是所有的全局配置都在User Options文件中改,User文件的配置会覆盖Global的配置。
下面的这段作用是运行时窗口大小位置以及一些外观,以#开头的是注释,很好理解吧。只说WIN平台下的配置,其他的平台同样,很多配置项是注释掉的,把行首的#去掉才可以起作用。
# Window sizes and visibility
if PLAT_WIN(windows平台)
    position.left=0(运行时窗口在桌面的坐标,最大化时不起作用)
    position.top=0(同上)
if PLAT_GTK
    position.left=5
    position.top=22
position.width=-1(窗口初始宽度,-1表示最大化)
position.height=-1(同上)
#position.tile=1
#full.screen.hides.menu=1(全屏时隐藏菜单栏,1=true,0=false)
#minimize.to.tray=1(最小化到托盘区,1=true,0=false)
split.vertical=1(窗口垂直分割,和输出窗口的分割)
#output.horizontal.size=200(水平模式
输出窗口大小
#output.vertical.size=60(垂直模式输出窗口大小)
#output.initial.hide=1(输出窗口默认隐藏)
#horizontal.scrollbar=0(水平滚动条不可见)
#horizontal.scroll.width=10000(水平滚动条最大滚动范围)
#output.horizontal.scrollbar=0(参考上面)
#output.horizontal.scroll.width=10000(参考上面)
#output.scroll=0(参考上面)
#error.select.line=1(编译错误定位到源代码)
#end.at.last.line=0
tabbar.visible=1(多文档标签栏可见)
#tabbar.hide.one=1(只有一个文档是隐藏标签栏)
#tabbar.multiline=1(多行显示标签栏)
toolbar.visible=1(工具栏可见)
#toolbar.detachable=1(可分割工具栏)
#toolbar.usestockicons=1(显示用户定制工具栏)
#menubar.detachable=1(可分割菜单栏)
#undo.redo.lazy=1(撤销,重做选项,具体效果不知道)
#statusbar.visible=1(状态栏可见)
#fileselector.width=800(打开文件对话框大小)
#fileselector.height=600(同上)
#magnification=-1(字体放大倍数)
#output.magnification=-1(同上)
   以下是编辑区外观设置:
# Sizes and visibility in edit pane
line.margin.visible=1(行号区的缩进)
line.margin.width=3+(行号显示的位数,3+表示默认3位数,不够再加)
margin.width=0(行号缩进的宽度,最好不缩进)
#fold.margin.width=16(代码折叠区的宽度)
#fold.margin.colour=#FF0000(折叠区颜色)
#fold.margin.highlight.colour=#0000FF(折叠符号颜色)
#blank.margin.left=4(编辑区左边空白宽度)
#blank.margin.right=4(同上)
buffered.draw=1(缓存载入和高亮,建议打开,可以提高速度,但是内存会占用多一点,这应该不是什么问题)
#two.phase.draw=0(作用同上)
use.palette=0(不清楚什么作用)
   接着看:
# Element styles
#view.eol=1(载入时定位到文档尾)
#control.char.symbol=.(???)
caret.period=500(光标闪烁频率,单位毫秒)
view.whitespace=0(显示空白符号)
view.indentation.whitespace=1(以空格和退格表示缩进)
view.indentation.guides=1(显示缩进线,写代码会很有用)
highlight.indentation.guides=1(高亮时同时高亮缩进线)
#caret.fore=#FF0000(光标颜色)
#caret.width=2(光标宽度)
#caret.line.back=#FFFED8(当前行背景色)
#caret.line.back.alpha=63(当前行背景透明度)
edge.column=200(列模式下列数)
edge.mode=0(列模式开关)
edge.colour=#C0DCC0(列模式颜色)
braces.check=1(???)
braces.sloppy=1(???)
#selection.fore=#006000(选中文字的晚色)
# DADADA used as background because it yields standard silver C0C0C0
# on low colour displays and a reasonable light grey on higher bit depths
selection.alpha=70(选中文字背景的透明度)
selection.back=#0000FF(选中部分的背景色)
#whitespace.fore=#FF0000(空格颜色)
#whitespace.back=#FFF0F0(空格背景色)
#error.marker.fore=#0000A0(错误处的颜色)
#error.marker.back=#DADAFF(错误处的背景色)
#bookmark.fore=#808000(书签颜色)
#bookmark.back=#FFFFA0(书签处背景色)
bookmark.alpha=70(书签背景色透明度)
find.mark=#FF0000(查找时,找到文本的颜色)
    是不是发现SciTE的定制性实在是太强了,它有好多很好的用户选项,比如单文档时不显示标签栏,全屏时隐藏菜单,更好的是你可以更改这些选项,这是其他 编辑器无法比的,大部分的选项都可以从字面的意思推断出来作用,所以一些不是很重要的配置就不再解释了,你也可以把蓝色的文字复制到User Options文件中,不过记得把括号中的字去掉。好了,接着看:
# Checking
are.you.sure=1(关闭时提示保存)
#are.you.sure.for.build=1(编译和运行时提示保存)
#save.all.for.build=1(编译时自动保存所有)
#quit.on.close.last=1(关闭最后一个文档是退出程序)
#load.on.activate=1(???)
#save.on.deactivate=1(???)
#are.you.sure.on.reload=1(重新载入文档时提示)
#reload.preserves.undo=1(重新载入时保护撤消列表)
#check.if.already.open=1(检查文档是否已经被打开)
default.file.ext=.cxx
#source.default.extensions=.h|.cxx|.bat
title.full.path=1(窗口标题显示文档的完整路径)
#title.show.buffers=1
#save.recent=1
#save.session=1
#open.dialog.in.file.directory=1
#strip.trailing.spaces=1(去掉行尾空格)
#ensure.final.line.end=1(去掉文档尾空行)
#ensure.consistent.line.ends=1
#save.deletes.first=1
buffers=10(最多打开的文档数,越多占内存越大)
#buffers.zorder.switching=1
#win95.death.delay=1000
#translation.missing=***
#read.only=1(只读方式打开)
#max.file.size=1(文档最大限制)
   缩进,换行,代码折叠:
# Indentation
tabsize=4(tab键缩进的字符数)
indent.size=4(缩进字符数)
use.tabs=1(使用tab键)
#indent.auto=1(自动缩进,就是自动保持前一行的缩进)
indent.automatic=1(智能缩进,和上面的区别就是有反缩进)
indent.opening=1(代码缩进,比如大括号回车自动缩进)
indent.closing=1(代码反缩进,同上)
#tab.indents=0(tab键缩进)
#backspace.unindents=0(退格键反缩进)

# Wrapping of long lines
#wrap=1(自动换行开关,写代码一般不要打开自动换行)
#wrap.style=2(换行的风格,没用过)
#cache.layout=3
#output.wrap=1(输出窗口自动换行)
#output.cache.layout=3
#wrap.visual.flags=3(自动换行处的标记符)
#wrap.visual.flags.location=3
#wrap.visual.startindent=4

# Folding
# enable folding, and show lines below when collapsed.
fold=1(代码折叠开关,建议打开)
fold.compact=1(折叠指示,建议打开)
fold.flags=16(折叠指示区宽度)
fold.symbols=3(折叠符号,1,2,3分别是+-,圆圈+-,正方形+-)
#fold.on.open=1(打开文档后默认全部折叠)
fold.comment=1(代码注释折叠)
fold.preprocessor=1(折叠预处理)
   今天先写照么多吧,To be continued...
    还没有写完,先附上下载地址吧:
   
http://www.scintilla.org/
    语言文件(有中文):
   
http://scintilla.sourceforge.net/SciTETranslation.html
    语法文件和API文件:
   
http://scintilla.sourceforge.net/SciTEExtras.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值