# Editor

The main entry point into the Ace functionality.

The `Editor` manages the `EditSession` (which manages `Document`s), as well as the `VirtualRenderer`, which draws everything to the screen.

Event sessions dealing with the mouse and keyboard are bubbled up from `Document` to the `Editor`, which decides what to do with them.

### Constructors

- - new Editor(VirtualRenderer renderer, EditSession session)

Creates a new `Editor` object.

Creates a new `Editor` object.

#### Arguments

renderer | VirtualRenderer | Required. Associated `VirtualRenderer` that draws everything
session | EditSession | Required. The `EditSession` to refer to

### Events

- - Editor.on("blur", function())

Emitted once the editor has been blurred.

Emitted once the editor has been blurred.

- - Editor.on("change", function(Object e))

Emitted whenever the document is changed.

Emitted whenever the document is changed.

#### Arguments

e | Object | Required. Contains a single property, `data`, which has the delta of changes

- - Editor.on("changeSelectionStyle", function(Object data))

Emitted when the selection style changes, via `Editor.setSelectionStyle()`.

Emitted when the selection style changes, via `Editor.setSelectionStyle()`.

#### Arguments

data | Object | Required. Contains one property, `data`, which indicates the new selection style

- - Editor.on("changeSession", function(Object e))

Emitted whenever the `EditSession` changes.

Emitted whenever the `EditSession` changes.

#### Arguments

e | Object | Required. An object with two properties, `oldSession` and `session`, that represent the old and new `EditSession`s.

- - Editor.on("copy", function(String text))

Emitted when text is copied.

Emitted when text is copied.

#### Arguments

text | String | Required. The copied text

- - Editor.on("focus", function())

Emitted once the editor comes into focus.

Emitted once the editor comes into focus.

- - Editor.on("paste", function(Object e))

Emitted when text is pasted.

Emitted when text is pasted.

#### Arguments

e | Object | Required. An object which contains one property, `text`, that represents the text to be pasted. Editing this property will alter the text that is pasted.

### Methods

- - Editor.addSelectionMarker(Range orientedRange)
  - - Range

Adds the selection and cursor.

Adds the selection and cursor.

#### Arguments

orientedRange | Range | Required. A range containing a cursor

- - Editor.alignCursors()

Aligns the cursors or selected text.

Aligns the cursors or selected text.

- - Editor.blockOutdent()

Outdents the current line.

Outdents the current line.

- - Editor.blur()

Blurs the current `textInput`.

Blurs the current `textInput`.

- - Editor.centerSelection()

Attempts to center the current selection on the screen.

Attempts to center the current selection on the screen.

- - Editor.clearSelection()

Empties the selection (by de-selecting it). This function also emits the `'changeSelection'` event.

Empties the selection (by de-selecting it). This function also emits the `'changeSelection'` event.

- - Editor.copyLinesDown()
  - - Number

Copies all the selected lines down one row.

Copies all the selected lines down one row.

- - Editor.copyLinesUp()
  - - Number

Copies all the selected lines up one row.

Copies all the selected lines up one row.

- - Editor.destroy()

Cleans up the entire editor.

Cleans up the entire editor.

- - Editor.duplicateSelection()
  - Undocumented

- - Editor.execCommand()
  - Undocumented

- - Editor.exitMultiSelectMode()

Removes all the selections except the last added one.

Removes all the selections except the last added one.

- - Editor.find(String needle, Object options, Boolean animate)

Attempts to find `needle` within the document. For more information on `options`, see `Search`.

Attempts to find `needle` within the document. For more information on `options`, see `Search`.

#### Arguments

needle | String | Required. The text to search for (optional)
options | Object | Required. An object defining various search properties
animate | Boolean | Required. If `true` animate scrolling

- - Editor.findAll(String The, Object The, Boolean keeps)
  - - Number

Finds and selects all the occurences of `needle`.

Finds and selects all the occurences of `needle`.

#### Arguments

The | String | Required. text to find
The | Object | Required. search options
keeps | Boolean | Required.

