1ALPHA_NOALPHA view.ALPHA_NOALPHA (number, Read-only)\n
2ALPHA_OPAQUE view.ALPHA_OPAQUE (number, Read-only)\n
3ALPHA_TRANSPARENT view.ALPHA_TRANSPARENT (number, Read-only)\n
4ANNOTATION_BOXED view.ANNOTATION_BOXED (number, Read-only)\n
5ANNOTATION_HIDDEN view.ANNOTATION_HIDDEN (number, Read-only)\n
6ANNOTATION_INDENTED view.ANNOTATION_INDENTED (number, Read-only)\n
7ANNOTATION_STANDARD view.ANNOTATION_STANDARD (number, Read-only)\n
8APPLEEVENT_ODOC events.APPLEEVENT_ODOC (string)\nEmitted when macOS tells Textadept to open a file.\nArguments:\n\n* _`uri`_: The UTF-8-encoded URI to open.
9ARG_NONE events.ARG_NONE (string)\nEmitted when no command line arguments are passed to Textadept on startup.
10AUTO_C_CANCELED events.AUTO_C_CANCELED (string)\nEmitted when canceling an autocompletion or user list.
11AUTO_C_CHAR_DELETED events.AUTO_C_CHAR_DELETED (string)\nEmitted after deleting a character while an autocompletion or user list is\nactive.
12AUTO_C_COMPLETED events.AUTO_C_COMPLETED (string)\nEmitted after inserting an item from an autocompletion list into the\nbuffer.\nArguments:\n\n* _`text`_: The selection's text.\n* _`position`_: The autocompleted word's beginning position.
13AUTO_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 canceled 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.
14AUTO_C_SELECTION_CHANGE events.AUTO_C_SELECTION_CHANGE (string)\nEmitted as items are highlighted in an autocompletion or user list.\nArguments:\n\n* _`id`_: Either the *id* from `buffer.user_list_show()` or `0` for an\n  autocompletion list.\n* _`text`_: The current selection's text.\n* _`position`_: The position the list was displayed at.
15BSD _G.BSD (bool)\nWhether or not Textadept is running on BSD.
16BUFFER_AFTER_SWITCH events.BUFFER_AFTER_SWITCH (string)\nEmitted right after switching to another buffer.\nThe buffer being switched to is `buffer`.\nEmitted by `view.goto_buffer()`.
17BUFFER_BEFORE_SWITCH events.BUFFER_BEFORE_SWITCH (string)\nEmitted right before switching to another buffer.\nThe buffer being switched from is `buffer`.\nEmitted by `view.goto_buffer()`.
18BUFFER_DELETED events.BUFFER_DELETED (string)\nEmitted after deleting a buffer.\nEmitted by `buffer.delete()`.
19BUFFER_NEW events.BUFFER_NEW (string)\nEmitted after creating a new buffer.\nThe new buffer is `buffer`.\nEmitted on startup and by `buffer.new()`.
20BUILD_OUTPUT events.BUILD_OUTPUT (string)\nEmitted when executing a project's build shell command.\nBy default, output is printed to the message buffer. In order to override\nthis behavior, connect to the event with an index of `1` and return `true`.\nArguments:\n\n* `output`: A line of string output from the command.
21CALL_TIP_CLICK events.CALL_TIP_CLICK (string)\nEmitted when clicking on a calltip.\nArguments:\n\n* _`position`_: `1` if the up arrow was clicked, 2 if the down arrow was\n  clicked, and 0 otherwise.
22CARETSTICKY_OFF buffer.CARETSTICKY_OFF (number, Read-only)\n
23CARETSTICKY_ON buffer.CARETSTICKY_ON (number, Read-only)\n
24CARETSTICKY_WHITESPACE buffer.CARETSTICKY_WHITESPACE (number, Read-only)\n
25CARETSTYLE_BLOCK view.CARETSTYLE_BLOCK (number, Read-only)\n
26CARETSTYLE_INVISIBLE view.CARETSTYLE_INVISIBLE (number, Read-only)\n
27CARETSTYLE_LINE view.CARETSTYLE_LINE (number, Read-only)\n
28CARET_EVEN view.CARET_EVEN (number, Read-only)\n
29CARET_JUMPS view.CARET_JUMPS (number, Read-only)\n
30CARET_SLOP view.CARET_SLOP (number, Read-only)\n
31CARET_STRICT view.CARET_STRICT (number, Read-only)\n
32CASEINSENSITIVEBEHAVIOR_IGNORECASE buffer.CASEINSENSITIVEBEHAVIOR_IGNORECASE (number, Read-only)\n
33CASEINSENSITIVEBEHAVIOR_RESPECTCASE buffer.CASEINSENSITIVEBEHAVIOR_RESPECTCASE (number, Read-only)\n
34CASE_CAMEL view.CASE_CAMEL (number, Read-only)\n
35CASE_LOWER view.CASE_LOWER (number, Read-only)\n
36CASE_MIXED view.CASE_MIXED (number, Read-only)\n
37CASE_UPPER view.CASE_UPPER (number, Read-only)\n
38CHAR_ADDED events.CHAR_ADDED (string)\nEmitted after the user types a text character into the buffer.\nArguments:\n\n* _`code`_: The text character's character code.
39CLASS lexer.CLASS (string)\nThe token name for class tokens.
40CLASS textadept.editing.XPM_IMAGES.CLASS (table)\nThe image number for classes.
41CLEAR keys.CLEAR (string)\nThe key that clears the current key chain.\nIt cannot be part of a key chain.\nThe default value is `'esc'` for the `Esc` key.
42COMMAND_TEXT_CHANGED events.COMMAND_TEXT_CHANGED (string)\nEmitted when the text in the command entry changes.\n`ui.command_entry:get_text()` returns the current text.
43COMMENT lexer.COMMENT (string)\nThe token name for comment tokens.
44COMPILE_OUTPUT events.COMPILE_OUTPUT (string)\nEmitted when executing a language's compile shell command.\nBy default, compiler output is printed to the message buffer. In order to\noverride this behavior, connect to the event with an index of `1` and\nreturn `true`.\nArguments:\n\n* `output`: A line of string output from the command.\n* `ext_or_lexer`: The file extension or lexer name associated with the\n  executed compile command.
45CONSTANT lexer.CONSTANT (string)\nThe token name for constant tokens.
46CSI events.CSI (string)\nEmitted when the terminal version receives an unrecognized CSI sequence.\nArguments:\n\n* _`cmd`_: The 24-bit CSI command value. The lowest byte contains the\n  command byte. The second lowest byte contains the leading byte, if any\n  (e.g. '?'). The third lowest byte contains the intermediate byte, if any\n  (e.g. '$').\n* _`args`_: Table of numeric arguments of the CSI sequence.
47CURSES _G.CURSES (bool)\nWhether or not Textadept is running in a terminal.\nCurses feature incompatibilities are listed in the Appendix.
48CURSORARROW view.CURSORARROW (number, Read-only)\n
49CURSORNORMAL view.CURSORNORMAL (number, Read-only)\n
50CURSORREVERSEARROW view.CURSORREVERSEARROW (number, Read-only)\n
51CURSORWAIT view.CURSORWAIT (number, Read-only)\n
52DEFAULT lexer.DEFAULT (string)\nThe token name for default tokens.
53DOUBLE_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 held down:\n  `view.MOD_CTRL`, `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.\n  On macOS, the Command modifier key is reported as `view.MOD_CTRL` and\n  Ctrl is `view.MOD_META`.\n  Note: If you set `view.rectangular_selection_modifier` to\n  `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n  and "Alt" due to a Scintilla limitation with GTK.
54DWELL_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.
55DWELL_START events.DWELL_START (string)\nEmitted when the mouse is stationary for `view.mouse_dwell_time`\nmilliseconds.\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.
56EDGE_BACKGROUND view.EDGE_BACKGROUND (number, Read-only)\n
57EDGE_LINE view.EDGE_LINE (number, Read-only)\n
58EDGE_MULTILINE view.EDGE_MULTILINE (number, Read-only)\n
59EDGE_NONE view.EDGE_NONE (number, Read-only)\n
60EOL_CR buffer.EOL_CR (number, Read-only)\n
61EOL_CRLF buffer.EOL_CRLF (number, Read-only)\n
62EOL_LF buffer.EOL_LF (number, Read-only)\n
63ERROR events.ERROR (string)\nEmitted when an error occurs.\nArguments:\n\n* _`text`_: The error message text.
64ERROR lexer.ERROR (string)\nThe token name for error tokens.
65FILE_AFTER_RELOAD events.FILE_AFTER_RELOAD (string)\nEmitted after reloading the current file.\nEmitted by `buffer:reload()`.
66FILE_AFTER_SAVE events.FILE_AFTER_SAVE (string)\nEmitted right after saving a file to disk.\nEmitted by `buffer:save()` and `buffer:save_as()`.\nArguments:\n\n* _`filename`_: The filename of the file being saved.\n* _`saved_as`_: Whether or not the file was saved under a different\n  filename.
67FILE_BEFORE_RELOAD events.FILE_BEFORE_RELOAD (string)\nEmitted before reloading the current file.\nEmitted by `buffer:reload()`.
68FILE_BEFORE_SAVE events.FILE_BEFORE_SAVE (string)\nEmitted right before saving a file to disk.\nEmitted by `buffer:save()`.\nArguments:\n\n* _`filename`_: The filename of the file being saved.
69FILE_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 in order to\noverride the default prompt to reload the file.\nArguments:\n\n* _`filename`_: The filename externally modified.
70FILE_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.
71FIND 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.
72FIND_MATCHCASE buffer.FIND_MATCHCASE (number, Read-only)\n
73FIND_REGEXP buffer.FIND_REGEXP (number, Read-only)\n
74FIND_RESULT_FOUND events.FIND_RESULT_FOUND (string)\nEmitted when a result is found. It is selected and has been scrolled into\nview.\nArguments:\n\n* _`find_text`_: The text originally searched for.
75FIND_TEXT_CHANGED events.FIND_TEXT_CHANGED (string)\nEmitted when the text in the "Find" field of the Find & Replace Pane\nchanges.\n`ui.find.find_entry_text` contains the current text.
76FIND_WHOLEWORD buffer.FIND_WHOLEWORD (number, Read-only)\n
77FIND_WORDSTART buffer.FIND_WORDSTART (number, Read-only)\n
78FIND_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.
79FOCUS events.FOCUS (string)\nEmitted when Textadept receives focus.\nThis event is never emitted when Textadept is running in the terminal.
80FOLDACTION_CONTRACT view.FOLDACTION_CONTRACT (number, Read-only)\n
81FOLDACTION_EXPAND view.FOLDACTION_EXPAND (number, Read-only)\n
82FOLDACTION_TOGGLE view.FOLDACTION_TOGGLE (number, Read-only)\n
83FOLDDISPLAYTEXT_BOXED view.FOLDDISPLAYTEXT_BOXED (number, Read-only)\n
84FOLDDISPLAYTEXT_HIDDEN view.FOLDDISPLAYTEXT_HIDDEN (number, Read-only)\n
85FOLDDISPLAYTEXT_STANDARD view.FOLDDISPLAYTEXT_STANDARD (number, Read-only)\n
86FOLDFLAG_LEVELNUMBERS view.FOLDFLAG_LEVELNUMBERS (number, Read-only)\n
87FOLDFLAG_LINEAFTER_CONTRACTED view.FOLDFLAG_LINEAFTER_CONTRACTED (number, Read-only)\n
88FOLDFLAG_LINEAFTER_EXPANDED view.FOLDFLAG_LINEAFTER_EXPANDED (number, Read-only)\n
89FOLDFLAG_LINEBEFORE_CONTRACTED view.FOLDFLAG_LINEBEFORE_CONTRACTED (number, Read-only)\n
90FOLDFLAG_LINEBEFORE_EXPANDED view.FOLDFLAG_LINEBEFORE_EXPANDED (number, Read-only)\n
91FOLDFLAG_LINESTATE view.FOLDFLAG_LINESTATE (number, Read-only)\n
92FOLDLEVELBASE buffer.FOLDLEVELBASE (number, Read-only)\n
93FOLDLEVELHEADERFLAG buffer.FOLDLEVELHEADERFLAG (number, Read-only)\n
94FOLDLEVELNUMBERMASK buffer.FOLDLEVELNUMBERMASK (number, Read-only)\n
95FOLDLEVELWHITEFLAG buffer.FOLDLEVELWHITEFLAG (number, Read-only)\n
96FOLD_BASE lexer.FOLD_BASE (number)\nThe initial (root) fold level.
97FOLD_BLANK lexer.FOLD_BLANK (number)\nFlag indicating that the line is blank.
98FOLD_HEADER lexer.FOLD_HEADER (number)\nFlag indicating the line is fold point.
99FUNCTION lexer.FUNCTION (string)\nThe token name for function tokens.
100IDENTIFIER lexer.IDENTIFIER (string)\nThe token name for identifier tokens.
101INDICATOR_CLICK events.INDICATOR_CLICK (string)\nEmitted when clicking the mouse on text that has an indicator present.\nArguments:\n\n* _`position`_: The clicked text's position.\n* _`modifiers`_: A bit-mask of any modifier keys held down:\n  `view.MOD_CTRL`, `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.\n  On macOS, the Command modifier key is reported as `view.MOD_CTRL` and\n  Ctrl is `view.MOD_META`.\n  Note: If you set `view.rectangular_selection_modifier` to\n  `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n  and "Alt" due to a Scintilla limitation with GTK.
102INDICATOR_MAX buffer.INDICATOR_MAX (number, Read-only)\n
103INDICATOR_RELEASE events.INDICATOR_RELEASE (string)\nEmitted when releasing the mouse after clicking on text that has an\nindicator present.\nArguments:\n\n* _`position`_: The clicked text's position.
104INDIC_BOX view.INDIC_BOX (number, Read-only)\n
105INDIC_BRACEMATCH textadept.editing.INDIC_BRACEMATCH (number)\nThe matching brace highlight indicator number.
106INDIC_COMPOSITIONTHICK view.INDIC_COMPOSITIONTHICK (number, Read-only)\n
107INDIC_COMPOSITIONTHIN view.INDIC_COMPOSITIONTHIN (number, Read-only)\n
108INDIC_DASH view.INDIC_DASH (number, Read-only)\n
109INDIC_DIAGONAL view.INDIC_DIAGONAL (number, Read-only)\n
110INDIC_DOTBOX view.INDIC_DOTBOX (number, Read-only)\n
111INDIC_DOTS view.INDIC_DOTS (number, Read-only)\n
112INDIC_FIND ui.find.INDIC_FIND (number)\nThe find results highlight indicator number.
113INDIC_FULLBOX view.INDIC_FULLBOX (number, Read-only)\n
114INDIC_GRADIENT view.INDIC_GRADIENT (number, Read-only)\n
115INDIC_GRADIENTCENTER view.INDIC_GRADIENTCENTER (number, Read-only)\n
116INDIC_HIDDEN view.INDIC_HIDDEN (number, Read-only)\n
117INDIC_HIGHLIGHT textadept.editing.INDIC_HIGHLIGHT (number)\nThe word highlight indicator number.
118INDIC_PLACEHOLDER textadept.snippets.INDIC_PLACEHOLDER (number)\nThe snippet placeholder indicator number.
119INDIC_PLAIN view.INDIC_PLAIN (number, Read-only)\n
120INDIC_POINT view.INDIC_POINT (number, Read-only)\n
121INDIC_POINTCHARACTER view.INDIC_POINTCHARACTER (number, Read-only)\n
122INDIC_ROUNDBOX view.INDIC_ROUNDBOX (number, Read-only)\n
123INDIC_SQUIGGLE view.INDIC_SQUIGGLE (number, Read-only)\n
124INDIC_SQUIGGLELOW view.INDIC_SQUIGGLELOW (number, Read-only)\n
125INDIC_SQUIGGLEPIXMAP view.INDIC_SQUIGGLEPIXMAP (number, Read-only)\n
126INDIC_STRAIGHTBOX view.INDIC_STRAIGHTBOX (number, Read-only)\n
127INDIC_STRIKE view.INDIC_STRIKE (number, Read-only)\n
128INDIC_TEXTFORE view.INDIC_TEXTFORE (number, Read-only)\n
129INDIC_TT view.INDIC_TT (number, Read-only)\n
130INITIALIZED events.INITIALIZED (string)\nEmitted after Textadept finishes initializing.
131IV_LOOKBOTH view.IV_LOOKBOTH (number, Read-only)\n
132IV_LOOKFORWARD view.IV_LOOKFORWARD (number, Read-only)\n
133IV_NONE view.IV_NONE (number, Read-only)\n
134IV_REAL view.IV_REAL (number, Read-only)\n
135KEYPRESS events.KEYPRESS (string)\nEmitted when pressing a key.\nIf any handler returns `true`, the key is not inserted into the buffer.\nArguments:\n\n* _`code`_: The numeric key code.\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.\n* _`cmd`_: The "Command" modifier key on macOS is held down.\n* _`caps_lock`_: The "Caps Lock" modifier is on.
136KEYSYMS keys.KEYSYMS (table)\nLookup table for string representations of key codes higher than 255.\nKey codes can be identified by temporarily uncommenting the `print()`\nstatements in *core/keys.lua*.\nRecognized codes are: esc, \b, \t, \\n, down, up, left, right, home, end,\npgup, pgdn, del, ins, and f1-f12.\nThe GUI version also recognizes: kpenter, kphome, kpend, kpleft, kpup,\nkpright, kpdown, kppgup, kppgdn, kpmul, kpadd, kpsub, kpdiv, kpdec, and\nkp0-kp9.
137KEYWORD lexer.KEYWORD (string)\nThe token name for keyword tokens.
138LABEL lexer.LABEL (string)\nThe token name for label tokens.
139LEXER_LOADED events.LEXER_LOADED (string)\nEmitted after loading a language lexer.\nThis is useful for overriding a language module's key bindings or other\nproperties since the module is not loaded when Textadept starts.\nArguments:\n\n* _`name`_: The language lexer's name.
140LINUX _G.LINUX (bool)\nWhether or not Textadept is running on Linux.
141MARGINOPTION_NONE view.MARGINOPTION_NONE (number, Read-only)\n
142MARGINOPTION_SUBLINESELECT view.MARGINOPTION_SUBLINESELECT (number, Read-only)\n
143MARGIN_BACK view.MARGIN_BACK (number, Read-only)\n
144MARGIN_CLICK events.MARGIN_CLICK (string)\nEmitted when clicking the mouse inside a sensitive margin.\nArguments:\n\n* _`margin`_: The margin number clicked.\n* _`position`_: The beginning position of the clicked margin's line.\n* _`modifiers`_: A bit-mask of any modifier keys held down:\n  `view.MOD_CTRL`, `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.\n  On macOS, the Command modifier key is reported as `view.MOD_CTRL` and\n  Ctrl is `view.MOD_META`.\n  Note: If you set `view.rectangular_selection_modifier` to\n  `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n  and "Alt" due to a Scintilla limitation with GTK.
145MARGIN_COLOR view.MARGIN_COLOR (number, Read-only)\n
146MARGIN_FORE view.MARGIN_FORE (number, Read-only)\n
147MARGIN_NUMBER view.MARGIN_NUMBER (number, Read-only)\n
148MARGIN_RTEXT view.MARGIN_RTEXT (number, Read-only)\n
149MARGIN_SYMBOL view.MARGIN_SYMBOL (number, Read-only)\n
150MARGIN_TEXT view.MARGIN_TEXT (number, Read-only)\n
151MARKER_MAX buffer.MARKER_MAX (number, Read-only)\n
152MARKNUM_FOLDER buffer.MARKNUM_FOLDER (number, Read-only)\n
153MARKNUM_FOLDEREND buffer.MARKNUM_FOLDEREND (number, Read-only)\n
154MARKNUM_FOLDERMIDTAIL buffer.MARKNUM_FOLDERMIDTAIL (number, Read-only)\n
155MARKNUM_FOLDEROPEN buffer.MARKNUM_FOLDEROPEN (number, Read-only)\n
156MARKNUM_FOLDEROPENMID buffer.MARKNUM_FOLDEROPENMID (number, Read-only)\n
157MARKNUM_FOLDERSUB buffer.MARKNUM_FOLDERSUB (number, Read-only)\n
158MARKNUM_FOLDERTAIL buffer.MARKNUM_FOLDERTAIL (number, Read-only)\n
159MARK_ARROW view.MARK_ARROW (number, Read-only)\n
160MARK_ARROWDOWN view.MARK_ARROWDOWN (number, Read-only)\n
161MARK_ARROWS view.MARK_ARROWS (number, Read-only)\n
162MARK_AVAILABLE buffer.MARK_AVAILABLE (number, Read-only)\n
163MARK_BACKGROUND view.MARK_BACKGROUND (number, Read-only)\n
164MARK_BOOKMARK textadept.bookmarks.MARK_BOOKMARK (number)\nThe bookmark mark number.
165MARK_BOOKMARK view.MARK_BOOKMARK (number, Read-only)\n
166MARK_BOXMINUS view.MARK_BOXMINUS (number, Read-only)\n
167MARK_BOXMINUSCONNECTED view.MARK_BOXMINUSCONNECTED (number, Read-only)\n
168MARK_BOXPLUS view.MARK_BOXPLUS (number, Read-only)\n
169MARK_BOXPLUSCONNECTED view.MARK_BOXPLUSCONNECTED (number, Read-only)\n
170MARK_CHARACTER view.MARK_CHARACTER (number, Read-only)\n
171MARK_CIRCLE view.MARK_CIRCLE (number, Read-only)\n
172MARK_CIRCLEMINUS view.MARK_CIRCLEMINUS (number, Read-only)\n
173MARK_CIRCLEMINUSCONNECTED view.MARK_CIRCLEMINUSCONNECTED (number, Read-only)\n
174MARK_CIRCLEPLUS view.MARK_CIRCLEPLUS (number, Read-only)\n
175MARK_CIRCLEPLUSCONNECTED view.MARK_CIRCLEPLUSCONNECTED (number, Read-only)\n
176MARK_DOTDOTDOT view.MARK_DOTDOTDOT (number, Read-only)\n
177MARK_EMPTY view.MARK_EMPTY (number, Read-only)\n
178MARK_ERROR textadept.run.MARK_ERROR (number)\nThe run or compile error marker number.
179MARK_FULLRECT view.MARK_FULLRECT (number, Read-only)\n
180MARK_LCORNER view.MARK_LCORNER (number, Read-only)\n
181MARK_LCORNERCURVE view.MARK_LCORNERCURVE (number, Read-only)\n
182MARK_LEFTRECT view.MARK_LEFTRECT (number, Read-only)\n
183MARK_MINUS view.MARK_MINUS (number, Read-only)\n
184MARK_PIXMAP view.MARK_PIXMAP (number, Read-only)\n
185MARK_PLUS view.MARK_PLUS (number, Read-only)\n
186MARK_RGBAIMAGE view.MARK_RGBAIMAGE (number, Read-only)\n
187MARK_ROUNDRECT view.MARK_ROUNDRECT (number, Read-only)\n
188MARK_SHORTARROW view.MARK_SHORTARROW (number, Read-only)\n
189MARK_SMALLRECT view.MARK_SMALLRECT (number, Read-only)\n
190MARK_TCORNER view.MARK_TCORNER (number, Read-only)\n
191MARK_TCORNERCURVE view.MARK_TCORNERCURVE (number, Read-only)\n
192MARK_UNDERLINE view.MARK_UNDERLINE (number, Read-only)\n
193MARK_VERTICALBOOKMARK view.MARK_VERTICALBOOKMARK (number, Read-only)\n
194MARK_VLINE view.MARK_VLINE (number, Read-only)\n
195MARK_WARNING textadept.run.MARK_WARNING (number)\nThe run or compile warning marker number.
196MASK_FOLDERS view.MASK_FOLDERS (number, Read-only)\n
197MENU_CLICKED events.MENU_CLICKED (string)\nEmitted after selecting a menu item.\nArguments:\n\n* _`menu_id`_: The numeric ID of the menu item, which was defined in\n  `ui.menu()`.
198METHOD textadept.editing.XPM_IMAGES.METHOD (table)\nThe image number for methods.
199MOD_ALT view.MOD_ALT (number, Read-only)\n
200MOD_CTRL view.MOD_CTRL (number, Read-only)\n
201MOD_META view.MOD_META (number, Read-only)\n
202MOD_SHIFT view.MOD_SHIFT (number, Read-only)\n
203MOD_SUPER view.MOD_SUPER (number, Read-only)\n
204MOUSE events.MOUSE (string)\nEmitted by the terminal version for an unhandled mouse event.\nA handler should return `true` if it handled the event. Otherwise Textadept\nwill try again. (This side effect for a `false` or `nil` return is useful\nfor sending the original mouse event to a different view that a handler\nhas switched to.)\nArguments:\n\n* _`event`_: The mouse event: `view.MOUSE_PRESS`, `view.MOUSE_DRAG`, or\n  `view.MOUSE_RELEASE`.\n* _`button`_: The mouse button number.\n* _`y`_: The y-coordinate of the mouse event, starting from 1.\n* _`x`_: The x-coordinate of the mouse event, starting from 1.\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.
205MOUSE_DRAG view.MOUSE_DRAG (number, Read-only)\n
206MOUSE_PRESS view.MOUSE_PRESS (number, Read-only)\n
207MOUSE_RELEASE view.MOUSE_RELEASE (number, Read-only)\n
208MULTIAUTOC_EACH buffer.MULTIAUTOC_EACH (number, Read-only)\n
209MULTIAUTOC_ONCE buffer.MULTIAUTOC_ONCE (number, Read-only)\n
210MULTIPASTE_EACH buffer.MULTIPASTE_EACH (number, Read-only)\n
211MULTIPASTE_ONCE buffer.MULTIPASTE_ONCE (number, Read-only)\n
212NAMESPACE textadept.editing.XPM_IMAGES.NAMESPACE (table)\nThe image number for namespaces.
213NUMBER lexer.NUMBER (string)\nThe token name for number tokens.
214OPERATOR lexer.OPERATOR (string)\nThe token name for operator tokens.
215ORDER_CUSTOM buffer.ORDER_CUSTOM (number, Read-only)\n
216ORDER_PERFORMSORT buffer.ORDER_PERFORMSORT (number, Read-only)\n
217ORDER_PRESORTED buffer.ORDER_PRESORTED (number, Read-only)\n
218OSX _G.OSX (bool)\nWhether or not Textadept is running on macOS as a GUI application.
219PREPROCESSOR lexer.PREPROCESSOR (string)\nThe token name for preprocessor tokens.
220QUIT events.QUIT (string)\nEmitted when quitting Textadept.\nWhen connecting to this event, connect with an index of 1 if the handler\nneeds to run before Textadept closes all open buffers. If a handler returns\n`true`, Textadept does not quit. It is not recommended to return `false`\nfrom a quit handler, as that may interfere with Textadept's normal shutdown\nprocedure.\nEmitted by `quit()`.
221REGEX lexer.REGEX (string)\nThe token name for regex tokens.
222REPLACE events.REPLACE (string)\nEmitted to replace selected (found) text.\nArguments:\n\n* _`text`_: The replacement text.
223REPLACE_ALL events.REPLACE_ALL (string)\nEmitted to replace all occurrences of found text.\nArguments:\n\n* _`find_text`_: The text to search for.\n* _`repl_text`_: The replacement text.
224RESET_AFTER events.RESET_AFTER (string)\nEmitted after resetting Textadept's Lua state.\nEmitted by `reset()`.\nArguments:\n\n* _`persist`_: Table of data persisted by `events.RESET_BEFORE`. All\n  handlers will have access to this same table.
225RESET_BEFORE events.RESET_BEFORE (string)\nEmitted before resetting Textadept's Lua state.\nEmitted by `reset()`.\nArguments:\n\n* _`persist`_: Table to store persistent data in for use by\n  `events.RESET_AFTER`. All handlers will have access to this same table.
226RESUME events.RESUME (string)\nEmitted when resuming Textadept from a suspended state.\nThis event is only emitted by the terminal version.
227RUN_OUTPUT events.RUN_OUTPUT (string)\nEmitted when executing a language's run shell command.\nBy default, output is printed to the message buffer. In order to override\nthis behavior, connect to the event with an index of `1` and return `true`.\nArguments:\n\n* `output`: A line of string output from the command.\n* `ext_or_lexer`: The file extension or lexer name associated with the\n  executed run command.
228SAVE_POINT_LEFT events.SAVE_POINT_LEFT (string)\nEmitted after leaving a save point.
229SAVE_POINT_REACHED events.SAVE_POINT_REACHED (string)\nEmitted after reaching a save point.
230SEL_LINES buffer.SEL_LINES (number, Read-only)\n
231SEL_RECTANGLE buffer.SEL_RECTANGLE (number, Read-only)\n
232SEL_STREAM buffer.SEL_STREAM (number, Read-only)\n
233SEL_THIN buffer.SEL_THIN (number, Read-only)\n
234SESSION_LOAD events.SESSION_LOAD (string)\nEmitted when loading a session.\nArguments:\n\n* `session`: Table of session data to load. All handlers will have access\n  to this same table.
235SESSION_SAVE events.SESSION_SAVE (string)\nEmitted when saving a session.\nArguments:\n\n* `session`: Table of session data to save. All handlers will have access\n  to this same table, and Textadept's default handler reserves the use of\n  some keys.\n  Note that functions, userdata, and circular table values cannot be saved.\n  The latter case is not recognized at all, so beware.
236SIGNAL textadept.editing.XPM_IMAGES.SIGNAL (table)\nThe image number for signals.
237SLOT textadept.editing.XPM_IMAGES.SLOT (table)\nThe image number for slots.
238STRING lexer.STRING (string)\nThe token name for string tokens.
239STRUCT textadept.editing.XPM_IMAGES.STRUCT (table)\nThe image number for structures.
240STYLE_BRACEBAD view.STYLE_BRACEBAD (number, Read-only)\n
241STYLE_BRACELIGHT view.STYLE_BRACELIGHT (number, Read-only)\n
242STYLE_CALLTIP view.STYLE_CALLTIP (number, Read-only)\n
243STYLE_CONTROLCHAR view.STYLE_CONTROLCHAR (number, Read-only)\n
244STYLE_DEFAULT view.STYLE_DEFAULT (number, Read-only)\n
245STYLE_FOLDDISPLAYTEXT view.STYLE_FOLDDISPLAYTEXT (number, Read-only)\n
246STYLE_INDENTGUIDE view.STYLE_INDENTGUIDE (number, Read-only)\n
247STYLE_LINENUMBER view.STYLE_LINENUMBER (number, Read-only)\n
248STYLE_MAX view.STYLE_MAX (number, Read-only)\n
249SUSPEND events.SUSPEND (string)\nEmitted when suspending Textadept. If any handler returns `true`, Textadept\ndoes not suspend.\nThis event is only emitted by the terminal version.
250TAB_CLICKED events.TAB_CLICKED (string)\nEmitted when the user clicks on a buffer tab.\nWhen connecting to this event, connect with an index of 1 if the handler\nneeds to run before Textadept switches between buffers.\nNote that Textadept always displays a context menu on right-click.\nArguments:\n\n* _`index`_: The numeric index of the clicked tab.\n* _`button`_: The mouse button number that was clicked, either `1` (left\n  button), `2` (middle button), `3` (right button), `4` (wheel up), or `5`\n (wheel down).\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.\n* _`cmd`_: The "Command" modifier key on macOS is held down.
251TD_LONGARROW view.TD_LONGARROW (number, Read-only)\n
252TD_STRIKEOUT view.TD_STRIKEOUT (number, Read-only)\n
253TEST_OUTPUT events.TEST_OUTPUT (string)\nEmitted when executing a project's shell command for running tests.\nBy default, output is printed to the message buffer. In order to override\nthis behavior, connect to the event with an index of `1` and return `true`.\nArguments:\n\n* `output`: A line of string output from the command.
254TIME_FOREVER view.TIME_FOREVER (number, Read-only)\n
255TYPE lexer.TYPE (string)\nThe token name for type tokens.
256TYPEDEF textadept.editing.XPM_IMAGES.TYPEDEF (table)\nThe image number for type definitions.
257UNFOCUS events.UNFOCUS (string)\nEmitted when Textadept loses focus.\nThis event is never emitted when Textadept is running in the terminal.
258UPDATE_CONTENT buffer.UPDATE_CONTENT (number, Read-only)\n
259UPDATE_H_SCROLL view.UPDATE_H_SCROLL (number, Read-only)\n
260UPDATE_SELECTION buffer.UPDATE_SELECTION (number, Read-only)\n
261UPDATE_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 (including caret movement).\n  + `view.UPDATE_V_SCROLL`\n    Buffer has scrolled vertically.\n  + `view.UPDATE_H_SCROLL`\n    Buffer has scrolled horizontally.
262UPDATE_V_SCROLL view.UPDATE_V_SCROLL (number, Read-only)\n
263URI_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.
264USER_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.
265VARIABLE lexer.VARIABLE (string)\nThe token name for variable tokens.
266VARIABLE textadept.editing.XPM_IMAGES.VARIABLE (table)\nThe image number for variables.
267VIEW_AFTER_SWITCH events.VIEW_AFTER_SWITCH (string)\nEmitted right after switching to another view.\nThe view being switched to is `view`.\nEmitted by `ui.goto_view()`.
268VIEW_BEFORE_SWITCH events.VIEW_BEFORE_SWITCH (string)\nEmitted right before switching to another view.\nThe view being switched from is `view`.\nEmitted by `ui.goto_view()`.
269VIEW_NEW events.VIEW_NEW (string)\nEmitted after creating a new view.\nThe new view is `view`.\nEmitted on startup and by `view.split()`.
270VISIBLE_SLOP view.VISIBLE_SLOP (number, Read-only)\n
271VISIBLE_STRICT view.VISIBLE_STRICT (number, Read-only)\n
272VS_NONE buffer.VS_NONE (number, Read-only)\n
273VS_RECTANGULARSELECTION buffer.VS_RECTANGULARSELECTION (number, Read-only)\n
274VS_USERACCESSIBLE buffer.VS_USERACCESSIBLE (number, Read-only)\n
275WHITESPACE lexer.WHITESPACE (string)\nThe token name for whitespace tokens.
276WIN32 _G.WIN32 (bool)\nWhether or not Textadept is running on Windows.
277WRAPINDENT_DEEPINDENT view.WRAPINDENT_DEEPINDENT (number, Read-only)\n
278WRAPINDENT_FIXED view.WRAPINDENT_FIXED (number, Read-only)\n
279WRAPINDENT_INDENT view.WRAPINDENT_INDENT (number, Read-only)\n
280WRAPINDENT_SAME view.WRAPINDENT_SAME (number, Read-only)\n
281WRAPVISUALFLAGLOC_DEFAULT view.WRAPVISUALFLAGLOC_DEFAULT (number, Read-only)\n
282WRAPVISUALFLAGLOC_END_BY_TEXT view.WRAPVISUALFLAGLOC_END_BY_TEXT (number, Read-only)\n
283WRAPVISUALFLAGLOC_START_BY_TEXT view.WRAPVISUALFLAGLOC_START_BY_TEXT (number, Read-only)\n
284WRAPVISUALFLAG_END view.WRAPVISUALFLAG_END (number, Read-only)\n
285WRAPVISUALFLAG_MARGIN view.WRAPVISUALFLAG_MARGIN (number, Read-only)\n
286WRAPVISUALFLAG_NONE view.WRAPVISUALFLAG_NONE (number, Read-only)\n
287WRAPVISUALFLAG_START view.WRAPVISUALFLAG_START (number, Read-only)\n
288WRAP_CHAR view.WRAP_CHAR (number, Read-only)\n
289WRAP_NONE view.WRAP_NONE (number, Read-only)\n
290WRAP_WHITESPACE view.WRAP_WHITESPACE (number, Read-only)\n
291WRAP_WORD view.WRAP_WORD (number, Read-only)\n
292WS_INVISIBLE view.WS_INVISIBLE (number, Read-only)\n
293WS_VISIBLEAFTERINDENT view.WS_VISIBLEAFTERINDENT (number, Read-only)\n
294WS_VISIBLEALWAYS view.WS_VISIBLEALWAYS (number, Read-only)\n
295WS_VISIBLEONLYININDENT view.WS_VISIBLEONLYININDENT (number, Read-only)\n
296XPM_IMAGES textadept.editing.XPM_IMAGES (table)\nMap of image names to registered image numbers.
297ZOOM events.ZOOM (string)\nEmitted after changing `view.zoom`.\nEmitted by `view.zoom_in()` and `view.zoom_out()`.
298_BUFFERS _G._BUFFERS (table)\nTable of all open buffers in Textadept.\nNumeric keys have buffer values and buffer keys have their associated numeric\nkeys.\n@see _G.buffer
299_CHARSET _G._CHARSET (string)\nThe filesystem's character encoding.\nThis is used when working with files.
300_G _G._G (module)\nExtends Lua's _G table to provide extra functions and fields for Textadept.
301_HOME _G._HOME (string)\nThe path to Textadept's home, or installation, directory.
302_L _G._L (module)\nMap of all messages used by Textadept to their localized form.\nIf the table does not contain the localized version of a given message, it\nreturns a string that starts with "No Localization:" via a metamethod.\nNote: the terminal version ignores any "_" mnemonics the GUI version would\nuse.
303_M _G._M (module)\nA table of loaded Textadept language modules.\n\nLanguage modules are a special kind of module that Textadept automatically\nloads when editing source code in a particular programming language. The only\nthing "special" about them is they are named after a lexer. Otherwise they\nare plain Lua modules. The *~/.textadept/modules/* directory houses language\nmodules (along with other modules).\n\nA language module is designed to provide extra functionality for a single\nprogramming language. Some examples of what language modules can do:\n\n  * Specify block comment syntax for lines of code\n  * Define compile and run commands for source files\n  * Set language-specific editor properties like indentation rules\n  * Specify code autocompletion routines\n  * Declare snippets\n  * Define commands and key bindings for them\n  * Add to the top-level menu or right-click editor context menu\n\nExamples of these features are described in the sections below.
304_RELEASE _G._RELEASE (string)\nThe Textadept release version string.
305_SCINTILLA _G._SCINTILLA (module)\nScintilla constants, functions, and properties.\nDo not modify anything in this module. Doing so will have unpredictable\nconsequences.
306_USERHOME _G._USERHOME (string)\nThe path to the user's *~/.textadept/* directory, where all preferences and\nuser-data is stored.\nOn Windows machines *~/* is the value of the "USERHOME" environment\nvariable (typically *C:\Users\username\\* or\n*C:\Documents and Settings\username\\*). On Linux, BSD, and macOS\nmachines *~/* is the value of "$HOME" (typically */home/username/* and\n*/Users/username/* respectively).
307_VIEWS _G._VIEWS (table)\nTable of all views in Textadept.\nNumeric keys have view values and view keys have their associated numeric\nkeys.\n@see _G.view
308_print ui._print(buffer_type, ...)\nPrints the given string messages to the buffer of string type *buffer_type*.\nOpens a new buffer for printing messages to if necessary. If the message\nbuffer is already open in a view, the message is printed to that view.\nOtherwise the view is split (unless `ui.tabs` is `true`) and the message\nbuffer is displayed before being printed to.\n@param buffer_type String type of message buffer.\n@param ... Message strings.\n@usage ui._print(_L['[Message Buffer]'], message)
309abspath 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
310active ui.command_entry.active (boolean)\nWhether or not the command entry is active.
311active ui.find.active (boolean)\nWhether or not the Find & Replace pane is active.
312add_fold_point lexer.add_fold_point(lexer, token_name, start_symbol, end_symbol)\nAdds to lexer *lexer* a fold point whose beginning and end tokens are string\n*token_name* tokens with string content *start_symbol* and *end_symbol*,\nrespectively.\nIn the event that *start_symbol* may or may not be a fold point depending on\ncontext, and that additional processing is required, *end_symbol* may be a\nfunction that ultimately returns `1` (indicating a beginning fold point),\n`-1` (indicating an ending fold point), or `0` (indicating no fold point).\nThat function is passed the following arguments:\n\n  * `text`: The text being processed for fold points.\n  * `pos`: The position in *text* of the beginning of the line currently\n    being processed.\n  * `line`: The text of the line currently being processed.\n  * `s`: The position of *start_symbol* in *line*.\n  * `symbol`: *start_symbol* itself.\n@param lexer The lexer to add a fold point to.\n@param token_name The token name of text that indicates a fold point.\n@param start_symbol The text that indicates the beginning of a fold point.\n@param end_symbol Either the text that indicates the end of a fold point, or\n  a function that returns whether or not *start_symbol* is a beginning fold\n  point (1), an ending fold point (-1), or not a fold point at all (0).\n@usage lex:add_fold_point(lexer.OPERATOR, '{', '}')\n@usage lex:add_fold_point(lexer.KEYWORD, 'if', 'end')\n@usage lex:add_fold_point(lexer.COMMENT, lexer.fold_consecutive_lines('#'))\n@usage lex:add_fold_point('custom', function(text, pos, line, s, symbol)\n  ... end)
313add_rule lexer.add_rule(lexer, id, rule)\nAdds pattern *rule* identified by string *id* to the ordered list of rules\nfor lexer *lexer*.\n@param lexer The lexer to add the given rule to.\n@param id The id associated with this rule. It does not have to be the same\n  as the name passed to `token()`.\n@param rule The LPeg pattern of the rule.\n@see modify_rule
314add_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 (i.e. the current position) still counts as a\nselection, use `buffer.set_selection()` first when setting a list of\nselections.\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
315add_style lexer.add_style(lexer, token_name, style)\nAssociates string *token_name* in lexer *lexer* with style table *style*.\n*style* may have the following fields:\n\n* `font`: String font name.\n* `size`: Integer font size.\n* `bold`: Whether or not the font face is bold. The default value is `false`.\n* `weight`: Integer weight or boldness of a font, between 1 and 999.\n* `italics`: Whether or not the font face is italic. The default value is\n  `false`.\n* `underlined`: Whether or not the font face is underlined. The default value\n  is `false`.\n* `fore`: Font face foreground color in `0xBBGGRR` or `"#RRGGBB"` format.\n* `back`: Font face background color in `0xBBGGRR` or `"#RRGGBB"` format.\n* `eolfilled`: Whether or not the background color extends to the end of the\n  line. The default value is `false`.\n* `case`: Font case, `'u'` for upper, `'l'` for lower, and `'m'` for normal,\n  mixed case. The default value is `'m'`.\n* `visible`: Whether or not the text is visible. The default value is `true`.\n* `changeable`: Whether the text is changeable instead of read-only. The\n  default value is `true`.\n\nField values may also contain "$(property.name)" expansions for properties\ndefined in Scintilla, theme files, etc.\n@param lexer The lexer to add a style to.\n@param token_name The name of the token to associated with the style.\n@param style A style string for Scintilla.\n@usage lex:add_style('longstring', lexer.styles.string)\n@usage lex:add_style('deprecated_func', lexer.styles['function'] ..\n  {italics = true}\n@usage lex:add_style('visible_ws', lexer.styles.whitespace ..\n  {back = lexer.colors.grey}
316add_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.
317additional_caret_fore view.additional_caret_fore (number)\nThe foreground color, in "0xBBGGRR" format, of additional carets.
318additional_carets_blink view.additional_carets_blink (bool)\nAllow additional carets to blink.\nThe default value is `true`.
319additional_carets_visible view.additional_carets_visible (bool)\nDisplay additional carets.\nThe default value is `true`.
320additional_sel_alpha view.additional_sel_alpha (number)\nThe alpha value, ranging from `0` (transparent) to `255` (opaque), of\nadditional selections.\nThe default value is `view.ALPHA_NOALPHA`, for no alpha.
321additional_sel_back view.additional_sel_back (number, Write-only)\nThe background color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `view:set_sel_back(false, ...)`.
322additional_sel_fore view.additional_sel_fore (number, Write-only)\nThe foreground color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `view:set_sel_fore(false, ...)`.
323additional_selection_typing buffer.additional_selection_typing (bool)\nType into multiple selections.\nThe default value is `false`.
324all_lines_visible view.all_lines_visible (bool, Read-only)\nWhether or not all lines are visible.
325alnum lexer.alnum (pattern)\nA pattern that matches any alphanumeric character ('A'-'Z', 'a'-'z',\n  '0'-'9').
326alpha lexer.alpha (pattern)\nA pattern that matches any alphabetic character ('A'-'Z', 'a'-'z').
327anchor buffer.anchor (number)\nThe anchor's position.
328annotation_clear_all buffer.annotation_clear_all(buffer)\nClears annotations from all lines.\n@param buffer A buffer.
329annotation_lines buffer.annotation_lines (table, Read-only)\nTable of the number of annotation text lines per line number.
330annotation_style buffer.annotation_style (table)\nTable of style numbers for annotation text per line number.\nOnly some style attributes are active in annotations: font,\nsize/size_fractional, bold/weight, italics, fore, back, and character_set.
331annotation_text buffer.annotation_text (table)\nTable of annotation text per line number.
332annotation_visible view.annotation_visible (number)\nThe annotation visibility mode.\n\n* `view.ANNOTATION_HIDDEN`\n  Annotations are invisible.\n* `view.ANNOTATION_STANDARD`\n  Draw annotations left-justified with no decoration.\n* `view.ANNOTATION_BOXED`\n  Indent annotations to match the annotated text and outline them with a\n  box.\n* `view.ANNOTATION_INDENTED`\n  Indent non-decorated annotations to match the annotated text.\n\nThe default value is `view.ANNOTATION_HIDDEN`.
333ansi_c _M.ansi_c (module)\nThe ansi_c module.\nIt provides utilities for editing C code.
334any lexer.any (pattern)\nA pattern that matches any single character.
335api_files textadept.editing.api_files (table)\nMap of lexer names to API documentation file tables.\nFile tables contain API file paths or functions that return such paths.\nEach line in an API file consists of a symbol name (not a fully qualified\nsymbol name), a space character, and that symbol's documentation. "\\n"\nrepresents a newline character.\n@see show_documentation
336append_history ui.command_entry.append_history(f, text)\nAppends string *text* to the history for command entry mode *f* or the\ncurrent or most recent mode.\nThis should only be called if `ui.command_entry.run()` is called with a keys\ntable that has a custom binding for the Enter key ('\\n').\nOtherwise, history is automatically appended as needed.\n@param f Optional command entry mode to append history to. This is a function\n  passed to `ui.command_entry_run()`. If omitted, uses the current or most\n  recent mode.\n@param text String text to append to history.
337append_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.
338arg _G.arg (table)\nTable of command line parameters passed to Textadept.\n@see args
339args _G.args (module)\nProcesses command line arguments for Textadept.
340ascii lexer.ascii (pattern)\nA pattern that matches any ASCII character (codes 0 to 127).
341assert _G.assert (module)\nExtends `_G` with formatted assertions and function argument type checks.
342assert _G.assert(v, message, ...)\nAsserts that value *v* is not `false` or `nil` and returns *v*, or calls\n`error()` with *message* as the error message, defaulting to "assertion\nfailed!". If *message* is a format string, the remaining arguments are passed\nto `string.format()` and the resulting string becomes the error message.\n@param v Value to assert.\n@param message Optional error message to show on error. The default value is\n  "assertion failed!".\n@param ... If *message* is a format string, these arguments are passed to\n  `string.format()`.
343assert_type _G.assert_type(v, expected_type, narg)\nAsserts that value *v* has type string *expected_type* and returns *v*, or\ncalls `error()` with an error message that implicates function argument\nnumber *narg*.\nThis is intended to be used with API function arguments so users receive more\nhelpful error messages.\n@param v Value to assert the type of.\n@param expected_type String type to assert. It may be a non-letter-delimited\n  list of type options.\n@param narg The positional argument number *v* is associated with. This is\n  not required to be a number.\n@usage assert_type(filename, 'string/nil', 1)\n@usage assert_type(option.setting, 'number', 'setting') -- implicates key
344auto_c_active buffer.auto_c_active(buffer)\nReturns whether or not an autocompletion or user list is visible.\n@param buffer A buffer.\n@return bool
345auto_c_auto_hide buffer.auto_c_auto_hide (bool)\nAutomatically cancel an autocompletion or user list when no entries match\ntyped text.\nThe default value is `true`.
346auto_c_cancel buffer.auto_c_cancel(buffer)\nCancels the displayed autocompletion or user list.\n@param buffer A buffer.
347auto_c_cancel_at_start buffer.auto_c_cancel_at_start (bool)\nCancel an autocompletion list when backspacing to a position before where\nautocompletion started (instead of before the word being completed).\nThis option has no effect for a user list.\nThe default value is `true`.
348auto_c_case_insensitive_behavior buffer.auto_c_case_insensitive_behavior (number)\nThe behavior mode for a case insensitive autocompletion or user list when\n`buffer.auto_c_ignore_case` is `true`.\n\n* `buffer.CASEINSENSITIVEBEHAVIOR_RESPECTCASE`\n  Prefer to select case-sensitive matches.\n* `buffer.CASEINSENSITIVEBEHAVIOR_IGNORECASE`\n  No preference.\n\nThe default value is `buffer.CASEINSENSITIVEBEHAVIOR_RESPECTCASE`.
349auto_c_choose_single buffer.auto_c_choose_single (bool)\nAutomatically choose the item in a single-item autocompletion list.\nThis option has no effect for a user list.\nThe default value is `false`.
350auto_c_complete buffer.auto_c_complete(buffer)\nCompletes the current word with the one selected in an autocompletion list.\n@param buffer A buffer.
351auto_c_current buffer.auto_c_current (number, Read-only)\nThe index of the currently selected item in an autocompletion or user list.
352auto_c_current_text buffer.auto_c_current_text (string, Read-only)\nThe text of the currently selected item in an autocompletion or user list.
353auto_c_drop_rest_of_word buffer.auto_c_drop_rest_of_word (bool)\nDelete any word characters immediately to the right of autocompleted text.\nThe default value is `false`.
354auto_c_fill_ups buffer.auto_c_fill_ups (string, Write-only)\nThe set of characters that choose the currently selected item in an\nautocompletion or user list when the user types one of them.\nThe default value is `''`.
355auto_c_ignore_case buffer.auto_c_ignore_case (bool)\nIgnore case when searching an autocompletion or user list for matches.\nThe default value is `false`.
356auto_c_max_height view.auto_c_max_height (number)\nThe maximum number of items per page to show in autocompletion and user\nlists. The default value is `5`.
357auto_c_max_width view.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.
358auto_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`.
359auto_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`.
360auto_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
361auto_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.
362auto_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` (' ').
363auto_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
364auto_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.
365auto_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 `view.register_image()` or\n`view.register_rgba_image()` before appending image types to list\nitems after type separator characters.\nThe default value is 63 ('?').
366auto_enclose textadept.editing.auto_enclose (bool)\nWhether or not to auto-enclose selected text when typing a punctuation\ncharacter, taking `textadept.editing.auto_pairs` into account.\nThe default value is `false`.
367auto_indent textadept.editing.auto_indent (bool)\nMatch the previous line's indentation level after inserting a new line.\nThe default value is `true`.
368auto_pairs textadept.editing.auto_pairs (table)\nMap of auto-paired characters like parentheses, brackets, braces, and quotes.\nThe ASCII values of opening characters are assigned to strings that contain\ncomplement characters. The default auto-paired characters are "()", "[]",\n"{}", "''", and """".
369autocomplete 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
370autocomplete_all_words textadept.editing.autocomplete_all_words (bool)\nAutocomplete the current word using words from all open buffers.\nIf `true`, performance may be slow when many buffers are open.\nThe default value is `false`.
371autocomplete_snippets _M.ansi_c.autocomplete_snippets (boolean)\nWhether or not to include snippets in autocompletion lists.\nThe default value is `true`.
372autocomplete_snippets _M.lua.autocomplete_snippets (boolean)\nWhether or not to include snippets in autocompletion lists.\nThe default value is `false`.
373autocompleters 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 be\nautocompleted, and a list of completions to be shown. Autocompletion lists\nare sorted automatically.\n@see autocomplete
374back textadept.history.back()\nNavigates backwards through the current view's history.
375back_space_un_indents buffer.back_space_un_indents (bool)\nUn-indent text when backspacing within indentation.\nThe default value is `false`.
376back_tab buffer.back_tab(buffer)\nUn-indents the text on the selected lines.\n@param buffer A buffer.
377begin_undo_action buffer.begin_undo_action(buffer)\nStarts a sequence of actions to be undone or redone as a single action.\nMay be nested.\n@param buffer A buffer.
378bookmarks textadept.bookmarks (module)\nBookmarks for Textadept.
379brace_bad_light view.brace_bad_light(view, pos)\nHighlights the character at position *pos* as an unmatched brace character\nusing the `'style.bracebad'` style.\nRemoves highlighting when *pos* is `-1`.\n@param view A view.\n@param pos The position in *view*'s buffer to highlight, or `-1` to remove\n  the highlight.
380brace_bad_light_indicator view.brace_bad_light_indicator(view, use_indicator, indicator)\nHighlights unmatched brace characters with indicator number *indicator*, in\nthe range of `1` to `32`, instead of the\n`view.STYLE_BRACEBAD` style if *use_indicator* is `true`.\n@param view A view.\n@param use_indicator Whether or not to use an indicator.\n@param indicator The indicator number to use.
381brace_highlight view.brace_highlight(view, pos1, pos2)\nHighlights the characters at positions *pos1* and *pos2* as matching braces\nusing the `'style.bracelight'` style.\nIf indent guides are enabled, locates the column with `buffer.column` and\nsets `view.highlight_guide` in order to highlight the indent guide.\n@param view A view.\n@param pos1 The first position in *view*'s buffer to highlight.\n@param pos2 The second position in *view*'s buffer to highlight.
382brace_highlight_indicator view.brace_highlight_indicator(view, use_indicator, indicator)\nHighlights matching brace characters with indicator number *indicator*, in\nthe range of `1` to `32`, instead of the\n`view.STYLE_BRACELIGHT` style if *use_indicator* is `true`.\n@param view A view.\n@param use_indicator Whether or not to use an indicator.\n@param indicator The indicator number to use.
383brace_match buffer.brace_match(buffer, pos, max_re_style)\nReturns the position of the matching brace for the brace character at\nposition *pos*, taking nested braces into account, or `-1`.\nThe brace characters recognized are '(', ')', '[', ']', '{', '}', '<', and\n'>' and must have the same style.\n@param buffer A buffer.\n@param pos The position of the brace in *buffer* to match.\n@param max_re_style Must be `0`. Reserved for expansion.\n@return number
384brace_matches textadept.editing.brace_matches (table)\nTable of brace characters to highlight.\nThe ASCII values of brace characters are keys and are assigned non-`nil`\nvalues. The default brace characters are '(', ')', '[', ']', '{', and '}'.
385buffer _G.buffer (module)\nA Textadept buffer object.\nConstants are documented in the fields they apply to.\nWhile you can work with individual buffer instances, it is really only useful\nto work with the global one.\nMany of these functions and fields are derived from buffer-specific\nfunctionality of the Scintilla editing component, and additional information\ncan be found on the\nScintilla website.\nNote that with regard to Scintilla-specific functionality, this API is a\n_suggestion_, not a hard requirement. All of that functionality also exists\nin `view`, even if undocumented.\nAny buffer fields set on startup (e.g. in *~/.textadept/init.lua*) will be\nthe default, initial values for all buffers.
386buffer _G.buffer (table)\nThe current buffer in the current view.
387buffer view.buffer (table)\nThe buffer the view currently contains. (Read-only)
388buffer_statusbar_text ui.buffer_statusbar_text (string, Write-only)\nThe text displayed in the buffer statusbar.
389build textadept.run.build(root_directory)\nBuilds the project whose root path is *root_directory* or the current project\nusing the shell command from the `build_commands` table.\nIf a "makefile" type of build file is found, prompts the user for the full\nbuild command.\nThe current project is determined by either the buffer's filename or the\ncurrent working directory.\nEmits `BUILD_OUTPUT` events.\n@param root_directory The path to the project to build. The default value is\n  the current project.\n@see build_commands\n@see _G.events
390build_commands textadept.run.build_commands (table)\nMap of project root paths and "makefiles" to their associated "build" shell\ncommand line strings or functions that return such strings.\nFunctions may also return a working directory and process environment table\nto operate in. By default, the working directory is the project's root\ndirectory and the environment is Textadept's environment.
391call_tip_active view.call_tip_active(view)\nReturns whether or not a call tip is visible.\n@param view A view.\n@return bool
392call_tip_cancel view.call_tip_cancel(view)\nRemoves the displayed call tip from view.\n@param view A view.
393call_tip_fore_hlt view.call_tip_fore_hlt (number, Write-only)\nA call tip's highlighted text foreground color, in "0xBBGGRR" format.
394call_tip_pos_start view.call_tip_pos_start (number, Write-only)\nThe position at which backspacing beyond it hides a visible call tip.
395call_tip_pos_start view.call_tip_pos_start(view)\nReturns a call tip's display position.\n@param view A view.\n@return number
396call_tip_position view.call_tip_position (boolean)\nDisplay a call tip above the current line instead of below it.\nThe default value is `false`.
397call_tip_set_hlt view.call_tip_set_hlt(view, start_pos, end_pos)\nHighlights a call tip's text between positions *start_pos* to *end_pos* with\nthe color `view.call_tip_fore_hlt`.\n@param view A view.\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.
398call_tip_show view.call_tip_show(view, pos, text)\nDisplays a call tip at position *pos* with string *text* as the call tip's\ncontents.\nAny "\001" or "\002" bytes in *text* are replaced by clickable up or down\narrow visuals, respectively. These may be used to indicate that a symbol has\nmore than one call tip, for example.\n@param view A view.\n@param pos The position in *view*'s buffer to show a call tip at.\n@param text The call tip text to show.
399call_tip_use_style view.call_tip_use_style (number)\nThe pixel width of tab characters in call tips.\nWhen non-zero, also enables the use of style number `view.STYLE_CALLTIP`\ninstead of `view.STYLE_DEFAULT` for call tip styles.\nThe default value is `0`.
400can_redo buffer.can_redo(buffer)\nReturns whether or not there is an action to be redone.\n@param buffer A buffer.\n@return bool
401can_undo buffer.can_undo(buffer)\nReturns whether or not there is an action to be undone.\n@param buffer A buffer.\n@return bool
402cancel buffer.cancel(buffer)\nCancels the active selection mode, autocompletion or user list, call tip,\netc.\n@param buffer A buffer.
403cancel_current textadept.snippets.cancel_current()\nCancels the active snippet, removing all inserted text.\nReturns `false` if no snippet is active.\n@return `false` if no snippet is active; `nil` otherwise.
404caret_fore view.caret_fore (number)\nThe caret's foreground color, in "0xBBGGRR" format.
405caret_line_back view.caret_line_back (number)\nThe background color, in "0xBBGGRR" format, of the line that contains the\ncaret.
406caret_line_back_alpha view.caret_line_back_alpha (number)\nThe caret line's background alpha value, ranging from `0` (transparent) to\n`255` (opaque).\nThe default value is `view.ALPHA_NOALPHA`, for no alpha.
407caret_line_frame view.caret_line_frame (number)\nThe caret line's frame width in pixels.\nWhen non-zero, the line that contains the caret is framed instead of\ncolored in. The `view.caret_line_back` and `view.caret_line_back_alpha`\nproperties apply to the frame.\nThe default value is `0`.
408caret_line_visible view.caret_line_visible (bool)\nColor the background of the line that contains the caret a different color.\nThe default value is `false`.
409caret_line_visible_always view.caret_line_visible_always (bool)\nAlways show the caret line, even when the view is not in focus.\nThe default value is `false`, showing the line only when the view is in\nfocus.
410caret_period view.caret_period (number)\nThe time between caret blinks in milliseconds.\nA value of `0` stops blinking.\nThe default value is `500`.
411caret_sticky buffer.caret_sticky (number)\nThe caret's preferred horizontal position when moving between lines.\n\n* `buffer.CARETSTICKY_OFF`\n  Use the same position the caret had on the previous line.\n* `buffer.CARETSTICKY_ON`\n  Use the last position the caret was moved to via the mouse, left/right\n  arrow keys, home/end keys, etc. Typing text does not affect the position.\n* `buffer.CARETSTICKY_WHITESPACE`\n  Use the position the caret had on the previous line, but prior to any\n  inserted indentation.\n\nThe default value is `buffer.CARETSTICKY_OFF`.
412caret_style view.caret_style (number)\nThe caret's visual style.\n\n* `view.CARETSTYLE_INVISIBLE`\n  No caret.\n* `view.CARETSTYLE_LINE`\n  A line caret.\n* `view.CARETSTYLE_BLOCK`\n  A block caret.\n\nAny block setting may be combined with `view.CARETSTYLE_BLOCK_AFTER` via\nbitwise OR (`|`) in order to draw the caret after the end of a selection,\nas opposed to just inside it.\n\nThe default value is `view.CARETSTYLE_LINE`.
413caret_width view.caret_width (number)\nThe line caret's pixel width in insert mode, between `0` and `20`.\nThe default value is `1`.
414char_at buffer.char_at (table, Read-only)\nTable of character bytes per position.
415char_left buffer.char_left(buffer)\nMoves the caret left one character.\n@param buffer A buffer.
416char_left_extend buffer.char_left_extend(buffer)\nMoves the caret left one character, extending the selected text to the new\nposition.\n@param buffer A buffer.
417char_left_rect_extend buffer.char_left_rect_extend(buffer)\nMoves the caret left one character, extending the rectangular selection to\nthe new position.\n@param buffer A buffer.
418char_right buffer.char_right(buffer)\nMoves the caret right one character.\n@param buffer A buffer.
419char_right_extend buffer.char_right_extend(buffer)\nMoves the caret right one character, extending the selected text to the new\nposition.\n@param buffer A buffer.
420char_right_rect_extend buffer.char_right_rect_extend(buffer)\nMoves the caret right one character, extending the rectangular selection to\nthe new position.\n@param buffer A buffer.
421choose_caret_x buffer.choose_caret_x(buffer)\nIdentifies the current horizontal caret position as the caret's preferred\nhorizontal position when moving between lines.\n@param buffer A buffer.\n@see caret_sticky
422clear buffer.clear(buffer)\nDeletes the selected text or the character at the caret.\n@param buffer A buffer.
423clear textadept.bookmarks.clear()\nClears all bookmarks in the current buffer.
424clear textadept.history.clear()\nClears all view history.
425clear_all buffer.clear_all(buffer)\nDeletes the buffer's text.\n@param buffer A buffer.
426clear_document_style buffer.clear_document_style(buffer)\nClears all styling and folding information.\n@param buffer A buffer.
427clear_registered_images view.clear_registered_images(view)\nClears all images registered using `view.register_image()` and\n`view.register_rgba_image()`.\n@param view A view.
428clear_representation view.clear_representation(view, char)\nRemoves the alternate string representation for character *char* (which may\n  be a multi-byte character).\n@param view A view.\n@param char The string character in `buffer.representations` to remove the\n  alternate string representation for.
429clipboard_text ui.clipboard_text (string)\nThe text on the clipboard.
430close buffer.close(buffer, force)\nCloses the buffer, prompting the user to continue if there are unsaved\nchanges (unless *force* is `true`), and returns `true` if the buffer was\nclosed.\n@param buffer A buffer.\n@param force Optional flag that discards unsaved changes without prompting\n  the user. The default value is `false`.\n@return `true` if the buffer was closed; `nil` otherwise.
431close spawn_proc:close()\nCloses standard input for process *spawn_proc*, effectively sending an EOF\n(end of file) to it.
432close_all_buffers io.close_all_buffers()\nCloses all open buffers, prompting the user to continue if there are unsaved\nbuffers, and returns `true` if the user did not cancel.\nNo buffers are saved automatically. They must be saved manually.\n@return `true` if user did not cancel; `nil` otherwise.\n@see buffer.close
433cntrl lexer.cntrl (pattern)\nA pattern that matches any control character (ASCII codes 0 to 31).
434colorize buffer.colorize(buffer, start_pos, end_pos)\nInstructs the lexer to style and mark fold points in the range of text\nbetween *start_pos* and *end_pos*.\nIf *end_pos* is `-1`, styles and marks to the end of the buffer.\n@param buffer A buffer.\n@param start_pos The start position of the range of text in *buffer* to\n  process.\n@param end_pos The end position of the range of text in *buffer* to process,\n  or `-1` to process from *start_pos* to the end of *buffer*.
435colors lexer.colors (table)\nMap of color name strings to color values in `0xBBGGRR` or `"#RRGGBB"`\nformat.\nNote: for applications running within a terminal emulator, only 16 color\nvalues are recognized, regardless of how many colors a user's terminal\nactually supports. (A terminal emulator's settings determines how to actually\ndisplay these recognized color values, which may end up being mapped to a\ncompletely different color set.) In order to use the light variant of a\ncolor, some terminals require a style's `bold` attribute must be set along\nwith that normal color. Recognized color values are black (0x000000), red\n(0x000080), green (0x008000), yellow (0x008080), blue (0x800000), magenta\n(0x800080), cyan (0x808000), white (0xC0C0C0), light black (0x404040), light\nred (0x0000FF), light green (0x00FF00), light yellow (0x00FFFF), light blue\n(0xFF0000), light magenta (0xFF00FF), light cyan (0xFFFF00), and light white\n(0xFFFFFF).
436colorselect ui.dialogs.colorselect(options)\nPrompts the user with a color selection dialog defined by dialog options\ntable *options*, returning the color selected.\nIf the user canceled the dialog, returns `nil`.\n@param options Table of key-value option pairs for the option select dialog.\n\n  * `title`: The dialog's title text.\n  * `color`: The initially selected color as either a number in "0xBBGGRR"\n    format, or as a string in "#RRGGBB" format.\n  * `palette`: The list of colors to show in the dialog's color palette.\n    Up to 20 colors can be specified as either numbers in "0xBBGGRR" format\n    or as strings in "#RRGGBB" format. If `true` (no list was given), a\n    default palette is shown.\n  * `string_output`: Return the selected color in string "#RRGGBB" format\n    instead of as a number. The default value is `false`.\n  * `float`: Show the dialog on top of all desktop windows. The default value\n    is `false`.\n@usage ui.dialogs.colorselect{title = 'Foreground color', color = 0x000000,\n  palette = {'#000000', 0x0000FF, '#00FF00', 0xFF0000}}\n@return selected color
437column buffer.column (table, Read-only)\nTable of column numbers (taking tab widths into account) per position.\nMulti-byte characters count as single characters.
438command_entry ui.command_entry (module)\nTextadept's Command Entry.\nIt supports multiple modes that each have their own functionality (such as\nrunning Lua code and filtering text through shell commands) and history.
439comment_string textadept.editing.comment_string (table)\nMap of lexer names to line comment strings for programming languages, used by\nthe `toggle_comment()` function.\nKeys are lexer names and values are either the language's line comment\nprefixes or block comment delimiters separated by a '|' character.\n@see toggle_comment
440compile textadept.run.compile(filename)\nCompiles file *filename* or the current file using an appropriate shell\ncommand from the `compile_commands` table.\nThe shell command is determined from the file's filename, extension, or\nlanguage in that order.\nEmits `COMPILE_OUTPUT` events.\n@param filename Optional path to the file to compile. The default value is\n  the current file's filename.\n@see compile_commands\n@see _G.events
441compile_commands textadept.run.compile_commands (table)\nMap of filenames, file extensions, and lexer names to their associated\n"compile" shell command line strings or functions that return such strings.\nCommand line strings may have the following macros:\n\n  + `%f`: The file's name, including its extension.\n  + `%e`: The file's name, excluding its extension.\n  + `%d`: The file's directory path.\n  + `%p`: The file's full path.\n\nFunctions may also return a working directory and process environment table\nto operate in. By default, the working directory is the current file's parent\ndirectory and the environment is Textadept's environment.
442connect 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
443constants _SCINTILLA.constants (table)\nMap of Scintilla constant names to their numeric values.\n@see _G.buffer
444context_menu textadept.menu.context_menu (table)\nThe default right-click context menu.\nSubmenus, and menu items can be retrieved by name in addition to table index\nnumber.
445context_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`.
446contracted_fold_next view.contracted_fold_next(view, line)\nReturns the line number of the next contracted fold point starting from line\nnumber *line*, or `-1` if none exists.\n@param view A view.\n@param line The line number in *view* to start at.\n@return number
447convert_eols buffer.convert_eols(buffer, mode)\nConverts all end of line characters to those in end of line mode *mode*.\n@param buffer A buffer.\n@param mode The end of line mode to convert to. Valid values are:\n  * `buffer.EOL_CRLF`\n  * `buffer.EOL_CR`\n  * `buffer.EOL_LF`
448convert_indentation textadept.editing.convert_indentation()\nConverts indentation between tabs and spaces according to `buffer.use_tabs`.\nIf `buffer.use_tabs` is `true`, `buffer.tab_width` indenting spaces are\nconverted to tabs. Otherwise, all indenting tabs are converted to\n`buffer.tab_width` spaces.\n@see buffer.use_tabs
449copy buffer.copy(buffer)\nCopies the selected text to the clipboard.\nMultiple selections are copied in order with no delimiters. Rectangular\nselections are copied from top to bottom with end of line characters. Virtual\nspace is not copied.\n@param buffer A buffer.
450copy_range buffer.copy_range(buffer, start_pos, end_pos)\nCopies to the clipboard the range of text between positions *start_pos* and\n*end_pos*.\n@param buffer A buffer.\n@param start_pos The start position of the range of text in *buffer* to copy.\n@param end_pos The end position of the range of text in *buffer* to copy.
451copy_text buffer.copy_text(buffer, text)\nCopies string *text* to the clipboard.\n@param buffer A buffer.\n@param text The text to copy.
452count_characters buffer.count_characters(buffer, start_pos, end_pos)\nReturns the number of whole characters (taking multi-byte characters into\naccount) between positions *start_pos* and *end_pos*.\n@param buffer A buffer.\n@param start_pos The start position of the range of text in *buffer* to start\n  counting at.\n@param end_pos The end position of the range of text in *buffer* to stop\n  counting at.\n@return number
453current_pos buffer.current_pos (number)\nThe caret's position.\nWhen set, does not scroll the caret into view.
454cursor view.cursor (number)\nThe display cursor type.\n\n* `view.CURSORNORMAL`\n  The text insert cursor.\n* `view.CURSORARROW`\n  The arrow cursor.\n* `view.CURSORWAIT`\n  The wait cursor.\n* `view.CURSORREVERSEARROW`\n  The reversed arrow cursor.\n\nThe default value is `view.CURSORNORMAL`.
455cut buffer.cut(buffer)\nCuts the selected text to the clipboard.\nMultiple selections are copied in order with no delimiters. Rectangular\nselections are copied from top to bottom with end of line characters. Virtual\nspace is not copied.\n@param buffer A buffer.
456dec_num lexer.dec_num (pattern)\nA pattern that matches a decimal number.
457default_filter lfs.default_filter (table)\nThe filter table containing common binary file extensions and version control\ndirectories to exclude when iterating over files and directories using\n`walk`.\nExtensions excluded: a, bmp, bz2, class, dll, exe, gif, gz, jar, jpeg, jpg,\no, pdf, png, so, tar, tgz, tif, tiff, xz, and zip.\nDirectories excluded: .bzr, .git, .hg, .svn, _FOSSIL_, and node_modules.\n@see walk
458del_line_left buffer.del_line_left(buffer)\nDeletes the range of text from the caret to the beginning of the current\nline.\n@param buffer A buffer.
459del_line_right buffer.del_line_right(buffer)\nDeletes the range of text from the caret to the end of the current line.\n@param buffer A buffer.
460del_word_left buffer.del_word_left(buffer)\nDeletes the word to the left of the caret, including any leading non-word\ncharacters.\n`buffer.word_chars` contains the set of characters that constitute words.\n@param buffer A buffer.
461del_word_right buffer.del_word_right(buffer)\nDeletes the word to the right of the caret, including any trailing non-word\ncharacters.\n`buffer.word_chars` contains the set of characters that constitute words.\n@param buffer A buffer.
462del_word_right_end buffer.del_word_right_end(buffer)\nDeletes the word to the right of the caret, excluding any trailing non-word\ncharacters.\n`buffer.word_chars` contains the set of characters that constitute words.\n@param buffer A buffer.
463delete buffer.delete(buffer)\nDeletes the buffer.\n**Do not call this function.** Call `buffer:close()` instead. Emits a\n`BUFFER_DELETED` event.\n@param buffer A buffer.\n@see events.BUFFER_DELETED
464delete_back buffer.delete_back(buffer)\nDeletes the character behind the caret if no text is selected.\nOtherwise, deletes the selected text.\n@param buffer A buffer.
465delete_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.
466delete_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.
467dialog 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.
468dialogs ui.dialogs (module)\nProvides a set of interactive dialog prompts for user input.
469digit lexer.digit (pattern)\nA pattern that matches any digit ('0'-'9').
470disconnect 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
471doc_line_from_visible view.doc_line_from_visible(view, display_line)\nReturns the actual line number of displayed line number *display_line*,\ntaking wrapped, annotated, and hidden lines into account.\nIf *display_line* is less than or equal to `1`, returns `1`. If\n*display_line* is greater than the number of displayed lines, returns\n`buffer.line_count`.\n@param view A view.\n@param display_line The display line number to use.\n@return number
472document_end buffer.document_end(buffer)\nMoves the caret to the end of the buffer.\n@param buffer A buffer.
473document_end_extend buffer.document_end_extend(buffer)\nMoves the caret to the end of the buffer, extending the selected text to the\nnew position.\n@param buffer A buffer.
474document_start buffer.document_start(buffer)\nMoves the caret to the beginning of the buffer.\n@param buffer A buffer.
475document_start_extend buffer.document_start_extend(buffer)\nMoves the caret to the beginning of the buffer, extending the selected text\nto the new position.\n@param buffer A buffer.
476drop_selection_n buffer.drop_selection_n(buffer, n)\nDrops existing selection number *n*.\n@param buffer A buffer.\n@param n The number of the existing selection.
477dropdown ui.dialogs.dropdown(options)\nPrompts the user with a drop-down item selection dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\nindex of the selected item.\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with 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 its text. If the dialog timed out,\nreturns `0` or `"timeout"`. If the user canceled the dialog, returns `-1` or\n`"delete"`.\n@param options Table of key-value option pairs for the drop-down dialog.\n\n  * `title`: The dialog's title text.\n  * `text`: The dialog's main message text.\n  * `items`: The list of string items to show in the drop-down.\n  * `button1`: The right-most button's label. The default value is\n    `_L['OK']`.\n  * `button2`: The middle button's label.\n  * `button3`: The left-most button's label. This option requires `button2`\n    to be set.\n  * `exit_onchange`: Close the dialog after selecting a new item. The default\n    value is `false`.\n  * `select`: The index of the initially selected list item. The default\n    value is `1`.\n  * `string_output`: Return the selected button's label (instead of its\n    index) and the selected item's text (instead of its index). If no item\n    was selected, returns the dialog's exit status (instead of its exit\n    code). The 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.dropdown{title = 'Select Encoding', width = 200,\n  items = io.encodings, string_output = true}\n@return selected button or exit code, selected item
478edge_color view.edge_color (number)\nThe color, in "0xBBGGRR" format, of the single edge or background for long\nlines according to `view.edge_mode`.
479edge_column view.edge_column (number)\nThe column number to mark long lines at.
480edge_mode view.edge_mode (number)\nThe long line mark mode.\n\n* `view.EDGE_NONE`\n  Long lines are not marked.\n* `view.EDGE_LINE`\n  Draw a single vertical line whose color is `view.edge_color` at\n  column `view.edge_column`.\n* `view.EDGE_BACKGROUND`\n  Change the background color of text after column `view.edge_column`\n  to `view.edge_color`.\n* `view.EDGE_MULTILINE`\n  Draw vertical lines whose colors and columns are defined by calls to\n  `view:multi_edge_add_line()`.
481edit_toggle_overtype buffer.edit_toggle_overtype(buffer)\nToggles `buffer.overtype`.\n@param buffer A buffer.
482editing textadept.editing (module)\nEditing features for Textadept.
483editing_keys ui.command_entry.editing_keys (table)\nA metatable with typical platform-specific key bindings for text entries.\nThis metatable may be used to add basic editing and movement keys to command\nentry modes. It is automatically added to command entry modes unless a\nmetatable was previously set.
484embed lexer.embed(lexer, child, start_rule, end_rule)\nEmbeds child lexer *child* in parent lexer *lexer* using patterns\n*start_rule* and *end_rule*, which signal the beginning and end of the\nembedded lexer, respectively.\n@param lexer 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 html:embed(css, css_start_rule, css_end_rule)\n@usage html:embed(lex, php_start_rule, php_end_rule) -- from php lexer
485emit events.emit(event, ...)\nSequentially calls all handler functions for event *event* with the given\narguments.\n*event* may be any arbitrary string and does not need to have been previously\ndefined. If any handler explicitly returns a value that is not `nil`,\n`emit()` returns that value and ceases to call subsequent handlers. This is\nuseful for stopping the propagation of an event like a keypress after it has\nbeen handled, or for passing back values from handlers.\n@param event The string event name.\n@param ... Arguments passed to the handler.\n@usage events.emit('my_event', 'my message')\n@return `nil` unless any any handler explicitly returned a non-`nil` value;\n  otherwise returns that value
486empty_undo_buffer buffer.empty_undo_buffer(buffer)\nDeletes the undo and redo history.\n@param buffer A buffer.
487enclose textadept.editing.enclose(left, right)\nEncloses the selected text or the current word within strings *left* and\n*right*, taking multiple selections into account.\n@param left The left part of the enclosure.\n@param right The right part of the enclosure.
488encoding buffer.encoding (string or nil)\nThe string encoding of the file, or `nil` for binary files.
489encodings io.encodings (table)\nList of encodings to attempt to decode files as.\nYou should add to this list if you get a "Conversion failed" error when\ntrying to open a file whose encoding is not recognized. Valid encodings are\nGNU iconv's encodings and include:\n\n  * European: ASCII, ISO-8859-{1,2,3,4,5,7,9,10,13,14,15,16}, KOI8-R, KOI8-U,\n    KOI8-RU, CP{1250,1251,1252,1253,1254,1257}, CP{850,866,1131},\n    Mac{Roman,CentralEurope,Iceland,Croatian,Romania},\n    Mac{Cyrillic,Ukraine,Greek,Turkish}, Macintosh.\n  * 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.
490end_at_last_line view.end_at_last_line (bool)\nDisable scrolling past the last line.\nThe default value is `true`.
491end_styled buffer.end_styled (number, Read-only)\nThe current styling position or the last correctly styled character's\nposition.
492end_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.
493ensure_visible view.ensure_visible(view, line)\nEnsures line number *line* is visible by expanding any fold points hiding it.\n@param view A view.\n@param line The line number in *view* to ensure visible.
494ensure_visible_enforce_policy view.ensure_visible_enforce_policy(view, line)\nEnsures line number *line* is visible by expanding any fold points hiding it\nbased on the vertical caret policy previously defined in\n`view.set_visible_policy()`.\n@param view A view.\n@param line The line number in *view* to ensure visible.
495eol_annotation_clear_all buffer.eol_annotation_clear_all(buffer)\nClears EOL annotations from all lines.\n@param buffer A buffer.
496eol_annotation_style buffer.eol_annotation_style (table)\nTable of style numbers for EOL annotation text per line number.\nOnly some style attributes are active in annotations: font,\nsize/size_fractional, bold/weight, italics, fore, back, and character_set.
497eol_annotation_text buffer.eol_annotation_text (table)\nTable of EOL annotation text per line number.
498eol_annotation_visible view.eol_annotation_visible (number)\nThe EOL annotation visibility mode.\n\n* `view.EOLANNOTATION_HIDDEN`\n  EOL Annotations are invisible.\n* `view.EOLANNOTATION_STANDARD`\n  Draw EOL annotations no decoration.\n* `view.EOLANNOTATION_BOXED`\n  Draw EOL annotations outlined with a box.\n\nThe default value is `view.EOLANNOTATION_HIDDEN`.
499eol_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.
500error_patterns textadept.run.error_patterns (table)\nMap of file extensions and lexer names to their associated lists of string\npatterns that match warning and error messages emitted by compile and run\ncommands for those file extensions and lexers.\nPatterns match single lines and contain captures for a filename, line number,\ncolumn number (optional), and warning or error message (optional).\nDouble-clicking a warning or error message takes the user to the source of\nthat warning/error.\nNote: `(.-)` captures in patterns are interpreted as filenames; `(%d+)`\ncaptures are interpreted as line numbers first, and then column numbers; and\nany other capture is treated as warning/error message text.
501events _G.events (module)\nTextadept's core event structure and handlers.\n\nTextadept emits events when you do things like create a new buffer, press a\nkey, click on a menu, etc. You can even emit events yourself using Lua. Each\nevent has a set of event handlers, which are simply Lua functions called in\nthe order they were connected to an event. For example, if you created a\nmodule that needs to do something each time Textadept creates a new buffer,\nconnect a Lua function to the `events.BUFFER_NEW` event:\n\n    events.connect(events.BUFFER_NEW, function()\n      -- Do something here.\n    end)\n\nEvents themselves are nothing special. You do not have to declare one before\nusing it. Events are simply strings containing arbitrary event names. When\neither you or Textadept emits an event, Textadept runs all event handlers\nconnected to the event, passing any given arguments to the event's handler\nfunctions. If an event handler explicitly returns a value that is not `nil`,\nTextadept will not call subsequent handlers. This is useful if you want to\nstop the propagation of an event like a keypress if your event handler\nhandled it, or if you want to use the event framework to pass values.\n
502events _SCINTILLA.events (table)\nMap of Scintilla event IDs to tables of event names and event parameters.
503expr_types _M.lua.expr_types (table)\nMap of expression patterns to their types.\nUsed for type-hinting when showing autocompletions for variables.\nExpressions are expected to match after the '=' sign of a statement.
504extend lexer.extend (pattern)\nA pattern that matches any ASCII extended character (codes 0 to 255).
505extensions textadept.file_types.extensions (table)\nMap of file extensions to their associated lexer names.\nIf the file type is not recognized by its first-line, each file extension is\nmatched against the file's extension.
506extra_ascent view.extra_ascent (number)\nThe amount of pixel padding above lines.\nThe default value is `0`.
507extra_descent view.extra_descent (number)\nThe amount of pixel padding below lines.\nThe default is `0`.
508file_types textadept.file_types (module)\nHandles file type detection for Textadept.
509filename buffer.filename (string)\nThe absolute file path associated with the buffer.
510filesave ui.dialogs.filesave(options)\nPrompts the user with a file save dialog defined by dialog options table\n*options*, returning the string file chosen.\nIf the user canceled the dialog, returns `nil`.\n@param options Table of key-value option pairs for the dialog.\n\n  * `title`: The dialog's title text.\n  * `with_directory`: The initial filesystem directory to show.\n  * `with_file`: The initially chosen filename. This option requires\n    `with_directory` to be set.\n  * `with_extension`: The list of extensions selectable files must have.\n  * `no_create_directories`: Prevent the user from creating new directories.\n    The default value is `false`.\n@return filename or nil
511fileselect ui.dialogs.fileselect(options)\nPrompts the user with a file selection dialog defined by dialog options\ntable *options*, returning the string file selected.\nIf *options*.`select_multiple` is `true`, returns the list of files selected.\nIf the user canceled the dialog, returns `nil`.\n@param options Table of key-value option pairs for the dialog.\n\n  * `title`: The dialog's title text.\n  * `with_directory`: The initial filesystem directory to show.\n  * `with_file`: The initially selected filename. This option requires\n    `with_directory` to be set.\n  * `with_extension`: The list of extensions selectable files must have.\n  * `select_multiple`: Allow the user to select multiple files. The default\n    value is `false`.\n  * `select_only_directories`: Only allow the user to select directories. The\n    default value is `false`.\n@usage ui.dialogs.fileselect{title = 'Open C File', with_directory = _HOME,\n  with_extension = {'c', 'h'}, select_multiple = true}\n@return filename, list of filenames, or nil
512filter_through textadept.editing.filter_through(command)\nPasses the selected text or all buffer text to string shell command *command*\nas standard input (stdin) and replaces the input text with the command's\nstandard output (stdout). *command* may contain shell pipes ('|').\nStandard input is as follows:\n\n1. If no text is selected, the entire buffer is used.\n2. If text is selected and spans a single line, only the selected text is\nused.\n3. If text is selected and spans multiple lines, all text on the lines that\nhave text selected is passed as stdin. However, if the end of the selection\nis at the beginning of a line, only the line ending delimiters from the\nprevious line are included. The rest of the line is excluded.\n@param command The Linux, BSD, macOS, or Windows shell command to filter text\n  through. May contain pipes.
513filteredlist ui.dialogs.filteredlist(options)\nPrompts the user with a filtered list item selection dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\nindex or indices of the selected item or items (depending on whether or not\n*options*.`select_multiple` is `true`).\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with the text of the selected item or items.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\nSpaces in the filter text are treated as wildcards.\n@param options Table of key-value option pairs for the filtered list dialog.\n\n  * `title`: The dialog's title text.\n  * `informative_text`: The dialog's main message text.\n  * `text`: The dialog's initial input text.\n  * `columns`: The list of string column names for list rows.\n  * `items`: The list of string items to show in the filtered list.\n  * `button1`: The right-most button's label. The default value is\n    `_L['OK']`.\n  * `button2`: The middle button's label.\n  * `button3`: The left-most button's label. This option requires `button2`\n    to be set.\n  * `select_multiple`: Allow the user to select multiple items. The default\n    value is `false`.\n  * `search_column`: The column number to filter the input text against. The\n    default value is `1`. This option requires `columns` to be set and\n    contain at least *n* column names.\n  * `output_column`: The column number to use for `string_output`. The\n    default value is `1`. This option requires `columns` to be set and\n    contain at least *n* column names.\n  * `string_output`: Return the selected button's label (instead of its\n    index) and the selected item's text (instead of its index). If no item\n    was selected, returns the dialog's exit status (instead of its exit\n    code). The default value is `false`.\n  * `width`: The dialog's pixel width. The default width stretches nearly the\n    width of Textadept's window.\n  * `height`: The dialog's pixel height.\n  * `float`: Show the dialog on top of all desktop windows. The default value\n    is `false`.\n  * `timeout`: The integer number of seconds the dialog waits for the user to\n    select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.filteredlist{title = 'Title', columns = {'Foo', 'Bar'},\n  items = {'a', 'b', 'c', 'd'}}\n@return selected button or exit code, selected item or list of selected items
514find ui.find (module)\nTextadept's Find & Replace pane.
515find_column buffer.find_column(buffer, line, column)\nReturns the position of column number *column* on line number *line* (taking\ntab and multi-byte characters into account), or the position at the end of\nline *line*.\n@param buffer A buffer.\n@param line The line number in *buffer* to use.\n@param column The column number to use.
516find_entry_text ui.find.find_entry_text (string)\nThe text in the "Find" entry.
517find_in_files ui.find.find_in_files(dir, filter)\nSearches directory *dir* or the user-specified directory for files that match\nsearch text and search options (subject to optional filter *filter*), and\nprints the results to a buffer titled "Files Found", highlighting found text.\nUse the `find_entry_text`, `match_case`, `whole_word`, and `regex` fields to\nset the search text and option flags, respectively.\nA filter determines which files to search in, with the default filter being\n`ui.find.find_in_files_filters[dir]` (if it exists) or `lfs.default_filter`.\nA filter consists of Lua patterns that match file and directory paths to\ninclude or exclude. Patterns are inclusive by default. Exclusive patterns\nbegin with a '!'. If no inclusive patterns are given, any filename is\ninitially considered. As a convenience, file extensions can be specified\nliterally instead of as a Lua pattern (e.g. '.lua' vs. '%.lua$'), and '/'\nalso matches the Windows directory separator ('[/\\]' is not needed).\nIf *filter* is `nil`, the filter from the `ui.find.find_in_files_filters`\ntable for *dir* is used. If that filter does not exist, `lfs.default_filter`\nis used.\n@param dir Optional directory path to search. If `nil`, the user is prompted\n  for one.\n@param filter Optional filter for files and directories to exclude. The\n  default value is `lfs.default_filter` unless a filter for *dir* is defined\n  in `ui.find.find_in_files_filters`.\n@see find_in_files_filters
518find_in_files_filters ui.find.find_in_files_filters (table)\nMap of directory paths to filters used in `ui.find.find_in_files()`.\nThis table is updated when the user manually specifies a filter in the\n"Filter" entry during an "In files" search.\n@see find_in_files
519find_label_text ui.find.find_label_text (string, Write-only)\nThe text of the "Find" label.\nThis is primarily used for localization.
520find_next ui.find.find_next()\nMimics pressing the "Find Next" button.
521find_next_button_text ui.find.find_next_button_text (string, Write-only)\nThe text of the "Find Next" button.\nThis is primarily used for localization.
522find_prev ui.find.find_prev()\nMimics pressing the "Find Prev" button.
523find_prev_button_text ui.find.find_prev_button_text (string, Write-only)\nThe text of the "Find Prev" button.\nThis is primarily used for localization.
524first_visible_line view.first_visible_line (number)\nThe line number of the line at the top of the view.
525float lexer.float (pattern)\nA pattern that matches a floating point number.
526focus ui.command_entry.focus()\nOpens the command entry.
527focus ui.find.focus(options)\nDisplays and focuses the Find & Replace Pane.\n@param options Optional table of `ui.find` field options to initially set.
528fold lexer.fold(lexer, text, start_pos, start_line, start_level)\nDetermines fold points in a chunk of text *text* using lexer *lexer*,\nreturning a table of fold levels associated with line numbers.\n*text* starts at position *start_pos* on line number *start_line* with a\nbeginning fold level of *start_level* in the buffer.\n@param lexer The lexer to fold text with.\n@param text The text in the buffer to fold.\n@param start_pos The position in the buffer *text* starts at, counting from\n  1.\n@param start_line The line number *text* starts on, counting from 1.\n@param start_level The fold level *text* starts on.\n@return table of fold levels associated with line numbers.
529fold_all view.fold_all(view, 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 view A view.\n@param action The fold action to perform. Valid values are:\n  * `view.FOLDACTION_CONTRACT`\n  * `view.FOLDACTION_EXPAND`\n  * `view.FOLDACTION_TOGGLE`
530fold_by_indentation lexer.fold_by_indentation (boolean)\nWhether or not to fold based on indentation level if a lexer does not have\na folder.\nSome lexers automatically enable this option. It is disabled by default.\nThis is an alias for `lexer.property['fold.by.indentation'] = '1|0'`.
531fold_children view.fold_children(view, 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 view A view.\n@param line The line number in *view* to set the fold states for.\n@param action The fold action to perform. Valid values are:\n  * `view.FOLDACTION_CONTRACT`\n  * `view.FOLDACTION_EXPAND`\n  * `view.FOLDACTION_TOGGLE`
532fold_compact lexer.fold_compact (boolean)\nWhether or not blank lines after an ending fold point are included in that\nfold.\nThis option is disabled by default.\nThis is an alias for `lexer.property['fold.compact'] = '1|0'`.
533fold_consecutive_lines lexer.fold_consecutive_lines(prefix)\nReturns for `lexer.add_fold_point()` the parameters needed to fold\nconsecutive lines that start with string *prefix*.\n@param prefix The prefix string (e.g. a line comment).\n@usage lex:add_fold_point(lexer.COMMENT, lexer.fold_consecutive_lines('--'))\n@usage lex:add_fold_point(lexer.COMMENT, lexer.fold_consecutive_lines('//'))\n@usage lex:add_fold_point(\n  lexer.KEYWORD, lexer.fold_consecutive_lines('import'))
534fold_display_text_style view.fold_display_text_style (number)\nThe fold display text mode.\n\n* `view.FOLDDISPLAYTEXT_HIDDEN`\n  Fold display text is not shown.\n* `view.FOLDDISPLAYTEXT_STANDARD`\n  Fold display text is shown with no decoration.\n* `view.FOLDDISPLAYTEXT_BOXED`\n  Fold display text is shown outlined with a box.\n\nThe default value is `view.FOLDDISPLAYTEXT_HIDDEN`.
535fold_expanded view.fold_expanded (table)\nTable of flags per line number that indicate whether or not fold points are\nexpanded for those line numbers.\nSetting expanded fold states does not toggle folds; it only updates fold\nmargin markers. Use `view.toggle_fold()` instead.
536fold_flags view.fold_flags (number, Read-only)\nBit-mask of folding lines to draw in the buffer.\n\n* `view.FOLDFLAG_LINEBEFORE_EXPANDED`\n  Draw lines above expanded folds.\n* `view.FOLDFLAG_LINEBEFORE_CONTRACTED`\n  Draw lines above collapsed folds.\n* `view.FOLDFLAG_LINEAFTER_EXPANDED`\n  Draw lines below expanded folds.\n* `view.FOLDFLAG_LINEAFTER_CONTRACTED`\n  Draw lines below collapsed folds.\n* `view.FOLDFLAG_LEVELNUMBERS`\n  Show hexadecimal fold levels in line margins.\n  This option cannot be combined with `FOLDFLAG_LINESTATE`.\n* `view.FOLDFLAG_LINESTATE`\n  Show line state in line margins.\n  This option cannot be combined with `FOLDFLAG_LEVELNUMBERS`.\n\nThe default value is `0`.
537fold_level buffer.fold_level (table)\nTable of fold level bit-masks per line number.\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.
538fold_level lexer.fold_level (table, Read-only)\nTable of fold level bit-masks for line numbers starting from 1.\nFold level masks are composed of an integer level combined with any of the\nfollowing bits:\n\n* `lexer.FOLD_BASE`\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.
539fold_line view.fold_line(view, line, action)\nContracts, expands, or toggles the fold point on line number *line*,\ndepending on *action*.\n@param view A view.\n@param line The line number in *view* to set the fold state for.\n@param action The fold action to perform. Valid values are:\n  * `view.FOLDACTION_CONTRACT`\n  * `view.FOLDACTION_EXPAND`\n  * `view.FOLDACTION_TOGGLE`
540fold_line_groups lexer.fold_line_groups (boolean)\nWhether or not to fold multiple, consecutive line groups (such as line\ncomments and import statements) and only show the top line.\nThis option is disabled by default.\nThis is an alias for `lexer.property['fold.line.groups'] = '1|0'`.
541fold_on_zero_sum_lines lexer.fold_on_zero_sum_lines (boolean)\nWhether or not to mark as a fold point lines that contain both an ending\nand starting fold point. For example, `} else {` would be marked as a fold\npoint.\nThis option is disabled by default.\nThis is an alias for `lexer.property['fold.on.zero.sum.lines'] = '1|0'`.
542fold_parent buffer.fold_parent (table, Read-only)\nTable of fold point line numbers per child line number.\nA line number of `-1` means no line was found.
543folding lexer.folding (boolean)\nWhether or not folding is enabled for the lexers that support it.\nThis option is disabled by default.\nThis is an alias for `lexer.property['fold'] = '1|0'`.
544fontselect ui.dialogs.fontselect(options)\nPrompts the user with a font selection dialog defined by dialog options\ntable *options*, returning the font selected (including style and size).\nIf the user canceled the dialog, returns `nil`.\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 font preview text.\n  * `font_name`: The initially selected font name.\n  * `font_size`: The initially selected font size. The default value is `12`.\n  * `font_style`: The initially selected font style. The available options\n    are `"regular"`, `"bold"`, `"italic"`, and `"bold italic"`. The default\n    value is `"regular"`.\n  * `float`: Show the dialog on top of all desktop windows. The default value\n    is `false`.\n@usage ui.dialogs.fontselect{title = 'Font', font_name = 'Monospace',\n  font_size = 10}\n@return selected font, including style and size
545forward textadept.history.forward()\nNavigates forwards through the current view's history.
546functions _SCINTILLA.functions (table)\nMap of Scintilla function names to tables containing their IDs, return types,\nwParam types, and lParam types. Types are as follows:\n\n  + `0`: Void.\n  + `1`: Integer.\n  + `2`: Length of the given lParam string.\n  + `3`: Integer position.\n  + `4`: Color, in "0xBBGGRR" format.\n  + `5`: Boolean `true` or `false`.\n  + `6`: Bitmask of Scintilla key modifiers and a key value.\n  + `7`: String parameter.\n  + `8`: String return value.
547get_cur_line buffer.get_cur_line(buffer)\nReturns the current line's text and the caret's position on that line.\n@param buffer A buffer.\n@return string, number
548get_default_fold_display_text view.get_default_fold_display_text(view)\nReturns the default fold display text.\n@param view A view.
549get_last_child buffer.get_last_child(buffer, line, level)\nReturns the line number of the last line after line number *line* whose fold\nlevel is greater than *level*.\nIf *level* is `-1`, returns the level of *line*.\n@param buffer A buffer.\n@param line The line number in *buffer* of a header line.\n@param level The fold level, or `-1` for the level of *line*.
550get_lexer buffer.get_lexer(buffer, current)\nReturns the buffer's lexer name.\nIf *current* is `true`, returns the name of the lexer under the caret in\na multiple-language lexer.\n@param buffer A buffer.\n@param current Whether or not to get the lexer at the current caret position\n  in multi-language lexers. The default is `false` and returns the parent\n  lexer.
551get_line buffer.get_line(buffer, line)\nReturns the text on line number *line*, including end of line characters.\n@param buffer A buffer.\n@param line The line number in *buffer* to use.\n@return string, number
552get_project_root io.get_project_root(path, submodule)\nReturns the root directory of the project that contains filesystem path\n*path*.\nIn order to be recognized, projects must be under version control. Recognized\nVCSes are Bazaar, Fossil, Git, Mercurial, and SVN.\n@param path Optional filesystem path to a project or a file contained within\n  a project. The default value is the buffer's filename or the current\n  working directory. This parameter may be omitted.\n@param submodule Optional flag that indicates whether or not to return the\n  root of the current submodule (if applicable). The default value is\n  `false`.\n@return string root or nil
553get_rule lexer.get_rule(lexer, id)\nReturns the rule identified by string *id*.\n@param lexer The lexer to fetch a rule from.\n@param id The id of the rule to fetch.\n@return pattern
554get_sel_text buffer.get_sel_text(buffer)\nReturns the selected text.\nMultiple selections are included in order with no delimiters. Rectangular\nselections are included from top to bottom with end of line characters.\nVirtual space is not included.\n@param buffer A buffer.\n@return string, number
555get_split_table ui.get_split_table()\nReturns a split table that contains Textadept's current split view structure.\nThis is primarily used in session saving.\n@return table of split views. Each split view entry is a table with 4\n  fields: `1`, `2`, `vertical`, and `size`. `1` and `2` have values of either\n  nested split view entries or the views themselves; `vertical` is a flag\n  that indicates if the split is vertical or not; and `size` is the integer\n  position of the split resizer.
556get_text buffer.get_text(buffer)\nReturns the buffer's text.\n@param buffer A buffer.
557goto_buffer view.goto_buffer(view, buffer)\nSwitches to buffer *buffer* or the buffer *buffer* number of buffers relative\nto the current one.\nEmits `BUFFER_BEFORE_SWITCH` and `BUFFER_AFTER_SWITCH` events.\n@param view The view to switch buffers in.\n@param buffer A buffer or relative buffer number (typically 1 or -1).\n@see _G._BUFFERS\n@see events.BUFFER_BEFORE_SWITCH\n@see events.BUFFER_AFTER_SWITCH
558goto_error textadept.run.goto_error(line_num, next)\nJumps to the source of the recognized compile/run warning or error on line\nnumber *line_num* in the message buffer.\nIf *line_num* is `nil`, jumps to the next or previous warning or error,\ndepending on boolean *next*. Displays an annotation with the warning or error\nmessage if possible.\n@param line_num Optional line number in the message buffer that contains the\n  compile/run warning or error to go to. This parameter may be omitted\n  completely.\n@param next Optional flag indicating whether to go to the next recognized\n  warning/error or the previous one. Only applicable when *line_num* is\n  `nil`.\n@see error_patterns
559goto_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 basename of *filename* to match a buffer's\n`filename`. If the requested file was not found, it is opened in the desired\nview.\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`.
560goto_file_found ui.find.goto_file_found(line_num, next)\nJumps to the source of the find in files search result on line number\n*line_num* in the buffer titled "Files Found" or, if *line_num* is `nil`,\njumps to the next or previous search result, depending on boolean *next*.\n@param line_num Optional line number in the files found buffer that contains\n  the search result to go to. This parameter may be omitted completely.\n@param next Optional flag indicating whether to go to the next search result\n  or the previous one. Only applicable when *line_num* is `nil`.
561goto_line buffer.goto_line(buffer, line)\nMoves the caret to the beginning of line number *line* and scrolls it into\nview, event if *line* is hidden.\n@param buffer A buffer.\n@param line The line number in *buffer* to go to.
562goto_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.
563goto_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.
564goto_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.
565goto_view ui.goto_view(view)\nShifts to view *view* or the view *view* number of views relative to the\ncurrent one.\nEmits `VIEW_BEFORE_SWITCH` and `VIEW_AFTER_SWITCH` events.\n@param view A view or relative view number (typically 1 or -1).\n@see _G._VIEWS\n@see events.VIEW_BEFORE_SWITCH\n@see events.VIEW_AFTER_SWITCH
566graph lexer.graph (pattern)\nA pattern that matches any graphical character ('!' to '~').
567h_scroll_bar view.h_scroll_bar (bool)\nDisplay the horizontal scroll bar.\nThe default value is `true`.
568height ui.command_entry.height (number)\nThe height in pixels of the command entry.
569hex_num lexer.hex_num (pattern)\nA pattern that matches a hexadecimal number.
570hide_lines view.hide_lines(view, start_line, end_line)\nHides the range of lines between line numbers *start_line* to *end_line*.\nThis has no effect on fold levels or fold flags and the first line cannot be\nhidden.\n@param view A view.\n@param start_line The start line of the range of lines in *view* to hide.\n@param end_line The end line of the range of lines in *view* to hide.
571highlight_all_matches ui.find.highlight_all_matches (boolean)\nWhether or not to highlight all occurrences of found text in the current\nbuffer.\nThe default value is `false`.
572highlight_guide view.highlight_guide (number)\nThe indentation guide column number to also highlight when highlighting\nmatching braces, or `0` to stop indentation guide highlighting.
573highlight_words textadept.editing.highlight_words (number)\nThe word highlight mode.\n\n* `textadept.editing.HIGHLIGHT_CURRENT`\n  Automatically highlight all instances of the current word.\n* `textadept.editing.HIGHLIGHT_SELECTED`\n  Automatically highlight all instances of the selected word.\n* `textadept.editing.HIGHLIGHT_NONE`\n  Do not automatically highlight words.\n\nThe default value is `textadept.editing.HIGHLIGHT_NONE`.
574history textadept.history (module)\nRecords buffer positions within Textadept views over time and allows for\nnavigating through that history.\n\nThis module listens for text edit events and buffer switch events. Each time\nan insertion or deletion occurs, its location is recorded in the current\nview's location history. If the edit is close enough to the previous record,\nthe previous record is amended. Each time a buffer switch occurs, the before\nand after locations are also recorded.
575home buffer.home(buffer)\nMoves the caret to the beginning of the current line.\n@param buffer A buffer.
576home_display buffer.home_display(buffer)\nMoves the caret to the beginning of the current wrapped line.\n@param buffer A buffer.
577home_display_extend buffer.home_display_extend(buffer)\nMoves the caret to the beginning of the current wrapped line, extending the\nselected text to the new position.\n@param buffer A buffer.
578home_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.
579home_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.
580home_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.
581home_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.
582iconv string.iconv(text, new, old)\nConverts string *text* from encoding *old* to encoding *new* using GNU\nlibiconv, returning the string result.\nRaises an error if the encoding conversion failed.\nValid encodings are GNU libiconv'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.
583idle_styling view.idle_styling (number)\nThe idle styling mode.\nThis mode has no effect when `view.wrap_mode` is on.\n\n* `view.IDLESTYLING_NONE`\n  Style all the currently visible text before displaying it.\n* `view.IDLESTYLING_TOVISIBLE`\n  Style some text before displaying it and then style the rest\n  incrementally in the background as an idle-time task.\n* `view.IDLESTYLING_AFTERVISIBLE`\n  Style text after the currently visible portion in the background.\n* `view.IDLESTYLING_ALL`\n  Style text both before and after the visible text in the background.\n\nThe default value is `view.IDLESTYLING_NONE`.
584in_files ui.find.in_files (bool)\nFind search text in a directory of files.\nThe default value is `false`.
585in_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.
586incremental ui.find.incremental (bool)\nFind search text incrementally as it is typed.\nThe default value is `false`.
587indent 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`.
588indent_amount lexer.indent_amount (table, Read-only)\nTable of indentation amounts in character columns, for line numbers\nstarting from 1.
589indentation_guides view.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* `view.IV_NONE`\n  Does not draw any guides.\n* `view.IV_REAL`\n  Draw guides only within indentation whitespace.\n* `view.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* `view.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 `view.IV_NONE`.
590indic_alpha view.indic_alpha (table)\nTable of fill color alpha values, ranging from `0` (transparent) to `255`\n(opaque), for indicator numbers from `1` to `32` whose styles are either\n`INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.\nThe default values are `view.ALPHA_NOALPHA`, for no alpha.
591indic_fore view.indic_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, for indicator numbers\nfrom `1` to `32`.\nChanging an indicator's foreground color resets that indicator's hover\nforeground color.
592indic_hover_fore view.indic_hover_fore (table)\nTable of hover foreground colors, in "0xBBGGRR" format, for indicator\nnumbers from `1` to `32`.\nThe default values are the respective indicator foreground colors.
593indic_hover_style view.indic_hover_style (table)\nTable of hover styles for indicators numbers from `1` to `32`. An\nindicator's hover style drawn when either the cursor hovers over that\nindicator or the caret is within that indicator.\nThe default values are the respective indicator styles.
594indic_outline_alpha view.indic_outline_alpha (table)\nTable of outline color alpha values, ranging from `0` (transparent) to\n`255` (opaque), for indicator numbers from `1` to `32` whose styles are\neither `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.\nThe default values are `view.ALPHA_NOALPHA`, for no alpha.
595indic_style view.indic_style (table)\nTable of styles for indicator numbers from `1` to `32`.\n\n* `view.INDIC_PLAIN`\n  An underline.\n* `view.INDIC_SQUIGGLE`\n  A squiggly underline 3 pixels in height.\n* `view.INDIC_TT`\n  An underline of small 'T' shapes.\n* `view.INDIC_DIAGONAL`\n  An underline of diagonal hatches.\n* `view.INDIC_STRIKE`\n  Strike out.\n* `view.INDIC_HIDDEN`\n  Invisible.\n* `view.INDIC_BOX`\n  A bounding box.\n* `view.INDIC_ROUNDBOX`\n  A translucent box with rounded corners around the text. Use\n  `view.indic_alpha` and `view.indic_outline_alpha` to set the\n  fill and outline transparency, respectively. Their default values are\n  `30` and `50`.\n* `view.INDIC_STRAIGHTBOX`\n  Similar to `INDIC_ROUNDBOX` but with sharp corners.\n* `view.INDIC_DASH`\n  A dashed underline.\n* `view.INDIC_DOTS`\n  A dotted underline.\n* `view.INDIC_SQUIGGLELOW`\n  A squiggly underline 2 pixels in height.\n* `view.INDIC_DOTBOX`\n  Similar to `INDIC_STRAIGHTBOX` but with a dotted outline.\n  Translucency alternates between `view.indic_alpha` and\n  `view.indic_outline_alpha` starting with the top-left pixel.\n* `view.INDIC_SQUIGGLEPIXMAP`\n  Identical to `INDIC_SQUIGGLE` but draws faster by using a pixmap instead\n  of multiple line segments.\n* `view.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 the target in Asian language\n  input composition.\n* `view.INDIC_COMPOSITIONTHIN`\n  A 1-pixel thick underline just before the bottom of the line inset by 1\n  pixel on either side. Similar in appearance to the non-target ranges in\n  Asian language input composition.\n* `view.INDIC_FULLBOX`\n  Similar to `INDIC_STRAIGHTBOX` but extends to the top of its line,\n  potentially touching any similar indicators on the line above.\n* `view.INDIC_TEXTFORE`\n  Changes the color of text to an indicator's foreground color.\n* `view.INDIC_POINT`\n  A triangle below the start of the indicator range.\n* `view.INDIC_POINTCHARACTER`\n  A triangle below the center of the first character of the indicator\n  range.\n* `view.INDIC_GRADIENT`\n  A box with a vertical gradient from solid on top to transparent on\n  bottom.\n* `view.INDIC_GRADIENTCENTER`\n  A box with a centered gradient from solid in the middle to transparent on\n  the top and bottom.\n\nUse `_SCINTILLA.next_indic_number()` for custom indicators.\nChanging an indicator's style resets that indicator's hover style.
596indic_under view.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 `1` to `32`.\nThe default values are `false`.
597indicator_all_on_for buffer.indicator_all_on_for(buffer, pos)\nReturns a bit-mask that represents which indicators are on at position *pos*.\nThe first bit is set if indicator 1 is on, the second bit for indicator 2,\netc.\n@param buffer A buffer.\n@param pos The position in *buffer* to get indicators at.\n@return number
598indicator_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.
599indicator_current buffer.indicator_current (number)\nThe indicator number in the range of `1` to `32` used by\n`buffer.indicator_fill_range()` and\n`buffer.indicator_clear_range()`.
600indicator_end buffer.indicator_end(buffer, indicator, pos)\nReturns the next boundary position, starting from position *pos*, of\nindicator number *indicator*, in the range of `1` to `32`.\nReturns `1` if *indicator* was not found.\n@param buffer A buffer.\n@param indicator An indicator number in the range of `1` to `32`.\n@param pos The position in *buffer* of the indicator.
601indicator_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.
602indicator_start buffer.indicator_start(buffer, indicator, pos)\nReturns the previous boundary position, starting from position *pos*, of\nindicator number *indicator*, in the range of `1` to `32`.\nReturns `1` if *indicator* was not found.\n@param buffer A buffer.\n@param indicator An indicator number in the range of `1` to `32`.\n@param pos The position in *buffer* of the indicator.
603inputbox ui.dialogs.inputbox(options)\nPrompts the user with an inputbox dialog defined by dialog options table\n*options*, returning the selected button's index along with the user's\ninput text (the latter as a string or table, depending on the type of\n*options*.`informative_text`).\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with the user's 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 inputbox.\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  * `button1`: The right-most button's label. The default value is\n    `_L['OK']`.\n  * `button2`: The middle button's label.\n  * `button3`: The left-most button's label. This option requires `button2`\n    to be set.\n  * `string_output`: Return the selected button's label (instead of its\n    index) or the dialog's exit status instead of the button's index (instead\n    of its exit code). The default value is `false`.\n  * `width`: The dialog's pixel width.\n  * `height`: The dialog's pixel height.\n  * `float`: Show the dialog on top of all desktop windows. The default value\n    is `false`.\n  * `timeout`: The integer number of seconds the dialog waits for the user to\n    select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.inputbox{title = 'Goto Line', informative_text = 'Line:',\n  text = '1'}\n@return selected button or exit code, input text
604insert textadept.snippets.insert(text)\nInserts snippet text *text* or the snippet assigned to the trigger word\nbehind the caret.\nOtherwise, if a snippet is active, goes to the active snippet's next\nplaceholder. Returns `false` if no action was taken.\n@param text Optional snippet text to insert. If `nil`, attempts to insert a\n  new snippet based on the trigger, the word behind caret, and the current\n  lexer.\n@return `false` if no action was taken; `nil` otherwise.\n@see buffer.word_chars
605insert_text buffer.insert_text(buffer, pos, text)\nInserts string *text* at position *pos*, removing any selections.\nIf *pos* is `-1`, inserts *text* at the caret position.\nIf the caret is after the *pos*, it is moved appropriately, but not scrolled\ninto view.\n@param buffer A buffer.\n@param pos The position in *buffer* to insert text at, or `-1` for the\n  current position.\n@param text The text to insert.
606integer lexer.integer (pattern)\nA pattern that matches either a decimal, hexadecimal, or octal number.
607io _G.io (module)\nExtends Lua's `io` library with Textadept functions for working with files.
608is_range_word buffer.is_range_word(buffer, start_pos, end_pos)\nReturns whether or not the the positions *start_pos* and *end_pos* are at\nword boundaries.\n@param buffer A buffer.\n@param start_pos The start position of the range of text in *buffer* to\n  check for a word boundary at.\n@param end_pos The end position of the range of text in *buffer* to check for\n  a word boundary at.
609join_lines textadept.editing.join_lines()\nJoins the currently selected lines or the current line with the line below\nit.\nAs long as any part of a line is selected, the entire line is eligible for\njoining.
610keychain keys.keychain (table)\nThe current chain of key sequences. (Read-only.)
611keys _G.keys (module)\nManages key bindings in Textadept.
612keys _G.keys (table)\nMap of key bindings to commands, with language-specific key tables assigned\nto a lexer name key.
613keys textadept.keys (module)\nDefines key bindings for Textadept.\nThis set of key bindings is pretty standard among other text editors, at\nleast for basic editing commands and movements.
614kill spawn_proc:kill(signal)\nKills running process *spawn_proc*, or sends it Unix signal *signal*.\n@param signal Optional Unix signal to send to *spawn_proc*. The default value\n  is 9 (`SIGKILL`), which kills the process.
615last_char_includes lexer.last_char_includes(s)\nCreates and returns a pattern that verifies the first non-whitespace\ncharacter behind the current match position is in string set *s*.\n@param s String character set like one passed to `lpeg.S()`.\n@usage local regex = lexer.last_char_includes('+-*!%^&|=,([{') *\n  lexer.range('/')\n@return pattern
616length buffer.length (number, Read-only)\nThe number of bytes in the buffer.
617lex lexer.lex(lexer, text, init_style)\nLexes a chunk of text *text* (that has an initial style number of\n*init_style*) using lexer *lexer*, returning a table of token names and\npositions.\n@param lexer The lexer to lex text 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.
618lexer _G.lexer (module)\nLexes Scintilla documents and source code with Lua and LPeg.
619lfs _G.lfs (module)\nExtends the `lfs` library to find files in directories and determine absolute\nfile paths.
620line_copy buffer.line_copy(buffer)\nCopies the current line to the clipboard.\n@param buffer A buffer.
621line_count buffer.line_count (number, Read-only)\nThe number of lines in the buffer.\nThere is always at least one.
622line_cut buffer.line_cut(buffer)\nCuts the current line to the clipboard.\n@param buffer A buffer.
623line_delete buffer.line_delete(buffer)\nDeletes the current line.\n@param buffer A buffer.
624line_down buffer.line_down(buffer)\nMoves the caret down one line.\n@param buffer A buffer.
625line_down_extend buffer.line_down_extend(buffer)\nMoves the caret down one line, extending the selected text to the new\nposition.\n@param buffer A buffer.
626line_down_rect_extend buffer.line_down_rect_extend(buffer)\nMoves the caret down one line, extending the rectangular selection to the new\nposition.\n@param buffer A buffer.
627line_duplicate buffer.line_duplicate(buffer)\nDuplicates the current line on a new line below.\n@param buffer A buffer.
628line_end buffer.line_end(buffer)\nMoves the caret to the end of the current line.\n@param buffer A buffer.
629line_end_display buffer.line_end_display(buffer)\nMoves the caret to the end of the current wrapped line.\n@param buffer A buffer.
630line_end_display_extend buffer.line_end_display_extend(buffer)\nMoves the caret to the end of the current wrapped line, extending the\nselected text to the new position.\n@param buffer A buffer.
631line_end_extend buffer.line_end_extend(buffer)\nMoves the caret to the end of the current line, extending the selected text\nto the new position.\n@param buffer A buffer.
632line_end_position buffer.line_end_position (table, Read-only)\nTable of positions at the ends of lines, but before any end of line\ncharacters, per line number.
633line_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.
634line_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.
635line_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.
636line_from_position buffer.line_from_position(buffer, pos)\nReturns the line number of the line that contains position *pos*.\nReturns `1` if *pos* is less than 1 or `buffer.line_count` if *pos* is\ngreater than `buffer.length + 1`.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the line number of.\n@return number
637line_from_position lexer.line_from_position(pos)\nReturns the line number (starting from 1) of the line that contains position\n*pos*, which starts from 1.\n@param pos The position to get the line number of.\n@return number
638line_indent_position buffer.line_indent_position (table, Read-only)\nTable of positions at the ends of indentation per line number.
639line_indentation buffer.line_indentation (table)\nTable of column indentation amounts per line number.
640line_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
641line_reverse buffer.line_reverse(buffer)\nReverses the order of the selected lines.\n@param buffer A buffer.
642line_scroll view.line_scroll(view, columns, lines)\nScrolls the buffer right *columns* columns and down *lines* lines.\nNegative values are allowed.\n@param view A view.\n@param columns The number of columns to scroll horizontally.\n@param lines The number of lines to scroll vertically.
643line_scroll_down view.line_scroll_down(view)\nScrolls the buffer down one line, keeping the caret visible.\n@param view A view.
644line_scroll_up view.line_scroll_up(view)\nScrolls the buffer up one line, keeping the caret visible.\n@param view A view.
645line_state lexer.line_state (table)\nTable of integer line states for line numbers starting from 1.\nLine states can be used by lexers for keeping track of persistent states.
646line_transpose buffer.line_transpose(buffer)\nSwaps the current line with the previous one.\n@param buffer A buffer.
647line_up buffer.line_up(buffer)\nMoves the caret up one line.\n@param buffer A buffer.
648line_up_extend buffer.line_up_extend(buffer)\nMoves the caret up one line, extending the selected text to the new position.\n@param buffer A buffer.
649line_up_rect_extend buffer.line_up_rect_extend(buffer)\nMoves the caret up one line, extending the rectangular selection to the new\nposition.\n@param buffer A buffer.
650line_visible view.line_visible (table, Read-only)\nTable of flags per line number that indicate whether or not lines are\nvisible for those line numbers.
651lines_join buffer.lines_join(buffer)\nJoins the lines in the target range, inserting spaces between the words\njoined at line boundaries.\n@param buffer A buffer.
652lines_on_screen view.lines_on_screen (number, Read-only)\nThe number of completely visible lines in the view.\nIt is possible to have a partial line visible at the bottom of the view.
653lines_split buffer.lines_split(buffer, pixel_width, width)\nSplits the lines in the target range into lines *width* pixels wide.\nIf *width* is `0`, splits the lines in the target range into lines as wide as\nthe view.\n@param buffer A buffer.\n@param width The pixel width to split lines at. When `0`, uses the width of\n  the view.
654load lexer.load(name, alt_name, cache)\nInitializes or loads and returns the lexer of string name *name*.\nScintilla calls this function in order to load a lexer. Parent lexers also\ncall this function in order to load child lexers and vice-versa. The user\ncalls this function in order to load a lexer when using Scintillua as a Lua\nlibrary.\n@param name The name of the lexing language.\n@param alt_name The alternate name of the lexing language. This is useful for\n  embedding the same child lexer with multiple sets of start and end tokens.\n@param cache Flag indicating whether or not to load lexers from the cache.\n  This should only be `true` when initially loading a lexer (e.g. not from\n  within another lexer for embedding purposes).\n  The default value is `false`.\n@return lexer object
655load textadept.macros.load(filename)\nLoads a macro from file *filename* or the user-selected file.\n@param filename Optional macro file to load. If `nil`, the user is prompted\n  for one.
656load textadept.session.load(filename)\nLoads session file *filename* or the user-selected session, returning `true`\nif a session file was opened and read.\nTextadept restores split views, opened buffers, cursor information, recent\nfiles, and bookmarks.\n@param filename Optional absolute path to the session file to load. If `nil`,\n  the user is prompted for one.\n@usage textadept.session.load(filename)\n@return `true` if the session file was opened and read; `nil` otherwise.
657lower lexer.lower (pattern)\nA pattern that matches any lower case character ('a'-'z').
658lower_case buffer.lower_case(buffer)\nConverts the selected text to lower case letters.\n@param buffer A buffer.
659lua _M.lua (module)\nThe lua module.\nIt provides utilities for editing Lua code.
660macros textadept.macros (module)\nA module for recording, playing, saving, and loading keyboard macros.\nMenu commands are also recorded.\nAt this time, typing into multiple cursors during macro playback is not\nsupported.
661main_selection buffer.main_selection (number)\nThe number of the main or most recent selection.\nOnly an existing selection can be made main.
662margin_back_n view.margin_back_n (table)\nTable of background colors, in "0xBBGGRR" format, of margin numbers from\n`1` to `view.margins` (`5` by default).\nOnly affects margins of type `view.MARGIN_COLOR`.
663margin_cursor_n view.margin_cursor_n (table)\nTable of cursor types shown over margin numbers from `1` to\n`view.margins` (`5` by default).\n\n* `view.CURSORARROW`\n  Normal arrow cursor.\n* `view.CURSORREVERSEARROW`\n  Reversed arrow cursor.\n\nThe default values are `view.CURSORREVERSEARROW`.
664margin_left view.margin_left (number)\nThe pixel size of the left margin of the buffer text.\nThe default value is `1`.
665margin_mask_n view.margin_mask_n (table)\nTable of bit-masks of markers whose symbols marker symbol margins can\ndisplay for margin numbers from `1` to `view.margins` (`5` by default).\nBit-masks are 32-bit values whose bits correspond to the 32 available\nmarkers.\nThe default values are `0`, `view.MASK_FOLDERS`, `0`, `0`, and `0`, for\na line margin and logical marker margin.
666margin_options view.margin_options (number)\nA bit-mask of margin option settings.\n\n* `view.MARGINOPTION_NONE`\n  None.\n* `view.MARGINOPTION_SUBLINESELECT`\n  Select only a wrapped line's sub-line (rather than the entire line) when\n  the line number margin is clicked.\n\nThe default value is `view.MARGINOPTION_NONE`.
667margin_right view.margin_right (number)\nThe pixel size of the right margin of the buffer text.\nThe default value is `1`.
668margin_sensitive_n view.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 `1` to `view.margins` (`5`\nby default).\nThe default values are `false`.
669margin_style buffer.margin_style (table)\nTable of style numbers in the text margin per line number.\nOnly some style attributes are active in text margins: font, size, bold,\nitalics, fore, and back.
670margin_text buffer.margin_text (table)\nTable of text displayed in text margins per line number.
671margin_text_clear_all buffer.margin_text_clear_all(buffer)\nClears all text in text margins.\n@param buffer A buffer.
672margin_type_n view.margin_type_n (table)\nTable of margin types for margin numbers from `1` to `view.margins` (`5`\nby default).\n\n* `view.MARGIN_SYMBOL`\n  A marker symbol margin.\n* `view.MARGIN_NUMBER`\n  A line number margin.\n* `view.MARGIN_BACK`\n  A marker symbol margin whose background color matches the default text\n  background color.\n* `view.MARGIN_FORE`\n  A marker symbol margin whose background color matches the default text\n  foreground color.\n* `view.MARGIN_TEXT`\n  A text margin.\n* `view.MARGIN_RTEXT`\n  A right-justified text margin.\n* `view.MARGIN_COLOR`\n  A marker symbol margin whose background color is configurable.\n\nThe default value for the first margin is `view.MARGIN_NUMBER`, followed\nby `view.MARGIN_SYMBOL` for the rest.
673margin_width_n view.margin_width_n (table)\nTable of pixel margin widths for margin numbers from `1` to\n`view.margins` (`5` by default).
674margins view.margins (number)\nThe number of margins.\nThe default value is `5`.
675marker_add buffer.marker_add(buffer, line, marker)\nAdds marker number *marker*, in the range of `1` to `32`, 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`-1` 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 `1` to `32` to add.\n@return number
676marker_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 1, the second bit for marker number\n2, and so on up to marker number 32.\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 the first bit to set\n  marker 1, the second bit for marker 2 and so on.
677marker_alpha view.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`1` to `32`.\nThe default values are `view.ALPHA_NOALPHA`, for no alpha.
678marker_back view.marker_back (table, Write-only)\nTable of background colors, in "0xBBGGRR" format, of marker numbers from\n`1` to `32`.
679marker_back_selected view.marker_back_selected (table, Write-only)\nTable of background colors, in "0xBBGGRR" format, of markers whose folding\nblocks are selected for marker numbers from `1` to `32`.
680marker_define view.marker_define(view, marker, symbol)\nAssigns marker symbol *symbol* to marker number *marker*, in the range of `1`\nto `32`.\n*symbol* is shown in marker symbol margins next to lines marked with\n*marker*.\n@param view A view.\n@param marker The marker number in the range of `1` to `32` to set *symbol*\n  for.\n@param symbol The marker symbol: `buffer.MARK_*`.\n@see _SCINTILLA.next_marker_number
681marker_define_pixmap view.marker_define_pixmap(view, marker, pixmap)\nAssociates marker number *marker*, in the range of `1` to `32`, with XPM\nimage *pixmap*.\nThe `view.MARK_PIXMAP` marker symbol must be assigned to *marker*.\n*pixmap* is shown in marker symbol margins next to lines marked with\n*marker*.\n@param view A view.\n@param marker The marker number in the range of `1` to `32` to define\n  pixmap *pixmap* for.\n@param pixmap The string pixmap data.
682marker_define_rgba_image view.marker_define_rgba_image(view, marker, pixels)\nAssociates marker number *marker*, in the range of `1` to `32`, with RGBA\nimage *pixels*.\nThe dimensions for *pixels* (`view.rgba_image_width` and\n`view.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 `view.MARK_RGBAIMAGE` marker symbol must be assigned to *marker*.\n*pixels* is shown in symbol margins next to lines marked with *marker*.\n@param view A view.\n@param marker The marker number in the range of `1` to `32` 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 color 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]`.
683marker_delete buffer.marker_delete(buffer, line, marker)\nDeletes marker number *marker*, in the range of `1` to `32`, 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 `1` to `32` to delete from\n  *line*, or `-1` to delete all markers from the line.
684marker_delete_all buffer.marker_delete_all(buffer, marker)\nDeletes marker number *marker*, in the range of `1` to `32`, 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 `1` to `32` to delete from\n  all lines, or `-1` to delete all markers from all lines.
685marker_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()`.
686marker_enable_highlight view.marker_enable_highlight(view, enabled)\nHighlights the margin fold markers for the current fold block if *enabled* is\n`true`.\n@param view A view.\n@param enabled Whether or not to enable highlight.
687marker_fore view.marker_fore (table, Write-only)\nTable of foreground colors, in "0xBBGGRR" format, of marker numbers from\n`1` to `32`.
688marker_get buffer.marker_get(buffer, line)\nReturns a bit-mask that represents the markers on line number *line*.\nThe first bit is set if marker number 1 is present, the second bit for marker\nnumber 2, and so on.\n@param buffer A buffer.\n@param line The line number to get markers on.\n@return number
689marker_handle_from_line buffer.marker_handle_from_line(buffer, line, n)\nReturns the handle of the *n*th marker on line number *line*, or `-1` if no\nsuch marker exists.\n@param buffer A buffer.\n@param line The line number to get markers on.\n@param n The marker to get the handle of.
690marker_line_from_handle buffer.marker_line_from_handle(buffer, handle)\nReturns the line number of the line that contains the marker with handle\n*handle* (returned `buffer.marker_add()`), 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
691marker_next buffer.marker_next(buffer, line, marker_mask)\nReturns the first line number, starting at line number *line*, that contains\nall of the markers represented by marker bit-mask *marker_mask*.\nReturns `-1` if no line was found.\nThe first bit is set if marker 1 is set, the second bit for marker 2, etc.,\nup to marker 32.\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 the first bit to find\n  marker 1, the second bit for marker 2, and so on.\n@return number
692marker_number_from_line buffer.marker_number_from_line(buffer, line, n)\nReturns the number of the *n*th marker on line number *line*, or `-1` if no\nsuch marker exists.\n@param buffer A buffer.\n@param line The line number to get markers on.\n@param n The marker to get the number of.
693marker_previous buffer.marker_previous(buffer, line, marker_mask)\nReturns the last line number, before or on line number *line*, that contains\nall of the markers represented by marker bit-mask *marker_mask*.\nReturns `-1` if no line was found.\nThe first bit is set if marker 1 is set, the second bit for marker 2, etc.,\nup to marker 32.\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 the first bit to find\n  marker 1, the second bit for marker 2, and so on.\n@return number
694marker_symbol_defined view.marker_symbol_defined(view, marker)\nReturns the symbol assigned to marker number *marker*, in the range of `1` to\n`32`, used in `view.marker_define()`,\n`view.marker_define_pixmap()`, or `view.marker_define_rgba_image()`.\n@param view A view.\n@param marker The marker number in the range of `1` to `32` to get the symbol\n  of.\n@return number
695match_case ui.find.match_case (bool)\nMatch search text case sensitively.\nThe default value is `false`.
696match_case_label_text ui.find.match_case_label_text (string, Write-only)\nThe text of the "Match case" label.\nThis is primarily used for localization.
697maximized ui.maximized (bool)\nWhether or not Textadept's window is maximized.
698maximum_history_size textadept.history.maximum_history_size (number)\nThe maximum number of history records to keep per view.\nThe default value is `100`.
699menu textadept.menu (module)\nDefines the menus used by Textadept.\nMenus are simply tables of menu items and submenus and may be edited in\nplace. A menu item itself is a table whose first element is a menu label and\nwhose second element is a menu command to run. Submenus have `title` keys\nassigned to string text.
700menu ui.menu(menu_table)\nLow-level function for creating a menu from table *menu_table* and returning\nthe userdata.\nYou probably want to use the higher-level `textadept.menu.menubar`,\n`textadept.menu.context_menu`, or `textadept.menu.tab_context_menu` tables.\nEmits a `MENU_CLICKED` event when a menu item is selected.\n@param menu_table A table defining the menu. It is an ordered list of tables\n  with a string menu item, integer menu ID, and optional GDK keycode and\n  modifier mask. The latter two are used to display key shortcuts in the\n  menu. '_' characters are treated as a menu mnemonics. If the menu item is\n  empty, a menu separator item is created. Submenus are just nested\n  menu-structure tables. Their title text is defined with a `title` key.\n@usage ui.menu{ {'_New', 1}, {'_Open', 2}, {''}, {'_Quit', 4} }\n@usage ui.menu{ {'_New', 1, string.byte('n'), 4} } -- 'Ctrl+N'\n@see events.MENU_CLICKED\n@see textadept.menu.menubar\n@see textadept.menu.context_menu\n@see textadept.menu.tab_context_menu
701menubar textadept.menu.menubar (table)\nThe default main menubar.\nIndividual menus, submenus, and menu items can be retrieved by name in\naddition to table index number.
702menubar ui.menubar (table)\nA table of menus defining a menubar. (Write-only).\nThis is a low-level field. You probably want to use the higher-level\n`textadept.menu.menubar`.\n@see textadept.menu.menubar
703minimum_line_distance textadept.history.minimum_line_distance (number)\nThe minimum number of lines between distinct history records.\nThe default value is `3`.
704mode keys.mode (string)\nThe current key mode.\nWhen non-`nil`, all key bindings defined outside of `keys[mode]` are\nignored.\nThe default value is `nil`.
705modify buffer.modify (bool, Read-only)\nWhether or not the buffer has unsaved changes.
706modify_rule lexer.modify_rule(lexer, id, rule)\nReplaces in lexer *lexer* the existing rule identified by string *id* with\npattern *rule*.\n@param lexer The lexer to modify.\n@param id The id associated with this rule.\n@param rule The LPeg pattern of the rule.
707mouse_dwell_time view.mouse_dwell_time (number)\nThe number of milliseconds the mouse must idle before generating a\n`DWELL_START` event. A time of `view.TIME_FOREVER` will never generate\none.
708mouse_selection_rectangular_switch view.mouse_selection_rectangular_switch (bool)\nWhether or not pressing `view.rectangular_selection_modifier` when\nselecting text normally with the mouse turns on rectangular selection.\nThe default value is `false`.
709move_caret_inside_view buffer.move_caret_inside_view(buffer)\nMoves the caret into view if it is not already, removing any selections.\n@param buffer A buffer.
710move_extends_selection buffer.move_extends_selection (bool, Read-only)\nWhether or not regular caret movement alters the selected text.\n`buffer.selection_mode` dictates this property.
711move_selected_lines_down buffer.move_selected_lines_down(buffer)\nShifts the selected lines down one line.\n@param buffer A buffer.
712move_selected_lines_up buffer.move_selected_lines_up(buffer)\nShifts the selected lines up one line.\n@param buffer A buffer.
713msgbox ui.dialogs.msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options*, returning the selected button's index.\nIf *options*.`string_output` is `true`, returns the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n  * `title`: The dialog's title text.\n  * `text`: The dialog's main message text.\n  * `informative_text`: The dialog's extra informative text.\n  * `icon`: The dialog's GTK stock icon name. Examples are\n    "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n    "gtk-dialog-warning". The dialog does not display an icon by default.\n  * `icon_file`: The dialog's icon file path. This option has no effect when\n    `icon` is set.\n  * `button1`: The right-most button's label. The default value is\n    `_L['OK']`.\n  * `button2`: The middle button's label.\n  * `button3`: The left-most button's label. This option requires `button2`\n    to be set.\n  * `string_output`: Return the selected button's label (instead of its\n    index) or the dialog's exit status instead of the button's index (instead\n    of its exit code). The default value is `false`.\n  * `width`: The dialog's pixel width.\n  * `height`: The dialog's pixel height.\n  * `float`: Show the dialog on top of all desktop windows. The default value\n    is `false`.\n  * `timeout`: The integer number of seconds the dialog waits for the user to\n    select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.msgbox{title = 'EOL Mode', text = 'Which EOL?',\n  icon = 'gtk-dialog-question', button1 = 'CRLF', button2 = 'CR',\n  button3 = 'LF'}\n@return selected button or exit code
714multi_edge_add_line view.multi_edge_add_line(view, column, color)\nAdds a new vertical line at column number *column* with color *color*, in\n"0xBBGGRR" format.\n@param view A view.\n@param column The column number to add a vertical line at.\n@param color The color in "0xBBGGRR" format.
715multi_edge_clear_all view.multi_edge_clear_all(view)\nClears all vertical lines created by `view:multi_edge_add_line()`.\n@param view A view.
716multi_edge_column view.multi_edge_column (table, Read-only)\nTable of edge column positions per edge column number.\nA position of `-1` means no edge column was found.
717multi_paste buffer.multi_paste (number)\nThe multiple selection paste mode.\n\n* `buffer.MULTIPASTE_ONCE`\n  Paste into only the main selection.\n* `buffer.MULTIPASTE_EACH`\n  Paste into all selections.\n\nThe default value is `buffer.MULTIPASTE_ONCE`.
718multiple_select_add_each buffer.multiple_select_add_each(buffer)\nAdds to the set of selections each occurrence of the main selection within\nthe target range.\nIf there is no selected text, the current word is used.\n@param buffer A buffer.
719multiple_select_add_next buffer.multiple_select_add_next(buffer)\nAdds to the set of selections the next occurrence of the main selection\nwithin the target range, makes that occurrence the new main selection, and\nscrolls it into view.\nIf there is no selected text, the current word is used.\n@param buffer A buffer.
720multiple_selection buffer.multiple_selection (bool)\nEnable multiple selection.\nThe default value is `false`.
721name_of_style buffer.name_of_style(buffer, style)\nReturns the name of style number *style*, which is between `1` and `256`.\n@param buffer A buffer.\n@param style The style number between `1` and `256` to get the name of.\n@return string
722new buffer.new()\nCreates a new buffer, displays it in the current view, and returns it.\nEmits a `BUFFER_NEW` event.\n@return the new buffer.\n@see events.BUFFER_NEW
723new lexer.new(name, opts)\nCreates a returns a new lexer with the given name.\n@param name The lexer's name.\n@param opts Table of lexer options. Options currently supported:\n  * `lex_by_line`: Whether or not the lexer only processes whole lines of\n    text (instead of arbitrary chunks of text) at a time.\n    Line lexers cannot look ahead to subsequent lines.\n    The default value is `false`.\n  * `fold_by_indentation`: Whether or not the lexer does not define any fold\n    points and that fold points should be calculated based on changes in line\n    indentation.\n    The default value is `false`.\n  * `case_insensitive_fold_points`: Whether or not fold points added via\n    `lexer.add_fold_point()` ignore case.\n    The default value is `false`.\n  * `inherit`: Lexer to inherit from.\n    The default value is `nil`.\n@usage lexer.new('rhtml', {inherit = lexer.load('html')})
724new_line buffer.new_line(buffer)\nTypes a new line at the caret position according to `buffer.eol_mode`.\n@param buffer A buffer.
725newline lexer.newline (pattern)\nA pattern that matches a sequence of end of line characters.
726next_image_type _SCINTILLA.next_image_type()\nReturns a unique image type identier number for use with\n`view.register_image()` and `view.register_rgba_image()`.\nUse this function for custom image types in order to prevent clashes with\nidentifiers of other custom image types.\n@usage local image_type = _SCINTILLA.next_image_type()\n@see view.register_image\n@see view.register_rgba_image
727next_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 view.indic_style
728next_marker_number _SCINTILLA.next_marker_number()\nReturns a unique marker number for use with `view.marker_define()`.\nUse this function for custom markers in order to prevent clashes with\nidentifiers of other custom markers.\n@usage local marknum = _SCINTILLA.next_marker_number()\n@see view.marker_define
729next_user_list_type _SCINTILLA.next_user_list_type()\nReturns a unique user list identier number for use with\n`buffer.user_list_show()`.\nUse this function for custom user lists in order to prevent clashes with\nlist identifiers of other custom user lists.\n@usage local list_type = _SCINTILLA.next_user_list_type()\n@see buffer.user_list_show
730nonnewline lexer.nonnewline (pattern)\nA pattern that matches any single, non-newline character.
731number lexer.number (pattern)\nA pattern that matches a typical number, either a floating point, decimal,\nhexadecimal, or octal number.
732oct_num lexer.oct_num (pattern)\nA pattern that matches an octal number.
733ok_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.\nIf *options*.`string_output` is `true`, returns the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n  * `title`: The dialog's title text.\n  * `text`: The dialog's main message text.\n  * `informative_text`: The dialog's extra informative text.\n  * `icon`: The dialog's GTK stock icon name. Examples are\n    "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n    "gtk-dialog-warning". The dialog does not display an icon by default.\n  * `icon_file`: The dialog's icon file path. This option has no effect when\n    `icon` is set.\n  * `no_cancel`: Do not display the "Cancel" button. The default value is\n    `false`.\n  * `string_output`: Return the selected button's label (instead of its\n    index) or the dialog's exit status instead of the button's index (instead\n    of its exit code). The 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
734open_file io.open_file(filenames, encodings)\nOpens *filenames*, a string filename or list of filenames, or the\nuser-selected filename(s).\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@param encodings Optional string encoding or table of encodings file contents\n  are in (one encoding per file). If `nil`, encoding auto-detection is\n  attempted via `io.encodings`.\n@see _G.events
735open_recent_file io.open_recent_file()\nPrompts the user to select a recently opened file to be reopened.\n@see recent_files
736optionselect 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.\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong 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 options' text instead of the button's\n    index or the dialog's exit code along with the options' indices. 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
737os _G.os (module)\nExtends Lua's `os` library to provide process spawning capabilities.
738overtype buffer.overtype (bool)\nEnable overtype mode, where typed characters overwrite existing ones.\nThe default value is `false`.
739page_down buffer.page_down(buffer)\nMoves the caret down one page.\n@param buffer A buffer.
740page_down_extend buffer.page_down_extend(buffer)\nMoves the caret down one page, extending the selected text to the new\nposition.\n@param buffer A buffer.
741page_down_rect_extend buffer.page_down_rect_extend(buffer)\nMoves the caret down one page, extending the rectangular selection to the new\nposition.\n@param buffer A buffer.
742page_up buffer.page_up(buffer)\nMoves the caret up one page.\n@param buffer A buffer.
743page_up_extend buffer.page_up_extend(buffer)\nMoves the caret up one page, extending the selected text to the new position.\n@param buffer A buffer.
744page_up_rect_extend buffer.page_up_rect_extend(buffer)\nMoves the caret up one page, extending the rectangular selection to the new\nposition.\n@param buffer A buffer.
745para_down buffer.para_down(buffer)\nMoves the caret down one paragraph.\nParagraphs are surrounded by one or more blank lines.\n@param buffer A buffer.
746para_down_extend buffer.para_down_extend(buffer)\nMoves the caret down one paragraph, extending the selected text to the new\nposition.\nParagraphs are surrounded by one or more blank lines.\n@param buffer A buffer.
747para_up buffer.para_up(buffer)\nMoves the caret up one paragraph.\nParagraphs are surrounded by one or more blank lines.\n@param buffer A buffer.
748para_up_extend buffer.para_up_extend(buffer)\nMoves the caret up one paragraph, extending the selected text to the new\nposition.\nParagraphs are surrounded by one or more blank lines.\n@param buffer A buffer.
749paste buffer.paste(buffer)\nPastes the clipboard's contents into the buffer, replacing any selected text\naccording to `buffer.multi_paste`.\n@param buffer A buffer.
750paste_reindent textadept.editing.paste_reindent()\nPastes the text from the clipboard, taking into account the buffer's\nindentation settings and the indentation of the current and preceding lines.
751paths textadept.snippets.paths (table)\nList of directory paths to look for snippet files in.\nFilenames are of the form *lexer.trigger.ext* or *trigger.ext* (*.ext* is an\noptional, arbitrary file extension). If the global `snippets` table does not\ncontain a snippet for a given trigger, this table is consulted for a matching\nfilename, and the contents of that file is inserted as a snippet.\nNote: If a directory has multiple snippets with the same trigger, the snippet\nchosen for insertion is not defined and may not be constant.
752patterns textadept.file_types.patterns (table)\nMap of first-line patterns to their associated lexer names.\nEach pattern is matched against the first line in the file.
753play textadept.macros.play()\nPlays a recorded or loaded macro.\n@see load
754position_after buffer.position_after(buffer, pos)\nReturns the position of the character after position *pos* (taking multi-byte\ncharacters into account), or `buffer.length + 1` if there is no character\nafter *pos*.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the position after from.
755position_before buffer.position_before(buffer, pos)\nReturns the position of the character before position *pos* (taking\nmulti-byte characters into account), or `1` if there is no character before\n*pos*.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the position before from.\n@return number
756position_from_line buffer.position_from_line(buffer, line)\nReturns the position at the beginning of line number *line*.\nReturns `-1` if *line* is greater than `buffer.line_count + 1`.\n@param buffer A buffer.\n@param line The line number in *buffer* to get the beginning position for.\n@return number
757position_relative buffer.position_relative(buffer, pos, n)\nReturns the position *n* characters before or after position *pos* (taking\nmulti-byte characters into account).\nReturns `1` if the position is less than 1 or greater than\n`buffer.length + 1`.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the relative position from.\n@param n The relative number of characters to get the position for. A\n  negative number indicates a position before while a positive number\n  indicates a position after.\n@return number
758previous textadept.snippets.previous()\nJumps back to the previous snippet placeholder, reverting any changes from\nthe current one.\nReturns `false` if no snippet is active.\n@return `false` if no snippet is active; `nil` otherwise.
759print lexer.print (pattern)\nA pattern that matches any printable character (' ' to '~').
760print 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.
761progressbar ui.dialogs.progressbar(options, f)\nDisplays a progressbar dialog, defined by dialog options table *options*,\nthat receives updates from function *f*.\nReturns "stopped" if *options*.`stoppable` is `true` and the user clicked the\n"Stop" button. Otherwise, returns `nil`.\n@param options Table of key-value option pairs for the progressbar dialog.\n\n  * `title`: The dialog's title text.\n  * `percent`: The initial progressbar percentage between 0 and 100.\n  * `text`: The initial progressbar display text (GTK only).\n  * `indeterminate`: Show the progress bar as "busy", with no percentage\n    updates.\n  * `stoppable`: Show the "Stop" button.\n  * `width`: The dialog's pixel width.\n  * `height`: The dialog's pixel height.\n@param f Function repeatedly called to do work and provide progress updates.\n  The function is called without arguments and must return either `nil`,\n  which indicates work is complete, or a progress percentage number in the\n  range 0-100 and an optional string to display (GTK only). If the text is\n  either "stop disable" or "stop enable" and *options*.`stoppable` is `true`,\n  the "Stop" button is disabled or enabled, respectively.\n@usage ui.dialogs.progressbar({stoppable = true},\n  function() if work() then return percent, status else return nil end end)\n@return nil or "stopped"
762properties _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
763property lexer.property (table)\nMap of key-value string pairs.
764property view.property (table)\nMap of key-value string pairs used by lexers.
765property_expanded lexer.property_expanded (table, Read-only)\nMap of key-value string pairs with `$()` and `%()` variable replacement\nperformed in values.
766property_expanded view.property_expanded (table, Read-only)\nMap of key-value string pairs used by lexers with `$()` and `%()` variable\nreplacement performed in values.
767property_int lexer.property_int (table, Read-only)\nMap of key-value pairs with values interpreted as numbers, or `0` if not\nfound.
768property_int view.property_int (table, Read-only)\nMap of key-value pairs used by lexers with values interpreted as numbers,\nor `0` if not found.
769punct lexer.punct (pattern)\nA pattern that matches any punctuation character ('!' to '/', ':' to '@',\n'[' to ''', '{' to '~').
770punctuation_chars buffer.punctuation_chars (string)\nThe string set of characters recognized as punctuation characters.\nSet this only after setting `buffer.word_chars`.\nThe default value is a string that contains all non-word and non-whitespace\ncharacters.
771quick_open io.quick_open(paths, filter, opts)\nPrompts the user to select files to be opened from *paths*, a string\ndirectory path or list of directory paths, using a filtered list dialog.\nIf *paths* is `nil`, uses the current project's root directory, which is\nobtained from `io.get_project_root()`.\nString or list *filter* determines which files to show in the dialog, with\nthe default filter being `io.quick_open_filters[path]` (if it exists) or\n`lfs.default_filter`. A filter consists of Lua patterns that match file and\ndirectory paths to include or exclude. Patterns are inclusive by default.\nExclusive patterns begin with a '!'. If no inclusive patterns are given, any\npath is initially considered. As a convenience, file extensions can be\nspecified literally instead of as a Lua pattern (e.g. '.lua' vs. '%.lua$'),\nand '/' also matches the Windows directory separator ('[/\\]' is not needed).\nThe number of files in the list is capped at `quick_open_max`.\nIf *filter* is `nil` and *paths* is ultimately a string, the filter from the\n`io.quick_open_filters` table is used. If that filter does not exist,\n`lfs.default_filter` is used.\n*opts* is an optional table of additional options for\n`ui.dialogs.filteredlist()`.\n@param paths Optional string directory path or table of directory paths to\n  search. The default value is the current project's root directory, if\n  available.\n@param filter Optional filter for files and directories to include and/or\n  exclude. The default value is `lfs.default_filter` unless a filter for\n  *paths* is defined in `io.quick_open_filters`.\n@param opts Optional table of additional options for\n  `ui.dialogs.filteredlist()`.\n@usage io.quick_open(buffer.filename:match('^(.+)[/\\]')) -- list all files\n  in the current file's directory, subject to the default filter\n@usage io.quick_open(io.get_current_project(), '.lua') -- list all Lua files\n   in the current project\n@usage io.quick_open(io.get_current_project(), '!/build') -- list all files\n  in the current project except those in the build directory\n@see io.quick_open_filters\n@see lfs.default_filter\n@see quick_open_max\n@see ui.dialogs.filteredlist
772quick_open_filters io.quick_open_filters (table)\nMap of directory paths to filters used by `io.quick_open()`.\n@see quick_open
773quick_open_max io.quick_open_max (number)\nThe maximum number of files listed in the quick open dialog.\nThe default value is `1000`.
774quit _G.quit()\nEmits a `QUIT` event, and unless any handler returns `false`, quits\nTextadept.\n@see events.QUIT
775range lexer.range(s, e, single_line, escapes, balanced)\nCreates and returns a pattern that matches a range of text bounded by strings\nor patterns *s* and *e*.\nThis is a convenience function for matching more complicated ranges like\nstrings with escape characters, balanced parentheses, and block comments\n(nested or not). *e* is optional and defaults to *s*. *single_line* indicates\nwhether or not the range must be on a single line; *escapes* indicates\nwhether or not to allow '\' as an escape character; and *balanced* indicates\nwhether or not to handle balanced ranges like parentheses, and requires *s*\nand *e* to be different.\n@param s String or pattern start of a range.\n@param e Optional string or pattern end of a range. The default value is *s*.\n@param single_line Optional flag indicating whether or not the range must be\n  on a single line. The default value is `false`.\n@param escapes Optional flag indicating whether or not the range end may\n  be escaped by a '\' character.\n  The default value is `false` unless *s* and *e* are identical,\n  single-character strings. In that case, the default value is `true`.\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 *s* and *e* are\n  different.\n@usage local dq_str_escapes = lexer.range('"')\n@usage local dq_str_noescapes = lexer.range('"', false, false)\n@usage local unbalanced_parens = lexer.range('(', ')')\n@usage local balanced_parens = lexer.range('(', ')', false, false, true)\n@return pattern
776read spawn_proc:read(arg)\nReads and returns stdout from process *spawn_proc*, according to string\nformat or number *arg*.\nSimilar to Lua's `io.read()` and blocks for input. *spawn_proc* must still be\nrunning. If an error occurs while reading, returns `nil`, an error code, and\nan error message.\nEnsure any read operations read all stdout available, as the stdout callback\nfunction passed to `os.spawn()` will not be called until the stdout buffer is\nclear.\n@param arg Optional argument similar to those in Lua's `io.read()`, but "n"\n  is not supported. The default value is "l", which reads a line.\n@return string of bytes read
777read_only buffer.read_only (bool)\nWhether or not the buffer is read-only.\nThe default value is `false`.
778recent_files io.recent_files (table)\nList of recently opened files, the most recent being towards the top.
779record textadept.history.record(filename, line, column, soft)\nRecords the given location in the current view's history.\n@param filename Optional string filename, buffer type, or identifier of the\n  buffer to store. If `nil`, uses the current buffer.\n@param line Optional Integer line number to store. If `nil`, uses the current\n  line.\n@param column Optional integer column number on line *line* to store. If\n  `nil`, uses the current column.\n@param soft Optional flag that indicates whether or not this record should be\n  skipped when navigating backward towards it, and updated when navigating\n  away from it. The default value is `false`.
780record textadept.macros.record()\nToggles between starting and stopping macro recording.
781rectangular_selection_anchor buffer.rectangular_selection_anchor (number)\nThe rectangular selection's anchor position.
782rectangular_selection_anchor_virtual_space buffer.rectangular_selection_anchor_virtual_space (number)\nThe amount of virtual space for the rectangular selection's anchor.
783rectangular_selection_caret buffer.rectangular_selection_caret (number)\nThe rectangular selection's caret position.
784rectangular_selection_caret_virtual_space buffer.rectangular_selection_caret_virtual_space (number)\nThe amount of virtual space for the rectangular selection's caret.
785rectangular_selection_modifier view.rectangular_selection_modifier (number)\nThe modifier key used in combination with a mouse drag in order to create a\nrectangular selection.\n\n* `view.MOD_CTRL`\n  The "Control" modifier key.\n* `view.MOD_ALT`\n  The "Alt" modifier key.\n* `view.MOD_SUPER`\n  The "Super" modifier key, usually defined as the left "Windows" or\n  "Command" key.\n\nThe default value is `view.MOD_CTRL`.
786redo buffer.redo(buffer)\nRedoes the next undone action.\n@param buffer A buffer.
787regex ui.find.regex (bool)\nInterpret search text as a Regular Expression.\nThe default value is `false`.
788regex_label_text ui.find.regex_label_text (string, Write-only)\nThe text of the "Regex" label.\nThis is primarily used for localization.
789register args.register(short, long, narg, f, description)\nRegisters a command line option with short and long versions *short* and\n*long*, respectively. *narg* is the number of arguments the option accepts,\n*f* is the function called when the option is set, and *description* is\nthe option's description when displaying help.\n@param short The string short version of the option.\n@param long The string long version of the option.\n@param narg The number of expected parameters for the option.\n@param f The Lua function to run when the option is set. It is passed *narg*\n  string arguments.\n@param description The string description of the option for command line\n  help.
790register_image view.register_image(view, type, xpm_data)\nRegisters XPM image *xpm_data* to type number *type* for use in\nautocompletion and user lists.\n@param view A view.\n@param type Integer type to register the image with.\n@param xpm_data The XPM data as described in `view.marker_define_pixmap()`.
791register_rgba_image view.register_rgba_image(view, type, pixels)\nRegisters RGBA image *pixels* to type number *type* for use in autocompletion\nand user lists.\nThe dimensions for *pixels* (`view.rgba_image_width` and\n`view.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 view A view.\n@param type Integer type to register the image with.\n@param pixels The RGBA data as described in\n  `view.marker_define_rgba_image()`.
792reload buffer.reload(buffer)\nReloads the buffer's file contents, discarding any changes.\nEmits `FILE_BEFORE_RELOAD` and `FILE_AFTER_RELOAD` events if the buffer is\nthe current one.\n@param buffer A buffer.
793replace ui.find.replace()\nMimics pressing the "Replace" button.
794replace_all ui.find.replace_all()\nMimics pressing the "Replace All" button.
795replace_all_button_text ui.find.replace_all_button_text (string, Write-only)\nThe text of the "Replace All" button.\nThis is primarily used for localization.
796replace_button_text ui.find.replace_button_text (string, Write-only)\nThe text of the "Replace" button.\nThis is primarily used for localization.
797replace_entry_text ui.find.replace_entry_text (string)\nThe text in the "Replace" entry.\nWhen searching for text in a directory of files, this is the current file\nand directory filter.
798replace_label_text ui.find.replace_label_text (string, Write-only)\nThe text of the "Replace" label.\nThis is primarily used for localization.
799replace_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.
800replace_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
801replace_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
802representation view.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.\nCharacters are strings, not numeric codes, and can be multi-byte\ncharacters.\nCall `view.clear_representation()` to remove a representation.
803reset _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`.
804rgba_image_height view.rgba_image_height (number)\nThe height of the RGBA image to be defined using\n`view.marker_define_rgba_image()`.
805rgba_image_scale view.rgba_image_scale (number)\nThe scale factor in percent of the RGBA image to be defined using\n`view.marker_define_rgba_image()`.\nThis is useful on macOS 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.
806rgba_image_width view.rgba_image_width (number)\nThe width of the RGBA image to be defined using\n`view.marker_define_rgba_image()` and\n`view.register_rgba_image()`.
807rotate_selection buffer.rotate_selection(buffer)\nDesignates the next additional selection to be the main selection.\n@param buffer A buffer.
808run textadept.run (module)\nCompile and run source code files with Textadept.\nLanguage modules may tweak the `compile_commands`,\n`run_commands`, and `error_patterns` tables for particular languages.\nThe user may tweak `build_commands` and `test_commands` for particular\nprojects.
809run textadept.run.run(filename)\nRuns file *filename* or the current file using an appropriate shell command\nfrom the `run_commands` table.\nThe shell command is determined from the file's filename, extension, or\nlanguage in that order.\nEmits `RUN_OUTPUT` events.\n@param filename Optional path to the file to run. The default value is the\n  current file's filename.\n@see run_commands\n@see _G.events
810run ui.command_entry.run(f, keys, lang, height)\nOpens the command entry, subjecting it to any key bindings defined in table\n*keys*, highlighting text with lexer name *lang*, and displaying\n*height* number of lines at a time, and then when the `Enter` key is pressed,\ncloses the command entry and calls function *f* (if non-`nil`) with the\ncommand entry's text as an argument.\nBy default with no arguments given, opens a Lua command entry.\nThe command entry does not respond to Textadept's default key bindings, but\ninstead to the key bindings defined in *keys* and in\n`ui.command_entry.editing_keys`.\n@param f Optional function to call upon pressing `Enter` in the command\n  entry, ending the mode. It should accept the command entry text as an\n  argument.\n@param keys Optional table of key bindings to respond to. This is in\n  addition to the basic editing and movement keys defined in\n  `ui.command_entry.editing_keys`.\n  `Esc` and `Enter` are automatically defined to cancel and finish the\n  command entry, respectively.\n  This parameter may be omitted completely.\n@param lang Optional string lexer name to use for command entry text. The\n  default value is `'text'`.\n@param height Optional number of lines to display in the command entry. The\n  default value is `1`.\n@usage ui.command_entry.run(ui.print)\n@see editing_keys
811run_commands textadept.run.run_commands (table)\nMap of filenames, file extensions, and lexer names to their associated "run"\nshell command line strings or functions that return strings.\nCommand line strings may have the following macros:\n\n  + `%f`: The file's name, including its extension.\n  + `%e`: The file's name, excluding its extension.\n  + `%d`: The file's directory path.\n  + `%p`: The file's full path.\n\nFunctions may also return a working directory and process environment table\nto operate in. By default, the working directory is the current file's parent\ndirectory and the environment is Textadept's environment.
812run_in_background textadept.run.run_in_background (bool)\nRun shell commands silently in the background.\nThis only applies when the message buffer is open, though it does not have\nto be visible.\nThe default value is `false`.
813save buffer.save(buffer)\nSaves the buffer to its file.\nIf the buffer does not have a file, the user is prompted for one.\nEmits `FILE_BEFORE_SAVE` and `FILE_AFTER_SAVE` events.\n@param buffer A buffer.
814save textadept.macros.save(filename)\nSaves a recorded macro to file *filename* or the user-selected file.\n@param filename Optional filename to save the recorded macro to. If `nil`,\n  the user is prompted for one.
815save textadept.session.save(filename)\nSaves the session to file *filename* or the user-selected file.\nSaves split views, opened buffers, cursor information, recent files, and\nbookmarks.\nUpon quitting, the current session is saved to *filename* again, unless\n`textadept.session.save_on_quit` is `false`.\n@param filename Optional absolute path to the session file to save. If `nil`,\n  the user is prompted for one.\n@usage textadept.session.save(filename)
816save_all_files io.save_all_files()\nSaves all unsaved buffers to their respective files.\n@see buffer.save
817save_as buffer.save_as(buffer, filename)\nSaves the buffer to file *filename* or the user-specified filename.\nEmits a `FILE_AFTER_SAVE` event.\n@param buffer A buffer.\n@param filename Optional new filepath to save the buffer to. If `nil`, the\n  user is prompted for one.
818save_on_quit textadept.session.save_on_quit (bool)\nSave the session when quitting.\nThe default value is `true` unless the user passed the command line switch\n`-n` or `--nosession` to Textadept.
819scroll_caret view.scroll_caret(view)\nScrolls the caret into view based on the policies previously defined in\n`view.set_x_caret_policy()` and `view.set_y_caret_policy()`.\n@param view A view.\n@see set_x_caret_policy\n@see set_y_caret_policy
820scroll_range view.scroll_range(view, 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 `view.scroll_caret()`, but with *primary_pos* instead of\n`buffer.current_pos`.\nThis is useful for scrolling search results into view.\n@param view A view.\n@param secondary_pos The secondary range position to scroll into view.\n@param primary_pos The primary range position to scroll into view.
821scroll_to_end view.scroll_to_end(view)\nScrolls to the end of the buffer without moving the caret.\n@param view A view.
822scroll_to_start view.scroll_to_start(view)\nScrolls to the beginning of the buffer without moving the caret.\n@param view A view.
823scroll_width view.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 `view.scroll_width_tracking`.\nThe default value is `2000`.
824scroll_width_tracking view.scroll_width_tracking (bool)\nContinuously update the horizontal scrolling width to match the maximum\nwidth of a displayed line beyond `view.scroll_width`.\nThe default value is `false`.
825search_anchor buffer.search_anchor(buffer)\nAnchors the position that `buffer.search_next()` and `buffer.search_prev()`\nstart at to the beginning of the current selection or caret position.\n@param buffer A buffer.
826search_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`.
827search_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
828search_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
829search_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
830secure_inputbox ui.dialogs.secure_inputbox(options)\nPrompts the user with a masked inputbox dialog defined by dialog options\ntable *options*, returning the selected button's index along with the user's\ninput text (the latter as a string or table, depending on the type of\n*options*.`informative_text`).\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with the user's 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 inputbox.\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  * `button1`: The right-most button's label. The default value is\n    `_L['OK']`.\n  * `button2`: The middle button's label.\n  * `button3`: The left-most button's label. This option requires `button2`\n    to be set.\n  * `string_output`: Return the selected button's label (instead of its\n    index) or the dialog's exit status instead of the button's index (instead\n    of its exit code). The 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
831secure_standard_inputbox ui.dialogs.secure_standard_inputbox(options)\nPrompts the user with a masked inputbox dialog defined by dialog options\ntable *options* and with localized "Ok" and "Cancel" buttons, returning the\nselected button's index along with the user's input text (the latter as a\nstring or table, depending on the type of *options*.`informative_text`).\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with the user's 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 inputbox.\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 (instead of its\n    index) or the dialog's exit status instead of the button's index (instead\n    of its exit code). The 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
832sel_alpha view.sel_alpha (number)\nThe selection's alpha value, ranging from `0` (transparent) to `255`\n(opaque).\nThe default value is `view.ALPHA_NOALPHA`, for no alpha.
833sel_eol_filled view.sel_eol_filled (bool)\nExtend the selection to the view's right margin.\nThe default value is `false`.
834select textadept.snippets.select()\nPrompts the user to select a snippet to insert from a list of global and\nlanguage-specific snippets.
835select_all buffer.select_all(buffer)\nSelects all of the buffer's text without scrolling the view.\n@param buffer A buffer.
836select_command textadept.menu.select_command()\nPrompts the user to select a menu command to run.
837select_enclosed textadept.editing.select_enclosed(left, right)\nSelects the text between strings *left* and *right* that enclose the caret.\nIf that range is already selected, toggles between selecting *left* and\n*right* as well.\nIf *left* and *right* are not provided, they are assumed to be one of the\ndelimiter pairs specified in `auto_pairs` and are inferred from the current\nposition or selection.\n@param left Optional left part of the enclosure.\n@param right Optional right part of the enclosure.\n@see auto_pairs
838select_lexer textadept.file_types.select_lexer()\nPrompts the user to select a lexer for the current buffer.\n@see buffer.set_lexer
839select_line textadept.editing.select_line()\nSelects the current line.
840select_paragraph textadept.editing.select_paragraph()\nSelects the current paragraph.\nParagraphs are surrounded by one or more blank lines.
841select_word textadept.editing.select_word(all)\nSelects the current word or, if *all* is `true`, all occurrences of the\ncurrent word.\nIf a word is already selected, selects the next occurrence as a multiple\nselection.\n@param all Whether or not to select all occurrences of the current word.\n  The default value is `false`.\n@see buffer.word_chars
842selection_duplicate buffer.selection_duplicate(buffer)\nDuplicates the selected text to its right.\nIf no text is selected, duplicates the current line on a new line below.\n@param buffer A buffer.
843selection_empty buffer.selection_empty (bool, Read-only)\nWhether or not no text is selected.
844selection_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.
845selection_is_rectangle buffer.selection_is_rectangle (bool, Read-only)\nWhether or not the selection is a rectangular selection.
846selection_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.
847selection_n_anchor buffer.selection_n_anchor (table)\nTable of positions at the beginning of existing selections numbered from\n`1`, the main selection.
848selection_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 `1`, the main selection.
849selection_n_caret buffer.selection_n_caret (table)\nTable of positions at the end of existing selections numbered from `1`,\nthe main selection.
850selection_n_caret_virtual_space buffer.selection_n_caret_virtual_space (table)\nTable of positions at the end of virtual space selected in existing\nselections numbered from `1`, the main selection.
851selection_n_end buffer.selection_n_end (table)\nTable of positions at the end of existing selections numbered from `1`,\nthe main selection.
852selection_n_end_virtual_space buffer.selection_n_end_virtual_space (number, Read-only)\nTable of positions at the end of virtual space selected in existing\nselections numbered from `1`, the main selection.
853selection_n_start buffer.selection_n_start (table)\nTable of positions at the beginning of existing selections numbered from\n`1`, the main selection.
854selection_n_start_virtual_space buffer.selection_n_start_virtual_space (number, Read-only)\nTable of positions at the beginning of virtual space selected in existing\nselections numbered from `1`, the main selection.
855selection_start buffer.selection_start (number)\nThe position of the beginning of the selected text.\nWhen set, becomes the anchor, but is not scrolled into view.
856selections buffer.selections (number, Read-only)\nThe number of active selections. There is always at least one selection.
857session textadept.session (module)\nSession support for Textadept.
858set_arguments textadept.run.set_arguments(filename, run, compile)\nAppends the command line argument strings *run* and *compile* to their\nrespective run and compile commands for file *filename* or the current file.\nIf either is `nil`, prompts the user for missing the arguments. Each filename\nhas its own set of compile and run arguments.\n@param filename Optional path to the file to set run/compile arguments for.\n@param run Optional string run arguments to set. If `nil`, the user is\n  prompted for them. Pass the empty string for no run arguments.\n@param compile Optional string compile arguments to set. If `nil`, the user\n  is prompted for them. Pass the empty string for no compile arguments.\n@see run_commands\n@see compile_commands
859set_chars_default buffer.set_chars_default(buffer)\nResets `buffer.word_chars`, `buffer.whitespace_chars`, and\n`buffer.punctuation_chars` to their respective defaults.\n@param buffer A buffer.\n@see word_chars\n@see whitespace_chars\n@see punctuation_chars
860set_default_fold_display_text view.set_default_fold_display_text(view, text)\nSets the default fold display text to string *text*.\n@param view A view.\n@param text The text to display by default next to folded lines.\n@see toggle_fold_show_text
861set_empty_selection buffer.set_empty_selection(buffer, pos)\nMoves the caret to position *pos* without scrolling the view and removes any\nselections.\n@param buffer A buffer\n@param pos The position in *buffer* to move to.
862set_encoding buffer.set_encoding(buffer, encoding)\nConverts the buffer's contents to encoding *encoding*.\n@param buffer A buffer.\n@param encoding The string encoding to set. Valid encodings are ones that GNU\n  iconv accepts. If `nil`, assumes a binary encoding.\n@usage buffer:set_encoding('CP1252')
863set_fold_margin_color view.set_fold_margin_color(view, use_setting, color)\nOverrides the fold margin's default color with color *color*, in "0xBBGGRR"\nformat,\nif *use_setting* is `true`.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
864set_fold_margin_hi_color view.set_fold_margin_hi_color(view, 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 view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
865set_lexer buffer.set_lexer(buffer, name)\nAssociates string lexer name *name* or the auto-detected lexer name with the\nbuffer and then loads the appropriate language module if that module exists.\n@param buffer A buffer.\n@param name Optional string lexer name to set. If `nil`, attempts to\n  auto-detect the buffer's lexer.\n@usage buffer:set_lexer('lexer_name')
866set_save_point buffer.set_save_point(buffer)\nIndicates the buffer has no unsaved changes.\n@param buffer A buffer.
867set_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`).
868set_sel_back view.set_sel_back(view, 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 `view.additional_sel_back` color.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
869set_sel_fore view.set_sel_fore(view, use_setting, color)\nOverrides the selection's default foreground color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\nOverwrites any existing `view.additional_sel_fore` color.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
870set_selection buffer.set_selection(buffer, end_pos, start_pos)\nSelects the range of text between positions *start_pos* to *end_pos*,\nremoving all other selections.\n@param buffer 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*.
871set_styling buffer.set_styling(buffer, length, style)\nAssigns style number *style*, in the range from `1` to `256`, to the next\n*length* characters, starting from the current styling position, and\nincrements the styling position by *length*.\n`buffer:start_styling` should be called before `buffer:set_styling()`.\n@param buffer A buffer.\n@param length The number of characters to style.\n@param style The style number to set.
872set_target_range buffer.set_target_range(buffer, start_pos, end_pos)\nDefines the target range's beginning and end positions as *start_pos* and\n*end_pos*, respectively.\n@param buffer A buffer.\n@param start_pos The position of the beginning of the target range.\n@param end_pos The position of the end of the target range.
873set_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.
874set_theme view.set_theme(view, name, env)\nSets the view's color theme to be string *name*, with the contents of table\n*env* available as global variables.\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 view A view.\n@param name The name or absolute path of a theme to set.\n@param env Optional table of global variables themes can utilize to override\n  default settings such as font and size.\n@usage view:set_theme('light', {font = 'Monospace', size = 12})\n@see _G.lexer.colors\n@see _G.lexer.styles
875set_visible_policy view.set_visible_policy(view, 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`view.ensure_visible_enforce_policy()` redisplays hidden or folded lines.\nIt is similar in operation to `view.set_y_caret_policy()`.\n@param view A view.\n@param policy The combination of `view.VISIBLE_SLOP` and\n  `view.VISIBLE_STRICT` policy flags to set.\n@param y The number of lines from the vertical margins to keep the caret.
876set_whitespace_back view.set_whitespace_back(view, use_setting, color)\nOverrides the background color of whitespace with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
877set_whitespace_fore view.set_whitespace_fore(view, 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.
878set_x_caret_policy view.set_x_caret_policy(view, 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 view A view.\n@param policy The combination of `view.CARET_SLOP`, `view.CARET_STRICT`,\n  `view.CARET_EVEN`, and `view.CARET_JUMPS` policy flags to set.\n@param x The number of pixels from the horizontal margins to keep the caret.
879set_y_caret_policy view.set_y_caret_policy(view, policy, y)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *y* number of lines away from the vertical margins.\n@param view A view.\n@param policy The combination of `view.CARET_SLOP`, `view.CARET_STRICT`,\n  `view.CARET_EVEN`, and `view.CARET_JUMPS` policy flags to set.\n@param y The number of lines from the vertical margins to keep the caret.
880show_documentation textadept.editing.show_documentation(pos, ignore_case)\nDisplays a call tip with documentation for the symbol under or directly\nbehind position *pos* or the caret position.\nDocumentation is read from API files in the `api_files` table.\nIf a call tip is already shown, cycles to the next one if it exists.\nSymbols are determined by using `buffer.word_chars`.\n@param pos Optional position of the symbol to show documentation for. If\n  omitted, the caret position is used.\n@param ignore_case Optional flag that indicates whether or not to search\n  API files case-insensitively for symbols. The default value is `false`.\n@see api_files\n@see buffer.word_chars
881show_lines view.show_lines(view, start_line, end_line)\nShows the range of lines between line numbers *start_line* to *end_line*.\nThis has no effect on fold levels or fold flags and the first line cannot be\nhidden.\n@param view A view.\n@param start_line The start line of the range of lines in *view* to show.\n@param end_line The end line of the range of lines in *view* to show.
882silent_print ui.silent_print (bool)\nWhether or not to print messages to buffers silently.\nThis is not guaranteed to be a constant value, as Textadept may change it\nfor the editor's own purposes. This flag should be used only in conjunction\nwith a group of `ui.print()` and `ui._print()` function calls.\nThe default value is `false`, and focuses buffers when messages are printed\nto them.
883size ui.size (table)\nA table containing the width and height pixel values of Textadept's window.
884size view.size (number)\nThe split resizer's pixel position if the view is a split one.
885snippet textadept.editing.autocompleters.snippet (function)\nAutocompleter function for snippet trigger words.
886snippets _G.snippets (table)\nMap of snippet triggers with their snippet text or functions that return such\ntext, with language-specific snippets tables assigned to a lexer name key.
887snippets textadept.snippets (module)\nSnippets for Textadept.
888space lexer.space (pattern)\nA pattern that matches any whitespace character ('\t', '\v', '\f', '\\n',\n'\r', space).
889spawn os.spawn(cmd, cwd, env, stdout_cb, stderr_cb, exit_cb)\nSpawns an interactive child process *cmd* in a separate thread, returning\na handle to that process.\nOn Windows, *cmd* is passed to `cmd.exe`: `%COMSPEC% /c [cmd]`.\nAt the moment, only the Windows terminal version spawns processes in the same\nthread.\n@param cmd A command line string that contains the program's name followed by\n  arguments to pass to it. `PATH` is searched for program names.\n@param cwd Optional current working directory (cwd) for the child\n  process. When omitted, the parent's cwd is used.\n@param env Optional map of environment variables for the child process.\n  When omitted, Textadept's environment is used.\n@param stdout_cb Optional Lua function that accepts a string parameter for a\n  block of standard output read from the child. Stdout is read asynchronously\n  in 1KB or 0.5KB blocks (depending on the platform), or however much data is\n  available at the time.\n  At the moment, only the Win32 terminal version sends all output, whether it\n  be stdout or stderr, to this callback after the process finishes.\n@param stderr_cb Optional Lua function that accepts a string parameter for a\n  block of standard error read from the child. Stderr is read asynchronously\n  in 1KB or 0.5kB blocks (depending on the platform), or however much data is\n  available at the time.\n@param exit_cb Optional Lua function that is called when the child process\n  finishes. The child's exit status is passed.\n@usage os.spawn('lua ' .. buffer.filename, print)\n@usage proc = os.spawn('lua -e "print(io.read())"', print)\n  proc:write('foo\\n')\n@return proc or nil plus an error message on failure
890split view.split(view, vertical)\nSplits the view into top and bottom views (unless *vertical* is `true`),\nfocuses the new view, and returns both the old and new views.\nIf *vertical* is `false`, splits the view vertically into left and\nright views.\nEmits a `VIEW_NEW` event.\n@param view The view to split.\n@param vertical Optional flag indicating whether or not to split the view\n  vertically. The default value is `false`, for horizontal.\n@return old view and new view.\n@see events.VIEW_NEW
891standard_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.\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with 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 its text. If the dialog timed out,\nreturns `0` or `"timeout"`. If the user canceled the dialog, returns `-1` or\n`"delete"`.\n@param options Table of key-value option pairs for the drop-down dialog.\n\n  * `title`: The dialog's title text.\n  * `text`: The dialog's main message text.\n  * `items`: The list of string items to show in the drop-down.\n  * `no_cancel`: Do not display the "Cancel" button. The default value is\n    `false`.\n  * `exit_onchange`: Close the dialog after selecting a new item. The default\n    value is `false`.\n  * `select`: The index of the initially selected list item. The default\n    value is `1`.\n  * `string_output`: Return the selected button's label (instead of its\n    index) and the selected item's text (instead of its index). If no item\n    was selected, returns the dialog's exit status (instead of its exit\n    code). The 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, selected item
892standard_inputbox ui.dialogs.standard_inputbox(options)\nPrompts the user with an inputbox dialog defined by dialog options table\n*options* and with localized "Ok" and "Cancel" buttons, returning the\nselected button's index along with the user's input text (the latter as a\nstring or table, depending on the type of *options*.`informative_text`).\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with the user's 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 inputbox.\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 (instead of its\n    index) or the dialog's exit status instead of the button's index (instead\n    of its exit code). The 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
893start_styling buffer.start_styling(buffer, position, unused)\nBegins styling at position *position* with styling bit-mask *style_mask*.\n*style_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 unused Unused number. `0` can be safely used.\n@usage buffer:start_styling(1, 0)\n@see set_styling
894starts_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(lexer.PREPROCESSOR,\n  lexer.starts_line(lexer.to_eol('#')))\n@return pattern
895status spawn_proc:status()\nReturns the status of process *spawn_proc*, which is either "running" or\n"terminated".\n@return "running" or "terminated"
896statusbar_text ui.statusbar_text (string, Write-only)\nThe text displayed in the statusbar.
897stop textadept.run.stop()\nStops the currently running process, if any.
898string _G.string (module)\nExtends Lua's `string` library to provide character set conversions.
899strip_trailing_spaces textadept.editing.strip_trailing_spaces (bool)\nStrip trailing whitespace before saving files. (Does not apply to binary\nfiles.)\nThe default value is `false`.
900stuttered_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.
901stuttered_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.
902stuttered_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.
903stuttered_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.
904style_at buffer.style_at (table, Read-only)\nTable of style numbers per position.
905style_at lexer.style_at (table, Read-only)\nTable of style names at positions in the buffer starting from 1.
906style_back view.style_back (table)\nTable of background colors, in "0xBBGGRR" format, of text for style numbers\nfrom `1` to `256`.
907style_bold view.style_bold (table)\nTable of flags that indicate whether or not text is bold for style numbers\nfrom `1` to `256`.\nThe default values are `false`.
908style_case view.style_case (table)\nTable of letter case modes of text for style numbers from `1` to `256`.\n\n* `view.CASE_MIXED`\n  Display text in normally.\n* `view.CASE_UPPER`\n  Display text in upper case.\n* `view.CASE_LOWER`\n  Display text in lower case.\n* `view.CASE_CAMEL`\n  Display text in camel case.\n\nThe default values are `view.CASE_MIXED`.
909style_changeable view.style_changeable (table)\nTable of flags that indicate whether or not text is changeable for style\nnumbers from `1` to `256`.\nThe default values are `true`.\nRead-only styles do not allow the caret into the range of text.
910style_clear_all view.style_clear_all(view)\nReverts all styles to having the same properties as `view.STYLE_DEFAULT`.\n@param view A view.
911style_eol_filled view.style_eol_filled (table)\nTable of flags that indicate whether or not the background colors of styles\nwhose characters occur last on lines extend all the way to the view's right\nmargin for style numbers from `1` to `256`.\nThe default values are `false`.
912style_font view.style_font (table)\nTable of string font names of text for style numbers from `1` to `256`.
913style_fore view.style_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, of text for style numbers\nfrom `1` to `256`.
914style_italic view.style_italic (table)\nTable of flags that indicate whether or not text is italic for style\nnumbers from `1` to `256`.\nThe default values are `false`.
915style_of_name buffer.style_of_name(buffer, style_name, string)\nReturns the style number associated with string *style_name*, or\n`view.STYLE_DEFAULT` if *style_name* is not in use.\n@param buffer A buffer.\n@param string The style name to get the number of.\n@return style number, between `1` and `256`.\n@see name_of_style
916style_reset_default view.style_reset_default(view)\nResets `view.STYLE_DEFAULT` to its initial state.\n@param view A view.
917style_size view.style_size (table)\nTable of font sizes of text for style numbers from `1` to `256`.
918style_underline view.style_underline (table)\nTable of flags that indicate whether or not text is underlined for style\nnumbers from `1` to `256`.\nThe default values are `false`.
919style_visible view.style_visible (table)\nTable of flags that indicate whether or not text is visible for style\nnumbers from `1` to `256`.\nThe default values are `true`.
920styles lexer.styles (table)\nMap of style names to style definition tables.\n\nStyle names consist of the following default names as well as the token names\ndefined by lexers.\n\n* `default`: The default style all others are based on.\n* `line_number`: The line number margin style.\n* `control_char`: The style of control character blocks.\n* `indent_guide`: The style of indentation guides.\n* `call_tip`: The style of call tip text. Only the `font`, `size`, `fore`,\n  and `back` style definition fields are supported.\n* `fold_display_text`: The style of text displayed next to folded lines.\n* `class`, `comment`, `constant`, `embedded`, `error`, `function`,\n  `identifier`, `keyword`, `label`, `number`, `operator`, `preprocessor`,\n  `regex`, `string`, `type`, `variable`, `whitespace`: Some token names used\n  by lexers. Some lexers may define more token names, so this list is not\n  exhaustive.\n* *`lang`*`_whitespace`: A special style for whitespace tokens in lexer name\n  *lang*. It inherits from `whitespace`, and is used in place of it for all\n  lexers.\n\nStyle definition tables may contain the following fields:\n\n* `font`: String font name.\n* `size`: Integer font size.\n* `bold`: Whether or not the font face is bold. The default value is `false`.\n* `weight`: Integer weight or boldness of a font, between 1 and 999.\n* `italics`: Whether or not the font face is italic. The default value is\n  `false`.\n* `underlined`: Whether or not the font face is underlined. The default value\n  is `false`.\n* `fore`: Font face foreground color in `0xBBGGRR` or `"#RRGGBB"` format.\n* `back`: Font face background color in `0xBBGGRR` or `"#RRGGBB"` format.\n* `eolfilled`: Whether or not the background color extends to the end of the\n  line. The default value is `false`.\n* `case`: Font case, `'u'` for upper, `'l'` for lower, and `'m'` for normal,\n  mixed case. The default value is `'m'`.\n* `visible`: Whether or not the text is visible. The default value is `true`.\n* `changeable`: Whether the text is changeable instead of read-only. The\n  default value is `true`.
921swap_main_anchor_caret buffer.swap_main_anchor_caret(buffer)\nSwaps the main selection's beginning and end positions.\n@param buffer A buffer.
922switch_buffer ui.switch_buffer(zorder)\nPrompts the user to select a buffer to switch to.\nBuffers are listed in the order they were opened unless `zorder` is `true`,\nin which case buffers are listed by their z-order (most recently viewed to\nleast recently viewed).\n@param zorder Flag that indicates whether or not to list buffers by their\n  z-order. The default value is `false`.
923tab buffer.tab(buffer)\nIndents the text on the selected lines or types a Tab character ("\t") at\nthe caret position.\n@param buffer A buffer.
924tab_context_menu textadept.menu.tab_context_menu (table)\nThe default tabbar context menu.\nSubmenus, and menu items can be retrieved by name in addition to table index\nnumber.
925tab_context_menu ui.tab_context_menu (userdata)\nThe context menu for the buffer's tab, a `ui.menu()`.\nThis is a low-level field. You probably want to use the higher-level\n`textadept.menu.tab_context_menu`.
926tab_draw_mode view.tab_draw_mode (number)\nThe draw mode of visible tabs.\n\n* `view.TD_LONGARROW`\n  An arrow that stretches until the tabstop.\n* `view.TD_STRIKEOUT`\n  A horizontal line that stretches until the tabstop.\n\nThe default value is `view.TD_LONGARROW`.
927tab_indents buffer.tab_indents (bool)\nIndent text when tabbing within indentation.\nThe default value is `false`.
928tab_label buffer.tab_label (string)\nThe buffer's tab label in the tab bar.
929tab_width buffer.tab_width (number)\nThe number of space characters represented by a tab character.\nThe default value is `8`.
930tabs ui.tabs (bool)\nWhether or not to display the tab bar when multiple buffers are open.\nThe default value is `true`.
931tag buffer.tag (table, Read-only)\nList of capture text for capture numbers from a regular expression search.
932tags _M.ansi_c.tags (table)\nList of ctags files to use for autocompletion in addition to the current\nproject's top-level *tags* file or the current directory's *tags* file.
933tags _M.lua.tags (table)\nList of "fake" ctags files (or functions that return such files) to use for\nautocompletion.\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.\nThe *modules/lua/tadoc.lua* script can generate *tags* and\n*api* files for Lua modules via LuaDoc.
934target_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()`.
935target_end_virtual_space buffer.target_end_virtual_space (number)\nThe position of the end of virtual space in the target range.\nThis is set to `1` when `buffer.target_start` or\n`buffer.target_end` is set, or when `buffer.set_target_range()` is\ncalled.
936target_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.
937target_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()`.
938target_start_virtual_space buffer.target_start_virtual_space (number)\nThe position of the beginning of virtual space in the target range.\nThis is set to `1` when `buffer.target_start` or\n`buffer.target_end` is set, or when `buffer.set_target_range()` is\ncalled.
939target_text buffer.target_text (string, Read-only)\nThe text in the target range.
940target_whole_document buffer.target_whole_document(buffer)\nDefines the target range's beginning and end positions as the beginning and\nend positions of the document, respectively.\n@param buffer A buffer.
941test textadept.run.test(root_directory)\nRuns tests for the project whose root path is *root_directory* or the current\nproject using the shell command from the `test_commands` table.\nThe current project is determined by either the buffer's filename or the\ncurrent working directory.\nEmits `TEST_OUTPUT` events.\n@param root_directory The path to the project to run tests for. The default\n  value is the current project.\n@see test_commands\n@see _G.events
942test_commands textadept.run.test_commands (table)\nMap of project root paths to their associated "test" shell command line\nstrings or functions that return such strings.\nFunctions may also return a working directory and process environment table\nto operate in. By default, the working directory is the project's root\ndirectory and the environment is Textadept's environment.
943text_height view.text_height(view, line)\nReturns the pixel height of line number *line*.\n@param view A view.\n@param line The line number in *view* to get the pixel height of.\n@return number
944text_length buffer.text_length (number, Read-only)\nThe number of bytes in the buffer.
945text_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*.
946text_width view.text_width(view, style_num, text)\nReturns the pixel width string *text* would have when styled with style\nnumber *style_num*, in the range of `1` to `256`.\n@param view A view.\n@param style_num The style number between `1` and `256` to use.\n@param text The text to measure the width of.\n@return number
947textadept _G.textadept (module)\nThe textadept module.\nIt provides utilities for editing text in Textadept.
948textbox ui.dialogs.textbox(options)\nPrompts the user with a multiple-line textbox dialog defined by dialog\noptions table *options*, returning the selected button's index.\nIf *options*.`string_output` is `true`, returns the selected button's label.\nIf *options*.`editable` is `true`, also returns the textbox's text. If the\ndialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the dialog.\n\n  * `title`: The dialog's title text.\n  * `informative_text`: The dialog's main message text.\n  * `text`: The dialog's initial textbox text.\n  * `text_from_file`: The filename whose contents are loaded into the\n    textbox. This option has no effect when `text` is given.\n  * `button1`: The right-most button's label. The default value is\n    `_L['OK']`.\n  * `button2`: The middle button's label.\n  * `button3`: The left-most button's label. This option requires `button2`\n    to be set.\n  * `editable`: Allows the user to edit the textbox's text. The default value\n    is `false`.\n  * `focus_textbox`: Focus the textbox instead of the buttons. The default\n    value is `false`.\n  * `scroll_to`: Where to scroll the textbox's text.\n    The available values are `"top"` and `"bottom"`. The default value is\n    `"top"`.\n  * `selected`: Select all of the textbox's text. The default value is\n    `false`.\n  * `monospaced_font`: Use a monospaced font in the textbox instead of a\n    proportional one. The default value is `false`.\n  * `string_output`: Return the selected button's label (instead of its\n    index) or the dialog's exit status instead of the button's index (instead\n    of its exit code). The default value is `false`.\n  * `width`: The dialog's pixel width.\n  * `height`: The dialog's pixel height.\n  * `float`: Show the dialog on top of all desktop windows. The default value\n    is `false`.\n  * `timeout`: The integer number of seconds the dialog waits for the user to\n    select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.textbox{title = 'License Agreement',\n  informative_text = 'You agree to:', text_from_file = _HOME..'/LICENSE'}\n@return selected button or exit code, textbox text
949timeout _G.timeout(interval, f, ...)\nCalls function *f* with the given arguments after *interval* seconds.\nIf *f* returns `true`, calls *f* repeatedly every *interval* seconds as long\nas *f* returns `true`. A `nil` or `false` return value stops repetition.\n@param interval The interval in seconds to call *f* after.\n@param f The function to call.\n@param ... Additional arguments to pass to *f*.
950title ui.title (string, Write-only)\nThe title text of Textadept's window.
951to_eol lexer.to_eol(prefix, escape)\nCreates and returns a pattern that matches from string or pattern *prefix*\nuntil the end of the line.\n*escape* indicates whether the end of the line can be escaped with a '\'\ncharacter.\n@param prefix String or pattern prefix to start matching at.\n@param escape Optional flag indicating whether or not newlines can be escaped\n by a '\' character. The default value is `false`.\n@usage local line_comment = lexer.to_eol('//')\n@usage local line_comment = lexer.to_eol(S('#;'))\n@return pattern
952toggle textadept.bookmarks.toggle()\nToggles a bookmark on the current line.
953toggle_caret_sticky buffer.toggle_caret_sticky(buffer)\nCycles between `buffer.caret_sticky` option settings `buffer.CARETSTICKY_ON`\nand `buffer.CARETSTICKY_OFF`.\n@param buffer A buffer.\n@see caret_sticky
954toggle_comment textadept.editing.toggle_comment()\nComments or uncomments the selected lines based on the current language.\nAs long as any part of a line is selected, the entire line is eligible for\ncommenting/uncommenting.\n@see comment_string
955toggle_fold view.toggle_fold(view, line)\nToggles the fold point on line number *line* between expanded (where all of\nits child lines are displayed) and contracted (where all of its child lines\nare hidden).\n@param view A view.\n@param line The line number in *view* to toggle the fold on.\n@see set_default_fold_display_text
956toggle_fold_show_text view.toggle_fold_show_text(view, line, text)\nToggles a fold point on line number *line* between expanded (where all of\nits child lines are displayed) and contracted (where all of its child lines\nare hidden), and shows string *text* next to that line.\n*text* is drawn with style number `view.STYLE_FOLDDISPLAYTEXT`.\n@param view A view.\n@param line The line number in *view* to toggle the fold on and display\n  *text* after.\n@param text The text to display after the line.
957token lexer.token(name, patt)\nCreates and returns a token pattern with token name *name* and pattern\n*patt*.\nIf *name* is not a predefined token name, its style must be defined via\n`lexer.add_style()`.\n@param name The name of token. If this name is not a predefined token name,\n  then a style needs to be assiciated with it via `lexer.add_style()`.\n@param patt The LPeg pattern associated with the token.\n@usage local ws = token(lexer.WHITESPACE, lexer.space^1)\n@usage local annotation = token('annotation', '@' * lexer.word)\n@return pattern
958transpose_chars textadept.editing.transpose_chars()\nTransposes characters intelligently.\nIf the caret is at the end of a line, transposes the two characters before\nthe caret. Otherwise, the characters to the left and right are.
959typeover_chars textadept.editing.typeover_chars (table)\nTable of characters to move over when typed.\nThe ASCII values of characters are keys and are assigned non-`nil` values.\nThe default characters are ')', ']', '}', ''', and '"'.
960ui _G.ui (module)\nUtilities for interacting with Textadept's user interface.
961undo buffer.undo(buffer)\nUndoes the most recent action.\n@param buffer A buffer.
962unsplit 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.
963update ui.update()\nProcesses pending GTK events, including reading from spawned processes.\nThis function is primarily used in unit tests.
964upper lexer.upper (pattern)\nA pattern that matches any upper case character ('A'-'Z').
965upper_case buffer.upper_case(buffer)\nConverts the selected text to upper case letters.\n@param buffer A buffer.
966use_tabs buffer.use_tabs (bool)\nUse tabs instead of spaces in indentation. Changing the current setting\ndoes not convert any of the buffer's existing indentation. Use\n`textadept.editing.convert_indentation()` to do so.\nThe default value is `true`.
967user_list_show buffer.user_list_show(buffer, id, items)\nDisplays a user list identified by list identifier number *id* and\nconstructed from string *items* (whose items are delimited by\n`buffer.auto_c_separator` characters).\nThe sorted order of *items* (`buffer.auto_c_order`) must have already been\ndefined. When the user selects an item, *id* is sent in a\n`USER_LIST_SELECTION` event along with the selection.\n@param buffer A buffer.\n@param id The list identifier number greater than zero to use.\n@param items The sorted string of words to show, separated by\n  `buffer.auto_c_separator` characters (initially spaces).\n@see _SCINTILLA.next_user_list_type\n@see events.USER_LIST_SELECTION
968v_scroll_bar view.v_scroll_bar (bool)\nDisplay the vertical scroll bar.\nThe default value is `true`.
969vc_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.
970vc_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.
971vc_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.
972vc_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.
973vc_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.
974vc_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.
975vc_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.
976vertical_center_caret view.vertical_center_caret(view)\nCenters current line in the view.\n@param view A view.
977view _G.view (module)\nA Textadept view object.\nConstants are documented in the fields they apply to.\nWhile you can work with individual view instances, it is often useful to work\nwith just the global one.\nMany of these functions and fields are derived from view-specific\nfunctionality of the Scintilla editing component, and additional information\ncan be found on the\nScintilla website.\nNote that with regard to Scintilla-specific functionality, this API is a\n_suggestion_, not a hard requirement. All of that functionality also exists\nin `buffer`, even if undocumented.\nAny view fields set on startup (e.g. in *~/.textadept/init.lua*) will be the\ndefault, initial values for all views.
978view _G.view (table)\nThe current view.
979view_eol view.view_eol (bool)\nDisplay end of line characters.\nThe default value is `false`.
980view_ws view.view_ws (number)\nThe whitespace visibility mode.\n\n* `view.WS_INVISIBLE`\n  Whitespace is invisible.\n* `view.WS_VISIBLEALWAYS`\n  Display all space characters as dots and tab characters as arrows.\n* `view.WS_VISIBLEAFTERINDENT`\n  Display only non-indentation spaces and tabs as dots and arrows.\n* `view.WS_VISIBLEONLYININDENT`\n  Display only indentation spaces and tabs as dots and arrows.\n\nThe default value is `view.WS_INVISIBLE`.
981virtual_space_options buffer.virtual_space_options (number)\nThe virtual space mode.\n\n* `buffer.VS_NONE`\n  Disable virtual space.\n* `buffer.VS_RECTANGULARSELECTION`\n  Enable virtual space only for rectangular selections.\n* `buffer.VS_USERACCESSIBLE`\n  Enable virtual space.\n* `buffer.VS_NOWRAPLINESTART`\n  Prevent the caret from wrapping to the previous line via\n  `buffer:char_left()` and `buffer:char_left_extend()`. This option is not\n  restricted to virtual space and should be added to any of the above\n  options.\n\nWhen virtual space is enabled, the caret may move into the space past end\nof line characters.\nThe default value is `buffer.VS_NONE`.
982visible_from_doc_line view.visible_from_doc_line(view, line)\nReturns the displayed line number of actual line number *line*, taking\nwrapped, annotated, and hidden lines into account, or `-1` if *line* is\noutside the range of lines in the buffer.\nLines can occupy more than one display line if they wrap.\n@param view A view.\n@param line The line number in *view* to use.\n@return number
983wait spawn_proc:wait()\nBlocks until process *spawn_proc* finishes (if it has not already done so)\nand returns its status code.\n@return integer status code
984walk lfs.walk(dir, filter, n, include_dirs)\nReturns an iterator that iterates over all files and sub-directories (up to\n*n* levels deep) in directory *dir* and yields each file found.\nString or list *filter* determines which files to yield, with the default\nfilter being `lfs.default_filter`. A filter consists of Lua patterns that\nmatch file and directory paths to include or exclude. Exclusive patterns\nbegin with a '!'. If no inclusive patterns are given, any path is initially\nconsidered. As a convenience, file extensions can be specified literally\ninstead of as a Lua pattern (e.g. '.lua' vs. '%.lua$'), and '/' also matches\nthe Windows directory separator ('[/\\]' is not needed).\n@param dir The directory path to iterate over.\n@param filter Optional filter for files and directories to include and\n  exclude. The default value is `lfs.default_filter`.\n@param n Optional maximum number of directory levels to descend into.\n  The default value is `nil`, which indicates no limit.\n@param include_dirs Optional flag indicating whether or not to yield\n  directory names too. Directory names are passed with a trailing '/' or '\',\n  depending on the current platform.\n  The default value is `false`.\n@see filter
985whitespace_chars buffer.whitespace_chars (string)\nThe string set of characters recognized as whitespace characters.\nSet this only after setting `buffer.word_chars`.\nThe default value is a string that contains all non-newline characters less\nthan ASCII value 33.
986whitespace_size view.whitespace_size (number)\nThe pixel size of the dots that represent space characters when whitespace\nis visible.\nThe default value is `1`.
987whole_word ui.find.whole_word (bool)\nMatch search text only when it is surrounded by non-word characters in\nsearches.\nThe default value is `false`.
988whole_word_label_text ui.find.whole_word_label_text (string, Write-only)\nThe text of the "Whole word" label.\nThis is primarily used for localization.
989word lexer.word (pattern)\nA pattern that matches a typical word. Words begin with a letter or\nunderscore and consist of alphanumeric and underscore characters.
990word_chars buffer.word_chars (string)\nThe string set of characters recognized as word characters.\nThe default value is a string that contains alphanumeric characters, an\nunderscore, and all characters greater than ASCII value 127.
991word_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 the set of characters that constitute words. If\n*pos* has a non-word character to its right and *only_word_chars* is `false`,\nreturns the first word 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.
992word_left buffer.word_left(buffer)\nMoves the caret left one word.\n`buffer.word_chars` contains the set of characters that constitute words.\n@param buffer A buffer.
993word_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 the set of characters that constitute words.\n@param buffer A buffer.
994word_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.
995word_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 the set of characters that constitute words.\n@param buffer A buffer.
996word_match lexer.word_match(words, case_insensitive, word_chars)\nCreates and returns a pattern that matches any single word in string *words*.\n*case_insensitive* indicates whether or not to ignore case when matching\nwords.\nThis is a convenience function for simplifying a set of ordered choice word\npatterns.\nIf *words* is a multi-line string, it may contain Lua line comments (`--`)\nthat will ultimately be ignored.\n@param words A string list of words separated by spaces.\n@param case_insensitive Optional boolean flag indicating whether or not the\n  word match is case-insensitive. The default value is `false`.\n@param word_chars Unused legacy parameter.\n@usage local keyword = token(lexer.KEYWORD, word_match[[foo bar baz]])\n@usage local keyword = token(lexer.KEYWORD, word_match([[foo-bar foo-baz\n  bar-foo bar-baz baz-foo baz-bar]], true))\n@return pattern
997word_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 the set of characters that constitute words.\n@param buffer A buffer.
998word_part_left_extend buffer.word_part_left_extend(buffer)\nMoves the caret to the previous part of the current word, extending the\nselected text to the new position.\nWord parts are delimited by underscore characters or changes in\ncapitalization.\n`buffer.word_chars` contains the set of characters that constitute words.\n@param buffer A buffer.
999word_part_right buffer.word_part_right(buffer)\nMoves the caret to the next part of the current word.\nWord parts are delimited by underscore characters or changes in\ncapitalization.\n`buffer.word_chars` contains the set of characters that constitute words.\n@param buffer A buffer.
1000word_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 the set of characters that constitute words.\n@param buffer A buffer.
1001word_right buffer.word_right(buffer)\nMoves the caret right one word.\n`buffer.word_chars` contains the set of characters that constitute words.\n@param buffer A buffer.
1002word_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 the set of characters that constitute words.\n@param buffer A buffer.
1003word_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.
1004word_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 the set of characters that constitute words.\n@param buffer A buffer.
1005word_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 the set of characters that constitute words. If\n*pos* has a non-word character to its left and *only_word_chars* is `false`,\nreturns the last word 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.
1006wrap_count view.wrap_count(view, line)\nReturns the number of wrapped lines needed to fully display line number\n*line*.\n@param view A view.\n@param line The line number in *view* to use.\n@return number
1007wrap_indent_mode view.wrap_indent_mode (number)\nThe wrapped line indent mode.\n\n* `view.WRAPINDENT_FIXED`\n  Indent wrapped lines by `view.wrap_start_indent`.\n* `view.WRAPINDENT_SAME`\n  Indent wrapped lines the same amount as the first line.\n* `view.WRAPINDENT_INDENT`\n  Indent wrapped lines one more level than the level of the first line.\n* `view.WRAPINDENT_DEEPINDENT`\n  Indent wrapped lines two more levels than the level of the first line.\n\nThe default value is `view.WRAPINDENT_FIXED`.
1008wrap_mode view.wrap_mode (number)\nLong line wrap mode.\n\n* `view.WRAP_NONE`\n  Long lines are not wrapped.\n* `view.WRAP_WORD`\n  Wrap long lines at word (and style) boundaries.\n* `view.WRAP_CHAR`\n  Wrap long lines at character boundaries.\n* `view.WRAP_WHITESPACE`\n  Wrap long lines at word boundaries (ignoring style boundaries).\n\nThe default value is `view.WRAP_NONE`.
1009wrap_start_indent view.wrap_start_indent (number)\nThe number of spaces of indentation to display wrapped lines with if\n`view.wrap_indent_mode` is `view.WRAPINDENT_FIXED`.\nThe default value is `0`.
1010wrap_visual_flags view.wrap_visual_flags (number)\nThe wrapped line visual flag display mode.\n\n* `view.WRAPVISUALFLAG_NONE`\n  No visual flags.\n* `view.WRAPVISUALFLAG_END`\n  Show a visual flag at the end of a wrapped line.\n* `view.WRAPVISUALFLAG_START`\n  Show a visual flag at the beginning of a sub-line.\n* `view.WRAPVISUALFLAG_MARGIN`\n  Show a visual flag in the sub-line's line number margin.\n\nThe default value is `view.WRAPVISUALFLAG_NONE`.
1011wrap_visual_flags_location view.wrap_visual_flags_location (number)\nThe wrapped line visual flag location.\n\n* `view.WRAPVISUALFLAGLOC_DEFAULT`\n  Draw a visual flag near the view's right margin.\n* `view.WRAPVISUALFLAGLOC_END_BY_TEXT`\n  Draw a visual flag near text at the end of a wrapped line.\n* `view.WRAPVISUALFLAGLOC_START_BY_TEXT`\n  Draw a visual flag near text at the beginning of a subline.\n\nThe default value is `view.WRAPVISUALFLAGLOC_DEFAULT`.
1012write spawn_proc:write(...)\nWrites string input to the stdin of process *spawn_proc*.\nNote: On Linux, if more than 65536 bytes (64K) are to be written, it is\npossible those bytes need to be written in 65536-byte (64K) chunks, or the\nprocess may not receive all input. However, it is also possible that there is\na limit on how many bytes can be written in a short period of time, perhaps\n196608 bytes (192K).\n@param ... Standard input for *spawn_proc*.
1013x_offset view.x_offset (number)\nThe horizontal scroll pixel position.\nA value of `0` is the normal position with the first text column visible at\nthe left of the view.
1014xdigit lexer.xdigit (pattern)\nA pattern that matches any hexadecimal digit ('0'-'9', 'A'-'F', 'a'-'f').
1015yesno_msgbox ui.dialogs.yesno_msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options* and with localized "Yes", "No", and "Cancel" buttons,\nreturning the selected button's index.\nIf *options*.`string_output` is `true`, returns the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n  * `title`: The dialog's title text.\n  * `text`: The dialog's main message text.\n  * `informative_text`: The dialog's extra informative text.\n  * `icon`: The dialog's GTK stock icon name. Examples are\n    "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n    "gtk-dialog-warning". The dialog does not display an icon by default.\n  * `icon_file`: The dialog's icon file path. This option has no effect when\n    `icon` is set.\n  * `no_cancel`: Do not display the "Cancel" button. The default value is\n    `false`.\n  * `string_output`: Return the selected button's label (instead of its\n    index) or the dialog's exit status instead of the button's index (instead\n    of its exit code). The 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
1016zoom view.zoom (number)\nThe number of points to add to the size of all fonts.\nNegative values are allowed, down to `-10`.\nThe default value is `0`.
1017zoom_in view.zoom_in(view)\nIncreases the size of all fonts by one point, up to 20.\n@param view A view.
1018zoom_out view.zoom_out(view)\nDecreases the size of all fonts by one point, down to -10.\n@param view A view.