ACEEditor常⽤Api
ACE 是⼀个开源的、独⽴的、基于浏览器的代码编辑器,可以嵌⼊到任何web页⾯或JavaScript应⽤程序中。ACE⽀持超过60种语⾔语法⾼亮,并能够处理代码多达400万⾏的⼤型⽂档。ACE开发团队称,ACE在性能和功能上可以媲美本地代码编辑器(如Sublime Text、TextMate和Vim等)。
ACE是Mozilla Skywriter(以前称为Bespin)项⽬的继任者,并作为Cloud9的主要在线编辑器。
以下是它的详细特性:
可以对60多种语⾔进⾏语法着⾊(可以导⼊TextMate/Sublime/.tmlanguage ⽂件)
20多种主题(可以导⼊TextMate/Sublime/.tmtheme⽂件)
⾃动缩进,减少缩进
⼀个可选的命令⾏
处理巨⼤的⽂件,可以处理4,000,000⾏代码
完全⾃定义的键绑定,包括V正则表达式搜索和替换
⾼亮匹配括号
软标签和真正的标签之间切换
显⽰隐藏的字符
⽤⿏标拖放⽂本
换⾏
代码折叠
多个光标和选择
实时语法检查器(⽀持 JavaScript/CoffeeScript/CSS/XQuery)
剪切,复制和粘贴功能IM和Emacs模式
项⽬地址:
1. git clone git://github/ajaxorg/ace.git
相关项⽬:
使⽤引导:
1、引⼊
1. var ace = require("lib/ace");
2、设置主题
1. editor.setTheme("ace/theme/twilight");
3、设置程序语⾔模式
1. Session().setMode("ace/mode/javascript");
4、⼀般常⽤操作
设置、获取内容:
1. editor.setValue("the new text here"); // or session.setValue
2. Value(); // Value
获取选择内容:
1. SelectionRange());
在光标处插⼊:
1. editor.insert("Something cool");
获取光标所在⾏或列:
1. Cursor();
跳转到⾏:
1. Line(lineNumber);
获取总⾏数:
1. Length();
设置默认制表符的⼤⼩:
1. Session().setTabSize(4);
使⽤软标签:
1. Session().setUseSoftTabs(true);
设置字体⼤⼩,这个其实不算API:
1. ElementById('editor').style.fontSize='12px';设置代码折叠:
1. Session().setUseWrapMode(true);
设置⾼亮:
1. editor.setHighlightActiveLine(false);
设置打印边距可见度:
1. editor.setShowPrintMargin(false);
设置编辑器只读:
1. editor.setReadOnly(true); // false to make it editable
5、触发尺⼨缩放
编辑器默认⾃适应⼤⼩,如果要程序控制resize,使⽤如下⽅法: 1. size();
6、搜索
1. editor.find('needle',{
小程序图文editor2. backwards: false,
3. wrap: false,
4. caseSensitive: false,
5. wholeWord: false,
6. regExp: false
7. });
8. editor.findNext();
9. editor.findPrevious();
下列选项可⽤于您的搜索参数:
needle: 要查的字符串或正则表达式
backwards: 是否反向搜索,默认为false
wrap: 搜索到⽂档底部是否回到顶端,默认为false caseSensitive: 是否匹配⼤⼩写搜索,默认为false wholeWord: 是否匹配整个单词搜素,默认为false
range: 搜索范围,要搜素整个⽂档则设置为空
regExp: 搜索内容是否是正则表达式,默认为false
start: 搜索起始位置
skipCurrent: 是否不搜索当前⾏,默认为false
替换单个字符:
1. editor.find('foo');
2. place('bar');
替换多个字符:
1. placeAll('bar');
7、事件监听
监听改变事件:
1. Session().on('change', function(e) {
2. // e.type, etc
3. });
监听选择事件:
1. Session().('changeSelection', function(e) {
2. });
监听光标移动:
1. Session().('changeCursor', function(e) {
2. });
8、添加新命令、绑定按键
要指定键绑定到⼀个⾃定义函数:
1. editormands.addCommand({
2. name: 'myCommand',
3. bindKey: {win: 'Ctrl-M', mac: 'Command-M'},
4. exec: function(editor) {
5. //...
6. },
7. readOnly: true // 如果不需要使⽤只读模式,这⾥设置false
8. });

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。