- - Editor.findNext(Object options, Boolean animate)

Performs another search for `needle` in the document. For more information on `options`, see `Search`.

Performs another search for `needle` in the document. For more information on `options`, see `Search`.

#### Arguments

options | Object | Required. search options
animate | Boolean | Required. If `true` animate scrolling

- - Editor.findPrevious(Object options, Boolean animate)

Performs a search for `needle` backwards. For more information on `options`, see `Search`.

Performs a search for `needle` backwards. For more information on `options`, see `Search`.

#### Arguments

options | Object | Required. search options
animate | Boolean | Required. If `true` animate scrolling

- - Editor.focus()

Brings the current `textInput` into focus.

Brings the current `textInput` into focus.

- - Editor.forEachSelection(String cmd, String args)

Executes a command for each selection range.

Executes a command for each selection range.

#### Arguments

cmd | String | Required. The command to execute
args | String | Required. Any arguments for the command

- - Editor.getAnimatedScroll()
  - Undocumented

- - Editor.getBehavioursEnabled()
  - - Boolean

Returns `true` if the behaviors are currently enabled. "Behaviors" in this case is the auto-pairing of special characters, like quotation marks, parenthesis, or brackets.

Returns `true` if the behaviors are currently enabled. "Behaviors" in this case is the auto-pairing of special characters, like quotation marks, parenthesis, or brackets.

- - Editor.getCopyText()
  - - String

Returns the string of text currently highlighted.

Returns the string of text currently highlighted.

- - Editor.getCursorPosition()
  - - Object

Gets the current position of the cursor.

Gets the current position of the cursor.

- - Editor.getCursorPositionScreen()
  - - Number

Returns the screen position of the cursor.

Returns the screen position of the cursor.

- - Editor.getDisplayIndentGuides()
  - Undocumented

- - Editor.getDragDelay()
  - - Number

Returns the current mouse drag delay.

Returns the current mouse drag delay.

- - Editor.getFadeFoldWidgets()
  - Undocumented

- - Editor.getFirstVisibleRow()
  - - Number

Returns the index of the first visible row.

Returns the index of the first visible row.

- - Editor.getHighlightActiveLine()
  - - Boolean

Returns `true` if current lines are always highlighted.

Returns `true` if current lines are always highlighted.

- - Editor.getHighlightGutterLine()
  - Undocumented

- - Editor.getHighlightSelectedWord()
  - - Boolean

Returns `true` if currently highlighted words are to be highlighted.

Returns `true` if currently highlighted words are to be highlighted.

- - Editor.getKeyboardHandler()
  - - String

Returns the keyboard handler, such as "vim" or "windows".

Returns the keyboard handler, such as "vim" or "windows".

- - Editor.getLastSearchOptions()
  - - Object

Returns an object containing all the search options. For more information on `options`, see `Search`.

Returns an object containing all the search options. For more information on `options`, see `Search`.

- - Editor.getLastVisibleRow()
  - - Number

Returns the index of the last visible row.

Returns the index of the last visible row.

- - Editor.getNumberAt(Object row, Object column)
  - - Number

Works like `EditSession.getTokenAt()`, except it returns a number.

Works like `EditSession.getTokenAt()`, except it returns a number.

#### Arguments

row | Object | Required.
column | Object | Required.

- - Editor.getOverwrite()
  - - Boolean

Returns `true` if overwrites are enabled; `false` otherwise.

Returns `true` if overwrites are enabled; `false` otherwise.

- - Editor.getPrintMarginColumn()
  - - Number

Returns the column number of where the print margin is.

Returns the column number of where the print margin is.

- - Editor.getReadOnly()
  - - Boolean

Returns `true` if the editor is set to read-only mode.

Returns `true` if the editor is set to read-only mode.

- - Editor.getScrollSpeed()
  - - Number

Returns the value indicating how fast the mouse scroll speed is (in milliseconds).

Returns the value indicating how fast the mouse scroll speed is (in milliseconds).

