aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar mitchell <70453897+667e-11@users.noreply.github.com>2013-11-11 10:08:06 -0500
committerGravatar mitchell <70453897+667e-11@users.noreply.github.com>2013-11-11 10:08:06 -0500
commitf07dd8f518635d51cb7662b1298e1a0e61eabdcf (patch)
treedb199e355dae30109ebdd5f466887e6384ee19a9
parent19e13c2eb71a57aeb7148873b9696f8750effb72 (diff)
Updated Lua Adeptsense.
-rw-r--r--modules/lua/api354
-rw-r--r--modules/lua/tags18
2 files changed, 184 insertions, 188 deletions
diff --git a/modules/lua/api b/modules/lua/api
index e91c0c92..913933a4 100644
--- a/modules/lua/api
+++ b/modules/lua/api
@@ -6,7 +6,7 @@ ANNOTATION_HIDDEN _SCINTILLA.constants.ANNOTATION_HIDDEN\n0
ANNOTATION_STANDARD _SCINTILLA.constants.ANNOTATION_STANDARD\n1
APPLEEVENT_ODOC events.APPLEEVENT_ODOC (string)\nEmitted when Mac OSX tells Textadept to open a file.\nArguments:\n\n* _`uri`_: The UTF-8-encoded URI to open.
ARG_NONE events.ARG_NONE (string)\nEmitted when no command line arguments are passed to Textadept on startup.
-AUTOINDENT textadept.editing.AUTOINDENT (bool)\nMatch the previous line's indentation level when inserting a new line.\nThe default value is `true`.
+AUTOINDENT textadept.editing.AUTOINDENT (bool)\nMatch the previous line's indentation level after inserting a new line.\nThe default value is `true`.
AUTOMATICFOLD_CHANGE _SCINTILLA.constants.AUTOMATICFOLD_CHANGE\n4
AUTOMATICFOLD_CLICK _SCINTILLA.constants.AUTOMATICFOLD_CLICK\n2
AUTOMATICFOLD_SHOW _SCINTILLA.constants.AUTOMATICFOLD_SHOW\n1
@@ -40,9 +40,9 @@ CHAR_ADDED events.CHAR_ADDED (string)\nEmitted after the user types a text chara
CLASS lexer.CLASS (string)\nThe token name for class tokens.
CLASS textadept.adeptsense.CLASS (string)\nCtags kind for Adeptsense classes.
CLEAR keys.CLEAR (string)\nThe key that clears the current key chain.\nIt cannot be part of a key chain.\nThe default value is `'esc'` for the `Esc` (`⎋` on Mac OSX | `Esc` in\ncurses) key.
-COMMAND_ENTRY_KEYPRESS events.COMMAND_ENTRY_KEYPRESS (string)\nEmitted when pressing a key in the Command Entry.\nIf any handler returns `true`, the key is not inserted into the entry.\nArguments:\n\n* _`code`_: The numeric key code.\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.\n* _`meta`_: The "Command" modifier key on Mac OSX is held down.
+COMMAND_ENTRY_KEYPRESS events.COMMAND_ENTRY_KEYPRESS (string)\nEmitted when pressing a key in the command entry.\nIf any handler returns `true`, the key is not inserted into the entry.\nArguments:\n\n* _`code`_: The numeric key code.\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.\n* _`meta`_: The "Command" modifier key on Mac OSX is held down.
COMMENT lexer.COMMENT (string)\nThe token name for comment tokens.
-COMPILE_OUTPUT events.COMPILE_OUTPUT (string)\nEmitted after executing a language's compile command.\nBy default, compiler output is printed to the message buffer. To override\nthis behavior, connect to the event with an index of `1` and return `true`.\nArguments:\n\n* `lexer`: The language's lexer name.\n* `output`: The string output from the command.
+COMPILE_OUTPUT events.COMPILE_OUTPUT (string)\nEmitted after executing a language's compile command.\nBy default, compiler output is printed to the message buffer. To override\nthis behavior, connect to the event with an index of `1` and return `true`.\nArguments:\n\n* `lexer`: The language's lexer name.\n* `output`: The command's string output.
CONSTANT lexer.CONSTANT (string)\nThe token name for constant tokens.
CP_UTF8 _SCINTILLA.constants.CP_UTF8\n65001
CURSES _G.CURSES (bool)\nWhether or not Textadept is running in the terminal.\nCurses feature incompatibilities are listed in the Appendix.
@@ -76,16 +76,17 @@ FIELD textadept.adeptsense.FIELD (string)\nCtags kind for Adeptsense fields.
FIELD_IMAGE textadept.adeptsense.FIELD_IMAGE (string)\nXPM image for Adeptsense fields.
FILE_AFTER_SAVE events.FILE_AFTER_SAVE (string)\nEmitted right after saving a file to disk.\nEmitted by `io.save_file()`.\nArguments:\n\n* _`filename`_: The filename being saved.
FILE_BEFORE_SAVE events.FILE_BEFORE_SAVE (string)\nEmitted right before saving a file to disk.\nEmitted by `io.save_file()`.\nArguments:\n\n* _`filename`_: The filename being saved.
-FILE_OPENED events.FILE_OPENED (string)\nEmitted when opening a file in a new buffer.\nEmitted by `open_file()`.\nArguments:\n\n* _`filename`_: The filename opened.
+FILE_CHANGED events.FILE_CHANGED (string)\nEmitted when Textadept detects that a file was externally modified.\nWhen connecting to this event, connect with an index of 1 to override the\ndefault prompt to reload the file.\nArguments:\n\n* _`filename`_: The filename externally modified.
+FILE_OPENED events.FILE_OPENED (string)\nEmitted after opening a file in a new buffer.\nEmitted by `open_file()`.\nArguments:\n\n* _`filename`_: The filename opened.
FILE_SAVED_AS events.FILE_SAVED_AS (string)\nEmitted after saving a file under a different filename.\nEmitted by `io.save_file_as()`.\nArguments:\n\n* _`filename`_: The new filename.
-FILTER lfs.FILTER (table)\nThe filter table containing common binary file extensions and version control\nfolders to exclude when iterating over files and directories using\n`dir_foreach` when its `exclude_FILTER` argument is `false`.\n@see dir_foreach
-FILTER ui.find.FILTER (table)\nThe table of Lua patterns matching files and folders to exclude when finding\nin files.\nThe filter contains Lua patterns that match filenames to exclude, an optional\n`folders` sub-table that contains patterns matching folders to exclude, and\nan optional `extensions` sub-table that contains raw file extensions to\nexclude. Any patterns starting with '!' exclude files and folders that do not\nmatch the pattern that follows.\nThe default value is `lfs.FILTER`, a filter for common binary file extensions\nand version control folders.\n@see find_in_files
+FILTER lfs.FILTER (table)\nThe filter table containing common binary file extensions and version control\ndirectories to exclude when iterating over files and directories using\n`dir_foreach` when its `exclude_FILTER` argument is `false`.\n@see dir_foreach
+FILTER ui.find.FILTER (table)\nThe table of Lua patterns matching files and directories to exclude when\nfinding in files.\nThe filter contains Lua patterns that match filenames to exclude, an optional\n`folders` sub-table that contains patterns matching directories to exclude,\nand an optional `extensions` sub-table that contains raw file extensions to\nexclude. Any patterns starting with '!' exclude files and directories that do\nnot match the pattern that follows.\nThe default value is `lfs.FILTER`, a filter for common binary file extensions\nand version control directories.\n@see find_in_files
FIND events.FIND (string)\nEmitted to find text via the Find dialog box.\nArguments:\n\n* _`text`_: The text to search for.\n* _`next`_: Whether or not to search forward.
FIND_MATCHCASE _SCINTILLA.constants.FIND_MATCHCASE\n4
FIND_REGEXP _SCINTILLA.constants.FIND_REGEXP\n6291456
FIND_WHOLEWORD _SCINTILLA.constants.FIND_WHOLEWORD\n2
FIND_WORDSTART _SCINTILLA.constants.FIND_WORDSTART\n1048576
-FIND_WRAPPED events.FIND_WRAPPED (string)\nEmitted when a search for text wraps, either from bottom to top when\nsearching for a next occurrence, or from top to bottom when searching for a\nprevious occurrence.\nThis is useful for implementing a more visual or audible notice when a\nsearch wraps in addition to the statusbar message.
+FIND_WRAPPED events.FIND_WRAPPED (string)\nEmitted when a text search wraps, either from bottom to top when searching\nfor a next occurrence, or from top to bottom when searching for a previous\noccurrence.\nThis is useful for implementing a more visual or audible notice when a\nsearch wraps in addition to the statusbar message.
FOLDACTION_CONTRACT _SCINTILLA.constants.FOLDACTION_CONTRACT\n0
FOLDACTION_EXPAND _SCINTILLA.constants.FOLDACTION_EXPAND\n1
FOLDACTION_TOGGLE _SCINTILLA.constants.FOLDACTION_TOGGLE\n2
@@ -107,7 +108,7 @@ FUNCTION_IMAGE textadept.adeptsense.FUNCTION_IMAGE (string)\nXPM image for Adept
HIGHLIGHT_BRACES textadept.editing.HIGHLIGHT_BRACES (bool)\nHighlight matching brace characters like "()[]{}".\nThe default value is `true`.\nMatching braces are defined in the `braces` table.
HOTSPOT_CLICK events.HOTSPOT_CLICK (string)\nEmitted when clicking on text that is in a style with the hotspot attribute\nset.\nArguments:\n\n* _`position`_: The clicked text's position.\n* _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,\n `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.\n Note: If you set `buffer.rectangular_selection_modifier` to\n `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK+.
HOTSPOT_DOUBLE_CLICK events.HOTSPOT_DOUBLE_CLICK (string)\nEmitted when double-clicking on text that is in a style with the hotspot\nattribute set.\nArguments:\n\n* _`position`_: The double-clicked text's position.\n* _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,\n `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.\n Note: If you set `buffer.rectangular_selection_modifier` to\n `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK+.
-HOTSPOT_RELEASE_CLICK events.HOTSPOT_RELEASE_CLICK (string)\nEmitted after releasing the mouse after clicking on text that was in a\nstyle with the hotspot attribute set.\nArguments:\n\n* _`position`_: The clicked text's position.
+HOTSPOT_RELEASE_CLICK events.HOTSPOT_RELEASE_CLICK (string)\nEmitted when releasing the mouse after clicking on text that is in a style\nwith the hotspot attribute set.\nArguments:\n\n* _`position`_: The clicked text's position.
IDENTIFIER lexer.IDENTIFIER (string)\nThe token name for identifier tokens.
INDICATOR_CLICK events.INDICATOR_CLICK (string)\nEmitted when clicking the mouse on text that has an indicator present.\nArguments:\n\n* _`position`_: The clicked text's position.\n* _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,\n `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.\n Note: If you set `buffer.rectangular_selection_modifier` to\n `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK+.
INDICATOR_RELEASE events.INDICATOR_RELEASE (string)\nEmitted when releasing the mouse after clicking on text that has an\nindicator present.\nArguments:\n\n* _`position`_: The clicked text's position.
@@ -196,7 +197,7 @@ MARK_VLINE _SCINTILLA.constants.MARK_VLINE\n9
MARK_WARNING textadept.run.MARK_WARNING (number)\nThe run or compile warning marker number.
MASK_FOLDERS _SCINTILLA.constants.MASK_FOLDERS\n-33554432
MAX_MARGIN _SCINTILLA.constants.MAX_MARGIN\n4
-MAX_RECENT_FILES textadept.session.MAX_RECENT_FILES (number)\nThe maximum number of recent files to save to session files.\nRecent files are stored in `io.recent_files`.\nThe default value is `10`.
+MAX_RECENT_FILES textadept.session.MAX_RECENT_FILES (number)\nThe maximum number of recent files to save in session files.\nRecent files are stored in `io.recent_files`.\nThe default value is `10`.
MENU_CLICKED events.MENU_CLICKED (string)\nEmitted after selecting a menu item.\nArguments:\n\n* _`menu_id`_: The numeric ID of the menu item set in `ui.menu()`.
MODE keys.MODE (string)\nThe current key mode.\nWhen non-`nil`, all key bindings defined outside of `keys[MODE]` are\nignored.\nThe default value is `nil`.
MODEVENTMASKALL _SCINTILLA.constants.MODEVENTMASKALL\n1048575
@@ -237,17 +238,17 @@ PREPROCESSOR lexer.PREPROCESSOR (string)\nThe token name for preprocessor tokens
QUIT events.QUIT (string)\nEmitted when quitting Textadept.\nWhen connecting to this event, connect with an index of 1 or the handler\nwill be ignored.\nEmitted by `quit()`.
R lpeg.R({range})\nReturns a pattern that matches any single character belonging to one of the\ngiven ranges. Each `range` is a string xy of length 2, representing all\ncharacters with code between the codes of x and y (both inclusive).\n\nAs an example, the pattern `lpeg.R("09")` matches any digit, and\n`lpeg.R("az", "AZ")` matches any ASCII letter.
REGEX lexer.REGEX (string)\nThe token name for regex tokens.
-REPLACE events.REPLACE (string)\nEmitted to replace selected (found) text.\nArguments:\n\n* _`text`_: The text to replace the selected text with.
-REPLACE_ALL events.REPLACE_ALL (string)\nEmitted to replace all occurrences of found text.\nArguments:\n\n* _`find_text`_: The text to search for.\n* _`repl_text`_: The text to replace found text with.
+REPLACE events.REPLACE (string)\nEmitted to replace selected (found) text.\nArguments:\n\n* _`text`_: The replacement text.
+REPLACE_ALL events.REPLACE_ALL (string)\nEmitted to replace all occurrences of found text.\nArguments:\n\n* _`find_text`_: The text to search for.\n* _`repl_text`_: The replacement text.
RESET_AFTER events.RESET_AFTER (string)\nEmitted after resetting the Lua state.\nEmitted by `reset()`.
RESET_BEFORE events.RESET_BEFORE (string)\nEmitted before resetting the Lua state.\nEmitted by `reset()`.
-RUN_OUTPUT events.RUN_OUTPUT (string)\nEmitted after executing a language's run command.\nBy default, output is printed to the message buffer. To override this\nbehavior, connect to the event with an index of `1` and return `true`.\nArguments:\n\n* `lexer`: The language's lexer name.\n* `output`: The string output from the command.
+RUN_OUTPUT events.RUN_OUTPUT (string)\nEmitted after executing a language's run command.\nBy default, output is printed to the message buffer. To override this\nbehavior, connect to the event with an index of `1` and return `true`.\nArguments:\n\n* `lexer`: The language's lexer name.\n* `output`: The command's string output.
S lpeg.S(string)\nReturns a pattern that matches any single character that appears in the given\nstring. (The S stands for Set.)\n\nAs an example, the pattern `lpeg.S("+-*/")` matches any arithmetic operator.\n\nNote that, if `s` is a character (that is, a string of length 1), then\n`lpeg.P(s)` is equivalent to `lpeg.S(s)` which is equivalent to\n`lpeg.R(s..s)`. Note also that both `lpeg.S("")` and `lpeg.R()` are patterns\nthat always fail.
-SAVE_ON_QUIT textadept.session.SAVE_ON_QUIT (bool)\nSave the session when quitting.\nThe session file saved is always `DEFAULT_SESSION`, even if a different\nsession was loaded with `load()`.\nThe default value is `true`, but is disabled when passing the command line\nswitch `-n` or `--nosession` to Textadept.
+SAVE_ON_QUIT textadept.session.SAVE_ON_QUIT (bool)\nSave the session when quitting.\nThe session file saved is always `DEFAULT_SESSION`, even if a different\nsession was loaded with `load()`.\nThe default value is `true` unless the user passed the command line switch\n`-n` or `--nosession` to Textadept.
SAVE_POINT_LEFT events.SAVE_POINT_LEFT (string)\nEmitted after leaving a save point.
SAVE_POINT_REACHED events.SAVE_POINT_REACHED (string)\nEmitted after reaching a save point.
-SCN_AUTOCCANCELLED _SCINTILLA.constants.SCN_AUTOCCANCELLED\n2026
-SCN_AUTOCCHARDELETED _SCINTILLA.constants.SCN_AUTOCCHARDELETED\n2027
+SCN_AUTOCCANCELLED _SCINTILLA.constants.SCN_AUTOCCANCELLED\n2025
+SCN_AUTOCCHARDELETED _SCINTILLA.constants.SCN_AUTOCCHARDELETED\n2026
SCN_AUTOCSELECTION _SCINTILLA.constants.SCN_AUTOCSELECTION\n2022
SCN_CALLTIPCLICK _SCINTILLA.constants.SCN_CALLTIPCLICK\n2021
SCN_CHARADDED _SCINTILLA.constants.SCN_CHARADDED\n2001
@@ -256,7 +257,7 @@ SCN_DWELLEND _SCINTILLA.constants.SCN_DWELLEND\n2017
SCN_DWELLSTART _SCINTILLA.constants.SCN_DWELLSTART\n2016
SCN_HOTSPOTCLICK _SCINTILLA.constants.SCN_HOTSPOTCLICK\n2019
SCN_HOTSPOTDOUBLECLICK _SCINTILLA.constants.SCN_HOTSPOTDOUBLECLICK\n2020
-SCN_HOTSPOTRELEASECLICK _SCINTILLA.constants.SCN_HOTSPOTRELEASECLICK\n2028
+SCN_HOTSPOTRELEASECLICK _SCINTILLA.constants.SCN_HOTSPOTRELEASECLICK\n2027
SCN_INDICATORCLICK _SCINTILLA.constants.SCN_INDICATORCLICK\n2023
SCN_INDICATORRELEASE _SCINTILLA.constants.SCN_INDICATORRELEASE\n2024
SCN_KEY _SCINTILLA.constants.SCN_KEY\n2005
@@ -279,7 +280,7 @@ SEL_THIN _SCINTILLA.constants.SEL_THIN\n3
SNAPOPEN_MAX io.SNAPOPEN_MAX (number)\nThe maximum number of files to list in the snapopen dialog.\nThe default value is `1000`.
STARTACTION _SCINTILLA.constants.STARTACTION\n8192
STRING lexer.STRING (string)\nThe token name for string tokens.
-STRIP_TRAILING_SPACES textadept.editing.STRIP_TRAILING_SPACES (bool)\nStrip trailing whitespace before saving files.\nThe default value is `true`.
+STRIP_TRAILING_SPACES textadept.editing.STRIP_TRAILING_SPACES (bool)\nStrip trailing whitespace before saving files.\nThe default value is `false`.
STYLE_BRACEBAD _SCINTILLA.constants.STYLE_BRACEBAD\n35
STYLE_BRACEBAD lexer.STYLE_BRACEBAD (string)\nThe style used for unmatched brace characters.
STYLE_BRACELIGHT _SCINTILLA.constants.STYLE_BRACELIGHT\n34
@@ -321,8 +322,8 @@ UPDATE_H_SCROLL _SCINTILLA.constants.UPDATE_H_SCROLL\n8
UPDATE_SELECTION _SCINTILLA.constants.UPDATE_SELECTION\n2
UPDATE_UI events.UPDATE_UI (string)\nEmitted when buffer content, styling, selection, or scroll position\nchanges.
UPDATE_V_SCROLL _SCINTILLA.constants.UPDATE_V_SCROLL\n4
-URI_DROPPED events.URI_DROPPED (string)\nEmitted after dragging and dropping a URI into the view.\nArguments:\n\n* _`text`_: The UTF-8-encoded URI dropped.
-USER_LIST_SELECTION events.USER_LIST_SELECTION (string)\nEmitted after selecting an item in a user list.\nArguments:\n\n* _`list_type`_: The *list_type* from `buffer:user_list_show()`.\n* _`text`_: The selection's text.\n* _`position`_: The position the list was displayed at.
+URI_DROPPED events.URI_DROPPED (string)\nEmitted after dragging and dropping a URI into a view.\nArguments:\n\n* _`text`_: The UTF-8-encoded URI dropped.
+USER_LIST_SELECTION events.USER_LIST_SELECTION (string)\nEmitted after selecting an item in the user list.\nArguments:\n\n* _`list_type`_: The *list_type* from `buffer:user_list_show()`.\n* _`text`_: The selection's text.\n* _`position`_: The position the list was displayed at.
V lpeg.V(v)\nThis operation creates a non-terminal (a variable) for a grammar. The created\nnon-terminal refers to the rule indexed by `v` in the enclosing grammar. (See\nGrammars for details.)
VARIABLE lexer.VARIABLE (string)\nThe token name for variable tokens.
VIEW_AFTER_SWITCH events.VIEW_AFTER_SWITCH (string)\nEmitted right after switching to another view.\nEmitted by `ui.goto_view()`.
@@ -369,9 +370,9 @@ _VIEWS _G._VIEWS (table)\nTable of all views in Textadept.\nNumeric keys have vi
_cancel_current textadept.snippets._cancel_current()\nCancels the active snippet, removing all inserted text.
_fold lexer.lexer._fold (table)\nIf this function exists in the lexer, it is called for folding\n the document instead of using `_foldsymbols` or indentation.
_foldsymbols lexer.lexer._foldsymbols (table)\nA table of recognized fold points for the lexer.\n Keys are token names with table values defining fold points. Those table\n values have string keys of keywords or characters that indicate a fold\n point whose values are integers. A value of `1` indicates a beginning fold\n point and a value of `-1` indicates an ending fold point. Values can also\n be functions that return `1`, `-1`, or `0` (indicating no fold point) for\n keys which need additional processing.\n There is also a required `_pattern` key whose value is a table containing\n Lua pattern strings that match all fold points (the string keys contained\n in token name table values). When the lexer encounters text that matches\n one of those patterns, the matched text is looked up in its token's table\n to determine whether or not it is a fold point.
-_insert textadept.snippets._insert(text)\nInserts snippet text *text* or the snippet associated with the trigger behind\nthe caret as a snippet, or goes to the active snippet's next placeholder,\nultimately only returning `false` if no action was taken.\n@param text Optional snippet text to insert. If `nil`, attempts to insert a\n new snippet based on the trigger, the word behind caret, and the current\n lexer.\n@return `false` if no action was taken; `nil` otherwise.\n@see buffer.word_chars
+_insert textadept.snippets._insert(text)\nInserts snippet text *text* or the snippet assigned to the trigger word\nbehind the caret or, if a snippet is active, goes to the active snippet's\nnext placeholder.\nReturns `false` if no action was taken.\n@param text Optional snippet text to insert. If `nil`, attempts to insert a\n new snippet based on the trigger, the word behind caret, and the current\n lexer.\n@return `false` if no action was taken; `nil` otherwise.\n@see buffer.word_chars
_lexer lexer.lexer._lexer (table)\nThe parent lexer object whose rules should be used. This field\n is only necessary to disambiguate a proxy lexer that loaded parent and\n child lexers for embedding and ended up having multiple parents loaded.
-_previous textadept.snippets._previous()\nJumps back to the previous snippet placeholder, reverting any changes from\nthe current one, but returns `false` only if no snippet is active.\n@return `false` if no snippet is active; `nil` otherwise.
+_previous textadept.snippets._previous()\nJumps back to the previous snippet placeholder, reverting any changes from\nthe current one.\nReturns `false` if no snippet is active.\n@return `false` if no snippet is active; `nil` otherwise.
_print ui._print(buffer_type, ...)\nPrints the given string messages to the buffer of type *buffer_type*.\nSplits the view and opens a new buffer for printing messages to. If the\nmessage buffer is already open in a view, the message is printed to that\nview. Otherwise the view is split and the message buffer is opened or\ndisplayed before being printed to.\n@param buffer_type String type of message buffer.\n@param ... Message strings.\n@usage ui._print(_L['[Message Buffer]'], message)
_rules lexer.lexer._rules (table)\nAn ordered list of rules for a lexer grammar.\n Each rule is a table containing an arbitrary rule name and the LPeg pattern\n associated with the rule. The order of rules is important as rules are\n matched sequentially.\n Child lexers should not use this table to access and/or modify their\n parent's rules and vice-versa. Use the `_RULES` table instead.
_select textadept.snippets._select()\nPrompts the user to select a snippet to insert from a list of global and\nlanguage-specific snippets.
@@ -380,7 +381,7 @@ abs math.abs(x)\nReturns the absolute value of `x`.
acos math.acos(x)\nReturns the arc cosine of `x` (in radians).
add_selection buffer.add_selection(buffer, end_pos, start_pos)\nSelects the range of text between positions *start_pos* to *end_pos* as the\nmain selection, retaining all other selections as additional selections.\nSince an empty selection still counts as a selection, use\n`buffer:set_selection()` first when setting a list of selections.\n@param buffer The buffer.\n@param end_pos The caret position of the range of text to select in *buffer*.\n@param start_pos The anchor position of the range of text to select in\n *buffer*.
add_text buffer.add_text(buffer, text)\nAdds string *text* to the buffer at the caret position and moves the caret to\nthe end of the added text without scrolling it into view.\n@param buffer The buffer.\n@param text The text to add.
-add_trigger textadept.adeptsense.add_trigger(sense, c, only_fields, only_functions)\nSignals character(s) *c* to trigger autocompletion.\nIf either *only_fields* or *only_functions* is `true`, displays the limited\nset of completions.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@param c The character(s) that triggers the autocompletion. You can have up\n to two characters.\n@param only_fields Optional flag indicating whether or not this trigger only\n completes fields. The default value is `false`.\n@param only_functions Optional flag indicating whether or not this trigger\n only completes functions. The default value is `false`.\n@usage sense:add_trigger('.')\n@usage sense:add_trigger(':', false, true) -- only functions\n@usage sense:add_trigger('->')
+add_trigger textadept.adeptsense.add_trigger(sense, c, only_fields, only_functions)\nSignals character(s) *c* to trigger autocompletion.\nIf either *only_fields* or *only_functions* is `true`, displays the\nappropriate subset of completions.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@param c The character(s) that triggers the autocompletion. You can have up\n to two characters.\n@param only_fields Optional flag indicating whether or not this trigger only\n completes fields. The default value is `false`.\n@param only_functions Optional flag indicating whether or not this trigger\n only completes functions. The default value is `false`.\n@usage sense:add_trigger('.')\n@usage sense:add_trigger(':', false, true) -- only functions\n@usage sense:add_trigger('->')
additional_caret_fore buffer.additional_caret_fore (number)\nThe foreground color, in "0xBBGGRR" format, of additional carets.
additional_carets_blink buffer.additional_carets_blink (bool)\nAllow additional carets to blink.\nThe default value is `true`.
additional_carets_visible buffer.additional_carets_visible (bool)\nDisplay additional carets.\nThe default value is `true`.
@@ -396,11 +397,14 @@ alpha lexer.alpha (pattern)\nA pattern that matches any alphabetic character ('A
always_show_globals textadept.adeptsense.always_show_globals (bool)\nInclude globals in the list of completions offered.\nGlobals are classes, functions, and fields that do not belong to another\nclass. They are contained in `sense.completions['']`.\nThe default value is `true`.
anchor buffer.anchor (number)\nThe anchor's position.
annotation_clear_all buffer.annotation_clear_all(buffer)\nClears annotations from all lines.\n@param buffer The buffer.
-annotation_lines buffer.annotation_lines (table, Read-only)\nTable of the number of annotation lines for line numbers starting from\nzero.
-annotation_style buffer.annotation_style (table)\nTable of style numbers for annotations for line numbers starting from zero.\nOnly some style attributes are active in annotations: font,\nsize/size_fractional, bold/weight, italics, fore, back, and character_set.
+annotation_lines buffer.annotation_lines (table, Read-only)\nTable of the number of annotation text lines for line numbers starting from\nzero.
+annotation_style buffer.annotation_style (table)\nTable of style numbers for annotation text for line numbers starting from\nzero.\nOnly some style attributes are active in annotations: font,\nsize/size_fractional, bold/weight, italics, fore, back, and character_set.
annotation_style_offset buffer.annotation_style_offset (number)\nThe beginning of the range of style numbers used for annotations.\nAlways set this to the result of\n`buffer.allocate_extended_styles`.\nAnnotation styles may be completely separated from standard text styles by\nsetting a style offset. For example, when set to `512`, annotation styles\nare numbered from `512` upto `767` so they do not overlap styles set by\nlexers (or margins if margins offset is `256`). Each style number set with\n`annotation_style` has the offset added before looking up the style.\nThe default value is `0`.
annotation_text buffer.annotation_text (table)\nTable of annotation text for line numbers starting from zero.
annotation_visible buffer.annotation_visible (number)\nThe annotation visibility mode.\n\n* `buffer.ANNOTATION_HIDDEN`\n Annotations are invisible.\n* `buffer.ANNOTATION_STANDARD`\n Draw annotations left-justified with no decoration.\n* `buffer.ANNOTATION_BOXED`\n Indent annotations to match the annotated text and outline them with a\n box.\n\nThe default value is `buffer.ANNOTATION_HIDDEN`.
+ansi_c _G.keys.ansi_c (table)\nTable of C-specific key bindings.
+ansi_c _G.snippets.ansi_c (table)\nTable of C-specific snippets.
+ansi_c _M.ansi_c (module)\nThe ansi_c module.\nIt provides utilities for editing C code.
any lexer.any (pattern)\nA pattern that matches any single character.
api_files textadept.adeptsense.api_files (table)\nA list of api files used by `show_apidoc()`.\nEach line in the api file contains a symbol name (not the full symbol)\nfollowed by a space character and then the symbol's documentation. Since\nthere may be many duplicate symbol names, it is recommended to put the full\nsymbol and arguments, if any, on the first line. (e.g. `Class.function(arg1,\narg2, ...)`). This allows the correct documentation to be shown based on the\ncurrent context. In the documentation, newlines are represented with "\n". A\n'\' before "\n" escapes the newline.
append_text buffer.append_text(buffer, text)\nAppends string *text* to the end of the buffer without modifying any existing\nselections or scrolling the text into view.\n@param buffer The buffer.\n@param text The text to append.
@@ -413,7 +417,7 @@ assert _G.assert(v [, message])\nIssues an error when the value of its argument
atan math.atan(x)\nReturns the arc tangent of `x` (in radians).
atan2 math.atan2(y, x)\nReturns the arc tangent of `y/x` (in radians), but uses the signs\nof both parameters to find the quadrant of the result. (It also handles\ncorrectly the case of `x` being zero.)
attributes lfs.attributes(filepath [, aname])\nReturns a table with the file attributes corresponding to filepath (or nil\nfollowed by an error message in case of error). If the second optional\nargument is given, then only the value of the named attribute is returned\n(this use is equivalent to lfs.attributes(filepath).aname, but the table is\nnot created and only one attribute is retrieved from the O.S.). The\nattributes are described as follows; attribute mode is a string, all the\nothers are numbers, and the time related attributes use the same time\nreference of os.time:\n dev: on Unix systems, this represents the device that the inode resides on.\n On Windows systems, represents the drive number of the disk containing\n the file\n ino: on Unix systems, this represents the inode number. On Windows systems\n this has no meaning\n mode: string representing the associated protection mode (the values could\n be file, directory, link, socket, named pipe, char device, block\n device or other)\n nlink: number of hard links to the file\n uid: user-id of owner (Unix only, always 0 on Windows)\n gid: group-id of owner (Unix only, always 0 on Windows)\n rdev: on Unix systems, represents the device type, for special file inodes.\n On Windows systems represents the same as dev\n access: time of last access\n modification: time of last data modification\n change: time of last file status change\n size: file size, in bytes\n blocks: block allocated for file; (Unix only)\n blksize: optimal file system I/O blocksize; (Unix only)\n\nThis function uses stat internally thus if the given filepath is a symbolic\nlink, it is followed (if it points to another link the chain is followed\nrecursively) and the information is about the file it refers to. To obtain\ninformation about the link itself, see function lfs.symlinkattributes.
-auto_c_active buffer.auto_c_active(buffer)\nReturns whether or not the autocompletion or user list is visible.\n@param buffer The buffer.\n@return bool
+auto_c_active buffer.auto_c_active(buffer)\nReturns whether or not an autocompletion or user list is visible.\n@param buffer The buffer.\n@return bool
auto_c_auto_hide buffer.auto_c_auto_hide (bool)\nAutomatically cancel the autocompletion or user list when no entries match\ntyped text.\nThe default value is `true`.
auto_c_cancel buffer.auto_c_cancel(buffer)\nCancels the autocompletion or user list.\n@param buffer The buffer.
auto_c_cancel_at_start buffer.auto_c_cancel_at_start (bool)\nCancel an autocompletion or user list when backspacing to a position before\nwhere autocompletion started (instead of before the word being completed)\nor where the user list was shown.\nThe default value is `true`.
@@ -429,12 +433,12 @@ auto_c_max_height buffer.auto_c_max_height (number)\nThe maximum number of items
auto_c_max_width buffer.auto_c_max_width (number)\nThe maximum number of characters per item to show in autocompletion and\nuser lists.\nThe default value is `0`, which automatically sizes the width to fit the\nlongest item.
auto_c_order buffer.auto_c_order (number)\nThe order setting for autocompletion and user lists.\n\n* `buffer.ORDER_PRESORTED`\n Lists passed to `buffer.auto_c_show` are in sorted,\n alphabetical order.\n* `buffer.ORDER_PERFORMSORT`\n Sort autocompletion lists passed to `buffer.auto_c_show`.\n* `buffer.ORDER_CUSTOM`\n Lists passed to `buffer.auto_c_show` are already in a\n custom order.\n\nThe default value is `buffer.ORDER_PRESORTED`.
auto_c_pos_start buffer.auto_c_pos_start(buffer)\nReturns the position where autocompletion started or where the user list was\nshown.\n@param buffer The buffer.\n@return number
-auto_c_select buffer.auto_c_select(buffer, string)\nSelects the first item in the autocompletion or user list that starts with\n*string*, considering case sensitiveness based on\n`buffer.auto_c_ignore_case`.\n@param buffer The buffer.\n@param string The item in the list to select.
-auto_c_separator buffer.auto_c_separator (number)\nThe byte value of the character that separates autocompletion and user list\nitems.\nThe default value is `32` (' ').
+auto_c_select buffer.auto_c_select(buffer, prefix)\nSelects the first item in the autocompletion or user list that starts with\nstring *prefix*, using case sensitivity setting `buffer.auto_c_ignore_case`.\n@param buffer The buffer.\n@param prefix The item in the list to select.
+auto_c_separator buffer.auto_c_separator (number)\nThe byte value of the character that separates autocompletion and user list\nlist items.\nThe default value is `32` (' ').
auto_c_show buffer.auto_c_show(buffer, len_entered, item_list)\nDisplays an autocompletion list constructed from string *item_list*, whose\nitems are delimited by `buffer.auto_c_separator` characters, using\n*len_entered* number of characters behind the caret as the prefix of the word\nto autocomplete.\nThe sorted order of *item_list*, `buffer.auto_c_order`, must have already\nbeen defined.\n@param buffer The buffer.\n@param len_entered The number of characters before the caret used to provide\n the context.\n@param item_list The sorted string of words to show, separated by\n `buffer.auto_c_separator` characters (initially spaces).
auto_c_stops buffer.auto_c_stops(buffer, chars)\nDefines string *chars* as the set of characters that cancels an\nautocompletion or user list when typed.\nThe default set is an empty string.\n@param buffer The buffer.\n@param chars The string of characters that cancel autocompletion. This string\n is empty by default.
auto_c_type_separator buffer.auto_c_type_separator (number)\nThe character byte that separates autocompletion and user list items and\ntheir image types.\nAutocompletion and user list items can display both an image and text.\nRegister images and their types using\n`buffer:register_image()` or\n`buffer:register_rgba_image()` before appending\nimage types to list items after type separator characters.\nThe default value is 63 ('?').
-autocomplete_word textadept.editing.autocomplete_word(words)\nDisplays an autocompletion list, built from the set of string words *words*\nand existing words in the buffer, for the word behind the caret, returning\n`true` if completions were found.\n@param words Optional list of words considered to be in the buffer,\n even if they are not. Words may contain registered images.\n@return `true` if there were completions to show; `false` otherwise.\n@see buffer.word_chars
+autocomplete_word textadept.editing.autocomplete_word(words)\nDisplays an autocompletion list, built from the set of words in string\n*words* and existing words in the buffer, for the word behind the caret,\nreturning `true` if completions were found.\n@param words Optional list of words considered to be in the buffer,\n even if they are not. Words may contain registered images.\n@return `true` if there were completions to show; `false` otherwise.\n@see buffer.word_chars
back_space_un_indents buffer.back_space_un_indents (bool)\nUn-indent text when backspacing within indentation.\nThe default value is `false`.
back_tab buffer.back_tab(buffer)\nUn-indents the text on the selected lines.\n@param buffer The buffer.
band bit32.band(...)\nReturns the bitwise "and" of its operands.
@@ -461,14 +465,14 @@ byte string.byte(s [, i [, j]])\nReturns the internal numerical codes of the cha
call_tip_active buffer.call_tip_active(buffer)\nReturns whether or not the call tip is visible.\n@param buffer The buffer.\n@return bool
call_tip_cancel buffer.call_tip_cancel(buffer)\nRemoves the call tip from view.\n@param buffer The buffer.
call_tip_fore_hlt buffer.call_tip_fore_hlt (number, Write-only)\nThe call tip's highlighted text foreground color, in "0xBBGGRR" format.
-call_tip_pos_start buffer.call_tip_pos_start(buffer)\nReturns the position where the call tip displayed at.\n@param buffer The buffer.\n@return number
-call_tip_position buffer.call_tip_position (boolean)\nDisplay the call tip above instead of below the text.\nThe default value is `false`.
+call_tip_pos_start buffer.call_tip_pos_start(buffer)\nReturns the call tip's display position.\n@param buffer The buffer.\n@return number
+call_tip_position buffer.call_tip_position (boolean)\nDisplay the call tip above the current line instead of below it.\nThe default value is `false`.
call_tip_set_hlt buffer.call_tip_set_hlt(buffer, start_pos, end_pos)\nHighlights the call tip text between positions *start_pos*, starting from\nzero, to *end_pos* with the color `buffer.call_tip_fore_hlt`.\n@param buffer The buffer.\n@param start_pos The start position in the call tip text to highlight.\n@param end_pos The end position in the call tip text to highlight.
-call_tip_show buffer.call_tip_show(buffer, pos, text)\nDisplays a call tip containing string *text* for the word behind position\n*pos*.\nAny "\001" or "\002" bytes in *text* are replaced by arrow visuals,\nindicating the word has more than one call tip.\n@param buffer The buffer.\n@param pos The position in *buffer* to show the call tip at.\n@param text The call tip text to show.
+call_tip_show buffer.call_tip_show(buffer, pos, text)\nDisplays a call tip containing string *text* for the word behind position\n*pos*.\nAny "\001" or "\002" bytes in *text* are replaced by up or down arrow\nvisuals, respectively, indicating the word has more than one call tip.\n@param buffer The buffer.\n@param pos The position in *buffer* to show the call tip at.\n@param text The call tip text to show.
call_tip_use_style buffer.call_tip_use_style (number)\nThe pixel width of tab characters in call tips.\nWhen non-zero, also enables the use of style number `buffer.STYLE_CALLTIP`\ninstead of `buffer.STYLE_DEFAULT` for call tip styles.\nThe default value is `0`.
can_redo buffer.can_redo(buffer)\nReturns whether or not there is an action to redo.\n@param buffer The buffer.\n@return bool
can_undo buffer.can_undo(buffer)\nReturns whether or not there is an action to undo.\n@param buffer The buffer.\n@return bool
-cancel buffer.cancel(buffer)\nCancels the active call tip, autocompletion or user list, selection mode,\netc.\n@param buffer The buffer.
+cancel buffer.cancel(buffer)\nCancels the active selection mode, autocompletion or user list, call tip,\netc.\n@param buffer The buffer.
caret_fore buffer.caret_fore (number)\nThe caret's foreground color, in "0xBBGGRR" format.
caret_line_back buffer.caret_line_back (number)\nThe background color, in "0xBBGGRR" format, of the line containing the\ncaret.
caret_line_back_alpha buffer.caret_line_back_alpha (number)\nThe caret line's background alpha value, ranging from `0` (transparent) to\n`255` (opaque).\nThe default value is `buffer.ALPHA_NOALPHA`, for no alpha.
@@ -479,15 +483,13 @@ caret_sticky buffer.caret_sticky (number)\nThe caret's preferred horizontal posi
caret_style buffer.caret_style (number)\nThe caret's visual style.\n\n* `buffer.CARETSTYLE_INVISIBLE`\n No caret.\n* `buffer.CARETSTYLE_LINE`\n A line caret.\n* `buffer.CARETSTYLE_BLOCK`\n A block caret.\n\nThe default value is `buffer.CARETSTYLE_LINE`.
caret_width buffer.caret_width (number)\nThe line caret's pixel width in insert mode, either `0`, `1`, `2`, or `3`.\nThe default value is `1`.
ceil math.ceil(x)\nReturns the smallest integer larger than or equal to `x`.
-change_lexer_state buffer.change_lexer_state(buffer, start_pos, end_pos)\nInstructs the lexer to reprocess the range of text between *start_pos* and\n*end_pos*.\n@param buffer The buffer.\n@param start_pos The start position of the range of text in *buffer* to\n reprocess.\n@param end_pos The end position of the range of text in *buffer* to\n reprocess.
+change_lexer_state buffer.change_lexer_state(buffer, start_pos, end_pos)\nInstructs the lexer to reprocess the range of text between *start_pos* and\n*end_pos* due to a change in state.\n@param buffer The buffer.\n@param start_pos The start position of the range of text in *buffer* to\n reprocess.\n@param end_pos The end position of the range of text in *buffer* to\n reprocess.
char string.char(···)\nReceives zero or more integers. Returns a string with length equal to\nthe number of arguments, in which each character has the internal numerical\ncode equal to its corresponding argument.\n\nNumerical codes are not necessarily portable across platforms.
char_at buffer.char_at (table, Read-only)\nTable of character bytes at positions starting from zero.
char_left buffer.char_left(buffer)\nMoves the caret left one character.\n@param buffer The buffer.
char_left_extend buffer.char_left_extend(buffer)\nMoves the caret left one character, extending the selected text to the new\nposition.\n@param buffer The buffer.
char_left_rect_extend buffer.char_left_rect_extend(buffer)\nMoves the caret left one character, extending the rectangular selection to\nthe new position.\n@param buffer The buffer.
char_matches textadept.editing.char_matches (table)\nMap of auto-paired characters like parentheses, brackets, braces, and quotes,\nwith language-specific auto-paired character maps assigned to a lexer name\nkey.\nThe ASCII values of opening characters are assigned to strings containing\ncomplement characters. The default auto-paired characters are "()", "[]",\n"{}", "''", and """".\n@see AUTOPAIR
-char_position_from_point buffer.char_position_from_point(buffer, x, y)\nReturns the position closest to view coordinates *x* and *y*.\n@param buffer The buffer.\n@param x The x-coordinate in the view to use.\n@param y The y-coordinate in the view to use.\n@return number
-char_position_from_point_close buffer.char_position_from_point_close(buffer, x, y)\nReturns the position closest to view coordinates *x* and *y*, or `-1` if the\npoint is outside the window or not close to any text.\n@param buffer The buffer.\n@param x The x-coordinate in the view to use.\n@param y The y-coordinate in the view to use.\n@return number
char_right buffer.char_right(buffer)\nMoves the caret right one character.\n@param buffer The buffer.
char_right_extend buffer.char_right_extend(buffer)\nMoves the caret right one character, extending the selected text to the new\nposition.\n@param buffer The buffer.
char_right_rect_extend buffer.char_right_rect_extend(buffer)\nMoves the caret right one character, extending the rectangular selection to\nthe new position.\n@param buffer The buffer.
@@ -501,11 +503,11 @@ clear_all buffer.clear_all(buffer)\nDeletes the buffer's text.\n@param buffer Th
clear_document_style buffer.clear_document_style(buffer)\nClears all styling and folding information.\n@param buffer The buffer.
clear_registered_images buffer.clear_registered_images(buffer)\nClears all images registered using `buffer:register_image()` and\n`buffer:register_rgba_image()`.\n@param buffer The buffer.
clear_selections buffer.clear_selections(buffer)\nRemoves all selections and moves the caret to the beginning of the buffer.\n@param buffer The buffer.
-clipboard_text ui.clipboard_text (string, Read-only)\nThe text on the clipboard.
+clipboard_text ui.clipboard_text (string)\nThe text on the clipboard.
clock os.clock()\nReturns an approximation of the amount in seconds of CPU time used by\nthe program.
close file:close()\nCloses `file`. Note that files are automatically closed when their\nhandles are garbage collected, but that takes an unpredictable amount of\ntime to happen.\n\nWhen closing a file handle created with `io.popen`, `file:close` returns the\nsame values returned by `os.execute`.
close io.close([file])\nEquivalent to `file:close()`. Without a `file`, closes the default\noutput file.
-close_all_buffers io.close_all_buffers()\nCloses all open buffers, prompting the user to continue with unsaved buffers,\nand returning `true` if the user did not cancel.\nNo buffers are saved automatically. They must be saved manually.\n@return `true` if user did not cancel.\n@see io.close_buffer
+close_all_buffers io.close_all_buffers()\nCloses all open buffers, prompting the user to continue if there are unsaved\nbuffers, and returns `true` if the user did not cancel.\nNo buffers are saved automatically. They must be saved manually.\n@return `true` if user did not cancel.\n@see io.close_buffer
close_buffer io.close_buffer()\nCloses the current buffer, prompting the user to continue if there are\nunsaved changes, and returns `true` if the buffer was closed.\n@return `true` if the buffer was closed; `nil` otherwise.
cntrl lexer.cntrl (pattern)\nA pattern that matches any control character (ASCII codes 0 to 31).
collectgarbage _G.collectgarbage([opt [, arg]])\nThis function is a generic interface to the garbage collector. It\nperforms different functions according to its first argument, `opt`:\n "collect": performs a full garbage-collection cycle. This is the default\n option.\n "stop": stops automatic execution of the garbage collector.\n "restart": restarts automatic execution of the garbage collector.\n "count": returns the total memory in use by Lua (in Kbytes) and a second\n value with the total memory in bytes modulo 1024. The first value\n has a fractional part, so the following equality is always true:\n\n k, b = collectgarbage("count")\n assert(k*1024 == math.floor(k)*1024 + b)\n\n (The second result is useful when Lua is compiled with a non\n floating-point type for numbers.)\n "step": performs a garbage-collection step. The step "size" is controlled\n by `arg` (larger values mean more steps) in a non-specified way. If\n you want to control the step size you must experimentally tune the\n value of `arg`. Returns true if the step finished a collection\n cycle.\n "setpause": sets `arg` as the new value for the *pause* of the collector\n (see §2.5). Returns the previous value for *pause*.\n "setstepmul": sets `arg` as the new value for the *step multiplier*\n of the collector (see §2.5). Returns the previous value for\n *step*.\n "isrunning": returns a boolean that tells whether the collector is running\n (i.e., not stopped).\n "generational": changes the collector to generational mode. This is an\n experimental feature (see §2.5).\n "incremental": changes the collector to incremental mode. This is the\n default mode.
@@ -513,9 +515,9 @@ colourise buffer.colourise(buffer, start_pos, end_pos)\nInstructs the lexer to s
column buffer.column (table, Read-only)\nTable of column numbers, taking tab widths into account, for positions\nstarting from zero.
command_entry ui.command_entry (module)\nTextadept's Command Entry.
comment_string textadept.editing.comment_string (table)\nMap of lexer names to line comment strings for programming languages, used by\nthe `block_comment()` function.\nKeys are lexer names and values are either the language's line comment\nprefixes or block comment delimiters separated by a '|' character.\n@see block_comment
-compile textadept.run.compile()\nCompiles the file based on its extension or language, using the command from\nthe `compile_commands` table.\nEmits a `COMPILE_OUTPUT` event.\n@see compile_commands\n@see _G.events
-compile_commands textadept.run.compile_commands (table)\nMap of file extensions (excluding the leading '.') or lexer names to their\nassociated "compile" shell command line strings or functions returning such\nstrings.\nCommand line strings may have the following macros:\n\n + `%(filepath)`: The current file's full path.\n + `%(filedir)`: The current file's directory path.\n + `%(filename)`: The file's name, including its extension.\n + `%(filename_noext)`: The file's name, excluding its extension.
-complete textadept.adeptsense.complete(sense, only_fields, only_functions)\nShows an autocompletion list for the symbol behind the caret, returning\n`true` on success.\nIf either *only_fields* or *only_functions* is `true`, displays the limited\nset of completions.\n@param sense The Adeptsense returned by `adeptsense.new()`. If `nil`, uses\n the current language's Adeptsense (if it exists).\n@param only_fields Optional flag indicating whether or not to return a list\n of only fields. The default value is `false`.\n@param only_functions Optional flag indicating whether or not to return a\n list of only functions. The default value is `false`.\n@return `true` on success or `false`.\n@see get_symbol\n@see get_completions
+compile textadept.run.compile()\nCompiles the current file based on its extension or language, using the\ncommand from the `compile_commands` table.\nEmits a `COMPILE_OUTPUT` event.\n@see compile_commands\n@see _G.events
+compile_commands textadept.run.compile_commands (table)\nMap of file extensions (excluding the leading '.') or lexer names to their\nassociated "compile" shell command line strings or functions returning such\nstrings.\nCommand line strings may have the following macros:\n\n + `%(filepath)`: The current file's full path.\n + `%d` or `%(filedir)`: The current file's directory path.\n + `%f` or `%(filename)`: The file's name, including its extension.\n + `%e` or `%(filename_noext)`: The file's name, excluding its extension.
+complete textadept.adeptsense.complete(sense, only_fields, only_functions)\nShows an autocompletion list for the symbol behind the caret, returning\n`true` on success.\nIf either *only_fields* or *only_functions* is `true`, displays the\nappropriate subset of completions.\n@param sense The Adeptsense returned by `adeptsense.new()`. If `nil`, uses\n the current language's Adeptsense (if it exists).\n@param only_fields Optional flag indicating whether or not to return a list\n of only fields. The default value is `false`.\n@param only_functions Optional flag indicating whether or not to return a\n list of only functions. The default value is `false`.\n@return `true` on success or `false`.\n@see get_symbol\n@see get_completions
complete_lua ui.command_entry.complete_lua(code)\nShows a set of Lua code completions for string *code* or `entry_text`.\nCompletions are subject to an "abbreviated" environment where the `buffer`,\n`view`, and `ui` tables are also considered as globals.\n@param code The Lua code to complete. The default value is the value of\n `entry_text`.
completions textadept.adeptsense.completions (table)\nA list containing lists of possible completions for known symbols.\nEach symbol key has a table value that contains a list of field completions\nwith a `fields` key and a list of functions completions with a `functions`\nkey. This table is normally populated by `load_ctags()`, but can also be set\nby the user.
concat table.concat(list [, sep [, i [, j]]])\nGiven a list where all elements are strings or numbers, returns the string\n`list[i]..sep..list[i+1] ··· sep..list[j]`. The default value for `sep` is\nthe empty string, the default for `i` is 1, and the default for `j` is\n`#list`. If `i` is greater than `j`, returns the empty string.
@@ -523,7 +525,7 @@ config package.config (string)\nA string describing some compile-time configurat
connect events.connect(event, f, index)\nAdds function *f* to the set of event handlers for event *event* at position\n*index*.\n*event* may be any arbitrary string and does not need to have been previously\ndefined.\n@param event The string event name.\n@param f The Lua function to connect to *event*.\n@param index Optional index to insert the handler into.\n@usage events.connect('my_event', function(msg) ui.print(msg) end)\n@see disconnect
constants _SCINTILLA.constants (table)\nMap of Scintilla constant names to their numeric values.
context_menu ui.context_menu\nThe buffer's context menu, a `ui.menu()`.\n This is a low-level field. You probably want to use the higher-level\n `textadept.menu.set_contextmenu()`.
-contracted_fold_next buffer.contracted_fold_next(buffer, line_start)\nReturns the line number of the next contracted fold header line starting at\n*line_start*, or `-1`.\n@param buffer The buffer.\n@param line_start The line number in *buffer* to start at.\n@return number
+contracted_fold_next buffer.contracted_fold_next(buffer, line_start)\nReturns the line number of the next contracted fold point starting at line\nnumber *line_start*, or `-1`.\n@param buffer The buffer.\n@param line_start The line number in *buffer* to start at.\n@return number
control_structure_patterns _M.lua.control_structure_patterns (table)\nList of patterns for auto-`end` completion for control structures.\n@see try_to_autocomplete_end
control_structure_patterns _M.ruby.control_structure_patterns (table)\nPatterns for auto `end` completion for control structures.\n@see try_to_autocomplete_end
convert_eols buffer.convert_eols(buffer, mode)\nConverts all line endings to end of line mode *mode*.\n@param buffer The buffer.\n@param mode The line ending mode to convert to. Valid values are:\n * `buffer.EOL_CRLF`\n * `buffer.EOL_CR`\n * `buffer.EOL_LF`
@@ -535,11 +537,8 @@ copy_text buffer.copy_text(buffer, text)\nCopies string *text* to the clipboard.
coroutine _G.coroutine (module)\nLua coroutine module.
cos math.cos(x)\nReturns the cosine of `x` (assumed to be in radians).
cosh math.cosh(x)\nReturns the hyperbolic cosine of `x`.
-count_characters buffer.count_characters(buffer, start_pos, end_pos)\nReturns the number of whole characters between positions *start_pos* and\n*end_pos*.\n@param buffer The buffer.\n@param start_pos The start position of the range of text in *buffer* to start\n counting at.\n@param end_pos The end position of the range of text in *buffer* to stop\n counting at.\n@return number
+count_characters buffer.count_characters(buffer, start_pos, end_pos)\nReturns the number of whole characters, taking multi-byte characters into\naccount, between positions *start_pos* and\n*end_pos*.\n@param buffer The buffer.\n@param start_pos The start position of the range of text in *buffer* to start\n counting at.\n@param end_pos The end position of the range of text in *buffer* to stop\n counting at.\n@return number
cpath package.cpath (string)\nThe path used by `require` to search for a C loader.\nLua initializes the C path `package.cpath` in the same way it initializes\nthe Lua path `package.path`, using the environment variable `LUA_CPATH_5_2`\nor the environment variable `LUA_CPATH` or a default path defined in\n`luaconf.h`.
-cpp _G.keys.cpp (table)\nTable of C/C++-specific key bindings.
-cpp _G.snippets.cpp (table)\nTable of C/C++-specific snippets.
-cpp _M.cpp (module)\nThe cpp module.\nIt provides utilities for editing C/C++ code.
create coroutine.create(f)\nCreates a new coroutine, with body `f`. `f` must be a Lua\nfunction. Returns this new coroutine, an object with type `"thread"`.
css _G.keys.css (table)\nContainer for CSS-specific key bindings.
css _G.snippets.css (table)\nContainer for CSS-specific snippets.
@@ -549,7 +548,7 @@ current_pos buffer.current_pos (number)\nThe caret's position.\nWhen set, does n
currentdir lfs.currentdir()\nReturns a string with the current working directory or nil plus an error\nstring.
cursor buffer.cursor (number)\nThe display cursor type.\n\n* `buffer.CURSORNORMAL`\n The text insert cursor.\n* `buffer.CURSORARROW`\n The arrow cursor.\n* `buffer.CURSORWAIT`\n The wait cursor.\n* `buffer.CURSORREVERSEARROW`\n The reversed arrow cursor.\n\nThe default value is `buffer.CURSORNORMAL`.
cut buffer.cut(buffer)\nCuts the selected text to the clipboard.\nMultiple selections are copied in order with no delimiters. Rectangular\nselections are copied from top to bottom with line ending delimiters. Virtual\nspace is not copied.\n@param buffer The buffer.
-cwd textadept.run.cwd (string, Read-only)\nThe working directory for the most recently executed compile or run\ncommand.\nIt is used for going to error messages with relative file paths.
+cwd textadept.run.cwd (string, Read-only)\nThe most recently executed compile or run command's working directory.\nIt is used for going to error messages with relative file paths.
date os.date([format [, time]])\nReturns a string or a table containing date and time, formatted according\nto the given string `format`.\n\nIf the `time` argument is present, this is the time to be formatted\n(see the `os.time` function for a description of this value). Otherwise,\n`date` formats the current time.\n\nIf `format` starts with '`!`', then the date is formatted in Coordinated\nUniversal Time. After this optional character, if `format` is the string\n"`*t`", then `date` returns a table with the following fields: `year` (four\ndigits), `month` (1-12), `day` (1-31), `hour` (0-23), `min` (0-59), `sec`\n(0-61), `wday` (weekday, Sunday is 1), `yday` (day of the year), and `isdst`\n(daylight saving flag, a boolean). This last field may be absent if the\ninformation is not available.\n\nIf `format` is not "`*t`", then `date` returns the date as a string,\nformatted according to the same rules as the ANSI C function `strftime`.\n\nWhen called without arguments, `date` returns a reasonable date and time\nrepresentation that depends on the host system and on the current locale\n(that is, `os.date()` is equivalent to `os.date("%c")`).\n\nOn non-Posix systems, this function may be not thread safe because of its\nreliance on C function `gmtime` and C function `localtime`.
debug _G.debug (module)\nLua debug module.
debug debug.debug()\nEnters an interactive mode with the user, running each string that\nthe user enters. Using simple commands and other debug facilities,\nthe user can inspect global and local variables, change their values,\nevaluate expressions, and so on. A line containing only the word `cont`\nfinishes this function, so that the caller continues its execution.\n\nNote that commands for `debug.debug` are not lexically nested within any\nfunction and so have no direct access to local variables.
@@ -564,13 +563,13 @@ delete buffer.delete(buffer)\nDeletes the buffer.\n**Do not call this function.*
delete_back buffer.delete_back(buffer)\nDeletes the selected text or the character behind the caret.\n@param buffer The buffer.
delete_back_not_line buffer.delete_back_not_line(buffer)\nDeletes the selected text or the character behind the caret unless the caret\nis at the beginning of a line.\n@param buffer The buffer.
delete_range buffer.delete_range(buffer, pos, length)\nDeletes the range of text from position *pos* to *pos* + *length*.\n@param buffer The buffer.\n@param pos The start position of the range of text in *buffer* to delete.\n@param length The number of characters in the range of text to delete.
-delimited_range lexer.delimited_range(chars, single_line, no_escape, balanced)\nCreates and returns a pattern that matches a range of text bounded by\n*chars* characters.\nThis is a convenience function for matching more complicated delimited ranges\nlike strings with escape characters and balanced parentheses. *single_line*\nindicates whether or not ranges must be on a single line, *no_escape*\nindicates whether or not to treat '\' character as an escape character, and\n*balanced* indicates whether or not to handle balanced ranges like\nparentheses and requires *chars* to be composed of two characters.\n@param chars The character(s) that bound the matched range.\n@param single_line Optional flag indicating whether or not the range must be\n on a single line.\n@param no_escape Optional flag indicating whether or not the range end\n character may be escaped by a '\\' character.\n@param balanced Optional flag indicating whether or not to match a balanced\n range, like the "%b" Lua pattern. This flag only applies if *chars*\n consists of two different characters (e.g. "()").\n@usage local dq_str_escapes = l.delimited_range('"')\n@usage local dq_str_noescapes = l.delimited_range('"', false, true)\n@usage local unbalanced_parens = l.delimited_range('()')\n@usage local balanced_parens = l.delimited_range('()', false, false, true)\n@return pattern\n@see nested_pair
+delimited_range lexer.delimited_range(chars, single_line, no_escape, balanced)\nCreates and returns a pattern that matches a range of text bounded by\n*chars* characters.\nThis is a convenience function for matching more complicated delimited ranges\nlike strings with escape characters and balanced parentheses. *single_line*\nindicates whether or not the range must be on a single line, *no_escape*\nindicates whether or not to ignore '\' as an escape character, and *balanced*\nindicates whether or not to handle balanced ranges like parentheses and\nrequires *chars* to be composed of two characters.\n@param chars The character(s) that bound the matched range.\n@param single_line Optional flag indicating whether or not the range must be\n on a single line.\n@param no_escape Optional flag indicating whether or not the range end\n character may be escaped by a '\\' character.\n@param balanced Optional flag indicating whether or not to match a balanced\n range, like the "%b" Lua pattern. This flag only applies if *chars*\n consists of two different characters (e.g. "()").\n@usage local dq_str_escapes = l.delimited_range('"')\n@usage local dq_str_noescapes = l.delimited_range('"', false, true)\n@usage local unbalanced_parens = l.delimited_range('()')\n@usage local balanced_parens = l.delimited_range('()', false, false, true)\n@return pattern\n@see nested_pair
dialog ui.dialog(kind, ...)\nLow-level function for prompting the user with a gtdialogs of kind *kind*\nwith the given string and table arguments, returning a formatted string of\nthe dialog's output.\nYou probably want to use the higher-level functions in the `ui.dialogs`\nmodule.\nTable arguments containing strings are allowed and expanded in place. This is\nuseful for filtered list dialogs with many items.\n@param kind The kind of gtdialog.\n@param ... Parameters to the gtdialog.\n@return string gtdialog result.
dialogs ui.dialogs (module)\nProvides a set of interactive dialog prompts for user input.
difftime os.difftime(t2, t1)\nReturns the number of seconds from time `t1` to time `t2`. In POSIX,\nWindows, and some other systems, this value is exactly `t2`*-*`t1`.
digit lexer.digit (pattern)\nA pattern that matches any digit ('0'-'9').
dir lfs.dir(path)\nLua iterator over the entries of a given directory. Each time the iterator is\ncalled with dir_obj it returns a directory entry's name as a string, or nil\nif there are no more entries. You can also iterate by calling dir_obj:next(),\nand explicitly close the directory before the iteration finished with\ndir_obj:close(). Raises an error if path is not a directory.
-dir_foreach lfs.dir_foreach(dir, f, filter, exclude_FILTER, recursing)\nIterates over all files and sub-directories in directory *dir*, calling\nfunction *f* on each file found.\nFiles *f* is called on do not match any pattern in string or table *filter*,\nand, unless *exclude_FILTER* is `true`, `FILTER` as well. A filter table\ncontains Lua patterns that match filenames to exclude, an optional `folders`\nsub-table that contains patterns matching folders to exclude, and an optional\n`extensions` sub-table that contains raw file extensions to exclude. Any\npatterns starting with '!' exclude files and folders that do not match the\npattern that follows.\n@param dir The directory path to iterate over.\n@param f Function to call with each full file path found. If *f* returns\n `false` explicitly, iteration ceases.\n@param filter Optional filter for files and folders to exclude.\n@param exclude_FILTER Optional flag indicating whether or not to exclude the\n default filter `FILTER` in the search. If `false`, adds `FILTER` to\n *filter*.\n The default value is `false` to include the default filter.\n@param recursing Utility flag indicating whether or not this function has\n been recursively called. This flag is used and set internally, and should\n not be set otherwise.\n@see FILTER
+dir_foreach lfs.dir_foreach(dir, f, filter, exclude_FILTER, recursing)\nIterates over all files and sub-directories in directory *dir*, calling\nfunction *f* with each file found.\nFiles passed to *f* do not match any pattern in string or table *filter*,\nand, unless *exclude_FILTER* is `true`, `FILTER` as well. A filter table\ncontains Lua patterns that match filenames to exclude, an optional `folders`\nsub-table that contains patterns matching directories to exclude, and an\noptional `extensions` sub-table that contains raw file extensions to exclude.\nAny patterns starting with '!' exclude files and directories that do not\nmatch the pattern that follows.\n@param dir The directory path to iterate over.\n@param f Function to call with each full file path found. If *f* returns\n `false` explicitly, iteration ceases.\n@param filter Optional filter for files and directories to exclude.\n@param exclude_FILTER Optional flag indicating whether or not to exclude the\n default filter `FILTER` in the search. If `false`, adds `FILTER` to\n *filter*.\n The default value is `false` to include the default filter.\n@param recursing Utility flag indicating whether or not this function has\n been recursively called. This flag is used and set internally, and should\n not be set otherwise.\n@see FILTER
disconnect events.disconnect(event, f)\nRemoves function *f* from the set of handlers for event *event*.\n@param event The string event name.\n@param f The Lua function connected to *event*.\n@see connect
doc_line_from_visible buffer.doc_line_from_visible(buffer, display_line)\nReturns the actual line number of displayed line number *display_line*,\ntaking hidden lines into account.\nIf *display_line* is less than or equal to zero, returns `0`. If\n*display_line* is greater than or equal to the number of displayed lines,\nreturns `buffer.line_count`.\n@param buffer The buffer.\n@param display_line The display line number to use.\n@return number
document_end buffer.document_end(buffer)\nMoves the caret to the end of the buffer.\n@param buffer The buffer.
@@ -578,14 +577,14 @@ document_end_extend buffer.document_end_extend(buffer)\nMoves the caret to the e
document_start buffer.document_start(buffer)\nMoves the caret to the beginning of the buffer.\n@param buffer The buffer.
document_start_extend buffer.document_start_extend(buffer)\nMoves the caret to the beginning of the buffer, extending the selected text\nto the new position.\n@param buffer The buffer.
dofile _G.dofile([filename])\nOpens the named file and executes its contents as a Lua chunk. When\ncalled without arguments,\n`dofile` executes the contents of the standard input (`stdin`). Returns\nall values returned by the chunk. In case of errors, `dofile` propagates\nthe error to its caller (that is, `dofile` does not run in protected mode).
-dropdown ui.dialogs.dropdown(options)\nPrompts the user with a drop down item selection dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\nindex of the selected item or, if *options*.`string_output` is `true`, the\nselected button's label along with the selected item's text.\nIf *options*.`exit_onchange` caused the dialog to close, returns `4` along\nwith either the selected item's index or text. If the dialog timed out,\nreturns `0` or `"timeout"`. If the user canceled the dialog, returns `-1` or\n`"delete"`.\n@param options Table of key-value option pairs for the drop down dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `items`: The list of string items to show in the drop down.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `exit_onchange`: Close the dialog after selecting a new item. The default\n value is `false`.\n * `select`: The index of the initially selected list item. The default\n value is `1`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status along with the selected item's text instead of the button's index\n or the exit code along with the item's index. The default value is\n `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.dropdown{title = 'Select Encoding', width = 200,\n items = io.encodings, string_output = true}\n@return selected button or exit code, selected item
+dropdown ui.dialogs.dropdown(options)\nPrompts the user with a drop down item selection dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\nindex of the selected item or, if *options*.`string_output` is `true`, the\nselected button's label along with the selected item's text.\nIf *options*.`exit_onchange` caused the dialog to close, returns `4` along\nwith either the selected item's index or text. If the dialog timed out,\nreturns `0` or `"timeout"`. If the user canceled the dialog, returns `-1` or\n`"delete"`.\n@param options Table of key-value option pairs for the drop down dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `items`: The list of string items to show in the drop down.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `exit_onchange`: Close the dialog after selecting a new item. The default\n value is `false`.\n * `select`: The index of the initially selected list item. The default\n value is `1`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status along with the selected item's text instead of the button's index\n or the dialog's exit code along with the item's index. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.dropdown{title = 'Select Encoding', width = 200,\n items = io.encodings, string_output = true}\n@return selected button or exit code, selected item
dump string.dump(function)\nReturns a string containing a binary representation of the given\nfunction, so that a later `load` on this string returns a copy of the\nfunction (but with new upvalues).
-edge_colour buffer.edge_colour (number)\nThe color, in "0xBBGGRR" format, marking long lines.
-edge_column buffer.edge_column (number)\nThe column number to start marking long lines at.
-edge_mode buffer.edge_mode (number)\nThe long line mark mode.\n\n* `buffer.EDGE_NONE`\n Long lines are not marked.\n* `buffer.EDGE_LINE`\n Draw a vertical line whose color is `buffer.edge_colour`\n at column `buffer.edge_column`.\n* `buffer.EDGE_BACKGROUND`\n Change the background color of characters after column\n `buffer.edge_column` to\n `buffer.edge_colour`.
+edge_colour buffer.edge_colour (number)\nThe color, in "0xBBGGRR" format, of the edge or background for long lines\nbased on `buffer.edge_mode`.
+edge_column buffer.edge_column (number)\nThe column number to mark long lines at.
+edge_mode buffer.edge_mode (number)\nThe long line mark mode.\n\n* `buffer.EDGE_NONE`\n Long lines are not marked.\n* `buffer.EDGE_LINE`\n Draw a vertical line whose color is `buffer.edge_colour`\n at column `buffer.edge_column`.\n* `buffer.EDGE_BACKGROUND`\n Change the background color of text after column\n `buffer.edge_column` to\n `buffer.edge_colour`.
edit_toggle_overtype buffer.edit_toggle_overtype(buffer)\nToggles `buffer.overtype`.\n@param buffer The buffer.
editing textadept.editing (module)\nEditing features for Textadept.
-embed_lexer lexer.embed_lexer(parent, child, start_rule, end_rule)\nEmbeds child lexer *child* in parent *parent* with *start_rule* and\n*end_rule*, patterns that signal the beginning and end of the embedded lexer,\nrespectively.\n@param parent The parent lexer.\n@param child The child lexer.\n@param start_rule The pattern that signals the beginning of the embedded\n lexer.\n@param end_rule The pattern that signals the end of the embedded lexer.\n@usage l.embed_lexer(M, css, css_start_rule, css_end_rule)\n@usage l.embed_lexer(html, M, php_start_rule, php_end_rule)\n@usage l.embed_lexer(html, ruby, ruby_start_rule, ruby_end_rule)
+embed_lexer lexer.embed_lexer(parent, child, start_rule, end_rule)\nEmbeds child lexer *child* in parent lexer *parent* using patterns\n*start_rule* and *end_rule*, which signal the beginning and end of the\nembedded lexer, respectively.\n@param parent The parent lexer.\n@param child The child lexer.\n@param start_rule The pattern that signals the beginning of the embedded\n lexer.\n@param end_rule The pattern that signals the end of the embedded lexer.\n@usage l.embed_lexer(M, css, css_start_rule, css_end_rule)\n@usage l.embed_lexer(html, M, php_start_rule, php_end_rule)\n@usage l.embed_lexer(html, ruby, ruby_start_rule, ruby_end_rule)
emit events.emit(event, ...)\nSequentially calls all handler functions for event *event* with the given\narguments.\n*event* may be any arbitrary string and does not need to have been previously\ndefined. If any handler explicitly returns `true` or `false`, `emit()`\nreturns that value and ceases to call subsequent handlers. This is useful for\nstopping the propagation of an event like a keypress after it has been\nhandled.\n@param event The string event name.\n@param ... Arguments passed to the handler.\n@usage events.emit('my_event', 'my message')\n@return `true` or `false` if any handler explicitly returned such; `nil`\n otherwise.
empty_undo_buffer buffer.empty_undo_buffer(buffer)\nDeletes the undo and redo history.\n@param buffer The buffer.
enclose textadept.editing.enclose(left, right)\nEncloses the selected text or the current word within strings *left* and\n*right*.\n@param left The left part of the enclosure.\n@param right The right part of the enclosure.
@@ -593,13 +592,13 @@ encoding buffer.encoding (string or nil)\nThe string encoding of the file, or `n
encoding_bom buffer.encoding_bom (string)\nThe byte-order mark, if any, of the file.
encodings io.encodings (table)\nList of encodings to attempt to decode files as.\nYou should add to this list if you get a "Conversion failed" error when\ntrying to open a file whose encoding is not recognized. Valid encodings are\nGNU iconv's encodings and include:\n\n * European: ASCII, ISO-8859-{1,2,3,4,5,7,9,10,13,14,15,16}, KOI8-R, KOI8-U,\n KOI8-RU, CP{1250,1251,1252,1253,1254,1257}, CP{850,866,1131},\n Mac{Roman,CentralEurope,Iceland,Croatian,Romania},\n Mac{Cyrillic,Ukraine,Greek,Turkish}, Macintosh.\n * Semitic: ISO-8859-{6,8}, CP{1255,1256}, CP862, Mac{Hebrew,Arabic}.\n * Japanese: EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP, ISO-2022-JP-2,\n ISO-2022-JP-1.\n * Chinese: EUC-CN, HZ, GBK, CP936, GB18030, EUC-TW, BIG5, CP950,\n BIG5-HKSCS, BIG5-HKSCS:2004, BIG5-HKSCS:2001, BIG5-HKSCS:1999,\n ISO-2022-CN, ISO-2022-CN-EXT.\n * Korean: EUC-KR, CP949, ISO-2022-KR, JOHAB.\n * Armenian: ARMSCII-8.\n * Georgian: Georgian-Academy, Georgian-PS.\n * Tajik: KOI8-T.\n * Kazakh: PT154, RK1048.\n * Thai: ISO-8859-11, TIS-620, CP874, MacThai.\n * Laotian: MuleLao-1, CP1133.\n * Vietnamese: VISCII, TCVN, CP1258.\n * Unicode: UTF-8, UCS-2, UCS-2BE, UCS-2LE, UCS-4, UCS-4BE, UCS-4LE, UTF-16,\n UTF-16BE, UTF-16LE, UTF-32, UTF-32BE, UTF-32LE, UTF-7, C99, JAVA.
end_at_last_line buffer.end_at_last_line (bool)\nDisable scrolling past the last line.\nThe default value is `true`.
-end_styled buffer.end_styled (number, Read-only)\nThe last correctly styled character's position.
+end_styled buffer.end_styled (number, Read-only)\nThe current styling position or the last correctly styled character's\nposition.
end_undo_action buffer.end_undo_action(buffer)\nEnds a sequence of actions to undo or redo as a single action.\n@param buffer The buffer.
-ensure_visible buffer.ensure_visible(buffer, line)\nEnsures line number *line* is visible by expanding any fold header lines\nhiding it.\n@param buffer The buffer.\n@param line The line number in *buffer* to ensure visible.
-ensure_visible_enforce_policy buffer.ensure_visible_enforce_policy(buffer, line)\nEnsures line number *line* is visible by expanding any fold header lines\nhiding it and applies the vertical caret policy set with\n`buffer:set_visible_policy()`.\n@param buffer The buffer.\n@param line The line number in *buffer* to ensure visible.
+ensure_visible buffer.ensure_visible(buffer, line)\nEnsures line number *line* is visible by expanding any fold points hiding it.\n@param buffer The buffer.\n@param line The line number in *buffer* to ensure visible.
+ensure_visible_enforce_policy buffer.ensure_visible_enforce_policy(buffer, line)\nEnsures line number *line* is visible by expanding any fold points hiding it\nbased on the vertical caret policy previously defined in\n`buffer:set_visible_policy()`.\n@param buffer The buffer.\n@param line The line number in *buffer* to ensure visible.
enter_mode ui.command_entry.enter_mode(mode)\nOpens the command entry in key mode *mode*.\nKey bindings will be looked up in `keys[mode]` instead of `keys`. The `Esc`\n(`⎋` on Mac OSX | `Esc` in curses) key exits the current mode, closes the\ncommand entry, and restores normal key lookup.\nThis function is useful for binding keys to enter a command entry mode.\n@param mode The key mode to enter into, or `nil` to exit the current mode.\n@usage keys['ce'] = {ui.command_entry.enter_mode, 'command_entry'}\n@see _G.keys.MODE
entry_text ui.command_entry.entry_text (string)\nThe text in the command entry.
-eol_mode buffer.eol_mode (number)\nThe current end of line mode. Changing the mode does not convert existing\nline endings. Use `buffer:convert_eols()` to do so.\n\n* `buffer.EOL_CRLF`\n Carriage return with line feed ("\r\n").\n* `buffer.EOL_CR`\n Carriage return ("\r").\n* `buffer.EOL_LF`\n Line feed ("\n").\n\nThe default value is `buffer.EOL_CRLF` on Windows platforms,\n`buffer.EOL_LF` otherwise.
+eol_mode buffer.eol_mode (number)\nThe current end of line mode. Changing the current mode does not convert\nexisting line endings. Use `buffer:convert_eols()` to do\nso.\n\n* `buffer.EOL_CRLF`\n Carriage return with line feed ("\r\n").\n* `buffer.EOL_CR`\n Carriage return ("\r").\n* `buffer.EOL_LF`\n Line feed ("\n").\n\nThe default value is `buffer.EOL_CRLF` on Windows platforms,\n`buffer.EOL_LF` otherwise.
error _G.error(message [, level])\nTerminates the last protected function called and returns `message`\nas the error message. Function `error` never returns.\n\nUsually, `error` adds some information about the error position at the\nbeginning of the message, if the message is a string. The `level` argument\nspecifies how to get the error position. With level 1 (the default), the\nerror position is where the `error` function was called. Level 2 points the\nerror to where the function that called `error` was called; and so on.\nPassing a level 0 avoids the addition of error position information to the\nmessage.
error_patterns textadept.run.error_patterns (table)\nList of warning and error string patterns that match various compile and run\nwarnings and errors.\nPatterns contain filename, line number, and optional warning or error message\ncaptures for single lines. When a warning or error message is double-clicked,\nthe user is taken to the point of warning/error.\nWhen adding to this list, use `(.-)` to match filenames and `(%d+)` to match\nline numbers. Also keep in mind that patterns are matched in sequential\norder; once a pattern matches, no more are tried.
events _G.events (module)\nTextadept's core event structure and handlers.
@@ -607,23 +606,22 @@ execute os.execute([command])\nThis function is equivalent to the ANSI C functio
execute_lua ui.command_entry.execute_lua(code)\nExecutes string *code* as Lua code subject to an "abbreviated" environment\nwhere the contents of the `buffer`, `view`, and `ui` tables are also\nconsidered as global functions and fields.\nPrints the results of '=' expressions like in the Lua prompt.\n@param code The Lua code to execute.
exit os.exit([code [, close]])\nCalls the ANSI C function `exit` to terminate the host program. If `code` is\n`true`, the returned status is `EXIT_SUCCESS`; if `code` is `false`, the\nreturned status is `EXIT_FAILURE`; if `code` is a number, the returned status\nis this number. The default value for `code` is `true`.\n\nIf the optional second argument `close` is true, closes the Lua state before\nexiting.
exp math.exp(x)\nReturns the value *e^x*.
-expand_children buffer.expand_children(buffer, line, level)\nExpands the fold states of the fold header on line number *line* and its\nchildren with fold level *level*.\n@param buffer The buffer.\n@param line The line number in *buffer* to expand the folds for.\n@param level The previous fold level of *line*, not the current one. This is\n because this function is used to respond to changes in a line's fold level\n or fold header status, so a new fold level has already been set.
extend lexer.extend (pattern)\nA pattern that matches any ASCII extended character (codes 0 to 255).
extensions textadept.file_types.extensions (table)\nMap of file extensions (excluding the leading '.') to their associated\nlexer names.\nIf the file type is not recognized by shebang words or first-line patterns,\neach file extension is matched against the file's extension.
-extra_ascent buffer.extra_ascent (number)\nThe amount of pixel padding above line text.\nThe default value is `0`.
-extra_descent buffer.extra_descent (number)\nThe amount of pixel padding below line text.\nThe default is `0`.
+extra_ascent buffer.extra_ascent (number)\nThe amount of pixel padding above lines.\nThe default value is `0`.
+extra_descent buffer.extra_descent (number)\nThe amount of pixel padding below lines.\nThe default is `0`.
extract bit32.extract(n, field [, width])\nReturns the unsigned number formed by the bits `field` to `field + width - 1`\nfrom `n`. Bits are numbered from 0 (least significant) to 31 (most\nsignificant). All accessed bits must be in the range [0, 31].\n\nThe default for `width` is 1.
file_types textadept.file_types (module)\nHandles file type detection for Textadept.
filename buffer.filename (string)\nThe absolute file path associated with the buffer.
filesave ui.dialogs.filesave(options)\nPrompts the user with a file save dialog defined by dialog options table\n*options*, returning the string file chosen.\nIf the user canceled the dialog, returns `nil`.\n@param options Table of key-value option pairs for the dialog.\n\n * `title`: The dialog's title text.\n * `with_directory`: The initial filesystem directory to show.\n * `with_file`: The initially chosen filename. This option requires\n `with_directory` to be set.\n * `with_extension`: The list of extensions selectable files must have.\n * `no_create_directories`: Prevent the user from creating new directories.\n The default value is `false`.\n@return filename or nil
fileselect ui.dialogs.fileselect(options)\nPrompts the user with a file selection dialog defined by dialog options\ntable *options*, returning the string file selected or, if\n*options*.`select_multiple` is `true`, the list of files selected.\nIf the user canceled the dialog, returns `nil`.\n@param options Table of key-value option pairs for the dialog.\n\n * `title`: The dialog's title text.\n * `with_directory`: The initial filesystem directory to show.\n * `with_file`: The initially selected filename. This option requires\n `with_directory` to be set.\n * `with_extension`: The list of extensions selectable files must have.\n * `select_multiple`: Allow the user to select multiple files. The default\n value is `false`.\n * `select_only_directories`: Only allow the user to select directories. The\n default value is `false`.\n@usage ui.dialogs.fileselect{title = 'Open C File', with_directory = _HOME,\n with_extension = {'c', 'h'}, select_multiple = true}\n@return filename, list of filenames, or nil
filter_through textadept.editing.filter_through(command)\nPasses the selected text or all buffer text to string shell command *command*\nas standard input (stdin) and replaces the input text with the command's\nstandard output (stdout).\nStandard input is as follows:\n\n1. If text is selected and spans multiple lines, all text on the lines\ncontaining the selection is passed as stdin. However, if the end of the\nselection is at the beginning of a line, only the line ending delimiters from\nthe previous line are included. The rest of the line is excluded.\n2. If text is selected and spans a single line, only the selected text is\nused.\n3. If no text is selected, the entire buffer is used.\n@param command The Linux, BSD, Mac OSX, or Windows shell command to filter\n text through.
-filteredlist ui.dialogs.filteredlist(options)\nPrompts the user with a filtered list item selection dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\nindex(es) of the selected item(s) (depending on whether or not\n*options*.`select_multiple` is `true`) or, if *options*.`string_output` is\n`true`, the selected button's label along with the selected item's or items'\ntext.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\nSpaces in the filter text are treated as wildcards.\n@param options Table of key-value option pairs for the drop down dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `columns`: The list of string column names for list rows.\n * `items`: The list of string items to show in the drop down.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `select_multiple`: Allow the user to select multiple items. The default\n value is `false`.\n * `search_column`: The column number to filter the input text against. The\n default value is `1`. This option requires `columns` to be set and\n contain at least *n* column names.\n * `output_column`: The column number to use for `string_output`. The\n default value is `1`. This option requires `columns` to be set and\n contain at least *n* column names.\n * `string_output`: Return the selected button's label or the dialog's exit\n status along with the selected item's text instead of the button's index\n or the exit code along with the item's index. The default value is\n `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.filteredlist{title = 'Title', columns = {'Foo', 'Bar'},\n items = {'a', 'b', 'c', 'd'}}\n@return selected button or exit code, selected item or list of selected items
+filteredlist ui.dialogs.filteredlist(options)\nPrompts the user with a filtered list item selection dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\nindex(es) of the selected item(s) (depending on whether or not\n*options*.`select_multiple` is `true`) or, if *options*.`string_output` is\n`true`, the selected button's label along with the selected item's or items'\ntext.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\nSpaces in the filter text are treated as wildcards.\n@param options Table of key-value option pairs for the drop down dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `columns`: The list of string column names for list rows.\n * `items`: The list of string items to show in the drop down.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `select_multiple`: Allow the user to select multiple items. The default\n value is `false`.\n * `search_column`: The column number to filter the input text against. The\n default value is `1`. This option requires `columns` to be set and\n contain at least *n* column names.\n * `output_column`: The column number to use for `string_output`. The\n default value is `1`. This option requires `columns` to be set and\n contain at least *n* column names.\n * `string_output`: Return the selected button's label or the dialog's exit\n status along with the selected item's text instead of the button's index\n or the dialog's exit code along with the item's index. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.filteredlist{title = 'Title', columns = {'Foo', 'Bar'},\n items = {'a', 'b', 'c', 'd'}}\n@return selected button or exit code, selected item or list of selected items
find string.find(s, pattern [, init [, plain]])\nLooks for the first match of `pattern` in the string `s`. If it finds a\nmatch, then `find` returns the indices of `s` where this occurrence starts\nand ends; otherwise, it returns nil. A third, optional numerical argument\n`init` specifies where to start the search; its default value is 1 and\ncan be negative. A value of true as a fourth, optional argument `plain`\nturns off the pattern matching facilities, so the function does a plain\n"find substring" operation, with no characters in `pattern` being considered\nmagic. Note that if `plain` is given, then `init` must be given as well.\n\nIf the pattern has captures, then in a successful match the captured values\nare also returned, after the two indices.
find ui.find (module)\nTextadept's Find & Replace pane.
find_column buffer.find_column(buffer, line, column)\nReturns the position of column number *column* on line number *line*, taking\ntab and multi-byte characters into account, or the position at the end of\nline *line*.\n@param buffer The buffer.\n@param line The line number in *buffer* to use.\n@param column The column number to use.
find_entry_text ui.find.find_entry_text (string)\nThe text in the find entry.
-find_in_files ui.find.find_in_files(dir)\nSearches directory *dir* or user-specified directory for files that match\nsearch text and options and prints the results to a files found buffer.\nUse the `find_text`, `match_case`, `whole_word`, and `lua` fields to set the\nsearch text and option flags, respectively. Use `FILTER` to set the search\nfilter.\n@param dir Optional directory path to search. If `nil`, the user is prompted\n for one.\n@see FILTER
+find_in_files ui.find.find_in_files(dir)\nSearches directory *dir* or the user-specified directory for files that match\nsearch text and options and prints the results to a "Files Found" buffer.\nUse the `find_text`, `match_case`, `whole_word`, and `lua` fields to set the\nsearch text and option flags, respectively. Use `FILTER` to set the search\nfilter.\n@param dir Optional directory path to search. If `nil`, the user is prompted\n for one.\n@see FILTER
find_incremental ui.find.find_incremental(text, next, anchor)\nBegins an incremental search using the command entry if *text* is `nil`;\notherwise continues an incremental search by searching for the next or\nprevious instance of string *text* depending on boolean *next*.\n*anchor* indicates whether or not to search for *text* starting from the\ncaret position instead of the position where incremental search began at.\nOnly the `match_case` find option is recognized. Normal command entry\nfunctionality is unavailable until the search is finished by pressing `Esc`\n(`⎋` on Mac OSX | `Esc` in curses).\n@param text The text to incrementally search for, or `nil` to begin an\n incremental search.\n@param next Flag indicating whether or not the search direction is forward.\n@param anchor Optional flag indicating whether or not to start searching from\n the caret position. The default value is `false`.
find_label_text ui.find.find_label_text (string, Write-only)\nThe text of the "Find" label.\nThis is primarily used for localization.
find_next ui.find.find_next()\nMimics pressing the "Find Next" button.
@@ -637,36 +635,36 @@ floor math.floor(x)\nReturns the largest integer smaller than or equal to `x`.
flush file:flush()\nSaves any written data to `file`.
flush io.flush()\nEquivalent to `io.output():flush()`.
fmod math.fmod(x, y)\nReturns the remainder of the division of `x` by `y` that rounds the\nquotient towards zero.
-focus ui.command_entry.focus()\nFocuses the command entry.
+focus ui.command_entry.focus()\nOpens the Lua command entry.
focus ui.find.focus()\nDisplays and focuses the Find & Replace pane.
fold lexer.fold(text, start_pos, start_line, start_level)\nFolds *text*, a chunk of text starting at position *start_pos* on line number\n*start_line* with a beginning fold level of *start_level* in the buffer.\nCalled by the Scintilla lexer; **do not call from Lua**. If the current lexer\nhas a `_fold` function or a `_foldsymbols` table, it is used to perform\nfolding. Otherwise, if a `fold.by.indentation` property is set, folding by\nindentation is done.\n@param text The text in the buffer to fold.\n@param start_pos The position in the buffer *text* starts at.\n@param start_line The line number *text* starts on.\n@param start_level The fold level *text* starts on.\n@return table of fold levels.
-fold_all buffer.fold_all(buffer, action)\nExpands, contracts, or toggles the fold states of all fold headers, depending\non *action*.\nWhen toggling, the state of the first fold header determines whether to\nexpand or contract.\n@param buffer The buffer.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
-fold_children buffer.fold_children(buffer, line, action)\nExpands, contracts, or toggles the fold states of the fold header on line\nnumber *line* and its children, depending on *action*.\n@param buffer The buffer.\n@param line The line number in *buffer* to set the fold states for.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
-fold_expanded buffer.fold_expanded (table)\nTable of flags indicating whether or not folds are expanded for line\nnumbers starting from zero.\nSetting expanded fold states does not toggle folds; it only updates fold\nmargin markers. Use `buffer:toggle_fold()` instead.
+fold_all buffer.fold_all(buffer, action)\nExpands, contracts, or toggles all fold points, depending on *action*.\nWhen toggling, the state of the first fold point determines whether to\nexpand or contract.\n@param buffer The buffer.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
+fold_children buffer.fold_children(buffer, line, action)\nExpands, contracts, or toggles the fold point on line number *line* as well\nas all of its children, depending on *action*.\n@param buffer The buffer.\n@param line The line number in *buffer* to set the fold states for.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
+fold_expanded buffer.fold_expanded (table)\nTable of flags indicating whether or not fold points are expanded for line\nnumbers starting from zero.\nSetting expanded fold states does not toggle folds; it only updates fold\nmargin markers. Use `buffer:toggle_fold()` instead.
fold_flags buffer.fold_flags (number)\nBit-mask of folding lines to draw in the buffer.\n\n* `buffer.FOLDFLAG_LINEBEFORE_EXPANDED`\n Draw lines above expanded folds.\n* `buffer.FOLDFLAG_LINEBEFORE_CONTRACTED`\n Draw lines above collapsed folds.\n* `buffer.FOLDFLAG_LINEAFTER_EXPANDED`\n Draw lines below expanded folds.\n* `buffer.FOLDFLAG_LINEAFTER_CONTRACTED`\n Draw lines below collapsed folds.\n\nThe default value is `0`.
-fold_level buffer.fold_level (table)\nTable of fold level bit-masks for line numbers starting from zero.\nFold level masks comprise of an integer level combined with any of the\nfollowing bits:\n\n* `buffer.FOLDLEVELBASE`\n The initial fold level.\n* `buffer.FOLDLEVELWHITEFLAG`\n The line is blank.\n* `buffer.FOLDLEVELHEADERFLAG`\n The line is a header, or fold point.
+fold_level buffer.fold_level (table)\nTable of fold level bit-masks for line numbers starting from zero.\nFold level masks comprise of an integer level combined with any of the\nfollowing bit flags:\n\n* `buffer.FOLDLEVELBASE`\n The initial fold level.\n* `buffer.FOLDLEVELWHITEFLAG`\n The line is blank.\n* `buffer.FOLDLEVELHEADERFLAG`\n The line is a header, or fold point.
fold_level lexer.fold_level (table, Read-only)\nTable of fold level bit-masks for line numbers starting from zero.\nFold level masks are composed of an integer level combined with any of the\nfollowing bits:\n\n* `lexer.FOLDBASE`\n The initial fold level.\n* `lexer.FOLD_BLANK`\n The line is blank.\n* `lexer.FOLD_HEADER`\n The line is a header, or fold point.
-fold_line buffer.fold_line(buffer, line, action)\nExpands, contracts, or toggles the fold state of the fold header on line\nnumber *line*, depending on *action*.\n@param buffer The buffer.\n@param line The line number in *buffer* to set the fold state for.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
+fold_line buffer.fold_line(buffer, line, action)\nExpands, contracts, or toggles the fold point on line number *line*,\ndepending on *action*.\n@param buffer The buffer.\n@param line The line number in *buffer* to set the fold state for.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
fold_line_comments lexer.fold_line_comments(prefix)\nReturns a fold function, to be used within the lexer's `_foldsymbols` table,\nthat folds consecutive line comments beginning with string *prefix*.\n@param prefix The prefix string defining a line comment.\n@usage [l.COMMENT] = {['--'] = l.fold_line_comments('--')}\n@usage [l.COMMENT] = {['//'] = l.fold_line_comments('//')}
-fold_parent buffer.fold_parent (table, Read-only)\nTable of parent line numbers (fold points) for child line numbers starting\nfrom zero.\nA line number of `-1` means no line was found.
+fold_parent buffer.fold_parent (table, Read-only)\nTable of fold point line numbers for child line numbers starting from zero.\nA line number of `-1` means no line was found.
form_feed buffer.form_feed(buffer)\nTypes a Form Feed character ("\f") at the caret position.\n@param buffer The buffer.
format string.format(formatstring, ···)\nReturns a formatted version of its variable number of arguments following the\ndescription given in its first argument (which must be a string). The format\nstring follows the same rules as the ANSI C function `sprintf`. The only\ndifferences are that the options/modifiers `*`, `h`, `L`, `l`, `n`, and `p`\nare not supported and that there is an extra option, `q`. The `q` option\nformats a string between double quotes, using escape sequences when necessary\nto ensure that it can safely be read back by the Lua interpreter. For\ninstance, the call\n\n string.format('%q', 'a string with "quotes" and \n new line')\n\nmay produce the string:\n\n "a string with \"quotes\" and \\n new line"\n\nOptions `A` and `a` (when available), `E`, `e`, `f`, `G`, and `g` all expect\na number as argument. Options `c`, `d`, `i`, `o`, `u`, `X`, and `x` also\nexpect a number, but the range of that number may be limited by the\nunderlying C implementation. For options `o`, `u`, `X`, and `x`, the number\ncannot be negative. Option `q` expects a string; option `s` expects a string\nwithout embedded zeros. If the argument to option `s` is not a string, it is\nconverted to one following the same rules of `tostring`.
frexp math.frexp(x)\nReturns `m` and `e` such that 'x = m2^e', `e` is an integer and the\nabsolute value of `m` is in the range *[0.5, 1)* (or zero when `x` is zero).
functions _SCINTILLA.functions (table)\nMap of Scintilla function names to tables containing their IDs, return types,\nwParam types, and lParam types. Types are as follows:\n\n + `0`: Void.\n + `1`: Integer.\n + `2`: Length of the given lParam string.\n + `3`: Integer position.\n + `4`: Color, in "0xBBGGRR" format.\n + `5`: Boolean `true` or `false`.\n + `6`: Bitmask of Scintilla key modifiers and a key value.\n + `7`: String parameter.\n + `8`: String return value.
get_apidoc textadept.adeptsense.get_apidoc(sense, symbol)\nReturns the list of apidocs for symbol *symbol*.\nThe list also holds a `pos` key with the index of the apidoc to show.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@param symbol The symbol name to get apidocs for.\n@return list of apidocs or `nil`
get_class textadept.adeptsense.get_class(sense, symbol)\nReturns the class type of *symbol* name.\nIf *symbol* is `sense.syntax.self` and inside a class definition matching\n`sense.syntax.class_definition`, that class is returned. Otherwise the\nbuffer is searched backwards for a type declaration of *symbol* according to\nthe patterns in `sense.syntax.type_declarations` or a type assignment of\n*symbol* according to `sense.syntax.type_assignments`.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@param symbol The symbol name to get the class of.\n@return class or `nil`\n@see syntax
-get_completions textadept.adeptsense.get_completions(sense, symbol, only_fields, only_functions)\nReturns the list of completions for symbol *symbol*.\nIf either *only_fields* or *only_functions* is `true`, returns the limited\nset of completions.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@param symbol The symbol name to get completions for.\n@param only_fields Optional flag indicating whether or not to return a list\n of only fields. The default value is `false`.\n@param only_functions Optional flag indicating whether or not to return a\n list of only functions. The default value is `false`.\n@return completion_list or `nil`
+get_completions textadept.adeptsense.get_completions(sense, symbol, only_fields, only_functions)\nReturns the list of completions for symbol *symbol*.\nIf either *only_fields* or *only_functions* is `true`, returns the\nappropriate subset of completions.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@param symbol The symbol name to get completions for.\n@param only_fields Optional flag indicating whether or not to return a list\n of only fields. The default value is `false`.\n@param only_functions Optional flag indicating whether or not to return a\n list of only functions. The default value is `false`.\n@return completion_list or `nil`
get_cur_line buffer.get_cur_line(buffer)\nReturns the current line's text and the caret's position on the line,\nstarting from zero.\n@param buffer The buffer.\n@return string, number
get_hotspot_active_back buffer.get_hotspot_active_back(buffer)\nReturns the numeric background color of active hotspots.\n@param buffer The buffer.\n@return number
get_hotspot_active_fore buffer.get_hotspot_active_fore(buffer)\nReturns the numeric foreground color of active hotspots.\n@param buffer The buffer.\n@return number
-get_last_child buffer.get_last_child(buffer, start_line, level)\nReturns the line number of the last line after line number *start_line* whose\nfold level is greater than *level* or the level of *start_line* if *level* is\n`-1`.\n@param buffer The buffer.\n@param start_line The line number in *buffer* of a header line.\n@param level The fold level, or `-1` for the level of *start_line*.
+get_last_child buffer.get_last_child(buffer, start_line, level)\nReturns the line number of the last line after line number *start_line* whose\nfold level is greater than *level* or, if *level* is `-1`, the level of\n*start_line*.\n@param buffer The buffer.\n@param start_line The line number in *buffer* of a header line.\n@param level The fold level, or `-1` for the level of *start_line*.
get_lexer buffer.get_lexer(buffer, current)\nReturns the buffer's lexer name, or the name of the lexer under the caret in\na multiple-language lexer if *current* is `true`.\n@param buffer The buffer.\n@param current Whether or not to get the lexer at the current caret position\n in multi-language lexers. The default is `false` and returns the parent\n lexer.
get_line buffer.get_line(buffer, line)\nReturns the text on line number *line*, including end of line characters.\n@param buffer The buffer.\n@param line The line number in *buffer* to use.\n@return string, number
get_line_sel_end_position buffer.get_line_sel_end_position(buffer, line)\nReturns the position of the end of the selected text on line number *line*,\nor `-1`.\n@param buffer The buffer.\n@param line The line number in *buffer* to use.
get_line_sel_start_position buffer.get_line_sel_start_position(buffer, line)\nReturns the position of the beginning of the selected text on line number\n*line*, or `-1`.\n@param buffer The buffer.\n@param line The line number in *buffer* to use.
get_sel_text buffer.get_sel_text(buffer)\nReturns the selected text.\nMultiple selections are included in order with no delimiters. Rectangular\nselections are included from top to bottom with line ending delimiters.\nVirtual space is not included.\n@param buffer The buffer.\n@return string, number
-get_split_table ui.get_split_table()\nReturns the current split view structure.\nThis is primarily used in session saving.\n@return table of split views. Each split view entry is a table with 4\n fields: `1`, `2`, `vertical`, and `size`. `1` and `2` have values of either\n nested split view entries or the views themselves; `vertical` is a flag\n indicating if the split is vertical or not; and `size` is the integer\n position of the split resizer.
-get_symbol textadept.adeptsense.get_symbol(sense)\nReturns a full symbol (if any) and current symbol part (if any) behind the\ncaret.\nFor example: `buffer.cur` would return `'buffer'` and `'cur'`. Returns empty\nstrings instead of `nil`.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@return symbol or `''`\n@return part or `''`
+get_split_table ui.get_split_table()\nReturns a split table containing Textadept's current split view structure.\nThis is primarily used in session saving.\n@return table of split views. Each split view entry is a table with 4\n fields: `1`, `2`, `vertical`, and `size`. `1` and `2` have values of either\n nested split view entries or the views themselves; `vertical` is a flag\n indicating if the split is vertical or not; and `size` is the integer\n position of the split resizer.
+get_symbol textadept.adeptsense.get_symbol(sense)\nReturns a full symbol or '' and current symbol part behind the caret or ''.\nFor example: `buffer.cur` would return `'buffer'` and `'cur'`.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@return symbol or `''`\n@return part or `''`
get_text buffer.get_text(buffer)\nReturns the buffer's text.\n@param buffer The buffer.
getenv os.getenv(varname)\nReturns the value of the process environment variable `varname`, or\nnil if the variable is not defined.
gethook debug.gethook([thread])\nReturns the current hook settings of the thread, as three values: the\ncurrent hook function, the current hook mask, and the current hook count\n(as set by the `debug.sethook` function).
@@ -679,12 +677,12 @@ getupvalue debug.getupvalue(f, up)\nThis function returns the name and the value
getuservalue debug.getuservalue(u)\nReturns the Lua value associated to `u`. If `u` is not a userdata, returns\nnil.
gmatch string.gmatch(s, pattern)\nReturns an iterator function that, each time it is called, returns the\nnext captures from `pattern` over the string `s`. If `pattern` specifies no\ncaptures, then the whole match is produced in each call.\n\nAs an example, the following loop will iterate over all the words from string\n`s`, printing one per line:\n\n s = "hello world from Lua"\n for w in string.gmatch(s, "%a+") do\n print(w)\n end\n\nThe next example collects all pairs `key=value` from the given string into a\ntable:\n\n t = {}\n s = "from=world, to=Lua"\n for k, v in string.gmatch(s, "(%w+)=(%w+)") do\n t[k] = v\n end\n\nFor this function, a caret '`^`' at the start of a pattern does not work as\nan anchor, as this would prevent the iteration.
goto_buffer view.goto_buffer(view, n, relative)\nSwitches to buffer number *n* in the view.\n*relative* indicates whether or not *n* is an index relative to the current\nbuffer's index in `_G._BUFFERS` instead of an absolute index.\nEmits `BUFFER_BEFORE_SWITCH` and `BUFFER_AFTER_SWITCH` events.\n@param view The view to switch buffers in.\n@param n A relative or absolute buffer index in `_G._BUFFERS`. An absolute\n index of `-1` goes to the last buffer.\n@param relative Optional flag indicating whether *n* is a relative or\n absolute index. The default value is `false`, for an absolute index.\n@see _G._G._BUFFERS\n@see events.BUFFER_BEFORE_SWITCH\n@see events.BUFFER_AFTER_SWITCH
-goto_ctag textadept.adeptsense.goto_ctag(sense, kind, title)\nPrompts the user to select a known symbol of kind *kind* to jump to.\n*title* is the filtered list dialog prompt's title.\n@param sense The Adeptsense returned by `adeptsense.new()`. If `nil`, uses\n the current language's Adeptsense (if it exists).\n@param kind Optional Ctag character kind (e.g. `'f'` for a Lua function).\n@param title Optional title for the filtered list dialog.
-goto_error textadept.run.goto_error(line, next)\nJumps to the source of the recognized compile/run warning or error on line\nnumber *line* in the message buffer or the next or previous recognized\nwarning or error depending on boolean *next*.\nDisplays an annotation with the warning or error message, if available.\n@param line The line number in the message buffer that contains the\n compile/run warning/error to go to.\n@param next Optional flag indicating whether to go to the next recognized\n warning/error or the previous one. Only applicable when *line* is `nil` or\n `false`.\n@see error_patterns\n@see cwd
-goto_file ui.goto_file(filename, split, preferred_view, sloppy)\nSwitches to the buffer whose filename is *filename* in an existing view,\notherwise splitting the current view if *split* is `true` or shifting to the\nnext or *preferred_view* view instead of staying in the current one.\n*sloppy* indicates whether or not only the last part of *filename* is matched\nto a buffer's `filename`.\n@param filename The filename of the buffer to go to.\n@param split Optional flag indicating whether or not to open the buffer in a\n split view if there is only one view. The default value is `false`.\n@param preferred_view Optional view to open the desired buffer in if the\n buffer is not visible in any other view.\n@param sloppy Optional flag indicating whether or not to not match *filename*\n to `buffer.filename` exactly. When `true`, matches *filename* to only the\n last part of `buffer.filename` This is useful for run and compile commands\n which output relative filenames and paths instead of full ones and it is\n likely that the file in question is already open. The default value is\n `false`.
-goto_file_found ui.find.goto_file_found(line, next)\nJumps to the source of the find in files search result on line number *line*\nin the files found buffer, or if `nil`, the next or previous search result\ndepending on boolean *next*.\n@param line The line number in the files found buffer that contains the\n search result to go to.\n@param next Optional flag indicating whether to go to the next search result\n or the previous one. Only applicable when *line* is `nil` or `false`.
+goto_ctag textadept.adeptsense.goto_ctag(sense, kind, title)\nPrompts the user to select a known symbol of kind *kind* to jump to.\nIf *kind* is `nil`, displays all known symbols. *title* is the filtered list\ndialog prompt's title.\n@param sense The Adeptsense returned by `adeptsense.new()`. If `nil`, uses\n the current language's Adeptsense (if it exists).\n@param kind Optional Ctag character kind (e.g. `'f'` for a Lua function).\n@param title Optional title for the filtered list dialog.
+goto_error textadept.run.goto_error(line, next)\nJumps to the source of the recognized compile/run warning or error on line\nnumber *line* in the message buffer or, if *line* is `nil`, the next or\nprevious warning or error depending on boolean *next*.\nDisplays an annotation with the warning or error message if possible.\n@param line The line number in the message buffer that contains the\n compile/run warning/error to go to.\n@param next Optional flag indicating whether to go to the next recognized\n warning/error or the previous one. Only applicable when *line* is `nil` or\n `false`.\n@see error_patterns\n@see cwd
+goto_file ui.goto_file(filename, split, preferred_view, sloppy)\nSwitches to the buffer whose filename is *filename* in an existing view,\notherwise splitting the current view if *split* is `true` or shifting to the\nnext or *preferred_view* view instead of staying in the current one.\n*sloppy* indicates whether or not to only match the last part of *filename*\nto a buffer's `filename`.\n@param filename The filename of the buffer to go to.\n@param split Optional flag indicating whether or not to open the buffer in a\n split view if there is only one view. The default value is `false`.\n@param preferred_view Optional view to open the desired buffer in if the\n buffer is not visible in any other view.\n@param sloppy Optional flag indicating whether or not to not match *filename*\n to `buffer.filename` exactly. When `true`, matches *filename* to only the\n last part of `buffer.filename` This is useful for run and compile commands\n which output relative filenames and paths instead of full ones and it is\n likely that the file in question is already open. The default value is\n `false`.
+goto_file_found ui.find.goto_file_found(line, next)\nJumps to the source of the find in files search result on line number *line*\nin the "Files Found" buffer or, if *line* is `nil`, the next or previous\nsearch result depending on boolean *next*.\n@param line The line number in the files found buffer that contains the\n search result to go to.\n@param next Optional flag indicating whether to go to the next search result\n or the previous one. Only applicable when *line* is `nil` or `false`.
goto_line buffer.goto_line(buffer, line)\nMoves the caret to the beginning of line number *line* and scrolls it into\nview.\n@param buffer The buffer.\n@param line The line number in *buffer* to go to.
-goto_line textadept.editing.goto_line(line)\nMoves the caret to the beginning of line number *line* or user-specified\nline, ensuring the line is visible.\n@param line Optional line number to go to. If `nil`, the user is prompted for\n one.
+goto_line textadept.editing.goto_line(line)\nMoves the caret to the beginning of line number *line* or the user-specified\nline, ensuring the line is visible.\n@param line Optional line number to go to. If `nil`, the user is prompted for\n one.
goto_mark textadept.bookmarks.goto_mark(next)\nPrompts the user to select a bookmarked line to move the caret to the\nbeginning of unless *next* is given.\nIf *next* is `true` or `false`, moves the caret to the beginning of the next\nor previously bookmarked line, respectively.\n@param next Optional flag indicating whether to go to the next or previous\n bookmarked line relative to the current line. The default value is `nil`,\n prompting the user for a bookmarked line to go to.
goto_pos buffer.goto_pos(buffer, pos)\nMoves the caret to position *pos* and scrolls it into view.\n@param buffer The buffer.\n@param pos The position in *buffer* to go to.
goto_view ui.goto_view(n, relative)\nShifts to view number *n*.\n*relative* indicates whether or not *n* is an index relative to the current\nview's index in `_G._VIEWS` instead of an absolute index.\nEmits `VIEW_BEFORE_SWITCH` and `VIEW_AFTER_SWITCH` events.\n@param n A relative or absolute view index in `_G._VIEWS`.\n@param relative Optional flag indicating whether *n* is a relative or\n absolute index. The default value is `false`, for an absolute index.\n@see _G._G._VIEWS\n@see events.VIEW_BEFORE_SWITCH\n@see events.VIEW_AFTER_SWITCH
@@ -703,7 +701,7 @@ home_display buffer.home_display(buffer)\nMoves the caret to the beginning of th
home_display_extend buffer.home_display_extend(buffer)\nMoves the caret to the beginning of the current wrapped line, extending the\nselected text to the new position.\n@param buffer The buffer.
home_extend buffer.home_extend(buffer)\nMoves the caret to the beginning of the current line, extending the selected\ntext to the new position.\n@param buffer The buffer.
home_rect_extend buffer.home_rect_extend(buffer)\nMoves the caret to beginning of the current line, extending the rectangular\nselection to the new position.\n@param buffer The buffer.
-home_wrap buffer.home_wrap(buffer)\nMoves the caret to beginning of the current wrapped line, or if already\nthere, to the beginning of the actual line.\n@param buffer The buffer.
+home_wrap buffer.home_wrap(buffer)\nMoves the caret to beginning of the current wrapped line or, if already\nthere, to the beginning of the actual line.\n@param buffer The buffer.
home_wrap_extend buffer.home_wrap_extend(buffer)\nLike `buffer:home_wrap()`, but extends the selected text to the new position.\n@param buffer The buffer.
hotspot_active_underline buffer.hotspot_active_underline (bool)\nUnderline active hotspots.\nThe default value is `true`.
hotspot_single_line buffer.hotspot_single_line (bool)\nLimit hotspots to a single line.\nThe default value is `true`.
@@ -716,7 +714,7 @@ in_files ui.find.in_files (bool)\nFind the search text in a list of files.\nThe
in_files_label_text ui.find.in_files_label_text (string, Write-only)\nThe text of the "In files" label.\nThis is primarily used for localization.
indent buffer.indent (number)\nThe number of spaces in one level of indentation.\nThe default value is `0`, which uses the value of\n`buffer.tab_width`.
indent_amount lexer.indent_amount (table, Read-only)\nTable of indentation amounts in character columns, for line numbers\nstarting from zero.
-indentation_guides buffer.indentation_guides (number)\nThe indentation guide drawing mode.\nIndentation guides are dotted vertical lines that appear within indentation\nwhitespace at each level of indentation.\n\n* `buffer.IV_NONE`\n Does not draw any guides.\n* `buffer.IV_REAL`\n Draw guides only within indentation whitespace.\n* `buffer.IV_LOOKFORWARD`\n Draw guides beyond the current line up to the next non-empty line's\n level, but with an additional level if the previous non-empty line is a\n fold header.\n* `buffer.IV_LOOKBOTH`\n Draw guides beyond the current line up to either the level of the\n previous or next non-empty line, whichever is greater.\n\nThe default value is `buffer.IV_NONE`.
+indentation_guides buffer.indentation_guides (number)\nThe indentation guide drawing mode.\nIndentation guides are dotted vertical lines that appear within indentation\nwhitespace at each level of indentation.\n\n* `buffer.IV_NONE`\n Does not draw any guides.\n* `buffer.IV_REAL`\n Draw guides only within indentation whitespace.\n* `buffer.IV_LOOKFORWARD`\n Draw guides beyond the current line up to the next non-empty line's\n level, but with an additional level if the previous non-empty line is a\n fold point.\n* `buffer.IV_LOOKBOTH`\n Draw guides beyond the current line up to either the level of the\n previous or next non-empty line, whichever is greater.\n\nThe default value is `buffer.IV_NONE`.
indic_alpha buffer.indic_alpha (table)\nTable of fill color alpha values, ranging from `0` (transparent) to `255`\n(opaque), for indicator numbers from `0` to `31` whose styles are either\n`INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.\nThe default values are `buffer.ALPHA_NOALPHA`, for no alpha.
indic_fore buffer.indic_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, for indicator numbers\nfrom `0` to `31`.
indic_outline_alpha buffer.indic_outline_alpha (table)\nTable of outline color alpha values, ranging from `0` (transparent) to\n`255` (opaque), for indicator numbers from `0` to `31` whose styles are\neither `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.\nThe default values are `buffer.ALPHA_NOALPHA`, for no alpha.
@@ -730,10 +728,10 @@ indicator_fill_range buffer.indicator_fill_range(buffer, pos, fill_length)\nFill
indicator_start buffer.indicator_start(buffer, indicator, pos)\nReturns the position of the beginning of indicator number *indicator*, in the\nrange of `0` to `31`, at position *pos*.\n@param buffer The buffer.\n@param indicator An indicator number in the range of `0` to `31`.\n@param pos The position in *buffer* of the indicator.
inherited_classes textadept.adeptsense.inherited_classes (table)\nA map of classes and a list of their inherited classes, normally populated by\n`load_ctags()`.
input io.input([file])\nWhen called with a file name, it opens the named file (in text mode),\nand sets its handle as the default input file. When called with a file\nhandle, it simply sets this file handle as the default input file. When\ncalled without parameters, it returns the current default input file.\n\nIn case of errors this function raises the error, instead of returning an\nerror code.
-inputbox ui.dialogs.inputbox(options)\nPrompts the user with a one-line input box dialog defined by dialog options\ntable *options*, returning the selected button's index along with the input\ntext or, if *options*.`string_output` is `true`, the selected button's label\nalong with the input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the input box.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial input text.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the exit code. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.inputbox{title = 'Goto Line', informative_text = 'Line:',\n text = '1'}\n@return selected button or exit code, input text
+inputbox ui.dialogs.inputbox(options)\nPrompts the user with a one-line input box dialog defined by dialog options\ntable *options*, returning the selected button's index along with the input\ntext or, if *options*.`string_output` is `true`, the selected button's label\nalong with the input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the input box.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial input text.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the dialog's exit code. The\n default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.inputbox{title = 'Goto Line', informative_text = 'Line:',\n text = '1'}\n@return selected button or exit code, input text
insert table.insert(list, [pos, ] value)\nInserts element `value` at position `pos` in `list`, shifting up the elements\n`list[pos], list[pos+1], ···, list[#list]`. The default value for `pos` is\n`#list+1`, so that a call `table.insert(t,x)` inserts `x` at the end of list\n`t`.
-insert_text buffer.insert_text(buffer, pos, text)\nInserts string *text* at position *pos* or the caret position if *pos* is\n`-1`, removing any selections.\nIf the caret is after the *pos*, it is moved appropriately, but not scrolled\ninto view.\n@param buffer The buffer.\n@param pos The position in *buffer* to insert text at, or `-1` for the\n current position.\n@param text The text to insert.
-integer lexer.integer (pattern)\nA pattern that matches a decimal, hexadecimal, or octal number.
+insert_text buffer.insert_text(buffer, pos, text)\nInserts string *text* at position *pos*, removing any selections.\nIf *pos* is `-1`, inserts *text* at the caret position.\nIf the caret is after the *pos*, it is moved appropriately, but not scrolled\ninto view.\n@param buffer The buffer.\n@param pos The position in *buffer* to insert text at, or `-1` for the\n current position.\n@param text The text to insert.
+integer lexer.integer (pattern)\nA pattern that matches either a decimal, hexadecimal, or octal number.
io _G.io (module)\nLua io module.
ipairs _G.ipairs(t)\nIf `t` has a metamethod `__ipairs`, calls it with `t` as argument and returns\nthe first three results from the call.\n\nOtherwise, returns three values: an iterator function, the table `t`, and 0,\nso that the construction\n\n for i,v in ipairs(t) do *body* end\n\nwill iterate over the pairs (`1,t[1]`), (`2,t[2]`), ..., up to the\nfirst integer key absent from the table.
java _G.keys.java (table)\nContainer for Java-specific key bindings.
@@ -743,7 +741,7 @@ join_lines textadept.editing.join_lines()\nJoins the currently selected lines or
keys _G.keys (module)\nManages key bindings in Textadept.
keys _G.keys (table)\nMap of key bindings to commands, with language-specific key tables assigned\nto a lexer name key.
keys textadept.keys (module)\nDefines key commands for Textadept.\nThis set of key commands is pretty standard among other text editors. If\napplicable, load this module second to last in your *~/.textadept/init.lua*,\nbefore `textadept.menu`.
-last_char_includes lexer.last_char_includes(s)\nCreates and returns a pattern that matches any previous non-whitespace\ncharacter in *s* and consumes no input.\n@param s String character set like one passed to `lpeg.S()`.\n@usage local regex = l.last_char_includes('+-*!%^&|=,([{') *\n l.delimited_range('/')\n@return pattern
+last_char_includes lexer.last_char_includes(s)\nCreates and returns a pattern that verifies that the first non-whitespace\ncharacter behind the current position matches any character in string set\n*s*.\n@param s String character set like one passed to `lpeg.S()`.\n@usage local regex = l.last_char_includes('+-*!%^&|=,([{') *\n l.delimited_range('/')\n@return pattern
ldexp math.ldexp(m, e)\nReturns 'm2^e' (`e` should be an integer).
len string.len(s)\nReceives a string and returns its length. The empty string `""` has\nlength 0. Embedded zeros are counted, so `"a\000bc\000"` has length 5.
length buffer.length (number, Read-only)\nThe number of bytes in the buffer.
@@ -766,16 +764,16 @@ line_end_display_extend buffer.line_end_display_extend(buffer)\nMoves the caret
line_end_extend buffer.line_end_extend(buffer)\nMoves the caret to the end of the current line, extending the selected text\nto the new position.\n@param buffer The buffer.
line_end_position buffer.line_end_position (table, Read-only)\nTable of positions at the ends of lines, but before any end of line\ncharacters, for line numbers starting from zero.
line_end_rect_extend buffer.line_end_rect_extend(buffer)\nMoves the caret to the end of the current line, extending the rectangular\nselection to the new position.\n@param buffer The buffer.
-line_end_wrap buffer.line_end_wrap(buffer)\nMoves the caret to the end of the current wrapped line, or if already there,\nto the end of the actual line.\n@param buffer The buffer.
+line_end_wrap buffer.line_end_wrap(buffer)\nMoves the caret to the end of the current wrapped line or, if already there,\nto the end of the actual line.\n@param buffer The buffer.
line_end_wrap_extend buffer.line_end_wrap_extend(buffer)\nLike `buffer:line_end_wrap()`, but extends the selected text to the new\nposition.\n@param buffer The buffer.
-line_from_position buffer.line_from_position(buffer, pos)\nReturns the line number containing position *pos*.\nReturns `0` if *pos* is less than 0 or `buffer.line_count` if *pos* is\ngreater than `buffer.length`.\n@param buffer The buffer.\n@param pos The position in *buffer* to get the line number of.\n@return number
+line_from_position buffer.line_from_position(buffer, pos)\nReturns the line number of the line containing position *pos*.\nReturns `0` if *pos* is less than 0 or `buffer.line_count` if *pos* is\ngreater than `buffer.length`.\n@param buffer The buffer.\n@param pos The position in *buffer* to get the line number of.\n@return number
line_indent_position buffer.line_indent_position (table, Read-only)\nTable of positions at the ends of indentation for line numbers starting\nfrom zero.
line_indentation buffer.line_indentation (table)\nTable of column indentation amounts, for line numbers starting from zero.
-line_length buffer.line_length(buffer, line)\nReturns the number of characters on line number *line*, including end of line\ncharacters.\nTo get line length excluding end of line characters, use\n`buffer.line_end_position[line] - buffer:position_from_line(line)`.\n@param buffer The buffer.\n@param line The line number in *buffer* to get the length of.\n@return number
-line_scroll buffer.line_scroll(buffer, columns, lines)\nScroll right *columns* columns and down *lines* lines.\nNegative values are allowed.\n@param buffer The buffer.\n@param columns The number of columns to scroll horizontally.\n@param lines The number of lines to scroll vertically.
-line_scroll_down buffer.line_scroll_down(buffer)\nScroll the buffer down one line, keeping the caret visible.\n@param buffer The buffer.
-line_scroll_up buffer.line_scroll_up(buffer)\nScroll the buffer up one line, keeping the caret visible.\n@param buffer The buffer.
-line_state buffer.line_state (table)\nTable of integer line states for line numbers starting from zero.\nLine states are used for storing longer lived parse states per line. They\nare available in addition to the 8 bits of styling information per\ncharacter.
+line_length buffer.line_length(buffer, line)\nReturns the number of bytes on line number *line*, including end of line\ncharacters.\nTo get line length excluding end of line characters, use\n`buffer.line_end_position[line] - buffer:position_from_line(line)`.\n@param buffer The buffer.\n@param line The line number in *buffer* to get the length of.\n@return number
+line_scroll buffer.line_scroll(buffer, columns, lines)\nScrolls the buffer right *columns* columns and down *lines* lines.\nNegative values are allowed.\n@param buffer The buffer.\n@param columns The number of columns to scroll horizontally.\n@param lines The number of lines to scroll vertically.
+line_scroll_down buffer.line_scroll_down(buffer)\nScrolls the buffer down one line, keeping the caret visible.\n@param buffer The buffer.
+line_scroll_up buffer.line_scroll_up(buffer)\nScrolls the buffer up one line, keeping the caret visible.\n@param buffer The buffer.
+line_state buffer.line_state (table)\nTable of integer line states for line numbers starting from zero.\nLine states are unaffected by changes in styling and are available in\naddition to the 8 bits of styling information per character.
line_transpose buffer.line_transpose(buffer)\nSwaps the current line with the previous one.\n@param buffer The buffer.
line_up buffer.line_up(buffer)\nMoves the caret up one line.\n@param buffer The buffer.
line_up_extend buffer.line_up_extend(buffer)\nMoves the caret up one line, extending the selected text to the new position.\n@param buffer The buffer.
@@ -785,11 +783,11 @@ lines file:lines(···)\nReturns an iterator function that, each time it is cal
lines io.lines([filename ···])\nOpens the given file name in read mode and returns an iterator function that\nworks like `file:lines(···)` over the opened file. When the iterator function\ndetects -- the end of file, it returns nil (to finish the loop) and\nautomatically closes the file.\n\nThe call `io.lines()` (with no file name) is equivalent to\n`io.input():lines()`; that is, it iterates over the lines of the default\ninput file. In this case it does not close the file when the loop ends.\n\nIn case of errors this function raises the error, instead of returning an\nerror code.
lines_join buffer.lines_join(buffer)\nJoins the lines in the target range, inserting spaces between joined\nwords at line boundaries.\n@param buffer The buffer.
lines_on_screen buffer.lines_on_screen (number, Read-only)\nThe number of completely visible lines in the view.\nIt is possible to have a partial line visible at the bottom of the view.
-lines_split buffer.lines_split(buffer, pixel_width, width)\nSplits the lines in the target range into lines at most *width* pixels wide,\nor if *width* is `0`, lines as wide as the view.\n@param buffer The buffer.\n@param width The pixel width to split lines at. When `0`, uses the width of\n the view.
+lines_split buffer.lines_split(buffer, pixel_width, width)\nSplits the lines in the target range into lines at most *width* pixels wide\nor, if *width* is `0`, lines as wide as the view.\n@param buffer The buffer.\n@param width The pixel width to split lines at. When `0`, uses the width of\n the view.
load _G.load(ld [, source [, mode [, env]]])\nLoads a chunk.\n\nIf `ld` is a string, the chunk is this string. If `ld` is a function, `load`\ncalls it repeatedly to get the chunk pieces. Each call to `ld` must return a\nstring that concatenates with previous results. A return of an empty string,\nnil, or no value signals the end of the chunk.\n\nIf there are no syntactic errors, returns the compiled chunk as a function;\notherwise, returns <b>nil</b> plus the error message.\n\nIf the resulting function has upvalues, the first upvalue is set to the value\nof `env`, if that parameter is given, or to the value of the global\nenvironment. (When you load a main chunk, the resulting function will always\nhave exactly one upvalue, the `_ENV` variable (see §2.2). When you load a\nbinary chunk created from a function (see `string.dump`), the resulting\nfunction can have arbitrary upvalues.)\n\n`source` is used as the source of the chunk for error messages and debug\ninformation (see §4.9). When absent, it defaults to `ld`, if `ld` is a\nstring, or to "`=(load)`" otherwise.\n\nThe string `mode` controls whether the chunk can be text or binary (that is,\na precompiled chunk). It may be the string "`b`" (only binary chunks), "`t`"\n(only text chunks), or "`bt`" (both binary and text). The default is "`bt`".
-load lexer.load(lexer_name, alt_name)\nInitializes or loads lexer *lexer_name* and returns the lexer object.\nScintilla calls this function to load a lexer. Parent lexers also call this\nfunction to load child lexers and vice-versa.\n@param lexer_name The name of the lexing language.\n@param alt_name The alternate name of the lexing language. This is useful for\n embedding the same child lexer with multiple sets of start and end tokens.\n@return lexer object
-load textadept.session.load(filename)\nLoads session file *filename* or user-selected file, returning `true` if the\nsession file was opened and read.\nTextadept restores split views, opened buffers, cursor information, and\nrecent files.\n@param filename Optional absolute path to the session file to load. If `nil`,\n the user is prompted for one.\n@usage textadept.session.load(filename)\n@return `true` if the session file was opened and read; `false` otherwise.\n@see DEFAULT_SESSION
-load_ctags textadept.adeptsense.load_ctags(sense, tag_file, nolocations)\nLoads the Ctags file *tag_file* for autocompletions.\n*nolocations* indicates whether or not to store the location part of tags. If\n`true`, `sense:goto_ctag()` cannot be used with this set of tags. It is\nrecommended to pass `-n` to `ctags` in order to use line numbers instead of\ntext patterns to locate tags. This will greatly reduce memory usage for a\nlarge number of symbols if *nolocations* is `false`.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@param tag_file The path of the Ctags file to load.\n@param nolocations Optional flag indicating whether or not to discard the\n locations of the tags for use by `sense:goto_ctag()`. The default value is\n `false`.
+load lexer.load(lexer_name, alt_name)\nInitializes or loads and returns the lexer of string name *lexer_name*.\nScintilla calls this function to load a lexer. Parent lexers also call this\nfunction to load child lexers and vice-versa.\n@param lexer_name The name of the lexing language.\n@param alt_name The alternate name of the lexing language. This is useful for\n embedding the same child lexer with multiple sets of start and end tokens.\n@return lexer object
+load textadept.session.load(filename)\nLoads session file *filename* or the user-selected file, returning `true` if\nthe session file was opened and read.\nTextadept restores split views, opened buffers, cursor information, and\nrecent files.\n@param filename Optional absolute path to the session file to load. If `nil`,\n the user is prompted for one.\n@usage textadept.session.load(filename)\n@return `true` if the session file was opened and read; `false` otherwise.\n@see DEFAULT_SESSION
+load_ctags textadept.adeptsense.load_ctags(sense, tag_file, nolocations)\nGenerates a set of symbol completion lists from Ctags file *tag_file* and\nadds the set to the Adeptsense.\n*nolocations* indicates whether or not to store the location part of tags. If\n`true`, `sense:goto_ctag()` cannot be used with this set of tags. It is\nrecommended to pass `-n` to `ctags` in order to use line numbers instead of\ntext patterns to locate tags. This will greatly reduce memory usage for a\nlarge number of symbols if *nolocations* is `false`.\n@param sense The Adeptsense returned by `adeptsense.new()`.\n@param tag_file The path of the Ctags file to load.\n@param nolocations Optional flag indicating whether or not to discard the\n locations of the tags for use by `sense:goto_ctag()`. The default value is\n `false`.
load_project _M.rails.load_project(dir)\nOpens a Rails project for snapopen.\nIf not directory is provided, the user is prompted for one.\n@param dir The Rails project directory.
loaded package.loaded (table)\nA table used by `require` to control which modules are already loaded. When\nyou require a module `modname` and `package.loaded[modname]` is not false,\n`require` simply returns the value stored there.\nThis variable is only a reference to the real table; assignments to this\nvariable do not change the table used by `require`.
loadfile _G.loadfile([filename [, mode [, env]]])\nSimilar to `load`, but gets the chunk from file `filename` or from the\nstandard input, if no file name is given.
@@ -813,24 +811,24 @@ lua_pattern_label_text ui.find.lua_pattern_label_text (string, Write-only)\nThe
main_selection buffer.main_selection (number)\nThe number of the main, or most recent, selection.\nOnly an existing selection can be made main.
margin_cursor_n buffer.margin_cursor_n (table)\nTable of cursor types shown over margin numbers from zero to four.\n\n* `buffer.CURSORARROW`\n Normal arrow cursor.\n* `buffer.CURSORREVERSEARROW`\n Reversed arrow cursor.\n\nThe default values are `buffer.CURSORREVERSEARROW`.
margin_left buffer.margin_left (number)\nThe pixel size of the left margin of the buffer text.\nThe default value is `1`.
-margin_mask_n buffer.margin_mask_n (table)\nTable of bit-masks of markers that symbol margins can display for margin\nnumbers from zero to four.\nBit-masks are 32-bit values whose bits correspond to the 32 available\nmarkers.\nThe default values are `0`, `bit32.bnot(buffer.MASK_FOLDERS)`, `0`, `0`,\nand `0`, for a line margin and logical marker margin.
+margin_mask_n buffer.margin_mask_n (table)\nTable of bit-masks of markers whose symbols marker symbol margins can\ndisplay for margin numbers from zero to four.\nBit-masks are 32-bit values whose bits correspond to the 32 available\nmarkers.\nThe default values are `0`, `bit32.bnot(buffer.MASK_FOLDERS)`, `0`, `0`,\nand `0`, for a line margin and logical marker margin.
margin_options buffer.margin_options (number)\nA bit-mask of margin option settings.\n\n* `buffer.MARGINOPTION_NONE`\n None.\n* `buffer.MARGINOPTION_SUBLINESELECT`\n Select only the wrapped line's sub-line, rather than the entire line, on\n margin click.\n\nThe default value is `buffer.MARGINOPTION_NONE`.
margin_right buffer.margin_right (number)\nThe pixel size of the right margin of the buffer text.\nThe default value is `1`.
margin_sensitive_n buffer.margin_sensitive_n (table)\nTable of flags indicating whether or not mouse clicks in margins emit\n`MARGIN_CLICK` events for margin numbers from zero to four.\nThe default values are `false`.
margin_style buffer.margin_style (table)\nTable of style numbers for line numbers starting from zero in the text\nmargin.\nOnly some style attributes are active in text margins: font, size, bold,\nitalics, fore, and back.
margin_style_offset buffer.margin_style_offset (number)\nThe beginning of the range of style numbers used for margin text.\nAlways set this to the result of\n`buffer.allocate_extended_styles`.\nMargin styles may be completely separated from standard text styles by\nsetting a style offset. For example, when set to `256`, margin styles are\nnumbered from `256` upto `511` so they do not overlap styles set by lexers.\nEach style number set with `margin_style` has the offset added before\nlooking up the style.\nThe default value is `0`.
margin_text buffer.margin_text (table)\nTable of text displayed in text margins for line numbers starting from\nzero.
-margin_text_clear_all buffer.margin_text_clear_all(buffer)\nClears the text in text margins on all lines.\n@param buffer The buffer.
-margin_type_n buffer.margin_type_n (table)\nTable of margin types for margin numbers from zero to four.\n\n* `buffer.MARGIN_SYMBOL`\n A symbol margin.\n* `buffer.MARGIN_NUMBER`\n A line number margin.\n* `buffer.MARGIN_BACK`\n A symbol margin whose background color matches the default text\n background color.\n* `buffer.MARGIN_FORE`\n A symbol margin whose foreground color matches the default text\n foreground color.\n* `buffer.MARGIN_TEXT`\n A text margin.\n* `buffer.MARGIN_RTEXT`\n A right-justified text margin.\n\nThe default values are `true`, `false`, `false`, `false`, and `false`, for\na line number margin and symbol margins.
+margin_text_clear_all buffer.margin_text_clear_all(buffer)\nClears all text in text margins.\n@param buffer The buffer.
+margin_type_n buffer.margin_type_n (table)\nTable of margin types for margin numbers from zero to four.\n\n* `buffer.MARGIN_SYMBOL`\n A marker symbol margin.\n* `buffer.MARGIN_NUMBER`\n A line number margin.\n* `buffer.MARGIN_BACK`\n A marker symbol margin whose background color matches the default text\n background color.\n* `buffer.MARGIN_FORE`\n A marker symbol margin whose foreground color matches the default text\n foreground color.\n* `buffer.MARGIN_TEXT`\n A text margin.\n* `buffer.MARGIN_RTEXT`\n A right-justified text margin.\n\nThe default values are `true`, `false`, `false`, `false`, and `false`, for\na line number margin and symbol margins.
margin_width_n buffer.margin_width_n (table)\nTable of pixel margin widths for margin numbers from zero to four.
marker_add buffer.marker_add(buffer, line, marker_num)\nAdds marker number *marker_num*, in the range of `0` to `31`, to line number\n*line*, returning a marker handle which can be used in\n`buffer:marker_delete_handle()` and `buffer:marker_line_from_handle()`, or\n`-1` if the marker cannot be added.\n@param buffer The buffer.\n@param line The line number to add the marker on.\n@param marker_num The marker number in the range of `0` to `31` to add.\n@return number
-marker_add_set buffer.marker_add_set(buffer, line, marker_mask)\nAdds the markers specified in the marker bit-mask *marker_mask* to line\nnumber *line*.\nThe first bit is set to add marker number 0, the second bit for marker number\n1, and so on up to marker number 31.\n@param buffer The buffer.\n@param line The line number to add the markers on.\n@param marker_mask The mask of markers to set. Set bit 0 to set marker 0, bit\n 1 for marker 1 and so on.
+marker_add_set buffer.marker_add_set(buffer, line, marker_mask)\nAdds the markers specified in marker bit-mask *marker_mask* to line number\n*line*.\nThe first bit is set to add marker number 0, the second bit for marker number\n1, and so on up to marker number 31.\n@param buffer The buffer.\n@param line The line number to add the markers on.\n@param marker_mask The mask of markers to set. Set bit 0 to set marker 0, bit\n 1 for marker 1 and so on.
marker_alpha buffer.marker_alpha (table, Write-only)\nTable of alpha values, ranging from `0` (transparent) to `255` (opaque),\nof markers drawn in the text area, not the margin, for markers numbers from\n`0` to `31`.\nThe default values are `buffer.ALPHA_NOALPHA`, for no alpha.
marker_back buffer.marker_back (table, Write-only)\nTable of background colors, in "0xBBGGRR" format, of marker numbers from\n`0` to `31`.
marker_back_selected buffer.marker_back_selected (table, Write-only)\nTable of background colors, in "0xBBGGRR" format, of markers whose folding\nblocks are selected for marker numbers from `0` to `31`.
-marker_define buffer.marker_define(buffer, marker_num, marker_symbol)\nAssociates marker number *marker_num*, in the range of `0` to `31`, with\nsymbol *marker_symbol*.\n*marker_symbol* is shown in symbol margins next to lines marked with\n*marker_num*.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to set\n *marker_symbol* for.\n@param marker_symbol The marker symbol: `buffer.MARK_*`.\n@see _SCINTILLA.next_marker_number
-marker_define_pixmap buffer.marker_define_pixmap(buffer, marker_num, pixmap)\nAssociates marker number *marker_num*, in the range of `0` to `31`, with XPM\nimage *pixmap*.\nThe `buffer.MARK_PIXMAP` symbol must be associated with *marker_num*.\nThe image is shown in symbol margins next to lines marked with *marker_num*.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to define\n pixmap *pixmap* for.\n@param pixmap The string pixmap data.
-marker_define_rgba_image buffer.marker_define_rgba_image(buffer, marker_num, pixels)\nAssociates marker number *marker_num*, in the range of `0` to `31`, with RGBA\nimage *pixels*.\nThe dimensions for *pixels*, `buffer.rgba_image_width` and\n`buffer.rgba_image_height`, must have already been defined. *pixels* is a\nsequence of 4 byte pixel values (red, blue, green, and alpha) defining the\nimage line by line starting at the top-left pixel.\nThe `buffer.MARK_RGBAIMAGE` symbol must be associated with *marker_num*.\nThe image is shown in symbol margins next to lines marked with *marker_num*.\nRGBA image markers use the `buffer.MARK_RGBAIMAGE` marker symbol.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to define\n RGBA data *pixels* for.\n@param pixels The string sequence of 4 byte pixel values starting with the\n pixels for the top line, with the leftmost pixel first, then continuing\n with the pixels for subsequent lines. There is no gap between lines for\n alignment reasons. Each pixel consists of, in order, a red byte, a green\n byte, a blue byte and an alpha byte. The colour bytes are not premultiplied\n by the alpha value. That is, a fully red pixel that is 25% opaque will be\n `[FF, 00, 00, 3F]`.
+marker_define buffer.marker_define(buffer, marker_num, marker_symbol)\nAssigns marker symbol *marker_symbol* to marker number *marker_num*, in the\nrange of `0` to `31`.\n*marker_symbol* is shown in marker symbol margins next to lines marked with\n*marker_num*.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to set\n *marker_symbol* for.\n@param marker_symbol The marker symbol: `buffer.MARK_*`.\n@see _SCINTILLA.next_marker_number
+marker_define_pixmap buffer.marker_define_pixmap(buffer, marker_num, pixmap)\nAssociates marker number *marker_num*, in the range of `0` to `31`, with XPM\nimage *pixmap*.\nThe `buffer.MARK_PIXMAP` marker symbol must be assigned to *marker_num*.\nThe image is shown in marker symbol margins next to lines marked with\n*marker_num*.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to define\n pixmap *pixmap* for.\n@param pixmap The string pixmap data.
+marker_define_rgba_image buffer.marker_define_rgba_image(buffer, marker_num, pixels)\nAssociates marker number *marker_num*, in the range of `0` to `31`, with RGBA\nimage *pixels*.\nThe dimensions for *pixels*, `buffer.rgba_image_width` and\n`buffer.rgba_image_height`, must have already been defined. *pixels* is a\nsequence of 4 byte pixel values (red, blue, green, and alpha) defining the\nimage line by line starting at the top-left pixel.\nThe `buffer.MARK_RGBAIMAGE` marker symbol must be assigned to *marker_num*.\nThe image is shown in symbol margins next to lines marked with *marker_num*.\nRGBA image markers use the `buffer.MARK_RGBAIMAGE` marker symbol.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to define\n RGBA data *pixels* for.\n@param pixels The string sequence of 4 byte pixel values starting with the\n pixels for the top line, with the leftmost pixel first, then continuing\n with the pixels for subsequent lines. There is no gap between lines for\n alignment reasons. Each pixel consists of, in order, a red byte, a green\n byte, a blue byte and an alpha byte. The colour bytes are not premultiplied\n by the alpha value. That is, a fully red pixel that is 25% opaque will be\n `[FF, 00, 00, 3F]`.
marker_delete buffer.marker_delete(buffer, line, marker_num)\nDeletes marker number *marker_num*, in the range of `0` to `31` or `-1` for\nall markers, from line number *line*.\n@param buffer The buffer.\n@param line The line number to delete the marker on.\n@param marker_num The marker number in the range of `0` to `31` to delete\n from *line*, or `-1` to delete all markers from the line.
marker_delete_all buffer.marker_delete_all(buffer, marker_num)\nDeletes marker number *marker_num*, in the range of `0` to `31`, from any\nline that has it.\nIf *marker_num* is `-1`, deletes all markers from all lines.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to delete\n from all lines, or `-1` to delete all markers from all lines.
marker_delete_handle buffer.marker_delete_handle(buffer, handle)\nDeletes the marker with handle *handle* returned by `buffer:marker_add()`.\n@param buffer The buffer.\n@param handle The identifier of a marker returned by `buffer:marker_add()`.
@@ -838,9 +836,9 @@ marker_enable_highlight buffer.marker_enable_highlight(buffer, enabled)\nHighlig
marker_fore buffer.marker_fore (table, Write-only)\nTable of foreground colors, in "0xBBGGRR" format, of marker numbers from\n`0` to `31`.
marker_get buffer.marker_get(buffer, line)\nReturns a bit-mask representing the markers that were added to line number\n*line*.\nThe first bit is set if marker number 0 is present, the second bit for marker\nnumber 1, and so on.\n@param buffer The buffer.\n@param line The line number to get markers on.\n@return number
marker_line_from_handle buffer.marker_line_from_handle(buffer, handle)\nReturns the line number that marker handle *handle*, returned by\n`buffer:marker_add()`, was added to, or `-1`.\n@param buffer The buffer.\n@param handle The identifier of a marker returned by `buffer:marker_add()`.\n@return number
-marker_next buffer.marker_next(buffer, start_line, marker_mask)\nReturns the first line number starting at line number *start_line* that has\nhad all of the markers represented by marker bit-mask *marker_mask* added to\nit, or `-1` if no line was found.\nBit 0 is set if marker 0 is set, bit 1 for marker 1, etc., up to marker 31.\n@param buffer The buffer.\n@param start_line The start line to search from.\n@param marker_mask The mask of markers to find. Set bit 0 to find marker 0,\n bit 1 for marker 1 and so on.\n@return number
-marker_previous buffer.marker_previous(buffer, start_line, marker_mask)\nReturns the last line number before or on line number *start_line* that has\nhad all of the markers represented by marker bit-mask *marker_mask* added to\nit, or `-1` if no line was found.\nBit 0 is set if marker 0 is set, bit 1 for marker 1, etc., up to marker 31.\n@param buffer The buffer.\n@param start_line The start line to search from.\n@param marker_mask The mask of markers to find. Set bit 0 to find marker 0,\n bit 1 for marker 1 and so on.\n@return number
-marker_symbol_defined buffer.marker_symbol_defined(buffer, marker_num)\nReturns the symbol defined for marker number *marker_num*, in the range of\n`0` to `31`, used in `buffer:marker_define()`,\n`buffer:marker_define_pixmap()`, or `buffer:marker_define_rgba_image()`.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to get the\n symbol of.\n@return number
+marker_next buffer.marker_next(buffer, start_line, marker_mask)\nReturns the first line number, starting at line number *start_line*, that has\nhad all of the markers represented by marker bit-mask *marker_mask* added to\nit, or `-1` if no line was found.\nBit 0 is set if marker 0 is set, bit 1 for marker 1, etc., up to marker 31.\n@param buffer The buffer.\n@param start_line The start line to search from.\n@param marker_mask The mask of markers to find. Set bit 0 to find marker 0,\n bit 1 for marker 1 and so on.\n@return number
+marker_previous buffer.marker_previous(buffer, start_line, marker_mask)\nReturns the last line number, before or on line number *start_line*, that has\nhad all of the markers represented by marker bit-mask *marker_mask* added to\nit, or `-1` if no line was found.\nBit 0 is set if marker 0 is set, bit 1 for marker 1, etc., up to marker 31.\n@param buffer The buffer.\n@param start_line The start line to search from.\n@param marker_mask The mask of markers to find. Set bit 0 to find marker 0,\n bit 1 for marker 1 and so on.\n@return number
+marker_symbol_defined buffer.marker_symbol_defined(buffer, marker_num)\nReturns the symbol assigned to marker number *marker_num*, in the range of\n`0` to `31`, used in `buffer:marker_define()`,\n`buffer:marker_define_pixmap()`, or `buffer:marker_define_rgba_image()`.\n@param buffer The buffer.\n@param marker_num The marker number in the range of `0` to `31` to get the\n symbol of.\n@return number
match lpeg.match(pattern, subject [, init])\nThe matching function. It attempts to match the given pattern against the\nsubject string. If the match succeeds, returns the index in the subject of\nthe first character after the match, or the captured values (if the pattern\ncaptured any value).\n\nAn optional numeric argument `init` makes the match start at that position in\nthe subject string. As usual in Lua libraries, a negative value counts from\nthe end.\n\nUnlike typical pattern-matching functions, match works only in anchored mode;\nthat is, it tries to match the pattern with a prefix of the given subject\nstring (at position `init`), not with an arbitrary substring of the subject.\nSo, if we want to find a pattern anywhere in a string, we must either write a\nloop in Lua or write a pattern that matches anywhere. This second approach is\neasy and quite efficient; see examples.
match string.match(s, pattern [, init])\nLooks for the first *match* of `pattern` in the string `s`. If it\nfinds one, then `match` returns the captures from the pattern; otherwise\nit returns nil. If `pattern` specifies no captures, then the whole match\nis returned. A third, optional numerical argument `init` specifies where\nto start the search; its default value is 1 and can be negative.
match_brace textadept.editing.match_brace(select)\nGoes to the current character's matching brace, selecting the text in between\nif *select* is `true`.\n@param select Optional flag indicating whether or not to select the text\n between matching braces. The default value is `false`.
@@ -861,24 +859,24 @@ mouse_dwell_time buffer.mouse_dwell_time (number)\nThe number of milliseconds th
move_caret_inside_view buffer.move_caret_inside_view(buffer)\nMoves the caret into view if it is not already, removing any selections.\n@param buffer The buffer.
move_selected_lines_down buffer.move_selected_lines_down(buffer)\nShifts the selected lines down one line.\n@param buffer The buffer.
move_selected_lines_up buffer.move_selected_lines_up(buffer)\nShifts the selected lines up one line.\n@param buffer The buffer.
-msgbox ui.dialogs.msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options*, returning the selected button's index or, if\n*options*.`string_output` is `true`, the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the exit code. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.msgbox{title = 'EOL Mode', text = 'Which EOL?',\n icon = 'gtk-dialog-question', button1 = 'CRLF', button2 = 'CR',\n button3 = 'LF'}\n@return selected button or exit code
+msgbox ui.dialogs.msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options*, returning the selected button's index or, if\n*options*.`string_output` is `true`, the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the dialog's exit code. The\n default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.msgbox{title = 'EOL Mode', text = 'Which EOL?',\n icon = 'gtk-dialog-question', button1 = 'CRLF', button2 = 'CR',\n button3 = 'LF'}\n@return selected button or exit code
multi_paste buffer.multi_paste (number)\nThe multiple selection paste mode.\n\n* `buffer.MULTIPASTE_ONCE`\n Paste into only the main selection.\n* `buffer.MULTIPASTE_EACH`\n Paste into all selections.\n\nThe default value is `buffer.MULTIPASTE_ONCE`.
multiple_selection buffer.multiple_selection (bool)\nEnable multiple selection.\nThe default value is `false`.
-nested_pair lexer.nested_pair(start_chars, end_chars)\nSimilar to `delimited_range()`, but allows for multi-character, nested\ndelimiters *start_chars* and *end_chars*.\nWith single-character delimiters, this function is identical to\n`delimited_range(start_chars..end_chars, false, true, true)`.\n@param start_chars The string starting a nested sequence.\n@param end_chars The string ending a nested sequence.\n@usage local nested_comment = l.nested_pair('/*', '*/')\n@return pattern\n@see delimited_range
+nested_pair lexer.nested_pair(start_chars, end_chars)\nReturns a pattern that matches a balanced range of text that starts with\nstring *start_chars* and ends with string *end_chars*.\nWith single-character delimiters, this function is identical to\n`delimited_range(start_chars..end_chars, false, true, true)`.\n@param start_chars The string starting a nested sequence.\n@param end_chars The string ending a nested sequence.\n@usage local nested_comment = l.nested_pair('/*', '*/')\n@return pattern\n@see delimited_range
new buffer.new()\nCreates and returns a new buffer.\nEmits a `BUFFER_NEW` event.\n@return the new buffer.\n@see events.BUFFER_NEW
new textadept.adeptsense.new(lang)\nCreates and returns a new Adeptsense for lexer name *lexer*.\nOnly one sense can exist per language.\n@param lang The lexer language name to create an Adeptsense for.\n@usage local lua_sense = textadept.adeptsense.new('lua')\n@return adeptsense
new_line buffer.new_line(buffer)\nTypes a new line at the caret position based on\n`buffer.eol_mode`.\n@param buffer The buffer.
-newline lexer.newline (pattern)\nA pattern that matches any newline characters.
+newline lexer.newline (pattern)\nA pattern that matches any set of end of line characters.
next _G.next(table [, index])\nAllows a program to traverse all fields of a table. Its first argument is\na table and its second argument is an index in this table. `next` returns\nthe next index of the table and its associated value. When called with nil\nas its second argument, `next` returns an initial index and its associated\nvalue. When called with the last index, or with nil in an empty table, `next`\nreturns nil. If the second argument is absent, then it is interpreted as\nnil. In particular, you can use `next(t)` to check whether a table is empty.\n\nThe order in which the indices are enumerated is not specified, *even for\nnumeric indices*. (To traverse a table in numeric order, use a numerical\n`for`.)\n\nThe behavior of `next` is undefined if, during the traversal, you assign any\nvalue to a non-existent field in the table. You may however modify existing\nfields. In particular, you may clear existing fields.
next_indic_number _SCINTILLA.next_indic_number()\nReturns a unique indicator number for use with custom indicators.\nUse this function for custom indicators in order to prevent clashes with\nidentifiers of other custom indicators.\n@usage local indic_num = _SCINTILLA.next_indic_number()\n@see buffer.indic_style
next_marker_number _SCINTILLA.next_marker_number()\nReturns a unique marker number for use with `buffer.marker_define()`.\nUse this function for custom markers in order to prevent clashes with\nidentifiers of other custom markers.\n@usage local marknum = _SCINTILLA.next_marker_number()\n@see buffer.marker_define
next_user_list_type _SCINTILLA.next_user_list_type()\nReturns a unique user list identier number for use with\n`buffer.user_list_show()`.\nUse this function for custom user lists in order to prevent clashes with\nlist identifiers of other custom user lists.\n@usage local list_type = _SCINTILLA.next_user_list_type()\n@see buffer.user_list_show
-nonnewline lexer.nonnewline (pattern)\nA pattern that matches any non-newline character.
-nonnewline_esc lexer.nonnewline_esc (pattern)\nA pattern that matches any non-newline character, excluding newlines\nescaped with '\'.
+nonnewline lexer.nonnewline (pattern)\nA pattern that matches any single, non-newline character.
+nonnewline_esc lexer.nonnewline_esc (pattern)\nA pattern that matches any single, non-newline character or any set of end\nof line characters escaped with '\'.
oct_num lexer.oct_num (pattern)\nA pattern that matches an octal number.
-ok_msgbox ui.dialogs.ok_msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options* and with localized "Ok" and "Cancel" buttons, returning the\nselected button's index or, if *options*.`string_output` is `true`, the\nselected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the exit code. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code
+ok_msgbox ui.dialogs.ok_msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options* and with localized "Ok" and "Cancel" buttons, returning the\nselected button's index or, if *options*.`string_output` is `true`, the\nselected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the dialog's exit code. The\n default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code
open io.open(filename [, mode])\nThis function opens a file, in the mode specified in the string `mode`. It\nreturns a new file handle, or, in case of errors, nil plus an error message.\n\nThe `mode` string can be any of the following:\n "r": read mode (the default);\n "w": write mode;\n "a": append mode;\n "r+": update mode, all previous data is preserved;\n "w+": update mode, all previous data is erased;\n "a+": append update mode, previous data is preserved, writing is only\n allowed at the end of file.\n\nThe `mode` string can also have a '`b`' at the end, which is needed in\nsome systems to open the file in binary mode.
-open_file io.open_file(filenames)\nOpens *filenames*, a string filename or table of provided or user-selected\nfilenames.\nEmits a `FILE_OPENED` event.\n@param filenames Optional string filename or table of filenames to open. If\n `nil`, the user is prompted with a fileselect dialog.\n@see _G.events
+open_file io.open_file(filenames)\nOpens *filenames*, a string filename or list of filenames, or the\nuser-selected filenames.\nEmits a `FILE_OPENED` event.\n@param filenames Optional string filename or table of filenames to open. If\n `nil`, the user is prompted with a fileselect dialog.\n@see _G.events
open_recent_file io.open_recent_file()\nPrompts the user to select a recently opened file to reopen.\n@see recent_files
os _G.os (module)\nLua os module.
output io.output([file])\nSimilar to `io.input`, but operates over the default output file.
@@ -904,10 +902,8 @@ php _G.keys.php (table)\nContainer for PHP-specific key bindings.
php _G.snippets.php (table)\nContainer for PHP-specific snippets.
php _M.php (module)\nThe php module.\nIt provides utilities for editing PHP code.
pi math.pi (number)\nThe value of 'π'.
-point_x_from_position buffer.point_x_from_position(buffer, pos)\nReturns the x-coordinate in the view of position *pos*.\n@param buffer The buffer.\n@param pos The position in *buffer* to get the x-coordinate in the view of.\n@return number
-point_y_from_position buffer.point_y_from_position(buffer, pos)\nReturns the y-coordinate in the view of position *pos*.\n@param buffer The buffer.\n@param pos The position in *buffer* to get the y-coordinate in the view of.\n@return number
popen io.popen(prog [, mode])\nStarts program `prog` in a separated process and returns a file handle\nthat you can use to read data from this program (if `mode` is `"r"`,\nthe default) or to write data to this program (if `mode` is `"w"`).\n\nThis function is system dependent and is not available on all platforms.
-position_after buffer.position_after(buffer, pos)\nReturns the position of the next character after position *pos*, taking\nmulti-byte characters into account, or `buffer.length - 1`.\n@param buffer The buffer.\n@param pos The position in *buffer* to get the position after from.
+position_after buffer.position_after(buffer, pos)\nReturns the position of the next character after position *pos*, taking\nmulti-byte characters into account, or `buffer.length`.\n@param buffer The buffer.\n@param pos The position in *buffer* to get the position after from.
position_before buffer.position_before(buffer, pos)\nReturns the position of the previous character before position *pos*, taking\nmulti-byte characters into account, or `0`.\n@param buffer The buffer.\n@param pos The position in *buffer* to get the position before from.\n@return number
position_from_line buffer.position_from_line(buffer, line)\nReturns the position at the beginning of line number *line*.\nReturns `-1` if *line* is greater than `buffer.line_count`.\n@param buffer The buffer.\n@param line The line number in *buffer* to get the beginning position for.\n@return number
pow math.pow(x, y)\nReturns *x^y*. (You can also use the expression `x^y` to compute this\nvalue.)
@@ -923,8 +919,8 @@ property_expanded buffer.property_expanded (table, Read-only)\nMap of key-value
property_expanded lexer.property_expanded (table, Read-only)\nMap of key-value string pairs with `$()` and `%()` variable replacement\nperformed in values.
property_int buffer.property_int (table, Read-only)\nMap of key-value pairs used by lexers with values interpreted as numbers,\nor `0` if not found.
property_int lexer.property_int (table, Read-only)\nMap of key-value pairs with values interpreted as numbers, or `0` if not\nfound.
-punct lexer.punct (pattern)\nA pattern that matches any punctuation character not alphanumeric ('!' to\n'/', ':' to '@', '[' to ''', '{' to '~').
-punctuation_chars buffer.punctuation_chars (string)\nThe string set of characters recognized as punctuation characters.\nSet this only after setting `buffer.word_chars`.\nThe default value is a string containing all characters not considered to\nbe whitespace or word characters.
+punct lexer.punct (pattern)\nA pattern that matches any punctuation character ('!' to '/', ':' to '@',\n'[' to ''', '{' to '~').
+punctuation_chars buffer.punctuation_chars (string)\nThe string set of characters recognized as punctuation characters.\nSet this only after setting `buffer.word_chars`.\nThe default value is a string containing all non-word and non-whitespace\ncharacters.
python _G.keys.python (table)\nContainer for Python-specific key bindings.
python _G.snippets.python (table)\nContainer for Python-specific snippets.
python _M.python (module)\nThe python module.\nIt provides utilities for editing Python code.
@@ -947,7 +943,7 @@ rectangular_selection_anchor buffer.rectangular_selection_anchor (number)\nThe r
rectangular_selection_anchor_virtual_space buffer.rectangular_selection_anchor_virtual_space (number)\nThe amount of virtual space for the rectangular selection's anchor.
rectangular_selection_caret buffer.rectangular_selection_caret (number)\nThe rectangular selection's caret position.
rectangular_selection_caret_virtual_space buffer.rectangular_selection_caret_virtual_space (number)\nThe amount of virtual space for the rectangular selection's caret.
-rectangular_selection_modifier buffer.rectangular_selection_modifier (number)\nThe modifier key used in combination with a mouse drag to create a\nrectangular selection.\n\n* `buffer.MOD_CTRL`\n The "Control" modifier key.\n* `buffer.MOD_ALT`\n The "Alt" modifier key.\n* `buffer.MOD_SUPER`\n The "Super" modifier key, usually defined as the left "Windows" or\n "Command" key.\n\nThe default value is `buffer.MOD_CTRL`.
+rectangular_selection_modifier buffer.rectangular_selection_modifier (number)\nThe modifier key used in combination with a mouse drag in order to create a\nrectangular selection.\n\n* `buffer.MOD_CTRL`\n The "Control" modifier key.\n* `buffer.MOD_ALT`\n The "Alt" modifier key.\n* `buffer.MOD_SUPER`\n The "Super" modifier key, usually defined as the left "Windows" or\n "Command" key.\n\nThe default value is `buffer.MOD_CTRL`.
redo buffer.redo(buffer)\nRedoes the next undone action.\n@param buffer The buffer.
register args.register(short, long, narg, f, description)\nRegisters a command line switch with short and long versions *short* and\n*long*, respectively. *narg* is the number of arguments the switch accepts,\n*f* is the function called when the switch is tripped, and *description* is\nthe switch's description when displaying help.\n@param short The string short version of the switch.\n@param long The string long version of the switch.\n@param narg The number of expected parameters for the switch.\n@param f The Lua function to run when the switch is tripped.\n@param description The string description of the switch for command line\n help.
register_image buffer.register_image(buffer, type, xpm_data)\nRegisters XPM image *xpm_data* to type number *type* for use in\nautocompletion and user lists.\n@param buffer The buffer.\n@param type Integer type to register the image with.\n@param xpm_data The XPM data as described in `buffer:marker_define_pixmap()`.
@@ -966,15 +962,15 @@ replace_button_text ui.find.replace_button_text (string, Write-only)\nThe text o
replace_entry_text ui.find.replace_entry_text (string)\nThe text in the replace entry.
replace_label_text ui.find.replace_label_text (string, Write-only)\nThe text of the "Replace" label.\nThis is primarily used for localization.
replace_sel buffer.replace_sel(buffer, text)\nReplaces the selected text with string *text*, scrolling the caret into view.\n@param buffer The buffer.\n@param text The text to replace the selected text with.
-replace_target buffer.replace_target(buffer, text)\nReplaces the text in the target range with string *text* without modifying\nany selections or scrolling the view.\nSetting the target and calling this function with an empty string is another\nway to delete text.\n@param buffer The buffer.\n@param text The text to replace the target range with.\n@return number
-replace_target_re buffer.replace_target_re(buffer, text)\nReplaces the text in the target range with string *text* but first replaces\nany "\d" sequences with the value of tag match number *d* from the regular\nexpression (or the entire match for *d* = 0), and then returns the\nreplacement text's length.\n@param buffer The buffer.\n@param text The text to replace the target range with.\n@return number
+replace_target buffer.replace_target(buffer, text)\nReplaces the text in the target range with string *text* sans modifying any\nselections or scrolling the view.\nSetting the target and calling this function with an empty string is another\nway to delete text.\n@param buffer The buffer.\n@param text The text to replace the target range with.\n@return number
+replace_target_re buffer.replace_target_re(buffer, text)\nReplaces the text in the target range with string *text* but first replaces\nany "\d" sequences with the text of capture number *d* from the regular\nexpression (or the entire match for *d* = 0), and then returns the\nreplacement text's length.\n@param buffer The buffer.\n@param text The text to replace the target range with.\n@return number
require _G.require(modname)\nLoads the given module. The function starts by looking into the\n`package.loaded` table to determine whether `modname` is already\nloaded. If it is, then `require` returns the value stored at\n`package.loaded[modname]`. Otherwise, it tries to find a *loader* for\nthe module.\n\nTo find a loader, `require` is guided by the `package.searchers` sequence. By\nchanging this sequence, we can change how `require` looks for a module. The\nfollowing explanation is based on the default configuration for\n`package.searchers`.\n\nFirst `require` queries `package.preload[modname]`. If it has a value,\nthis value (which should be a function) is the loader. Otherwise `require`\nsearches for a Lua loader using the path stored in `package.path`. If\nthat also fails, it searches for a C loader using the path stored in\n`package.cpath`. If that also fails, it tries an *all-in-one* loader (see\n`package.searchers`).\n\nOnce a loader is found, `require` calls the loader with two arguments:\n`modname` and an extra value dependent on how it got the loader. (If the\nloader came from a file, this extra value is the file name.) If the loader\nreturns any non-nil value, `require` assigns the returned value to\n`package.loaded[modname]`. If the loader does not return a non-nil value and\nhas not assigned any value to `package.loaded[modname]`, then `require`\nassigns <b>true</b> to this entry. In any case, `require` returns the final\nvalue of `package.loaded[modname]`.\n\nIf there is any error loading or running the module, or if it cannot find\nany loader for the module, then `require` raises an error.
reset _G.reset()\nResets the Lua state by reloading all initialization scripts.\nLanguage modules for opened files are NOT reloaded. Re-opening the files that\nuse them will reload those modules instead.\nThis function is useful for modifying user scripts (such as\n*~/.textadept/init.lua* and *~/.textadept/modules/textadept/keys.lua*) on\nthe fly without having to restart Textadept. `arg` is set to `nil` when\nreinitializing the Lua State. Any scripts that need to differentiate between\nstartup and reset can test `arg`.
resume coroutine.resume(co [, val1, ···])\nStarts or continues the execution of coroutine `co`. The first time\nyou resume a coroutine, it starts running its body. The values `val1`,\n... are passed as the arguments to the body function. If the coroutine\nhas yielded, `resume` restarts it; the values `val1`, ... are passed\nas the results from the yield.\n\nIf the coroutine runs without any errors, `resume` returns true plus any\nvalues passed to `yield` (if the coroutine yields) or any values returned\nby the body function (if the coroutine terminates). If there is any error,\n`resume` returns false plus the error message.
reverse string.reverse(s)\nReturns a string that is the string `s` reversed.
-rgba_image_height buffer.rgba_image_height (number)\nThe height for the RGBA image to be defined using\n`buffer:marker_define_rgba_image()`.
-rgba_image_scale buffer.rgba_image_scale (number)\nThe scale factor in percent for the RGBA image to be defined using\n`buffer:marker_define_rgba_image()`.\nThis is useful on OSX with a retina display where each display unit is 2\npixels: use a factor of `200` so that each image pixel is displayed using a\nscreen pixel. The default scale, `100`, will stretch each image pixel to\ncover 4 screen pixels on a retina display.
-rgba_image_width buffer.rgba_image_width (number)\nThe width for the RGBA image to be defined using\n`buffer:marker_define_rgba_image()` and\n`buffer:register_rgba_image()`.
+rgba_image_height buffer.rgba_image_height (number)\nThe height of the RGBA image to be defined using\n`buffer:marker_define_rgba_image()`.
+rgba_image_scale buffer.rgba_image_scale (number)\nThe scale factor in percent of the RGBA image to be defined using\n`buffer:marker_define_rgba_image()`.\nThis is useful on OSX with a retina display where each display unit is 2\npixels: use a factor of `200` so that each image pixel is displayed using a\nscreen pixel. The default scale, `100`, will stretch each image pixel to\ncover 4 screen pixels on a retina display.
+rgba_image_width buffer.rgba_image_width (number)\nThe width of the RGBA image to be defined using\n`buffer:marker_define_rgba_image()` and\n`buffer:register_rgba_image()`.
rhtml _G.keys.rhtml (table)\nContainer for RHTML-specific key bindings.
rhtml _G.snippets.rhtml (table)\nContainer for RHTML-specific snippets.
rhtml _M.rhtml (module)\nThe RHTML module.\nIt provides utilities for editing RHTML.
@@ -986,19 +982,19 @@ ruby _G.keys.ruby (table)\nContainer for Ruby-specific key bindings.
ruby _G.snippets.ruby (table)\nContainer for Ruby-specific snippets.
ruby _M.ruby (module)\nThe ruby module.\nIt provides utilities for editing Ruby code.
run textadept.run (module)\nCompile and run source code files with Textadept.\nLanguage modules may tweak the `compile_commands`, `run_commands`, and/or\n`error_patterns` tables for particular languages.
-run textadept.run.run()\nRuns the file based on its extension or language, using the command from the\n`run_commands` table.\nEmits a `RUN_OUTPUT` event.\n@see run_commands\n@see _G.events
-run_commands textadept.run.run_commands (table)\nMap of file extensions (excluding the leading '.') or lexer names to their\nassociated "run" shell command line strings or functions returning such\nstrings.\nCommand line strings may have the following macros:\n\n + `%(filepath)`: The full path of the current file.\n + `%(filedir)`: The current file's directory path.\n + `%(filename)`: The name of the file, including its extension.\n + `%(filename_noext)`: The name of the file, excluding its extension.
+run textadept.run.run()\nRuns the current file based on its extension or language, using the command\nfrom the `run_commands` table.\nEmits a `RUN_OUTPUT` event.\n@see run_commands\n@see _G.events
+run_commands textadept.run.run_commands (table)\nMap of file extensions (excluding the leading '.') or lexer names to their\nassociated "run" shell command line strings or functions returning such\nstrings.\nCommand line strings may have the following macros:\n\n + `%(filepath)`: The full path of the current file.\n + `%d` or `%(filedir)`: The current file's directory path.\n + `%f` or `%(filename)`: The file's name, including its extension.\n + `%e` or `%(filename_noext)`: The file's name, excluding its extension.
running coroutine.running()\nReturns the running coroutine plus a boolean, true when the running coroutine\nis the main one.
-save textadept.session.save(filename)\nSaves the session to file *filename* or user-selected file.\nSaves split views, opened buffers, cursor information, and recent files.\n@param filename Optional absolute path to the session file to save. If `nil`,\n the user is prompted for one.\n@usage textadept.session.save(filename)\n@see DEFAULT_SESSION
+save textadept.session.save(filename)\nSaves the session to file *filename* or the user-selected file.\nSaves split views, opened buffers, cursor information, and recent files.\n@param filename Optional absolute path to the session file to save. If `nil`,\n the user is prompted for one.\n@usage textadept.session.save(filename)\n@see DEFAULT_SESSION
save_all_files io.save_all_files()\nSaves all unsaved buffers to their respective files.\n@see io.save_file
save_file io.save_file()\nSaves the current buffer to its file.\nEmits `FILE_BEFORE_SAVE` and `FILE_AFTER_SAVE` events.
-save_file_as io.save_file_as(filename)\nSaves the current buffer to file *filename* or user-specified filename.\nEmits a `FILE_SAVED_AS` event.\n@param filename Optional new filepath to save the buffer to. If `nil`, the\n user is prompted for one.
-scroll_caret buffer.scroll_caret(buffer)\nScrolls the caret into view based on the policies set with\n`buffer:set_x_caret_policy()` and `buffer:set_y_caret_policy()`.\n@param buffer The buffer.\n@see set_x_caret_policy\n@see set_y_caret_policy
+save_file_as io.save_file_as(filename)\nSaves the current buffer to file *filename* or the user-specified filename.\nEmits a `FILE_SAVED_AS` event.\n@param filename Optional new filepath to save the buffer to. If `nil`, the\n user is prompted for one.
+scroll_caret buffer.scroll_caret(buffer)\nScrolls the caret into view based on the policies previously defined in\n`buffer:set_x_caret_policy()` and `buffer:set_y_caret_policy()`.\n@param buffer The buffer.\n@see set_x_caret_policy\n@see set_y_caret_policy
scroll_range buffer.scroll_range(buffer, secondary_pos, primary_pos)\nScrolls the range of text between positions *primary_pos* and *secondary_pos*\ninto view, with priority given to *primary_pos*.\nSimilar to `buffer:scroll_caret()`, but with *primary_pos* instead of\n`buffer.current_pos`.\nThis is useful for scrolling search results into view.\n@param buffer The buffer.\n@param secondary_pos The secondary range position to scroll into view.\n@param primary_pos The primary range position to scroll into view.
scroll_to_end buffer.scroll_to_end(buffer)\nScrolls to the end of the buffer without moving the caret.\n@param buffer The buffer.
scroll_to_start buffer.scroll_to_start(buffer)\nScrolls to the beginning of the buffer without moving the caret.\n@param buffer The buffer.
scroll_width buffer.scroll_width (number)\nThe horizontal scrolling pixel width.\nFor performance, the view does not measure the display width of the buffer\nto determine the properties of the horizontal scroll bar, but uses an\nassumed width instead. To ensure the width of the currently visible lines\ncan be scrolled use\n`buffer.scroll_width_tracking`.\nThe default value is `2000`.
-scroll_width_tracking buffer.scroll_width_tracking (bool)\nContinuously update the scroll width to match the maximum width of a\ndisplayed line beyond `buffer.scroll_width`.\nThe default value is `false`.
+scroll_width_tracking buffer.scroll_width_tracking (bool)\nContinuously update the horizontal scrolling width to match the maximum\nwidth of a displayed line beyond `buffer.scroll_width`.\nThe default value is `false`.
search_anchor buffer.search_anchor(buffer)\nAnchors the position `buffer:search_next()` and `buffer:search_prev()` begin\nat to the caret position.\n@param buffer The buffer.
search_flags buffer.search_flags (number)\nThe bit-mask of search flags used by\n`buffer:search_in_target()`.\n\n* `buffer.FIND_WHOLEWORD`\n Match the search text surrounded by non-word characters.\n* `buffer.FIND_MATCHCASE`\n Match the search text case sensitively.\n* `buffer.FIND_WORDSTART`\n Match the search text only when the previous character is a non-word\n character.\n* `buffer.FIND_REGEXP`\n Interpret the search text as a regular expression.\n\nThe default value is `0`.\n\nRegular expression characters recognized are:\n\n* `.`\n Matches any character.\n* `[set]`\n Matches any character in *set*, including ranges (e.g. `[A-Za-z]`).\n* `[^set]`\n Matches the complement of *set*.\n* `*`\n Matches zero or more of the previous match.\n* `+`\n Matches one or more of the previous match.\n* `\<`\n Matches the beginning of a word.\n* `\>`\n Matches the end of a word.\n* `^`\n Matches the start of a line unless inside a set.\n* `$`\n Matches the end of a line unless inside a set.\n* `(`\n The beginning of a tagged matching region.\n* `)`\n The end of a tagged matching region.\n* `\n`\n The matched text of the *n*th tagged region. In replacement text, "\0" is\n all matched text.\n* `\x`\n Represents character *x*, ignoring any special meaning it may have by\n itself.
search_in_target buffer.search_in_target(buffer, text)\nSearches for the first occurrence of string *text* in the target range\nbounded by `buffer.target_start` and `buffer.target_end` using search flags\n`buffer.search_flags` and, if found, sets the new target range to that\noccurrence, returning its position or `-1` otherwise.\n@param buffer The buffer.\n@param text The text to search the target range for.\n@return number\n@see search_flags
@@ -1006,15 +1002,15 @@ search_next buffer.search_next(buffer, flags, text)\nSearches for and selects th
search_prev buffer.search_prev(buffer, flags, text)\nSearches for and selects the last occurrence of string *text* before the\nsearch anchor using search flags *flags*, returning the occurrence's position\nor `-1`.\n@param buffer The buffer.\n@param flags The search flags to use. See `buffer.search_flags`.\n@param text The text to search for.\n@return number\n@see search_flags
searchers package.searchers (table)\nA table used by `require` to control how to load modules.\nEach entry in this table is a *searcher function*. When looking for a\nmodule, `require` calls each of these searchers in ascending order, with\nthe module name (the argument given to `require`) as its sole parameter.\nThe function can return another function (the module *loader*) plus an\nextra value that will be passed to that loader, or a string explaining why\nit did not find that module (or nil if it has nothing to say).\nLua initializes this table with four functions.\nThe first searcher simply looks for a loader in the `package.preload`\ntable.\nThe second searcher looks for a loader as a Lua library, using the path\nstored at `package.path`. The search is done as described in function\n`package.searchpath`.\nThe third searcher looks for a loader as a C library, using the path given\nby the variable `package.cpath`. Again, the search is done as described in\nfunction `package.searchpath`. For instance, if the C path is the string\n "./?.so;./?.dll;/usr/local/?/init.so"\nthe searcher for module `foo` will try to open the files `./foo.so`,\n`./foo.dll`, and `/usr/local/foo/init.so`, in that order. Once it finds\na C library, this searcher first uses a dynamic link facility to link the\napplication with the library. Then it tries to find a C function inside the\nlibrary to be used as the loader. The name of this C function is the string\n"`luaopen_`" concatenated with a copy of the module name where each dot\nis replaced by an underscore. Moreover, if the module name has a hyphen,\nits prefix up to (and including) the first hyphen is removed. For instance,\nif the module name is `a.v1-b.c`, the function name will be `luaopen_b_c`.\nThe fourth searcher tries an *all-in-one loader*. It searches the C\npath for a library for the root name of the given module. For instance,\nwhen requiring `a.b.c`, it will search for a C library for `a`. If found,\nit looks into it for an open function for the submodule; in our example,\nthat would be `luaopen_a_b_c`. With this facility, a package can pack\nseveral C submodules into one single library, with each submodule keeping\nits original open function.\nAll searchers except the first one (preload) return as the extra value the\nfile name where the module was found, as returned by `package.searchpath`.\nThe first searcher returns no extra value.
searchpath package.searchpath(name, path [, sep [, rep]])\nSearches for the given `name` in the given `path`.\n\nA path is a string containing a sequence of _templates_ separated by\nsemicolons. For each template, the function replaces each interrogation mark\n(if any) in the template with a copy of `name` wherein all occurrences of\n`sep` (a dot, by default) were replaced by `rep` (the system's directory\nseparator, by default), and then tries to open the resulting file name.\nFor instance, if the path is the string\n "./?.lua;./?.lc;/usr/local/?/init.lua"\nthe search for the name `foo.a` will try to open the files `./foo/a.lua`,\n`./foo/a.lc`, and `/usr/local/foo/a/init.lua`, in that order.\nReturns the resulting name of the first file that it can open in read mode\n(after closing the file), or nil plus an error message if none succeeds.\n(This error message lists all file names it tried to open.)
-secure_inputbox ui.dialogs.secure_inputbox(options)\nPrompts the user with a one-line masked input box dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\ninput text or, if *options*.`string_output` is `true`, the selected button's\nlabel along with the input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the input box.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial input text.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the exit code. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, input text
-secure_standard_inputbox ui.dialogs.secure_standard_inputbox(options)\nPrompts the user with a one-line masked input box dialog defined by dialog\noptions table *options* and with localized "Ok" and "Cancel" buttons,\nreturning the selected button's index along with the input text or, if\n*options*.`string_output` is `true`, the selected button's label along with\nthe input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the input box.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial input text.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the exit code. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, input text
+secure_inputbox ui.dialogs.secure_inputbox(options)\nPrompts the user with a one-line masked input box dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\ninput text or, if *options*.`string_output` is `true`, the selected button's\nlabel along with the input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the input box.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial input text.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the dialog's exit code. The\n default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, input text
+secure_standard_inputbox ui.dialogs.secure_standard_inputbox(options)\nPrompts the user with a one-line masked input box dialog defined by dialog\noptions table *options* and with localized "Ok" and "Cancel" buttons,\nreturning the selected button's index along with the input text or, if\n*options*.`string_output` is `true`, the selected button's label along with\nthe input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the input box.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial input text.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the dialog's exit code. The\n default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, input text
seek file:seek([whence [, offset]])\nSets and gets the file position, measured from the beginning of the\nfile, to the position given by `offset` plus a base specified by the string\n`whence`, as follows:\n "set": base is position 0 (beginning of the file);\n "cur": base is current position;\n "end": base is end of file;\n\nIn case of success, function `seek` returns the final file position,\nmeasured in bytes from the beginning of the file. If `seek` fails, it returns\nnil, plus a string describing the error.\n\nThe default value for `whence` is `"cur"`, and for `offset` is 0. Therefore,\nthe call `file:seek()` returns the current file position, without changing\nit; the call `file:seek("set")` sets the position to the beginning of the\nfile (and returns 0); and the call `file:seek("end")` sets the position\nto the end of the file, and returns its size.
sel_alpha buffer.sel_alpha (number)\nThe selection's alpha value, ranging from `0` (transparent) to `255`\n(opaque).\nThe default value is `buffer.ALPHA_NOALPHA`, for no alpha.
sel_eol_filled buffer.sel_eol_filled (bool)\nExtend the selection to the view's right margin.\nThe default value is `false`.
select _G.select(index, ···)\nIf `index` is a number, returns all arguments after argument number\n`index`; a negative number indexes from the end (-1 is the last argument).\nOtherwise, `index` must be the string `"#"`, and `select` returns the total\nnumber of extra arguments it received.
select_all buffer.select_all(buffer)\nSelects all of the buffer's text without scrolling the view.\n@param buffer The buffer.
select_command textadept.menu.select_command()\nPrompts the user to select a menu command to run.
-select_enclosed textadept.editing.select_enclosed(left, right)\nSelects the text between strings *left* and *right* containing the caret.\nIf already selected, toggles between selecting *left* and *right* too.\n@param left The left part of the enclosure.\n@param right The right part of the enclosure.
+select_enclosed textadept.editing.select_enclosed(left, right)\nSelects the text between strings *left* and *right* containing the caret or,\nif already selected, toggles between selecting *left* and *right* too.\n@param left The left part of the enclosure.\n@param right The right part of the enclosure.
select_indented_block textadept.editing.select_indented_block()\nSelects all text with the current level of indentation.\nIf a text block is selected and the lines immediately above and below it are\none indentation level lower, adds those lines to the selection.
select_lexer textadept.file_types.select_lexer()\nPrompts the user to select a lexer for the current buffer.\n@see buffer.set_lexer
select_line textadept.editing.select_line()\nSelects the current line.
@@ -1034,7 +1030,7 @@ selection_n_start buffer.selection_n_start (table)\nTable of positions at the be
selection_start buffer.selection_start (number)\nThe position of the beginning of the selected text.\nWhen set, becomes the anchor, but is not scrolled into view.
selections buffer.selections (number, Read-only)\nThe number of active selections.
self textadept.adeptsense.syntax.self (table)\nThe language's syntax-equivalent of "self". The default value is\n `'self'`.
-sense _M.cpp.sense\nThe C/C++ Adeptsense.\n It loads user tags from *`_USERHOME`/modules/cpp/tags* and user apidocs\n from *`_USERHOME`/modules/cpp/api*.
+sense _M.ansi_c.sense\nThe C Adeptsense.\n It loads user tags from *`_USERHOME`/modules/ansi_c/tags* and user apidocs\n from *`_USERHOME`/modules/ansi_c/api*.
sense _M.css.sense\nThe CSS Adeptsense.\n It loads user tags from *`_USERHOME`/modules/css/tags* and user apidocs\n from *`_USERHOME`/modules/css/api*.
sense _M.hypertext.sense\nThe HTML Adeptsense.\n It loads user tags from *`_USERHOME`/modules/hypertext/tags* and user\n apidocs from *`_USERHOME`/modules/hypertext/api*.
sense _M.java.sense\nThe Java Adeptsense.\n It loads user tags from *`_USERHOME`/modules/java/tags* and user apidocs\n from *`_USERHOME`/modules/java/api*.
@@ -1049,23 +1045,23 @@ set_buffer_encoding io.set_buffer_encoding(encoding)\nConverts the current buffe
set_chars_default buffer.set_chars_default(buffer)\nResets `buffer.word_chars`, `buffer.whitespace_chars`, and\n`buffer.punctuation_chars` to their respective defaults.\n@param buffer The buffer.\n@see word_chars\n@see whitespace_chars\n@see punctuation_chars
set_contextmenu textadept.menu.set_contextmenu(menu)\nSets `ui.context_menu` from menu item list *menu*.\nMenu items are tables containing menu text and either a function to call or\na table containing a function with its parameters to call when an item is\nclicked. Menu items may also be sub-menus, ordered lists of menu items with\nan additional `title` key for the sub-menu's title text.\n@param menu The menu table to create the context menu from.\n@see ui.context_menu\n@see ui.menu
set_empty_selection buffer.set_empty_selection(buffer, pos)\nMoves the caret to position *pos* without scrolling the view and removes any\nselections.\n@param buffer The buffer\n@param pos The position in *buffer* to move to.
-set_fold_margin_colour buffer.set_fold_margin_colour(buffer, use_setting, color)\nOverrides the fold margin's default color with *color*, in "0xBBGGRR" format,\nif *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_fold_margin_hi_colour buffer.set_fold_margin_hi_colour(buffer, use_setting, color)\nOverrides the fold margin's default highlight color with *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_hotspot_active_back buffer.set_hotspot_active_back(buffer, use_setting, color)\nOverrides the default background color of active hotspots with *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_hotspot_active_fore buffer.set_hotspot_active_fore(buffer, use_setting, color)\nOverrides the default foreground color of active hotspots with *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_lexer buffer.set_lexer(buffer, lexer)\nAssociates lexer name *lexer* or auto-detected lexer name with the buffer and\nthen loads the appropriate language module if the module exists.\n@param buffer The buffer.\n@param lexer Optional string lexer name to set. If `nil`, attempts to\n auto-detect the buffer's lexer.\n@usage buffer.set_lexer(buffer, 'lexer_name')
+set_fold_margin_colour buffer.set_fold_margin_colour(buffer, use_setting, color)\nOverrides the fold margin's default color with color *color*, in "0xBBGGRR"\nformat,\nif *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_fold_margin_hi_colour buffer.set_fold_margin_hi_colour(buffer, use_setting, color)\nOverrides the fold margin's default highlight color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_hotspot_active_back buffer.set_hotspot_active_back(buffer, use_setting, color)\nOverrides the default background color of active hotspots with color *color*,\nin "0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_hotspot_active_fore buffer.set_hotspot_active_fore(buffer, use_setting, color)\nOverrides the default foreground color of active hotspots with color *color*,\nin "0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_lexer buffer.set_lexer(buffer, lexer)\nAssociates lexer name *lexer* or the auto-detected lexer name with the buffer\nand then loads the appropriate language module if the module exists.\n@param buffer The buffer.\n@param lexer Optional string lexer name to set. If `nil`, attempts to\n auto-detect the buffer's lexer.\n@usage buffer.set_lexer(buffer, 'lexer_name')
set_menubar textadept.menu.set_menubar(menubar)\nSets `ui.menubar` from menu table *menubar*.\nEach menu is an ordered list of menu items and has a `title` key for the\ntitle text. Menu items are tables containing menu text and either a function\nto call or a table containing a function with its parameters to call when an\nitem is clicked. Menu items may also be sub-menus, ordered lists of menu\nitems with an additional `title` key for the sub-menu's title text.\n@param menubar The table of menu tables to create the menubar from.\n@see ui.menubar\n@see ui.menu
set_save_point buffer.set_save_point(buffer)\nIndicates the buffer has no unsaved changes.\n@param buffer The buffer.
set_sel buffer.set_sel(buffer, start_pos, end_pos)\nSelects the range of text between positions *start_pos* and *end_pos*,\nscrolling the selected text into view.\n@param buffer The buffer.\n@param start_pos The start position of the range of text in *buffer* to\n select. If negative, it means the end of the buffer.\n@param end_pos The end position of the range of text in *buffer* to select.\n If negative, it means remove any selection (i.e. set the `anchor` to the\n same position as `current_pos`).
-set_sel_back buffer.set_sel_back(buffer, use_setting, color)\nOverrides the selection's default background color with *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_sel_fore buffer.set_sel_fore(buffer, use_setting, color)\nOverrides the selection's default foreground color with *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_sel_back buffer.set_sel_back(buffer, use_setting, color)\nOverrides the selection's default background color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_sel_fore buffer.set_sel_fore(buffer, use_setting, color)\nOverrides the selection's default foreground color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
set_selection buffer.set_selection(buffer, end_pos, start_pos)\nSelects the range of text between positions *start_pos* to *end_pos*,\nremoving all other selections.\n@param buffer The buffer.\n@param end_pos The caret position of the range of text to select in *buffer*.\n@param start_pos The anchor position of the range of text to select in\n *buffer*.
set_styling buffer.set_styling(buffer, length, style)\nAssigns the style of the next *length* characters, from the current styling\nposition, to style number *style*, in the range from `0` to `255`, and\nincrements the styling position by *length*.\n@param buffer The buffer.\n@param length The number of characters to style.\n@param style The style number to set.
set_text buffer.set_text(buffer, text)\nReplaces the buffer's text with string *text*.\n@param buffer The buffer.\n@param text The text to set.
-set_theme ui.set_theme(name, props)\nSwitches the editor theme to name *name* and optionally assigns the\nproperties contained in table *props*.\nUser themes override Textadept's default themes when they have the same name.\nIf *name* contains slashes, it is assumed to be an absolute path to a theme\ninstead of a theme name.\n@param name The name or absolute path of a theme to set.\n@param props Optional table of theme property assignments that override the\n theme's defaults.\n@usage ui.set_theme('light', {font = 'Monospace', fontsize = 12})
-set_visible_policy buffer.set_visible_policy(buffer, visible_policy, visible_slop)\nSets the visible policy bit-mask *visible_policy* for displaying lines using\n`buffer:ensure_visible_enforce_policy()` to *visible_slop* number of lines\nfrom the bottom of the view.\nIt is similar in operation to `buffer:set_y_caret_policy()`.\n@param buffer The buffer.\n@param visible_policy The combination of `buffer.VISIBLE_SLOP` and\n `buffer.VISIBLE_STRICT` policy flags to set.\n@param visible_slop The slop value to use.
-set_whitespace_back buffer.set_whitespace_back(buffer, use_setting, color)\nOverrides the background color of whitespace with *color*, in "0xBBGGRR"\nformat, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_whitespace_fore buffer.set_whitespace_fore(buffer, use_setting, color)\nOverrides the foreground color of whitespace with *color*, in "0xBBGGRR"\nformat, if *use_setting* is `true`.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_theme ui.set_theme(name, props)\nSwitches the editor theme to string *name* and optionally assigns the\nproperties contained in table *props*.\nUser themes override Textadept's default themes when they have the same name.\nIf *name* contains slashes, it is assumed to be an absolute path to a theme\ninstead of a theme name.\n@param name The name or absolute path of a theme to set.\n@param props Optional table of theme property assignments that override the\n theme's defaults.\n@usage ui.set_theme('light', {font = 'Monospace', fontsize = 12})
+set_visible_policy buffer.set_visible_policy(buffer, visible_policy, visible_slop)\nSets the visible policy bit-mask *visible_policy* to *visible_slop* number of\nlines away from the vertical margins when redisplaying hidden or folded lines\nusing `buffer:ensure_visible_enforce_policy()`.\nIt is similar in operation to `buffer:set_y_caret_policy()`.\n@param buffer The buffer.\n@param visible_policy The combination of `buffer.VISIBLE_SLOP` and\n `buffer.VISIBLE_STRICT` policy flags to set.\n@param visible_slop The slop value to use.
+set_whitespace_back buffer.set_whitespace_back(buffer, use_setting, color)\nOverrides the background color of whitespace with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer The buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_whitespace_fore buffer.set_whitespace_fore(buffer, use_setting, color)\nOverrides the foreground color of whitespace with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
set_x_caret_policy buffer.set_x_caret_policy(buffer, caret_policy, caret_slop)\nSet the way the caret is kept visible when going sideways.\nThe exclusion zone is given in pixels.\n@param buffer The buffer.\n@param caret_policy The combination of `buffer.CARET_SLOP`,\n `buffer.CARET_STRICT`, `buffer.CARET_EVEN`, and `buffer.CARET_JUMPS` policy\n flags to set.\n@param caret_slop The slop value to use.
set_y_caret_policy buffer.set_y_caret_policy(buffer, caret_policy, caret_slop)\nSet the way the line the caret is on is kept visible.\n@param buffer The buffer.\n@param caret_policy The combination of `buffer.CARET_SLOP`,\n `buffer.CARET_STRICT`, `buffer.CARET_EVEN`, and `buffer.CARET_JUMPS` policy\n flags to set.\n@param caret_slop The slop value to use.
sethook debug.sethook([thread, ] hook, mask [, count])\nSets the given function as a hook. The string `mask` and the number\n`count` describe when the hook will be called. The string mask may have\nthe following characters, with the given meaning:\n "c": the hook is called every time Lua calls a function;\n "r": the hook is called every time Lua returns from a function;\n "l": the hook is called every time Lua enters a new line of code.\n\nWith a `count` different from zero, the hook is called after every `count`\ninstructions.\n\nWhen called without arguments, `debug.sethook` turns off the hook.\n\nWhen the hook is called, its first parameter is a string describing\nthe event that has triggered its call: `"call"` (or `"tail call"`),\n`"return"`, `"line"`, and `"count"`. For line events, the hook also gets the\nnew line number as its second parameter. Inside a hook, you can call\n`getinfo` with level 2 to get more information about the running function\n(level 0 is the `getinfo` function, and level 1 is the hook function).
@@ -1087,15 +1083,15 @@ singular _M.rails.singular\nA map of plural controller names to their singulars.
sinh math.sinh(x)\nReturns the hyperbolic sine of `x`.
size ui.size (table)\nA table containing the width and height pixel values of Textadept's window.
size view.size (number)\nThe split resizer's pixel position if the view is a split one.
-snapopen io.snapopen(paths, filter, exclude_FILTER, opts)\nPrompts the user to select files to open from *paths*, a string directory\npath or table of directory paths, using a filtered list dialog.\nFiles shown in the dialog do not match any pattern in string or table\n*filter*, and, unless *exclude_FILTER* is `true`, `lfs.FILTER` as well. A\nfilter table contains Lua patterns that match filenames to exclude, an\noptional `folders` sub-table that contains patterns matching folders to\nexclude, and an optional `extensions` sub-table that contains raw file\nextensions to exclude. Any patterns starting with '!' exclude files and\nfolders that do not match the pattern that follows. The number of files in\nthe list is capped at `SNAPOPEN_MAX`.\n*opts* is an optional table of additional options for\n`ui.dialogs.filteredlist()`.\n@param paths String directory path or table of directory paths to search.\n@param filter Optional filter for files and folders to exclude.\n@param exclude_FILTER Optional flag indicating whether or not to exclude the\n default filter `lfs.FILTER` in the search. If `false`, adds `lfs.FILTER` to\n *filter*.\n The default value is `false` to include the default filter.\n@param opts Optional table of additional options for\n `ui.dialogs.filteredlist()`.\n@usage io.snapopen(buffer.filename:match('^.+/')) -- list all files in the\n current file's directory, subject to the default filter\n@usage io.snapopen('/project', '!%.lua$') -- list all Lua files in a project\n directory\n@usage io.snapopen('/project', {folders = {'build'}}) -- list all source\n files in a project directory\n@see lfs.FILTER\n@see SNAPOPEN_MAX\n@see ui.dialogs.filteredlist
+snapopen io.snapopen(paths, filter, exclude_FILTER, opts)\nPrompts the user to select files to open from *paths*, a string directory\npath or list of directory paths, using a filtered list dialog.\nFiles shown in the dialog do not match any pattern in string or table\n*filter*, and, unless *exclude_FILTER* is `true`, `lfs.FILTER` as well. A\nfilter table contains Lua patterns that match filenames to exclude, an\noptional `folders` sub-table that contains patterns matching directories to\nexclude, and an optional `extensions` sub-table that contains raw file\nextensions to exclude. Any patterns starting with '!' exclude files and\ndirectories that do not match the pattern that follows. The number of files\nin the list is capped at `SNAPOPEN_MAX`.\n*opts* is an optional table of additional options for\n`ui.dialogs.filteredlist()`.\n@param paths String directory path or table of directory paths to search.\n@param filter Optional filter for files and directories to exclude.\n@param exclude_FILTER Optional flag indicating whether or not to exclude the\n default filter `lfs.FILTER` in the search. If `false`, adds `lfs.FILTER` to\n *filter*.\n The default value is `false` to include the default filter.\n@param opts Optional table of additional options for\n `ui.dialogs.filteredlist()`.\n@usage io.snapopen(buffer.filename:match('^.+/')) -- list all files in the\n current file's directory, subject to the default filter\n@usage io.snapopen('/project', '!%.lua$') -- list all Lua files in a project\n directory\n@usage io.snapopen('/project', {folders = {'build'}}) -- list all source\n files in a project directory\n@see lfs.FILTER\n@see SNAPOPEN_MAX\n@see ui.dialogs.filteredlist
snippets _G.snippets (table)\nMap of snippet triggers with their snippet text, with language-specific\nsnippets tables assigned to a lexer name key.\nThis table also contains the `textadept.snippets` module.
snippets textadept.snippets (module)\nSnippets for Textadept.
sort table.sort(list [, comp])\nSorts list elements in a given order, *in-place*, from `list[1]` to\n`list[#list]`. If `comp` is given, then it must be a function that receives\ntwo list elements and returns true when the first element must come before\nthe second in the final order (so that `not comp(list[i+1],list[i])` will be\ntrue after the sort). If `comp` is not given, then the standard Lua operator\n`<` is used instead.\n\nThe sort algorithm is not stable; that is, elements considered equal by the\ngiven order may have their relative positions changed by the sort.
space lexer.space (pattern)\nA pattern that matches any whitespace character ('\t', '\v', '\f', '\n',\n'\r', space).
split view.split(view, vertical)\nSplits the view into top and bottom views unless *vertical* is `true`,\nfocuses the new view, and returns both the old and new views.\nIf *vertical* is `false`, splits the view vertically into left and\nright views.\nEmits a `VIEW_NEW` event.\n@param view The view to split.\n@param vertical Optional flag indicating whether or not to split the view\n vertically. The default value is `false`, for horizontal.\n@return old view and new view.\n@see events.VIEW_NEW
sqrt math.sqrt(x)\nReturns the square root of `x`. (You can also use the expression `x^0.5`\nto compute this value.)
-standard_dropdown ui.dialogs.standard_dropdown(options)\nPrompts the user with a drop down item selection dialog defined by dialog\noptions table *options* and with localized "Ok" and "Cancel" buttons,\nreturning the selected button's index along with the selected item's index\nor, if *options*.`string_output` is `true`, the selected button's label along\nwith the selected item's text.\nIf *options*.`exit_onchange` caused the dialog to close, returns `4` along\nwith either the selected item's index or text. If the dialog timed out,\nreturns `0` or `"timeout"`. If the user canceled the dialog, returns `-1` or\n`"delete"`.\n@param options Table of key-value option pairs for the drop down dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `items`: The list of string items to show in the drop down.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `exit_onchange`: Close the dialog after selecting a new item. The default\n value is `false`.\n * `select`: The index of the initially selected list item. The default\n value is `1`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status along with the selected item's text instead of the button's index\n or the exit code along with the item's index. The default value is\n `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, selected item
-standard_inputbox ui.dialogs.standard_inputbox(options)\nPrompts the user with a one-line input box dialog defined by dialog options\ntable *options* and with localized "Ok" and "Cancel" buttons, returning the\nselected button's index along with the input text or, if\n*options*.`string_output` is `true`, the selected button's label along with\nthe input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the input box.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial input text.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the exit code. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, input text
+standard_dropdown ui.dialogs.standard_dropdown(options)\nPrompts the user with a drop down item selection dialog defined by dialog\noptions table *options* and with localized "Ok" and "Cancel" buttons,\nreturning the selected button's index along with the selected item's index\nor, if *options*.`string_output` is `true`, the selected button's label along\nwith the selected item's text.\nIf *options*.`exit_onchange` caused the dialog to close, returns `4` along\nwith either the selected item's index or text. If the dialog timed out,\nreturns `0` or `"timeout"`. If the user canceled the dialog, returns `-1` or\n`"delete"`.\n@param options Table of key-value option pairs for the drop down dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `items`: The list of string items to show in the drop down.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `exit_onchange`: Close the dialog after selecting a new item. The default\n value is `false`.\n * `select`: The index of the initially selected list item. The default\n value is `1`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status along with the selected item's text instead of the button's index\n or the dialog's exit code along with the item's index. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, selected item
+standard_inputbox ui.dialogs.standard_inputbox(options)\nPrompts the user with a one-line input box dialog defined by dialog options\ntable *options* and with localized "Ok" and "Cancel" buttons, returning the\nselected button's index along with the input text or, if\n*options*.`string_output` is `true`, the selected button's label along with\nthe input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the input box.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial input text.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the dialog's exit code. The\n default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, input text
start_styling buffer.start_styling(buffer, position, style_mask, styling_mask)\nBegins styling at position *position* with styling bit-mask *styling_mask*.\n*styling_mask* specifies which style bits can be set with\n`buffer:set_styling()`.\n@param buffer The buffer.\n@param position The position in *buffer* to start styling at.\n@param styling_mask The bit mask of style bits that can be set when styling.\n@usage buffer:start_styling(0, 0xFF)
starts_line lexer.starts_line(patt)\nCreates and returns a pattern that matches pattern *patt* only at the\nbeginning of a line.\n@param patt The LPeg pattern to match on the beginning of a line.\n@usage local preproc = token(l.PREPROCESSOR, #P('#') * l.starts_line('#' *\n l.nonnewline^0))\n@return pattern
status coroutine.status(co)\nReturns the status of coroutine `co`, as a string: `"running"`, if\nthe coroutine is running (that is, it called `status`); `"suspended"`, if\nthe coroutine is suspended in a call to `yield`, or if it has not started\nrunning yet; `"normal"` if the coroutine is active but not running (that\nis, it has resumed another coroutine); and `"dead"` if the coroutine has\nfinished its body function, or if it has stopped with an error.
@@ -1104,27 +1100,27 @@ stderr io.stderr (file)\nStandard error.
stdin io.stdin (file)\nStandard in.
stdout io.stdout (file)\nStandard out.
string _G.string (module)\nLua string module.
-stuttered_page_down buffer.stuttered_page_down(buffer)\nMoves the caret to the bottom of the page, or if already there, down one\npage.\n@param buffer The buffer.
+stuttered_page_down buffer.stuttered_page_down(buffer)\nMoves the caret to the bottom of the page or, if already there, down one\npage.\n@param buffer The buffer.
stuttered_page_down_extend buffer.stuttered_page_down_extend(buffer)\nLike `buffer:stuttered_page_down()`, but extends the selected text to the new\nposition.\n@param buffer The buffer.
-stuttered_page_up buffer.stuttered_page_up(buffer)\nMoves the caret to the top of the page, or if already there, up one page.\n@param buffer The buffer.
+stuttered_page_up buffer.stuttered_page_up(buffer)\nMoves the caret to the top of the page or, if already there, up one page.\n@param buffer The buffer.
stuttered_page_up_extend buffer.stuttered_page_up_extend(buffer)\nLike `buffer:stuttered_page_up()`, but extends the selected text to the new\nposition.\n@param buffer The buffer.
style_at buffer.style_at (table, Read-only)\nTable of style numbers at positions starting from zero.
style_at lexer.style_at (table, Read-only)\nTable of style names at positions in the buffer starting from zero.
-style_back buffer.style_back (table)\nTable of background colors, in "0xBBGGRR" format, of text within styles for\nstyle numbers from `0` to `255`.
-style_bold buffer.style_bold (table)\nTable of flags indicating whether or not text within styles has a bold font\nface for style numbers from `0` to `255`.\nThe default values are `false`.
-style_case buffer.style_case (table)\nTable of letter case modes of text within styles for style numbers from `0`\nto `255`.\n\n* `buffer.CASE_MIXED`\n Display text in normally.\n* `buffer.CASE_UPPER`\n Display text in upper case.\n* `buffer.CASE_LOWER`\n Display text in lower case.\n\nThe default values are `buffer.CASE_MIXED`.
-style_changeable buffer.style_changeable (table)\nTable of flags indicating whether or not text within styles is changeable\nfor style numbers from `0` to `255`.\nThe default values are `true`.\nCurrently, read-only styles do not allow the caret into the range of text,\nbut ranges containing read-only text are deletable.
+style_back buffer.style_back (table)\nTable of background colors, in "0xBBGGRR" format, of text for style numbers\nfrom `0` to `255`.
+style_bold buffer.style_bold (table)\nTable of flags indicating whether or not text is bold for style numbers\nfrom `0` to `255`.\nThe default values are `false`.
+style_case buffer.style_case (table)\nTable of letter case modes of text for style numbers from `0` to `255`.\n\n* `buffer.CASE_MIXED`\n Display text in normally.\n* `buffer.CASE_UPPER`\n Display text in upper case.\n* `buffer.CASE_LOWER`\n Display text in lower case.\n\nThe default values are `buffer.CASE_MIXED`.
+style_changeable buffer.style_changeable (table)\nTable of flags indicating whether or not text is changeable for style\nnumbers from `0` to `255`.\nThe default values are `true`.\nCurrently, read-only styles do not allow the caret into the range of text,\nbut ranges containing read-only text are deletable.
style_clear_all buffer.style_clear_all(buffer)\nReverts all styles to have the same properties as `buffer.STYLE_DEFAULT`.\n@param buffer The buffer.
style_eol_filled buffer.style_eol_filled (table)\nTable of flags indicating whether or not the background colors of styles\nwhose characters occur last on lines extend all the way to the view's right\nmargin for style numbers from `0` to `255`.\nThe default values are `false`.
-style_font buffer.style_font (table)\nTable of string font faces of text within styles for style numbers from\n`0` to `255`.
-style_fore buffer.style_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, of text within styles for\nstyle numbers from `0` to `255`.
-style_hot_spot buffer.style_hot_spot (table)\nTable of flags indicating whether or not text within styles is clickable\nfor style numbers from `0` to `255`.\nThe default values are `false`.
-style_italic buffer.style_italic (table)\nTable of flags indicating whether or not text within styles has an italic\nfont face for style numbers from `0` to `255`.\nThe default values are `false`.
+style_font buffer.style_font (table)\nTable of string font names of text for style numbers from `0` to `255`.
+style_fore buffer.style_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, of text for style numbers\nfrom `0` to `255`.
+style_hot_spot buffer.style_hot_spot (table)\nTable of flags indicating whether or not text is clickable for style\nnumbers from `0` to `255`.\nThe default values are `false`.
+style_italic buffer.style_italic (table)\nTable of flags indicating whether or not text is italic for style numbers\nfrom `0` to `255`.\nThe default values are `false`.
style_name buffer.style_name (table, Read-only)\nTable of style names for style numbers from `0` to `255`.
style_reset_default buffer.style_reset_default(buffer)\nResets `buffer.STYLE_DEFAULT` to its initial state.\n@param buffer The buffer.
-style_size buffer.style_size (table)\nTable of font sizes of text within styles for style numbers from `0` to\n`255`.
-style_underline buffer.style_underline (table)\nTable of flags indicating whether or not text within styles has an\nunderlined font face for style numbers from `0` to `255`.\nThe default values are `false`.
-style_visible buffer.style_visible (table)\nTable of flags indicating whether or not text within styles is visible for\nstyle numbers from `0` to `255`.\nThe default values are `true`.
+style_size buffer.style_size (table)\nTable of font sizes of text for style numbers from `0` to `255`.
+style_underline buffer.style_underline (table)\nTable of flags indicating whether or not text is underlined for style\nnumbers from `0` to `255`.\nThe default values are `false`.
+style_visible buffer.style_visible (table)\nTable of flags indicating whether or not text is visible for style numbers\nfrom `0` to `255`.\nThe default values are `true`.
sub string.sub(s, i [, j])\nReturns the substring of `s` that starts at `i` and continues until\n`j`; `i` and `j` can be negative. If `j` is absent, then it is assumed to\nbe equal to -1 (which is the same as the string length). In particular,\nthe call `string.sub(s,1,j)` returns a prefix of `s` with length `j`, and\n`string.sub(s, -i)` returns a suffix of `s` with length `i`.\n\nIf, after the translation of negative indices, `i` is less than 1, it is\ncorrected to 1. If `j` is greater than the string length, it is corrected to\nthat length. If, after these corrections, `i` is greater than `j`, the\nfunction returns the empty string.
swap_main_anchor_caret buffer.swap_main_anchor_caret(buffer)\nSwaps the main selection's beginning and end positions.\n@param buffer The buffer.
switch_buffer ui.switch_buffer()\nPrompts the user to select a buffer to switch to.
@@ -1132,10 +1128,12 @@ symbol_chars textadept.adeptsense.syntax.symbol_chars (table)\nA Lua pattern of
symlinkattributes lfs.symlinkattributes(filepath [, aname])\nIdentical to lfs.attributes except that it obtains information about the link\nitself (not the file it refers to). This function is not available in Windows\nso you may want to make sure that lfs.symlinkattributes exists before using\nit.
syntax textadept.adeptsense.syntax (table)\nMap of language-specific syntax settings.\n@see get_class
tab buffer.tab(buffer)\nIndents the text on the selected lines or types a Tab character ("\t") at\nthe caret position.\n@param buffer The buffer.
-tab_indents buffer.tab_indents (bool)\nTabbing indents within indentation.\nThe default value is `false`.
+tab_indents buffer.tab_indents (bool)\nIndent text when tabbing within indentation.\nThe default value is `false`.
+tab_label buffer.tab_label (string)\nThe buffer's tab label in the tab bar.
tab_width buffer.tab_width (number)\nThe number of space characters represented by a tab character.\nThe default value is `8`.
table _G.table (module)\nLua table module.
-tag buffer.tag (table, Read-only)\nList of values for tag match numbers from a regular expression search.
+tabs ui.tabs (bool)\nWhether or not to display the tab bar when multiple buffers are open.\nThe default value is `true`.
+tag buffer.tag (table, Read-only)\nList of capture text for capture numbers from a regular expression search.
tan math.tan(x)\nReturns the tangent of `x` (assumed to be in radians).
tanh math.tanh(x)\nReturns the hyperbolic tangent of `x`.
target_end buffer.target_end (number)\nThe position of the end of the target range.\nThis is also set by a successful\n`buffer:search_in_target()`.
@@ -1146,22 +1144,22 @@ text_length buffer.text_length (number, Read-only)\nThe number of bytes in the b
text_range buffer.text_range(buffer, start_pos, end_pos)\nReturns the range of text between positions *start_pos* and *end_pos*.\n@param buffer The buffer.\n@param start_pos The start position of the range of text to get in *buffer*.\n@param end_pos The end position of the range of text to get in *buffer*.
text_width buffer.text_width(buffer, style_num, text)\nReturns the pixel width of string *text* styled with style number\n*style_num*, in the range of `0` to `255`.\n@param buffer The buffer.\n@param style_num The style number between `0` and `255` to use.\n@param text The text to measure the width of.\n@return number
textadept _G.textadept (module)\nThe textadept module.\nIt provides utilities for editing text in Textadept.
-textbox ui.dialogs.textbox(options)\nPrompts the user with a multiple-line textbox dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\ntextbox text if *options*.`editable` is `true` or, if\n*options*.`string_output` is `true`, the selected button's label along with\nthe textbox text if *options*.`editable` is also `true`.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the dialog.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial textbox text.\n * `text_from_file`: The filename whose contents are loaded into the\n textbox. This option has no effect when `text` is given.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `editable`: Allows the user to edit the text in the textbox. The default\n value is `false`.\n * `focus_textbox`: Focus the textbox instead of the dialog buttons. The\n default value is `false`.\n * `scroll_to`: Where to scroll the textbox text when it is not all visible.\n The available values are `"top"` and `"bottom"`. The default value is\n `"top"`.\n * `selected`: Select all textbox text. The default value is `false`.\n * `monospaced_font`: Use a monospaced font in the textbox instead of a\n proportional one. The default value is `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the exit code. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.textbox{title = 'License Agreement',\n informative_text = 'You agree to:', text_from_file = _HOME..'/LICENSE'}\n@return selected button or exit code, textbox text
+textbox ui.dialogs.textbox(options)\nPrompts the user with a multiple-line textbox dialog defined by dialog\noptions table *options*, returning the selected button's index or, if\n*options*.`string_output` is `true`, the selected button's label. If\n*options*.`editable` is `true`, also returns the textbox text. If the dialog\ntimed out, returns `0` or `"timeout"`. If the user canceled the dialog,\nreturns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the dialog.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial textbox text.\n * `text_from_file`: The filename whose contents are loaded into the\n textbox. This option has no effect when `text` is given.\n * `button1`: The right-most button's label. The default value is\n `_L['_OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `editable`: Allows the user to edit the textbox's text. The default value\n is `false`.\n * `focus_textbox`: Focus the textbox instead of the buttons. The default\n value is `false`.\n * `scroll_to`: Where to scroll the textbox text when it is not all visible.\n The available values are `"top"` and `"bottom"`. The default value is\n `"top"`.\n * `selected`: Select all of the textbox's text. The default value is\n `false`.\n * `monospaced_font`: Use a monospaced font in the textbox instead of a\n proportional one. The default value is `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the dialog's exit code. The\n default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.textbox{title = 'License Agreement',\n informative_text = 'You agree to:', text_from_file = _HOME..'/LICENSE'}\n@return selected button or exit code, textbox text
time os.time([table])\nReturns the current time when called without arguments, or a time\nrepresenting the date and time specified by the given table. This table\nmust have fields `year`, `month`, and `day`, and may have fields `hour`\n(default is 12), `min` (default is 0), `sec` (default is 0), and `isdst`\n(default is nil). For a description of these fields, see the `os.date`\nfunction.\n\nThe returned value is a number, whose meaning depends on your system. In\nPOSIX, Windows, and some other systems, this number counts the number of\nseconds since some given start time (the "epoch"). In other systems, the\nmeaning is not specified, and the number returned by `time` can be used only\nas an argument to `os.date` and `os.difftime`.
-timeout _G.timeout(interval, f, ...)\nCalls function *f* with the given arguments after *interval* seconds and then\nrepeatedly while *f* returns `true`. A `nil` or `false` return value stops\nrepetition.\n@param interval The interval in seconds to call *f* after.\n@param f The function to call.\n@param ... Additional arguments to pass to *f*.
+timeout _G.timeout(interval, f, ...)\nCalls function *f* with the given arguments after number *interval* seconds\nand then repeatedly while *f* returns `true`. A `nil` or `false` return value\nstops repetition.\n@param interval The interval in seconds to call *f* after.\n@param f The function to call.\n@param ... Additional arguments to pass to *f*.
title ui.title (string, Write-only)\nThe title text of Textadept's window.
tmpfile io.tmpfile()\nReturns a handle for a temporary file. This file is opened in update\nmode and it is automatically removed when the program ends.
tmpname os.tmpname()\nReturns a string with a file name that can be used for a temporary\nfile. The file must be explicitly opened before its use and explicitly\nremoved when no longer needed.\n\nOn POSIX systems, this function also creates a file with that name, to avoid\nsecurity risks. (Someone else might create the file with wrong permissions in\nthe time between getting the name and creating the file.) You still have to\nopen the file to use it and to remove it (even if you do not use it).\n\nWhen possible, you may prefer to use `io.tmpfile`, which automatically\nremoves the file when the program ends.
toggle textadept.bookmarks.toggle(on)\nToggles the bookmark on the current line unless *on* is given.\nIf *on* is `true` or `false`, adds or removes the bookmark, respectively.\n@param on Optional flag indicating whether to add or remove a bookmark on the\n current line. The default value is `nil`, toggling a bookmark.
toggle_block _M.ruby.toggle_block()\nToggles between `{ ... }` and `do ... end` Ruby blocks.\nIf the caret is inside a `{ ... }` single-line block, that block is converted\nto a multiple-line `do .. end` block. If the caret is on a line that contains\nsingle-line `do ... end` block, that block is converted to a single-line\n`{ ... }` block. If the caret is inside a multiple-line `do ... end` block,\nthat block is converted to a single-line `{ ... }` block with all newlines\nreplaced by a space. Indentation is important. The `do` and `end` keywords\nmust be on lines with the same level of indentation to toggle correctly.
-toggle_caret_sticky buffer.toggle_caret_sticky(buffer)\nCycles between caret sticky option settings `buffer.CARETSTICKY_ON`,\n`buffer.CARETSTICKY_WHITESPACE`, and `buffer.CARETSTICKY_OFF`.\n@param buffer The buffer.\n@see caret_sticky
-toggle_fold buffer.toggle_fold(buffer, line)\nToggles the fold state of the fold header on line number *line* between\nexpanded, where all of its child lines are displayed, and contracted, where\nall of its child lines are hidden.\n@param buffer The buffer.\n@param line The line number in *buffer* to toggle the fold on.
+toggle_caret_sticky buffer.toggle_caret_sticky(buffer)\nCycles between `buffer.caret_sticky` option settings `buffer.CARETSTICKY_ON`,\n`buffer.CARETSTICKY_WHITESPACE`, and `buffer.CARETSTICKY_OFF`.\n@param buffer The buffer.\n@see caret_sticky
+toggle_fold buffer.toggle_fold(buffer, line)\nToggles the fold point on line number *line* between expanded, where all of\nits child lines are displayed, and contracted, where all of its child lines\nare hidden.\n@param buffer The buffer.\n@param line The line number in *buffer* to toggle the fold on.
token lexer.token(name, patt)\nCreates and returns a token pattern with the name *name* and pattern *patt*.\nIf *name* is not a predefined token name, its style must be defined in the\nlexer's `_tokenstyles` table.\n@param name The name of token. If this name is not a predefined token name,\n then a style needs to be assiciated with it in the lexer's `_tokenstyles`\n table.\n@param patt The LPeg pattern associated with the token.\n@usage local ws = token(l.WHITESPACE, l.space^1)\n@usage local annotation = token('annotation', '@' * l.word)\n@return pattern
tonumber _G.tonumber(e [, base])\nWhen called with no `base`, `tonumber` tries to convert its argument to a\nnumber. If the argument is already a number or a string convertible to a\nnumber (see §3.4.2), then `tonumber` returns this number; otherwise, it\nreturns nil.\n\nWhen called with `base`, then `e` should be a string to be interpreted as an\ninteger numeral in that base. The base may be any integer between 2 and 36,\ninclusive. In bases above 10, the letter '`A`' (in either upper or lower\ncase) represents 10, '`B`' represents 11, and so forth, with '`Z`'\nrepresenting 35. If the string `e` is not a valid numeral in the given base,\nthe function returns nil
tostring _G.tostring(v)\nReceives a value of any type and converts it to a string in a reasonable\nformat. (For complete control of how numbers are converted, use\n`string.format`.)\n\nIf the metatable of `v` has a `"__tostring"` field, then `tostring` calls the\ncorresponding value with `v` as argument, and uses the result of the call as\nits result.
touch lfs.touch(filepath [, atime [, mtime]])\nSet access and modification times of a file. This function is a bind to utime\nfunction. The first argument is the filename, the second argument (atime) is\nthe access time, and the third argument (mtime) is the modification time.\nBoth times are provided in seconds (which should be generated with Lua\nstandard function os.time). If the modification time is omitted, the access\ntime provided is used; if both times are omitted, the current time is used.\n\nReturns true if the operation was successful; in case of error, it returns\nnil plus an error string.
traceback debug.traceback([thread, ] [message] [, level])\nIf `message` is present but is neither a string nor nil, this function\nreturns `message` without further processing. Otherwise, it returns a string\nwith a traceback of the call stack. An optional `message` string is appended\nat the beginning of the traceback. An optional `level` number tells at which\nlevel to start the traceback (default is 1, the function calling\n`traceback`).
-transpose_chars textadept.editing.transpose_chars()\nTransposes characters intelligently.\nIf the caret is at the end of a line, the two characters before the caret are\ntransposed. Otherwise, the characters to the left and right are.
+transpose_chars textadept.editing.transpose_chars()\nTransposes characters intelligently.\nIf the caret is at the end of a line, transposes the two characters before\nthe caret. Otherwise, the characters to the left and right are.
try_to_autocomplete_end _M.lua.try_to_autocomplete_end()\nTries to autocomplete control structures like `if`, `while`, `for`, etc. with\nthe `end` keyword.\n@see control_structure_patterns
try_to_autocomplete_end _M.ruby.try_to_autocomplete_end()\nTries to autocomplete Ruby's `end` keyword for control structures like `if`,\n`while`, `for`, etc.\n@see control_structure_patterns
two_phase_draw buffer.two_phase_draw (bool)\nDraw in two phases: first the background and then the foreground.\nThe default value is `true`.
@@ -1183,10 +1181,10 @@ upper string.upper(s)\nReceives a string and returns a copy of this string with
upper_case buffer.upper_case(buffer)\nConverts the selected text to upper case letters.\n@param buffer The buffer.
upvalueid debug.upvalueid(f, n)\nReturns an unique identifier (as a light userdata) for the upvalue numbered\n`n` from the given function.\n\nThese unique identifiers allow a program to check whether different closures\nshare upvalues. Lua closures that share an upvalue (that is, that access a\nsame external local variable) will return identical ids for those upvalue\nindices.
upvaluejoin debug.upvaluejoin(f1, n1, f2, n2)\nMake the `n1`-th upvalue of the Lua closure `f1` refer to the `n2`-th upvalue\nof the Lua closure `f2`.
-use_tabs buffer.use_tabs (bool)\nUse tabs instead of spaces in indentation. Changing the setting does not\nconvert existing indentation. Use\n`textadept.editing.convert_indentation()` to do so.\nThe default value is `true`.
+use_tabs buffer.use_tabs (bool)\nUse tabs instead of spaces in indentation. Changing the current setting\ndoes not convert existing indentation. Use\n`textadept.editing.convert_indentation()` to do so.\nThe default value is `true`.
user_list_show buffer.user_list_show(buffer, list_type, item_list)\nDisplays a user list identified by list identifier number *list_item* and\nconstructed from string *item_list*, whose items are delimited by\n`buffer.auto_c_separator` characters.\nThe sorted order of *item_list*, `buffer.auto_c_order`, must have already\nbeen defined. When the user selects an item, *list_type* is sent in a\n`USER_LIST_SELECTION` event along with the selection.\n@param buffer The buffer.\n@param list_type The list identifier number greater than zero to use.\n@param item_list The sorted string of words to show, separated by\n `buffer.auto_c_separator` characters (initially spaces).\n@see _SCINTILLA.next_user_list_type
v_scroll_bar buffer.v_scroll_bar (bool)\nDisplay the vertical scroll bar.\nThe default value is `true`.
-vc_home buffer.vc_home(buffer)\nMoves the caret to the first visible character on the current line, or if\nalready there, to the beginning of the current line.\n@param buffer The buffer.
+vc_home buffer.vc_home(buffer)\nMoves the caret to the first visible character on the current line or, if\nalready there, to the beginning of the current line.\n@param buffer The buffer.
vc_home_display buffer.vc_home_display(buffer)\nMoves the caret to the first visible character on the current wrapped line,\nor if already there, to the beginning of the current wrapped line.\n@param buffer The buffer.
vc_home_display_extend buffer.vc_home_display_extend(buffer)\nLike `buffer:vc_home_display()`, but extends the selected text to the new\nposition.\n@param buffer The buffer.
vc_home_extend buffer.vc_home_extend(buffer)\nLike `buffer:vc_home()`, but extends the selected text to the new position.\n@param buffer The buffer.
@@ -1198,14 +1196,14 @@ vertical_centre_caret buffer.vertical_centre_caret(buffer)\nCenters current line
view _G.view (module)\nA Textadept view object.
view _G.view (table)\nThe current view.
view_eol buffer.view_eol (bool)\nDisplay end of line characters.\nThe default value is `false`.
-view_ws buffer.view_ws (number)\nThe whitespace character visibility mode.\n\n* `buffer.WS_INVISIBLE`\n Whitespace is invisible.\n* `buffer.WS_VISIBLEALWAYS`\n Display all whitespace as dots and arrows.\n* `buffer.WS_VISIBLEAFTERINDENT`\n Display only non-indentation whitespace as dots and arrows.\n\nThe default value is `buffer.WS_INVISIBLE`.
-virtual_space_options buffer.virtual_space_options (number)\nThe virtual space mode.\n\n* `buffer.VS_NONE`\n Disable virtual space.\n* `buffer.VS_RECTANGULARSELECTION`\n Enable virtual space only for rectangular selections.\n* `buffer.VS_USERACCESSIBLE`\n Enable virtual space.\n\nWhen virtual space is enabled, the caret may move into the space past the\nends of lines.\nThe default value is `buffer.VS_NONE`.
+view_ws buffer.view_ws (number)\nThe whitespace visibility mode.\n\n* `buffer.WS_INVISIBLE`\n Whitespace is invisible.\n* `buffer.WS_VISIBLEALWAYS`\n Display all space characters as dots and tab characters as arrows.\n* `buffer.WS_VISIBLEAFTERINDENT`\n Display only non-indentation spaces and tabs as dots and arrows.\n\nThe default value is `buffer.WS_INVISIBLE`.
+virtual_space_options buffer.virtual_space_options (number)\nThe virtual space mode.\n\n* `buffer.VS_NONE`\n Disable virtual space.\n* `buffer.VS_RECTANGULARSELECTION`\n Enable virtual space only for rectangular selections.\n* `buffer.VS_USERACCESSIBLE`\n Enable virtual space.\n\nWhen virtual space is enabled, the caret may move into the space past end\nof line characters.\nThe default value is `buffer.VS_NONE`.
visible_from_doc_line buffer.visible_from_doc_line(buffer, line)\nReturns the displayed line number of actual line number *line*, taking hidden\nlines into account, or `-1` if *line* is outside the range of lines in the\nbuffer.\nLines can occupy more than one display line if they wrap.\n@param buffer The buffer.\n@param line The line number in *buffer* to use.\n@return number
whitespace_chars buffer.whitespace_chars (string)\nThe string set of characters recognized as whitespace characters.\nSet this only after setting `buffer.word_chars`.\nThe default value is a string containing all non-newline characters less\nthan ASCII value 33.
whitespace_size buffer.whitespace_size (number)\nThe pixel size of the dots representing space characters when whitespace is\nvisible.\nThe default value is `1`.
whole_word ui.find.whole_word (bool)\nMatch the search text surrounded by non-word characters in searches.\nThe default value is `false`.
whole_word_label_text ui.find.whole_word_label_text (string, Write-only)\nThe text of the "Whole word" label.\nThis is primarily used for localization.
-word lexer.word (pattern)\nA pattern that matches a typical word starting with a letter or underscore\nand then any alphanumeric or underscore characters.
+word lexer.word (pattern)\nA pattern that matches a typical word. Words start with a letter or\nunderscore, followed by any number of alphanumeric and underscore\ncharacters.
word_chars buffer.word_chars (string)\nThe string set of characters recognized as word characters.\nThe default value is a string containing alphanumeric characters, an\nunderscore, and all characters greater than ASCII value 127.
word_chars textadept.adeptsense.syntax.word_chars (table)\nA Lua pattern of characters allowed in a word.\n The default value is `'%w_'`.
word_end_position buffer.word_end_position(buffer, pos, only_word_chars)\nReturns the position of the end of the word at position *pos*.\n`buffer.word_chars` contains word characters. If *pos* has a non-word\ncharacter to its right and *only_word_chars* is `false`, returns the first\nword character's position.\n@param buffer The buffer.\n@param pos The position in *buffer* of the word.\n@param only_word_chars If `true`, stops searching at the first non-word\n character in the search direction. Otherwise, the first character in the\n search direction sets the type of the search as word or non-word and the\n search stops at the first non-matching character. Searches are also\n terminated by the start or end of the buffer.
@@ -1213,7 +1211,7 @@ word_left buffer.word_left(buffer)\nMoves the caret left one word.\n`buffer.word
word_left_end buffer.word_left_end(buffer)\nMoves the caret left one word, positioning it at the end of the previous\nword.\n`buffer.word_chars` contains word characters.\n@param buffer The buffer.
word_left_end_extend buffer.word_left_end_extend(buffer)\nLike `buffer:word_left_end()`, but extends the selected text to the new\nposition.\n@param buffer The buffer.
word_left_extend buffer.word_left_extend(buffer)\nMoves the caret left one word, extending the selected text to the new\nposition.\n`buffer.word_chars` contains word characters.\n@param buffer The buffer.
-word_match lexer.word_match(words, word_chars, case_insensitive)\nCreates and returns a pattern that matches any word in set *words*\ncase-sensitively, unless *case_insensitive* is `true`, with the set of word\ncharacters being alphanumerics, underscores, and all of the characters in\nstring *word_chars*.\nThis is a convenience function for simplifying a set of ordered choice word\npatterns.\n@param words A table of words.\n@param word_chars Optional string of additional characters considered to be\n part of a word. By default, word characters are alphanumerics and\n underscores ("%w_" in Lua). This parameter may be `nil` or the empty string\n to indicate no additional word characters.\n@param case_insensitive Optional boolean flag indicating whether or not the\n word match is case-insensitive. The default is `false`.\n@usage local keyword = token(l.KEYWORD, word_match{'foo', 'bar', 'baz'})\n@usage local keyword = token(l.KEYWORD, word_match({'foo-bar', 'foo-baz',\n 'bar-foo', 'bar-baz', 'baz-foo', 'baz-bar'}, '-', true))\n@return pattern
+word_match lexer.word_match(words, word_chars, case_insensitive)\nCreates and returns a pattern that matches any single word in list *words*\ncase-sensitively, unless *case_insensitive* is `true`.\nWords consist of alphanumeric and underscore characters, as well as the ones\nin string set *word_chars*.\nThis is a convenience function for simplifying a set of ordered choice word\npatterns.\n@param words A table of words.\n@param word_chars Optional string of additional characters considered to be\n part of a word. By default, word characters are alphanumerics and\n underscores ("%w_" in Lua). This parameter may be `nil` or the empty string\n to indicate no additional word characters.\n@param case_insensitive Optional boolean flag indicating whether or not the\n word match is case-insensitive. The default is `false`.\n@usage local keyword = token(l.KEYWORD, word_match{'foo', 'bar', 'baz'})\n@usage local keyword = token(l.KEYWORD, word_match({'foo-bar', 'foo-baz',\n 'bar-foo', 'bar-baz', 'baz-foo', 'baz-bar'}, '-', true))\n@return pattern
word_part_left buffer.word_part_left(buffer)\nMoves the caret to the previous underscore or change in capitalization within\nthe current word.\n`buffer.word_chars` contains word characters.\n@param buffer The buffer.
word_part_left_extend buffer.word_part_left_extend(buffer)\nMoves the caret to the previous underscore or change in capitalization within\nthe current word, extending the selected text to the new position.\n`buffer.word_chars` contains word characters.\n@param buffer The buffer.
word_part_right buffer.word_part_right(buffer)\nMoves the caret to the next underscore or change in capitalization within the\ncurrent word.\n`buffer.word_chars` contains word characters.\n@param buffer The buffer.
@@ -1224,19 +1222,19 @@ word_right_end_extend buffer.word_right_end_extend(buffer)\nLike `buffer:word_ri
word_right_extend buffer.word_right_extend(buffer)\nMoves the caret right one word, extending the selected text to the new\nposition.\n`buffer.word_chars` contains word characters.\n@param buffer The buffer.
word_start_position buffer.word_start_position(buffer, pos, only_word_chars)\nReturns the position of the beginning of the word at position *pos*.\n`buffer.word_chars` contains word characters. If *pos* has a non-word\ncharacter to its left and *only_word_chars* is `false`, returns the last word\ncharacter's position.\n@param buffer The buffer.\n@param pos The position in *buffer* of the word.\n@param only_word_chars If `true`, stops searching at the first non-word\n character in the search direction. Otherwise, the first character in the\n search direction sets the type of the search as word or non-word and the\n search stops at the first non-matching character. Searches are also\n terminated by the start or end of the buffer.
wrap coroutine.wrap(f)\nCreates a new coroutine, with body `f`. `f` must be a Lua\nfunction. Returns a function that resumes the coroutine each time it is\ncalled. Any arguments passed to the function behave as the extra arguments to\n`resume`. Returns the same values returned by `resume`, except the first\nboolean. In case of error, propagates the error.
-wrap_count buffer.wrap_count(buffer, line)\nReturns the number of wrapped lines needed to display line number *line*.\n@param buffer The buffer.\n@param line The line number in *buffer* to use.\n@return number
-wrap_indent_mode buffer.wrap_indent_mode (number)\nThe wrapped line indent mode.\n\n* `buffer.WRAPINDENT_FIXED`\n Indent wrapped lines by `buffer.wrap_start_indent`.\n* `buffer.WRAPINDENT_SAME`\n Indent wrapped lines the same as the first line.\n* `buffer.WRAPINDENT_INDENT`\n Indent wrapped lines one more level than the first line.\n\nThe default value is `buffer.WRAPINDENT_FIXED`.
+wrap_count buffer.wrap_count(buffer, line)\nReturns the number of wrapped lines needed to fully display line number\n*line*.\n@param buffer The buffer.\n@param line The line number in *buffer* to use.\n@return number
+wrap_indent_mode buffer.wrap_indent_mode (number)\nThe wrapped line indent mode.\n\n* `buffer.WRAPINDENT_FIXED`\n Indent wrapped lines by `buffer.wrap_start_indent`.\n* `buffer.WRAPINDENT_SAME`\n Indent wrapped lines the same amount as the first line.\n* `buffer.WRAPINDENT_INDENT`\n Indent wrapped lines one more level than the level of the first line.\n\nThe default value is `buffer.WRAPINDENT_FIXED`.
wrap_mode buffer.wrap_mode (number)\nLong line wrap mode.\n\n* `buffer.WRAP_NONE`\n Long lines are not wrapped.\n* `buffer.WRAP_WORD`\n Wrap long lines at word boundaries.\n* `buffer.WRAP_CHAR`\n Wrap long lines at character boundaries.\n\nThe default value is `buffer.WRAP_NONE`.
wrap_start_indent buffer.wrap_start_indent (number)\nThe number of spaces of indentation to display wrapped lines with if\n`buffer.wrap_indent_mode` is\n`buffer.WRAP_INDENT_FIXED`.\nThe default value is `0`.
wrap_visual_flags buffer.wrap_visual_flags (number)\nThe wrapped line visual display mode.\n\n* `buffer.WRAPVISUALFLAG_NONE`\n No visual flags.\n* `buffer.WRAPVISUALFLAG_END`\n Show visual flag at the end of the line.\n* `buffer.WRAPVISUALFLAG_START`\n Show visual flag at the beginning of the sub-line.\n* `buffer.WRAPVISUALFLAG_MARGIN`\n Show visual flag in the sub-line's line number margin.\n\nThe default value is `buffer.WRAPVISUALFLAG_NONE`.
-wrap_visual_flags_location buffer.wrap_visual_flags_location (number)\nThe wrapped line visual flag drawing mode.\n\n* `buffer.WRAPVISUALFLAGLOC_DEFAULT`\n Draw the visual flag near the right border.\n* `buffer.WRAPVISUALFLAGLOC_END_BY_TEXT`\n Draw the visual flag near text at the end of the line.\n* `buffer.WRAPVISUALFLAGLOC_START_BY_TEXT`\n Draw the visual flag near text at the beginning of the subline.\n\nThe default value is `buffer.WRAPVISUALFLAGLOC_DEFAULT`.
+wrap_visual_flags_location buffer.wrap_visual_flags_location (number)\nThe wrapped line visual flag drawing mode.\n\n* `buffer.WRAPVISUALFLAGLOC_DEFAULT`\n Draw the visual flag near the view's right margin.\n* `buffer.WRAPVISUALFLAGLOC_END_BY_TEXT`\n Draw the visual flag near text at the end of the line.\n* `buffer.WRAPVISUALFLAGLOC_START_BY_TEXT`\n Draw the visual flag near text at the beginning of the subline.\n\nThe default value is `buffer.WRAPVISUALFLAGLOC_DEFAULT`.
write file:write(···)\nWrites the value of each of its arguments to `file`. The arguments must be\nstrings or numbers.\n\nIn case of success, this function returns `file`. Otherwise it returns nil\nplus a string describing the error.
write io.write(···)\nEquivalent to `io.output():write(···)`.
-x_offset buffer.x_offset (number)\nThe horizontal scroll position in pixels.\nA value of `0` is the normal position with the first text column visible at\nthe left of the view.
+x_offset buffer.x_offset (number)\nThe horizontal scroll pixel position.\nA value of `0` is the normal position with the first text column visible at\nthe left of the view.
xdigit lexer.xdigit (pattern)\nA pattern that matches any hexadecimal digit ('0'-'9', 'A'-'F', 'a'-'f').
xor bit32.xor(...)\nReturns the bitwise "exclusive or" of its operands.
xpcall _G.xpcall(f, msgh [, arg1, ···])\nThis function is similar to `pcall`, except that it sets a new message\nhandler `msgh`.
-yesno_msgbox ui.dialogs.yesno_msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options* and with localized "Yes", "No", and "Cancel" buttons,\nreturning the selected button's index or, if *options*.`string_output` is\n`true`, the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the exit code. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The number of seconds the dialog waits for the user to select\n a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code
+yesno_msgbox ui.dialogs.yesno_msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options* and with localized "Yes", "No", and "Cancel" buttons,\nreturning the selected button's index or, if *options*.`string_output` is\n`true`, the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status instead of the button's index or the dialog's exit code. The\n default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code
yield coroutine.yield(···)\nSuspends the execution of the calling coroutine. Any arguments to `yield` are\npassed as extra results to `resume`.
zoom buffer.zoom (number)\nThe number of points to add to the size of all fonts.\nNegative values are allowed.\nThe default value is `0`.
zoom_in buffer.zoom_in(buffer)\nIncreases the size of all fonts by one point, up to 20.\n@param buffer The buffer.
diff --git a/modules/lua/tags b/modules/lua/tags
index 157af573..578bb968 100644
--- a/modules/lua/tags
+++ b/modules/lua/tags
@@ -76,6 +76,7 @@ FIELD _ 0;" F class:textadept.adeptsense
FIELD_IMAGE _ 0;" F class:textadept.adeptsense
FILE_AFTER_SAVE _ 0;" F class:events
FILE_BEFORE_SAVE _ 0;" F class:events
+FILE_CHANGED _ 0;" F class:events
FILE_OPENED _ 0;" F class:events
FILE_SAVED_AS _ 0;" F class:events
FILTER _ 0;" t class:lfs
@@ -361,7 +362,7 @@ _L _ 0;" t
_LEXBYLINE _ 0;" F class:lexer.lexer
_M _ 0;" m
_M _ 0;" t
-_M.cpp _ 0;" m
+_M.ansi_c _ 0;" m
_M.css _ 0;" m
_M.hypertext _ 0;" m
_M.java _ 0;" m
@@ -414,6 +415,9 @@ annotation_style _ 0;" F class:buffer
annotation_style_offset _ 0;" F class:buffer
annotation_text _ 0;" F class:buffer
annotation_visible _ 0;" F class:buffer
+ansi_c _ 0;" t class:_M
+ansi_c _ 0;" t class:keys
+ansi_c _ 0;" t class:snippets
any _ 0;" F class:lexer
api_files _ 0;" t class:textadept.adeptsense
append_text _ 0;" f class:buffer
@@ -502,8 +506,6 @@ char_left _ 0;" f class:buffer
char_left_extend _ 0;" f class:buffer
char_left_rect_extend _ 0;" f class:buffer
char_matches _ 0;" t class:textadept.editing
-char_position_from_point _ 0;" f class:buffer
-char_position_from_point_close _ 0;" f class:buffer
char_right _ 0;" f class:buffer
char_right_extend _ 0;" f class:buffer
char_right_rect_extend _ 0;" f class:buffer
@@ -554,9 +556,6 @@ cos _ 0;" f class:math
cosh _ 0;" f class:math
count_characters _ 0;" f class:buffer
cpath _ 0;" F class:package
-cpp _ 0;" t class:_M
-cpp _ 0;" t class:keys
-cpp _ 0;" t class:snippets
create _ 0;" f class:coroutine
css _ 0;" t class:_M
css _ 0;" t class:keys
@@ -626,7 +625,6 @@ execute _ 0;" f class:os
execute_lua _ 0;" f class:ui.command_entry
exit _ 0;" f class:os
exp _ 0;" f class:math
-expand_children _ 0;" f class:buffer
extend _ 0;" F class:lexer
extensions _ 0;" t class:textadept.file_types
extra_ascent _ 0;" F class:buffer
@@ -931,8 +929,6 @@ php _ 0;" t class:_M
php _ 0;" t class:keys
php _ 0;" t class:snippets
pi _ 0;" F class:math
-point_x_from_position _ 0;" f class:buffer
-point_y_from_position _ 0;" f class:buffer
popen _ 0;" f class:io
position_after _ 0;" f class:buffer
position_before _ 0;" f class:buffer
@@ -1061,7 +1057,7 @@ selection_n_start _ 0;" F class:buffer
selection_start _ 0;" F class:buffer
selections _ 0;" F class:buffer
self _ 0;" F class:textadept.adeptsense.syntax
-sense _ 0;" F class:_M.cpp
+sense _ 0;" F class:_M.ansi_c
sense _ 0;" F class:_M.css
sense _ 0;" F class:_M.hypertext
sense _ 0;" F class:_M.java
@@ -1161,9 +1157,11 @@ symlinkattributes _ 0;" f class:lfs
syntax _ 0;" t class:textadept.adeptsense
tab _ 0;" f class:buffer
tab_indents _ 0;" F class:buffer
+tab_label _ 0;" F class:buffer
tab_width _ 0;" F class:buffer
table _ 0;" m
table _ 0;" t
+tabs _ 0;" F class:ui
tag _ 0;" F class:buffer
tan _ 0;" f class:math
tanh _ 0;" f class:math