From 1ef52910df3a560d24a1d92e6fe7621a751d6859 Mon Sep 17 00:00:00 2001
From: mitchell <70453897+667e-11@users.noreply.github.com>
Date: Thu, 8 Mar 2012 13:44:53 -0500
Subject: Moved Manual into `doc/` root directory.
---
doc/14_Appendix.md | 686 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 686 insertions(+)
create mode 100644 doc/14_Appendix.md
(limited to 'doc/14_Appendix.md')
diff --git a/doc/14_Appendix.md b/doc/14_Appendix.md
new file mode 100644
index 00000000..61ad842d
--- /dev/null
+++ b/doc/14_Appendix.md
@@ -0,0 +1,686 @@
+# Appendix
+
+## Key Bindings
+
+Linux / Win32 | Mac OSX | Command |
+--------------|---------|---------|
+**File** |||
+Ctrl+N |⌘N |New file
+Ctrl+O |⌘O |Open file
+Ctrl+Alt+O |^⌘O |Open recent file...
+Ctrl+Shift+O|⌘⇧O |Reload file
+Ctrl+S |⌘S |Save file
+Ctrl+Shift+S|⌘⇧S |Save file as..
+Ctrl+W |⌘W |Close file
+Ctrl+Shift+W|⌘⇧W |Close all files
+None |None|Load session...
+None |None|Load session...
+Alt+Q |⌘Q |Quit
+**Edit** |||
+Ctrl+Z
Alt+Backspace|⌘Z |Undo
+Ctrl+Y
Ctrl+Shift+Z |⌘⇧Z |Redo
+Ctrl+X
Shift+Del |⌘X
⇧⌦|Cut
+Ctrl+C
Ctrl+Ins |⌘C |Copy
+Ctrl+V
Shift+Ins |⌘V |Paste
+Ctrl+D |⌘D |Duplicate line
+Del |⌦
^D |Delete
+Alt+Del |^⌦ |Delete word
+Ctrl+A |⌘A |Select all
+Ctrl+M |^M |Match brace
+Ctrl+Enter |^⎋ |Complete word
+Ctrl+Alt+Shift+H |⌘⇧H |Highlight word
+Ctrl+/ |^/ |Toggle block comment
+Ctrl+T |^T |Transpose characters
+Ctrl+Shift+J |^J |Join lines
+Ctrl+Shift+M |^⇧M |Select to matching brace
+Ctrl+< |⌘< |Select between XML tags
+Ctrl+> |⌘> |Select in XML tag
+Ctrl+" |⌘" |Select in double quotes
+Ctrl+' |⌘' |Select in single quotes
+Ctrl+( |⌘( |Select in parentheses
+Ctrl+[ |⌘[ |Select in brackets
+Ctrl+{ |⌘{ |Select in braces
+Ctrl+Shift+D |⌘⇧D |Select word
+Ctrl+Shift+N |⌘⇧N |Select line
+Ctrl+Shift+P |⌘⇧P |Select paragraph
+Ctrl+Shift+I |⌘⇧I |Select indented block
+Ctrl+Alt+U |^U |Upper case selection
+Ctrl+Alt+Shift+U |^⇧U |Lower case selection
+Alt+< |^< |Enclose as XML tags
+Alt+> |^> |Enclose as single XML tag
+Alt+" |^" |Enclose in double quotes
+Alt+' |^' |Enclose in single quotes
+Alt+( |^( |Enclose in parentheses
+Alt+[ |^[ |Enclose in brackets
+Alt+{ |^{ |Enclose in braces
+Ctrl++ |⌘+ |Grow selection by 1 on either side
+Ctrl+\_ |⌘\_ |Shrink selection by 1 on either side
+Ctrl+Shift+Up |^⇧⇡ |Move selected lines up
+Ctrl+Shift+Down |^⇧⇣ |Move selected lines down
+**Search** |||
+Ctrl+F |⌘F |Find
+Ctrl+G
F3 |⌘G |Find next
+Ctrl+Shift+G
Shift+F3|⌘⇧G |Find previous
+Ctrl+Alt+R |^R |Replace
+Ctrl+Alt+Shift+R |^⇧R |Replace all
+Ctrl+Alt+F |^⌘F |Find incremental
+Ctrl+Shift+F |⌘⇧F |Find in files
+Ctrl+Alt+G |^⌘G |Goto next file found
+Ctrl+Alt+Shift+G |^⌘⇧G|Goto previous file found
+Ctrl+J |⌘J |Jump to line
+**Tools** |||
+Ctrl+E |⌘E |Command entry
+Ctrl+Shift+E |⌘⇧E |Select command
+Ctrl+R |⌘R |Run
+Ctrl+Shift+R |⌘⇧R |Compile
+Ctrl+| |⌘||Filter text through
+Ctrl+Space |⌥⎋ |Complete symbol
+Ctrl+H |^H |Show documentation
+Tab |⇥ |Expand snippet or next placeholder
+Ctrl+K |⌥⇥ |Insert snippet...
+Shift+Tab |⇧⇥ |Previous snippet placeholder
+Ctrl+Shift+K |⌥⇧⇥ |Cancel snippet
+Ctrl+F2 |⌘F2 |Toggle bookmark
+Ctrl+Shift+F2 |⌘⇧F2 |Clear bookmarks
+F2 |F2 |Next bookark
+Shift+F2 |⇧F2 |Previous bookmark
+Alt+F2 |⌥F2 |Goto bookmark...
+Ctrl+U |⌘U |Snapopen `_USERHOME`
+None |None |Snapopen `_HOME`
+Ctrl+Alt+Shift+O|^⌘⇧O |Snapopen current directory
+Ctrl+I |⌘I |Show style
+**Buffer** |||
+Ctrl+Tab |^⇥ |Next buffer
+Ctrl+Shift+Tab |^⇧⇥ |Previous buffer
+Ctrl+B |⌘B |Switch to buffer...
+None |None |Tab width: 2
+None |None |Tab width: 3
+None |None |Tab width: 4
+None |None |Tab width: 8
+Ctrl+Alt+Shift+T|^⇧T |Toggle use tabs
+Ctrl+Alt+I |^I |Convert indentation
+None |None |`CRLF` EOL mode
+None |None |`CR` EOL mode
+None |None |`LF` EOL mode
+None |None |`UTF-8` encoding
+None |None |`ASCII` encoding
+None |None |`ISO-8859-1` encoding
+None |None |`UTF-16` encoding
+Ctrl+Shift+L |⌘⇧L |Select lexer...
+F5 |F5 |Refresh syntax highlighting
+**View** |||
+Ctrl+Alt+N |^⌥⇥ |Next view
+Ctrl+Alt+P |^⌥⇧⇥ |Previous view
+Ctrl+Alt+S
Ctrl+Alt+H|^S |Split view horizontal
+Ctrl+Alt+V |^V |Split view vertical
+Ctrl+Alt+W |^W |Unsplit view
+Ctrl+Alt+Shift+W |^⇧W |Unsplit all views
+Ctrl+Alt++
Ctrl+Alt+=|^+
^=|Grow view
+Ctrl+Alt+- |^- |Shrink view
+None |None |Toggle current fold
+Ctrl+Alt+Enter |^↩ |Toggle view EOL
+Ctrl+Alt+\\ |^\\ |Toggle wrap mode
+Ctrl+Alt+Shift+I |^⇧I |Toggle show indent guides
+Ctrl+Alt+Shift+S |^⇧S |Toggle view whitespace
+Ctrl+Alt+Shift+V |^⇧V |Toggle virtual space
+Ctrl+= |⌘= |Zoom in
+Ctrl+- |⌘- |Zoom out
+Ctrl+0 |⌘0 |Reset zoom
+Ctrl+Shift+T |⌘⇧T |Select theme...
+**Help** |||
+F1 |F1 |Open manual
+Shift+F1|⇧F1 |Open LuaDoc
+None |None|About
+**Movement** |||
+Down |⇣
^N |Line down
+Shift+Down |⇧⇣
^⇧N |Line down extend selection
+Ctrl+Down |^⇣ |Scroll line down
+Alt+Shift+Down |⌥⇧⇣ |Line down extend rect. selection
+Up |⇡
^P |Line up
+Shift+Up |⇧⇡
^⇧P |Line up extend selection
+Ctrl+Up |^⇡ |Scroll line up
+Alt+Shift+Up |⌥⇧⇡ |Line up extend rect. selection
+Left |⇠
^B |Char left
+Shift+Left |⇧⇠
^⇧B |Char left extend selection
+Ctrl+Left |^⇠
^⌘B |Word left
+Ctrl+Shift+Left |^⇧⇠
^⌘⇧B|Word left extend selection
+Alt+Shift+Left |⌥⇧⇠ |Char left extend rect. selection
+Right |⇢
^F |Char right
+Shift+Right |⇧⇢
^⇧F |Char right extend selection
+Ctrl+Right |^⇢
^⌘F |Word right
+Ctrl+Shift+Right |^⇧⇢
^⌘⇧F|Word right extend selection
+Alt+Shift+Right |⌥⇧⇢ |Char right extend rect. selection
+Home |⌘⇠
^A |Line start
+Shift+Home |⌘⇧⇠
^⇧A |Line start extend selection
+Ctrl+Home |⌘⇡
⌘↖ |Document start
+Ctrl+Shift+Home |⌘⇧⇡
⌘⇧↖ |Document start extend selection
+Alt+Shift+Home |⌥⇧↖ |Line start extend rect. selection
+End |⌘⇢
^E |Line end
+Shift+End |⌘⇧⇢
^⇧E |Line end extend selection
+Ctrl+End |⌘⇣
⌘↘ |Document end
+Ctrl+Shift+End |⌘⇧⇣
⌘⇧↘ |Document end extend selection
+Alt+Shift+End |⌥⇧↘ |Line end extend rect. selection
+PageUp |⇞ |Page up
+Shift+PageUp |⇧⇞ |Page up extend selection
+Alt+Shift+PageUp |⌥⇧⇞ |Page up extend rect. selection
+PageDown |⇟ |Page down
+Shift+PageDown |⇧⇟ |Page down extend selection
+Alt+Shift+PageDown |⌥⇧⇟ |Page down extend rect. selection
+Ctrl+Del |⌘⌦ |Delete word right
+Ctrl+Shift+Del |⌘⇧⌦ |Delete line right
+Ins |Ins |Toggle overtype
+Backspace
Shift+Backspace|⌫
⇧⌫ |Delete back
+Ctrl+Backspace |⌘⌫ |Delete word left
+Ctrl+Shift+Backspace |⌘⇧⌫ |Delete line left
+Tab |⇥ |Insert tab or indent
+Shift+Tab |⇧⇥ |Dedent
+None |^K |Cut to line end
+None |^L |Center line vertically
+**Other** |||
+Ctrl+Shift+U, xxxx, Enter|None|Input Unicode character U-xxxx.
+
+## Lua Patterns
+
+The following is taken from the [Lua 5.2 Reference Manual][].
+
+_Character Class:_
+
+A character class is used to represent a set of characters. The following
+combinations are allowed in describing a character class:
+
+* **_`x`_:** (where _x_ is not one of the magic characters `^$()%.[]*+-?`)
+ represents the character _x_ itself.
+* **`.`:** (a dot) represents all characters.
+* **`%a`:** represents all letters.
+* **`%c`:** represents all control characters.
+* **`%d`:** represents all digits.
+* **`%g`:** represents all printable characters except space.
+* **`%l`:** represents all lowercase letters.
+* **`%p`:** represents all punctuation characters.
+* **`%s`:** represents all space characters.
+* **`%u`:** represents all uppercase letters.
+* **`%w`:** represents all alphanumeric characters.
+* **`%x`:** represents all hexadecimal digits.
+* **`%`_`x`_:** (where _x_ is any non-alphanumeric character) represents the
+ character _x_. This is the standard way to escape the magic characters. Any
+ punctuation character (even the non magic) can be preceded by a '`%`' when
+ used to represent itself in a pattern.
+* **`[set]`:** represents the class which is the union of all characters in set.
+ A range of characters can be specified by separating the end characters of the
+ range with a '`-`'. All classes `%`_x_ described above can also be used as
+ components in set. All other characters in set represent themselves. For
+ example, `[%w_]` (or `[_%w]`) represents all alphanumeric characters plus the
+ underscore, `[0-7]` represents the octal digits, and `[0-7%l%-]` represents
+ the octal digits plus the lowercase letters plus the '`-`' character.
+
+ The interaction between ranges and classes is not defined. Therefore, patterns
+ like `[%a-z]` or `[a-%%]` have no meaning.
+* **`[^set]`:** represents the complement of _set_, where _set_ is interpreted
+ as above.
+
+For all classes represented by single letters (`%a`, `%c`, etc.), the
+corresponding uppercase letter represents the complement of the class. For
+instance, `%S` represents all non-space characters.
+
+The definitions of letter, space, and other character groups depend on the
+current locale. In particular, the class `[a-z]` may not be equivalent to `%l`.
+
+_Pattern Item:_
+
+A _pattern item_ can be
+
+* a single character class, which matches any single character in the class;
+* a single character class followed by '`*`', which matches 0 or more
+ repetitions of characters in the class. These repetition items will always
+ match the longest possible sequence;
+* a single character class followed by '`+`', which matches 1 or more
+ repetitions of characters in the class. These repetition items will always
+ match the longest possible sequence;
+* a single character class followed by '`-`', which also matches 0 or more
+ repetitions of characters in the class. Unlike '`*`', these repetition items
+ will always match the _shortest_ possible sequence;
+* a single character class followed by '`?`', which matches 0 or 1 occurrence of
+ a character in the class;
+* `%n`, for _n_ between 1 and 9; such item matches a substring equal to the
+ _n_-th captured string (see below);
+* `%bxy`, where _x_ and _y_ are two distinct characters; such item matches
+ strings that start with _x_, end with _y_, and where the _x_ and _y_ are
+ balanced. This means that, if one reads the string from left to right,
+ counting +_1_ for an _x_ and -_1_ for a _y_, the ending _y_ is the first _y_
+ where the count reaches 0. For instance, the item `%b()` matches expressions
+ with balanced parentheses.
+* `%f[set]`, a _frontier pattern_; such item matches an empty string at any
+ position such that the next character belongs to _set_ and the previous
+ character does not belong to _set_. The set _set_ is interpreted as previously
+ described. The beginning and the end of the subject are handled as if they
+ were the character `'\0'`.
+
+_Pattern:_
+
+A _pattern_ is a sequence of pattern items. A '`^`' at the beginning of a
+pattern anchors the match at the beginning of the subject string. A '`$`' at the
+end of a pattern anchors the match at the end of the subject string. At other
+positions, '`^`' and '`$`' have no special meaning and represent themselves.
+
+_Captures:_
+
+A pattern can contain sub-patterns enclosed in parentheses; they describe
+_captures_. When a match succeeds, the substrings of the subject string that
+match captures are stored (_captured_) for future use. Captures are numbered
+according to their left parentheses. For instance, in the pattern
+`"(a*(.)%w(%s*))"`, the part of the string matching `"a*(.)%w(%s*)"` is stored
+as the first capture (and therefore has number 1); the character matching "`.`"
+is captured with number 2, and the part matching "`%s*`" has number 3.
+
+As a special case, the empty capture `()` captures the current string position
+(a number). For instance, if we apply the pattern `"()aa()"` on the string
+`"flaaap"`, there will be two captures: 3 and 5.
+
+[Lua 5.2 Reference Manual]: http://www.lua.org/manual/5.2/manual.html#6.4.1
+
+## Migration Guides
+
+### Textadept 4 to 5
+
+Lua has been upgraded from [5.1 to 5.2][], so many scripts written for Textadept
+4 are not compatible with Textadept 5. Since incompatible scripts may cause
+crashes on startup, the following guide will help you migrate your scripts from
+Textadept 4 to Textadept 5. While this guide is not exhaustive, it covers the
+changes I had to Textadept's internals.
+
+[5.1 to 5.2]: http://www.lua.org/manual/5.2/manual.html#8
+
+#### Module Changes
+
+##### Syntax Changes
+
+Although Lua 5.2 only deprecates Lua 5.1's `module` syntax, Textadept 5 removes
+it. Therefore, replace
+
+ -- File ~/.textadept/modules/foo.lua
+ module('_m.foo', package.seeall)
+
+ function bar()
+ ...
+ end
+
+ ...
+
+and
+
+ -- File ~/.textadept/init.lua
+ require 'textadept'
+ require 'foo'
+
+with
+
+ -- File ~/.textadept/modules/foo.lua
+ local M = {}
+
+ function M.bar()
+ ...
+ end
+
+ ...
+
+ return M
+
+or
+
+ local M = {}
+ local _ENV = M
+ if setfenv then setfenv(1, _ENV) end -- LuaJIT support
+
+ function bar()
+ ...
+ end
+
+ function baz()
+ bar()
+ end
+
+ return M
+
+and
+
+ -- File ~/.textadept/init.lua
+ require 'textadept'
+ _M.foo = require 'foo'
+
+Please remember that, as stated in the documentation, `require 'textadept'` is a
+special case and `_M.textadept = require 'textadept'` is not necessary because
+of internal dependencies. All other modules need the
+`_M.module = require 'module'` construct.
+
+Notice that `_M` is the new module table instead of `_m`. More on this
+[later](#Global.Module.Table).
+
+##### Module References
+
+Replace all instances of `_M` (a reference created by `module()` that holds the
+current module table) with `M` (the local module table you created).
+
+Also, prefix all instances of internal module function calls with `M` if you are
+not using `_ENV`. For example, change
+
+ module('foo', package.seeall)
+
+ function bar()
+ ...
+ end
+
+ function baz()
+ bar()
+ end
+
+to
+
+ local M = {}
+
+ function M.bar()
+ ...
+ end
+
+ function M.baz()
+ M.bar()
+ end
+
+ return M
+
+##### LuaDoc
+
+If you use LuaDoc for your modules, you can still document them like this:
+
+ local M = {}
+
+ --[[ This comment is for LuaDoc
+ ---
+ -- This is the documentation for module foo.
+ module('foo')]]
+
+ ---
+ -- Documentation for bar.
+ -- ...
+ -- @name bar
+ function M.bar()
+ ...
+ end
+
+ return M
+
+##### Global Module Table
+
+Originally, I wanted to use `_M` as the global table that contains modules, but
+Lua 5.1's modules used `_M` silently, so I had to settle with `_m`. Now that
+modules have been removed, `_M` is available again and is used. Therefore,
+replace all instances of `_m` with `_M`. In Textadept, you can easily do a
+search and replace with "Match Case" and "Whole Words" checked -- this is what I
+did when upgrading Textadept's internals.
+
+#### Function Changes
+
+##### `unpack`
+
+`unpack()` has been renamed to `table.unpack()`. Replace all instances of
+`unpack` with `table.unpack`.
+
+##### `xpcall`
+
+`xpcall()` accepts error function parameters so you can change code from
+
+ local args = {...}
+ xpcall(function() return f(unpack(args)) end, error_function)
+
+to
+
+ xpcall(f, error_function, ...)
+
+However, this is not required.
+
+##### `loadstring`
+
+`loadstring()` has been replaced by `load()` since the latter now recognizes a
+string chunk. Replace all instances of `loadstring` with `load`.
+
+##### `setfenv`
+
+`setfenv()` has been removed. In some cases, use `load()` with an environment
+instead. For example, change
+
+ local f, err = loadstring(command)
+ if err then error(err) end
+ setfenv(f, env)()
+
+to
+
+ local f, err = load(command, nil, 'bt', env)
+ if err then error(err) end
+ f()
+
+(The `'bt'` is necessary for loading both binary and text chunks.)
+
+If instead you want to set a function's environment, change
+
+ setfenv(f, env)
+
+to
+
+ debug.setupvalue(f, 1, env)
+
+##### `getfenv`
+
+`getfenv()` has been removed. Change
+
+ local env = getfenv(f)
+
+to
+
+ local debug = require 'debug'
+ local env = debug.getupvalue(f, 1)
+
+##### `os.execute`
+
+`os.execute()`s function parameters have changed. If you are only interested in
+the return code, change
+
+ local code = os.execute(cmd)
+
+to
+
+ local _, _, code = os.execute(cmd)
+
+##### `localize`
+
+Localization is done using a global table [`_L`][] instead of calling
+`locale.localize()`. Replace all instances of `locale.localize('message')` with
+`_L['message']`. This allows messages to be modified via scripts if desirable.
+
+[`_L`]: api/_L.html
+
+##### `current_word`
+
+`_M.textadept.editing.current_word()` has been renamed to `select_word()` and
+does not take any parameters. There is a `_M.textadept.keys.utils.delete_word()`
+function that replaces `current_word('delete')`. You can use it or create a new
+function:
+
+ local function delete_word()
+ _M.textadept.editing.select_word()
+ buffer:delete_back()
+ end
+
+#### Theme Changes
+
+Any custom themes need to be changed to remove the `module` syntax. Usually this
+involves changing
+
+ module('lexer', package.seeall)
+
+ colors = {
+ ...
+ }
+
+ style_nothing = style { ... }
+ style_class = style { fore = colors.light_yellow }
+ ...
+ style_identifier = style_nothing
+
+ ...
+
+ style_default = style {
+ ...
+ }
+ style_line_number = { fore = colors.dark_grey, back = colors.black }
+ ...
+
+to
+
+ local l, color, style = lexer, lexer.color, lexer.style
+
+ l.colors = {
+ ...
+ }
+
+ l.style_nothing = style { ... }
+ l.style_class = style { fore = l.colors.light_yellow }
+ ...
+ l.style_identifier = l.style_nothing
+
+ ...
+
+ l.style_default = style {
+ ...
+ }
+ l.style_line_number = { fore = l.colors.dark_grey, back = l.colors.black }
+ ...
+
+Notice the `l.` prefix before most identifiers.
+
+### Textadept 3 to 4
+
+#### Key and Menu Changes
+
+Textadept 4 allow key shortcuts to appear in menus, but only simple ones, not
+keychains. Therefore, Textadept's key commands have changed radically, as has
+the menu structure and menu mnemonics. In order for key shortcuts to appear in
+menus, `_m.textadept.menu` needs to know which commands are assigned to which
+keys. Therefore, the menu module needs to be `require`d *after*
+`_m.textadept.keys`. If your `~/.textadept/init.lua` is calling
+`require 'textadept'`, you do not have to make any changes. If you are loading
+individual modules from `_m.textadept`, ensure `_m.textadept.menu` is loaded
+after `_m.textadept.keys`.
+
+On Mac OSX, key command definition has changed. `m` is now ⌘ (command) and `a`
+is now ⌥ (alt/option). `c` remains ^ (control). Previously `a` was ⌘ and ⌥ was
+undefined. Please note, however, that not all ⌥ combinations by themselves will
+work since that key is typically used to compose locale-dependent characters.
+
+#### Function Changes
+
+##### `select_scope`
+
+`_m.textadept.editing.select_scope()` was renamed to `select_style()`.
+Therefore, replace all instances of `_m.textadept.editing.select_scope` with
+`_m.textadept.editing.select_style`.
+
+##### `SAVE_STRIPS_WS`
+
+`_m.textadept.editing.SAVE_STRIPS_WS` was renamed to `STRIP_WHITESPACE_ON_SAVE`.
+Replace all instances of `_m.textadept.editing.SAVE_STRIPS_WS` with
+`_m.textadept.editing.STRIP_WHITESPACE_ON_SAVE`.
+
+### Textadept 2 to 3
+
+#### Module Changes
+
+##### Core Extensions
+
+There are no more core extention modules (previously in `core/ext/`). They have
+been relocated to `modules/textadept/` so putting
+
+ require 'textadept'
+
+in your `~/.textadept/init.lua` will load all the modules you would expect.
+Please see the [preferences][] page for instructions on how to load specific
+modules.
+
+[preferences]: 9_Preferences.html#User.Init
+
+##### Autoloading
+
+Key commands in `~/.textadept/key_commands.lua` and snippets in
+`~/.textadept/snippets.lua` are no longer auto-loaded. Instead, modify
+[`keys`][] and/or [`snippets`][] from within your `~/.textadept/init.lua` or a
+file loaded by `~/.textadept/init.lua`.
+
+[`keys`]: api/keys.html
+[`snippets`]: api/_M.textadept.snippets.html
+
+#### Function Changes
+
+Textadept has a brand new Lua [API][]. It is likely that any external scripts,
+including themes, need to be rewritten.
+
+Here is a summary of API changes:
+
+* `_m.textadept.lsnippets` renamed to [`_m.textadept.snippets`][].
+* `textadept.events` renamed to [`_G.events`][].
+ * `events.handle()` renamed to [`events.emit()`][].
+ * `events.add_handler()` renamed to [`events.connect()`][].
+* `textadept.constants` renamed to [`_SCINTILLA.constants`][].
+* `textadept.buffer_functions` renamed to [`_SCINTILLA.functions`][].
+* `textadept.buffer_properties` renamed to [`_SCINTILLA.properties`][].
+* `textadept.buffers` renamed to [`_BUFFERS`][].
+* `textadept.views` renamed to [`_VIEWS`][].
+* New [`gui`][] module.
+ * Renamed `textadept._print()` to [`gui._print()`][].
+ * Renamed `textadept.check_focused_buffer()` to `gui.check_focused_buffer()`.
+ * Renamed `textadept.clipboard_text` to `gui.clipboard_text`.
+ * Renamed `textadept.context_menu` to `gui.context_menu`.
+ * Renamed `textadept.command_entry` to [`gui.command_entry`][].
+ * Renamed `textadept.dialog` to [`gui.dialog()`][].
+ * Renamed `textadept.docstatusbar_text` to `gui.docstatusbar_text`.
+ * Renamed `textadept.find` to [`gui.find`][].
+ * Renamed `textadept.focused_doc_pointer` to `gui.focused_doc_pointer`.
+ * Renamed `textadept.get_split_table()` to [`gui.get_split_table()`][].
+ * Renamed `textadept.gtkmenu()` to [`gui.gtkmenu()`][].
+ * Renamed `textadept.goto_view()` to [`gui.goto_view()`][].
+ * Renamed `textadept.menubar` to `gui.menubar`.
+ * Renamed `textadept.print()` to [`gui.print()`][].
+ * Renamed `textadept.size` to `gui.size`.
+ * Renamed `textadept.statusbar_text` to `gui.statusbar_text`.
+ * Renamed `textadept.switch_buffer()` to [`gui.switch_buffer()`][].
+ * Renamed `textadept.title` to `gui.title`.
+ * Renamed `textadept.new_buffer()` to [`new_buffer()`][].
+ * Renamed `textadept.quit()` to [`quit()`][].
+ * Renamed `textadept.reset()` to [`reset()`][].
+ * Renamed `textadept.user_dofile()` to [`user_dofile()`][].
+ * Renamed `textadept.iconv()` to [`string.iconv()`][].
+ * Renamed `textadept.session_file` to `_SESSIONFILE`.
+* Removed global `textadept` module.
+
+[API]: api
+[`_m.textadept.snippets`]: api/_M.textadept.snippets.html
+[`_G.events`]: api/events.html
+[`events.emit()`]: api/events.html#emit
+[`events.connect()`]: api/events.html#connect
+[`_SCINTILLA.constants`]: api/_SCINTILLA.html#constants
+[`_SCINTILLA.functions`]: api/_SCINTILLA.html#functions
+[`_SCINTILLA.properties`]: api/_SCINTILLA.html#properties
+[`_BUFFERS`]: api/_G.html#_BUFFERS
+[`_VIEWS`]: api/_G.html#_VIEWS
+[`gui`]: api/gui.html
+[`gui._print()`]: api/gui.html#_print
+[`gui.command_entry`]: api/gui.command_entry.html
+[`gui.dialog()`]: api/gui.html#dialog
+[`gui.find`]: api/gui.find.html
+[`gui.get_split_table()`]: api/gui.html#get_split_table
+[`gui.gtkmenu()`]: api/gui.html#gtkmenu
+[`gui.goto_view()`]: api/gui.html#goto_view
+[`gui.print()`]: api/gui.html#print
+[`gui.switch_buffer()`]: api/gui.html#switch_buffer
+[`new_buffer()`]: api/_G.html#new_buffer
+[`quit()`]: api/_G.html#quit
+[`reset()`]:api/_G.html#reset
+[`user_dofile()`]: api/_G.html#user_dofile
+[`string.iconv()`]: api/string.html#iconv
--
cgit v1.2.3