- - Editor.getSelection()
  - - String

Returns the currently highlighted selection.

Returns the currently highlighted selection.

- - Editor.getSelectionRange()
  - - Range

Returns the `Range` for the selected text.

Returns the `Range` for the selected text.

- - Editor.getSelectionStyle()
  - - String

Returns the current selection style.

Returns the current selection style.

- - Editor.getSession()
  - - EditSession

Returns the current session being used.

Returns the current session being used.

- - Editor.getShowFoldWidgets()
  - - Boolean

Returns `true` if the fold widgets are shown.

Returns `true` if the fold widgets are shown.

- - Editor.getShowInvisibles()
  - - Boolean

Returns `true` if invisible characters are being shown.

Returns `true` if invisible characters are being shown.

- - Editor.getShowPrintMargin()
  - - Boolean

Returns `true` if the print margin is being shown.

Returns `true` if the print margin is being shown.

- - Editor.getTheme()
  - - String

Returns the path of the current theme.

Returns the path of the current theme.

- - Editor.getValue()
  - - String

Returns the current session's content.

Returns the current session's content.

- - Editor.getWrapBehavioursEnabled()

Returns `true` if the wrapping behaviors are currently enabled.

Returns `true` if the wrapping behaviors are currently enabled.

- - Editor.gotoLine(Number lineNumber, Number column, Boolean animate)

Moves the cursor to the specified line number, and also into the indiciated column.

Moves the cursor to the specified line number, and also into the indiciated column.

#### Arguments

lineNumber | Number | Required. The line number to go to
column | Number | Required. A column number to go to
animate | Boolean | Required. If `true` animates scolling

- - Editor.gotoPageDown()

Shifts the document to wherever "page down" is, as well as moving the cursor position.

Shifts the document to wherever "page down" is, as well as moving the cursor position.

- - Editor.gotoPageUp()

Shifts the document to wherever "page up" is, as well as moving the cursor position.

Shifts the document to wherever "page up" is, as well as moving the cursor position.

- - Editor.indent()

Indents the current line.

Indents the current line.

- - Editor.insert(String text)

Inserts `text` into wherever the cursor is pointing.

Inserts `text` into wherever the cursor is pointing.

#### Arguments

text | String | Required. The new text to add

- - Editor.isFocused()
  - - Boolean

Returns `true` if the current `textInput` is in focus.

Returns `true` if the current `textInput` is in focus.

- - Editor.isRowFullyVisible(Number row)
  - - Boolean

Indicates if the entire row is currently visible on the screen.

Indicates if the entire row is currently visible on the screen.

#### Arguments

row | Number | Required. The row to check

- - Editor.isRowVisible(Number row)
  - - Boolean

Indicates if the row is currently visible on the screen.

Indicates if the row is currently visible on the screen.

#### Arguments

row | Number | Required. The row to check

- - Editor.jumpToMatching(Object select)

Moves the cursor's row and column to the next matching bracket.

Moves the cursor's row and column to the next matching bracket.

#### Arguments

select | Object | Required.

- - Editor.modifyNumber(Number amount)

If the character before the cursor is a number, this functions changes its value by `amount`.

If the character before the cursor is a number, this functions changes its value by `amount`.

#### Arguments

amount | Number | Required. The value to change the numeral by (can be negative to decrease value)

- - Editor.moveCursorTo(Number row, Number column)

Moves the cursor to the specified row and column. Note that this does not de-select the current selection.

Moves the cursor to the specified row and column. Note that this does not de-select the current selection.

#### Arguments

row | Number | Required. The new row number
column | Number | Required. The new column number

- - Editor.moveCursorToPosition(Object pos)

Moves the cursor to the position indicated by `pos.row` and `pos.column`.

Moves the cursor to the position indicated by `pos.row` and `pos.column`.

#### Arguments

pos | Object | Required. An object with two properties, row and column

- - Editor.moveLinesDown()
  - - Number

Shifts all the selected lines down one row.

