const doc = editor.getDoc()
方法:
文本操作
-
getValue([separator])
- 获取整个文档的内容。
separator
(可选):指定换行符,默认是"\n"
。- 示例:
var content = doc.getValue();
-
setValue(string)
- 设置整个文档的内容。
- 示例:
doc.setValue("function myScript() { return 100; }");
-
replaceRange(string, from [, to [, origin]])
- 用给定的字符串替换从
from
位置到to
位置的文本。 from
:起始位置对象,包含{line, ch}
。to
(可选):结束位置对象,包含{line, ch}
。- 示例:
doc.replaceRange("new text", {line: 0, ch: 0}, {line: 1, ch: 0});
- 用给定的字符串替换从
-
getRange(from, to [, separator])
- 获取从
from
位置到to
位置的文本。 - 示例:
var text = doc.getRange({line: 0, ch: 0}, {line: 1, ch: 0});
- 获取从
光标和选区
-
getCursor([start])
- 获取光标位置。如果有选区,返回选区的开始或结束位置。
start
(可选):true
返回选区开始位置,false
返回选区结束位置。- 示例:
var cursor = doc.getCursor();
-
setCursor(pos [, ch [, options]])
- 设置光标位置。
pos
:位置对象或行号。ch
(可选):字符位置。- 示例:
doc.setCursor({line: 2, ch: 4});
-
somethingSelected()
- 检查是否有选区。
- 示例:
var hasSelection = doc.somethingSelected();
-
getSelection([lineSep])
- 获取当前选区的文本。
lineSep
(可选):指定换行符。- 示例:
var selectedText = doc.getSelection();
-
replaceSelection(string [, collapse [, origin]])
- 用给定的字符串替换当前选区。
- 示例:
doc.replaceSelection("new text");
行操作
-
lineCount()
- 获取文档的总行数。
- 示例:
var count = doc.lineCount();
-
getLine(n)
- 获取指定行的文本。
n
:行号。- 示例:
var lineText = doc.getLine(2);
-
getLineHandle(n)
- 获取指定行的行句柄对象。
- 示例:
var handle = doc.getLineHandle(2);
-
lineAtHeight(height [, mode])
- 获取在给定高度的行号。
- 示例:
var lineNumber = doc.lineAtHeight(100);
标记和装饰
-
markText(from, to, options)
- 标记文本范围,返回一个标记对象。
- 示例:
var marker = doc.markText({line: 0, ch: 0}, {line: 1, ch: 0}, {className: "styled-text"});
-
setBookmark(pos, options)
- 在指定位置设置书签,返回一个书签对象。
- 示例:
var bookmark = doc.setBookmark({line: 2, ch: 4});
-
findMarks(from, to)
- 查找在指定范围内的所有标记。
- 示例:
var marks = doc.findMarks({line: 0, ch: 0}, {line: 1, ch: 0});
-
findMarksAt(pos)
- 查找在指定位置的所有标记。
- 示例:
var marks = doc.findMarksAt({line: 2, ch: 4});
文档管理
-
eachLine([start, [end,]] op)
- 对文档中的每一行调用指定的函数。
- 示例:
doc.eachLine(function(line) { console.log(line.text); });
-
getHistory()
- 获取文档的历史记录。
- 示例:
var history = doc.getHistory();
-
setHistory(history)
- 设置文档的历史记录。
- 示例:
doc.setHistory(history);
其他方法
-
undo()
- 撤销最近的更改。
- 示例:
doc.undo();
-
redo()
- 重做最近的撤销。
- 示例:
doc.redo();
-
clearHistory()
- 清除历史记录。
- 示例:
doc.clearHistory();