aboutsummaryrefslogtreecommitdiff
path: root/modules/lua
diff options
context:
space:
mode:
Diffstat (limited to 'modules/lua')
-rw-r--r--modules/lua/api161
-rw-r--r--modules/lua/tags5
2 files changed, 84 insertions, 82 deletions
diff --git a/modules/lua/api b/modules/lua/api
index 03c22dc0..396e15d9 100644
--- a/modules/lua/api
+++ b/modules/lua/api
@@ -11,14 +11,14 @@ AUTOINDENT textadept.editing.AUTOINDENT (bool)\nMatch the previous line's indent
AUTOMATICFOLD_CHANGE buffer.AUTOMATICFOLD_CHANGE (number, Read-only)\n
AUTOMATICFOLD_CLICK buffer.AUTOMATICFOLD_CLICK (number, Read-only)\n
AUTOMATICFOLD_SHOW buffer.AUTOMATICFOLD_SHOW (number, Read-only)\n
-AUTOPAIR textadept.editing.AUTOPAIR (bool)\nAutomatically close opening brace and quote characters with their\ncomplements.\nThe default value is `true`.\nAuto-paired characters are defined in the `char_matches`\ntable.
+AUTOPAIR textadept.editing.AUTOPAIR (bool)\nAutomatically close opening brace and quote characters with their\ncomplements.\nThe default value is `true`.\nAuto-paired characters are defined in the\n`textadept.editing.char_matches` table.
AUTO_C_CANCELED events.AUTO_C_CANCELED (string)\nEmitted when canceling an autocompletion or user list.
AUTO_C_CHAR_DELETED events.AUTO_C_CHAR_DELETED (string)\nEmitted after deleting a character while an autocompletion or user list is\nactive.
AUTO_C_SELECTION events.AUTO_C_SELECTION (string)\nEmitted after selecting an item from an autocompletion list, but before\ninserting that item into the buffer.\nAutomatic insertion can be cancelled by calling\n`buffer:auto_c_cancel()` before returning from the event handler.\nArguments:\n\n* _`text`_: The selection's text.\n* _`position`_: The autocompleted word's beginning position.
B lpeg.B(patt)\nReturns a pattern that matches only if the input string at the current\nposition is preceded by `patt`. Pattern `patt` must match only strings with\nsome fixed length, and it cannot contain captures.\n\nLike the and predicate, this pattern never consumes any input, independently\nof success or failure.
-BUFFER_AFTER_SWITCH events.BUFFER_AFTER_SWITCH (string)\nEmitted right after switching to another buffer.\nEmitted by `view:goto_buffer()`.
-BUFFER_BEFORE_SWITCH events.BUFFER_BEFORE_SWITCH (string)\nEmitted right before switching to another buffer.\nEmitted by `view:goto_buffer()`.
-BUFFER_DELETED events.BUFFER_DELETED (string)\nEmitted after deleting a buffer.\nEmitted by `buffer:delete()`.
+BUFFER_AFTER_SWITCH events.BUFFER_AFTER_SWITCH (string)\nEmitted right after switching to another buffer.\nEmitted by `view.goto_buffer()`.
+BUFFER_BEFORE_SWITCH events.BUFFER_BEFORE_SWITCH (string)\nEmitted right before switching to another buffer.\nEmitted by `view.goto_buffer()`.
+BUFFER_DELETED events.BUFFER_DELETED (string)\nEmitted after deleting a buffer.\nEmitted by `buffer.delete()`.
BUFFER_NEW events.BUFFER_NEW (string)\nEmitted after creating a new buffer.\nEmitted on startup and by `buffer.new()`.
BUILD_OUTPUT events.BUILD_OUTPUT (string)\nEmitted when executing a project's build shell 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* `project`: The path to the project being built.\n* `output`: A line of string output from the command.
C lpeg.C(patt)\nCreates a simple capture, which captures the substring of the subject that\nmatches `patt`. The captured value is a string. If `patt` has other captures,\ntheir values are returned after this one.
@@ -62,7 +62,7 @@ Cp lpeg.Cp()\nCreates a position capture. It matches the empty string and captur
Cs lpeg.Cs(patt)\nCreates a substitution capture, which captures the substring of the subject\nthat matches `patt`, with substitutions. For any capture inside `patt` with a\nvalue, the substring that matched the capture is replaced by the capture\nvalue (which should be a string). The final captured value is the string\nresulting from all replacements.
Ct lpeg.Ct(patt)\nCreates a table capture. This capture creates a table and puts all values\nfrom all anonymous captures made by `patt` inside this table in successive\ninteger keys, starting at 1. Moreover, for each named capture group created\nby `patt`, the first value of the group is put into the table with the group\nname as its key. The captured value is only the table.
DEFAULT lexer.DEFAULT (string)\nThe token name for default tokens.
-DEFAULT_SESSION textadept.session.DEFAULT_SESSION (string)\nThe path to the default session file, *`_USERHOME`/session*, or\n*`_USERHOME`/session_term* if `_G.CURSES` is `true`.
+DEFAULT_SESSION textadept.session.DEFAULT_SESSION (string)\nThe path to the default session file, *`_USERHOME`/session*, or\n*`_USERHOME`/session_term* if `CURSES` is `true`.
DOCUTILS_PATH _M.rest.DOCUTILS_PATH (string)\nThe absolute path to the directory that contains the Python Docutils\nlibrary if it is not in the environment's `PYTHONPATH`.\nThe default value is `nil`, which indicates Docutils is installed.
DOUBLE_CLICK events.DOUBLE_CLICK (string)\nEmitted after double-clicking the mouse button.\nArguments:\n\n* _`position`_: The position double-clicked.\n* _`line`_: The line number of the position double-clicked.\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+.
DWELL_END events.DWELL_END (string)\nEmitted after `DWELL_START` when the user moves the mouse, presses a key,\nor scrolls the view.\nArguments:\n\n* _`position`_: The position closest to *x* and *y*.\n* _`x`_: The x-coordinate of the mouse in the view.\n* _`y`_: The y-coordinate of the mouse in the view.
@@ -78,16 +78,17 @@ ERROR lexer.ERROR (string)\nThe token name for error tokens.
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 of the file 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 of the file being saved.
FILE_CHANGED events.FILE_CHANGED (string)\nEmitted when Textadept detects that an open file was modified externally.\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 opened file's filename.
+FILE_OPENED events.FILE_OPENED (string)\nEmitted after opening a file in a new buffer.\nEmitted by `io.open_file()`.\nArguments:\n\n* _`filename`_: The opened file's filename.
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\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
+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\n@see lfs.FILTER
FIND events.FIND (string)\nEmitted to find text via the Find & Replace Pane.\nArguments:\n\n* _`text`_: The text to search for.\n* _`next`_: Whether or not to search forward.
FIND_MATCHCASE buffer.FIND_MATCHCASE (number, Read-only)\n
FIND_REGEXP buffer.FIND_REGEXP (number, Read-only)\n
FIND_WHOLEWORD buffer.FIND_WHOLEWORD (number, Read-only)\n
FIND_WORDSTART buffer.FIND_WORDSTART (number, Read-only)\n
FIND_WRAPPED events.FIND_WRAPPED (string)\nEmitted when a text search wraps (passes through the beginning of the\nbuffer), either from bottom to top (when searching for a next occurrence),\nor from top to bottom (when searching for a previous occurrence).\nThis is useful for implementing a more visual or audible notice when a\nsearch wraps in addition to the statusbar message.
+FOCUS events.FOCUS (string)\nEmitted when Textadept receives focus.\nThis event is never emitted when Textadept is running in the terminal.
FOLDACTION_CONTRACT buffer.FOLDACTION_CONTRACT (number, Read-only)\n
FOLDACTION_EXPAND buffer.FOLDACTION_EXPAND (number, Read-only)\n
FOLDACTION_TOGGLE buffer.FOLDACTION_TOGGLE (number, Read-only)\n
@@ -226,7 +227,7 @@ RESET_AFTER events.RESET_AFTER (string)\nEmitted after resetting the Lua state.\
RESET_BEFORE events.RESET_BEFORE (string)\nEmitted before resetting the Lua state.\nEmitted by `reset()`.
RUN_OUTPUT events.RUN_OUTPUT (string)\nEmitted when executing a language's run shell 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`: A line of string output from the command.
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` unless the user passed the command line switch\n`-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 `textadept.session.DEFAULT_SESSION`, even\nif a different session was loaded with `textadept.session.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.
SEL_LINES buffer.SEL_LINES (number, Read-only)\n
@@ -275,20 +276,20 @@ STYLE_WHITESPACE lexer.STYLE_WHITESPACE (string)\nThe style typically used for w
TIME_FOREVER buffer.TIME_FOREVER (number, Read-only)\n
TYPE lexer.TYPE (string)\nThe token name for type tokens.
TYPEDEF textadept.editing.XPM_IMAGES.TYPEDEF (table)\nThe image number for type definitions.
-TYPEOVER_CHARS textadept.editing.TYPEOVER_CHARS (bool)\nMove over closing brace and quote characters under the caret when typing\nthem.\nThe default value is `true`.\nTypeover characters are defined in the `typeover_chars`\ntable.
+TYPEOVER_CHARS textadept.editing.TYPEOVER_CHARS (bool)\nMove over closing brace and quote characters under the caret when typing\nthem.\nThe default value is `true`.\nTypeover characters are defined in the\n`textadept.editing.typeover_chars` table.
UPDATE_CONTENT buffer.UPDATE_CONTENT (number, Read-only)\n
UPDATE_H_SCROLL buffer.UPDATE_H_SCROLL (number, Read-only)\n
UPDATE_SELECTION buffer.UPDATE_SELECTION (number, Read-only)\n
UPDATE_UI events.UPDATE_UI (string)\nEmitted after the view is visually updated.\nArguments:\n\n* _`updated`_: A bitmask of changes since the last update.\n\n + `buffer.UPDATE_CONTENT`\n Buffer contents, styling, or markers have changed.\n + `buffer.UPDATE_SELECTION`\n Buffer selection has changed.\n + `buffer.UPDATE_V_SCROLL`\n Buffer has scrolled vertically.\n + `buffer.UPDATE_H_SCROLL`\n Buffer has scrolled horizontally.
UPDATE_V_SCROLL buffer.UPDATE_V_SCROLL (number, Read-only)\n
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 a user list.\nArguments:\n\n* _`id`_: The *id* from `buffer:user_list_show()`.\n* _`text`_: The selection's text.\n* _`position`_: The position the list was displayed at.
+USER_LIST_SELECTION events.USER_LIST_SELECTION (string)\nEmitted after selecting an item in a user list.\nArguments:\n\n* _`id`_: The *id* 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.
VARIABLE textadept.editing.XPM_IMAGES.VARIABLE (table)\nThe image number for variables.
VIEW_AFTER_SWITCH events.VIEW_AFTER_SWITCH (string)\nEmitted right after switching to another view.\nEmitted by `ui.goto_view()`.
VIEW_BEFORE_SWITCH events.VIEW_BEFORE_SWITCH (string)\nEmitted right before switching to another view.\nEmitted by `ui.goto_view()`.
-VIEW_NEW events.VIEW_NEW (string)\nEmitted after creating a new view.\nEmitted on startup and by `view:split()`.
+VIEW_NEW events.VIEW_NEW (string)\nEmitted after creating a new view.\nEmitted on startup and by `view.split()`.
VISIBLE_SLOP buffer.VISIBLE_SLOP (number, Read-only)\n
VISIBLE_STRICT buffer.VISIBLE_STRICT (number, Read-only)\n
VS_NONE buffer.VS_NONE (number, Read-only)\n
@@ -342,14 +343,14 @@ _tokenstyles lexer.lexer._tokenstyles (table)\nA map of non-predefined token nam
abs math.abs(x)\nReturns the absolute value of `x`.
abspath lfs.abspath(filename, prefix)\nReturns the absolute path to string *filename*.\n*prefix* or `lfs.currentdir()` is prepended to a relative filename. The\nreturned path is not guaranteed to exist.\n@param filename The relative or absolute path to a file.\n@param prefix Optional prefix path prepended to a relative filename.\n@return string absolute path
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 A 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_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 A 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*.\n@see set_selection
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 A buffer.\n@param text The text to add.
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`.
additional_sel_alpha buffer.additional_sel_alpha (number)\nThe alpha value, ranging from `0` (transparent) to `255` (opaque), of\nadditional selections.\nThe default value is `buffer.ALPHA_NOALPHA`, for no alpha.
-additional_sel_back buffer.additional_sel_back (number, Write-only)\nThe background color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `buffer:set_sel_back(false, ...)`.
-additional_sel_fore buffer.additional_sel_fore (number, Write-only)\nThe foreground color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `buffer:set_sel_fore(false, ...)`.
+additional_sel_back buffer.additional_sel_back (number, Write-only)\nThe background color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `buffer.set_sel_back(false, ...)`.
+additional_sel_fore buffer.additional_sel_fore (number, Write-only)\nThe foreground color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `buffer.set_sel_fore(false, ...)`.
additional_selection_typing buffer.additional_selection_typing (bool)\nType into multiple selections.\nThe default value is `false`.
all_lines_visible buffer.all_lines_visible (bool, Read-only)\nWhether or not all lines are visible.
allocate_extended_styles buffer.allocate_extended_styles(buffer, num_styles)\nAllocates an additional *num_styles* number of styles for use by margins or\nannotations and returns the starting style number of the new range.\nThese styles are outside the 0..255 range used by lexers.\n@param buffer A buffer\n@param num_styles The number of additional styles to allocate.\n@return number\n@see annotation_style_offset\n@see margin_style_offset
@@ -359,7 +360,7 @@ anchor buffer.anchor (number)\nThe anchor's position.
annotation_clear_all buffer.annotation_clear_all(buffer)\nClears annotations from all lines.\n@param buffer A buffer.
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_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 `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.
@@ -368,7 +369,7 @@ ansi_c _M.ansi_c (module)\nThe ansi_c module.\nIt provides utilities for editing
any lexer.any (pattern)\nA pattern that matches any single character.
api_files textadept.editing.api_files (table)\nMap of lexer names to API documentation file tables.\nEach line in an API file consists of the name of a symbol (not the full\nsymbol), a space character, and that symbol's documentation. '\n' represents\na newline character.\n@see show_documentation
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 A buffer.\n@param text The text to append.
-arg _G.arg (table)\nTable of command line parameters passed to Textadept.\n@see _G.args
+arg _G.arg (table)\nTable of command line parameters passed to Textadept.\n@see args
args _G.args (module)\nProcesses command line arguments for Textadept.
arshift bit32.arshift(x, disp)\nReturns the number `x` shifted `disp` bits to the right. The number `disp`\nmay be any representable integer. Negative displacements shift to the left.\n\nThis shift operation is what is called arithmetic shift. Vacant bits on the\nleft are filled with copies of the higher bit of `x`; vacant bits on the\nright are filled with zeros. In particular, displacements with absolute\nvalues higher than 31 result in zero or `0xFFFFFFFF` (all original bits are\nshifted out).
ascii lexer.ascii (pattern)\nA pattern that matches any ASCII character (codes 0 to 127).
@@ -392,13 +393,13 @@ auto_c_ignore_case buffer.auto_c_ignore_case (bool)\nIgnore case when searching
auto_c_max_height buffer.auto_c_max_height (number)\nThe maximum number of items per page to show in autocompletion and user\nlists. The default value is `5`.
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_multi buffer.auto_c_multi (number)\nThe multiple selection autocomplete mode.\n\n* `buffer.MULTIAUTOC_ONCE`\n Autocomplete into only the main selection.\n* `buffer.MULTIAUTOC_EACH`\n Autocomplete into all selections.\n\nThe default value is `buffer.MULTIAUTOC_ONCE`.
-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_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, alphabetical\n 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 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 a user list was\nshown.\n@param buffer A buffer.\n@return number
auto_c_select buffer.auto_c_select(buffer, prefix)\nSelects the first item that starts with string *prefix* in an autocompletion\nor user list, using the case sensitivity setting `buffer.auto_c_ignore_case`.\n@param buffer A 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, items)\nDisplays an autocompletion list constructed from string *items* (whose items\nare delimited by `buffer.auto_c_separator` characters) using *len_entered*\nnumber of characters behind the caret as the prefix of the word to be\nautocompleted.\nThe sorted order of *items* (`buffer.auto_c_order`) must have already been\ndefined.\n@param buffer A buffer.\n@param len_entered The number of characters before the caret used to provide\n the context.\n@param items The sorted string of words to show, separated by\n `buffer.auto_c_separator` characters (initially spaces).
+auto_c_show buffer.auto_c_show(buffer, len_entered, items)\nDisplays an autocompletion list constructed from string *items* (whose items\nare delimited by `buffer.auto_c_separator` characters) using *len_entered*\nnumber of characters behind the caret as the prefix of the word to be\nautocompleted.\nThe sorted order of *items* (`buffer.auto_c_order`) must have already been\ndefined.\n@param buffer A buffer.\n@param len_entered The number of characters before the caret used to provide\n the context.\n@param items The sorted string of words to show, separated by\n `buffer.auto_c_separator` characters (initially spaces).\n@see auto_c_separator\n@see auto_c_order
auto_c_stops buffer.auto_c_stops(buffer, chars)\nAllows the user to type any character in string set *chars* in order to\ncancel an autocompletion or user list.\nThe default set is empty.\n@param buffer A 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 ('?').
+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 `buffer.register_image()` or\n`buffer.register_rgba_image()` before appending image types to list\nitems after type separator characters.\nThe default value is 63 ('?').
autocomplete textadept.editing.autocomplete(name)\nDisplays an autocompletion list provided by the autocompleter function\nassociated with string *name*, and returns `true` if completions were found.\n@param name The name of an autocompleter function in the `autocompleters`\n table to use for providing autocompletions.\n@see autocompleters
autocompleters textadept.editing.autocompleters (table)\nMap of autocompleter names to autocompletion functions.\nNames are typically lexer names and autocompletion functions typically\nautocomplete symbols.\nAutocompletion functions must return two values: the number of characters\nbehind the caret that are used as the prefix of the entity to autocomplete,\nand a list of completions to show. Autocompletion lists are sorted\nautomatically.\n@see autocomplete
back_space_un_indents buffer.back_space_un_indents (bool)\nUn-indent text when backspacing within indentation.\nThe default value is `false`.
@@ -429,7 +430,7 @@ 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 a call tip is visible.\n@param buffer A buffer.\n@return bool
call_tip_cancel buffer.call_tip_cancel(buffer)\nRemoves a call tip from view.\n@param buffer A buffer.
call_tip_fore_hlt buffer.call_tip_fore_hlt (number, Write-only)\nA call tip's highlighted text foreground color, in "0xBBGGRR" format.
-call_tip_pos_start buffer.call_tip_pos_start (number, Write-only)\nThe position to display a call tip at with\n`buffer.call_tip_show()`. When a call tip is visible,\nthis is the position where backspacing beyond it hides the call tip.
+call_tip_pos_start buffer.call_tip_pos_start (number, Write-only)\nThe position to display a call tip at with `buffer.call_tip_show()`.\nWhen a call tip is visible, this is the position where backspacing beyond\nit hides the call tip.
call_tip_pos_start buffer.call_tip_pos_start(buffer)\nReturns a call tip's display position.\n@param buffer A buffer.\n@return number
call_tip_position buffer.call_tip_position (boolean)\nDisplay a 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 a call tip's text between positions *start_pos*, starting from\nzero, to *end_pos* with the color `buffer.call_tip_fore_hlt`.\n@param buffer A buffer.\n@param start_pos The start position in a call tip text to highlight.\n@param end_pos The end position in a call tip text to highlight.
@@ -463,7 +464,7 @@ clear buffer.clear(buffer)\nDeletes the selected text or the character at the ca
clear textadept.bookmarks.clear()\nClears all bookmarks in the current buffer.
clear_all buffer.clear_all(buffer)\nDeletes the buffer's text.\n@param buffer A buffer.
clear_document_style buffer.clear_document_style(buffer)\nClears all styling and folding information.\n@param buffer A 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 A 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 A buffer.
clear_representation buffer.clear_representation(buffer, char)\nRemoves the alternate string representation for character *char*.\n@param buffer A buffer.\n@param char The character in `buffer.representations` to remove the alternate\n string representation for.
clear_selections buffer.clear_selections(buffer)\nRemoves all selections and moves the caret to the beginning of the buffer.\n@param buffer A buffer.
clipboard_text ui.clipboard_text (string)\nThe text on the clipboard.
@@ -483,7 +484,7 @@ compile_commands textadept.run.compile_commands (table)\nMap of file extensions
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.
config package.config (string)\nA string describing some compile-time configurations for packages. This\nstring is a sequence of lines:\n The first line is the directory separator string. Default is '`\`' for\n Windows and '`/`' for all other systems.\n The second line is the character that separates templates in a path.\n Default is '`;`'.\n The third line is the string that marks the substitution points in a\n template. Default is '`?`'.\n The fourth line is a string that, in a path in Windows, is replaced by\n the executable's directory. Default is '`!`'.\n The fifth line is a mark to ignore all text before it when building the\n `luaopen_` function name. Default is '`-`'.
connect events.connect(event, f, index)\nAdds function *f* to the set of event handlers for event *event* at position\n*index*.\nIf *index* not given, appends *f* to the set of handlers. *event* may be any\narbitrary string and does not need to have been previously defined.\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.
+constants _SCINTILLA.constants (table)\nMap of Scintilla constant names to their numeric values.\n@see _G.buffer
context_menu textadept.menu.context_menu (table)\nThe default right-click context menu.
context_menu ui.context_menu (userdata)\nThe buffer's context menu, a `ui.menu()`.\nThis is a low-level field. You probably want to use the higher-level\n`textadept.menu.context_menu`.
contracted_fold_next buffer.contracted_fold_next(buffer, line)\nReturns the line number of the next contracted fold point starting from line\nnumber *line*, or `-1` if none exists.\n@param buffer A buffer.\n@param line The line number in *buffer* to start at.\n@return number
@@ -524,12 +525,12 @@ delete_back buffer.delete_back(buffer)\nDeletes the character behind the caret i
delete_back_not_line buffer.delete_back_not_line(buffer)\nDeletes the character behind the caret unless either the caret is at the\nbeginning of a line or text is selected.\nIf text is selected, deletes it.\n@param buffer A buffer.
delete_range buffer.delete_range(buffer, pos, length)\nDeletes the range of text from position *pos* to *pos* + *length*.\n@param buffer A 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 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.
+dialog ui.dialog(kind, ...)\nLow-level function for prompting the user with a gtdialog 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* 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
+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`, `lfs.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 `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 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 A 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 A buffer.
@@ -542,7 +543,7 @@ dropdown ui.dialogs.dropdown(options)\nPrompts the user with a drop down item se
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, of the edge or background for long lines\naccording to `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`.
+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` at column\n `buffer.edge_column`.\n* `buffer.EDGE_BACKGROUND`\n Change the background color of text after column `buffer.edge_column`\n to `buffer.edge_colour`.
edit_toggle_overtype buffer.edit_toggle_overtype(buffer)\nToggles `buffer.overtype`.\n@param buffer A 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 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)
@@ -556,10 +557,10 @@ end_at_last_line buffer.end_at_last_line (bool)\nDisable scrolling past the last
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 be undone or redone as a single action.\n@param buffer A buffer.
ensure_visible buffer.ensure_visible(buffer, line)\nEnsures line number *line* is visible by expanding any fold points hiding it.\n@param buffer A 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 A 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 A 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`\nkey exits the current mode, closes the command entry, and restores normal key\nlookup.\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 current mode does not convert\nany of the buffer's existing end of line characters.\nUse `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\nany of the buffer's existing end of line characters.\nUse `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.
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.
@@ -603,7 +604,7 @@ focus ui.find.focus()\nDisplays and focuses the Find & Replace Pane.
fold lexer.fold(lexer, text, start_pos, start_line, start_level)\nFolds a chunk of text *text* with lexer *lexer*.\nFolds *text* starting at position *start_pos* on line number *start_line*\nwith a beginning fold level of *start_level* in the buffer. If *lexer* has a\na `_fold` function or a `_foldsymbols` table, that field is used to perform\nfolding. Otherwise, if a `fold.by.indentation` property is set, folding by\nindentation is done.\n@param lexer The lexer object to fold with.\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)\nContracts, expands, 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 A 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)\nContracts, expands, or toggles the fold point on line number *line*, as well\nas all of its children, depending on *action*.\n@param buffer A 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 that indicate whether or not fold points are expanded for\nline numbers starting from zero.\nSetting expanded fold states does not toggle folds; it only updates fold\nmargin markers. Use `buffer:toggle_fold()` instead.
+fold_expanded buffer.fold_expanded (table)\nTable of flags that indicate whether or not fold points are expanded for\nline numbers 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* `buffer.FOLDFLAG_LEVELNUMBERS`\n Show hexadecimal fold levels in line margins.\n This option cannot be combined with `FOLDFLAG_LINESTATE`.\n* `buffer.FOLDFLAG_LINESTATE`\n Show line state in line margins.\n This option cannot be combined with `FOLDFLAG_LEVELNUMBERS`.\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 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.
@@ -637,7 +638,7 @@ 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_anchor _M.yaml.goto_anchor()\nJumps to the anchor for the alias underneath the caret.
-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_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 `_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 `_BUFFERS`. An absolute index\n 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._BUFFERS\n@see events.BUFFER_BEFORE_SWITCH\n@see events.BUFFER_AFTER_SWITCH
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.\nIf *line* is `nil`, jumps to the next or previous warning or error, depending\non boolean *next*. Displays an annotation with the warning or error message\nif 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 existing view whose buffer's filename is *filename*.\nIf no view was found and *split* is `true`, splits the current view in order\nto show the requested file. If *split* is `false`, shifts to the next or\n*preferred_view* view in order to show the requested file. If *sloppy* is\n`true`, requires only the last part of *filename* to match a buffer's\n`filename`.\n@param filename The filename of the buffer to go to.\n@param split Optional flag that indicates whether or not to open the buffer\n in a 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 that indicates whether or not to not match\n *filename* to `buffer.filename` exactly. When `true`, matches *filename* to\n only the last part of `buffer.filename` This is useful for run and compile\n commands which output relative filenames and paths instead of full ones and\n it is likely that the file in question is already open. The default value\n is `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 buffer titled "Files Found" or, if *line* is `nil`, jumps to the next\nor previous search 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`.
@@ -645,8 +646,8 @@ goto_line buffer.goto_line(buffer, line)\nMoves the caret to the beginning of li
goto_line textadept.editing.goto_line(line)\nMoves the caret to the beginning of line number *line* or the user-specified\nline, ensuring *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 A buffer.\n@param pos The position in *buffer* to go to.
-goto_section M.goto_section()\nPrompts the user to select a section title to jump to.\nRequires the entire document to be styled.
-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 that indicates 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
+goto_section _M.rest.goto_section()\nPrompts the user to select a section title to jump to.\nRequires the entire document to be styled.
+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 `_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 `_VIEWS`.\n@param relative Optional flag that indicates whether *n* is a relative or\n absolute index. The default value is `false`, for an absolute index.\n@see _G._VIEWS\n@see events.VIEW_BEFORE_SWITCH\n@see events.VIEW_AFTER_SWITCH
graph lexer.graph (pattern)\nA pattern that matches any graphical character ('!' to '~').
gsub string.gsub(s, pattern, repl [, n])\nReturns a copy of `s` in which all (or the first `n`, if given)\noccurrences of the `pattern` have been replaced by a replacement string\nspecified by `repl`, which can be a string, a table, or a function. `gsub`\nalso returns, as its second value, the total number of matches that occurred.\nThe name `gsub` comes from "Global SUBstitution".\n\nIf `repl` is a string, then its value is used for replacement. The character\n`%` works as an escape character: any sequence in `repl` of the form `%d`,\nwith `d` between 1 and 9, stands for the value of the `d`-th captured\nsubstring. The sequence `%0` stands for the whole match. The sequence `%%`\nstands for a single `%`.\n\nIf `repl` is a table, then the table is queried for every match, using\nthe first capture as the key.\n\nIf `repl` is a function, then this function is called every time a match\noccurs, with all captured substrings passed as arguments, in order.\n\nIn any case, if the pattern specifies no captures, then it behaves as if the\nwhole pattern was inside a capture.\n\nIf the value returned by the table query or by the function call is a\nstring or a number, then it is used as the replacement string; otherwise,\nif it is false or nil, then there is no replacement (that is, the original\nmatch is kept in the string).\n\nHere are some examples:\n\n x = string.gsub("hello world", "(%w+)", "%1 %1")\n --> x="hello hello world world"\n x = string.gsub("hello world", "%w+", "%0 %0", 1)\n --> x="hello hello world"\n x = string.gsub("hello world from Lua", "(%w+)%s*(%w+)", "%2 %1")\n --> x="world hello Lua from"\n x = string.gsub("home = $HOME, user = $USER", "%$(%w+)", os.getenv)\n --> x="home = /home/roberto, user = roberto"\n x = string.gsub("4+5 = $return 4+5$", "%$(.-)%$", function (s)\n return load(s)()\n end)\n --> x="4+5 = 9"\n local t = {name="lua", version="5.2"}\n x = string.gsub("$name-$version.tar.gz", "%$(%w+)", t)\n --> x="lua-5.2.tar.gz"
h_scroll_bar buffer.h_scroll_bar (bool)\nDisplay the horizontal scroll bar.\nThe default value is `true`.
@@ -661,7 +662,7 @@ home_display_extend buffer.home_display_extend(buffer)\nMoves the caret to the b
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 A buffer.
home_rect_extend buffer.home_rect_extend(buffer)\nMoves the caret to the beginning of the current line, extending the\nrectangular selection to the new position.\n@param buffer A buffer.
home_wrap buffer.home_wrap(buffer)\nMoves the caret to the beginning of the current wrapped line or, if already\nthere, to the beginning of the actual line.\n@param buffer A 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 A 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 A 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`.
html _G.keys.html (table)\nContainer for HTML-specific key bindings.
@@ -671,17 +672,17 @@ huge math.huge (number)\nThe value `HUGE_VAL`, a value larger than or equal to a
iconv string.iconv(text, new, old)\nConverts string *text* from encoding *old* to encoding *new* using iconv,\nreturning the string result.\nValid encodings are GNU 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.\n@param text The text to convert.\n@param new The string encoding to convert to.\n@param old The string encoding to convert from.
in_files ui.find.in_files (bool)\nFind search text in a list of files.\nThe default value is `false`.
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 buffer.indent (number)\nThe number of spaces in one level of indentation.\nThe default value is `0`, which uses the value of `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 indentation level, but with an additional level if the previous non-empty\n line is a fold point.\n* `buffer.IV_LOOKBOTH`\n Draw guides beyond the current line up to either the indentation level of\n the 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.
-indic_style buffer.indic_style (table)\nTable of styles for indicator numbers from `0` to `31`.\n\n* `buffer.INDIC_PLAIN`\n An underline.\n* `buffer.INDIC_SQUIGGLE`\n A squiggly underline 3 pixels in height.\n* `buffer.INDIC_TT`\n An underline of small 'T' shapes.\n* `buffer.INDIC_DIAGONAL`\n An underline of diagonal hatches.\n* `buffer.INDIC_STRIKE`\n Strike out.\n* `buffer.INDIC_HIDDEN`\n Invisible.\n* `buffer.INDIC_BOX`\n A bounding box.\n* `buffer.INDIC_ROUNDBOX`\n A translucent box with rounded corners around the text. Use\n `buffer.indic_alpha` and\n `buffer.indic_outline_alpha` to set the fill and\n outline transparency, respectively. Their default values are `30` and\n `50`.\n* `buffer.INDIC_STRAIGHTBOX`\n Similar to `INDIC_ROUNDBOX` but with sharp corners.\n* `buffer.INDIC_DASH`\n A dashed underline.\n* `buffer.INDIC_DOTS`\n A dotted underline.\n* `buffer.INDIC_SQUIGGLELOW`\n A squiggly underline 2 pixels in height.\n* `buffer.INDIC_DOTBOX`\n Similar to `INDIC_STRAIGHTBOX` but with a dotted outline.\n Translucency alternates between `buffer.indic_alpha` and\n `buffer.indic_outline_alpha` starting with the\n top-left pixel.\n* `buffer.INDIC_SQUIGGLEPIXMAP`\n Identical to `INDIC_SQUIGGLE` but draws faster by using a pixmap instead\n of multiple line segments.\n* `buffer.INDIC_COMPOSITIONTHICK`\n A 2-pixel thick underline at the bottom of the line inset by 1 pixel on\n on either side. Similar in appearance to Asian language input\n composition.\n\nUse `_SCINTILLA.next_indic_number()` for custom indicators.
-indic_under buffer.indic_under (table)\nTable of flags that indicate whether or not to draw indicators behind text\ninstead of over the top of it for indicator numbers from `0` to `31`.\nFor values to be `true`, `buffer.two_phase_draw` must be\n`true`.\nThe default values are `false`.
+indic_style buffer.indic_style (table)\nTable of styles for indicator numbers from `0` to `31`.\n\n* `buffer.INDIC_PLAIN`\n An underline.\n* `buffer.INDIC_SQUIGGLE`\n A squiggly underline 3 pixels in height.\n* `buffer.INDIC_TT`\n An underline of small 'T' shapes.\n* `buffer.INDIC_DIAGONAL`\n An underline of diagonal hatches.\n* `buffer.INDIC_STRIKE`\n Strike out.\n* `buffer.INDIC_HIDDEN`\n Invisible.\n* `buffer.INDIC_BOX`\n A bounding box.\n* `buffer.INDIC_ROUNDBOX`\n A translucent box with rounded corners around the text. Use\n `buffer.indic_alpha` and `buffer.indic_outline_alpha` to set the\n fill and outline transparency, respectively. Their default values are\n `30` and `50`.\n* `buffer.INDIC_STRAIGHTBOX`\n Similar to `INDIC_ROUNDBOX` but with sharp corners.\n* `buffer.INDIC_DASH`\n A dashed underline.\n* `buffer.INDIC_DOTS`\n A dotted underline.\n* `buffer.INDIC_SQUIGGLELOW`\n A squiggly underline 2 pixels in height.\n* `buffer.INDIC_DOTBOX`\n Similar to `INDIC_STRAIGHTBOX` but with a dotted outline.\n Translucency alternates between `buffer.indic_alpha` and\n `buffer.indic_outline_alpha` starting with the top-left pixel.\n* `buffer.INDIC_SQUIGGLEPIXMAP`\n Identical to `INDIC_SQUIGGLE` but draws faster by using a pixmap instead\n of multiple line segments.\n* `buffer.INDIC_COMPOSITIONTHICK`\n A 2-pixel thick underline at the bottom of the line inset by 1 pixel on\n on either side. Similar in appearance to Asian language input\n composition.\n\nUse `_SCINTILLA.next_indic_number()` for custom indicators.
+indic_under buffer.indic_under (table)\nTable of flags that indicate whether or not to draw indicators behind text\ninstead of over the top of it for indicator numbers from `0` to `31`.\nFor values to be `true`, `buffer.two_phase_draw` must be `true`.\nThe default values are `false`.
indicator_all_on_for buffer.indicator_all_on_for(buffer, pos)\nReturns a bit-mask that represents which indicators are on at position *pos*.\nBit 0 is set if indicator 0 is on, bit 1 for indicator 1, etc.\n@param buffer A buffer.\n@param pos The position in *buffer* to get indicators at.\n@return number
indicator_clear_range buffer.indicator_clear_range(buffer, pos, length)\nClears indicator number `buffer.indicator_current` over the range of text\nfrom position *pos* to *pos* + *length*.\n@param buffer A buffer.\n@param pos The start position of the range of text in *buffer* to clear\n indicators over.\n@param length The number of characters in the range of text to clear\n indicators over.
-indicator_current buffer.indicator_current (number)\nThe indicator number in the range of `0` to `31` used by\n`buffer:indicator_fill_range()` and\n`buffer:indicator_clear_range()`.
+indicator_current buffer.indicator_current (number)\nThe indicator number in the range of `0` to `31` used by\n`buffer.indicator_fill_range()` and\n`buffer.indicator_clear_range()`.
indicator_end buffer.indicator_end(buffer, indicator, pos)\nReturns the next boundary position, starting from position *pos*, of\nindicator number *indicator*, in the range of `0` to `31`.\nReturns `buffer.length` if *indicator* was not found.\n@param buffer A buffer.\n@param indicator An indicator number in the range of `0` to `31`.\n@param pos The position in *buffer* of the indicator.
indicator_fill_range buffer.indicator_fill_range(buffer, pos, length)\nFills the range of text from position *pos* to *pos* + *length* with\nindicator number `buffer.indicator_current`.\n@param buffer A buffer.\n@param pos The start position of the range of text in *buffer* to set\n indicators over.\n@param length The number of characters in the range of text to set indicators\n over.
indicator_start buffer.indicator_start(buffer, indicator, pos)\nReturns the previous boundary position, starting from position *pos*, of\nindicator number *indicator*, in the range of `0` to `31`.\nReturns `0` if *indicator* was not found.\n@param buffer A buffer.\n@param indicator An indicator number in the range of `0` to `31`.\n@param pos The position in *buffer* of the indicator.
@@ -704,7 +705,7 @@ len string.len(s)\nReceives a string and returns its length. The empty string `"
length buffer.length (number, Read-only)\nThe number of bytes in the buffer.
lex lexer.lex(lexer, text, init_style)\nLexes a chunk of text *text* (that has an initial style number of\n*init_style*) with lexer *lexer*.\nIf *lexer* has a `_LEXBYLINE` flag set, the text is lexed one line at a time.\nOtherwise the text is lexed as a whole.\n@param lexer The lexer object to lex with.\n@param text The text in the buffer to lex.\n@param init_style The current style. Multiple-language lexers use this to\n determine which language to start lexing in.\n@return table of token names and positions.
lexer _G.lexer (module)\nLexes Scintilla documents with Lua and LPeg.
-lexer lexer.lexer (table)\nIndividual lexer fields.
+lexer lexer.lexer (table)\nIndividual fields for a lexer instance.
lexers textadept.file_types.lexers (table)\nList of available lexer names.
lfs _G.lfs (module)\nLua lfs module.
line_copy buffer.line_copy(buffer)\nCopies the current line to the clipboard.\n@param buffer A buffer.
@@ -722,11 +723,11 @@ line_end_extend buffer.line_end_extend(buffer)\nMoves the caret to the end of th
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 A 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 A 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 A 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 A buffer.
line_from_position buffer.line_from_position(buffer, pos)\nReturns the line number of the line that contains position *pos*.\nReturns `0` if *pos* is less than 0 or `buffer.line_count` if *pos* is\ngreater than `buffer.length`.\n@param buffer A 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 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 A buffer.\n@param line The line number in *buffer* to get the length of.\n@return number
+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 A 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 A 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 A buffer.
line_scroll_up buffer.line_scroll_up(buffer)\nScrolls the buffer up one line, keeping the caret visible.\n@param buffer A buffer.
@@ -770,12 +771,12 @@ margin_options buffer.margin_options (number)\nA bit-mask of margin option setti
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 that indicate 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_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 `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 all text in text margins.\n@param buffer A 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)\nAdds marker number *marker*, in the range of `0` to `31`, to line number\n*line*, returning the added marker's handle which can be used in\n`buffer:marker_delete_handle()` and `buffer:marker_line_from_handle()`, or\n`0` if *line* is invalid.\n@param buffer A buffer.\n@param line The line number to add the marker on.\n@param marker The marker number in the range of `0` to `31` to add.\n@return number
+marker_add buffer.marker_add(buffer, line, marker)\nAdds marker number *marker*, in the range of `0` to `31`, to line number\n*line*, returning the added marker's handle which can be used in\n`buffer.marker_delete_handle()` and `buffer.marker_line_from_handle()`, or\n`0` if *line* is invalid.\n@param buffer A buffer.\n@param line The line number to add the marker on.\n@param marker 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 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 A 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`.
@@ -785,14 +786,14 @@ marker_define_pixmap buffer.marker_define_pixmap(buffer, marker, pixmap)\nAssoci
marker_define_rgba_image buffer.marker_define_rgba_image(buffer, marker, pixels)\nAssociates marker number *marker*, 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*.\n*pixels* is shown in symbol margins next to lines marked with *marker*.\n@param buffer A buffer.\n@param marker The marker number in the range of `0` to `31` to define RGBA\n 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)\nDeletes marker number *marker*, in the range of `0` to `31`, from line number\n*line*. If *marker* is `-1`, deletes all markers from *line*.\n@param buffer A buffer.\n@param line The line number to delete the marker on.\n@param marker The marker number in the range of `0` to `31` to delete from\n *line*, or `-1` to delete all markers from the line.
marker_delete_all buffer.marker_delete_all(buffer, marker)\nDeletes marker number *marker*, in the range of `0` to `31`, from any line\nthat has it.\nIf *marker* is `-1`, deletes all markers from all lines.\n@param buffer A buffer.\n@param marker The marker number in the range of `0` to `31` to delete from\n 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 A buffer.\n@param handle The identifier of a marker returned by `buffer:marker_add()`.
+marker_delete_handle buffer.marker_delete_handle(buffer, handle)\nDeletes the marker with handle *handle* returned by `buffer.marker_add()`.\n@param buffer A buffer.\n@param handle The identifier of a marker returned by `buffer.marker_add()`.
marker_enable_highlight buffer.marker_enable_highlight(buffer, enabled)\nHighlights the margin fold markers for the current fold block if *enabled* is\n`true`.\n@param buffer A buffer.\n@param enabled Whether or not to enable highlight.
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 that represents 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 A 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` if the line was not found.\n@param buffer A buffer.\n@param handle The identifier of a marker returned by `buffer:marker_add()`.\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` if the line was not found.\n@param buffer A buffer.\n@param handle The identifier of a marker returned by `buffer.marker_add()`.\n@return number
marker_next buffer.marker_next(buffer, line, marker_mask)\nReturns the first line number, starting at line number *line*, that has had\nall of the markers represented by marker bit-mask *marker_mask* added to it.\nReturns `-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 A buffer.\n@param 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, line, marker_mask)\nReturns the last line number, before or on line number *line*, that has had\nall of the markers represented by marker bit-mask *marker_mask* added to it.\nReturns `-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 A buffer.\n@param 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)\nReturns the symbol assigned to marker number *marker*, in the range of `0` to\n`31`, used in `buffer:marker_define()`,\n`buffer:marker_define_pixmap()`, or `buffer:marker_define_rgba_image()`.\n@param buffer A buffer.\n@param marker The marker number in the range of `0` to `31` to get the symbol\n of.\n@return number
+marker_symbol_defined buffer.marker_symbol_defined(buffer, marker)\nReturns the symbol assigned to marker number *marker*, in the range of `0` to\n`31`, used in `buffer.marker_define()`,\n`buffer.marker_define_pixmap()`, or `buffer.marker_define_rgba_image()`.\n@param buffer A buffer.\n@param marker The marker number in the range of `0` to `31` to get the symbol\n 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`.
@@ -820,7 +821,7 @@ multi_paste buffer.multi_paste (number)\nThe multiple selection paste mode.\n\n*
multiple_selection buffer.multiple_selection (bool)\nEnable multiple selection.\nThe default value is `false`.
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_line buffer.new_line(buffer)\nTypes a new line at the caret position according to\n`buffer.eol_mode`.\n@param buffer A buffer.
+new_line buffer.new_line(buffer)\nTypes a new line at the caret position according to `buffer.eol_mode`.\n@param buffer A buffer.
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
@@ -832,7 +833,7 @@ 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 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 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_image M.open_image()\nOpens the image specified in an "image" or "figure" directive on the current\nline.
+open_image _M.rest.open_image()\nOpens the image specified in an "image" or "figure" directive on the current\nline.
open_recent_file io.open_recent_file()\nPrompts the user to select a recently opened file to be reopened.\n@see recent_files
optionselect ui.dialogs.optionselect(options)\nPrompts the user with an option selection dialog defined by dialog options \ntable *options*, returning the selected button's index along with the indices \nof the selected options or, if *options*.`string_output` is `true`, the \nselected button's label along with the text of the selected options.\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 option select dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `items`: The list of string options to show in the option group.\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`: The indices of initially selected options.\n * `string_output`: Return the selected button's label or the dialog's exit\n status along with the selected option's text instead of the button's \n index or the dialog's exit code along with the option's index. 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.optionselect{title = 'Language', \n informative_text = 'Check the languages you understand'\n items = {'English', 'Romanian'}, select = 1, string_output = true}\n@return selected button or exit code, list of selected options
os _G.os (module)\nLua os module.
@@ -867,7 +868,7 @@ print _G.print(···)\nReceives any number of arguments and prints their values
print lexer.print (pattern)\nA pattern that matches any printable character (' ' to '~').
print ui.print(...)\nPrints the given string messages to the message buffer.\nOpens a new buffer if one has not already been opened for printing messages.\n@param ... Message strings.
proc textadept.run.proc (process)\nThe currently running process or the most recent process run.\nThis field does not exist in the terminal version.
-process args.process(arg)\nProcesses command line argument table *arg*, handling switches previously\ndefined using `args.register()` and treating unrecognized arguments as\nfilenames to open.\nEmits an `ARG_NONE` event when no arguments are present.\n@param arg Argument table.\n@see register\n@see events
+process args.process(arg)\nProcesses command line argument table *arg*, handling switches previously\ndefined using `args.register()` and treating unrecognized arguments as\nfilenames to open.\nEmits an `ARG_NONE` event when no arguments are present.\n@param arg Argument table.\n@see register\n@see _G.events
properties _SCINTILLA.properties (table)\nMap of Scintilla property names to table values containing their "get"\nfunction IDs, "set" function IDs, return types, and wParam types.\nThe wParam type will be non-zero if the property is indexable.\nTypes are the same as in the `functions` table.\n@see functions
property buffer.property (table)\nMap of key-value string pairs used by lexers.
property lexer.property (table)\nMap of key-value string pairs.
@@ -900,9 +901,9 @@ rectangular_selection_caret_virtual_space buffer.rectangular_selection_caret_vir
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 A 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 A 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()`.
-register_rgba_image buffer.register_rgba_image(buffer, type, pixels)\nRegisters RGBA image *pixels* to type number *type* for use in autocompletion\nand user lists.\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.\n@param buffer A buffer.\n@param type Integer type to register the image with.\n@param pixels The RGBA data as described in\n `buffer:marker_define_rgba_image()`.
-release_all_extended_styles buffer.release_all_extended_styles(buffer)\nReleases all styles allocated with `buffer:allocate_extended_styles()`.\n@param buffer A buffer.\n@see allocate_extended_styles
+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 A 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()`.
+register_rgba_image buffer.register_rgba_image(buffer, type, pixels)\nRegisters RGBA image *pixels* to type number *type* for use in autocompletion\nand user lists.\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.\n@param buffer A buffer.\n@param type Integer type to register the image with.\n@param pixels The RGBA data as described in\n `buffer.marker_define_rgba_image()`.
+release_all_extended_styles buffer.release_all_extended_styles(buffer)\nReleases all styles allocated with `buffer.allocate_extended_styles()`.\n@param buffer A buffer.\n@see allocate_extended_styles
reload_file io.reload_file()\nReloads the current buffer's file contents, discarding any changes.
remove os.remove(filename)\nDeletes the file (or empty directory, on POSIX systems) with the given name.\nIf this function fails, it returns nil, plus a string describing the error\nand the error code.
remove table.remove(list [, pos])\nRemoves from `list` the element at position `pos`, returning the value of the\nremoved element. When `pos` is an integer between 1 and `#list`, it shifts\ndown the elements `list[pos+1], list[pos+2], ···, list[#list]` and erases\nelement `list[#list]`; The index `pos` can also be 0 when `#list` is 0, or\n`#list + 1`; in those cases, the function erases the element `list[pos]`.\n\nThe default value for `pos` is `#list`, so that a call `table.remove(t)`\nremoves the last element of list `t`.
@@ -918,7 +919,7 @@ replace_label_text ui.find.replace_label_text (string, Write-only)\nThe text of
replace_sel buffer.replace_sel(buffer, text)\nReplaces the selected text with string *text*, scrolling the caret into view.\n@param buffer A 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* 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 A 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 A buffer.\n@param text The text to replace the target range with.\n@return number
-representation buffer.representation (table)\nThe alternative string representations of characters.\nRepresentations are displayed in the same way control characters are. Use\nthe empty string for the '\0' character when assigning its representation.\nCall `buffer:clear_representation()` to remove a\nrepresentation.
+representation buffer.representation (table)\nThe alternative string representations of characters.\nRepresentations are displayed in the same way control characters are. Use\nthe empty string for the '\0' character when assigning its representation.\nCall `buffer.clear_representation()` to remove a representation.
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`.
rest _G.keys.rest (table)\nContainer for reST-specific key bindings.
@@ -926,9 +927,9 @@ rest _G.snippets.rest (table)\nContainer for reST-specific snippets.
rest _M.rest (module)\nThe reST module.\nIt provides utilities for editing reST and Sphinx documents.
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 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()`.
+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()`.
rmdir lfs.rmdir(dirname)\nRemoves an existing directory. The argument is the name of the directory.\n\nReturns true if the operation was successful; in case of error, it returns\nnil plus an error string.
rotate_selection buffer.rotate_selection(buffer)\nDesignates the next additional selection to be the main selection.\n@param buffer A buffer.
rrotate bit32.rrotate(x, disp)\nReturns the number `x` rotated `disp` bits to the right. The number `disp`\nmay be any representable integer.\n\nFor any valid displacement, the following identity holds:\n\n assert(bit32.rrotate(x, disp) == bit32.rrotate(x, disp % 32))\n\nIn particular, negative displacements rotate to the left.
@@ -936,7 +937,7 @@ rshift bit32.rshift(x, disp)\nReturns the number `x` shifted `disp` bits to the
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 (module)\nCompile and run source code files with Textadept.\nLanguage modules may tweak the `compile_commands`,\n`run_commands`, and/or `error_patterns` tables for particular languages.
run textadept.run.run()\nRuns the current file based on its extension or language, using the shell\ncommand from the `run_commands` table.\nEmits `RUN_OUTPUT` events.\n@see run_commands\n@see _G.events
run_commands textadept.run.run_commands (table)\nMap of file extensions or lexer names to their associated "run" shell command\nline strings or functions that return strings.\nCommand line strings may have the following macros:\n\n + `%f` or `%(filename)`: The file's name, including its extension.\n + `%e` or `%(filename_noext)`: The file's name, excluding its extension.\n + `%d` or `%(filedir)`: The current file's directory path.\n + `%(filepath)`: The full path of the current file.
running coroutine.running()\nReturns the running coroutine plus a boolean, true when the running coroutine\nis the main one.
@@ -944,14 +945,14 @@ save textadept.session.save(filename)\nSaves the session to file *filename* or t
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 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 A buffer.\n@see set_x_caret_policy\n@see set_y_caret_policy
-scroll_range buffer.scroll_range(buffer, secondary_pos, primary_pos)\nScrolls into view the range of text between positions *primary_pos* and\n*secondary_pos*, 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 A 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_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 A buffer.\n@see set_x_caret_policy\n@see set_y_caret_policy
+scroll_range buffer.scroll_range(buffer, secondary_pos, primary_pos)\nScrolls into view the range of text between positions *primary_pos* and\n*secondary_pos*, 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 A 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 A buffer.
scroll_to_start buffer.scroll_to_start(buffer)\nScrolls to the beginning of the buffer without moving the caret.\n@param buffer A 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 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 `buffer.scroll_width_tracking`.\nThe default value is `2000`.
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 that `buffer:search_next()` and `buffer:search_prev()`\nstart at to the caret position.\n@param buffer A 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 search text only when it is surrounded by non-word characters.\n* `buffer.FIND_MATCHCASE`\n Match search text case sensitively.\n* `buffer.FIND_WORDSTART`\n Match search text only when the previous character is a non-word\n character.\n* `buffer.FIND_REGEXP`\n Interpret 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_anchor buffer.search_anchor(buffer)\nAnchors the position that `buffer.search_next()` and `buffer.search_prev()`\nstart at to the caret position.\n@param buffer A buffer.
+search_flags buffer.search_flags (number)\nThe bit-mask of search flags used by `buffer.search_in_target()`.\n\n* `buffer.FIND_WHOLEWORD`\n Match search text only when it is surrounded by non-word characters.\n* `buffer.FIND_MATCHCASE`\n Match search text case sensitively.\n* `buffer.FIND_WORDSTART`\n Match search text only when the previous character is a non-word\n character.\n* `buffer.FIND_REGEXP`\n Interpret 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` if *text* was not found.\n@param buffer A buffer.\n@param text The text to search the target range for.\n@return number\n@see search_flags
search_next buffer.search_next(buffer, flags, text)\nSearches for and selects the first occurrence of string *text* starting at\nthe search anchor using search flags *flags*, returning that occurrence's\nposition or `-1` if *text* was not found.\nSelected text is not scrolled into view.\n@param buffer A 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
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 that occurrence's\nposition or `-1` if *text* was not found.\n@param buffer A 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
@@ -974,7 +975,7 @@ selection_duplicate buffer.selection_duplicate(buffer)\nDuplicates the selected
selection_empty buffer.selection_empty (bool, Read-only)\nWhether or not no text is selected.
selection_end buffer.selection_end (number)\nThe position of the end of the selected text.\nWhen set, becomes the current position, but is not scrolled into view.
selection_is_rectangle buffer.selection_is_rectangle (bool, Read-only)\nWhether or not the selection is a rectangular selection.
-selection_mode buffer.selection_mode (number)\nThe selection mode.\n\n* `buffer.SEL_STREAM`\n Character selection.\n* `buffer.SEL_RECTANGLE`\n Rectangular selection.\n* `buffer.SEL_LINES`\n Line selection.\n* `buffer.SEL_THIN`\n Thin rectangular selection. This is the mode after a rectangular\n selection has been typed into and ensures that no characters are\n selected.\n\nWhen set, caret movement alters the selected text until this field is set\nagain to the same value or until `buffer:cancel()` is called.
+selection_mode buffer.selection_mode (number)\nThe selection mode.\n\n* `buffer.SEL_STREAM`\n Character selection.\n* `buffer.SEL_RECTANGLE`\n Rectangular selection.\n* `buffer.SEL_LINES`\n Line selection.\n* `buffer.SEL_THIN`\n Thin rectangular selection. This is the mode after a rectangular\n selection has been typed into and ensures that no characters are\n selected.\n\nWhen set, caret movement alters the selected text until this field is set\nagain to the same value or until `buffer.cancel()` is called.
selection_n_anchor buffer.selection_n_anchor (table)\nTable of positions at the beginning of existing selections numbered from\nzero, the main selection.
selection_n_anchor_virtual_space buffer.selection_n_anchor_virtual_space (table)\nTable of positions at the beginning of virtual space selected in existing\nselections numbered from zero, the main selection.
selection_n_caret buffer.selection_n_caret (table)\nTable of positions at the end of existing selections numbered from zero,\nthe main selection.
@@ -991,7 +992,7 @@ set_fold_margin_colour buffer.set_fold_margin_colour(buffer, use_setting, color)
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 A 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 A 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 A 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 that module exists.\n@param buffer A 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_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 that module exists.\n@param buffer A 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('lexer_name')
set_save_point buffer.set_save_point(buffer)\nIndicates the buffer has no unsaved changes.\n@param buffer A 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 A 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 *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\nOverwrites any existing `buffer.additional_sel_back` color.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
@@ -1000,7 +1001,7 @@ set_selection buffer.set_selection(buffer, end_pos, start_pos)\nSelects the rang
set_styling buffer.set_styling(buffer, length, style)\nAssigns style number *style*, in the range from `0` to `255`, to the next\n*length* characters, starting from the current styling position, and\nincrements the styling position by *length*.\n@param buffer A 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 A buffer.\n@param text The text to set.
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, policy, y)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *y* number of lines away from the vertical margins as\n`buffer:ensure_visible_enforce_policy()` redisplays hidden or folded lines.\nIt is similar in operation to `buffer:set_y_caret_policy()`.\n@param buffer A buffer.\n@param policy The combination of `buffer.VISIBLE_SLOP` and\n `buffer.VISIBLE_STRICT` policy flags to set.\n@param y The number of lines from the vertical margins to keep the caret.
+set_visible_policy buffer.set_visible_policy(buffer, policy, y)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *y* number of lines away from the vertical margins as\n`buffer.ensure_visible_enforce_policy()` redisplays hidden or folded lines.\nIt is similar in operation to `buffer.set_y_caret_policy()`.\n@param buffer A buffer.\n@param policy The combination of `buffer.VISIBLE_SLOP` and\n `buffer.VISIBLE_STRICT` policy flags to set.\n@param y The number of lines from the vertical margins to keep the caret.
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 A 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, policy, x)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *x* number of pixels away from the horizontal margins.\n@param buffer A buffer.\n@param policy The combination of `buffer.CARET_SLOP`, `buffer.CARET_STRICT`,\n `buffer.CARET_EVEN`, and `buffer.CARET_JUMPS` policy flags to set.\n@param x The number of pixels from the horizontal margins to keep the caret.
@@ -1034,7 +1035,7 @@ split view.split(view, vertical)\nSplits the view into top and bottom views (unl
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 the dialog closed due to *options*.`exit_onchange`, returns `4` along with\neither the selected item's index or text. If the dialog timed out, returns\n`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. If the value is a\n table, the first table value is the main message text and any subsequent\n values are used as the labels for multiple entry boxes. Providing a\n single label has no effect.\n * `text`: The dialog's initial input text. If the value is a table, the\n table values are used to populate the multiple entry boxes defined by\n `informative_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 A 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)
+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 A 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.
status spawn_proc:status()\nReturns the status of process *proc*, which is either "running" or\n"terminated".\n@return "running" or "terminated"
@@ -1045,9 +1046,9 @@ stdout io.stdout (file)\nStandard out.
stop textadept.run.stop()\nStops the currently running process, if any.
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 A 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 A 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 A 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 A 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 A 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 A 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 for style numbers\nfrom `0` to `255`.
@@ -1078,15 +1079,15 @@ tab_width buffer.tab_width (number)\nThe number of space characters represented
table _G.table (module)\nLua table module.
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.
-tags _M.ansi_c.tags (table)\nList of ctags files to use for autocompletion.\n@see textadept.editing.autocomplete
-tags _M.lua.tags (table)\nList of "fake" ctags files to use for autocompletion.\nThe kind 'm' is recognized as a module, 'f' as a function, 't' as a table and\n'F' as a module or table field.\n@see textadept.editing.autocomplete
-tags _M.python.tags (table)\nList of ctags files to use for autocompletion.\n@see textadept.editing.autocomplete
-tags _M.ruby.tags (table)\n[[\n\nList of "fake" ctags files to use for autocompletion.\nIn addition to the normal ctags kinds for Ruby, the kind 'C' is recognized as\na constant and 'a' as an attribute.\n@see textadept.editing.autocomplete
+tags _M.ansi_c.tags (table)\nList of ctags files to use for autocompletion.
+tags _M.lua.tags (table)\nList of "fake" ctags files to use for autocompletion.\nThe kind 'm' is recognized as a module, 'f' as a function, 't' as a table and\n'F' as a module or table field.
+tags _M.python.tags (table)\nList of ctags files to use for autocompletion.
+tags _M.ruby.tags (table)\nList of "fake" ctags files to use for autocompletion.\nIn addition to the normal ctags kinds for Ruby, the kind 'C' is recognized as\na constant and 'a' as an attribute.
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()`.
+target_end buffer.target_end (number)\nThe position of the end of the target range.\nThis is also set by a successful `buffer.search_in_target()`.
target_from_selection buffer.target_from_selection(buffer)\nDefines the target range's beginning and end positions as the beginning and\nend positions of the main selection, respectively.\n@param buffer A buffer.
-target_start buffer.target_start (number)\nThe position of the beginning of the target range.\nThis is also set by a successful\n`buffer:search_in_target()`.
+target_start buffer.target_start (number)\nThe position of the beginning of the target range.\nThis is also set by a successful `buffer.search_in_target()`.
text_height buffer.text_height(buffer, line)\nReturns the pixel height of line number *line*.\n@param buffer A buffer.\n@param line The line number in *buffer* to get the pixel height of.\n@return number
text_length buffer.text_length (number, Read-only)\nThe number of bytes in the buffer.
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 A 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*.
@@ -1117,7 +1118,7 @@ type lpeg.type(value)\nIf the given value is a pattern, returns the string "patt
typeover_chars textadept.editing.typeover_chars (table)\nTable of characters to move over when typed, with language-specific typeover\ncharacter tables assigned to a lexer name key.\nThe ASCII values of characters are keys and are assigned non-`nil` values.\nThe default characters are ')', ']', '}', ''', and '"'.\n@see TYPEOVER_CHARS
ui _G.ui (module)\nUtilities for interacting with Textadept's user interface.
undo buffer.undo(buffer)\nUndoes the most recent action.\n@param buffer A buffer.
-undo_collection buffer.undo_collection (bool)\nCollect undo information.\nWhen setting to `false`, call\n`buffer:empty_undo_buffer()` to synchronize the undo\nbuffer with the buffer text.\nThe default value is `true`.
+undo_collection buffer.undo_collection (bool)\nCollect undo information.\nWhen setting to `false`, call `buffer.empty_undo_buffer()` to\nsynchronize the undo buffer with the buffer text.\nThe default value is `true`.
unlock lfs.unlock(filehandle[, start[, length]])\nUnlocks a file or a part of it. This function works on open files; the file\nhandle should be specified as the first argument. The optional arguments\nstart and length can be used to specify a starting point and its length; both\nshould be numbers.\n\nReturns true if the operation was successful; in case of error, it returns\nnil plus an error string.
unpack table.unpack(list [, i [, j]])\nReturns the elements from the given table. This function is equivalent to\n\n return list[i], list[i+1], ···, list[j]\n\nBy default, `i` is 1 and `j` is `#list`.
unsplit view.unsplit(view)\nUnsplits the view if possible, returning `true` on success.\n@param view The view to unsplit.\n@return boolean if the view was unsplit or not.
@@ -1131,11 +1132,11 @@ user_list_show buffer.user_list_show(buffer, id, items)\nDisplays a user list id
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 A 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 A 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 A 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 A buffer.
-vc_home_rect_extend buffer.vc_home_rect_extend(buffer)\nLike `buffer:vc_home()`, but extends the rectangular selection to the new\nposition.\n@param buffer A 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 A 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 A buffer.
+vc_home_rect_extend buffer.vc_home_rect_extend(buffer)\nLike `buffer.vc_home()`, but extends the rectangular selection to the new\nposition.\n@param buffer A buffer.
vc_home_wrap buffer.vc_home_wrap(buffer)\nMoves the caret to the first visible character on the current wrapped line,\nor if already there, to the beginning of the actual line.\n@param buffer A buffer.
-vc_home_wrap_extend buffer.vc_home_wrap_extend(buffer)\nLike `buffer:vc_home_wrap()`, but extends the selected text to the new\nposition.\n@param buffer A buffer.
+vc_home_wrap_extend buffer.vc_home_wrap_extend(buffer)\nLike `buffer.vc_home_wrap()`, but extends the selected text to the new\nposition.\n@param buffer A buffer.
version lpeg.version()\nReturns a string with the running version of LPeg.
vertical_centre_caret buffer.vertical_centre_caret(buffer)\nCenters current line in the view.\n@param buffer A buffer.
view _G.view (module)\nA Textadept view object.
@@ -1154,7 +1155,7 @@ word_chars buffer.word_chars (string)\nThe string set of characters recognized a
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 A 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.
word_left buffer.word_left(buffer)\nMoves the caret left one word.\n`buffer.word_chars` contains word characters.\n@param buffer A buffer.
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 A 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 A 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 A 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 A buffer.
word_match lexer.word_match(words, word_chars, case_insensitive)\nCreates and returns a pattern that matches any single word in list *words*.\nWords consist of alphanumeric and underscore characters, as well as the\ncharacters in string set *word_chars*. *case_insensitive* indicates whether\nor not to ignore case when matching words.\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 part of the current word.\nWord parts are delimited by underscore characters or changes in\ncapitalization.\n`buffer.word_chars` contains word characters.\n@param buffer A buffer.
@@ -1163,14 +1164,14 @@ word_part_right buffer.word_part_right(buffer)\nMoves the caret to the next part
word_part_right_extend buffer.word_part_right_extend(buffer)\nMoves the caret to the next part of the current word, extending the selected\ntext to the new position.\nWord parts are delimited by underscore characters or changes in\ncapitalization.\n`buffer.word_chars` contains word characters.\n@param buffer A buffer.
word_right buffer.word_right(buffer)\nMoves the caret right one word.\n`buffer.word_chars` contains word characters.\n@param buffer A buffer.
word_right_end buffer.word_right_end(buffer)\nMoves the caret right one word, positioning it at the end of the current\nword.\n`buffer.word_chars` contains word characters.\n@param buffer A buffer.
-word_right_end_extend buffer.word_right_end_extend(buffer)\nLike `buffer:word_right_end()`, but extends the selected text to the new\nposition.\n@param buffer A buffer.
+word_right_end_extend buffer.word_right_end_extend(buffer)\nLike `buffer.word_right_end()`, but extends the selected text to the new\nposition.\n@param buffer A buffer.
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 A 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 A 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 fully display line number\n*line*.\n@param buffer A 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 and style boundaries.\n* `buffer.WRAP_CHAR`\n Wrap long lines at character boundaries.\n* `buffer.WRAP_WHITESPACE`\n Wrap long lines at word boundaries, ignoring style 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_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 `buffer.WRAP_INDENT_FIXED`.\nThe default value is `0`.
wrap_visual_flags buffer.wrap_visual_flags (number)\nThe wrapped line visual flag display mode.\n\n* `buffer.WRAPVISUALFLAG_NONE`\n No visual flags.\n* `buffer.WRAPVISUALFLAG_END`\n Show a visual flag at the end of a wrapped line.\n* `buffer.WRAPVISUALFLAG_START`\n Show a visual flag at the beginning of a sub-line.\n* `buffer.WRAPVISUALFLAG_MARGIN`\n Show a 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 a visual flag near the view's right margin.\n* `buffer.WRAPVISUALFLAGLOC_END_BY_TEXT`\n Draw a visual flag near text at the end of a wrapped line.\n* `buffer.WRAPVISUALFLAGLOC_START_BY_TEXT`\n Draw a visual flag near text at the beginning of a 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.
diff --git a/modules/lua/tags b/modules/lua/tags
index e30cc39b..17a2496a 100644
--- a/modules/lua/tags
+++ b/modules/lua/tags
@@ -88,6 +88,7 @@ FIND_REGEXP _ 0;" F class:buffer
FIND_WHOLEWORD _ 0;" F class:buffer
FIND_WORDSTART _ 0;" F class:buffer
FIND_WRAPPED _ 0;" F class:events
+FOCUS _ 0;" F class:events
FOLDACTION_CONTRACT _ 0;" F class:buffer
FOLDACTION_EXPAND _ 0;" F class:buffer
FOLDACTION_TOGGLE _ 0;" F class:buffer
@@ -653,7 +654,7 @@ goto_line _ 0;" f class:buffer
goto_line _ 0;" f class:textadept.editing
goto_mark _ 0;" f class:textadept.bookmarks
goto_pos _ 0;" f class:buffer
-goto_section _ 0;" f class:M
+goto_section _ 0;" f class:_M.rest
goto_view _ 0;" f class:ui
graph _ 0;" F class:lexer
gsub _ 0;" f class:string
@@ -840,7 +841,7 @@ oct_num _ 0;" F class:lexer
ok_msgbox _ 0;" f class:ui.dialogs
open _ 0;" f class:io
open_file _ 0;" f class:io
-open_image _ 0;" f class:M
+open_image _ 0;" f class:_M.rest
open_recent_file _ 0;" f class:io
optionselect _ 0;" f class:ui.dialogs
os _ 0;" m