Shifts all the selected lines down one row.

- - Editor.moveLinesUp()
  - - Number

Shifts all the selected lines up one row.

Shifts all the selected lines up one row.

- - Editor.moveText()
  - Undocumented

- - Editor.navigateDown(Number times)

Moves the cursor down in the document the specified number of times. Note that this does de-select the current selection.

Moves the cursor down in the document the specified number of times. Note that this does de-select the current selection.

#### Arguments

times | Number | Required. The number of times to change navigation

- - Editor.navigateFileEnd()

Moves the cursor to the end of the current file. Note that this does de-select the current selection.

Moves the cursor to the end of the current file. Note that this does de-select the current selection.

- - Editor.navigateFileStart()

Moves the cursor to the start of the current file. Note that this does de-select the current selection.

Moves the cursor to the start of the current file. Note that this does de-select the current selection.

- - Editor.navigateLeft(Number times)

Moves the cursor left in the document the specified number of times. Note that this does de-select the current selection.

Moves the cursor left in the document the specified number of times. Note that this does de-select the current selection.

#### Arguments

times | Number | Required. The number of times to change navigation

- - Editor.navigateLineEnd()

Moves the cursor to the end of the current line. Note that this does de-select the current selection.

Moves the cursor to the end of the current line. Note that this does de-select the current selection.

- - Editor.navigateLineStart()

Moves the cursor to the start of the current line. Note that this does de-select the current selection.

Moves the cursor to the start of the current line. Note that this does de-select the current selection.

- - Editor.navigateRight(Number times)

Moves the cursor right in the document the specified number of times. Note that this does de-select the current selection.

Moves the cursor right in the document the specified number of times. Note that this does de-select the current selection.

#### Arguments

times | Number | Required. The number of times to change navigation

- - Editor.navigateTo(Number row, Number column)

Moves the cursor to the specified row and column. Note that this does de-select the current selection.

Moves the cursor to the specified row and column. Note that this does de-select the current selection.

#### Arguments

row | Number | Required. The new row number
column | Number | Required. The new column number

- - Editor.navigateUp(Number times)

Moves the cursor up in the document the specified number of times. Note that this does de-select the current selection.

Moves the cursor up in the document the specified number of times. Note that this does de-select the current selection.

#### Arguments

times | Number | Required. The number of times to change navigation

- - Editor.navigateWordLeft()

Moves the cursor to the word immediately to the left of the current position. Note that this does de-select the current selection.

Moves the cursor to the word immediately to the left of the current position. Note that this does de-select the current selection.

- - Editor.navigateWordRight()

Moves the cursor to the word immediately to the right of the current position. Note that this does de-select the current selection.

Moves the cursor to the word immediately to the right of the current position. Note that this does de-select the current selection.

- - Editor.onBlur()
  - Undocumented

- - Editor.onChangeAnnotation()
  - Undocumented

- - Editor.onChangeBackMarker()
  - Undocumented

- - Editor.onChangeBreakpoint()
  - Undocumented

- - Editor.onChangeFold()
  - Undocumented

- - Editor.onChangeFrontMarker()
  - Undocumented

- - Editor.onChangeMode()
  - Undocumented

- - Editor.onChangeWrapLimit()
  - Undocumented

- - Editor.onChangeWrapMode()
  - Undocumented

- - Editor.onCommandKey()
  - Undocumented

- - Editor.onCompositionEnd()
  - Undocumented

- - Editor.onCompositionStart()
  - Undocumented

- - Editor.onCompositionUpdate()
  - Undocumented

- - Editor.onCopy()

Called whenever a text "copy" happens.

Called whenever a text "copy" happens.

- - Editor.onCursorChange()

Emitted when the selection changes.

Emitted when the selection changes.

- - Editor.onCut()

Called whenever a text "cut" happens.

Called whenever a text "cut" happens.

- - Editor.onDocumentChange()
  - Undocumented

- - Editor.onFocus()
  - Undocumented

