From 5cef77e52cc19d826f6d6aae3f9e0056942a057c Mon Sep 17 00:00:00 2001 From: Nathan Sobo Date: Mon, 24 Feb 2014 15:36:58 -0800 Subject: [PATCH] Clean up Editor class overview --- src/editor.coffee | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/editor.coffee b/src/editor.coffee index 97f6cb31b..7ba3e1bc2 100644 --- a/src/editor.coffee +++ b/src/editor.coffee @@ -10,20 +10,19 @@ Cursor = require './cursor' Selection = require './selection' TextMateScopeSelector = require('first-mate').ScopeSelector -# Public: The core model of Atom. +# Public: Represents all essential editing state for a single {TextBuffer}, +# including cursor and selection positions, folds, and soft wraps. If you're +# manipulating the state of an {Editor}, use this class. If you're interested in +# the visual appearance of editors, use {EditorView} instead. # -# An {Editor} represents a unique view of each document, with its own -# {Cursor}s and scroll position. +# A single {TextBuffer} can belong to multiple {Editor}s. For example, if the +# same file is open in two different panes, Atom creates a separate {Editor} for +# each pane. If the buffer is manipulated the changes are reflected in both +# editors, but each maintains its own cursor position, folded lines, etc. # -# For instance if a user creates a split, Atom creates a second {Editor} -# but both {Editor}s interact with the same buffer underlying buffer. So -# if you type in either buffer it immediately appears in both but if you scroll -# in one it doesn't scroll the other. -# -# Almost all packages will interact primiarily with this class as it provides -# access to objects you'll most commonly interact with. To access it you'll -# want to register a callback on {WorkspaceView} which will be fired once for every -# existing {Editor} as well as any future {Editor}s. +# The easiest way to gain access to {Editor} objects is by registering a +# callback on the `atom.workspace` global to be called with all current and +# future {Editor}s: # # ## Example # ```coffeescript