aboutsummaryrefslogtreecommitdiff
path: root/modules/lua
diff options
context:
space:
mode:
Diffstat (limited to 'modules/lua')
-rw-r--r--modules/lua/api77
-rw-r--r--modules/lua/tags45
2 files changed, 36 insertions, 86 deletions
diff --git a/modules/lua/api b/modules/lua/api
index d0bd8122..4c08ccf3 100644
--- a/modules/lua/api
+++ b/modules/lua/api
@@ -42,7 +42,7 @@ CHAR_ADDED events.CHAR_ADDED (string)\nEmitted after the user types a text chara
CHECK_SYNTAX _M.python.CHECK_SYNTAX (bool)\nWhether or not to invoke Python to check the syntax of the current file\nwhen saving it.\nThe default value is `true`.
CLASS lexer.CLASS (string)\nThe token name for class tokens.
CLASS textadept.editing.XPM_IMAGES.CLASS (table)\nThe image number for classes.
-CLEAR keys.CLEAR (string)\nThe key that clears the current key chain.\nIt cannot be part of a key chain.\nThe default value is `'esc'` for the `Esc` (`⎋` on Mac OSX | `Esc` in\ncurses) key.
+CLEAR keys.CLEAR (string)\nThe key that clears the current key chain.\nIt cannot be part of a key chain.\nThe default value is `'esc'` for the `Esc` key.
COMMAND_ENTRY_KEYPRESS events.COMMAND_ENTRY_KEYPRESS (string)\nEmitted when pressing a key in the command entry.\nIf any handler returns `true`, the key is not inserted into the entry.\nArguments:\n\n* _`code`_: The numeric key code.\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.\n* _`meta`_: The "Command" modifier key on Mac OSX is held down.
COMMENT lexer.COMMENT (string)\nThe token name for comment tokens.
COMPILE_OUTPUT events.COMPILE_OUTPUT (string)\nEmitted when executing a language's compile shell command.\nBy default, compiler output is printed to the message buffer. To override\nthis behavior, connect to the event with an index of `1` and return `true`.\nArguments:\n\n* `lexer`: The language's lexer name.\n* `output`: A line of string output from the command.
@@ -106,7 +106,6 @@ FOLD_BASE lexer.FOLD_BASE (number)\nThe initial (root) fold level.
FOLD_BLANK lexer.FOLD_BLANK (number)\nFlag indicating that the line is blank.
FOLD_HEADER lexer.FOLD_HEADER (number)\nFlag indicating the line is fold point.
FUNCTION lexer.FUNCTION (string)\nThe token name for function tokens.
-HIGHLIGHT_BRACES textadept.editing.HIGHLIGHT_BRACES (bool)\nHighlight matching brace characters like "()[]{}".\nThe default value is `true`.\nMatching braces are defined in the `braces` table.
HOTSPOT_CLICK events.HOTSPOT_CLICK (string)\nEmitted when clicking on text that is in a style that has the hotspot\nattribute set.\nArguments:\n\n* _`position`_: The clicked text's position.\n* _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,\n `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.\n Note: If you set `buffer.rectangular_selection_modifier` to\n `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK+.
HOTSPOT_DOUBLE_CLICK events.HOTSPOT_DOUBLE_CLICK (string)\nEmitted when double-clicking on text that is in a style that has the\nhotspot attribute set.\nArguments:\n\n* _`position`_: The double-clicked text's position.\n* _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,\n `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.\n Note: If you set `buffer.rectangular_selection_modifier` to\n `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK+.
HOTSPOT_RELEASE_CLICK events.HOTSPOT_RELEASE_CLICK (string)\nEmitted when releasing the mouse after clicking on text that is in a style\nthat has the hotspot attribute set.\nArguments:\n\n* _`position`_: The clicked text's position.
@@ -396,7 +395,7 @@ _rules lexer.lexer._rules (table)\nAn ordered list of rules for a lexer grammar.
_select textadept.snippets._select()\nPrompts the user to select a snippet to be inserted from a list of global and\nlanguage-specific snippets.
_tokenstyles lexer.lexer._tokenstyles (table)\nA map of non-predefined token names to styles.\n Remember to use token names, not rule names. It is recommended to use\n predefined styles or color-agnostic styles derived from predefined styles\n to ensure compatibility with user color themes.
abs math.abs(x)\nReturns the absolute value of `x`.
-abspath lfs.abspath(filename, prefix)\nReturns the absolute path to string *filename*.\n*prefix* or `lfs.currentdir()` is prepended to a relative filename. The\nreturned path is not guaranteed to exist.\n@param filename The relative or absolute path to a file.\n@return string absolute path
+abspath lfs.abspath(filename, prefix)\nReturns the absolute path to string *filename*.\n*prefix* or `lfs.currentdir()` is prepended to a relative filename. The\nreturned path is not guaranteed to exist.\n@param filename The relative or absolute path to a file.\n@param prefix Optional prefix path prepended to a relative filename.\n@return string absolute path
acos math.acos(x)\nReturns the arc cosine of `x` (in radians).
add_selection buffer.add_selection(buffer, end_pos, start_pos)\nSelects the range of text between positions *start_pos* to *end_pos* as the\nmain selection, retaining all other selections as additional selections.\nSince an empty selection still counts as a selection, use\n`buffer:set_selection()` first when setting a list of selections.\n@param buffer A buffer.\n@param end_pos The caret position of the range of text to select in *buffer*.\n@param start_pos The anchor position of the range of text to select in\n *buffer*.
add_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.
@@ -422,7 +421,7 @@ ansi_c _G.keys.ansi_c (table)\nTable of C-specific key bindings.
ansi_c _G.snippets.ansi_c (table)\nTable of C-specific snippets.
ansi_c _M.ansi_c (module)\nThe ansi_c module.\nIt provides utilities for editing C code.
any lexer.any (pattern)\nA pattern that matches any single character.
-api_files textadept.editing.api_files (table)\nMap of lexer names to API documentation file tables.\nEach line in an API file consists of the name of a symbol (not the full\nsymbol), a space character, and that symbol's documentation. '\n' represents\na newline character.\n@see document_symbol
+api_files textadept.editing.api_files (table)\nMap of lexer names to API documentation file tables.\nEach line in an API file consists of the name of a symbol (not the full\nsymbol), a space character, and that symbol's documentation. '\n' represents\na newline character.\n@see show_documentation
append_text buffer.append_text(buffer, text)\nAppends string *text* to the end of the buffer without modifying any existing\nselections or scrolling the text into view.\n@param buffer A buffer.\n@param text The text to append.
arg _G.arg (table)\nTable of command line parameters passed to Textadept.\n@see _G.args
args _G.args (module)\nProcesses command line arguments for Textadept.
@@ -447,6 +446,7 @@ auto_c_fill_ups buffer.auto_c_fill_ups (string, Write-only)\nThe set of characte
auto_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`.
auto_c_max_height buffer.auto_c_max_height (number)\nThe maximum number of items per page to show in autocompletion and user\nlists. The default value is `5`.
auto_c_max_width buffer.auto_c_max_width (number)\nThe maximum number of characters per item to show in autocompletion and\nuser lists.\nThe default value is `0`, which automatically sizes the width to fit the\nlongest item.
+auto_c_multi buffer.auto_c_multi (number)\nThe multiple selection autocomplete mode.\n\n* `buffer.MULTIAUTOC_ONCE`\n Autocomplete into only the main selection.\n* `buffer.MULTIAUTOC_EACH`\n Autocomplete into all selections.\n\nThe default value is `buffer.MULTIAUTOC_ONCE`.
auto_c_order buffer.auto_c_order (number)\nThe order setting for autocompletion and user lists.\n\n* `buffer.ORDER_PRESORTED`\n Lists passed to `buffer.auto_c_show` are in sorted,\n alphabetical order.\n* `buffer.ORDER_PERFORMSORT`\n Sort autocompletion lists passed to `buffer.auto_c_show`.\n* `buffer.ORDER_CUSTOM`\n Lists passed to `buffer.auto_c_show` are already in a\n custom order.\n\nThe default value is `buffer.ORDER_PRESORTED`.
auto_c_pos_start buffer.auto_c_pos_start(buffer)\nReturns the position where autocompletion started or where a user list was\nshown.\n@param buffer A buffer.\n@return number
auto_c_select buffer.auto_c_select(buffer, prefix)\nSelects the first item that starts with string *prefix* in an autocompletion\nor user list, using the case sensitivity setting `buffer.auto_c_ignore_case`.\n@param buffer A buffer.\n@param prefix The item in the list to select.
@@ -471,7 +471,7 @@ brace_bad_light_indicator buffer.brace_bad_light_indicator(buffer, use_indicator
brace_highlight buffer.brace_highlight(buffer, 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 `buffer.highlight_guide` in order to highlight the indent guide.\n@param buffer A buffer.\n@param pos1 The first position in *buffer* to highlight.\n@param pos2 The second position in *buffer* to highlight.
brace_highlight_indicator buffer.brace_highlight_indicator(buffer, use_indicator, indicator)\nHighlights matching brace characters with indicator number *indicator*, in\nthe range of `0` to `31`, instead of the\n`buffer.STYLE_BRACELIGHT` style if *use_indicator* is `true`.\n@param buffer A buffer.\n@param use_indicator Whether or not to use an indicator.\n@param indicator The indicator number to use.
brace_match buffer.brace_match(buffer, pos)\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@return number
-braces textadept.editing.braces (table)\nTable of brace characters to highlight, with language-specific brace\ncharacter tables assigned to a lexer name key.\nThe ASCII values of brace characters are keys and are assigned non-`nil`\nvalues. The default brace characters are '(', ')', '[', ']', '{', and '}'.\n@see HIGHLIGHT_BRACES
+braces textadept.editing.braces (table)\nTable of brace characters to highlight, with language-specific brace\ncharacter tables assigned to a lexer name key.\nThe ASCII values of brace characters are keys and are assigned non-`nil`\nvalues. The default brace characters are '(', ')', '[', ']', '{', and '}'.
btest bit32.btest(...)\nReturns a boolean signaling whether the bitwise "and" of its operands is\ndifferent from zero.
buffer _G.buffer (module)\nA Textadept buffer object.\nIn addition to these functions and fields, buffers also contain the constants\nwithin `_SCINTILLA.constants`, which are too numerous to list here.\nWhile you can work with individual buffer instances, it is really only useful\nto work with the global one.
buffer _G.buffer (table)\nThe current buffer in the current view.
@@ -535,12 +535,12 @@ command_entry ui.command_entry (module)\nTextadept's Command Entry.
comment_string textadept.editing.comment_string (table)\nMap of lexer names to line comment strings for programming languages, used by\nthe `block_comment()` function.\nKeys are lexer names and values are either the language's line comment\nprefixes or block comment delimiters separated by a '|' character.\n@see block_comment
compile textadept.run.compile()\nCompiles the current file based on its extension or language, using the\nshell command from the `compile_commands` table.\nEmits `COMPILE_OUTPUT` events.\n@see compile_commands\n@see _G.events
compile_commands textadept.run.compile_commands (table)\nMap of file extensions or lexer names to their associated "compile" shell\ncommand line strings or functions that return such strings.\nCommand line strings may have the following macros:\n\n + `%f` or `%(filename)`: The file's name, including its extension.\n + `%e` or `%(filename_noext)`: The file's name, excluding its extension.\n + `%d` or `%(filedir)`: The current file's directory path.\n + `%(filepath)`: The current file's full path.
-complete_lua ui.command_entry.complete_lua(code)\nShows a set of Lua code completions for string *code* or `entry_text`.\nCompletions are subject to an "abbreviated" environment where the `buffer`,\n`view`, and `ui` tables are also considered as globals.\n@param code The Lua code to complete. The default value is the value of\n `entry_text`.
concat table.concat(list [, sep [, i [, j]]])\nGiven a list where all elements are strings or numbers, returns the string\n`list[i]..sep..list[i+1] ··· sep..list[j]`. The default value for `sep` is\nthe empty string, the default for `i` is 1, and the default for `j` is\n`#list`. If `i` is greater than `j`, returns the empty string.
config package.config (string)\nA string describing some compile-time configurations for packages. This\nstring is a sequence of lines:\n The first line is the directory separator string. Default is '`\`' for\n Windows and '`/`' for all other systems.\n The second line is the character that separates templates in a path.\n Default is '`;`'.\n The third line is the string that marks the substitution points in a\n template. Default is '`?`'.\n The fourth line is a string that, in a path in Windows, is replaced by\n the executable's directory. Default is '`!`'.\n The fifth line is a mark to ignore all text before it when building the\n `luaopen_` function name. Default is '`-`'.
connect events.connect(event, f, index)\nAdds function *f* to the set of event handlers for event *event* at position\n*index*.\nIf *index* not given, appends *f* to the set of handlers. *event* may be any\narbitrary string and does not need to have been previously defined.\n@param event The string event name.\n@param f The Lua function to connect to *event*.\n@param index Optional index to insert the handler into.\n@usage events.connect('my_event', function(msg) ui.print(msg) end)\n@see disconnect
constants _SCINTILLA.constants (table)\nMap of Scintilla constant names to their numeric values.
-context_menu ui.context_menu\nThe buffer's context menu, a `ui.menu()`.\n This is a low-level field. You probably want to use the higher-level\n `textadept.menu.set_contextmenus()`.
+context_menu textadept.menu.context_menu (table)\nThe default right-click context menu.
+context_menu ui.context_menu (userdata)\nThe buffer's context menu, a `ui.menu()`.\nThis is a low-level field. You probably want to use the higher-level\n`textadept.menu.context_menu`.
contracted_fold_next buffer.contracted_fold_next(buffer, line)\nReturns the line number of the next contracted fold point starting from line\nnumber *line*, or `-1` if none exists.\n@param buffer A buffer.\n@param line The line number in *buffer* to start at.\n@return number
control_structure_patterns _M.lua.control_structure_patterns (table)\nList of patterns for auto-`end` completion for control structures.\n@see try_to_autocomplete_end
control_structure_patterns _M.ruby.control_structure_patterns (table)\nPatterns for auto `end` completion for control structures.\n@see try_to_autocomplete_end
@@ -612,17 +612,18 @@ end_styled buffer.end_styled (number, Read-only)\nThe current styling position o
end_undo_action buffer.end_undo_action(buffer)\nEnds a sequence of actions to be undone or redone as a single action.\n@param buffer A buffer.
ensure_visible buffer.ensure_visible(buffer, line)\nEnsures line number *line* is visible by expanding any fold points hiding it.\n@param buffer A buffer.\n@param line The line number in *buffer* to ensure visible.
ensure_visible_enforce_policy buffer.ensure_visible_enforce_policy(buffer, line)\nEnsures line number *line* is visible by expanding any fold points hiding it\nbased on the vertical caret policy previously defined in\n`buffer:set_visible_policy()`.\n@param buffer A buffer.\n@param line The line number in *buffer* to ensure visible.
-enter_mode ui.command_entry.enter_mode(mode)\nOpens the command entry in key mode *mode*.\nKey bindings will be looked up in `keys[mode]` instead of `keys`. The `Esc`\n(`⎋` on Mac OSX | `Esc` in curses) key exits the current mode, closes the\ncommand entry, and restores normal key lookup.\nThis function is useful for binding keys to enter a command entry mode.\n@param mode The key mode to enter into, or `nil` to exit the current mode.\n@usage keys['ce'] = {ui.command_entry.enter_mode, 'command_entry'}\n@see _G.keys.MODE
+enter_mode ui.command_entry.enter_mode(mode)\nOpens the command entry in key mode *mode*.\nKey bindings will be looked up in `keys[mode]` instead of `keys`. The `Esc`\nkey exits the current mode, closes the command entry, and restores normal key\nlookup.\nThis function is useful for binding keys to enter a command entry mode.\n@param mode The key mode to enter into, or `nil` to exit the current mode.\n@usage keys['ce'] = {ui.command_entry.enter_mode, 'command_entry'}\n@see _G.keys.MODE
entry_text ui.command_entry.entry_text (string)\nThe text in the command entry.
eol_mode buffer.eol_mode (number)\nThe current end of line mode. Changing the current mode does not convert\nany of the buffer's existing end of line characters.\nUse `buffer:convert_eols()` to do so.\n\n* `buffer.EOL_CRLF`\n Carriage return with line feed ("\r\n").\n* `buffer.EOL_CR`\n Carriage return ("\r").\n* `buffer.EOL_LF`\n Line feed ("\n").\n\nThe default value is `buffer.EOL_CRLF` on Windows platforms,\n`buffer.EOL_LF` otherwise.
error _G.error(message [, level])\nTerminates the last protected function called and returns `message`\nas the error message. Function `error` never returns.\n\nUsually, `error` adds some information about the error position at the\nbeginning of the message, if the message is a string. The `level` argument\nspecifies how to get the error position. With level 1 (the default), the\nerror position is where the `error` function was called. Level 2 points the\nerror to where the function that called `error` was called; and so on.\nPassing a level 0 avoids the addition of error position information to the\nmessage.
error_patterns textadept.run.error_patterns (table)\nList of warning and error string patterns that match various compile and run\nwarnings and errors.\nPatterns contain filename, line number, and optional warning or error message\ncaptures for single lines. When a warning or error message is double-clicked,\nthe user is taken to the point of warning/error.\nWhen adding to this list, use `(.-)` to match filenames and `(%d+)` to match\nline numbers. Also keep in mind that patterns are matched in sequential\norder; once a pattern matches, no more are tried.
events _G.events (module)\nTextadept's core event structure and handlers.
execute os.execute([command])\nThis function is equivalent to the ANSI C function `system`. It passes\n`command` to be executed by an operating system shell. Its first result is\n`true` if the command terminated successfully, or `nil` otherwise. After this\nfirst result the function returns a string and a number, as follows:\n "exit": the command terminated normally; the following number is the exit\n status of the command.\n "signal": the command was terminated by a signal; the following number is\n the signal that terminated the command.\n\nWhen called without a `command`, `os.execute` returns a boolean that is true\nif a shell is available.
-execute_lua ui.command_entry.execute_lua(code)\nExecutes string *code* as Lua code that is subject to an "abbreviated"\nenvironment.\nIn this environment, the contents of the `buffer`, `view`, and `ui` tables\nare also considered as global functions and fields.\nPrints the results of '=' expressions like in the Lua prompt.\n@param code The Lua code to execute.
exit os.exit([code [, close]])\nCalls the ANSI C function `exit` to terminate the host program. If `code` is\n`true`, the returned status is `EXIT_SUCCESS`; if `code` is `false`, the\nreturned status is `EXIT_FAILURE`; if `code` is a number, the returned status\nis this number. The default value for `code` is `true`.\n\nIf the optional second argument `close` is true, closes the Lua state before\nexiting.
exp math.exp(x)\nReturns the value *e^x*.
expr_types _M.lua.expr_types (table)\nMap of expression patterns to their types.\nExpressions are expected to match after the '=' sign of a statement.
+expr_types _M.python.expr_types (table)\nMap of expression patterns to their types.\nExpressions are expected to match after the '=' sign of a statement.
+expr_types _M.ruby.expr_types (table)\nMap of expression patterns to their types.\nExpressions are expected to match after the '=' sign of a statement.
extend lexer.extend (pattern)\nA pattern that matches any ASCII extended character (codes 0 to 255).
extensions textadept.file_types.extensions (table)\nMap of file extensions to their associated lexer names.\nIf the file type is not recognized by shebang words or first-line patterns,\neach file extension is matched against the file's extension.
extra_ascent buffer.extra_ascent (number)\nThe amount of pixel padding above lines.\nThe default value is `0`.
@@ -746,15 +747,12 @@ insert_text buffer.insert_text(buffer, pos, text)\nInserts string *text* at posi
integer lexer.integer (pattern)\nA pattern that matches either a decimal, hexadecimal, or octal number.
io _G.io (module)\nLua io module.
ipairs _G.ipairs(t)\nIf `t` has a metamethod `__ipairs`, calls it with `t` as argument and returns\nthe first three results from the call.\n\nOtherwise, returns three values: an iterator function, the table `t`, and 0,\nso that the construction\n\n for i,v in ipairs(t) do *body* end\n\nwill iterate over the pairs (`1,t[1]`), (`2,t[2]`), ..., up to the\nfirst integer key absent from the table.
-java _G.keys.java (table)\nContainer for Java-specific key bindings.
-java _G.snippets.java (table)\nContainer for Java-specific snippets.
-java _M.java (module)\nThe java module.\nIt provides utilities for editing Java code.
join_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.
keychain keys.keychain (table)\nThe current chain of key sequences. (Read-only.)\nUse the '#' operator (instead of `ipairs()`) for iteration.
keys _G.keys (module)\nManages key bindings in Textadept.
keys _G.keys (table)\nMap of key bindings to commands, with language-specific key tables assigned\nto a lexer name key.
keys textadept.keys (module)\nDefines key commands for Textadept.\nThis set of key commands is pretty standard among other text editors. If\napplicable, load this module second to last in your *~/.textadept/init.lua*,\nbefore `textadept.menu`.
-kill proc.kill(proc)\nKills running process *proc*.\n@param proc A running process created by `spawn()`.
+kill spawn_proc:kill()\nKills running process *proc*.
last_char_includes lexer.last_char_includes(s)\nCreates and returns a pattern that verifies that string set *s* contains the\nfirst non-whitespace character behind the current match position.\n@param s String character set like one passed to `lpeg.S()`.\n@usage local regex = l.last_char_includes('+-*!%^&|=,([{') *\n l.delimited_range('/')\n@return pattern
ldexp math.ldexp(m, e)\nReturns 'm2^e' (`e` should be an integer).
len string.len(s)\nReceives a string and returns its length. The empty string `""` has\nlength 0. Embedded zeros are counted, so `"a\000bc\000"` has length 5.
@@ -801,7 +799,6 @@ lines_split buffer.lines_split(buffer, pixel_width, width)\nSplits the lines in
load _G.load(ld [, source [, mode [, env]]])\nLoads a chunk.\n\nIf `ld` is a string, the chunk is this string. If `ld` is a function, `load`\ncalls it repeatedly to get the chunk pieces. Each call to `ld` must return a\nstring that concatenates with previous results. A return of an empty string,\nnil, or no value signals the end of the chunk.\n\nIf there are no syntactic errors, returns the compiled chunk as a function;\notherwise, returns <b>nil</b> plus the error message.\n\nIf the resulting function has upvalues, the first upvalue is set to the value\nof `env`, if that parameter is given, or to the value of the global\nenvironment. (When you load a main chunk, the resulting function will always\nhave exactly one upvalue, the `_ENV` variable (see §2.2). When you load a\nbinary chunk created from a function (see `string.dump`), the resulting\nfunction can have arbitrary upvalues.)\n\n`source` is used as the source of the chunk for error messages and debug\ninformation (see §4.9). When absent, it defaults to `ld`, if `ld` is a\nstring, or to "`=(load)`" otherwise.\n\nThe string `mode` controls whether the chunk can be text or binary (that is,\na precompiled chunk). It may be the string "`b`" (only binary chunks), "`t`"\n(only text chunks), or "`bt`" (both binary and text). The default is "`bt`".
load lexer.load(name, alt_name)\nInitializes or loads and returns the lexer of string name *name*.\nScintilla calls this function to load a lexer. Parent lexers also call this\nfunction to load child lexers and vice-versa. The user calls this function\nto load a lexer when using Scintillua as a Lua library.\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@return lexer object
load 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, and\nrecent files.\n@param filename Optional absolute path to the session file to load. If `nil`,\n the user is prompted for one.\n@usage textadept.session.load(filename)\n@return `true` if the session file was opened and read; `false` otherwise.\n@see DEFAULT_SESSION
-load_project _M.rails.load_project(dir)\nOpens a Rails project for snapopen.\nIf not directory is provided, the user is prompted for one.\n@param dir The Rails project directory.
loaded package.loaded (table)\nA table used by `require` to control which modules are already loaded. When\nyou require a module `modname` and `package.loaded[modname]` is not false,\n`require` simply returns the value stored there.\nThis variable is only a reference to the real table; assignments to this\nvariable do not change the table used by `require`.
loadfile _G.loadfile([filename [, mode [, env]]])\nSimilar to `load`, but gets the chunk from file `filename` or from the\nstandard input, if no file name is given.
loadlib package.loadlib(libname, funcname)\nDynamically links the host program with the C library `libname`.\n\nIf `funcname` is "`*`", then it only links with the library, making the\nsymbols exported by the library available to other dynamically linked\nlibraries. Otherwise, it looks for a function `funcname` inside the library\nand returns this function as a C function. So, `funcname` must follow the\n`lua_CFunction` prototype (see `lua_CFunction`).\n\nThis is a low-level function. It completely bypasses the package and module\nsystem. Unlike `require`, it does not perform any path searching and does\nnot automatically adds extensions. `libname` must be the complete file name\nof the C library, including if necessary a path and an extension. `funcname`\nmust be the exact name exported by the C library (which may depend on the\nC compiler and linker used).\n\nThis function is not supported by Standard C. As such, it is only available\non some platforms (Windows, Linux, Mac OS X, Solaris, BSD, plus other Unix\nsystems that support the `dlfcn` standard).
@@ -860,9 +857,10 @@ math _G.math (module)\nLua math module.
max math.max(x, ···)\nReturns the maximum value among its arguments.
max_line_state buffer.max_line_state (number, Read-only)\nThe last line number with a non-zero line state.
maximized ui.maximized (bool)\nWhether or not Textadept's window is maximized.
-menu textadept.menu (module)\nDefines the menus used by Textadept.\nIf applicable, load this module last in your *~/.textadept/init.lua*, after\n`textadept.keys` since it looks up defined key commands to show them in\nmenus.
-menu 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.set_menubar()`\nor `textadept.menu.set_contextmenus()` functions. Emits a `MENU_CLICKED`\nevent 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.set_menubar\n@see textadept.menu.set_contextmenus
-menubar ui.menubar (table)\nA table of menus defining a menubar. (Write-only)\n@see textadept.menu.set_menubar
+menu textadept.menu (module)\nDefines the menus used by Textadept.\nMenus are simply tables and may be edited in place. Submenus have `title`\nkeys with string text. Use the '#' operator (instead of `ipairs()`) for\niteration.\nIf applicable, load this module last in your *~/.textadept/init.lua*, after\n`textadept.keys` since it looks up defined key commands to show them in\nmenus.
+menu 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
+menubar textadept.menu.menubar (table)\nThe default main menubar.
+menubar ui.menubar (table)\nA table of menus defining a menubar.\nThis is a low-level field. You probably want to use the higher-level\n`textadept.menu.menubar`.\n@see textadept.menu.menubar
min math.min(x, ···)\nReturns the minimum value among its arguments.
mkdir lfs.mkdir(dirname)\nCreates a new directory. The argument is the name of the new directory.\n\nReturns true if the operation was successful; in case of error, it returns\nnil plus an error string.
modf math.modf(x)\nReturns two numbers, the integral part of `x` and the fractional part of\n`x`.
@@ -912,9 +910,6 @@ paste buffer.paste(buffer)\nPastes the clipboard's contents into the buffer, rep
path package.path (string)\nThe path used by `require` to search for a Lua loader.\nAt start-up, Lua initializes this variable with the value of the\nenvironment variable `LUA_PATH_5_2` or the environment variable `LUA_PATH`\nor with a default path defined in `luaconf.h`, if those environment\nvariables are not defined. Any "`;;`" in the value of the environment\nvariable is replaced by the default path.
patterns textadept.file_types.patterns (table)\nMap of first-line patterns to their associated lexer names.\nIf a file type is not recognized by shebang words, each pattern is matched\nagainst the first line in the file.
pcall _G.pcall(f [, arg1, ···])\nCalls function `f` with the given arguments in *protected mode*. This\nmeans that any error inside `f` is not propagated; instead, `pcall` catches\nthe error and returns a status code. Its first result is the status code (a\nboolean), which is true if the call succeeds without errors. In such case,\n`pcall` also returns all results from the call, after this first result. In\ncase of any error, `pcall` returns false plus the error message.
-php _G.keys.php (table)\nContainer for PHP-specific key bindings.
-php _G.snippets.php (table)\nContainer for PHP-specific snippets.
-php _M.php (module)\nThe php module.\nIt provides utilities for editing PHP code.
pi math.pi (number)\nThe value of 'π'.
popen io.popen(prog [, mode])\nStarts program `prog` in a separated process and returns a file handle\nthat you can use to read data from this program (if `mode` is `"r"`,\nthe default) or to write data to this program (if `mode` is `"w"`).\n\nThis function is system dependent and is not available on all platforms.
position_after buffer.position_after(buffer, pos)\nReturns the position of the character after position *pos* (taking multi-byte\ncharacters into account), or `buffer.length` if there is no character after\n*pos*.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the position after from.
@@ -926,10 +921,8 @@ preload package.preload (table)\nA table to store loaders for specific modules (
print _G.print(···)\nReceives any number of arguments and prints their values to `stdout`, using\nthe `tostring` function to convert each argument to a string. `print` is not\nintended for formatted output, but only as a quick way to show a value,\nfor instance for debugging. For complete control over the output, use\n`string.format` and `io.write`.
print lexer.print (pattern)\nA pattern that matches any printable character (' ' to '~').
print ui.print(...)\nPrints the given string messages to the message buffer.\nOpens a new buffer if one has not already been opened for printing messages.\n@param ... Message strings.
-proc _G.proc (module)\nUserdata representing a process created by `spawn()`.
proc textadept.run.proc (process)\nThe currently running process or the most recent process run.\nThis field does not exist in the terminal version.
process args.process(arg)\nProcesses command line argument table *arg*, handling switches previously\ndefined using `args.register()` and treating unrecognized arguments as\nfilenames to open.\nEmits an `ARG_NONE` event when no arguments are present.\n@param arg Argument table.\n@see register\n@see events
-project textadept.project (module)\nSimple project management for Textadept.
properties _SCINTILLA.properties (table)\nMap of Scintilla property names to table values containing their "get"\nfunction IDs, "set" function IDs, return types, and wParam types.\nThe wParam type will be non-zero if the property is indexable.\nTypes are the same as in the `functions` table.\n@see functions
property buffer.property (table)\nMap of key-value string pairs used by lexers.
property lexer.property (table)\nMap of key-value string pairs.
@@ -944,9 +937,6 @@ python _G.snippets.python (table)\nContainer for Python-specific snippets.
python _M.python (module)\nThe python module.\nIt provides utilities for editing Python code.
quit _G.quit()\nEmits a `QUIT` event, and unless any handler returns `false`, quits\nTextadept.\n@see events.QUIT
rad math.rad(x)\nReturns the angle `x` (given in degrees) in radians.
-rails _G.keys.rails (table)\nContainer for Rails-specific key bindings.
-rails _G.snippets.rails (table)\nContainer for Rails-specific snippets.
-rails _M.rails (module)\nThe rails module.\nIt provides utilities for editing Ruby on Rails code.
random math.random([m [, n]])\nThis function is an interface to the simple pseudo-random generator\nfunction `rand` provided by Standard C. (No guarantees can be given for its\nstatistical properties.)\n\nWhen called without arguments, returns a uniform pseudo-random real\nnumber in the range [0,1). When called with an integer number `m`,\n`math.random` returns a uniform pseudo-random integer in the range [1, m].\nWhen called with two integer numbers `m` and `n`, `math.random` returns a\nuniform pseudo-random integer in the range [m, n].
randomseed math.randomseed(x)\nSets `x` as the "seed" for the pseudo-random generator: equal seeds\nproduce equal sequences of numbers.
rawequal _G.rawequal(v1, v2)\nChecks whether `v1` is equal to `v2`, without invoking any\nmetamethod. Returns a boolean.
@@ -955,7 +945,7 @@ rawlen _G.rawlen(v)\nReturns the length of the object `v`,\nwhich must be a tabl
rawset _G.rawset(table, index, value)\nSets the real value of `table[index]` to `value`, without invoking any\nmetamethod. `table` must be a table, `index` any value different from nil and\nNaN, and `value` any Lua value.\n\nThis function returns `table`.
read file:read(···)\nReads the file `file`, according to the given formats, which specify\nwhat to read. For each format, the function returns a string (or a number)\nwith the characters read, or nil if it cannot read data with the specified\nformat. When called without formats, it uses a default format that reads\nthe next line (see below).\n\nThe available formats are\n "*n": reads a number; this is the only format that returns a number\n instead of a string.\n "*a": reads the whole file, starting at the current position. On end of\n file, it returns the empty string.\n "*l": reads the next line skipping the end of line, returning nil on\n end of file. This is the default format.\n "*L": reads the next line keeping the end of line (if present), returning\n nil on end of file.\n *number*: reads a string with up to this number of bytes, returning nil on\n end of file. If number is zero, it reads nothing and returns an empty\n string, or nil on end of file.
read io.read(···)\nEquivalent to `io.input():read(···)`.
-read proc.read(proc, arg)\nReads and returns stdout from process *proc*, according to string format or\nnumber *arg*.\nSimilar to Lua's `io.read()` and blocks for input. *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. The stdout callback\nfunction passed to `spawn()` will not be called until the stdout buffer is\nclear.\n@param proc A process created by `spawn()`.\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
+read spawn_proc:read(arg)\nReads and returns stdout from process *proc*, according to string format or\nnumber *arg*.\nSimilar to Lua's `io.read()` and blocks for input. *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. The stdout callback\nfunction passed to `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
read_only buffer.read_only (bool)\nWhether or not the buffer is read-only.\nThe default value is `false`.
recent_files io.recent_files (table)\nList of recently opened files, the most recent being towards the top.
rectangular_selection_anchor buffer.rectangular_selection_anchor (number)\nThe rectangular selection's anchor position.
@@ -994,9 +984,6 @@ reverse string.reverse(s)\nReturns a string that is the string `s` reversed.
rgba_image_height buffer.rgba_image_height (number)\nThe height of the RGBA image to be defined using\n`buffer:marker_define_rgba_image()`.
rgba_image_scale buffer.rgba_image_scale (number)\nThe scale factor in percent of the RGBA image to be defined using\n`buffer:marker_define_rgba_image()`.\nThis is useful on OSX with a retina display where each display unit is 2\npixels: use a factor of `200` so that each image pixel is displayed using a\nscreen pixel. The default scale, `100`, will stretch each image pixel to\ncover 4 screen pixels on a retina display.
rgba_image_width buffer.rgba_image_width (number)\nThe width of the RGBA image to be defined using\n`buffer:marker_define_rgba_image()` and\n`buffer:register_rgba_image()`.
-rhtml _G.keys.rhtml (table)\nContainer for RHTML-specific key bindings.
-rhtml _G.snippets.rhtml (table)\nContainer for RHTML-specific snippets.
-rhtml _M.rhtml (module)\nThe RHTML module.\nIt provides utilities for editing RHTML.
rmdir lfs.rmdir(dirname)\nRemoves an existing directory. The argument is the name of the directory.\n\nReturns true if the operation was successful; in case of error, it returns\nnil plus an error string.
rotate_selection buffer.rotate_selection(buffer)\nDesignates the next additional selection to be the main selection.\n@param buffer A buffer.
rrotate bit32.rrotate(x, disp)\nReturns the number `x` rotated `disp` bits to the right. The number `disp`\nmay be any representable integer.\n\nFor any valid displacement, the following identity holds:\n\n assert(bit32.rrotate(x, disp) == bit32.rrotate(x, disp % 32))\n\nIn particular, negative displacements rotate to the left.
@@ -1034,7 +1021,6 @@ select _G.select(index, ···)\nIf `index` is a number, returns all arguments a
select_all buffer.select_all(buffer)\nSelects all of the buffer's text without scrolling the view.\n@param buffer A buffer.
select_command textadept.menu.select_command()\nPrompts the user to select a menu command to run.
select_enclosed textadept.editing.select_enclosed(left, right)\nSelects the text between strings *left* and *right* that enclose the caret.\nIf that range is already selected, toggles between selecting *left* and\n*right* as well.\n@param left The left part of the enclosure.\n@param right The right part of the enclosure.
-select_indented_block textadept.editing.select_indented_block()\nSelects the surrounding block of text whose lines' indentation levels are\ngreater than or equal to the current line's level.\nIf a text block is selected and the lines immediately above and below it are\none indentation level lower, adds those lines to the selection.
select_lexer textadept.file_types.select_lexer()\nPrompts the user to select a lexer for the current buffer.\n@see buffer.set_lexer
select_line textadept.editing.select_line()\nSelects the current line.
select_paragraph textadept.editing.select_paragraph()\nSelects the current paragraph.\nParagraphs are surrounded by one or more blank lines.
@@ -1052,26 +1038,15 @@ selection_n_end buffer.selection_n_end (table)\nTable of positions at the end of
selection_n_start buffer.selection_n_start (table)\nTable of positions at the beginning of existing selections numbered from\nzero, the main selection.
selection_start buffer.selection_start (number)\nThe position of the beginning of the selected text.\nWhen set, becomes the anchor, but is not scrolled into view.
selections buffer.selections (number, Read-only)\nThe number of active selections.
-sense _M.css.sense\nThe CSS Adeptsense.\n It loads user tags from *`_USERHOME`/modules/css/tags* and user apidocs\n from *`_USERHOME`/modules/css/api*.
-sense _M.html.sense\nThe HTML Adeptsense.\n It loads user tags from *`_USERHOME`/modules/html/tags* and user apidocs\n from *`_USERHOME`/modules/html/api*.
-sense _M.java.sense\nThe Java Adeptsense.\n It loads user tags from *`_USERHOME`/modules/java/tags* and user apidocs\n from *`_USERHOME`/modules/java/api*.
-sense _M.php.sense\nThe PHP Adeptsense.\n It loads user tags from *`_USERHOME`/modules/php/tags* and user apidocs\n from *`_USERHOME`/modules/php/api*.
-sense _M.python.sense\nThe Python Adeptsense.\n It loads user tags from *`_USERHOME`/modules/python/tags* and user apidocs\n from *`_USERHOME`/modules/python/api*.
-sense _M.rails.sense\nThe Rails Adeptsense.\n It loads user tags from *`_USERHOME`/modules/rails/tags* and user apidocs\n from *`_USERHOME`/modules/rails/api*.
-sense _M.rhtml.sense\nThe RHTML Adeptsense.\n It loads user tags from *`_USERHOME`/modules/rhtml/tags* and user apidocs\n from *`_USERHOME`/modules/rhtml/api*.
-sense _M.ruby.sense\nThe Ruby Adeptsense.\n It loads user tags from *`_USERHOME`/modules/ruby/tags* and user apidocs\n from *`_USERHOME`/modules/ruby/api*.
session textadept.session (module)\nSession support for Textadept.
set_chars_default buffer.set_chars_default(buffer)\nResets `buffer.word_chars`, `buffer.whitespace_chars`, and\n`buffer.punctuation_chars` to their respective defaults.\n@param buffer A buffer.\n@see word_chars\n@see whitespace_chars\n@see punctuation_chars
-set_contextmenu textadept.menu.set_contextmenu(menu)\nSets `ui.context_menu` from menu item list *menu*.\nDeprecated in favor of `set_contextmenus()`.\n@param menu The menu table to create the context menu from.\n@see set_contextmenus
-set_contextmenus textadept.menu.set_contextmenus(buffer_menu, tab_menu)\nSets `ui.context_menu` and `ui.tab_context_menu` from menu item lists\n*buffer_menu* and *tab_menu*, respectively.\nMenu items are tables containing menu text and either a function to call or\na table containing a function with its parameters to call when an item is\nclicked. Menu items may also be sub-menus, ordered lists of menu items with\nan additional `title` key for the sub-menu's title text.\n@param buffer_menu Optional menu table to create the buffer context menu\n from. If `nil`, uses the default context menu.\n@param tab_menu Optional menu table to create the tabbar context menu from.\n If `nil`, uses the default tab context menu.\n@see ui.context_menu\n@see ui.tab_context_menu\n@see ui.menu
set_empty_selection buffer.set_empty_selection(buffer, pos)\nMoves the caret to position *pos* without scrolling the view and removes any\nselections.\n@param buffer A buffer\n@param pos The position in *buffer* to move to.
-set_encoding buffer.set_encoding(buffer, encoding)\nConverts the current 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.\n@usage io.set_buffer_encoding('ASCII')
+set_encoding buffer.set_encoding(buffer, encoding)\nConverts the current 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.\n@usage buffer:set_encoding('ASCII')
set_fold_margin_colour buffer.set_fold_margin_colour(buffer, use_setting, color)\nOverrides the fold margin's default color with color *color*, in "0xBBGGRR"\nformat,\nif *use_setting* is `true`.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
set_fold_margin_hi_colour buffer.set_fold_margin_hi_colour(buffer, use_setting, color)\nOverrides the fold margin's default highlight color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
set_hotspot_active_back buffer.set_hotspot_active_back(buffer, use_setting, color)\nOverrides the default background color of active hotspots with color *color*,\nin "0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
set_hotspot_active_fore buffer.set_hotspot_active_fore(buffer, use_setting, color)\nOverrides the default foreground color of active hotspots with color *color*,\nin "0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
set_lexer buffer.set_lexer(buffer, lexer)\nAssociates lexer name *lexer* or the auto-detected lexer name with the buffer\nand then loads the appropriate language module if that module exists.\n@param buffer A buffer.\n@param lexer Optional string lexer name to set. If `nil`, attempts to\n auto-detect the buffer's lexer.\n@usage buffer.set_lexer(buffer, 'lexer_name')
-set_menubar textadept.menu.set_menubar(menubar)\nSets `ui.menubar` from menu table *menubar*.\nEach menu is an ordered list of menu items and has a `title` key for the\ntitle text. Menu items are tables containing menu text and either a function\nto call or a table containing a function with its parameters to call when an\nitem is clicked. Menu items may also be sub-menus, ordered lists of menu\nitems with an additional `title` key for the sub-menu's title text.\n@param menubar The table of menu tables to create the menubar from.\n@see ui.menubar\n@see ui.menu
set_save_point buffer.set_save_point(buffer)\nIndicates the buffer has no unsaved changes.\n@param buffer A buffer.
set_sel buffer.set_sel(buffer, start_pos, end_pos)\nSelects the range of text between positions *start_pos* and *end_pos*,\nscrolling the selected text into view.\n@param buffer A buffer.\n@param start_pos The start position of the range of text in *buffer* to\n select. If negative, it means the end of the buffer.\n@param end_pos The end position of the range of text in *buffer* to select.\n If negative, it means remove any selection (i.e. set the `anchor` to the\n same position as `current_pos`).
set_sel_back buffer.set_sel_back(buffer, use_setting, color)\nOverrides the selection's default background color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\nOverwrites any existing `buffer.additional_sel_back` color.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
@@ -1097,10 +1072,9 @@ setuservalue debug.setuservalue(udata, value)\nSets the given `value` as the Lua
setvbuf file:setvbuf(mode [, size])\nSets the buffering mode for an output file. There are three available\nmodes:\n "no": no buffering; the result of any output operation appears immediately.\n "full": full buffering; output operation is performed only when the\n buffer is full or when you explicitly `flush` the file (see\n `io.flush`).\n "line": line buffering; output is buffered until a newline is output or\n there is any input from some special files (such as a terminal\n device).\n\nFor the last two cases, `size` specifies the size of the buffer, in\nbytes. The default is an appropriate size.
shebangs textadept.file_types.shebangs (table)\nMap of shebang words to their associated lexer names.\nIf the file has a shebang line, a line that starts with "#!" and is the first\nline in the file, each shebang word is matched against that line.
show_completions ui.command_entry.show_completions(completions)\nShows completion list *completions* for the current word prefix.\nWord prefix characters are alphanumerics and underscores. On selection, the\nword prefix is replaced with the completion.\n@param completions The table of completions to show. Non-string values are\n ignored.
-show_documentation textadept.editing.show_documentation()\nDisplays a call tip with documentation for the symbol under or directly\nbehind the caret.\nIf a call tip is already shown, cycles to the next one if it exists.\nDocumentation is stored in API files in the `api_files` table.\n@see api_files
+show_documentation textadept.editing.show_documentation()\nDisplays a call tip with documentation for the symbol under or directly\nbehind the caret.\nIf a call tip is already shown, cycles to the next one if it exists.\nDocumentation is stored in API files in the `api_files` table.\nSymbols are determined by using `buffer.word_chars`.\n@see api_files\n@see buffer.word_chars
show_lines buffer.show_lines(buffer, 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 buffer A buffer.\n@param start_line The start line of the range of lines in *buffer* to show.\n@param end_line The end line of the range of lines in *buffer* to show.
sin math.sin(x)\nReturns the sine of `x` (assumed to be in radians).
-singular _M.rails.singular\nA map of plural controller names to their singulars. Add key-value pairs to\n this if the local function `singularize()` is incorrectly converting your\n plural controller name to its singular model name.
sinh math.sinh(x)\nReturns the hyperbolic sine of `x`.
size ui.size (table)\nA table containing the width and height pixel values of Textadept's window.
size view.size (number)\nThe split resizer's pixel position if the view is a split one.
@@ -1110,7 +1084,7 @@ snippets _G.snippets (table)\nMap of snippet triggers with their snippet text, w
snippets textadept.snippets (module)\nSnippets for Textadept.
sort table.sort(list [, comp])\nSorts list elements in a given order, *in-place*, from `list[1]` to\n`list[#list]`. If `comp` is given, then it must be a function that receives\ntwo list elements and returns true when the first element must come before\nthe second in the final order (so that `not comp(list[i+1],list[i])` will be\ntrue after the sort). If `comp` is not given, then the standard Lua operator\n`<` is used instead.\n\nThe sort algorithm is not stable; that is, elements considered equal by the\ngiven order may have their relative positions changed by the sort.
space lexer.space (pattern)\nA pattern that matches any whitespace character ('\t', '\v', '\f', '\n',\n'\r', space).
-spawn _G.spawn(argv, working_dir, stdout_cb, stderr_cb, exit_cb)\nSpawns an interactive child process *argv* in a separate thread.\nThe terminal version spawns processes in the same thread.\n@param argv A command line string containing the program's name followed by\n arguments to pass to it. `PATH` is searched for program names.\n@param working_dir The child's current working directory (cwd) or `nil` to\n inherit the parent's.\n@param stdout_cb A Lua function that accepts a string parameter for a block\n of standard output read from the child. Stdout is read asynchronously in\n 1KB or 0.5KB blocks (depending on the platform), or however much data is\n available at the time.\n The terminal version sends all output, whether it be stdout or stderr, to\n this callback after the process finishes.\n@param stderr_cb A Lua function that accepts a string parameter for a block\n of standard error read from the child. Stderr is read asynchronously in 1KB\n or 0.5kB blocks (depending on the platform), or however much data is\n available at the time.\n@param exit_cb A Lua function that is called when the child process finishes.\n The child's exit status is passed.\n@usage spawn('lua buffer.filename', nil, print)\n@usage proc = spawn('lua -e "print(io.read())", nil, print)\n proc:write('foo\\n')\n@return proc\n@see _G.proc
+spawn _G.spawn(argv, working_dir, stdout_cb, stderr_cb, exit_cb)\nSpawns an interactive child process *argv* in a separate thread, returning\na handle to that process.\nThe terminal version spawns processes in the same thread.\n@param argv A command line string containing the program's name followed by\n arguments to pass to it. `PATH` is searched for program names.\n@param working_dir The child's current working directory (cwd) or `nil` to\n inherit the parent's.\n@param stdout_cb A Lua function that accepts a string parameter for a block\n of standard output read from the child. Stdout is read asynchronously in\n 1KB or 0.5KB blocks (depending on the platform), or however much data is\n available at the time.\n The terminal version sends all output, whether it be stdout or stderr, to\n this callback after the process finishes.\n@param stderr_cb A Lua function that accepts a string parameter for a block\n of standard error read from the child. Stderr is read asynchronously in 1KB\n or 0.5kB blocks (depending on the platform), or however much data is\n available at the time.\n@param exit_cb A Lua function that is called when the child process finishes.\n The child's exit status is passed.\n@usage spawn('lua buffer.filename', nil, print)\n@usage proc = spawn('lua -e "print(io.read())", nil, print)\n proc:write('foo\\n')\n@return proc
split view.split(view, vertical)\nSplits the view into top and bottom views (unless *vertical* is `true`),\nfocuses the new view, and returns both the old and new views.\nIf *vertical* is `false`, splits the view vertically into left and\nright views.\nEmits a `VIEW_NEW` event.\n@param view The view to split.\n@param vertical Optional flag indicating whether or not to split the view\n vertically. The default value is `false`, for horizontal.\n@return old view and new view.\n@see events.VIEW_NEW
sqrt math.sqrt(x)\nReturns the square root of `x`. (You can also use the expression `x^0.5`\nto compute this value.)
standard_dropdown ui.dialogs.standard_dropdown(options)\nPrompts the user with a drop down item selection dialog defined by dialog\noptions table *options* and with localized "Ok" and "Cancel" buttons,\nreturning the selected button's index along with the selected item's index\nor, if *options*.`string_output` is `true`, the selected button's label along\nwith the selected item's text.\nIf the dialog closed due to *options*.`exit_onchange`, returns `4` along with\neither the selected item's index or text. If the dialog timed out, returns\n`0` or `"timeout"`. If the user canceled the dialog, returns `-1` or\n`"delete"`.\n@param options Table of key-value option pairs for the drop down dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `items`: The list of string items to show in the drop down.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `exit_onchange`: Close the dialog after selecting a new item. The default\n value is `false`.\n * `select`: The index of the initially selected list item. The default\n value is `1`.\n * `string_output`: Return the selected button's label or the dialog's exit\n status along with the selected item's text instead of the button's index\n or the dialog's exit code along with the item's index. The default value\n is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: the integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, selected item
@@ -1118,7 +1092,7 @@ standard_inputbox ui.dialogs.standard_inputbox(options)\nPrompts the user with a
start_styling buffer.start_styling(buffer, position, style_mask, styling_mask)\nBegins styling at position *position* with styling bit-mask *styling_mask*.\n*styling_mask* specifies which style bits can be set with\n`buffer:set_styling()`.\n@param buffer A buffer.\n@param position The position in *buffer* to start styling at.\n@param styling_mask The bit mask of style bits that can be set when styling.\n@usage buffer:start_styling(0, 0xFF)
starts_line lexer.starts_line(patt)\nCreates and returns a pattern that matches pattern *patt* only at the\nbeginning of a line.\n@param patt The LPeg pattern to match on the beginning of a line.\n@usage local preproc = token(l.PREPROCESSOR, #P('#') * l.starts_line('#' *\n l.nonnewline^0))\n@return pattern
status coroutine.status(co)\nReturns the status of coroutine `co`, as a string: `"running"`, if\nthe coroutine is running (that is, it called `status`); `"suspended"`, if\nthe coroutine is suspended in a call to `yield`, or if it has not started\nrunning yet; `"normal"` if the coroutine is active but not running (that\nis, it has resumed another coroutine); and `"dead"` if the coroutine has\nfinished its body function, or if it has stopped with an error.
-status proc.status(proc)\nReturns the status of process *proc*, which is either "running" or\n"terminated".\n@param proc A process created by `spawn()`.\n@return "running" or "terminated"
+status spawn_proc:status()\nReturns the status of process *proc*, which is either "running" or\n"terminated".\n@return "running" or "terminated"
statusbar_text ui.statusbar_text (string, Write-only)\nThe text displayed in the statusbar.
stderr io.stderr (file)\nStandard error.
stdin io.stdin (file)\nStandard in.
@@ -1151,7 +1125,8 @@ swap_main_anchor_caret buffer.swap_main_anchor_caret(buffer)\nSwaps the main sel
switch_buffer ui.switch_buffer()\nPrompts the user to select a buffer to switch to.
symlinkattributes lfs.symlinkattributes(filepath [, aname])\nIdentical to lfs.attributes except that it obtains information about the link\nitself (not the file it refers to). This function is not available in Windows\nso you may want to make sure that lfs.symlinkattributes exists before using\nit.
tab 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.
-tab_context_menu ui.tab_context_menu\nThe context menu for the buffer's tab, a `ui.menu()`.\n This is a low-level field. You probably want to use the higher-level\n `textadept.menu.set_contextmenus()`.
+tab_context_menu textadept.menu.tab_context_menu (table)\nThe default tabbar context menu.
+tab_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`.
tab_indents buffer.tab_indents (bool)\nIndent text when tabbing within indentation.\nThe default value is `false`.
tab_label buffer.tab_label (string)\nThe buffer's tab label in the tab bar.
tab_width buffer.tab_width (number)\nThe number of space characters represented by a tab character.\nThe default value is `8`.
@@ -1159,7 +1134,9 @@ table _G.table (module)\nLua table module.
tabs ui.tabs (bool)\nWhether or not to display the tab bar when multiple buffers are open.\nThe default value is `true`.
tag buffer.tag (table, Read-only)\nList of capture text for capture numbers from a regular expression search.
tags _M.ansi_c.tags (table)\nList of ctags files to use for autocompletion.\n@see textadept.editing.autocomplete
-tags _M.lua.tags (table)\nList of "fake" ctags files to use for autocompletion.\nThe kind 'm' is recognized a module, 'f' as a function, 't' as a table and \n'F' as a module or table field.\n@see textadept.editing.autocomplete
+tags _M.lua.tags (table)\nList of "fake" ctags files to use for autocompletion.\nThe kind 'm' is recognized as a module, 'f' as a function, 't' as a table and\n'F' as a module or table field.\n@see textadept.editing.autocomplete
+tags _M.python.tags (table)\nList of ctags files to use for autocompletion.\n@see textadept.editing.autocomplete
+tags _M.ruby.tags (table)\n[[\n\nList of "fake" ctags files to use for autocompletion.\nIn addition to the normal ctags kinds for Ruby, the kind 'C' is recognized as\na constant and 'a' as an attribute.\n@see textadept.editing.autocomplete
tan math.tan(x)\nReturns the tangent of `x` (assumed to be in radians).
tanh math.tanh(x)\nReturns the hyperbolic tangent of `x`.
target_end buffer.target_end (number)\nThe position of the end of the target range.\nThis is also set by a successful\n`buffer:search_in_target()`.
@@ -1222,7 +1199,7 @@ view_eol buffer.view_eol (bool)\nDisplay end of line characters.\nThe default va
view_ws buffer.view_ws (number)\nThe whitespace visibility mode.\n\n* `buffer.WS_INVISIBLE`\n Whitespace is invisible.\n* `buffer.WS_VISIBLEALWAYS`\n Display all space characters as dots and tab characters as arrows.\n* `buffer.WS_VISIBLEAFTERINDENT`\n Display only non-indentation spaces and tabs as dots and arrows.\n\nThe default value is `buffer.WS_INVISIBLE`.
virtual_space_options buffer.virtual_space_options (number)\nThe virtual space mode.\n\n* `buffer.VS_NONE`\n Disable virtual space.\n* `buffer.VS_RECTANGULARSELECTION`\n Enable virtual space only for rectangular selections.\n* `buffer.VS_USERACCESSIBLE`\n Enable virtual space.\n\nWhen virtual space is enabled, the caret may move into the space past end\nof line characters.\nThe default value is `buffer.VS_NONE`.
visible_from_doc_line buffer.visible_from_doc_line(buffer, line)\nReturns the displayed line number of actual line number *line*, taking hidden\nlines into account, or `-1` if *line* is outside the range of lines in the\nbuffer.\nLines can occupy more than one display line if they wrap.\n@param buffer A buffer.\n@param line The line number in *buffer* to use.\n@return number
-wait proc.wait(proc)\nBlocks until process *proc* finishes.\n@param proc A process created by `spawn()`.
+wait spawn_proc:wait()\nBlocks until process *proc* finishes.
whitespace_chars buffer.whitespace_chars (string)\nThe string set of characters recognized as whitespace characters.\nSet this only after setting `buffer.word_chars`.\nThe default value is a string that contains all non-newline characters less\nthan ASCII value 33.
whitespace_size buffer.whitespace_size (number)\nThe pixel size of the dots that represent space characters when whitespace\nis visible.\nThe default value is `1`.
whole_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`.
@@ -1253,7 +1230,7 @@ wrap_visual_flags buffer.wrap_visual_flags (number)\nThe wrapped line visual fla
wrap_visual_flags_location buffer.wrap_visual_flags_location (number)\nThe wrapped line visual flag drawing mode.\n\n* `buffer.WRAPVISUALFLAGLOC_DEFAULT`\n Draw a visual flag near the view's right margin.\n* `buffer.WRAPVISUALFLAGLOC_END_BY_TEXT`\n Draw a visual flag near text at the end of a wrapped line.\n* `buffer.WRAPVISUALFLAGLOC_START_BY_TEXT`\n Draw a visual flag near text at the beginning of a subline.\n\nThe default value is `buffer.WRAPVISUALFLAGLOC_DEFAULT`.
write file:write(···)\nWrites the value of each of its arguments to `file`. The arguments must be\nstrings or numbers.\n\nIn case of success, this function returns `file`. Otherwise it returns nil\nplus a string describing the error.
write io.write(···)\nEquivalent to `io.output():write(···)`.
-write proc.write(proc, ...)\nWrites string input to the stdin of process *proc*.\n@param proc A process created by `spawn()`.\n@param ... Standard input for *proc*.
+write spawn_proc:write(...)\nWrites string input to the stdin of process *proc*.\n@param ... Standard input for *proc*.
x_offset buffer.x_offset (number)\nThe horizontal scroll pixel position.\nA value of `0` is the normal position with the first text column visible at\nthe left of the view.
xdigit lexer.xdigit (pattern)\nA pattern that matches any hexadecimal digit ('0'-'9', 'A'-'F', 'a'-'f').
xor bit32.xor(...)\nReturns the bitwise "exclusive or" of its operands.
diff --git a/modules/lua/tags b/modules/lua/tags
index 8d509d06..3aa77303 100644
--- a/modules/lua/tags
+++ b/modules/lua/tags
@@ -106,7 +106,6 @@ FOLD_BASE _ 0;" F class:lexer
FOLD_BLANK _ 0;" F class:lexer
FOLD_HEADER _ 0;" F class:lexer
FUNCTION _ 0;" F class:lexer
-HIGHLIGHT_BRACES _ 0;" F class:textadept.editing
HOTSPOT_CLICK _ 0;" F class:events
HOTSPOT_DOUBLE_CLICK _ 0;" F class:events
HOTSPOT_RELEASE_CLICK _ 0;" F class:events
@@ -383,13 +382,9 @@ _M _ 0;" t
_M.ansi_c _ 0;" m
_M.css _ 0;" m
_M.html _ 0;" m
-_M.java _ 0;" m
_M.lua _ 0;" m
-_M.php _ 0;" m
_M.python _ 0;" m
-_M.rails _ 0;" m
_M.rest _ 0;" m
-_M.rhtml _ 0;" m
_M.ruby _ 0;" m
_M.yaml _ 0;" m
_NAME _ 0;" F class:lexer.lexer
@@ -463,6 +458,7 @@ auto_c_fill_ups _ 0;" F class:buffer
auto_c_ignore_case _ 0;" F class:buffer
auto_c_max_height _ 0;" F class:buffer
auto_c_max_width _ 0;" F class:buffer
+auto_c_multi _ 0;" F class:buffer
auto_c_order _ 0;" F class:buffer
auto_c_pos_start _ 0;" f class:buffer
auto_c_select _ 0;" f class:buffer
@@ -553,12 +549,12 @@ command_entry _ 0;" t class:ui
comment_string _ 0;" t class:textadept.editing
compile _ 0;" f class:textadept.run
compile_commands _ 0;" t class:textadept.run
-complete_lua _ 0;" f class:ui.command_entry
concat _ 0;" f class:table
config _ 0;" F class:package
connect _ 0;" f class:events
constants _ 0;" t class:_SCINTILLA
context_menu _ 0;" F class:ui
+context_menu _ 0;" t class:textadept.menu
contracted_fold_next _ 0;" f class:buffer
control_structure_patterns _ 0;" t class:_M.lua
control_structure_patterns _ 0;" t class:_M.ruby
@@ -640,10 +636,11 @@ error_patterns _ 0;" t class:textadept.run
events _ 0;" m
events _ 0;" t
execute _ 0;" f class:os
-execute_lua _ 0;" f class:ui.command_entry
exit _ 0;" f class:os
exp _ 0;" f class:math
expr_types _ 0;" t class:_M.lua
+expr_types _ 0;" t class:_M.python
+expr_types _ 0;" t class:_M.ruby
extend _ 0;" F class:lexer
extensions _ 0;" t class:textadept.file_types
extra_ascent _ 0;" F class:buffer
@@ -768,9 +765,6 @@ integer _ 0;" F class:lexer
io _ 0;" m
io _ 0;" t
ipairs _ 0;" f
-java _ 0;" t class:_M
-java _ 0;" t class:keys
-java _ 0;" t class:snippets
join_lines _ 0;" f class:textadept.editing
keychain _ 0;" t class:keys
keys _ 0;" m
@@ -826,7 +820,6 @@ lines_split _ 0;" f class:buffer
load _ 0;" f
load _ 0;" f class:lexer
load _ 0;" f class:textadept.session
-load_project _ 0;" f class:_M.rails
loaded _ 0;" F class:package
loadfile _ 0;" f
loadlib _ 0;" f class:package
@@ -889,6 +882,7 @@ max_line_state _ 0;" F class:buffer
maximized _ 0;" F class:ui
menu _ 0;" f class:ui
menu _ 0;" t class:textadept
+menubar _ 0;" t class:textadept.menu
menubar _ 0;" t class:ui
min _ 0;" f class:math
mkdir _ 0;" f class:lfs
@@ -941,9 +935,6 @@ paste _ 0;" f class:buffer
path _ 0;" F class:package
patterns _ 0;" t class:textadept.file_types
pcall _ 0;" f
-php _ 0;" t class:_M
-php _ 0;" t class:keys
-php _ 0;" t class:snippets
pi _ 0;" F class:math
popen _ 0;" f class:io
position_after _ 0;" f class:buffer
@@ -959,7 +950,6 @@ proc _ 0;" F class:textadept.run
proc _ 0;" m
proc _ 0;" t
process _ 0;" f class:args
-project _ 0;" t class:textadept
properties _ 0;" t class:_SCINTILLA
property _ 0;" F class:buffer
property _ 0;" F class:lexer
@@ -974,9 +964,6 @@ python _ 0;" t class:keys
python _ 0;" t class:snippets
quit _ 0;" f
rad _ 0;" f class:math
-rails _ 0;" t class:_M
-rails _ 0;" t class:keys
-rails _ 0;" t class:snippets
random _ 0;" f class:math
randomseed _ 0;" f class:math
rawequal _ 0;" f
@@ -1024,9 +1011,6 @@ reverse _ 0;" f class:string
rgba_image_height _ 0;" F class:buffer
rgba_image_scale _ 0;" F class:buffer
rgba_image_width _ 0;" F class:buffer
-rhtml _ 0;" t class:_M
-rhtml _ 0;" t class:keys
-rhtml _ 0;" t class:snippets
rmdir _ 0;" f class:lfs
rotate_selection _ 0;" f class:buffer
rrotate _ 0;" f class:bit32
@@ -1064,7 +1048,6 @@ select _ 0;" f
select_all _ 0;" f class:buffer
select_command _ 0;" f class:textadept.menu
select_enclosed _ 0;" f class:textadept.editing
-select_indented_block _ 0;" f class:textadept.editing
select_lexer _ 0;" f class:textadept.file_types
select_line _ 0;" f class:textadept.editing
select_paragraph _ 0;" f class:textadept.editing
@@ -1082,18 +1065,8 @@ selection_n_end _ 0;" F class:buffer
selection_n_start _ 0;" F class:buffer
selection_start _ 0;" F class:buffer
selections _ 0;" F class:buffer
-sense _ 0;" F class:_M.css
-sense _ 0;" F class:_M.html
-sense _ 0;" F class:_M.java
-sense _ 0;" F class:_M.php
-sense _ 0;" F class:_M.python
-sense _ 0;" F class:_M.rails
-sense _ 0;" F class:_M.rhtml
-sense _ 0;" F class:_M.ruby
session _ 0;" t class:textadept
set_chars_default _ 0;" f class:buffer
-set_contextmenu _ 0;" f class:textadept.menu
-set_contextmenus _ 0;" f class:textadept.menu
set_empty_selection _ 0;" f class:buffer
set_encoding _ 0;" f class:buffer
set_fold_margin_colour _ 0;" f class:buffer
@@ -1101,7 +1074,6 @@ set_fold_margin_hi_colour _ 0;" f class:buffer
set_hotspot_active_back _ 0;" f class:buffer
set_hotspot_active_fore _ 0;" f class:buffer
set_lexer _ 0;" f class:buffer
-set_menubar _ 0;" f class:textadept.menu
set_save_point _ 0;" f class:buffer
set_sel _ 0;" f class:buffer
set_sel_back _ 0;" f class:buffer
@@ -1130,7 +1102,6 @@ show_completions _ 0;" f class:ui.command_entry
show_documentation _ 0;" f class:textadept.editing
show_lines _ 0;" f class:buffer
sin _ 0;" f class:math
-singular _ 0;" F class:_M.rails
sinh _ 0;" f class:math
size _ 0;" F class:view
size _ 0;" t class:ui
@@ -1183,6 +1154,7 @@ switch_buffer _ 0;" f class:ui
symlinkattributes _ 0;" f class:lfs
tab _ 0;" f class:buffer
tab_context_menu _ 0;" F class:ui
+tab_context_menu _ 0;" t class:textadept.menu
tab_indents _ 0;" F class:buffer
tab_label _ 0;" F class:buffer
tab_width _ 0;" F class:buffer
@@ -1192,6 +1164,8 @@ tabs _ 0;" F class:ui
tag _ 0;" F class:buffer
tags _ 0;" t class:_M.ansi_c
tags _ 0;" t class:_M.lua
+tags _ 0;" t class:_M.python
+tags _ 0;" t class:_M.ruby
tan _ 0;" f class:math
tanh _ 0;" f class:math
target_end _ 0;" F class:buffer
@@ -1208,7 +1182,6 @@ textadept.editing _ 0;" m
textadept.file_types _ 0;" m
textadept.keys _ 0;" m
textadept.menu _ 0;" m
-textadept.project _ 0;" m
textadept.run _ 0;" m
textadept.session _ 0;" m
textadept.snippets _ 0;" m
@@ -1312,4 +1285,4 @@ yesno_msgbox _ 0;" f class:ui.dialogs
yield _ 0;" f class:coroutine
zoom _ 0;" F class:buffer
zoom_in _ 0;" f class:buffer
-zoom_out _ 0;" f class:buffer \ No newline at end of file
+zoom_out _ 0;" f class:buffer