- - Editor.onPaste(String text)

Called whenever a text "paste" happens.

Called whenever a text "paste" happens.

#### Arguments

text | String | Required. The pasted text

- - Editor.onScrollLeftChange()
  - Undocumented

- - Editor.onScrollTopChange()
  - Undocumented

- - Editor.onSelectionChange()
  - Undocumented

- - Editor.onTextInput()
  - Undocumented

- - Editor.onTokenizerUpdate()
  - Undocumented

- - Editor.redo()

Perform a redo operation on the document, reimplementing the last change.

Perform a redo operation on the document, reimplementing the last change.

- - Editor.remove(String dir)

Removes words of text from the editor. A "word" is defined as a string of characters bookended by whitespace.

Removes words of text from the editor. A "word" is defined as a string of characters bookended by whitespace.

#### Arguments

dir | String | Required. The direction of the deletion to occur, either "left" or "right"

- - Editor.removeLines()

Removes all the lines in the current selection

Removes all the lines in the current selection

- - Editor.removeSelectionMarker(Range The)

Removes the selection marker.

Removes the selection marker.

#### Arguments

The | Range | Required. selection range added with `addSelectionMarker()`.

- - Editor.removeToLineEnd()

Removes all the words to the right of the current selection, until the end of the line.

Removes all the words to the right of the current selection, until the end of the line.

- - Editor.removeToLineStart()

Removes all the words to the left of the current selection, until the start of the line.

Removes all the words to the left of the current selection, until the start of the line.

- - Editor.removeWordLeft()

Removes the word directly to the left of the current selection.

Removes the word directly to the left of the current selection.

- - Editor.removeWordRight()

Removes the word directly to the right of the current selection.

Removes the word directly to the right of the current selection.

- - Editor.replace(String replacement, Object options)

Replaces the first occurance of `options.needle` with the value in `replacement`.

Replaces the first occurance of `options.needle` with the value in `replacement`.

#### Arguments

replacement | String | Required. The text to replace with
options | Object | Required. The `Search` options to use

- - Editor.replaceAll(String replacement, Object options)

Replaces all occurances of `options.needle` with the value in `replacement`.

Replaces all occurances of `options.needle` with the value in `replacement`.

#### Arguments

replacement | String | Required. The text to replace with
options | Object | Required. The `Search` options to use

- - Editor.resize(Boolean force)

Triggers a resize of the editor.

Triggers a resize of the editor.

#### Arguments

force | Boolean | Required. If `true`, recomputes the size, even if the height and width haven't changed

- - Editor.revealRange()
  - Undocumented

- - Editor.scrollPageDown()

Scrolls the document to wherever "page down" is, without changing the cursor position.

Scrolls the document to wherever "page down" is, without changing the cursor position.

- - Editor.scrollPageUp()

Scrolls the document to wherever "page up" is, without changing the cursor position.

Scrolls the document to wherever "page up" is, without changing the cursor position.

- - Editor.scrollToLine(Number line, Boolean center, Boolean animate, Function callback)

Scrolls to a line. If `center` is `true`, it puts the line in middle of screen (or attempts to).

Scrolls to a line. If `center` is `true`, it puts the line in middle of screen (or attempts to).

#### Arguments

line | Number | Required. The line to scroll to
center | Boolean | Required. If `true`
animate | Boolean | Required. If `true` animates scrolling
callback | Function | Required. Function to be called when the animation has finished

- - Editor.scrollToRow(Object row)

Moves the editor to the specified row.

Moves the editor to the specified row.

#### Arguments

row | Object | Required.

- - Editor.selectAll()

Selects all the text in editor.

Selects all the text in editor.

- - Editor.selectMore(Number dir, Boolean skip)

Finds the next occurence of text in an active selection and adds it to the selections.

Finds the next occurence of text in an active selection and adds it to the selections.

#### Arguments

dir | Number | Required. The direction of lines to select: -1 for up, 1 for down
skip | Boolean | Required. If `true`, removes the active selection range

