Basics of working with the editor =========== Classes for working with editor, e.g. to manipulate the caret, get an access to a text selection, or modify the text, currently represented in the editor, are located in [editor-ui-api] (https://github.com/JetBrains/intellij-community/tree/master/platform/editor-ui-api) package. Note, that this part of the API allows to operate only with text. If you need to access PSI please see [PSI Cookbook] (https://confluence.jetbrains.com/display/IDEADEV/PSI+Cookbook) section. ----------- #Editor An instance on IntelliJ IDEA editor is represented by an interface [Editor.java] (https://github.com/JetBrains/intellij-community/blob/master/platform/editor-ui-api/src/com/intellij/openapi/editor/Editor.java), and it's implementation can be found in a class [EditorImpl.java] (https://github.com/JetBrains/intellij-community/blob/master/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorImpl.java). ##Get an instance of the active editor A reference to an instance of the editor can be obtained by calling CommonDataKeys.EDITOR To access the editor instance directly the following ways can be used: * If [DataContext] (https://github.com/JetBrains/intellij-community/blob/master/platform/editor-ui-api/src/com/intellij/openapi/actionSystem/DataContext.java) object is available ```final Editor editor = CommonDataKeys.EDITOR.getData(context); ``` * If [ActionEvent] (https://github.com/JetBrains/intellij-community/blob/master/platform/editor-ui-api/src/com/intellij/openapi/actionSystem/AnActionEvent.java) object is available ```final Editor editor = actionEvent.getData(CommonDataKeys.EDITOR); ``` Please see [EditorIllustration.java] (https://github.com/JetBrains/intellij-sdk/blob/master/code_samples/editor_basics/src/org/jetbrains/plugins/editor/basics/EditorIllustration.java) for more details. ---------------- See also [CommonDataKeys.java] (https://github.com/JetBrains/intellij-community/blob/master/platform/editor-ui-api/src/com/intellij/openapi/actionSystem/CommonDataKeys.java), [DataKey.java] (https://github.com/JetBrains/intellij-community/blob/master/platform/editor-ui-api/src/com/intellij/openapi/actionSystem/DataKey.java)