- - Editor.selectMoreLines(Number dir, Boolean skip)

Adds a cursor above or below the active cursor.

Adds a cursor above or below the active cursor.

#### Arguments

dir | Number | Required. The direction of lines to select: -1 for up, 1 for down
skip | Boolean | Required. If `true`, removes the active selection range

- - Editor.selectPageDown()

Selects the text from the current position of the document until where a "page down" finishes.

Selects the text from the current position of the document until where a "page down" finishes.

- - Editor.selectPageUp()

Selects the text from the current position of the document until where a "page up" finishes.

Selects the text from the current position of the document until where a "page up" finishes.

- - Editor.setAnimatedScroll()
  - Undocumented

- - Editor.setBehavioursEnabled(Boolean enabled)

Specifies whether to use behaviors or not. "Behaviors" in this case is the auto-pairing of special characters, like quotation marks, parenthesis, or brackets.

Specifies whether to use behaviors or not. "Behaviors" in this case is the auto-pairing of special characters, like quotation marks, parenthesis, or brackets.

#### Arguments

enabled | Boolean | Required. Enables or disables behaviors

- - Editor.setDisplayIndentGuides()
  - Undocumented

- - Editor.setDragDelay(Number dragDelay)

Sets the delay (in milliseconds) of the mouse drag.

Sets the delay (in milliseconds) of the mouse drag.

#### Arguments

dragDelay | Number | Required. A value indicating the new delay

- - Editor.setFadeFoldWidgets()
  - Undocumented

- - Editor.setFontSize(Number size)

Set a new font size (in pixels) for the editor text.

Set a new font size (in pixels) for the editor text.

#### Arguments

size | Number | Required. A font size

- - Editor.setHighlightActiveLine(Boolean shouldHighlight)

Determines whether or not the current line should be highlighted.

Determines whether or not the current line should be highlighted.

#### Arguments

shouldHighlight | Boolean | Required. Set to `true` to highlight the current line

- - Editor.setHighlightGutterLine()
  - Undocumented

- - Editor.setHighlightSelectedWord(Boolean shouldHighlight)

Determines if the currently selected word should be highlighted.

Determines if the currently selected word should be highlighted.

#### Arguments

shouldHighlight | Boolean | Required. Set to `true` to highlight the currently selected word

- - Editor.setKeyboardHandler(String keyboardHandler)

Sets a new key handler, such as "vim" or "windows".

Sets a new key handler, such as "vim" or "windows".

#### Arguments

keyboardHandler | String | Required. The new key handler

- - Editor.setOverwrite(Boolean overwrite)

Pass in `true` to enable overwrites in your session, or `false` to disable. If overwrites is enabled, any text you enter will type over any text after it. If the value of `overwrite` changes, this function also emites the `changeOverwrite` event.

Pass in `true` to enable overwrites in your session, or `false` to disable. If overwrites is enabled, any text you enter will type over any text after it. If the value of `overwrite` changes, this function also emites the `changeOverwrite` event.

#### Arguments

overwrite | Boolean | Required. Defines wheter or not to set overwrites

- - Editor.setPrintMarginColumn(Number showPrintMargin)

Sets the column defining where the print margin should be.

Sets the column defining where the print margin should be.

#### Arguments

showPrintMargin | Number | Required. Specifies the new print margin

- - Editor.setReadOnly(Boolean readOnly)

If `readOnly` is true, then the editor is set to read-only mode, and none of the content can change.

If `readOnly` is true, then the editor is set to read-only mode, and none of the content can change.

#### Arguments

readOnly | Boolean | Required. Specifies whether the editor can be modified or not

- - Editor.setScrollSpeed(Number speed)

Sets how fast the mouse scrolling should do.

Sets how fast the mouse scrolling should do.

#### Arguments

speed | Number | Required. A value indicating the new speed (in milliseconds)

- - Editor.setSelectionStyle(String style)

Indicates how selections should occur.

Indicates how selections should occur.

By default, selections are set to "line". There are no other styles at the moment, although this code change in the future.

This function also emits the `'changeSelectionStyle'` event.

#### Arguments

style | String | Required. The new selection style

- - Editor.setSession(EditSession session)

Sets a new editsession to use. This method also emits the `'changeSession'` event.

Sets a new editsession to use. This method also emits the `'changeSession'` event.

#### Arguments

session | EditSession | Required. The new session to use

- - Editor.setShowFoldWidgets(Boolean show)

Indicates whether the fold widgets are shown or not.

Indicates whether the fold widgets are shown or not.

#### Arguments

show | Boolean | Required. Specifies whether the fold widgets are shown

- - Editor.setShowInvisibles(Boolean showInvisibles)

If `showInvisibles` is set to `true`, invisible characters—like spaces or new lines—are show in the editor.

If `showInvisibles` is set to `true`, invisible characters—like spaces or new lines—are show in the editor.

#### Arguments

showInvisibles | Boolean | Required. Specifies whether or not to show invisible characters

- - Editor.setShowPrintMargin(Boolean showPrintMargin)

If `showPrintMargin` is set to `true`, the print margin is shown in the editor.

If `showPrintMargin` is set to `true`, the print margin is shown in the editor.

#### Arguments

showPrintMargin | Boolean | Required. Specifies whether or not to show the print margin

- - Editor.setStyle(String style)

Adds a new class, `style`, to the editor.

Adds a new class, `style`, to the editor.

#### Arguments

style | String | Required. A class name

- - Editor.setTheme(String theme)

Sets a new theme for the editor. `theme` should exist, and be a directory path, like `ace/theme/textmate`.

Sets a new theme for the editor. `theme` should exist, and be a directory path, like `ace/theme/textmate`.

#### Arguments

theme | String | Required. The path to a theme

- - Editor.setValue(String val, Number cursorPos)
  - - String

Sets the current document to `val`.

Sets the current document to `val`.

#### Arguments

val | String | Required. The new value to set for the document
cursorPos | Number | Required. Where to set the new value. `undefined` or 0 is selectAll, -1 is at the document start, and 1 is at the end

- - Editor.setWrapBehavioursEnabled(Boolean enabled)

Specifies whether to use wrapping behaviors or not, i.e. automatically wrapping the selection with characters such as brackets when such a character is typed in.

Specifies whether to use wrapping behaviors or not, i.e. automatically wrapping the selection with characters such as brackets when such a character is typed in.

#### Arguments

enabled | Boolean | Required. Enables or disables wrapping behaviors

- - Editor.sortLines()
  - Undocumented

- - Editor.splitLine()

Splits the line at the current selection (by inserting an `'\n'`).

Splits the line at the current selection (by inserting an `'\n'`).

- - Editor.toggleCommentLines()

Given the currently selected range, this function either comments all the lines, or uncomments all of them.

Given the currently selected range, this function either comments all the lines, or uncomments all of them.

- - Editor.toggleOverwrite()

Sets the value of overwrite to the opposite of whatever it currently is.

Sets the value of overwrite to the opposite of whatever it currently is.

- - Editor.toLowerCase()

Converts the current selection entirely into lowercase.

Converts the current selection entirely into lowercase.

- - Editor.toUpperCase()

Converts the current selection entirely into uppercase.

Converts the current selection entirely into uppercase.

- - Editor.transposeLetters()

Transposes current line.

Transposes current line.

- - Editor.transposeSelections(Number dir)

Transposes the selected ranges.

Transposes the selected ranges.

#### Arguments

dir | Number | Required. The direction to rotate selections

- - Editor.undo()

Perform an undo operation on the document, reverting the last change.

Perform an undo operation on the document, reverting the last change.

- - Editor.unsetStyle(Object style)

Removes the class `style` from the editor.

Removes the class `style` from the editor.

#### Arguments

style | Object | Required.

- - Editor.updateSelectionMarkers()

Updates the cursor and marker layers.

Updates the cursor and marker layers.