From bdccda5d155578f6564bd7b13f1d1affd48b0671 Mon Sep 17 00:00:00 2001
From: mitchell <70453897+667e-11@users.noreply.github.com>
Date: Fri, 16 Mar 2012 16:53:53 -0400
Subject: Moved "Markdown:" comments into module LuaDoc comments.
---
CHANGELOG.md | 49 +-
core/._M.luadoc | 5 +-
core/._SCINTILLA.luadoc | 1224 +++++++++++++++++-----------------
core/.buffer.luadoc | 906 +++++++++++++------------
core/.view.luadoc | 8 +-
core/args.lua | 5 +-
core/events.lua | 5 +-
core/file_io.lua | 8 +-
core/gui.lua | 16 +-
core/init.lua | 36 +-
core/keys.lua | 47 +-
core/locale.lua | 8 +-
doc/markdowndoc.lua | 40 +-
modules/cpp/init.lua | 10 +-
modules/lua/adeptsensedoc.lua | 86 ++-
modules/lua/init.lua | 10 +-
modules/lua/lua.luadoc | 26 +-
modules/textadept/adeptsense.lua | 22 +-
modules/textadept/bookmarks.lua | 8 +-
modules/textadept/command_entry.lua | 8 +-
modules/textadept/editing.lua | 35 +-
modules/textadept/filter_through.lua | 13 +-
modules/textadept/find.lua | 38 +-
modules/textadept/keys.lua | 2 +-
modules/textadept/menu.lua | 3 +-
modules/textadept/mime_types.lua | 5 +-
modules/textadept/run.lua | 5 +-
modules/textadept/session.lua | 14 +-
modules/textadept/snapopen.lua | 20 +-
modules/textadept/snippets.lua | 7 +-
30 files changed, 1332 insertions(+), 1337 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index bdf494a0..9d9e7a8d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -226,7 +226,7 @@ Changes:
* Slight API changes:
+ [`_BUFFERS`][] and [`_VIEWS`][] structure changed.
+ Removed `buffer.doc_pointer` and `view.doc_pointer`.
- + Added `view.buffer` field.
+ + Added [`view.buffer`][] field.
+ Renamed `gui.check_focused_buffer()` to [`buffer:check_global()`][].
+ [`view:goto_buffer()`][] and [`gui.goto_view()`] arguments make sense now.
(May require changes to custom key commands.)
@@ -245,6 +245,7 @@ Changes:
[dwell events]: api/events.html
[`_BUFFERS`]: api/_G.html#_BUFFERS
[`_VIEWS`]: api/_G.html#_VIEWS
+[`view.buffer`]: api/view.html#buffer
[`buffer:check_global()`]: api/buffer.html#buffer.check_global
[`view:goto_buffer()`]: api/view.html#view:goto_buffer
[`gui.goto_view()`]: api/gui.html#goto_view
@@ -270,7 +271,7 @@ Bugfixes:
* Makefile should only link to `libdl.so` on Linux/BSD.
* Fixed memory access bug in [`gui.dialog()`][].
-* Autocompletion list sort order respects `buffer.auto_c_ignore_case` now.
+* Autocompletion list sort order respects [`buffer.auto_c_ignore_case`][] now.
* Fixed split view focus bug with the same buffer in two views.
* Set new buffer EOL mode properly on Mac OSX.
@@ -288,6 +289,7 @@ Changes:
[Textadept 4.0 -- Source]: download/textadept_4.0.src.zip
[Textadept 4.0 -- Modules]: download/textadept_4.0.modules.zip
[`gui.dialog()`]: api/gui.html#dialog
+[`buffer.auto_c_ignore_case`]: api/buffer.html#auto_c_ignore_case
## 4.0 beta 2 (11 Aug 2011)
@@ -347,7 +349,7 @@ Changes:
`buffer.line_down()` is allowed).
* Complete overhaul of menus and added accelerators to [menu][] items.
* Renamed `_m.textadept.editing.SAVE_STRIPS_WS` to
- `_m.textadept.editing.STRIP_WHITESPACE_ON_SAVE`.
+ [`_m.textadept.editing.STRIP_WHITESPACE_ON_SAVE`][].
* Renamed `_m.textadept.editing.select_scope()` to
`_m.textadept.editing.select_style()`.
* *Completely new set of key commands.*
@@ -361,6 +363,7 @@ Changes:
[Textadept 4.0 beta -- Modules]: download/textadept_4.0_beta.modules.zip
[`io.open_recent_file()`]: api/io.html#open_recent_file
[`buffer` functions]: api/buffer.html#Functions
+[`_m.textadept.editing.STRIP_WHITESPACE_ON_SAVE`]: api/_M.textadept.editing.html#STRIP_WHITESPACE_ON_SAVE
[menu]: api/gui.html#gtkmenu
[Scintilla]: http://scintilla.org
@@ -514,7 +517,7 @@ Changes:
etc. is now `Ctrl+Shift+B` (`Apple+Shift+B`).
* Key commands and menu definition syntax changed.
* Snapopen allows for multiple-selection.
-* [`gui.print()`] handles `nil` and non-string arguments properly.
+* [`gui.print()`][] handles `nil` and non-string arguments properly.
* Officially supported modules have their own [repositories][] and are available
as a separate download.
@@ -562,14 +565,14 @@ Changes:
* Added class context completion to Adeptsense.
* Added class type-inference through variable assignment to Adeptsense.
* Added Adeptsense [tutorial][].
-* Added `_m.textadept.adeptsense.always_show_globals` setting for showing
+* Added [`_m.textadept.adeptsense.always_show_globals`][] setting for showing
globals in completion lists.
* `Ctrl+H` (highlight word) is now `Ctrl+Shift+H`.
* `Ctrl+H` now shows Adeptsense documentation.
* Added Adeptsense [`complete()`][] and [`show_documentation()`][] functions to
the menu.
* Language modules condensed into single `init.lua` file.
-* Added `sense.syntax.word_chars` to Adeptsense.
+* Added [`sense.syntax.word_chars`][] to Adeptsense.
* Included libpng12 build for 64-bit Debian-based Linux distros (Ubuntu).
* Added [CSS][], [HTML][], [Java][], and [Ruby][] modules with Adeptsenses.
@@ -581,8 +584,10 @@ Changes:
[`goto_ctag()`]: api/_M.textadept.adeptsense.html#goto_ctag
[Scintilla]: http://scintilla.org
[tutorial]: api/_M.textadept.adeptsense.html
+[`_m.textadept.adeptsense.always_show_globals`]: api/_M.textadept.adeptsense.html#always_show_globals
[`complete()`]: api/_M.textadept.adeptsense.html#complete
[`show_documentation()`]: api/_M.textadept.adeptsense.html#show_documentation
+[`sense.syntax.word_chars`]: api/_M.textadept.adeptsense.html#syntax
[CSS]: api/_M.css.html
[HTML]: api/_M.hypertext.html
[Java]: api/_M.java.html
@@ -645,7 +650,7 @@ Bugfixes:
Changes:
-* `buffer.rectangular_selection_modifier` on Linux is the Super/Windows key.
+* [`buffer.rectangular_selection_modifier`][] on Linux is the Super/Windows key.
* Improved Hypertext lexer.
* Added Markdown, BibTeX, CMake, CUDA, Desktop Entry, F#, GLSL, and Nemerle
lexers.
@@ -658,6 +663,7 @@ Changes:
[Textadept 3.6 -- Linux]: download/textadept_3.6.tgz
[Textadept 3.6 -- Linux x86_64]: download/textadept_3.6.x86_64.tgz
[Textadept 3.6 -- Source]: download/textadept_3.6.src.zip
+[`buffer.rectangular_selection_modifier`]: api/buffer.html#rectangular_selection_modifier
[`_m.textadept.filter_through`]: api/_M.textadept.filter_through.html
[shell commands]: 10_Advanced.html#Shell.Commands.and.Filtering.Text
@@ -721,13 +727,13 @@ Changes:
* An `update_ui` event is triggered after a Lua command is entered.
* [`gui.dialog()`][] can take tables of strings as arguments now.
* [`_m.textadept.snapopen.open()`][] takes a recursion depth as a parameter and
- falls back on a `DEFAULT_DEPTH` if necessary.
+ falls back on a [`DEFAULT_DEPTH`][] if necessary.
* Removed `_m.textadept.editing.smart_cutcopy()` and
`_m.textadept.editing.squeeze()` functions.
* Added `_m.textadept.editing.SAVE_STRIPS_WS` option to disable strip whitespace
on save.
* Changed locale implementation. Locale files are much easier to create now.
-* `gui.statusbar_text` is now readable instead of being write-only.
+* [`gui.statusbar_text`][] is now readable instead of being write-only.
* Can [highlight][] all occurances of a word.
* Added jsp lexer.
* More consistant handling of `\` directory separator for Win32.
@@ -737,7 +743,7 @@ Changes:
period of time.
* Find in files is accessible through [find API][].
* Updated to [Scintilla][] 2.22.
-* Renamed `_G.MAC` to `_G.OSX`.
+* Renamed `_G.MAC` to [`_G.OSX`][].
[Textadept 3.4 -- Win32]: download/textadept_3.4.win32.zip
[Textadept 3.4 -- Mac OSX Intel 10.5+]: download/textadept_3.4.osx.zip
@@ -747,10 +753,13 @@ Changes:
[Switch Buffers]: 4_WorkingWithFiles.html#Buffer.Browser
[`gui.dialog()`]: api/gui.html#dialog
[`_m.textadept.snapopen.open()`]: api/_M.textadept.snapopen.html#open
+[`DEFAULT_DEPTH`]: api/_M.textadept.snapopen.html#DEFAULT_DEPTH
+[`gui.statusbar_text`]: api/gui.html#statusbar_text
[highlight]: 6_AdeptEditing.html#Word.Highlight
[`_G.timeout()`]: api/_G.html#timeout
[find API]: api/gui.find.html#find_in_files
[Scintilla]: http://scintilla.org
+[`_G.OSX`]: api/_G.html#OSX
## 3.3 (01 Oct 2010)
@@ -921,14 +930,16 @@ Bugfixes:
Changes:
-* `_USERHOME` comes before `_HOME` in `package.path` so `require` searches
- `~/.textadept/` first.
+* [`_USERHOME`][] comes before [`_HOME`][] in `package.path` so `require`
+ searches `~/.textadept/` first.
[Textadept 2.2 -- Win32]: download/textadept_2.2.win32.zip
[Textadept 2.2 -- Mac OSX Intel 10.5+]: download/textadept_2.2.osx.zip
[Textadept 2.2 -- Linux]: download/textadept_2.2.tgz
[Textadept 2.2 -- Linux x86_64]: download/textadept_2.2.x86_64.tgz
[Textadept 2.2 -- Source]: download/textadept_2.2.src.zip
+[`_USERHOME`]: api/_G.html#_USERHOME
+[`_HOME`]: api/_G.html#_HOME
## 2.2 beta 2 (01 May 2010)
@@ -991,7 +1002,7 @@ Changes:
* Removed `_m.textadept.mlines` module since Scintilla's multiple selections
supercedes it.
* Removed side pane.
-* New [`gui.dialog('filteredlist', ...)] from [gcocoadialog][].
+* New [`gui.dialog('filteredlist', ...)][] from [gcocoadialog][].
* Can select buffer from filteredlist dialog (replacing side pane buffer list).
* Can select lexer from filteredlist dialog.
* Can have user `key_commands.lua`, `snippets.lua`, `mime_types.conf`,
@@ -1008,7 +1019,7 @@ Changes:
[Textadept 2.2 beta -- Linux x86_64]: download/textadept_2.2_beta.x86_64.tgz
[Textadept 2.2 beta -- Source]: download/textadept_2.2_beta.src.zip
[gcocoadialog]: http://foicica.com/gcocoadialog
-[`gui.dialog('filteredist', ...)]: api/gui.html#dialog
+[`gui.dialog('filteredlist', ...)]: api/gui.html#dialog
## 2.1 (01 Mar 2010)
@@ -1032,7 +1043,7 @@ Bugfixes:
Changes:
* Added Dot and JSON lexers.
-* Search `_USERHOME` in addition to `_HOME` for themes.
+* Search [`_USERHOME`][] in addition to [`_HOME`][] for themes.
* Added command line switch for not loading/saving session.
* Modified key commands to be more key-layout agnostic.
* Added `reset_before` and `reset_after` events while `textadept.reset()` is
@@ -1047,6 +1058,8 @@ Changes:
[Textadept 2.1 -- Linux]: download/textadept_2.1.tgz
[Textadept 2.1 -- Linux x86_64]: download/textadept_2.1.x86_64.tgz
[Textadept 2.1 -- Source]: download/textadept_2.1.src.zip
+[`_USERHOME`]: api/_G.html#_USERHOME
+[`_HOME`]: api/_G.html#_HOME
[Scintilla]: http://scintilla.org
## 2.0 (01 Oct 2009)
@@ -1074,7 +1087,7 @@ Changes:
* Refactored `modules/textadept/lsnippets.lua`.
* Updated key commands.
* Allow PM modules in the `~/.textadept` user directory.
-* Added `style_whitespace` to [lexers][] for custom styles.
+* Added [`style_whitespace`][] to [lexers][] for custom styles.
* Added standard `F3` key command for "Find Next" for Windows/Linux.
[Textadept 2.0 -- Win32]: download/textadept_2.0.win32.zip
@@ -1082,6 +1095,7 @@ Changes:
[Textadept 2.0 -- Linux]: download/textadept_2.0.tgz
[Textadept 2.0 -- Linux x86_64]: download/textadept_2.0.x86_64.tgz
[Textadept 2.0 -- Source]: download/textadept_2.0.src.zip
+[`style_whitespace`]: api/lexer.html#style_whitespace
[lexers]: api/lexer.html
## 2.0 beta (31 Jul 2009)
@@ -1513,7 +1527,7 @@ Download:
Bugfixes:
* Fixed bug in editing module's [`select_indented_block()`][].
-* Fixed empty `buffer.filename` bug in `textadept.io.save_as()`.
+* Fixed empty [`buffer.filename`][] bug in `textadept.io.save_as()`.
* Fixed setting of Ruby lexer after detecting filetype.
Updates:
@@ -1528,6 +1542,7 @@ Updates:
[Textadept 0.3 -- Linux]: download/ta_beta_r3.tgz
[`select_indented_block()`]: api/_M.textadept.editing.html#select_indented_block
+[`buffer.filename`]: api/buffer.html#filename
[Zenity]: http://live.gnome.org/Zenity
[lua_dialog]: http://luaforge.net/projects/lua-dialog
diff --git a/core/._M.luadoc b/core/._M.luadoc
index e11249be..b73e9000 100644
--- a/core/._M.luadoc
+++ b/core/._M.luadoc
@@ -5,9 +5,7 @@
--[[ This comment is for LuaDoc.
---
-- A table of loaded modules.
-module('_M')]]
-
--- Markdown:
+--
-- ## Overview
--
-- Note that while language-specific modules can only be used by files of that
@@ -96,3 +94,4 @@ module('_M')]]
-- }
--
-- See `modules/textadept/menu.lua` for examples on how to define menus.
+module('_M')]]
diff --git a/core/._SCINTILLA.luadoc b/core/._SCINTILLA.luadoc
index 7474adb7..fcc953cf 100644
--- a/core/._SCINTILLA.luadoc
+++ b/core/._SCINTILLA.luadoc
@@ -2,615 +2,615 @@
-- This is a DUMMY FILE used for making Adeptsense for built-in constants in the
-- global _SCINTILLA.constants table.
--- * `_G._SCINTILLA.constants.ANNOTATION_BOXED`: 2
--- * `_G._SCINTILLA.constants.ANNOTATION_HIDDEN`: 0
--- * `_G._SCINTILLA.constants.ANNOTATION_STANDARD`: 1
--- * `_G._SCINTILLA.constants.CARETSTYLE_BLOCK`: 2
--- * `_G._SCINTILLA.constants.CARETSTYLE_INVISIBLE`: 0
--- * `_G._SCINTILLA.constants.CARETSTYLE_LINE`: 1
--- * `_G._SCINTILLA.constants.CARET_EVEN`: 8
--- * `_G._SCINTILLA.constants.CARET_JUMPS`: 16
--- * `_G._SCINTILLA.constants.CARET_SLOP`: 1
--- * `_G._SCINTILLA.constants.CARET_STRICT`: 4
--- * `_G._SCINTILLA.constants.EDGE_BACKGROUND`: 2
--- * `_G._SCINTILLA.constants.EDGE_LINE`: 1
--- * `_G._SCINTILLA.constants.EDGE_NONE`: 0
--- * `_G._SCINTILLA.constants.INDIC0_MASK`: 32
--- * `_G._SCINTILLA.constants.INDIC1_MASK`: 64
--- * `_G._SCINTILLA.constants.INDIC2_MASK`: 128
--- * `_G._SCINTILLA.constants.INDICS_MASK`: 224
--- * `_G._SCINTILLA.constants.INDIC_BOX`: 6
--- * `_G._SCINTILLA.constants.INDIC_CONTAINER`: 8
--- * `_G._SCINTILLA.constants.INDIC_DASH`: 9
--- * `_G._SCINTILLA.constants.INDIC_DIAGONAL`: 3
--- * `_G._SCINTILLA.constants.INDIC_DOTBOX`: 12
--- * `_G._SCINTILLA.constants.INDIC_DOTS`: 10
--- * `_G._SCINTILLA.constants.INDIC_HIDDEN`: 5
--- * `_G._SCINTILLA.constants.INDIC_MAX`: 31
--- * `_G._SCINTILLA.constants.INDIC_PLAIN`: 0
--- * `_G._SCINTILLA.constants.INDIC_ROUNDBOX`: 7
--- * `_G._SCINTILLA.constants.INDIC_SQUIGGLE`: 1
--- * `_G._SCINTILLA.constants.INDIC_SQUIGGLELOW`: 11
--- * `_G._SCINTILLA.constants.INDIC_STRAIGHTBOX`: 8
--- * `_G._SCINTILLA.constants.INDIC_STRIKE`: 4
--- * `_G._SCINTILLA.constants.INDIC_TT`: 2
--- * `_G._SCINTILLA.constants.INVALID_POSITION`: -1
--- * `_G._SCINTILLA.constants.KEYWORDSET_MAX`: 8
--- * `_G._SCINTILLA.constants.MARKER_MAX`: 31
--- * `_G._SCINTILLA.constants.SCEN_CHANGE`: 768
--- * `_G._SCINTILLA.constants.SCEN_KILLFOCUS`: 256
--- * `_G._SCINTILLA.constants.SCEN_SETFOCUS`: 512
--- * `_G._SCINTILLA.constants.SCFIND_MATCHCASE`: 4
--- * `_G._SCINTILLA.constants.SCFIND_POSIX`: 4194304
--- * `_G._SCINTILLA.constants.SCFIND_REGEXP`: 2097152
--- * `_G._SCINTILLA.constants.SCFIND_WHOLEWORD`: 2
--- * `_G._SCINTILLA.constants.SCFIND_WORDSTART`: 1048576
--- * `_G._SCINTILLA.constants.SCI_ANNOTATIONGETLINES`: 2546
--- * `_G._SCINTILLA.constants.SCI_ANNOTATIONGETSTYLE`: 2543
--- * `_G._SCINTILLA.constants.SCI_ANNOTATIONGETSTYLEOFFSET`: 2551
--- * `_G._SCINTILLA.constants.SCI_ANNOTATIONGETVISIBLE`: 2549
--- * `_G._SCINTILLA.constants.SCI_ANNOTATIONSETSTYLE`: 2542
--- * `_G._SCINTILLA.constants.SCI_ANNOTATIONSETSTYLEOFFSET`: 2550
--- * `_G._SCINTILLA.constants.SCI_ANNOTATIONSETVISIBLE`: 2548
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETAUTOHIDE`: 2119
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETCANCELATSTART`: 2111
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETCHOOSESINGLE`: 2114
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETDROPRESTOFWORD`: 2271
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETIGNORECASE`: 2116
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETMAXHEIGHT`: 2211
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETMAXWIDTH`: 2209
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETSEPARATOR`: 2107
--- * `_G._SCINTILLA.constants.SCI_AUTOCGETTYPESEPARATOR`: 2285
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETAUTOHIDE`: 2118
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETCANCELATSTART`: 2110
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETCHOOSESINGLE`: 2113
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETDROPRESTOFWORD`: 2270
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETFILLUPS`: 2112
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETIGNORECASE`: 2115
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETMAXHEIGHT`: 2210
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETMAXWIDTH`: 2208
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETSEPARATOR`: 2106
--- * `_G._SCINTILLA.constants.SCI_AUTOCSETTYPESEPARATOR`: 2286
--- * `_G._SCINTILLA.constants.SCI_CALLTIPSETBACK`: 2205
--- * `_G._SCINTILLA.constants.SCI_CALLTIPSETFORE`: 2206
--- * `_G._SCINTILLA.constants.SCI_CALLTIPSETFOREHLT`: 2207
--- * `_G._SCINTILLA.constants.SCI_CALLTIPSETPOSITION`: 2213
--- * `_G._SCINTILLA.constants.SCI_CALLTIPUSESTYLE`: 2212
--- * `_G._SCINTILLA.constants.SCI_GETADDITIONALCARETFORE`: 2605
--- * `_G._SCINTILLA.constants.SCI_GETADDITIONALCARETSBLINK`: 2568
--- * `_G._SCINTILLA.constants.SCI_GETADDITIONALCARETSVISIBLE`: 2609
--- * `_G._SCINTILLA.constants.SCI_GETADDITIONALSELALPHA`: 2603
--- * `_G._SCINTILLA.constants.SCI_GETADDITIONALSELECTIONTYPING`: 2566
--- * `_G._SCINTILLA.constants.SCI_GETALLLINESVISIBLE`: 2236
--- * `_G._SCINTILLA.constants.SCI_GETANCHOR`: 2009
--- * `_G._SCINTILLA.constants.SCI_GETBACKSPACEUNINDENTS`: 2263
--- * `_G._SCINTILLA.constants.SCI_GETBUFFEREDDRAW`: 2034
--- * `_G._SCINTILLA.constants.SCI_GETCARETFORE`: 2138
--- * `_G._SCINTILLA.constants.SCI_GETCARETLINEBACK`: 2097
--- * `_G._SCINTILLA.constants.SCI_GETCARETLINEBACKALPHA`: 2471
--- * `_G._SCINTILLA.constants.SCI_GETCARETLINEVISIBLE`: 2095
--- * `_G._SCINTILLA.constants.SCI_GETCARETPERIOD`: 2075
--- * `_G._SCINTILLA.constants.SCI_GETCARETSTICKY`: 2457
--- * `_G._SCINTILLA.constants.SCI_GETCARETSTYLE`: 2513
--- * `_G._SCINTILLA.constants.SCI_GETCARETWIDTH`: 2189
--- * `_G._SCINTILLA.constants.SCI_GETCHARACTERPOINTER`: 2520
--- * `_G._SCINTILLA.constants.SCI_GETCHARAT`: 2007
--- * `_G._SCINTILLA.constants.SCI_GETCODEPAGE`: 2137
--- * `_G._SCINTILLA.constants.SCI_GETCOLUMN`: 2129
--- * `_G._SCINTILLA.constants.SCI_GETCONTROLCHARSYMBOL`: 2389
--- * `_G._SCINTILLA.constants.SCI_GETCURRENTPOS`: 2008
--- * `_G._SCINTILLA.constants.SCI_GETCURSOR`: 2387
--- * `_G._SCINTILLA.constants.SCI_GETDIRECTFUNCTION`: 2184
--- * `_G._SCINTILLA.constants.SCI_GETDIRECTPOINTER`: 2185
--- * `_G._SCINTILLA.constants.SCI_GETDOCPOINTER`: 2357
--- * `_G._SCINTILLA.constants.SCI_GETEDGECOLOUR`: 2364
--- * `_G._SCINTILLA.constants.SCI_GETEDGECOLUMN`: 2360
--- * `_G._SCINTILLA.constants.SCI_GETEDGEMODE`: 2362
--- * `_G._SCINTILLA.constants.SCI_GETENDATLASTLINE`: 2278
--- * `_G._SCINTILLA.constants.SCI_GETENDSTYLED`: 2028
--- * `_G._SCINTILLA.constants.SCI_GETEOLMODE`: 2030
--- * `_G._SCINTILLA.constants.SCI_GETEXTRAASCENT`: 2526
--- * `_G._SCINTILLA.constants.SCI_GETEXTRADESCENT`: 2528
--- * `_G._SCINTILLA.constants.SCI_GETFIRSTVISIBLELINE`: 2152
--- * `_G._SCINTILLA.constants.SCI_GETFOCUS`: 2381
--- * `_G._SCINTILLA.constants.SCI_GETFOLDEXPANDED`: 2230
--- * `_G._SCINTILLA.constants.SCI_GETFOLDLEVEL`: 2223
--- * `_G._SCINTILLA.constants.SCI_GETFOLDPARENT`: 2225
--- * `_G._SCINTILLA.constants.SCI_GETFONTQUALITY`: 2612
--- * `_G._SCINTILLA.constants.SCI_GETHIGHLIGHTGUIDE`: 2135
--- * `_G._SCINTILLA.constants.SCI_GETHOTSPOTACTIVEUNDERLINE`: 2496
--- * `_G._SCINTILLA.constants.SCI_GETHOTSPOTSINGLELINE`: 2497
--- * `_G._SCINTILLA.constants.SCI_GETHSCROLLBAR`: 2131
--- * `_G._SCINTILLA.constants.SCI_GETIDENTIFIER`: 2623
--- * `_G._SCINTILLA.constants.SCI_GETINDENT`: 2123
--- * `_G._SCINTILLA.constants.SCI_GETINDENTATIONGUIDES`: 2133
--- * `_G._SCINTILLA.constants.SCI_GETINDICATORCURRENT`: 2501
--- * `_G._SCINTILLA.constants.SCI_GETINDICATORVALUE`: 2503
--- * `_G._SCINTILLA.constants.SCI_GETKEYSUNICODE`: 2522
--- * `_G._SCINTILLA.constants.SCI_GETLAYOUTCACHE`: 2273
--- * `_G._SCINTILLA.constants.SCI_GETLENGTH`: 2006
--- * `_G._SCINTILLA.constants.SCI_GETLEXER`: 4002
--- * `_G._SCINTILLA.constants.SCI_GETLINECOUNT`: 2154
--- * `_G._SCINTILLA.constants.SCI_GETLINEENDPOSITION`: 2136
--- * `_G._SCINTILLA.constants.SCI_GETLINEINDENTATION`: 2127
--- * `_G._SCINTILLA.constants.SCI_GETLINEINDENTPOSITION`: 2128
--- * `_G._SCINTILLA.constants.SCI_GETLINESTATE`: 2093
--- * `_G._SCINTILLA.constants.SCI_GETLINEVISIBLE`: 2228
--- * `_G._SCINTILLA.constants.SCI_GETMAINSELECTION`: 2575
--- * `_G._SCINTILLA.constants.SCI_GETMARGINCURSORN`: 2249
--- * `_G._SCINTILLA.constants.SCI_GETMARGINLEFT`: 2156
--- * `_G._SCINTILLA.constants.SCI_GETMARGINMASKN`: 2245
--- * `_G._SCINTILLA.constants.SCI_GETMARGINOPTIONS`: 2557
--- * `_G._SCINTILLA.constants.SCI_GETMARGINRIGHT`: 2158
--- * `_G._SCINTILLA.constants.SCI_GETMARGINSENSITIVEN`: 2247
--- * `_G._SCINTILLA.constants.SCI_GETMARGINTYPEN`: 2241
--- * `_G._SCINTILLA.constants.SCI_GETMARGINWIDTHN`: 2243
--- * `_G._SCINTILLA.constants.SCI_GETMAXLINESTATE`: 2094
--- * `_G._SCINTILLA.constants.SCI_GETMODEVENTMASK`: 2378
--- * `_G._SCINTILLA.constants.SCI_GETMODIFY`: 2159
--- * `_G._SCINTILLA.constants.SCI_GETMOUSEDOWNCAPTURES`: 2385
--- * `_G._SCINTILLA.constants.SCI_GETMOUSEDWELLTIME`: 2265
--- * `_G._SCINTILLA.constants.SCI_GETMULTIPASTE`: 2615
--- * `_G._SCINTILLA.constants.SCI_GETMULTIPLESELECTION`: 2564
--- * `_G._SCINTILLA.constants.SCI_GETOVERTYPE`: 2187
--- * `_G._SCINTILLA.constants.SCI_GETPASTECONVERTENDINGS`: 2468
--- * `_G._SCINTILLA.constants.SCI_GETPOSITIONCACHE`: 2515
--- * `_G._SCINTILLA.constants.SCI_GETPRINTCOLOURMODE`: 2149
--- * `_G._SCINTILLA.constants.SCI_GETPRINTMAGNIFICATION`: 2147
--- * `_G._SCINTILLA.constants.SCI_GETPRINTWRAPMODE`: 2407
--- * `_G._SCINTILLA.constants.SCI_GETPROPERTYINT`: 4010
--- * `_G._SCINTILLA.constants.SCI_GETREADONLY`: 2140
--- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONANCHOR`: 2591
--- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONANCHORVIRTUALSPACE`: 2595
--- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONCARET`: 2589
--- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONCARETVIRTUALSPACE`: 2593
--- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONMODIFIER`: 2599
--- * `_G._SCINTILLA.constants.SCI_GETSCROLLWIDTH`: 2275
--- * `_G._SCINTILLA.constants.SCI_GETSCROLLWIDTHTRACKING`: 2517
--- * `_G._SCINTILLA.constants.SCI_GETSEARCHFLAGS`: 2199
--- * `_G._SCINTILLA.constants.SCI_GETSELALPHA`: 2477
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONEND`: 2145
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONMODE`: 2423
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNANCHOR`: 2579
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNANCHORVIRTUALSPACE`: 2583
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNCARET`: 2577
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNCARETVIRTUALSPACE`: 2581
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNEND`: 2587
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNSTART`: 2585
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONS`: 2570
--- * `_G._SCINTILLA.constants.SCI_GETSELECTIONSTART`: 2143
--- * `_G._SCINTILLA.constants.SCI_GETSELEOLFILLED`: 2479
--- * `_G._SCINTILLA.constants.SCI_GETSTATUS`: 2383
--- * `_G._SCINTILLA.constants.SCI_GETSTYLEAT`: 2010
--- * `_G._SCINTILLA.constants.SCI_GETSTYLEBITS`: 2091
--- * `_G._SCINTILLA.constants.SCI_GETSTYLEBITSNEEDED`: 4011
--- * `_G._SCINTILLA.constants.SCI_GETTABINDENTS`: 2261
--- * `_G._SCINTILLA.constants.SCI_GETTABWIDTH`: 2121
--- * `_G._SCINTILLA.constants.SCI_GETTARGETEND`: 2193
--- * `_G._SCINTILLA.constants.SCI_GETTARGETSTART`: 2191
--- * `_G._SCINTILLA.constants.SCI_GETTECHNOLOGY`: 2631
--- * `_G._SCINTILLA.constants.SCI_GETTEXTLENGTH`: 2183
--- * `_G._SCINTILLA.constants.SCI_GETTWOPHASEDRAW`: 2283
--- * `_G._SCINTILLA.constants.SCI_GETUNDOCOLLECTION`: 2019
--- * `_G._SCINTILLA.constants.SCI_GETUSETABS`: 2125
--- * `_G._SCINTILLA.constants.SCI_GETVIEWEOL`: 2355
--- * `_G._SCINTILLA.constants.SCI_GETVIEWWS`: 2020
--- * `_G._SCINTILLA.constants.SCI_GETVIRTUALSPACEOPTIONS`: 2597
--- * `_G._SCINTILLA.constants.SCI_GETVSCROLLBAR`: 2281
--- * `_G._SCINTILLA.constants.SCI_GETWHITESPACESIZE`: 2087
--- * `_G._SCINTILLA.constants.SCI_GETWRAPINDENTMODE`: 2473
--- * `_G._SCINTILLA.constants.SCI_GETWRAPMODE`: 2269
--- * `_G._SCINTILLA.constants.SCI_GETWRAPSTARTINDENT`: 2465
--- * `_G._SCINTILLA.constants.SCI_GETWRAPVISUALFLAGS`: 2461
--- * `_G._SCINTILLA.constants.SCI_GETWRAPVISUALFLAGSLOCATION`: 2463
--- * `_G._SCINTILLA.constants.SCI_GETXOFFSET`: 2398
--- * `_G._SCINTILLA.constants.SCI_GETZOOM`: 2374
--- * `_G._SCINTILLA.constants.SCI_INDICGETALPHA`: 2524
--- * `_G._SCINTILLA.constants.SCI_INDICGETFORE`: 2083
--- * `_G._SCINTILLA.constants.SCI_INDICGETOUTLINEALPHA`: 2559
--- * `_G._SCINTILLA.constants.SCI_INDICGETSTYLE`: 2081
--- * `_G._SCINTILLA.constants.SCI_INDICGETUNDER`: 2511
--- * `_G._SCINTILLA.constants.SCI_INDICSETALPHA`: 2523
--- * `_G._SCINTILLA.constants.SCI_INDICSETFORE`: 2082
--- * `_G._SCINTILLA.constants.SCI_INDICSETOUTLINEALPHA`: 2558
--- * `_G._SCINTILLA.constants.SCI_INDICSETSTYLE`: 2080
--- * `_G._SCINTILLA.constants.SCI_INDICSETUNDER`: 2510
--- * `_G._SCINTILLA.constants.SCI_LEXER_START`: 4000
--- * `_G._SCINTILLA.constants.SCI_LINESONSCREEN`: 2370
--- * `_G._SCINTILLA.constants.SCI_MARGINGETSTYLE`: 2533
--- * `_G._SCINTILLA.constants.SCI_MARGINGETSTYLEOFFSET`: 2538
--- * `_G._SCINTILLA.constants.SCI_MARGINSETSTYLE`: 2532
--- * `_G._SCINTILLA.constants.SCI_MARGINSETSTYLEOFFSET`: 2537
--- * `_G._SCINTILLA.constants.SCI_OPTIONAL_START`: 3000
--- * `_G._SCINTILLA.constants.SCI_RGBAIMAGESETHEIGHT`: 2625
--- * `_G._SCINTILLA.constants.SCI_RGBAIMAGESETWIDTH`: 2624
--- * `_G._SCINTILLA.constants.SCI_SELECTIONISRECTANGLE`: 2372
--- * `_G._SCINTILLA.constants.SCI_SETADDITIONALCARETFORE`: 2604
--- * `_G._SCINTILLA.constants.SCI_SETADDITIONALCARETSBLINK`: 2567
--- * `_G._SCINTILLA.constants.SCI_SETADDITIONALCARETSVISIBLE`: 2608
--- * `_G._SCINTILLA.constants.SCI_SETADDITIONALSELALPHA`: 2602
--- * `_G._SCINTILLA.constants.SCI_SETADDITIONALSELBACK`: 2601
--- * `_G._SCINTILLA.constants.SCI_SETADDITIONALSELECTIONTYPING`: 2565
--- * `_G._SCINTILLA.constants.SCI_SETADDITIONALSELFORE`: 2600
--- * `_G._SCINTILLA.constants.SCI_SETANCHOR`: 2026
--- * `_G._SCINTILLA.constants.SCI_SETBACKSPACEUNINDENTS`: 2262
--- * `_G._SCINTILLA.constants.SCI_SETBUFFEREDDRAW`: 2035
--- * `_G._SCINTILLA.constants.SCI_SETCARETFORE`: 2069
--- * `_G._SCINTILLA.constants.SCI_SETCARETLINEBACK`: 2098
--- * `_G._SCINTILLA.constants.SCI_SETCARETLINEBACKALPHA`: 2470
--- * `_G._SCINTILLA.constants.SCI_SETCARETLINEVISIBLE`: 2096
--- * `_G._SCINTILLA.constants.SCI_SETCARETPERIOD`: 2076
--- * `_G._SCINTILLA.constants.SCI_SETCARETSTICKY`: 2458
--- * `_G._SCINTILLA.constants.SCI_SETCARETSTYLE`: 2512
--- * `_G._SCINTILLA.constants.SCI_SETCARETWIDTH`: 2188
--- * `_G._SCINTILLA.constants.SCI_SETCODEPAGE`: 2037
--- * `_G._SCINTILLA.constants.SCI_SETCONTROLCHARSYMBOL`: 2388
--- * `_G._SCINTILLA.constants.SCI_SETCURRENTPOS`: 2141
--- * `_G._SCINTILLA.constants.SCI_SETCURSOR`: 2386
--- * `_G._SCINTILLA.constants.SCI_SETDOCPOINTER`: 2358
--- * `_G._SCINTILLA.constants.SCI_SETEDGECOLOUR`: 2365
--- * `_G._SCINTILLA.constants.SCI_SETEDGECOLUMN`: 2361
--- * `_G._SCINTILLA.constants.SCI_SETEDGEMODE`: 2363
--- * `_G._SCINTILLA.constants.SCI_SETENDATLASTLINE`: 2277
--- * `_G._SCINTILLA.constants.SCI_SETEOLMODE`: 2031
--- * `_G._SCINTILLA.constants.SCI_SETEXTRAASCENT`: 2525
--- * `_G._SCINTILLA.constants.SCI_SETEXTRADESCENT`: 2527
--- * `_G._SCINTILLA.constants.SCI_SETFIRSTVISIBLELINE`: 2613
--- * `_G._SCINTILLA.constants.SCI_SETFOCUS`: 2380
--- * `_G._SCINTILLA.constants.SCI_SETFOLDEXPANDED`: 2229
--- * `_G._SCINTILLA.constants.SCI_SETFOLDLEVEL`: 2222
--- * `_G._SCINTILLA.constants.SCI_SETFONTQUALITY`: 2611
--- * `_G._SCINTILLA.constants.SCI_SETHIGHLIGHTGUIDE`: 2134
--- * `_G._SCINTILLA.constants.SCI_SETHOTSPOTACTIVEUNDERLINE`: 2412
--- * `_G._SCINTILLA.constants.SCI_SETHOTSPOTSINGLELINE`: 2421
--- * `_G._SCINTILLA.constants.SCI_SETHSCROLLBAR`: 2130
--- * `_G._SCINTILLA.constants.SCI_SETIDENTIFIER`: 2622
--- * `_G._SCINTILLA.constants.SCI_SETINDENT`: 2122
--- * `_G._SCINTILLA.constants.SCI_SETINDENTATIONGUIDES`: 2132
--- * `_G._SCINTILLA.constants.SCI_SETINDICATORCURRENT`: 2500
--- * `_G._SCINTILLA.constants.SCI_SETINDICATORVALUE`: 2502
--- * `_G._SCINTILLA.constants.SCI_SETKEYSUNICODE`: 2521
--- * `_G._SCINTILLA.constants.SCI_SETKEYWORDS`: 4005
--- * `_G._SCINTILLA.constants.SCI_SETLAYOUTCACHE`: 2272
--- * `_G._SCINTILLA.constants.SCI_SETLEXER`: 4001
--- * `_G._SCINTILLA.constants.SCI_SETLINEINDENTATION`: 2126
--- * `_G._SCINTILLA.constants.SCI_SETLINESTATE`: 2092
--- * `_G._SCINTILLA.constants.SCI_SETMAINSELECTION`: 2574
--- * `_G._SCINTILLA.constants.SCI_SETMARGINCURSORN`: 2248
--- * `_G._SCINTILLA.constants.SCI_SETMARGINLEFT`: 2155
--- * `_G._SCINTILLA.constants.SCI_SETMARGINMASKN`: 2244
--- * `_G._SCINTILLA.constants.SCI_SETMARGINOPTIONS`: 2539
--- * `_G._SCINTILLA.constants.SCI_SETMARGINRIGHT`: 2157
--- * `_G._SCINTILLA.constants.SCI_SETMARGINSENSITIVEN`: 2246
--- * `_G._SCINTILLA.constants.SCI_SETMARGINTYPEN`: 2240
--- * `_G._SCINTILLA.constants.SCI_SETMARGINWIDTHN`: 2242
--- * `_G._SCINTILLA.constants.SCI_SETMODEVENTMASK`: 2359
--- * `_G._SCINTILLA.constants.SCI_SETMOUSEDOWNCAPTURES`: 2384
--- * `_G._SCINTILLA.constants.SCI_SETMOUSEDWELLTIME`: 2264
--- * `_G._SCINTILLA.constants.SCI_SETMULTIPASTE`: 2614
--- * `_G._SCINTILLA.constants.SCI_SETMULTIPLESELECTION`: 2563
--- * `_G._SCINTILLA.constants.SCI_SETOVERTYPE`: 2186
--- * `_G._SCINTILLA.constants.SCI_SETPASTECONVERTENDINGS`: 2467
--- * `_G._SCINTILLA.constants.SCI_SETPOSITIONCACHE`: 2514
--- * `_G._SCINTILLA.constants.SCI_SETPRINTCOLOURMODE`: 2148
--- * `_G._SCINTILLA.constants.SCI_SETPRINTMAGNIFICATION`: 2146
--- * `_G._SCINTILLA.constants.SCI_SETPRINTWRAPMODE`: 2406
--- * `_G._SCINTILLA.constants.SCI_SETPROPERTY`: 4004
--- * `_G._SCINTILLA.constants.SCI_SETREADONLY`: 2171
--- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONANCHOR`: 2590
--- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONANCHORVIRTUALSPACE`: 2594
--- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONCARET`: 2588
--- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONCARETVIRTUALSPACE`: 2592
--- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONMODIFIER`: 2598
--- * `_G._SCINTILLA.constants.SCI_SETSCROLLWIDTH`: 2274
--- * `_G._SCINTILLA.constants.SCI_SETSCROLLWIDTHTRACKING`: 2516
--- * `_G._SCINTILLA.constants.SCI_SETSEARCHFLAGS`: 2198
--- * `_G._SCINTILLA.constants.SCI_SETSELALPHA`: 2478
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONEND`: 2144
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONMODE`: 2422
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNANCHOR`: 2578
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNANCHORVIRTUALSPACE`: 2582
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNCARET`: 2576
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNCARETVIRTUALSPACE`: 2580
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNEND`: 2586
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNSTART`: 2584
--- * `_G._SCINTILLA.constants.SCI_SETSELECTIONSTART`: 2142
--- * `_G._SCINTILLA.constants.SCI_SETSELEOLFILLED`: 2480
--- * `_G._SCINTILLA.constants.SCI_SETSTATUS`: 2382
--- * `_G._SCINTILLA.constants.SCI_SETSTYLEBITS`: 2090
--- * `_G._SCINTILLA.constants.SCI_SETTABINDENTS`: 2260
--- * `_G._SCINTILLA.constants.SCI_SETTABWIDTH`: 2036
--- * `_G._SCINTILLA.constants.SCI_SETTARGETEND`: 2192
--- * `_G._SCINTILLA.constants.SCI_SETTARGETSTART`: 2190
--- * `_G._SCINTILLA.constants.SCI_SETTECHNOLOGY`: 2630
--- * `_G._SCINTILLA.constants.SCI_SETTWOPHASEDRAW`: 2284
--- * `_G._SCINTILLA.constants.SCI_SETUNDOCOLLECTION`: 2012
--- * `_G._SCINTILLA.constants.SCI_SETUSETABS`: 2124
--- * `_G._SCINTILLA.constants.SCI_SETVIEWEOL`: 2356
--- * `_G._SCINTILLA.constants.SCI_SETVIEWWS`: 2021
--- * `_G._SCINTILLA.constants.SCI_SETVIRTUALSPACEOPTIONS`: 2596
--- * `_G._SCINTILLA.constants.SCI_SETVSCROLLBAR`: 2280
--- * `_G._SCINTILLA.constants.SCI_SETWHITESPACECHARS`: 2443
--- * `_G._SCINTILLA.constants.SCI_SETWHITESPACESIZE`: 2086
--- * `_G._SCINTILLA.constants.SCI_SETWORDCHARS`: 2077
--- * `_G._SCINTILLA.constants.SCI_SETWRAPINDENTMODE`: 2472
--- * `_G._SCINTILLA.constants.SCI_SETWRAPMODE`: 2268
--- * `_G._SCINTILLA.constants.SCI_SETWRAPSTARTINDENT`: 2464
--- * `_G._SCINTILLA.constants.SCI_SETWRAPVISUALFLAGS`: 2460
--- * `_G._SCINTILLA.constants.SCI_SETWRAPVISUALFLAGSLOCATION`: 2462
--- * `_G._SCINTILLA.constants.SCI_SETXOFFSET`: 2397
--- * `_G._SCINTILLA.constants.SCI_SETZOOM`: 2373
--- * `_G._SCINTILLA.constants.SCI_START`: 2000
--- * `_G._SCINTILLA.constants.SCI_STYLEGETBACK`: 2482
--- * `_G._SCINTILLA.constants.SCI_STYLEGETBOLD`: 2483
--- * `_G._SCINTILLA.constants.SCI_STYLEGETCASE`: 2489
--- * `_G._SCINTILLA.constants.SCI_STYLEGETCHANGEABLE`: 2492
--- * `_G._SCINTILLA.constants.SCI_STYLEGETCHARACTERSET`: 2490
--- * `_G._SCINTILLA.constants.SCI_STYLEGETEOLFILLED`: 2487
--- * `_G._SCINTILLA.constants.SCI_STYLEGETFORE`: 2481
--- * `_G._SCINTILLA.constants.SCI_STYLEGETHOTSPOT`: 2493
--- * `_G._SCINTILLA.constants.SCI_STYLEGETITALIC`: 2484
--- * `_G._SCINTILLA.constants.SCI_STYLEGETSIZE`: 2485
--- * `_G._SCINTILLA.constants.SCI_STYLEGETSIZEFRACTIONAL`: 2062
--- * `_G._SCINTILLA.constants.SCI_STYLEGETUNDERLINE`: 2488
--- * `_G._SCINTILLA.constants.SCI_STYLEGETVISIBLE`: 2491
--- * `_G._SCINTILLA.constants.SCI_STYLEGETWEIGHT`: 2064
--- * `_G._SCINTILLA.constants.SCI_STYLESETBACK`: 2052
--- * `_G._SCINTILLA.constants.SCI_STYLESETBOLD`: 2053
--- * `_G._SCINTILLA.constants.SCI_STYLESETCASE`: 2060
--- * `_G._SCINTILLA.constants.SCI_STYLESETCHANGEABLE`: 2099
--- * `_G._SCINTILLA.constants.SCI_STYLESETCHARACTERSET`: 2066
--- * `_G._SCINTILLA.constants.SCI_STYLESETEOLFILLED`: 2057
--- * `_G._SCINTILLA.constants.SCI_STYLESETFONT`: 2056
--- * `_G._SCINTILLA.constants.SCI_STYLESETFORE`: 2051
--- * `_G._SCINTILLA.constants.SCI_STYLESETHOTSPOT`: 2409
--- * `_G._SCINTILLA.constants.SCI_STYLESETITALIC`: 2054
--- * `_G._SCINTILLA.constants.SCI_STYLESETSIZE`: 2055
--- * `_G._SCINTILLA.constants.SCI_STYLESETSIZEFRACTIONAL`: 2061
--- * `_G._SCINTILLA.constants.SCI_STYLESETUNDERLINE`: 2059
--- * `_G._SCINTILLA.constants.SCI_STYLESETVISIBLE`: 2074
--- * `_G._SCINTILLA.constants.SCI_STYLESETWEIGHT`: 2063
--- * `_G._SCINTILLA.constants.SCK_ADD`: 310
--- * `_G._SCINTILLA.constants.SCK_BACK`: 8
--- * `_G._SCINTILLA.constants.SCK_DELETE`: 308
--- * `_G._SCINTILLA.constants.SCK_DIVIDE`: 312
--- * `_G._SCINTILLA.constants.SCK_DOWN`: 300
--- * `_G._SCINTILLA.constants.SCK_END`: 305
--- * `_G._SCINTILLA.constants.SCK_ESCAPE`: 7
--- * `_G._SCINTILLA.constants.SCK_HOME`: 304
--- * `_G._SCINTILLA.constants.SCK_INSERT`: 309
--- * `_G._SCINTILLA.constants.SCK_LEFT`: 302
--- * `_G._SCINTILLA.constants.SCK_MENU`: 315
--- * `_G._SCINTILLA.constants.SCK_NEXT`: 307
--- * `_G._SCINTILLA.constants.SCK_PRIOR`: 306
--- * `_G._SCINTILLA.constants.SCK_RETURN`: 13
--- * `_G._SCINTILLA.constants.SCK_RIGHT`: 303
--- * `_G._SCINTILLA.constants.SCK_RWIN`: 314
--- * `_G._SCINTILLA.constants.SCK_SUBTRACT`: 311
--- * `_G._SCINTILLA.constants.SCK_TAB`: 9
--- * `_G._SCINTILLA.constants.SCK_UP`: 301
--- * `_G._SCINTILLA.constants.SCK_WIN`: 313
--- * `_G._SCINTILLA.constants.SCMOD_ALT`: 4
--- * `_G._SCINTILLA.constants.SCMOD_CTRL`: 2
--- * `_G._SCINTILLA.constants.SCMOD_META`: 16
--- * `_G._SCINTILLA.constants.SCMOD_NORM`: 0
--- * `_G._SCINTILLA.constants.SCMOD_SHIFT`: 1
--- * `_G._SCINTILLA.constants.SCMOD_SUPER`: 8
--- * `_G._SCINTILLA.constants.SCVS_NONE`: 0
--- * `_G._SCINTILLA.constants.SCVS_RECTANGULARSELECTION`: 1
--- * `_G._SCINTILLA.constants.SCVS_USERACCESSIBLE`: 2
--- * `_G._SCINTILLA.constants.SCWS_INVISIBLE`: 0
--- * `_G._SCINTILLA.constants.SCWS_VISIBLEAFTERINDENT`: 2
--- * `_G._SCINTILLA.constants.SCWS_VISIBLEALWAYS`: 1
--- * `_G._SCINTILLA.constants.SC_ALPHA_NOALPHA`: 256
--- * `_G._SCINTILLA.constants.SC_ALPHA_OPAQUE`: 255
--- * `_G._SCINTILLA.constants.SC_ALPHA_TRANSPARENT`: 0
--- * `_G._SCINTILLA.constants.SC_CACHE_CARET`: 1
--- * `_G._SCINTILLA.constants.SC_CACHE_DOCUMENT`: 3
--- * `_G._SCINTILLA.constants.SC_CACHE_NONE`: 0
--- * `_G._SCINTILLA.constants.SC_CACHE_PAGE`: 2
--- * `_G._SCINTILLA.constants.SC_CARETSTICKY_OFF`: 0
--- * `_G._SCINTILLA.constants.SC_CARETSTICKY_ON`: 1
--- * `_G._SCINTILLA.constants.SC_CARETSTICKY_WHITESPACE`: 2
--- * `_G._SCINTILLA.constants.SC_CASE_LOWER`: 2
--- * `_G._SCINTILLA.constants.SC_CASE_MIXED`: 0
--- * `_G._SCINTILLA.constants.SC_CASE_UPPER`: 1
--- * `_G._SCINTILLA.constants.SC_CHARSET_8859_15`: 1000
--- * `_G._SCINTILLA.constants.SC_CHARSET_ANSI`: 0
--- * `_G._SCINTILLA.constants.SC_CHARSET_ARABIC`: 178
--- * `_G._SCINTILLA.constants.SC_CHARSET_BALTIC`: 186
--- * `_G._SCINTILLA.constants.SC_CHARSET_CHINESEBIG5`: 136
--- * `_G._SCINTILLA.constants.SC_CHARSET_CYRILLIC`: 1251
--- * `_G._SCINTILLA.constants.SC_CHARSET_DEFAULT`: 1
--- * `_G._SCINTILLA.constants.SC_CHARSET_EASTEUROPE`: 238
--- * `_G._SCINTILLA.constants.SC_CHARSET_GB2312`: 134
--- * `_G._SCINTILLA.constants.SC_CHARSET_GREEK`: 161
--- * `_G._SCINTILLA.constants.SC_CHARSET_HANGUL`: 129
--- * `_G._SCINTILLA.constants.SC_CHARSET_HEBREW`: 177
--- * `_G._SCINTILLA.constants.SC_CHARSET_JOHAB`: 130
--- * `_G._SCINTILLA.constants.SC_CHARSET_MAC`: 77
--- * `_G._SCINTILLA.constants.SC_CHARSET_OEM`: 255
--- * `_G._SCINTILLA.constants.SC_CHARSET_RUSSIAN`: 204
--- * `_G._SCINTILLA.constants.SC_CHARSET_SHIFTJIS`: 128
--- * `_G._SCINTILLA.constants.SC_CHARSET_SYMBOL`: 2
--- * `_G._SCINTILLA.constants.SC_CHARSET_THAI`: 222
--- * `_G._SCINTILLA.constants.SC_CHARSET_TURKISH`: 162
--- * `_G._SCINTILLA.constants.SC_CHARSET_VIETNAMESE`: 163
--- * `_G._SCINTILLA.constants.SC_CP_UTF8`: 65001
--- * `_G._SCINTILLA.constants.SC_CURSORARROW`: 2
--- * `_G._SCINTILLA.constants.SC_CURSORNORMAL`: -1
--- * `_G._SCINTILLA.constants.SC_CURSORREVERSEARROW`: 7
--- * `_G._SCINTILLA.constants.SC_CURSORWAIT`: 4
--- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_ANTIALIASED`: 2
--- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_DEFAULT`: 0
--- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_LCD_OPTIMIZED`: 3
--- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_MASK`: 15
--- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_NON_ANTIALIASED`: 1
--- * `_G._SCINTILLA.constants.SC_EOL_CR`: 1
--- * `_G._SCINTILLA.constants.SC_EOL_CRLF`: 0
--- * `_G._SCINTILLA.constants.SC_EOL_LF`: 2
--- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LEVELNUMBERS`: 64
--- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LINEAFTER_CONTRACTED`: 16
--- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LINEAFTER_EXPANDED`: 8
--- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LINEBEFORE_CONTRACTED`: 4
--- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LINEBEFORE_EXPANDED`: 2
--- * `_G._SCINTILLA.constants.SC_FOLDLEVELBASE`: 1024
--- * `_G._SCINTILLA.constants.SC_FOLDLEVELHEADERFLAG`: 8192
--- * `_G._SCINTILLA.constants.SC_FOLDLEVELNUMBERMASK`: 4095
--- * `_G._SCINTILLA.constants.SC_FOLDLEVELWHITEFLAG`: 4096
--- * `_G._SCINTILLA.constants.SC_FONT_SIZE_MULTIPLIER`: 100
--- * `_G._SCINTILLA.constants.SC_IV_LOOKBOTH`: 3
--- * `_G._SCINTILLA.constants.SC_IV_LOOKFORWARD`: 2
--- * `_G._SCINTILLA.constants.SC_IV_NONE`: 0
--- * `_G._SCINTILLA.constants.SC_IV_REAL`: 1
--- * `_G._SCINTILLA.constants.SC_LASTSTEPINUNDOREDO`: 256
--- * `_G._SCINTILLA.constants.SC_MARGINOPTION_NONE`: 0
--- * `_G._SCINTILLA.constants.SC_MARGINOPTION_SUBLINESELECT`: 1
--- * `_G._SCINTILLA.constants.SC_MARGIN_BACK`: 2
--- * `_G._SCINTILLA.constants.SC_MARGIN_FORE`: 3
--- * `_G._SCINTILLA.constants.SC_MARGIN_NUMBER`: 1
--- * `_G._SCINTILLA.constants.SC_MARGIN_RTEXT`: 5
--- * `_G._SCINTILLA.constants.SC_MARGIN_SYMBOL`: 0
--- * `_G._SCINTILLA.constants.SC_MARGIN_TEXT`: 4
--- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDER`: 30
--- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDEREND`: 25
--- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDERMIDTAIL`: 27
--- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDEROPEN`: 31
--- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDEROPENMID`: 26
--- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDERSUB`: 29
--- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDERTAIL`: 28
--- * `_G._SCINTILLA.constants.SC_MARK_ARROW`: 2
--- * `_G._SCINTILLA.constants.SC_MARK_ARROWDOWN`: 6
--- * `_G._SCINTILLA.constants.SC_MARK_ARROWS`: 24
--- * `_G._SCINTILLA.constants.SC_MARK_AVAILABLE`: 28
--- * `_G._SCINTILLA.constants.SC_MARK_BACKGROUND`: 22
--- * `_G._SCINTILLA.constants.SC_MARK_BOXMINUS`: 14
--- * `_G._SCINTILLA.constants.SC_MARK_BOXMINUSCONNECTED`: 15
--- * `_G._SCINTILLA.constants.SC_MARK_BOXPLUS`: 12
--- * `_G._SCINTILLA.constants.SC_MARK_BOXPLUSCONNECTED`: 13
--- * `_G._SCINTILLA.constants.SC_MARK_CHARACTER`: 10000
--- * `_G._SCINTILLA.constants.SC_MARK_CIRCLE`: 0
--- * `_G._SCINTILLA.constants.SC_MARK_CIRCLEMINUS`: 20
--- * `_G._SCINTILLA.constants.SC_MARK_CIRCLEMINUSCONNECTED`: 21
--- * `_G._SCINTILLA.constants.SC_MARK_CIRCLEPLUS`: 18
--- * `_G._SCINTILLA.constants.SC_MARK_CIRCLEPLUSCONNECTED`: 19
--- * `_G._SCINTILLA.constants.SC_MARK_DOTDOTDOT`: 23
--- * `_G._SCINTILLA.constants.SC_MARK_EMPTY`: 5
--- * `_G._SCINTILLA.constants.SC_MARK_FULLRECT`: 26
--- * `_G._SCINTILLA.constants.SC_MARK_LCORNER`: 10
--- * `_G._SCINTILLA.constants.SC_MARK_LCORNERCURVE`: 16
--- * `_G._SCINTILLA.constants.SC_MARK_LEFTRECT`: 27
--- * `_G._SCINTILLA.constants.SC_MARK_MINUS`: 7
--- * `_G._SCINTILLA.constants.SC_MARK_PIXMAP`: 25
--- * `_G._SCINTILLA.constants.SC_MARK_PLUS`: 8
--- * `_G._SCINTILLA.constants.SC_MARK_RGBAIMAGE`: 30
--- * `_G._SCINTILLA.constants.SC_MARK_ROUNDRECT`: 1
--- * `_G._SCINTILLA.constants.SC_MARK_SHORTARROW`: 4
--- * `_G._SCINTILLA.constants.SC_MARK_SMALLRECT`: 3
--- * `_G._SCINTILLA.constants.SC_MARK_TCORNER`: 11
--- * `_G._SCINTILLA.constants.SC_MARK_TCORNERCURVE`: 17
--- * `_G._SCINTILLA.constants.SC_MARK_UNDERLINE`: 29
--- * `_G._SCINTILLA.constants.SC_MARK_VLINE`: 9
--- * `_G._SCINTILLA.constants.SC_MASK_FOLDERS`: -33554432
--- * `_G._SCINTILLA.constants.SC_MODEVENTMASKALL`: 1048575
--- * `_G._SCINTILLA.constants.SC_MOD_BEFOREDELETE`: 2048
--- * `_G._SCINTILLA.constants.SC_MOD_BEFOREINSERT`: 1024
--- * `_G._SCINTILLA.constants.SC_MOD_CHANGEANNOTATION`: 131072
--- * `_G._SCINTILLA.constants.SC_MOD_CHANGEFOLD`: 8
--- * `_G._SCINTILLA.constants.SC_MOD_CHANGEINDICATOR`: 16384
--- * `_G._SCINTILLA.constants.SC_MOD_CHANGELINESTATE`: 32768
--- * `_G._SCINTILLA.constants.SC_MOD_CHANGEMARGIN`: 65536
--- * `_G._SCINTILLA.constants.SC_MOD_CHANGEMARKER`: 512
--- * `_G._SCINTILLA.constants.SC_MOD_CHANGESTYLE`: 4
--- * `_G._SCINTILLA.constants.SC_MOD_CONTAINER`: 262144
--- * `_G._SCINTILLA.constants.SC_MOD_DELETETEXT`: 2
--- * `_G._SCINTILLA.constants.SC_MOD_INSERTTEXT`: 1
--- * `_G._SCINTILLA.constants.SC_MOD_LEXERSTATE`: 524288
--- * `_G._SCINTILLA.constants.SC_MULTILINEUNDOREDO`: 4096
--- * `_G._SCINTILLA.constants.SC_MULTIPASTE_EACH`: 1
--- * `_G._SCINTILLA.constants.SC_MULTIPASTE_ONCE`: 0
--- * `_G._SCINTILLA.constants.SC_MULTISTEPUNDOREDO`: 128
--- * `_G._SCINTILLA.constants.SC_PERFORMED_REDO`: 64
--- * `_G._SCINTILLA.constants.SC_PERFORMED_UNDO`: 32
--- * `_G._SCINTILLA.constants.SC_PERFORMED_USER`: 16
--- * `_G._SCINTILLA.constants.SC_PRINT_BLACKONWHITE`: 2
--- * `_G._SCINTILLA.constants.SC_PRINT_COLOURONWHITE`: 3
--- * `_G._SCINTILLA.constants.SC_PRINT_COLOURONWHITEDEFAULTBG`: 4
--- * `_G._SCINTILLA.constants.SC_PRINT_INVERTLIGHT`: 1
--- * `_G._SCINTILLA.constants.SC_PRINT_NORMAL`: 0
--- * `_G._SCINTILLA.constants.SC_SEL_LINES`: 2
--- * `_G._SCINTILLA.constants.SC_SEL_RECTANGLE`: 1
--- * `_G._SCINTILLA.constants.SC_SEL_STREAM`: 0
--- * `_G._SCINTILLA.constants.SC_SEL_THIN`: 3
--- * `_G._SCINTILLA.constants.SC_STARTACTION`: 8192
--- * `_G._SCINTILLA.constants.SC_STATUS_BADALLOC`: 2
--- * `_G._SCINTILLA.constants.SC_STATUS_FAILURE`: 1
--- * `_G._SCINTILLA.constants.SC_STATUS_OK`: 0
--- * `_G._SCINTILLA.constants.SC_TECHNOLOGY_DEFAULT`: 0
--- * `_G._SCINTILLA.constants.SC_TECHNOLOGY_DIRECTWRITE`: 1
--- * `_G._SCINTILLA.constants.SC_TIME_FOREVER`: 10000000
--- * `_G._SCINTILLA.constants.SC_TYPE_BOOLEAN`: 0
--- * `_G._SCINTILLA.constants.SC_TYPE_INTEGER`: 1
--- * `_G._SCINTILLA.constants.SC_TYPE_STRING`: 2
--- * `_G._SCINTILLA.constants.SC_UPDATE_CONTENT`: 1
--- * `_G._SCINTILLA.constants.SC_UPDATE_H_SCROLL`: 8
--- * `_G._SCINTILLA.constants.SC_UPDATE_SELECTION`: 2
--- * `_G._SCINTILLA.constants.SC_UPDATE_V_SCROLL`: 4
--- * `_G._SCINTILLA.constants.SC_WEIGHT_BOLD`: 700
--- * `_G._SCINTILLA.constants.SC_WEIGHT_NORMAL`: 400
--- * `_G._SCINTILLA.constants.SC_WEIGHT_SEMIBOLD`: 600
--- * `_G._SCINTILLA.constants.SC_WRAPINDENT_FIXED`: 0
--- * `_G._SCINTILLA.constants.SC_WRAPINDENT_INDENT`: 2
--- * `_G._SCINTILLA.constants.SC_WRAPINDENT_SAME`: 1
--- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_DEFAULT`: 0
--- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_END_BY_TEXT`: 1
--- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_START_BY_TEXT`: 2
--- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAG_END`: 1
--- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAG_NONE`: 0
--- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAG_START`: 2
--- * `_G._SCINTILLA.constants.SC_WRAP_CHAR`: 2
--- * `_G._SCINTILLA.constants.SC_WRAP_NONE`: 0
--- * `_G._SCINTILLA.constants.SC_WRAP_WORD`: 1
--- * `_G._SCINTILLA.constants.STYLE_BRACEBAD`: 35
--- * `_G._SCINTILLA.constants.STYLE_BRACELIGHT`: 34
--- * `_G._SCINTILLA.constants.STYLE_CALLTIP`: 38
--- * `_G._SCINTILLA.constants.STYLE_CONTROLCHAR`: 36
--- * `_G._SCINTILLA.constants.STYLE_DEFAULT`: 32
--- * `_G._SCINTILLA.constants.STYLE_INDENTGUIDE`: 37
--- * `_G._SCINTILLA.constants.STYLE_LASTPREDEFINED`: 39
--- * `_G._SCINTILLA.constants.STYLE_LINENUMBER`: 33
--- * `_G._SCINTILLA.constants.STYLE_MAX`: 255
--- * `_G._SCINTILLA.constants.UNDO_MAY_COALESCE`: 1
--- * `_G._SCINTILLA.constants.VISIBLE_SLOP`: 1
--- * `_G._SCINTILLA.constants.VISIBLE_STRICT`: 4
--- * `_G._SCINTILLA.constants.SCN_DOUBLECLICK`: 2006
--- * `_G._SCINTILLA.constants.SCN_AUTOCCHARDELETED`: 2027
--- * `_G._SCINTILLA.constants.SCN_SAVEPOINTLEFT`: 2003
--- * `_G._SCINTILLA.constants.SCN_PAINTED`: 2013
--- * `_G._SCINTILLA.constants.SCN_HOTSPOTRELEASECLICK`: 2028
--- * `_G._SCINTILLA.constants.SCN_UPDATEUI`: 2007
--- * `_G._SCINTILLA.constants.SCN_STYLENEEDED`: 2000
--- * `_G._SCINTILLA.constants.SCN_AUTOCCANCELLED`: 2026
--- * `_G._SCINTILLA.constants.SCN_MACRORECORD`: 2009
--- * `_G._SCINTILLA.constants.SCN_INDICATORRELEASE`: 2024
--- * `_G._SCINTILLA.constants.SCN_MODIFIED`: 2008
--- * `_G._SCINTILLA.constants.SCN_SAVEPOINTREACHED`: 2002
--- * `_G._SCINTILLA.constants.SCN_HOTSPOTDOUBLECLICK`: 2020
--- * `_G._SCINTILLA.constants.SCN_NEEDSHOWN`: 2011
--- * `_G._SCINTILLA.constants.SCN_CALLTIPCLICK`: 2021
--- * `_G._SCINTILLA.constants.SCN_AUTOCSELECTION`: 2022
--- * `_G._SCINTILLA.constants.SCN_DWELLEND`: 2017
--- * `_G._SCINTILLA.constants.SCN_ZOOM`: 2018
--- * `_G._SCINTILLA.constants.SCN_CHARADDED`: 2001
--- * `_G._SCINTILLA.constants.SCN_HOTSPOTCLICK`: 2019
--- * `_G._SCINTILLA.constants.SCN_KEY`: 2005
--- * `_G._SCINTILLA.constants.SCN_DWELLSTART`: 2016
--- * `_G._SCINTILLA.constants.SCN_MARGINCLICK`: 2010
--- * `_G._SCINTILLA.constants.SCN_USERLISTSELECTION`: 2014
--- * `_G._SCINTILLA.constants.SCN_URIDROPPED`: 2015
--- * `_G._SCINTILLA.constants.SCN_INDICATORCLICK`: 2023
--- * `_G._SCINTILLA.constants.SCN_MODIFYATTEMPTRO`: 2004
--- * `_G._SCINTILLA.constants.SCLEX_CONTAINER`: 0
--- * `_G._SCINTILLA.constants.SCLEX_AUTOMATIC`: 1000
--- * `_G._SCINTILLA.constants.SCLEX_LPEG`: 999
--- * `_G._SCINTILLA.constants.SCLEX_NULL`: 1
+-- * `_G._SCINTILLA.constants.ANNOTATION_BOXED` 2
+-- * `_G._SCINTILLA.constants.ANNOTATION_HIDDEN` 0
+-- * `_G._SCINTILLA.constants.ANNOTATION_STANDARD` 1
+-- * `_G._SCINTILLA.constants.CARETSTYLE_BLOCK` 2
+-- * `_G._SCINTILLA.constants.CARETSTYLE_INVISIBLE` 0
+-- * `_G._SCINTILLA.constants.CARETSTYLE_LINE` 1
+-- * `_G._SCINTILLA.constants.CARET_EVEN` 8
+-- * `_G._SCINTILLA.constants.CARET_JUMPS` 16
+-- * `_G._SCINTILLA.constants.CARET_SLOP` 1
+-- * `_G._SCINTILLA.constants.CARET_STRICT` 4
+-- * `_G._SCINTILLA.constants.EDGE_BACKGROUND` 2
+-- * `_G._SCINTILLA.constants.EDGE_LINE` 1
+-- * `_G._SCINTILLA.constants.EDGE_NONE` 0
+-- * `_G._SCINTILLA.constants.INDIC0_MASK` 32
+-- * `_G._SCINTILLA.constants.INDIC1_MASK` 64
+-- * `_G._SCINTILLA.constants.INDIC2_MASK` 128
+-- * `_G._SCINTILLA.constants.INDICS_MASK` 224
+-- * `_G._SCINTILLA.constants.INDIC_BOX` 6
+-- * `_G._SCINTILLA.constants.INDIC_CONTAINER` 8
+-- * `_G._SCINTILLA.constants.INDIC_DASH` 9
+-- * `_G._SCINTILLA.constants.INDIC_DIAGONAL` 3
+-- * `_G._SCINTILLA.constants.INDIC_DOTBOX` 12
+-- * `_G._SCINTILLA.constants.INDIC_DOTS` 10
+-- * `_G._SCINTILLA.constants.INDIC_HIDDEN` 5
+-- * `_G._SCINTILLA.constants.INDIC_MAX` 31
+-- * `_G._SCINTILLA.constants.INDIC_PLAIN` 0
+-- * `_G._SCINTILLA.constants.INDIC_ROUNDBOX` 7
+-- * `_G._SCINTILLA.constants.INDIC_SQUIGGLE` 1
+-- * `_G._SCINTILLA.constants.INDIC_SQUIGGLELOW` 11
+-- * `_G._SCINTILLA.constants.INDIC_STRAIGHTBOX` 8
+-- * `_G._SCINTILLA.constants.INDIC_STRIKE` 4
+-- * `_G._SCINTILLA.constants.INDIC_TT` 2
+-- * `_G._SCINTILLA.constants.INVALID_POSITION` -1
+-- * `_G._SCINTILLA.constants.KEYWORDSET_MAX` 8
+-- * `_G._SCINTILLA.constants.MARKER_MAX` 31
+-- * `_G._SCINTILLA.constants.SCEN_CHANGE` 768
+-- * `_G._SCINTILLA.constants.SCEN_KILLFOCUS` 256
+-- * `_G._SCINTILLA.constants.SCEN_SETFOCUS` 512
+-- * `_G._SCINTILLA.constants.SCFIND_MATCHCASE` 4
+-- * `_G._SCINTILLA.constants.SCFIND_POSIX` 4194304
+-- * `_G._SCINTILLA.constants.SCFIND_REGEXP` 2097152
+-- * `_G._SCINTILLA.constants.SCFIND_WHOLEWORD` 2
+-- * `_G._SCINTILLA.constants.SCFIND_WORDSTART` 1048576
+-- * `_G._SCINTILLA.constants.SCI_ANNOTATIONGETLINES` 2546
+-- * `_G._SCINTILLA.constants.SCI_ANNOTATIONGETSTYLE` 2543
+-- * `_G._SCINTILLA.constants.SCI_ANNOTATIONGETSTYLEOFFSET` 2551
+-- * `_G._SCINTILLA.constants.SCI_ANNOTATIONGETVISIBLE` 2549
+-- * `_G._SCINTILLA.constants.SCI_ANNOTATIONSETSTYLE` 2542
+-- * `_G._SCINTILLA.constants.SCI_ANNOTATIONSETSTYLEOFFSET` 2550
+-- * `_G._SCINTILLA.constants.SCI_ANNOTATIONSETVISIBLE` 2548
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETAUTOHIDE` 2119
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETCANCELATSTART` 2111
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETCHOOSESINGLE` 2114
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETDROPRESTOFWORD` 2271
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETIGNORECASE` 2116
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETMAXHEIGHT` 2211
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETMAXWIDTH` 2209
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETSEPARATOR` 2107
+-- * `_G._SCINTILLA.constants.SCI_AUTOCGETTYPESEPARATOR` 2285
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETAUTOHIDE` 2118
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETCANCELATSTART` 2110
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETCHOOSESINGLE` 2113
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETDROPRESTOFWORD` 2270
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETFILLUPS` 2112
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETIGNORECASE` 2115
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETMAXHEIGHT` 2210
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETMAXWIDTH` 2208
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETSEPARATOR` 2106
+-- * `_G._SCINTILLA.constants.SCI_AUTOCSETTYPESEPARATOR` 2286
+-- * `_G._SCINTILLA.constants.SCI_CALLTIPSETBACK` 2205
+-- * `_G._SCINTILLA.constants.SCI_CALLTIPSETFORE` 2206
+-- * `_G._SCINTILLA.constants.SCI_CALLTIPSETFOREHLT` 2207
+-- * `_G._SCINTILLA.constants.SCI_CALLTIPSETPOSITION` 2213
+-- * `_G._SCINTILLA.constants.SCI_CALLTIPUSESTYLE` 2212
+-- * `_G._SCINTILLA.constants.SCI_GETADDITIONALCARETFORE` 2605
+-- * `_G._SCINTILLA.constants.SCI_GETADDITIONALCARETSBLINK` 2568
+-- * `_G._SCINTILLA.constants.SCI_GETADDITIONALCARETSVISIBLE` 2609
+-- * `_G._SCINTILLA.constants.SCI_GETADDITIONALSELALPHA` 2603
+-- * `_G._SCINTILLA.constants.SCI_GETADDITIONALSELECTIONTYPING` 2566
+-- * `_G._SCINTILLA.constants.SCI_GETALLLINESVISIBLE` 2236
+-- * `_G._SCINTILLA.constants.SCI_GETANCHOR` 2009
+-- * `_G._SCINTILLA.constants.SCI_GETBACKSPACEUNINDENTS` 2263
+-- * `_G._SCINTILLA.constants.SCI_GETBUFFEREDDRAW` 2034
+-- * `_G._SCINTILLA.constants.SCI_GETCARETFORE` 2138
+-- * `_G._SCINTILLA.constants.SCI_GETCARETLINEBACK` 2097
+-- * `_G._SCINTILLA.constants.SCI_GETCARETLINEBACKALPHA` 2471
+-- * `_G._SCINTILLA.constants.SCI_GETCARETLINEVISIBLE` 2095
+-- * `_G._SCINTILLA.constants.SCI_GETCARETPERIOD` 2075
+-- * `_G._SCINTILLA.constants.SCI_GETCARETSTICKY` 2457
+-- * `_G._SCINTILLA.constants.SCI_GETCARETSTYLE` 2513
+-- * `_G._SCINTILLA.constants.SCI_GETCARETWIDTH` 2189
+-- * `_G._SCINTILLA.constants.SCI_GETCHARACTERPOINTER` 2520
+-- * `_G._SCINTILLA.constants.SCI_GETCHARAT` 2007
+-- * `_G._SCINTILLA.constants.SCI_GETCODEPAGE` 2137
+-- * `_G._SCINTILLA.constants.SCI_GETCOLUMN` 2129
+-- * `_G._SCINTILLA.constants.SCI_GETCONTROLCHARSYMBOL` 2389
+-- * `_G._SCINTILLA.constants.SCI_GETCURRENTPOS` 2008
+-- * `_G._SCINTILLA.constants.SCI_GETCURSOR` 2387
+-- * `_G._SCINTILLA.constants.SCI_GETDIRECTFUNCTION` 2184
+-- * `_G._SCINTILLA.constants.SCI_GETDIRECTPOINTER` 2185
+-- * `_G._SCINTILLA.constants.SCI_GETDOCPOINTER` 2357
+-- * `_G._SCINTILLA.constants.SCI_GETEDGECOLOUR` 2364
+-- * `_G._SCINTILLA.constants.SCI_GETEDGECOLUMN` 2360
+-- * `_G._SCINTILLA.constants.SCI_GETEDGEMODE` 2362
+-- * `_G._SCINTILLA.constants.SCI_GETENDATLASTLINE` 2278
+-- * `_G._SCINTILLA.constants.SCI_GETENDSTYLED` 2028
+-- * `_G._SCINTILLA.constants.SCI_GETEOLMODE` 2030
+-- * `_G._SCINTILLA.constants.SCI_GETEXTRAASCENT` 2526
+-- * `_G._SCINTILLA.constants.SCI_GETEXTRADESCENT` 2528
+-- * `_G._SCINTILLA.constants.SCI_GETFIRSTVISIBLELINE` 2152
+-- * `_G._SCINTILLA.constants.SCI_GETFOCUS` 2381
+-- * `_G._SCINTILLA.constants.SCI_GETFOLDEXPANDED` 2230
+-- * `_G._SCINTILLA.constants.SCI_GETFOLDLEVEL` 2223
+-- * `_G._SCINTILLA.constants.SCI_GETFOLDPARENT` 2225
+-- * `_G._SCINTILLA.constants.SCI_GETFONTQUALITY` 2612
+-- * `_G._SCINTILLA.constants.SCI_GETHIGHLIGHTGUIDE` 2135
+-- * `_G._SCINTILLA.constants.SCI_GETHOTSPOTACTIVEUNDERLINE` 2496
+-- * `_G._SCINTILLA.constants.SCI_GETHOTSPOTSINGLELINE` 2497
+-- * `_G._SCINTILLA.constants.SCI_GETHSCROLLBAR` 2131
+-- * `_G._SCINTILLA.constants.SCI_GETIDENTIFIER` 2623
+-- * `_G._SCINTILLA.constants.SCI_GETINDENT` 2123
+-- * `_G._SCINTILLA.constants.SCI_GETINDENTATIONGUIDES` 2133
+-- * `_G._SCINTILLA.constants.SCI_GETINDICATORCURRENT` 2501
+-- * `_G._SCINTILLA.constants.SCI_GETINDICATORVALUE` 2503
+-- * `_G._SCINTILLA.constants.SCI_GETKEYSUNICODE` 2522
+-- * `_G._SCINTILLA.constants.SCI_GETLAYOUTCACHE` 2273
+-- * `_G._SCINTILLA.constants.SCI_GETLENGTH` 2006
+-- * `_G._SCINTILLA.constants.SCI_GETLEXER` 4002
+-- * `_G._SCINTILLA.constants.SCI_GETLINECOUNT` 2154
+-- * `_G._SCINTILLA.constants.SCI_GETLINEENDPOSITION` 2136
+-- * `_G._SCINTILLA.constants.SCI_GETLINEINDENTATION` 2127
+-- * `_G._SCINTILLA.constants.SCI_GETLINEINDENTPOSITION` 2128
+-- * `_G._SCINTILLA.constants.SCI_GETLINESTATE` 2093
+-- * `_G._SCINTILLA.constants.SCI_GETLINEVISIBLE` 2228
+-- * `_G._SCINTILLA.constants.SCI_GETMAINSELECTION` 2575
+-- * `_G._SCINTILLA.constants.SCI_GETMARGINCURSORN` 2249
+-- * `_G._SCINTILLA.constants.SCI_GETMARGINLEFT` 2156
+-- * `_G._SCINTILLA.constants.SCI_GETMARGINMASKN` 2245
+-- * `_G._SCINTILLA.constants.SCI_GETMARGINOPTIONS` 2557
+-- * `_G._SCINTILLA.constants.SCI_GETMARGINRIGHT` 2158
+-- * `_G._SCINTILLA.constants.SCI_GETMARGINSENSITIVEN` 2247
+-- * `_G._SCINTILLA.constants.SCI_GETMARGINTYPEN` 2241
+-- * `_G._SCINTILLA.constants.SCI_GETMARGINWIDTHN` 2243
+-- * `_G._SCINTILLA.constants.SCI_GETMAXLINESTATE` 2094
+-- * `_G._SCINTILLA.constants.SCI_GETMODEVENTMASK` 2378
+-- * `_G._SCINTILLA.constants.SCI_GETMODIFY` 2159
+-- * `_G._SCINTILLA.constants.SCI_GETMOUSEDOWNCAPTURES` 2385
+-- * `_G._SCINTILLA.constants.SCI_GETMOUSEDWELLTIME` 2265
+-- * `_G._SCINTILLA.constants.SCI_GETMULTIPASTE` 2615
+-- * `_G._SCINTILLA.constants.SCI_GETMULTIPLESELECTION` 2564
+-- * `_G._SCINTILLA.constants.SCI_GETOVERTYPE` 2187
+-- * `_G._SCINTILLA.constants.SCI_GETPASTECONVERTENDINGS` 2468
+-- * `_G._SCINTILLA.constants.SCI_GETPOSITIONCACHE` 2515
+-- * `_G._SCINTILLA.constants.SCI_GETPRINTCOLOURMODE` 2149
+-- * `_G._SCINTILLA.constants.SCI_GETPRINTMAGNIFICATION` 2147
+-- * `_G._SCINTILLA.constants.SCI_GETPRINTWRAPMODE` 2407
+-- * `_G._SCINTILLA.constants.SCI_GETPROPERTYINT` 4010
+-- * `_G._SCINTILLA.constants.SCI_GETREADONLY` 2140
+-- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONANCHOR` 2591
+-- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONANCHORVIRTUALSPACE` 2595
+-- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONCARET` 2589
+-- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONCARETVIRTUALSPACE` 2593
+-- * `_G._SCINTILLA.constants.SCI_GETRECTANGULARSELECTIONMODIFIER` 2599
+-- * `_G._SCINTILLA.constants.SCI_GETSCROLLWIDTH` 2275
+-- * `_G._SCINTILLA.constants.SCI_GETSCROLLWIDTHTRACKING` 2517
+-- * `_G._SCINTILLA.constants.SCI_GETSEARCHFLAGS` 2199
+-- * `_G._SCINTILLA.constants.SCI_GETSELALPHA` 2477
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONEND` 2145
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONMODE` 2423
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNANCHOR` 2579
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNANCHORVIRTUALSPACE` 2583
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNCARET` 2577
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNCARETVIRTUALSPACE` 2581
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNEND` 2587
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONNSTART` 2585
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONS` 2570
+-- * `_G._SCINTILLA.constants.SCI_GETSELECTIONSTART` 2143
+-- * `_G._SCINTILLA.constants.SCI_GETSELEOLFILLED` 2479
+-- * `_G._SCINTILLA.constants.SCI_GETSTATUS` 2383
+-- * `_G._SCINTILLA.constants.SCI_GETSTYLEAT` 2010
+-- * `_G._SCINTILLA.constants.SCI_GETSTYLEBITS` 2091
+-- * `_G._SCINTILLA.constants.SCI_GETSTYLEBITSNEEDED` 4011
+-- * `_G._SCINTILLA.constants.SCI_GETTABINDENTS` 2261
+-- * `_G._SCINTILLA.constants.SCI_GETTABWIDTH` 2121
+-- * `_G._SCINTILLA.constants.SCI_GETTARGETEND` 2193
+-- * `_G._SCINTILLA.constants.SCI_GETTARGETSTART` 2191
+-- * `_G._SCINTILLA.constants.SCI_GETTECHNOLOGY` 2631
+-- * `_G._SCINTILLA.constants.SCI_GETTEXTLENGTH` 2183
+-- * `_G._SCINTILLA.constants.SCI_GETTWOPHASEDRAW` 2283
+-- * `_G._SCINTILLA.constants.SCI_GETUNDOCOLLECTION` 2019
+-- * `_G._SCINTILLA.constants.SCI_GETUSETABS` 2125
+-- * `_G._SCINTILLA.constants.SCI_GETVIEWEOL` 2355
+-- * `_G._SCINTILLA.constants.SCI_GETVIEWWS` 2020
+-- * `_G._SCINTILLA.constants.SCI_GETVIRTUALSPACEOPTIONS` 2597
+-- * `_G._SCINTILLA.constants.SCI_GETVSCROLLBAR` 2281
+-- * `_G._SCINTILLA.constants.SCI_GETWHITESPACESIZE` 2087
+-- * `_G._SCINTILLA.constants.SCI_GETWRAPINDENTMODE` 2473
+-- * `_G._SCINTILLA.constants.SCI_GETWRAPMODE` 2269
+-- * `_G._SCINTILLA.constants.SCI_GETWRAPSTARTINDENT` 2465
+-- * `_G._SCINTILLA.constants.SCI_GETWRAPVISUALFLAGS` 2461
+-- * `_G._SCINTILLA.constants.SCI_GETWRAPVISUALFLAGSLOCATION` 2463
+-- * `_G._SCINTILLA.constants.SCI_GETXOFFSET` 2398
+-- * `_G._SCINTILLA.constants.SCI_GETZOOM` 2374
+-- * `_G._SCINTILLA.constants.SCI_INDICGETALPHA` 2524
+-- * `_G._SCINTILLA.constants.SCI_INDICGETFORE` 2083
+-- * `_G._SCINTILLA.constants.SCI_INDICGETOUTLINEALPHA` 2559
+-- * `_G._SCINTILLA.constants.SCI_INDICGETSTYLE` 2081
+-- * `_G._SCINTILLA.constants.SCI_INDICGETUNDER` 2511
+-- * `_G._SCINTILLA.constants.SCI_INDICSETALPHA` 2523
+-- * `_G._SCINTILLA.constants.SCI_INDICSETFORE` 2082
+-- * `_G._SCINTILLA.constants.SCI_INDICSETOUTLINEALPHA` 2558
+-- * `_G._SCINTILLA.constants.SCI_INDICSETSTYLE` 2080
+-- * `_G._SCINTILLA.constants.SCI_INDICSETUNDER` 2510
+-- * `_G._SCINTILLA.constants.SCI_LEXER_START` 4000
+-- * `_G._SCINTILLA.constants.SCI_LINESONSCREEN` 2370
+-- * `_G._SCINTILLA.constants.SCI_MARGINGETSTYLE` 2533
+-- * `_G._SCINTILLA.constants.SCI_MARGINGETSTYLEOFFSET` 2538
+-- * `_G._SCINTILLA.constants.SCI_MARGINSETSTYLE` 2532
+-- * `_G._SCINTILLA.constants.SCI_MARGINSETSTYLEOFFSET` 2537
+-- * `_G._SCINTILLA.constants.SCI_OPTIONAL_START` 3000
+-- * `_G._SCINTILLA.constants.SCI_RGBAIMAGESETHEIGHT` 2625
+-- * `_G._SCINTILLA.constants.SCI_RGBAIMAGESETWIDTH` 2624
+-- * `_G._SCINTILLA.constants.SCI_SELECTIONISRECTANGLE` 2372
+-- * `_G._SCINTILLA.constants.SCI_SETADDITIONALCARETFORE` 2604
+-- * `_G._SCINTILLA.constants.SCI_SETADDITIONALCARETSBLINK` 2567
+-- * `_G._SCINTILLA.constants.SCI_SETADDITIONALCARETSVISIBLE` 2608
+-- * `_G._SCINTILLA.constants.SCI_SETADDITIONALSELALPHA` 2602
+-- * `_G._SCINTILLA.constants.SCI_SETADDITIONALSELBACK` 2601
+-- * `_G._SCINTILLA.constants.SCI_SETADDITIONALSELECTIONTYPING` 2565
+-- * `_G._SCINTILLA.constants.SCI_SETADDITIONALSELFORE` 2600
+-- * `_G._SCINTILLA.constants.SCI_SETANCHOR` 2026
+-- * `_G._SCINTILLA.constants.SCI_SETBACKSPACEUNINDENTS` 2262
+-- * `_G._SCINTILLA.constants.SCI_SETBUFFEREDDRAW` 2035
+-- * `_G._SCINTILLA.constants.SCI_SETCARETFORE` 2069
+-- * `_G._SCINTILLA.constants.SCI_SETCARETLINEBACK` 2098
+-- * `_G._SCINTILLA.constants.SCI_SETCARETLINEBACKALPHA` 2470
+-- * `_G._SCINTILLA.constants.SCI_SETCARETLINEVISIBLE` 2096
+-- * `_G._SCINTILLA.constants.SCI_SETCARETPERIOD` 2076
+-- * `_G._SCINTILLA.constants.SCI_SETCARETSTICKY` 2458
+-- * `_G._SCINTILLA.constants.SCI_SETCARETSTYLE` 2512
+-- * `_G._SCINTILLA.constants.SCI_SETCARETWIDTH` 2188
+-- * `_G._SCINTILLA.constants.SCI_SETCODEPAGE` 2037
+-- * `_G._SCINTILLA.constants.SCI_SETCONTROLCHARSYMBOL` 2388
+-- * `_G._SCINTILLA.constants.SCI_SETCURRENTPOS` 2141
+-- * `_G._SCINTILLA.constants.SCI_SETCURSOR` 2386
+-- * `_G._SCINTILLA.constants.SCI_SETDOCPOINTER` 2358
+-- * `_G._SCINTILLA.constants.SCI_SETEDGECOLOUR` 2365
+-- * `_G._SCINTILLA.constants.SCI_SETEDGECOLUMN` 2361
+-- * `_G._SCINTILLA.constants.SCI_SETEDGEMODE` 2363
+-- * `_G._SCINTILLA.constants.SCI_SETENDATLASTLINE` 2277
+-- * `_G._SCINTILLA.constants.SCI_SETEOLMODE` 2031
+-- * `_G._SCINTILLA.constants.SCI_SETEXTRAASCENT` 2525
+-- * `_G._SCINTILLA.constants.SCI_SETEXTRADESCENT` 2527
+-- * `_G._SCINTILLA.constants.SCI_SETFIRSTVISIBLELINE` 2613
+-- * `_G._SCINTILLA.constants.SCI_SETFOCUS` 2380
+-- * `_G._SCINTILLA.constants.SCI_SETFOLDEXPANDED` 2229
+-- * `_G._SCINTILLA.constants.SCI_SETFOLDLEVEL` 2222
+-- * `_G._SCINTILLA.constants.SCI_SETFONTQUALITY` 2611
+-- * `_G._SCINTILLA.constants.SCI_SETHIGHLIGHTGUIDE` 2134
+-- * `_G._SCINTILLA.constants.SCI_SETHOTSPOTACTIVEUNDERLINE` 2412
+-- * `_G._SCINTILLA.constants.SCI_SETHOTSPOTSINGLELINE` 2421
+-- * `_G._SCINTILLA.constants.SCI_SETHSCROLLBAR` 2130
+-- * `_G._SCINTILLA.constants.SCI_SETIDENTIFIER` 2622
+-- * `_G._SCINTILLA.constants.SCI_SETINDENT` 2122
+-- * `_G._SCINTILLA.constants.SCI_SETINDENTATIONGUIDES` 2132
+-- * `_G._SCINTILLA.constants.SCI_SETINDICATORCURRENT` 2500
+-- * `_G._SCINTILLA.constants.SCI_SETINDICATORVALUE` 2502
+-- * `_G._SCINTILLA.constants.SCI_SETKEYSUNICODE` 2521
+-- * `_G._SCINTILLA.constants.SCI_SETKEYWORDS` 4005
+-- * `_G._SCINTILLA.constants.SCI_SETLAYOUTCACHE` 2272
+-- * `_G._SCINTILLA.constants.SCI_SETLEXER` 4001
+-- * `_G._SCINTILLA.constants.SCI_SETLINEINDENTATION` 2126
+-- * `_G._SCINTILLA.constants.SCI_SETLINESTATE` 2092
+-- * `_G._SCINTILLA.constants.SCI_SETMAINSELECTION` 2574
+-- * `_G._SCINTILLA.constants.SCI_SETMARGINCURSORN` 2248
+-- * `_G._SCINTILLA.constants.SCI_SETMARGINLEFT` 2155
+-- * `_G._SCINTILLA.constants.SCI_SETMARGINMASKN` 2244
+-- * `_G._SCINTILLA.constants.SCI_SETMARGINOPTIONS` 2539
+-- * `_G._SCINTILLA.constants.SCI_SETMARGINRIGHT` 2157
+-- * `_G._SCINTILLA.constants.SCI_SETMARGINSENSITIVEN` 2246
+-- * `_G._SCINTILLA.constants.SCI_SETMARGINTYPEN` 2240
+-- * `_G._SCINTILLA.constants.SCI_SETMARGINWIDTHN` 2242
+-- * `_G._SCINTILLA.constants.SCI_SETMODEVENTMASK` 2359
+-- * `_G._SCINTILLA.constants.SCI_SETMOUSEDOWNCAPTURES` 2384
+-- * `_G._SCINTILLA.constants.SCI_SETMOUSEDWELLTIME` 2264
+-- * `_G._SCINTILLA.constants.SCI_SETMULTIPASTE` 2614
+-- * `_G._SCINTILLA.constants.SCI_SETMULTIPLESELECTION` 2563
+-- * `_G._SCINTILLA.constants.SCI_SETOVERTYPE` 2186
+-- * `_G._SCINTILLA.constants.SCI_SETPASTECONVERTENDINGS` 2467
+-- * `_G._SCINTILLA.constants.SCI_SETPOSITIONCACHE` 2514
+-- * `_G._SCINTILLA.constants.SCI_SETPRINTCOLOURMODE` 2148
+-- * `_G._SCINTILLA.constants.SCI_SETPRINTMAGNIFICATION` 2146
+-- * `_G._SCINTILLA.constants.SCI_SETPRINTWRAPMODE` 2406
+-- * `_G._SCINTILLA.constants.SCI_SETPROPERTY` 4004
+-- * `_G._SCINTILLA.constants.SCI_SETREADONLY` 2171
+-- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONANCHOR` 2590
+-- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONANCHORVIRTUALSPACE` 2594
+-- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONCARET` 2588
+-- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONCARETVIRTUALSPACE` 2592
+-- * `_G._SCINTILLA.constants.SCI_SETRECTANGULARSELECTIONMODIFIER` 2598
+-- * `_G._SCINTILLA.constants.SCI_SETSCROLLWIDTH` 2274
+-- * `_G._SCINTILLA.constants.SCI_SETSCROLLWIDTHTRACKING` 2516
+-- * `_G._SCINTILLA.constants.SCI_SETSEARCHFLAGS` 2198
+-- * `_G._SCINTILLA.constants.SCI_SETSELALPHA` 2478
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONEND` 2144
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONMODE` 2422
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNANCHOR` 2578
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNANCHORVIRTUALSPACE` 2582
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNCARET` 2576
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNCARETVIRTUALSPACE` 2580
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNEND` 2586
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONNSTART` 2584
+-- * `_G._SCINTILLA.constants.SCI_SETSELECTIONSTART` 2142
+-- * `_G._SCINTILLA.constants.SCI_SETSELEOLFILLED` 2480
+-- * `_G._SCINTILLA.constants.SCI_SETSTATUS` 2382
+-- * `_G._SCINTILLA.constants.SCI_SETSTYLEBITS` 2090
+-- * `_G._SCINTILLA.constants.SCI_SETTABINDENTS` 2260
+-- * `_G._SCINTILLA.constants.SCI_SETTABWIDTH` 2036
+-- * `_G._SCINTILLA.constants.SCI_SETTARGETEND` 2192
+-- * `_G._SCINTILLA.constants.SCI_SETTARGETSTART` 2190
+-- * `_G._SCINTILLA.constants.SCI_SETTECHNOLOGY` 2630
+-- * `_G._SCINTILLA.constants.SCI_SETTWOPHASEDRAW` 2284
+-- * `_G._SCINTILLA.constants.SCI_SETUNDOCOLLECTION` 2012
+-- * `_G._SCINTILLA.constants.SCI_SETUSETABS` 2124
+-- * `_G._SCINTILLA.constants.SCI_SETVIEWEOL` 2356
+-- * `_G._SCINTILLA.constants.SCI_SETVIEWWS` 2021
+-- * `_G._SCINTILLA.constants.SCI_SETVIRTUALSPACEOPTIONS` 2596
+-- * `_G._SCINTILLA.constants.SCI_SETVSCROLLBAR` 2280
+-- * `_G._SCINTILLA.constants.SCI_SETWHITESPACECHARS` 2443
+-- * `_G._SCINTILLA.constants.SCI_SETWHITESPACESIZE` 2086
+-- * `_G._SCINTILLA.constants.SCI_SETWORDCHARS` 2077
+-- * `_G._SCINTILLA.constants.SCI_SETWRAPINDENTMODE` 2472
+-- * `_G._SCINTILLA.constants.SCI_SETWRAPMODE` 2268
+-- * `_G._SCINTILLA.constants.SCI_SETWRAPSTARTINDENT` 2464
+-- * `_G._SCINTILLA.constants.SCI_SETWRAPVISUALFLAGS` 2460
+-- * `_G._SCINTILLA.constants.SCI_SETWRAPVISUALFLAGSLOCATION` 2462
+-- * `_G._SCINTILLA.constants.SCI_SETXOFFSET` 2397
+-- * `_G._SCINTILLA.constants.SCI_SETZOOM` 2373
+-- * `_G._SCINTILLA.constants.SCI_START` 2000
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETBACK` 2482
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETBOLD` 2483
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETCASE` 2489
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETCHANGEABLE` 2492
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETCHARACTERSET` 2490
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETEOLFILLED` 2487
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETFORE` 2481
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETHOTSPOT` 2493
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETITALIC` 2484
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETSIZE` 2485
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETSIZEFRACTIONAL` 2062
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETUNDERLINE` 2488
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETVISIBLE` 2491
+-- * `_G._SCINTILLA.constants.SCI_STYLEGETWEIGHT` 2064
+-- * `_G._SCINTILLA.constants.SCI_STYLESETBACK` 2052
+-- * `_G._SCINTILLA.constants.SCI_STYLESETBOLD` 2053
+-- * `_G._SCINTILLA.constants.SCI_STYLESETCASE` 2060
+-- * `_G._SCINTILLA.constants.SCI_STYLESETCHANGEABLE` 2099
+-- * `_G._SCINTILLA.constants.SCI_STYLESETCHARACTERSET` 2066
+-- * `_G._SCINTILLA.constants.SCI_STYLESETEOLFILLED` 2057
+-- * `_G._SCINTILLA.constants.SCI_STYLESETFONT` 2056
+-- * `_G._SCINTILLA.constants.SCI_STYLESETFORE` 2051
+-- * `_G._SCINTILLA.constants.SCI_STYLESETHOTSPOT` 2409
+-- * `_G._SCINTILLA.constants.SCI_STYLESETITALIC` 2054
+-- * `_G._SCINTILLA.constants.SCI_STYLESETSIZE` 2055
+-- * `_G._SCINTILLA.constants.SCI_STYLESETSIZEFRACTIONAL` 2061
+-- * `_G._SCINTILLA.constants.SCI_STYLESETUNDERLINE` 2059
+-- * `_G._SCINTILLA.constants.SCI_STYLESETVISIBLE` 2074
+-- * `_G._SCINTILLA.constants.SCI_STYLESETWEIGHT` 2063
+-- * `_G._SCINTILLA.constants.SCK_ADD` 310
+-- * `_G._SCINTILLA.constants.SCK_BACK` 8
+-- * `_G._SCINTILLA.constants.SCK_DELETE` 308
+-- * `_G._SCINTILLA.constants.SCK_DIVIDE` 312
+-- * `_G._SCINTILLA.constants.SCK_DOWN` 300
+-- * `_G._SCINTILLA.constants.SCK_END` 305
+-- * `_G._SCINTILLA.constants.SCK_ESCAPE` 7
+-- * `_G._SCINTILLA.constants.SCK_HOME` 304
+-- * `_G._SCINTILLA.constants.SCK_INSERT` 309
+-- * `_G._SCINTILLA.constants.SCK_LEFT` 302
+-- * `_G._SCINTILLA.constants.SCK_MENU` 315
+-- * `_G._SCINTILLA.constants.SCK_NEXT` 307
+-- * `_G._SCINTILLA.constants.SCK_PRIOR` 306
+-- * `_G._SCINTILLA.constants.SCK_RETURN` 13
+-- * `_G._SCINTILLA.constants.SCK_RIGHT` 303
+-- * `_G._SCINTILLA.constants.SCK_RWIN` 314
+-- * `_G._SCINTILLA.constants.SCK_SUBTRACT` 311
+-- * `_G._SCINTILLA.constants.SCK_TAB` 9
+-- * `_G._SCINTILLA.constants.SCK_UP` 301
+-- * `_G._SCINTILLA.constants.SCK_WIN` 313
+-- * `_G._SCINTILLA.constants.SCMOD_ALT` 4
+-- * `_G._SCINTILLA.constants.SCMOD_CTRL` 2
+-- * `_G._SCINTILLA.constants.SCMOD_META` 16
+-- * `_G._SCINTILLA.constants.SCMOD_NORM` 0
+-- * `_G._SCINTILLA.constants.SCMOD_SHIFT` 1
+-- * `_G._SCINTILLA.constants.SCMOD_SUPER` 8
+-- * `_G._SCINTILLA.constants.SCVS_NONE` 0
+-- * `_G._SCINTILLA.constants.SCVS_RECTANGULARSELECTION` 1
+-- * `_G._SCINTILLA.constants.SCVS_USERACCESSIBLE` 2
+-- * `_G._SCINTILLA.constants.SCWS_INVISIBLE` 0
+-- * `_G._SCINTILLA.constants.SCWS_VISIBLEAFTERINDENT` 2
+-- * `_G._SCINTILLA.constants.SCWS_VISIBLEALWAYS` 1
+-- * `_G._SCINTILLA.constants.SC_ALPHA_NOALPHA` 256
+-- * `_G._SCINTILLA.constants.SC_ALPHA_OPAQUE` 255
+-- * `_G._SCINTILLA.constants.SC_ALPHA_TRANSPARENT` 0
+-- * `_G._SCINTILLA.constants.SC_CACHE_CARET` 1
+-- * `_G._SCINTILLA.constants.SC_CACHE_DOCUMENT` 3
+-- * `_G._SCINTILLA.constants.SC_CACHE_NONE` 0
+-- * `_G._SCINTILLA.constants.SC_CACHE_PAGE` 2
+-- * `_G._SCINTILLA.constants.SC_CARETSTICKY_OFF` 0
+-- * `_G._SCINTILLA.constants.SC_CARETSTICKY_ON` 1
+-- * `_G._SCINTILLA.constants.SC_CARETSTICKY_WHITESPACE` 2
+-- * `_G._SCINTILLA.constants.SC_CASE_LOWER` 2
+-- * `_G._SCINTILLA.constants.SC_CASE_MIXED` 0
+-- * `_G._SCINTILLA.constants.SC_CASE_UPPER` 1
+-- * `_G._SCINTILLA.constants.SC_CHARSET_8859_15` 1000
+-- * `_G._SCINTILLA.constants.SC_CHARSET_ANSI` 0
+-- * `_G._SCINTILLA.constants.SC_CHARSET_ARABIC` 178
+-- * `_G._SCINTILLA.constants.SC_CHARSET_BALTIC` 186
+-- * `_G._SCINTILLA.constants.SC_CHARSET_CHINESEBIG5` 136
+-- * `_G._SCINTILLA.constants.SC_CHARSET_CYRILLIC` 1251
+-- * `_G._SCINTILLA.constants.SC_CHARSET_DEFAULT` 1
+-- * `_G._SCINTILLA.constants.SC_CHARSET_EASTEUROPE` 238
+-- * `_G._SCINTILLA.constants.SC_CHARSET_GB2312` 134
+-- * `_G._SCINTILLA.constants.SC_CHARSET_GREEK` 161
+-- * `_G._SCINTILLA.constants.SC_CHARSET_HANGUL` 129
+-- * `_G._SCINTILLA.constants.SC_CHARSET_HEBREW` 177
+-- * `_G._SCINTILLA.constants.SC_CHARSET_JOHAB` 130
+-- * `_G._SCINTILLA.constants.SC_CHARSET_MAC` 77
+-- * `_G._SCINTILLA.constants.SC_CHARSET_OEM` 255
+-- * `_G._SCINTILLA.constants.SC_CHARSET_RUSSIAN` 204
+-- * `_G._SCINTILLA.constants.SC_CHARSET_SHIFTJIS` 128
+-- * `_G._SCINTILLA.constants.SC_CHARSET_SYMBOL` 2
+-- * `_G._SCINTILLA.constants.SC_CHARSET_THAI` 222
+-- * `_G._SCINTILLA.constants.SC_CHARSET_TURKISH` 162
+-- * `_G._SCINTILLA.constants.SC_CHARSET_VIETNAMESE` 163
+-- * `_G._SCINTILLA.constants.SC_CP_UTF8` 65001
+-- * `_G._SCINTILLA.constants.SC_CURSORARROW` 2
+-- * `_G._SCINTILLA.constants.SC_CURSORNORMAL` -1
+-- * `_G._SCINTILLA.constants.SC_CURSORREVERSEARROW` 7
+-- * `_G._SCINTILLA.constants.SC_CURSORWAIT` 4
+-- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_ANTIALIASED` 2
+-- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_DEFAULT` 0
+-- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_LCD_OPTIMIZED` 3
+-- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_MASK` 15
+-- * `_G._SCINTILLA.constants.SC_EFF_QUALITY_NON_ANTIALIASED` 1
+-- * `_G._SCINTILLA.constants.SC_EOL_CR` 1
+-- * `_G._SCINTILLA.constants.SC_EOL_CRLF` 0
+-- * `_G._SCINTILLA.constants.SC_EOL_LF` 2
+-- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LEVELNUMBERS` 64
+-- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LINEAFTER_CONTRACTED` 16
+-- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LINEAFTER_EXPANDED` 8
+-- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LINEBEFORE_CONTRACTED` 4
+-- * `_G._SCINTILLA.constants.SC_FOLDFLAG_LINEBEFORE_EXPANDED` 2
+-- * `_G._SCINTILLA.constants.SC_FOLDLEVELBASE` 1024
+-- * `_G._SCINTILLA.constants.SC_FOLDLEVELHEADERFLAG` 8192
+-- * `_G._SCINTILLA.constants.SC_FOLDLEVELNUMBERMASK` 4095
+-- * `_G._SCINTILLA.constants.SC_FOLDLEVELWHITEFLAG` 4096
+-- * `_G._SCINTILLA.constants.SC_FONT_SIZE_MULTIPLIER` 100
+-- * `_G._SCINTILLA.constants.SC_IV_LOOKBOTH` 3
+-- * `_G._SCINTILLA.constants.SC_IV_LOOKFORWARD` 2
+-- * `_G._SCINTILLA.constants.SC_IV_NONE` 0
+-- * `_G._SCINTILLA.constants.SC_IV_REAL` 1
+-- * `_G._SCINTILLA.constants.SC_LASTSTEPINUNDOREDO` 256
+-- * `_G._SCINTILLA.constants.SC_MARGINOPTION_NONE` 0
+-- * `_G._SCINTILLA.constants.SC_MARGINOPTION_SUBLINESELECT` 1
+-- * `_G._SCINTILLA.constants.SC_MARGIN_BACK` 2
+-- * `_G._SCINTILLA.constants.SC_MARGIN_FORE` 3
+-- * `_G._SCINTILLA.constants.SC_MARGIN_NUMBER` 1
+-- * `_G._SCINTILLA.constants.SC_MARGIN_RTEXT` 5
+-- * `_G._SCINTILLA.constants.SC_MARGIN_SYMBOL` 0
+-- * `_G._SCINTILLA.constants.SC_MARGIN_TEXT` 4
+-- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDER` 30
+-- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDEREND` 25
+-- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDERMIDTAIL` 27
+-- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDEROPEN` 31
+-- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDEROPENMID` 26
+-- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDERSUB` 29
+-- * `_G._SCINTILLA.constants.SC_MARKNUM_FOLDERTAIL` 28
+-- * `_G._SCINTILLA.constants.SC_MARK_ARROW` 2
+-- * `_G._SCINTILLA.constants.SC_MARK_ARROWDOWN` 6
+-- * `_G._SCINTILLA.constants.SC_MARK_ARROWS` 24
+-- * `_G._SCINTILLA.constants.SC_MARK_AVAILABLE` 28
+-- * `_G._SCINTILLA.constants.SC_MARK_BACKGROUND` 22
+-- * `_G._SCINTILLA.constants.SC_MARK_BOXMINUS` 14
+-- * `_G._SCINTILLA.constants.SC_MARK_BOXMINUSCONNECTED` 15
+-- * `_G._SCINTILLA.constants.SC_MARK_BOXPLUS` 12
+-- * `_G._SCINTILLA.constants.SC_MARK_BOXPLUSCONNECTED` 13
+-- * `_G._SCINTILLA.constants.SC_MARK_CHARACTER` 10000
+-- * `_G._SCINTILLA.constants.SC_MARK_CIRCLE` 0
+-- * `_G._SCINTILLA.constants.SC_MARK_CIRCLEMINUS` 20
+-- * `_G._SCINTILLA.constants.SC_MARK_CIRCLEMINUSCONNECTED` 21
+-- * `_G._SCINTILLA.constants.SC_MARK_CIRCLEPLUS` 18
+-- * `_G._SCINTILLA.constants.SC_MARK_CIRCLEPLUSCONNECTED` 19
+-- * `_G._SCINTILLA.constants.SC_MARK_DOTDOTDOT` 23
+-- * `_G._SCINTILLA.constants.SC_MARK_EMPTY` 5
+-- * `_G._SCINTILLA.constants.SC_MARK_FULLRECT` 26
+-- * `_G._SCINTILLA.constants.SC_MARK_LCORNER` 10
+-- * `_G._SCINTILLA.constants.SC_MARK_LCORNERCURVE` 16
+-- * `_G._SCINTILLA.constants.SC_MARK_LEFTRECT` 27
+-- * `_G._SCINTILLA.constants.SC_MARK_MINUS` 7
+-- * `_G._SCINTILLA.constants.SC_MARK_PIXMAP` 25
+-- * `_G._SCINTILLA.constants.SC_MARK_PLUS` 8
+-- * `_G._SCINTILLA.constants.SC_MARK_RGBAIMAGE` 30
+-- * `_G._SCINTILLA.constants.SC_MARK_ROUNDRECT` 1
+-- * `_G._SCINTILLA.constants.SC_MARK_SHORTARROW` 4
+-- * `_G._SCINTILLA.constants.SC_MARK_SMALLRECT` 3
+-- * `_G._SCINTILLA.constants.SC_MARK_TCORNER` 11
+-- * `_G._SCINTILLA.constants.SC_MARK_TCORNERCURVE` 17
+-- * `_G._SCINTILLA.constants.SC_MARK_UNDERLINE` 29
+-- * `_G._SCINTILLA.constants.SC_MARK_VLINE` 9
+-- * `_G._SCINTILLA.constants.SC_MASK_FOLDERS` -33554432
+-- * `_G._SCINTILLA.constants.SC_MODEVENTMASKALL` 1048575
+-- * `_G._SCINTILLA.constants.SC_MOD_BEFOREDELETE` 2048
+-- * `_G._SCINTILLA.constants.SC_MOD_BEFOREINSERT` 1024
+-- * `_G._SCINTILLA.constants.SC_MOD_CHANGEANNOTATION` 131072
+-- * `_G._SCINTILLA.constants.SC_MOD_CHANGEFOLD` 8
+-- * `_G._SCINTILLA.constants.SC_MOD_CHANGEINDICATOR` 16384
+-- * `_G._SCINTILLA.constants.SC_MOD_CHANGELINESTATE` 32768
+-- * `_G._SCINTILLA.constants.SC_MOD_CHANGEMARGIN` 65536
+-- * `_G._SCINTILLA.constants.SC_MOD_CHANGEMARKER` 512
+-- * `_G._SCINTILLA.constants.SC_MOD_CHANGESTYLE` 4
+-- * `_G._SCINTILLA.constants.SC_MOD_CONTAINER` 262144
+-- * `_G._SCINTILLA.constants.SC_MOD_DELETETEXT` 2
+-- * `_G._SCINTILLA.constants.SC_MOD_INSERTTEXT` 1
+-- * `_G._SCINTILLA.constants.SC_MOD_LEXERSTATE` 524288
+-- * `_G._SCINTILLA.constants.SC_MULTILINEUNDOREDO` 4096
+-- * `_G._SCINTILLA.constants.SC_MULTIPASTE_EACH` 1
+-- * `_G._SCINTILLA.constants.SC_MULTIPASTE_ONCE` 0
+-- * `_G._SCINTILLA.constants.SC_MULTISTEPUNDOREDO` 128
+-- * `_G._SCINTILLA.constants.SC_PERFORMED_REDO` 64
+-- * `_G._SCINTILLA.constants.SC_PERFORMED_UNDO` 32
+-- * `_G._SCINTILLA.constants.SC_PERFORMED_USER` 16
+-- * `_G._SCINTILLA.constants.SC_PRINT_BLACKONWHITE` 2
+-- * `_G._SCINTILLA.constants.SC_PRINT_COLOURONWHITE` 3
+-- * `_G._SCINTILLA.constants.SC_PRINT_COLOURONWHITEDEFAULTBG` 4
+-- * `_G._SCINTILLA.constants.SC_PRINT_INVERTLIGHT` 1
+-- * `_G._SCINTILLA.constants.SC_PRINT_NORMAL` 0
+-- * `_G._SCINTILLA.constants.SC_SEL_LINES` 2
+-- * `_G._SCINTILLA.constants.SC_SEL_RECTANGLE` 1
+-- * `_G._SCINTILLA.constants.SC_SEL_STREAM` 0
+-- * `_G._SCINTILLA.constants.SC_SEL_THIN` 3
+-- * `_G._SCINTILLA.constants.SC_STARTACTION` 8192
+-- * `_G._SCINTILLA.constants.SC_STATUS_BADALLOC` 2
+-- * `_G._SCINTILLA.constants.SC_STATUS_FAILURE` 1
+-- * `_G._SCINTILLA.constants.SC_STATUS_OK` 0
+-- * `_G._SCINTILLA.constants.SC_TECHNOLOGY_DEFAULT` 0
+-- * `_G._SCINTILLA.constants.SC_TECHNOLOGY_DIRECTWRITE` 1
+-- * `_G._SCINTILLA.constants.SC_TIME_FOREVER` 10000000
+-- * `_G._SCINTILLA.constants.SC_TYPE_BOOLEAN` 0
+-- * `_G._SCINTILLA.constants.SC_TYPE_INTEGER` 1
+-- * `_G._SCINTILLA.constants.SC_TYPE_STRING` 2
+-- * `_G._SCINTILLA.constants.SC_UPDATE_CONTENT` 1
+-- * `_G._SCINTILLA.constants.SC_UPDATE_H_SCROLL` 8
+-- * `_G._SCINTILLA.constants.SC_UPDATE_SELECTION` 2
+-- * `_G._SCINTILLA.constants.SC_UPDATE_V_SCROLL` 4
+-- * `_G._SCINTILLA.constants.SC_WEIGHT_BOLD` 700
+-- * `_G._SCINTILLA.constants.SC_WEIGHT_NORMAL` 400
+-- * `_G._SCINTILLA.constants.SC_WEIGHT_SEMIBOLD` 600
+-- * `_G._SCINTILLA.constants.SC_WRAPINDENT_FIXED` 0
+-- * `_G._SCINTILLA.constants.SC_WRAPINDENT_INDENT` 2
+-- * `_G._SCINTILLA.constants.SC_WRAPINDENT_SAME` 1
+-- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_DEFAULT` 0
+-- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_END_BY_TEXT` 1
+-- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_START_BY_TEXT` 2
+-- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAG_END` 1
+-- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAG_NONE` 0
+-- * `_G._SCINTILLA.constants.SC_WRAPVISUALFLAG_START` 2
+-- * `_G._SCINTILLA.constants.SC_WRAP_CHAR` 2
+-- * `_G._SCINTILLA.constants.SC_WRAP_NONE` 0
+-- * `_G._SCINTILLA.constants.SC_WRAP_WORD` 1
+-- * `_G._SCINTILLA.constants.STYLE_BRACEBAD` 35
+-- * `_G._SCINTILLA.constants.STYLE_BRACELIGHT` 34
+-- * `_G._SCINTILLA.constants.STYLE_CALLTIP` 38
+-- * `_G._SCINTILLA.constants.STYLE_CONTROLCHAR` 36
+-- * `_G._SCINTILLA.constants.STYLE_DEFAULT` 32
+-- * `_G._SCINTILLA.constants.STYLE_INDENTGUIDE` 37
+-- * `_G._SCINTILLA.constants.STYLE_LASTPREDEFINED` 39
+-- * `_G._SCINTILLA.constants.STYLE_LINENUMBER` 33
+-- * `_G._SCINTILLA.constants.STYLE_MAX` 255
+-- * `_G._SCINTILLA.constants.UNDO_MAY_COALESCE` 1
+-- * `_G._SCINTILLA.constants.VISIBLE_SLOP` 1
+-- * `_G._SCINTILLA.constants.VISIBLE_STRICT` 4
+-- * `_G._SCINTILLA.constants.SCN_DOUBLECLICK` 2006
+-- * `_G._SCINTILLA.constants.SCN_AUTOCCHARDELETED` 2027
+-- * `_G._SCINTILLA.constants.SCN_SAVEPOINTLEFT` 2003
+-- * `_G._SCINTILLA.constants.SCN_PAINTED` 2013
+-- * `_G._SCINTILLA.constants.SCN_HOTSPOTRELEASECLICK` 2028
+-- * `_G._SCINTILLA.constants.SCN_UPDATEUI` 2007
+-- * `_G._SCINTILLA.constants.SCN_STYLENEEDED` 2000
+-- * `_G._SCINTILLA.constants.SCN_AUTOCCANCELLED` 2026
+-- * `_G._SCINTILLA.constants.SCN_MACRORECORD` 2009
+-- * `_G._SCINTILLA.constants.SCN_INDICATORRELEASE` 2024
+-- * `_G._SCINTILLA.constants.SCN_MODIFIED` 2008
+-- * `_G._SCINTILLA.constants.SCN_SAVEPOINTREACHED` 2002
+-- * `_G._SCINTILLA.constants.SCN_HOTSPOTDOUBLECLICK` 2020
+-- * `_G._SCINTILLA.constants.SCN_NEEDSHOWN` 2011
+-- * `_G._SCINTILLA.constants.SCN_CALLTIPCLICK` 2021
+-- * `_G._SCINTILLA.constants.SCN_AUTOCSELECTION` 2022
+-- * `_G._SCINTILLA.constants.SCN_DWELLEND` 2017
+-- * `_G._SCINTILLA.constants.SCN_ZOOM` 2018
+-- * `_G._SCINTILLA.constants.SCN_CHARADDED` 2001
+-- * `_G._SCINTILLA.constants.SCN_HOTSPOTCLICK` 2019
+-- * `_G._SCINTILLA.constants.SCN_KEY` 2005
+-- * `_G._SCINTILLA.constants.SCN_DWELLSTART` 2016
+-- * `_G._SCINTILLA.constants.SCN_MARGINCLICK` 2010
+-- * `_G._SCINTILLA.constants.SCN_USERLISTSELECTION` 2014
+-- * `_G._SCINTILLA.constants.SCN_URIDROPPED` 2015
+-- * `_G._SCINTILLA.constants.SCN_INDICATORCLICK` 2023
+-- * `_G._SCINTILLA.constants.SCN_MODIFYATTEMPTRO` 2004
+-- * `_G._SCINTILLA.constants.SCLEX_CONTAINER` 0
+-- * `_G._SCINTILLA.constants.SCLEX_AUTOMATIC` 1000
+-- * `_G._SCINTILLA.constants.SCLEX_LPEG` 999
+-- * `_G._SCINTILLA.constants.SCLEX_NULL` 1
diff --git a/core/.buffer.luadoc b/core/.buffer.luadoc
index 48a00615..53a3ea74 100644
--- a/core/.buffer.luadoc
+++ b/core/.buffer.luadoc
@@ -5,37 +5,32 @@
---
-- The current buffer in the current view.
-- It also represents the structure of any buffer table in `_G._BUFFER`.
-module('buffer')
-
--- Markdown:
--- ## Fields
---
--- * `additional_caret_fore` [number]
+-- @field additional_caret_fore (number)
-- The foreground color of additional carets in `0xBBGGRR` format.
--- * `additional_carets_blink` [bool]
+-- @field additional_carets_blink (bool)
-- Whether additional carets will blink.
--- * `additional_carets_visible` [bool]
+-- @field additional_carets_visible (bool)
-- Whether additional carets are visible.
--- * `additional_sel_alpha` [number]
+-- @field additional_sel_alpha (number)
-- The alpha of additional selections. Alpha ranges from `0` (transparent) to
-- `255` (opaque) or `256` for no alpha.
--- * `additional_sel_back` [number]
+-- @field additional_sel_back (number)
-- The background color of additional selections in `0xBBGGRR` format.
-- `buffer:set_sel_back(true, ...)` must have been called previously for this
-- to have an effect.
--- * `additional_sel_fore` [number]
+-- @field additional_sel_fore (number)
-- The foreground color of additional selections in `0xBBGGRR` format.
-- `buffer:set_sel_fore(true, ...)` must have been called previously for this
-- to have an effect.
--- * `additional_selection_typing` [bool]
+-- @field additional_selection_typing (bool)
-- Whether typing can be performed into multiple selections.
--- * `anchor` [number]
+-- @field anchor (number)
-- The position of the opposite end of the selection to the caret.
--- * `annotation_lines` [table] (Read-only)
+-- @field annotation_lines (table, Read-only)
-- Table of the number of annotation lines for lines starting from zero.
--- * `annotation_style` [table]
+-- @field annotation_style (table)
-- Table of style numbers for annotations for lines starting at zero.
--- * `annotation_style_offset` [number]
+-- @field annotation_style_offset (number)
-- The start of the range of style numbers used for annotations.
-- Annotation styles may be completely separated from standard text styles by
-- setting a style offset. For example, setting this to `512` would allow the
@@ -43,746 +38,773 @@ module('buffer')
-- overlap styles set by lexers (or margins if margins offset is `256`). Each
-- style number set with `buffer.annotation_style` has the offset added before
-- looking up the style.
--- * `annotation_visible` [number]
+-- @field annotation_visible (number)
-- The visibility of annotations.
--- * `_SCINTILLA.constants.ANNOTATION_HIDDEN` (0)
--- Annotations are not displayed.
--- * `_SCINTILLA.constants.ANNOTATION_STANDARD` (1)
--- Annotations are drawn left justified with no adornment.
--- * `_SCINTILLA.constants.ANNOTATION_BOXED` (2)
--- Annotations are indented to match the text and are surrounded by a box.
--- * `auto_c_auto_hide` [bool]
+--
+-- * `_SCINTILLA.constants.ANNOTATION_HIDDEN` (0)
+-- Annotations are not displayed.
+-- * `_SCINTILLA.constants.ANNOTATION_STANDARD` (1)
+-- Annotations are drawn left justified with no adornment.
+-- * `_SCINTILLA.constants.ANNOTATION_BOXED` (2)
+-- Annotations are indented to match the text and are surrounded by a box.
+-- @field auto_c_auto_hide (bool)
-- Whether or not autocompletion is hidden automatically when nothing matches.
-- By default, the list is cancelled if there are no viable matches (the user
-- has typed characters that no longer match a list entry).
--- * `auto_c_cancel_at_start` [bool]
+-- @field auto_c_cancel_at_start (bool)
-- Whether auto-completion is cancelled by backspacing to a position before
-- where the box was created.
-- If `false`, the list is not cancelled until the caret moves before the
-- first character of the word being completed. If `true`, cancel if the user
-- backspaces to a position before where it was created.
--- * `auto_c_choose_single` [bool]
+-- @field auto_c_choose_single (bool)
-- Whether a single item auto-completion list automatically choose the item.
-- The default is to display the list even if there is only a single item.
--- * `auto_c_drop_rest_of_word` [bool]
+-- @field auto_c_drop_rest_of_word (bool)
-- Whether or not autocompletion deletes any word characters after the
-- inserted text upon completion.
-- The default is `false`.
--- * `auto_c_fill_ups` [string] (Write-only)
+-- @field auto_c_fill_ups (string, Write-only)
-- A set of characters that when typed will cause the autocompletion to choose
-- the selected item.
-- By default, no fillup characters are set.
--- * `auto_c_ignore_case` [bool]
+-- @field auto_c_ignore_case (bool)
-- Whether case is significant when performing auto-completion searches.
-- By default, matching of characters to list members is case sensitive.
--- * `auto_c_max_height` [number]
+-- @field auto_c_max_height (number)
-- The maximum height, in rows, of auto-completion and user lists.
-- The default is 5 rows.
--- * `auto_c_max_width` [number]
+-- @field auto_c_max_width (number)
-- The maximum width, in characters, of auto-completion and user lists.
-- Set to `0` to autosize to fit longest item, which is the default.
--- * `auto_c_separator` [number]
+-- @field auto_c_separator (number)
-- The auto-completion list separator character byte.
-- The default is the space character.
--- * `auto_c_type_separator` [number]
+-- @field auto_c_type_separator (number)
-- The auto-completion list type-separator character byte.
-- The default is `'?'`. Autocompletion list items may display an image as
-- well as text. Each image is first registered with an integer type. Then
-- this integer is included in the text of the list separated by a `?` from
-- the text.
--- * `back_space_un_indents` [bool]
+-- @field back_space_un_indents (bool)
-- Whether a backspace pressed when caret is within indentation unindents.
--- * `buffered_draw` [bool]
+-- @field buffered_draw (bool)
-- Whether drawing is buffered.
-- If drawing is buffered then each line of text is drawn into a bitmap buffer
-- before drawing it to the screen to avoid flicker. The default is for
-- drawing to be buffered. first or directly onto the screen.
--- * `call_tip_back` [number] (Write-only)
+-- @field call_tip_back (number, Write-only)
-- The background color for the call tip in `0xBBGGRR` format.
--- * `call_tip_fore` [number] (Write-only)
+-- @field call_tip_fore (number, Write-only)
-- The foreground color for the call tip in `0xBBGGRR` format.
--- * `call_tip_fore_hlt` [number] (Write-only)
+-- @field call_tip_fore_hlt (number, Write-only)
-- The foreground color for the highlighted part of the call tip in `0xBBGGRR`
-- format.
--- * `call_tip_position` [boolean]
+-- @field call_tip_position (boolean)
-- The position of calltip, above or below text.
-- By default the calltip is displayed below the text. Setting to `true` will
-- display it above the text.
--- * `call_tip_use_style` [number]
+-- @field call_tip_use_style (number)
-- Enable use of `_SCINTILLA.constants.STYLE_CALLTIP` and set call tip tab
-- size in pixels.
-- If the tab size is less than `1`, Tab characters are not treated specially.
--- * `caret_fore` [number]
+-- @field caret_fore (number)
-- The foreground color of the caret in `0xBBGGRR` format.
--- * `caret_line_back` [number]
+-- @field caret_line_back (number)
-- The color of the background of the line containing the caret in `0xBBGGRR`
-- format.
--- * `caret_line_back_alpha` [number]
+-- @field caret_line_back_alpha (number)
-- The background alpha of the caret line.
-- Alpha ranges from `0` (transparent) to `255` (opaque) or `256` for no
-- alpha.
--- * `caret_line_visible` [bool]
+-- @field caret_line_visible (bool)
-- Whether the background of the line containing the caret is in a different
-- color.
--- * `caret_period` [number]
+-- @field caret_period (number)
-- The time in milliseconds that the caret is on and off.
-- Setting the period to `0` stops the caret blinking. The default value is
-- 500 milliseconds.
--- * `caret_sticky` [number]
+-- @field caret_sticky (number)
-- The caret preferred x position changing when the user types.
--- * `_SCINTILLA.constants.SC_CARETSTICKY_OFF` (0)
--- All text changes (and all caret position changes) will remember the
--- caret's new horizontal position when moving to different lines.
--- This is the default.
--- * `_SCINTILLA.constants.SC_CARETSTICKY_ON` (1)
--- The only thing which will cause the editor to remember the horizontal
--- caret position is moving the caret with mouse or keyboard (left/right
--- arrow keys, home/end keys, etc).
--- * `_SCINTILLA.constants.SC_CARETSTICKY_WHITESPACE` (2)
--- The caret acts like sticky off except under one special case; when
--- space or tab characters are inserted. (Including pasting
--- *only space/tabs* -- undo, redo, etc. do not exhibit this behavior.)
--- * `caret_style` [number]
+--
+-- * `_SCINTILLA.constants.SC_CARETSTICKY_OFF` (0)
+-- All text changes (and all caret position changes) will remember the
+-- caret's new horizontal position when moving to different lines.
+-- This is the default.
+-- * `_SCINTILLA.constants.SC_CARETSTICKY_ON` (1)
+-- The only thing which will cause the editor to remember the horizontal
+-- caret position is moving the caret with mouse or keyboard (left/right
+-- arrow keys, home/end keys, etc).
+-- * `_SCINTILLA.constants.SC_CARETSTICKY_WHITESPACE` (2)
+-- The caret acts like sticky off except under one special case; when space
+-- or tab characters are inserted. (Including pasting *only space/tabs* --
+-- undo, redo, etc. do not exhibit this behavior.)
+-- @field caret_style (number)
-- The style of the caret to be drawn.
--- * `_SCINTILLA.constants.CARETSTYLE_INVISIBLE` (0)
--- Not draw the caret at all.
--- * `_SCINTILLA.constants.CARETSTYLE_LINE` (1)
--- A line caret. This is the default value.
--- * `_SCINTILLA.constants.CARETSTYLE_BLOCK` (2)
--- A block caret.
--- * `caret_width` [number]
+--
+-- * `_SCINTILLA.constants.CARETSTYLE_INVISIBLE` (0)
+-- Not draw the caret at all.
+-- * `_SCINTILLA.constants.CARETSTYLE_LINE` (1)
+-- A line caret. This is the default value.
+-- * `_SCINTILLA.constants.CARETSTYLE_BLOCK` (2)
+-- A block caret.
+-- @field caret_width (number)
-- The width of the insert mode caret in pixels.
-- Can be `0`, `1`, `2` or `3` pixels. The default width is 1 pixel. This
-- setting only affects the width of the cursor when the cursor style is set
-- to line caret mode, it does not affect the width for a block caret.
--- * `char_at` [table] (Read-only)
+-- @field char_at (table, Read-only)
-- Table of character bytes at positions in the document starting at zero.
--- * `code_page` [number]
+-- @field code_page (number)
-- The code page used to interpret the bytes of the document as characters.
-- The `_SCINTILLA.constants.SC_CP_UTF8` value can be used to enter Unicode
-- mode.
--- * `column` [table] (Read-only)
+-- @field column (table, Read-only)
-- Table of column numbers, taking tab widths into account, for positions
-- starting from zero.
--- * `control_char_symbol` [number]
+-- @field control_char_symbol (number)
-- The way control characters are displayed.
-- If less than `32`, keep the rounded rectangle as ASCII mnemonics.
-- Otherwise, use the given character byte. The default value is `0`.
--- * `current_pos` [number]
+-- @field current_pos (number)
-- The position of the caret.
-- When setting, the caret is not scrolled into view.
--- * `cursor` [number]
+-- @field cursor (number)
-- The cursor type.
--- * `_SCINTILLA.constants.SC_CURSORNORMAL` (-1)
--- The normal cursor is displayed.
--- * `_SCINTILLA.constants.SC_CURSORWAIT` (4)
--- The wait cursor is displayed when the mouse is over the view.
--- * `direct_function` [number] (Read-only)
+--
+-- * `_SCINTILLA.constants.SC_CURSORNORMAL` (-1)
+-- The normal cursor is displayed.
+-- * `_SCINTILLA.constants.SC_CURSORWAIT` (4)
+-- The wait cursor is displayed when the mouse is over the view.
+-- @field direct_function (number, Read-only)
-- A pointer to a function that processes messages for this view.
--- * `direct_pointer` [number] (Read-only)
+-- @field direct_pointer (number, Read-only)
-- A pointer value to use as the first argument when calling the function
-- returned by direct_function.
--- * `dirty` [bool]
+-- @field dirty (bool)
-- Flag indicating whether or not the buffer has been modified since it was
-- last saved.
--- * `eol_mode` [number]
+-- @field eol_mode (number)
-- The current end of line mode.
--- * `_SCINTILLA.constants.SC_EOL_CRLF` (0)
--- `CRLF`.
--- * `_SCINTILLA.constants.SC_EOL_CR` (1)
--- `CR`.
--- * `_SCINTILLA.constants.SC_EOL_LF` (2)
--- `LF`.
--- * `edge_colour` [number]
+--
+-- * `_SCINTILLA.constants.SC_EOL_CRLF` (0)
+-- `CRLF`.
+-- * `_SCINTILLA.constants.SC_EOL_CR` (1)
+-- `CR`.
+-- * `_SCINTILLA.constants.SC_EOL_LF` (2)
+-- `LF`.
+-- @field edge_colour (number)
-- The color used in edge indication in `0xBBGGRR` format.
--- * `edge_column` [number]
+-- @field edge_column (number)
-- The column number which text should be kept within.
--- * `edge_mode` [number]
+-- @field edge_mode (number)
-- The edge highlight mode.
--- * `_SCINTILLA.constants.EDGE_NONE` (0)
--- Long lines are not marked. This is the default state.
--- * `_SCINTILLA.constants.EDGE_LINE` (1)
--- A vertical line is drawn at the column number set by
--- `buffer.edge_column`.
--- * `_SCINTILLA.constants.EDGE_BACKGROUND` (2)
--- The background color of characters after the column limit is changed to
--- the color set by `buffer.edge_colour`.
--- * `encoding` [string or nil]
+--
+-- * `_SCINTILLA.constants.EDGE_NONE` (0)
+-- Long lines are not marked. This is the default state.
+-- * `_SCINTILLA.constants.EDGE_LINE` (1)
+-- A vertical line is drawn at the column number set by
+-- `buffer.edge_column`.
+-- * `_SCINTILLA.constants.EDGE_BACKGROUND` (2)
+-- The background color of characters after the column limit is changed to
+-- the color set by `buffer.edge_colour`.
+-- @field encoding (string or nil)
-- The encoding of the file on the hard disk.
-- It will be `nil` if the file is a binary file.
--- * `encoding_bom` [string]
+-- @field encoding_bom (string)
-- The byte-order mark of the file encoding (if any).
--- * `end_at_last_line` [bool]
+-- @field end_at_last_line (bool)
-- Whether the maximum scroll position has the last line at the bottom of the
-- view.
-- If `false`, allows scrolling one page below the last line. The default
-- value is `true`.
--- * `end_styled` [number] (Read-only)
+-- @field end_styled (number, Read-only)
-- The position of the last correctly styled character.
--- * `extra_ascent` [number]
+-- @field extra_ascent (number)
-- The extra ascent, the maximum that any style extends above the baseline,
-- added to each line.
--- * `extra_descent` [number]
+-- @field extra_descent (number)
-- The extra descent, the maximum that any style extends below the baseline,
-- added to each line.
--- * `filename` [string]
+-- @field filename (string)
-- The absolute path to the file associated with this buffer.
--- It is encoded in UTF-8. Use [`string.iconv()`][] for charset conversions.
--- * `first_visible_line` [number]
+-- It is encoded in UTF-8. Use [`string.iconv()`](string.html#iconv) for
+-- charset conversions.
+-- @field first_visible_line (number)
-- The display line at the top of the display.
--- * `focus` [bool]
+-- @field focus (bool)
-- The internal focus flag.
--- * `fold_expanded` [bool]
+-- @field fold_expanded (bool)
-- Expanded state of a header line.
--- * `fold_level` [table]
+-- @field fold_level (table)
-- Table of fold levels for lines starting from zero.
-- Fold levels encodes an integer level along with flags indicating whether
-- the line is a header and whether it is effectively white space.
--- * `_SCINTILLA.constants.SC_FOLDLEVELBASE` (0x400)
--- Initial fold level.
--- * `_SCINTILLA.constants.SC_FOLDLEVELWHITEFLAG` (0x1000)
--- Indicates that the line is blank.
--- * `_SCINTILLA.constants.SC_FOLDLEVELHEADERFLAG` (0x2000)
--- Indicates that the line is a header (fold point).
--- * `fold_parent` [table] (Read-only)
+--
+-- * `_SCINTILLA.constants.SC_FOLDLEVELBASE` (0x400)
+-- Initial fold level.
+-- * `_SCINTILLA.constants.SC_FOLDLEVELWHITEFLAG` (0x1000)
+-- Indicates that the line is blank.
+-- * `_SCINTILLA.constants.SC_FOLDLEVELHEADERFLAG` (0x2000)
+-- Indicates that the line is a header (fold point).
+-- @field fold_parent (table, Read-only)
-- Table of parent line numbers for child lines starting from zero.
-- `-1` means no line was found.
--- * `font_quality` [number] (Windows only)
+-- @field font_quality (number) (Windows only)
-- The quality level for text.
--- * `_SCINTILLA.constants.SC_EFF_QUALITY_DEFAULt` (0).
--- * `_SCINTILLA.constants.SC_EFF_QUALITY_NON_ANTIALIASED` (1).
--- * `_SCINTILLA.constants.SC_EFF_QUALITY_ANTIALIASED` (2).
--- * `_SCINTILLA.constants.SC_EFF_QUALITY_LCD_OPTIMIZED` (3).
--- * `h_scroll_bar` [bool]
+--
+-- * `_SCINTILLA.constants.SC_EFF_QUALITY_DEFAULt` (0).
+-- * `_SCINTILLA.constants.SC_EFF_QUALITY_NON_ANTIALIASED` (1).
+-- * `_SCINTILLA.constants.SC_EFF_QUALITY_ANTIALIASED` (2).
+-- * `_SCINTILLA.constants.SC_EFF_QUALITY_LCD_OPTIMIZED` (3).
+-- @field h_scroll_bar (bool)
-- Whether the horizontal scroll bar is visible.
-- Set to `false` to never see it and `true` to enable it again. The default
-- state is to display it when needed.
--- * `highlight_guide` [number]
+-- @field highlight_guide (number)
-- The highlighted indentation guide column.
-- Set to `0` to cancel this highlight.
--- * `hotspot_active_underline` [bool]
+-- @field hotspot_active_underline (bool)
-- Whether active hotspots are underlined.
--- * `hotspot_single_line` [bool]
+-- @field hotspot_single_line (bool)
-- Whether hotspots are limited to single line so hotspots on two lines do not
-- merge.
--- * `indent` [number]
+-- @field indent (number)
-- Ihe number of spaces used for one level of indentation.
-- For a width of `0`, the indent size is the same as the tab size.
--- * `indentation_guides` [number]
+-- @field indentation_guides (number)
-- Indentation guides appearance.
-- Indentation guides are dotted vertical lines that appear within indentation
-- white space every indent size columns.
--- * `_SCINTILLA.constants.SC_IV_NONE` (0)
--- No indentation guides are shown.
--- * `_SCINTILLA.constants.SC_IV_REAL` (1)
--- Indentation guides are shown inside real indentation white space.
--- * `_SCINTILLA.constants.SC_IV_LOOKFORWARD` (2)
--- Indentation guides are shown beyond the actual indentation up to the
--- level of the next non-empty line.
--- If the previous non-empty line was a fold header then indentation
--- guides are shown for one more level of indent than that line. This
--- setting is good for Python.
--- * `_SCINTILLA.constants.SC_IV_LOOKBOTH` (3)
--- Indentation guides are shown beyond the actual indentation up to the
--- level of the next non-empty line or previous non-empty line whichever
--- is the greater.
--- This setting is good for most languages.
--- * `indic_alpha` [table]
+--
+-- * `_SCINTILLA.constants.SC_IV_NONE` (0)
+-- No indentation guides are shown.
+-- * `_SCINTILLA.constants.SC_IV_REAL` (1)
+-- Indentation guides are shown inside real indentation white space.
+-- * `_SCINTILLA.constants.SC_IV_LOOKFORWARD` (2)
+-- Indentation guides are shown beyond the actual indentation up to the
+-- level of the next non-empty line.
+-- If the previous non-empty line was a fold header then indentation guides
+-- are shown for one more level of indent than that line. This setting is
+-- good for Python.
+-- * `_SCINTILLA.constants.SC_IV_LOOKBOTH` (3)
+-- Indentation guides are shown beyond the actual indentation up to the
+-- level of the next non-empty line or previous non-empty line whichever is
+-- the greater.
+-- This setting is good for most languages.
+-- @field indic_alpha (table)
-- Table of alpha transparency values ranging from `0` (transparent) to `255`
-- (opaque) or `256` (no alpha) for indicators from `0` to `31`.
-- Used for drawing the fill color of the `INDIC_ROUNDBOX` and
-- `INDIC_STRAIGHTBOX` rectangle.
--- * `indic_fore` [table]
+-- @field indic_fore (table)
-- Table of foreground colors in `0xBBGGRR` format for indicators from `0` to
-- `31`.
--- * `indic_outline_alpha` [table]
+-- @field indic_outline_alpha (table)
-- Table of alpha transparency values ranging from `0` (transparent) to `255`
-- (opaque) or `256` (no alpha) for indicators from `0` to `31`.
-- Used for drawing the outline color of the `INDIC_ROUNDBOX` and
-- `INDIC_STRAIGHTBOX` rectangle.
--- * `indic_style` [table]
+-- @field indic_style (table)
-- Table of styles for indicators from `0` to `31`.
--- * `_SCINTILLA.constants.INDIC_PLAIN` (0)
--- Underlined with a single, straight line.
--- * `_SCINTILLA.constants.INDIC_SQUIGGLE` (1)
--- A squiggly underline. Requires 3 pixels of descender space.
--- * `_SCINTILLA.constants.INDIC_TT` (2)
--- A line of small T shapes.
--- * `_SCINTILLA.constants.INDIC_DIAGONAL` (3)
--- Diagonal hatching.
--- * `_SCINTILLA.constants.INDIC_STRIKE` (4)
--- Strike out.
--- * `_SCINTILLA.constants.INDIC_HIDDEN` (5)
--- An indicator with no visual effect.
--- * `_SCINTILLA.constants.INDIC_BOX` (6)
--- A rectangle around the text.
--- * `_SCINTILLA.constants.INDIC_ROUNDBOX` (7)
--- A rectangle with rounded corners around the text using translucent
--- drawing with the interior usually more transparent than the border. Use
--- `buffer.indic_alpha` and `buffer.indic_outline_alpha` to control the
--- alpha transparency values. The default alpha values are `30` for fill
--- color and `50` for outline color.
--- * `_SCINTILLA.constants.INDIC_STRAIGHTBOX` (8)
--- A rectangle around the text using translucent drawing with the interior
--- usually more transparent than the border.
--- You can use `buffer.indic_alpha` and `buffer.indic_outline_alpha` to
--- control the alpha transparency values. The default alpha values are
--- `30` for fill color and `50` for outline color.
--- * `_SCINTILLA.constants.INDIC_DASH` (9)
--- A dashed underline.
--- * `_SCINTILLA.constants.INDIC_DOTS` (10)
--- A dotted underline.
--- * `_SCINTILLA.constants.INDIC_SQUIGGLELOW` (11)
--- Similar to `INDIC_SQUIGGLE` but only using 2 vertical pixels so will
--- fit under small fonts.
--- * `_SCINTILLA.constants.INDIC_DOTBOX` (12)
--- A dotted rectangle around the text using translucent drawing.
--- Translucency alternates between the alpha and outline alpha settings
--- with the top-left pixel using the alpha setting. `buffer.indic_alpha`
--- and `buffer.indic_outline_alpha` control the alpha transparency values.
--- The default values are `30` for alpha and `50` for outline alpha. To
--- avoid excessive memory allocation the maximum width of a dotted box is
--- 4000 pixels.
--- * Use `_SCINTILLA.next_indic_number()` for custom indicators.
--- * `indic_under` [table]
+--
+-- * `_SCINTILLA.constants.INDIC_PLAIN` (0)
+-- Underlined with a single, straight line.
+-- * `_SCINTILLA.constants.INDIC_SQUIGGLE` (1)
+-- A squiggly underline. Requires 3 pixels of descender space.
+-- * `_SCINTILLA.constants.INDIC_TT` (2)
+-- A line of small T shapes.
+-- * `_SCINTILLA.constants.INDIC_DIAGONAL` (3)
+-- Diagonal hatching.
+-- * `_SCINTILLA.constants.INDIC_STRIKE` (4)
+-- Strike out.
+-- * `_SCINTILLA.constants.INDIC_HIDDEN` (5)
+-- An indicator with no visual effect.
+-- * `_SCINTILLA.constants.INDIC_BOX` (6)
+-- A rectangle around the text.
+-- * `_SCINTILLA.constants.INDIC_ROUNDBOX` (7)
+-- A rectangle with rounded corners around the text using translucent
+-- drawing with the interior usually more transparent than the border. Use
+-- `buffer.indic_alpha` and `buffer.indic_outline_alpha` to control the
+-- alpha transparency values. The default alpha values are `30` for fill
+-- color and `50` for outline color.
+-- * `_SCINTILLA.constants.INDIC_STRAIGHTBOX` (8)
+-- A rectangle around the text using translucent drawing with the interior
+-- usually more transparent than the border.
+-- You can use `buffer.indic_alpha` and `buffer.indic_outline_alpha` to
+-- control the alpha transparency values. The default alpha values are `30`
+-- for fill color and `50` for outline color.
+-- * `_SCINTILLA.constants.INDIC_DASH` (9)
+-- A dashed underline.
+-- * `_SCINTILLA.constants.INDIC_DOTS` (10)
+-- A dotted underline.
+-- * `_SCINTILLA.constants.INDIC_SQUIGGLELOW` (11)
+-- Similar to `INDIC_SQUIGGLE` but only using 2 vertical pixels so will fit
+-- under small fonts.
+-- * `_SCINTILLA.constants.INDIC_DOTBOX` (12)
+-- A dotted rectangle around the text using translucent drawing.
+-- Translucency alternates between the alpha and outline alpha settings with
+-- the top-left pixel using the alpha setting. `buffer.indic_alpha` and
+-- `buffer.indic_outline_alpha` control the alpha transparency values.
+-- The default values are `30` for alpha and `50` for outline alpha. To
+-- avoid excessive memory allocation the maximum width of a dotted box is
+-- 4000 pixels.
+-- * Use `_SCINTILLA.next_indic_number()` for custom indicators.
+-- @field indic_under (table)
-- Table of booleans for drawing under text or over (default) for indicators
-- from `0` to `31`.
--- * `indicator_current` [number]
+-- @field indicator_current (number)
-- The indicator in the range of `0` to `31` used for
-- `buffer:indicator_fill_range()` and `buffer:indicator_clear_range()`.
--- * `indicator_value` [number]
+-- @field indicator_value (number)
-- The indicator value used for `buffer:indicator_fill_range()`.
-- Currently all values are drawn the same.
--- * `keys_unicode` [bool]
+-- @field keys_unicode (bool)
-- Interpret keyboard input as Unicode.
--- * `layout_cache` [number]
+-- @field layout_cache (number)
-- The degree of caching of layout information.
--- * `_SCINTILLA.constants.SC_CACHE_NONE` (0)
--- No lines are cached.
--- * `_SCINTILLA.constants.SC_CACHE_CARET` (1)
--- The line containing the text caret.
--- This is the default.
--- * `_SCINTILLA.constants.SC_CACHE_PAGE` (2)
--- Visible lines plus the line containing the caret.
--- * `_SCINTILLA.constants.SC_CACHE_DOCUMENT` (3)
--- All lines in the document.
--- * `length` [number] (Read-only)
+--
+-- * `_SCINTILLA.constants.SC_CACHE_NONE` (0)
+-- No lines are cached.
+-- * `_SCINTILLA.constants.SC_CACHE_CARET` (1)
+-- The line containing the text caret.
+-- This is the default.
+-- * `_SCINTILLA.constants.SC_CACHE_PAGE` (2)
+-- Visible lines plus the line containing the caret.
+-- * `_SCINTILLA.constants.SC_CACHE_DOCUMENT` (3)
+-- All lines in the document.
+-- @field length (number, Read-only)
-- The number of bytes in the document.
--- * `lexer` [number]
+-- @field lexer (number)
-- The lexing language of the document.
--- * `line_count` [number] (Read-only)
+-- @field line_count (number, Read-only)
-- The number of lines in the document.
-- There is always at least one.
--- * `line_end_position` [table] (Read-only)
+-- @field line_end_position (table, Read-only)
-- Table of positions after the last visible characters on a line for lines
-- starting from zero.
--- * `line_indent_position` [table] (Read-only)
+-- @field line_indent_position (table, Read-only)
-- Table of positions before the first non indentation character on a line for
-- lines starting from zero.
--- * `line_indentation` [table]
+-- @field line_indentation (table)
-- Table of line indentation amounts for lines starting from zero.
-- The indentation is measured in character columns, which correspond to the
-- width of space characters.
--- * `line_state` [table]
+-- @field line_state (table)
-- Table of extra styling information for lines starting from zero.
-- As well as the 8 bits of lexical state stored for each character there is
-- also an integer stored for each line. This can be used for longer lived
-- parse states.
--- * `line_visible` [bool] (Read-only)
+-- @field line_visible (bool, Read-only)
-- Is a line visible?
--- * `lines_on_screen` [number] (Read-only)
+-- @field lines_on_screen (number, Read-only)
-- The number of lines completely visible.
--- * `lines_visible` [bool] (Read-only)
+-- @field lines_visible (bool, Read-only)
-- Are all lines visible?
--- * `main_selection` [number]
+-- @field main_selection (number)
-- The main selection.
-- The main selection may be displayed in different colors or with a
-- differently styled caret. Only an already existing selection can be made
-- main.
--- * `margin_cursor_n` [table]
+-- @field margin_cursor_n (table)
-- Table of cursors shown for margins from zero to four.
-- A reversed arrow cursor is normally shown over all margins.
--- * `_SCINTILLA.constants.SC_CURSORARROW`
--- Normal arrow.
--- * `_SCINTILLA.constants.SC_CURSORREVERSEARROW`
--- Reversed arrow.
--- * `margin_left` [number]
+--
+-- * `_SCINTILLA.constants.SC_CURSORARROW`
+-- Normal arrow.
+-- * `_SCINTILLA.constants.SC_CURSORREVERSEARROW`
+-- Reversed arrow.
+-- @field margin_left (number)
-- The size in pixels of the left margin.
-- The default is to one pixel.
--- * `margin_mask_n` [table]
+-- @field margin_mask_n (table)
-- Table of marker masks for margins from zero to four.
-- A mask determines which markers are displayed in a margin.
--- * `margin_options` [number]
+-- @field margin_options (number)
-- A bit mask of margin options.
--- * `_SCINTILLA.constants.SC_MARGINOPTION_NONE` (0)
--- None (default).
--- * `_SCINTILLA.constants.SC_MARGINOPTION_SUBLINESELECT` (1)
--- Controls how wrapped lines are selected when clicking on margin in
--- front of them.
--- If set, only sub line of wrapped line is selected, otherwise whole
--- wrapped line is selected.
--- * `margin_right` [number]
+--
+-- * `_SCINTILLA.constants.SC_MARGINOPTION_NONE` (0)
+-- None (default).
+-- * `_SCINTILLA.constants.SC_MARGINOPTION_SUBLINESELECT` (1)
+-- Controls how wrapped lines are selected when clicking on margin in front
+-- of them.
+-- If set, only sub line of wrapped line is selected, otherwise whole
+-- wrapped line is selected.
+-- @field margin_right (number)
-- The size in pixels of the right margin.
-- The default is to one pixel.
--- * `margin_sensitive_n` [table]
+-- @field margin_sensitive_n (table)
-- Table of mouse click sensitivity booleans for margins from zero to four.
-- A click in a sensitive margin emits a `margin_click` event. By default, all
-- margins are insensitive.
--- * `margin_style` [table]
+-- @field margin_style (table)
-- Table of style numbers for text margin lines starting from zero.
--- * `margin_style_offset` [number]
+-- @field margin_style_offset (number)
-- The start of the range of style numbers used for margin text.
-- Margin styles may be completely separated from standard text styles by
-- setting a style offset. For example, setting this to `256` would allow the
-- margin styles to be numbered from `256` upto `511` so they do not overlap
-- styles set by lexers. Each style number set with `buffer.margin_style` has
-- the offset added before looking up the style.
--- * `margin_type_n` [table]
+-- @field margin_type_n (table)
-- Table of margin types for margins from zero to four.
--- * `_SCINTILLA.constants.SC_MARGIN_SYMBOL` (0)
--- A symbol margin.
--- * `_SCINTILLA.constants.SC_MARGIN_NUMBER` (1)
--- A line number margin.
--- * `_SCINTILLA.constants.SC_MARGIN_BACK` (2)
--- A symbol margin that sets its background color to match the default
--- text background color.
--- * `_SCINTILLA.constants.SC_MARGIN_FORE` (3)
--- A symbol margin that sets its background color to match the default
--- text foreground color.
--- * `_SCINTILLA.constants.SC_MARGIN_TEXT` (4)
--- A text margin.
--- * `_SCINTILLA.constants.SC_MARGIN_RTEXT` (5)
--- A right justified text margin.
--- * `margin_width_n` [table]
+--
+-- * `_SCINTILLA.constants.SC_MARGIN_SYMBOL` (0)
+-- A symbol margin.
+-- * `_SCINTILLA.constants.SC_MARGIN_NUMBER` (1)
+-- A line number margin.
+-- * `_SCINTILLA.constants.SC_MARGIN_BACK` (2)
+-- A symbol margin that sets its background color to match the default
+-- text background color.
+-- * `_SCINTILLA.constants.SC_MARGIN_FORE` (3)
+-- A symbol margin that sets its background color to match the default
+-- text foreground color.
+-- * `_SCINTILLA.constants.SC_MARGIN_TEXT` (4)
+-- A text margin.
+-- * `_SCINTILLA.constants.SC_MARGIN_RTEXT` (5)
+-- A right justified text margin.
+-- @field margin_width_n (table)
-- Table of margin widths expressed in pixes for margins from zero to four.
--- * `max_line_state` [number] (Read-only)
+-- @field max_line_state (number, Read-only)
-- The last line number that has line state.
--- * `modify` [bool]
+-- @field modify (bool)
-- Whether the document is different from when it was last saved.
--- * `mouse_down_captures` [bool]
+-- @field mouse_down_captures (bool)
-- Whether the mouse is captured when its button is pressed.
--- * `mouse_dwell_time` [number]
+-- @field mouse_dwell_time (number)
-- The time the mouse must sit still to generate a mouse dwell event.
-- If set to `_SCINTILLA.constants.SC_TIME_FOREVER`, the default, no dwell
-- events are generated.
--- * `multi_paste` [bool]
+-- @field multi_paste (bool)
-- The effect of pasting when there are multiple selections.
--- * `_SCINTILLA.constants.SC_MULTIPASTE_ONCE` (0)
--- Pasted text can go into just the main selection (default).
--- * `_SCINTILLA.constants.SC_MULTIPASTE_EACH` (1)
--- Pasted text can go into each selection.
--- * `multiple_selection` [bool]
+--
+-- * `_SCINTILLA.constants.SC_MULTIPASTE_ONCE` (0)
+-- Pasted text can go into just the main selection (default).
+-- * `_SCINTILLA.constants.SC_MULTIPASTE_EACH` (1)
+-- Pasted text can go into each selection.
+-- @field multiple_selection (bool)
-- Whether multiple selections can be made.
-- When multiple selection is disabled, it is not possible to select multiple
-- ranges by holding down the Ctrl key while dragging with the mouse.
--- * `overtype` [bool]
+-- @field overtype (bool)
-- Overtype mode.
--- * `position_cache` [number]
+-- @field position_cache (number)
-- The number of entries in the position cache.
-- The position cache stores position information for short runs of text so
-- that their layout can be determined more quickly if the run recurs.
--- * `print_colour_mode` [number]
+-- @field print_colour_mode (number)
-- The print color mode.
--- * `_SCINTILLA.constants.SC_PRINT_NORMAL` (0)
--- Print using the current screen colors.
--- This is the default.
--- * `_SCINTILLA.constants.SC_PRINT_INVERTLIGHT` (1)
--- If you use a dark screen background this saves ink by inverting the
--- light value of all colors and printing on a white background.
--- * `_SCINTILLA.constants.SC_PRINT_BLACKONWHITE` (2)
--- Print all text as black on a white background.
--- * `_SCINTILLA.constants.SC_PRINT_COLOURONWHITE` (3)
--- Everything prints in its own color on a white background.
--- * `_SCINTILLA.constants.SC_PRINT_COLOURONWHITEDEFAULTBG` (4)
--- Everything prints in its own color on a white background except that
--- line numbers use their own background color.
--- * `print_magnification` [number]
+--
+-- * `_SCINTILLA.constants.SC_PRINT_NORMAL` (0)
+-- Print using the current screen colors.
+-- This is the default.
+-- * `_SCINTILLA.constants.SC_PRINT_INVERTLIGHT` (1)
+-- If you use a dark screen background this saves ink by inverting the light
+-- value of all colors and printing on a white background.
+-- * `_SCINTILLA.constants.SC_PRINT_BLACKONWHITE` (2)
+-- Print all text as black on a white background.
+-- * `_SCINTILLA.constants.SC_PRINT_COLOURONWHITE` (3)
+-- Everything prints in its own color on a white background.
+-- * `_SCINTILLA.constants.SC_PRINT_COLOURONWHITEDEFAULTBG` (4)
+-- Everything prints in its own color on a white background except that line
+-- numbers use their own background color.
+-- @field print_magnification (number)
-- The print magnification added to the point size of each style for printing.
--- * `print_wrap_mode` [number]
+-- @field print_wrap_mode (number)
-- Printing line wrap mode.
--- * `_SCINTILLA.constants.SC_WRAP_NONE` (0)
--- Each line of text generates one line of output and the line is
--- truncated if it is too long to fit into the print area.
--- * `_SCINTILLA.constants.SC_WRAP_WORD` (1)
--- Wraps printed output so that all characters fit into the print
--- rectangle.
--- Tries to wrap only between words as indicated by white space or style
--- changes although if a word is longer than a line, it will be wrapped
--- before the line end. This is the default.
--- * `_SCINTILLA.constants.SC_WRAP_CHAR` (2).
--- * `property` [table] (Write-only)
+--
+-- * `_SCINTILLA.constants.SC_WRAP_NONE` (0)
+-- Each line of text generates one line of output and the line is truncated
+-- if it is too long to fit into the print area.
+-- * `_SCINTILLA.constants.SC_WRAP_WORD` (1)
+-- Wraps printed output so that all characters fit into the print rectangle.
+-- Tries to wrap only between words as indicated by white space or style
+-- changes although if a word is longer than a line, it will be wrapped
+-- before the line end. This is the default.
+-- * `_SCINTILLA.constants.SC_WRAP_CHAR` (2).
+-- @field property (table, Write-only)
-- Table of keyword:value string pairs used by a lexer for some optional
-- features.
--- * `property_int` [table] (Read-only)
+-- @field property_int (table, Read-only)
-- Interprets `buffer.property[keyword]` as an integer if found or returns
-- `0`.
--- * `read_only` [bool]
+-- @field read_only (bool)
-- Read-only mode.
--- * `rectangular_selection_anchor` [number]
+-- @field rectangular_selection_anchor (number)
-- The position of the anchor of the rectangular selection.
--- * `rectangular_selection_anchor_virtual_space` [number]
+-- @field rectangular_selection_anchor_virtual_space (number)
-- The amount of virtual space for the anchor of the rectangular selection.
--- * `rectangular_selection_caret` [number]
+-- @field rectangular_selection_caret (number)
-- The position of the caret of the rectangular selection.
--- * `rectangular_selection_caret_virtual_space` [number]
+-- @field rectangular_selection_caret_virtual_space (number)
-- The amount of virtual space for the caret of the rectangular selection.
--- * `rectangular_selection_modifier` [number]
+-- @field rectangular_selection_modifier (number)
-- The modifier key used to indicate that a rectangular selection should be
-- created when combined with a mouse drag.
--- * `_SCINTILLA.constants.SCMOD_CTRL` (2)
--- Control key (default).
--- * `_SCINTILLA.constants.SCMOD_ALT` (4)
--- Alt key.
--- * `_SCINTILLA.constants.SCMOD_SUPER` (8)
--- Left Windows key on a Windows keyboard or the Command key on a Mac.
--- * `rgba_image_height` [number]
+--
+-- * `_SCINTILLA.constants.SCMOD_CTRL` (2)
+-- Control key (default).
+-- * `_SCINTILLA.constants.SCMOD_ALT` (4)
+-- Alt key.
+-- * `_SCINTILLA.constants.SCMOD_SUPER` (8)
+-- Left Windows key on a Windows keyboard or the Command key on a Mac.
+-- @field rgba_image_height (number)
-- The height for future RGBA image data.
--- * `rgba_image_width` [number]
+-- @field rgba_image_width (number)
-- The width for future RGBA image data.
--- * `scroll_width` [number]
+-- @field scroll_width (number)
-- The document width assumed for scrolling.
-- For performance, the view does not measure the display width of the
-- document to determine the properties of the horizontal scroll bar. Instead,
-- an assumed width is used. The default value is `2000`. To ensure the width
-- of the currently visible lines can be scrolled use
-- `buffer.scroll_width_tracking`.
--- * `scroll_width_tracking` [bool]
+-- @field scroll_width_tracking (bool)
-- Whether the maximum width line displayed is used to set scroll width.
--- * `search_flags` [number]
+-- @field search_flags (number)
-- The search flags used by `buffer:search_in_target()`.
--- * `_SCINTILLA.constants.SCFIND_WHOLEWORD` (2)
--- A match only occurs with text that matches the case of the search
--- string.
--- * `_SCINTILLA.constants.SCFIND_MATCHCASE` (4)
--- A match only occurs if the characters before and after are not word
--- characters.
--- * `_SCINTILLA.constants.SCFIND_WORDSTART` (0x00100000)
--- A match only occurs if the character before is not a word character.
--- * `_SCINTILLA.constants.SCFIND_REGEXP` (0x00200000)
--- The search string should be interpreted as a regular expression.
--- * `_SCINTILLA.constants.SCFIND_POSIX` (0x00400000)
--- Treat regular expression in a more POSIX compatible manner by
--- interpreting bare `(` and `)` for tagged sections rather than `\(` and
--- `\)`.
--- * `sel_alpha` [number]
+--
+-- * `_SCINTILLA.constants.SCFIND_WHOLEWORD` (2)
+-- A match only occurs with text that matches the case of the search string.
+-- * `_SCINTILLA.constants.SCFIND_MATCHCASE` (4)
+-- A match only occurs if the characters before and after are not word
+-- characters.
+-- * `_SCINTILLA.constants.SCFIND_WORDSTART` (0x00100000)
+-- A match only occurs if the character before is not a word character.
+-- * `_SCINTILLA.constants.SCFIND_REGEXP` (0x00200000)
+-- The search string should be interpreted as a regular expression.
+-- * `_SCINTILLA.constants.SCFIND_POSIX` (0x00400000)
+-- Treat regular expression in a more POSIX compatible manner by
+-- interpreting bare `(` and `)` for tagged sections rather than `\(` and
+-- `\)`.
+-- @field sel_alpha (number)
-- The alpha of the selection, between `0` (transparent) and `255` (opaque),
-- or `256` for no alpha.
--- * `sel_eol_filled` [bool]
+-- @field sel_eol_filled (bool)
-- The selection end of line fill.
-- The selection can be drawn up to the right hand border by setting this
-- property.
--- * `selection_end` [number]
+-- @field selection_end (number)
-- The position that ends the selection - this becomes the current position.
-- This does not make the caret visible.
--- * `selection_is_rectangle` [bool] (Read-only)
+-- @field selection_is_rectangle (bool, Read-only)
-- Is the selection rectangular?
-- The alternative is the more common stream selection.
--- * `selection_mode` [number]
+-- @field selection_mode (number)
-- The mode of the current selection.
--- * `_SCINTILLA.constants.SC_SEL_STREAM` (0)
--- Stream.
--- * `_SCINTILLA.constants.SC_SEL_RECTANGLE` (1)
--- Rectangle.
--- * `_SCINTILLA.constants.SC_SEL_LINES` (2)
--- Lines.
--- * `_SCINTILLA.constants.SC_SEL_THIN` (3)
--- Thin rectangular.
--- * `selection_n_anchor` [table]
+--
+-- * `_SCINTILLA.constants.SC_SEL_STREAM` (0)
+-- Stream.
+-- * `_SCINTILLA.constants.SC_SEL_RECTANGLE` (1)
+-- Rectangle.
+-- * `_SCINTILLA.constants.SC_SEL_LINES` (2)
+-- Lines.
+-- * `_SCINTILLA.constants.SC_SEL_THIN` (3)
+-- Thin rectangular.
+-- @field selection_n_anchor (table)
-- Table of anchor positions for existing selections starting from zero, the
-- main selection.
--- * `selection_n_anchor_virtual_space` [table]
+-- @field selection_n_anchor_virtual_space (table)
-- Table of the amount of virtual space for anchors for existing selections
-- starting from zero, the main selection.
--- * `selection_n_caret` [table]
+-- @field selection_n_caret (table)
-- Table of caret positions for existing selections starting from zero, the
-- main selection.
--- * `selection_n_caret_virtual_space` [table]
+-- @field selection_n_caret_virtual_space (table)
-- Table of the amount of virtual space for carets for existing selections
-- starting from zero, the main selection.
--- * `selection_n_end` [table]
+-- @field selection_n_end (table)
-- Table of positions that end selections for existing selections starting
-- from zero, the main selection.
--- * `selection_n_start` [table]
+-- @field selection_n_start (table)
-- Table of positions that start selections for existing selections starting
-- from zero, the main selection.
--- * `selection_start` [number]
+-- @field selection_start (number)
-- The position that starts the selection - this becomes the anchor.
-- This does not make the caret visible.
--- * `selections` [number] (Read-only)
+-- @field selections (number, Read-only)
-- The number of selections currently active.
--- * `status` [number]
+-- @field status (number)
-- The error status.
--- * `_SCINTILLA.constants.SC_STATUS_OK` (0)
--- No failures.
--- * `_SCINTILLA.constants.SC_STATUS_FAILURE` (1)
--- Generic failure.
--- * `_SCINTILLA.constants.SC_STATUS_BADALLOC` (2)
--- Memory is exhausted.
--- * `style_at` [table] (Read-only)
+--
+-- * `_SCINTILLA.constants.SC_STATUS_OK` (0)
+-- No failures.
+-- * `_SCINTILLA.constants.SC_STATUS_FAILURE` (1)
+-- Generic failure.
+-- * `_SCINTILLA.constants.SC_STATUS_BADALLOC` (2)
+-- Memory is exhausted.
+-- @field style_at (table, Read-only)
-- Table of style bytes at positions in the document starting at zero.
--- * `style_back` [table]
+-- @field style_back (table)
-- Table of background colors in `0xBBGGRR` format for styles from `0` to
-- `255`.
--- * `style_bits` [number]
+-- @field style_bits (number)
-- The number of bits in style bytes used to hold the lexical state.
--- * `style_bits_needed` [number] (Read-only)
+-- @field style_bits_needed (number, Read-only)
-- The number of bits the current lexer needs for styling.
--- * `style_bold` [table]
+-- @field style_bold (table)
-- Table of booleans for bold styles from `0` to `255`.
--- * `style_case` [table]
+-- @field style_case (table)
-- Table of cases for styles from `0` to `255`.
--- * `_SCINTILLA.constants.SC_CASE_MIXED` (0)
--- Normal, mixed case.
--- * `_SCINTILLA.constants.SC_CASE_UPPER` (1)
--- Upper case.
--- * `_SCINTILLA.constants.SC_CASE_LOWER` (2)
--- Lower case.
--- * `style_changeable` [table]
+--
+-- * `_SCINTILLA.constants.SC_CASE_MIXED` (0)
+-- Normal, mixed case.
+-- * `_SCINTILLA.constants.SC_CASE_UPPER` (1)
+-- Upper case.
+-- * `_SCINTILLA.constants.SC_CASE_LOWER` (2)
+-- Lower case.
+-- @field style_changeable (table)
-- Table of booleans for changeable styles from `0` to `255`.
-- The default setting is `true`.
--- * `style_character_set` [table]
+-- @field style_character_set (table)
-- Table of character sets for styles from `0` to `255`.
--- * `style_eol_filled` [table]
+-- @field style_eol_filled (table)
-- Table of booleans for end of line filled styles from `0` to `255`.
--- * `style_font` [table]
+-- @field style_font (table)
-- Table of font faces for styles from `0` to `255`.
--- * `style_fore` [table]
+-- @field style_fore (table)
-- Table of foreground colors in `0xBBGGRR` format for styles from `0` to
-- `255`.
--- * `style_hot_spot` [table]
+-- @field style_hot_spot (table)
-- Table of boolean hotspot styles from `0` to `255`.
--- * `style_italic` [table]
+-- @field style_italic (table)
-- Table of booleans for italic styles from `0` to `255`.
--- * `style_size` [table]
+-- @field style_size (table)
-- Table of font sizes for styles from `0` to `255`.
-- Font size is a whole number of points.
--- * `style_size_fractional` [table]
+-- @field style_size_fractional (table)
-- Table of sizes of characters for styles from `0` to `255`.
-- Size is in hundreths of a point and multiplied by 100 internally. For
-- example, a text size of 9.4 points is set with 940.
--- * `style_underline` [table]
+-- @field style_underline (table)
-- Table of booleans for underlined styles from `0` to `255`.
--- * `style_visible` [table]
+-- @field style_visible (table)
-- Table of booleans for visible styles from `0` to `255`.
--- * `style_weight` [table]
+-- @field style_weight (table)
-- Table of character weights for styles from `0` to `255`.
-- The weight or boldness of a font can be set with a number between 1 and 999
-- with 1 being very light and 999 very heavy. While any value can be used,
-- fonts often only support between 2 and 4 weights with three weights being
-- common enough to use symbolic names:
--- * `_SCINTILLA.constants.SC_WEIGHT_NORMAL` (400)
--- Normal.
--- * `_SCINTILLA.constants.SC_WEIGHT_SEMIBOLD` (600)
--- Semi-bold.
--- * `_SCINTILLA.constants.SC_WEIGHT_BOLD` (700)
--- Bold.
--- * `tab_indents` [bool]
+--
+-- * `_SCINTILLA.constants.SC_WEIGHT_NORMAL` (400)
+-- Normal.
+-- * `_SCINTILLA.constants.SC_WEIGHT_SEMIBOLD` (600)
+-- Semi-bold.
+-- * `_SCINTILLA.constants.SC_WEIGHT_BOLD` (700)
+-- Bold.
+-- @field tab_indents (bool)
-- Whether a tab pressed when caret is within indentation indents.
--- * `tab_width` [number]
+-- @field tab_width (number)
-- The visible size of a tab as a multiple of the width of a space character.
-- The default tab width is 8 characters.
--- * `target_end` [number]
+-- @field target_end (number)
-- The position that ends the target which is used for updating the document
-- without affecting the scroll position.
-- The target is also set by a successful `buffer:search_in_target()`.
--- * `target_start` [number]
+-- @field target_start (number)
-- The position that starts the target which is used for updating the document
-- without affecting the scroll position.
-- The target is also set by a successful `buffer:search_in_target()`.
--- * `text_length` [number] (Read-only)
+-- @field text_length (number, Read-only)
-- The number of characters in the document.
--- * `two_phase_draw` [bool]
+-- @field two_phase_draw (bool)
-- Two phase drawing mode.
-- When `true`, drawing is performed in two phases, first the background and
-- then the foreground. This avoids chopping off characters that overlap the
-- next run. The default is for drawing to be two phase.
--- * `undo_collection` [bool]
+-- @field undo_collection (bool)
-- Whether to collect undo information.
-- When stopping collection, use `buffer:empty_undo_buffer()` to avoid the
-- undo buffer being unsynchronized with the data in the buffer.
--- * `use_tabs` [bool]
+-- @field use_tabs (bool)
-- Whether tabs will be used in indentation.
-- The default is `true`. `false` will only use space characters.
--- * `v_scroll_bar` [bool]
+-- @field v_scroll_bar (bool)
-- Whether the vertical scroll bar is visible.
-- Set to `false` to never see it and `true` to enable it again. The default
-- state is to display it when required.
--- * `view_eol` [bool]
+-- @field view_eol (bool)
-- Whether the end of line characters are visible.
-- Normally, the end of line characters are hidden.
--- * `view_ws` [number]
+-- @field view_ws (number)
-- The visibility of white space characters.
--- * `_SCINTILLA.constants.SCWS_INVISIBLE` (0)
--- The normal display mode with white space displayed as an empty
--- background color.
--- * `_SCINTILLA.constants.SCWS_VISIBLEALWAYS` (1)
--- White space characters are drawn as dots and arrows.
--- * `_SCINTILLA.constants.SCWS_VISIBLEAFTERINDENT` (2)
--- White space used for indentation is displayed normally but after the
--- first visible character, it is shown as dots and arrows.
--- * `virtual_space_options` [number]
+--
+-- * `_SCINTILLA.constants.SCWS_INVISIBLE` (0)
+-- The normal display mode with white space displayed as an empty background
+-- color.
+-- * `_SCINTILLA.constants.SCWS_VISIBLEALWAYS` (1)
+-- White space characters are drawn as dots and arrows.
+-- * `_SCINTILLA.constants.SCWS_VISIBLEAFTERINDENT` (2)
+-- White space used for indentation is displayed normally but after the
+-- first visible character, it is shown as dots and arrows.
+-- @field virtual_space_options (number)
-- Virtual space options.
--- * `_SCINTILLA.constants.SCVS_NONE` (0)
--- Disables all use of virtual space (default).
--- * `_SCINTILLA.constants.SCVS_RECTANGULARSELECTION` (1)
--- Enabled only for rectangular selections.
--- * `_SCINTILLA.constants.SCVS_USERACCESSIBLE` (2)
--- Enabled.
--- * `whitespace_chars` [string] (Write-only)
+--
+-- * `_SCINTILLA.constants.SCVS_NONE` (0)
+-- Disables all use of virtual space (default).
+-- * `_SCINTILLA.constants.SCVS_RECTANGULARSELECTION` (1)
+-- Enabled only for rectangular selections.
+-- * `_SCINTILLA.constants.SCVS_USERACCESSIBLE` (2)
+-- Enabled.
+-- @field whitespace_chars (string, Write-only)
-- The set of characters making up whitespace for when moving or selecting by
-- word.
-- Use after setting `buffer.word_chars`.
--- * `wrap_indent_mode` [number]
+-- @field wrap_indent_mode (number)
-- How wrapped sublines are placed.
-- Default is fixed.
--- * `_SCINTILLA.constants.SC_WRAP_INDENT_FIXED` (0)
--- Wrapped sublines aligned to left of window plus amount set by
--- `buffer.wrap_start_indent`.
--- * `_SCINTILLA.constants.SC_WRAP_INDENT_SAME` (1)
--- Wrapped sublines are aligned to first subline indent.
--- * `_SCINTILLA.constants.SC_WRAP_INDENT_INDENT` (2)
--- Wrapped sublines are aligned to first subline indent plus one more
--- level of indentation.
--- * `whitespace_size` [number]
+--
+-- * `_SCINTILLA.constants.SC_WRAP_INDENT_FIXED` (0)
+-- Wrapped sublines aligned to left of window plus amount set by
+-- `buffer.wrap_start_indent`.
+-- * `_SCINTILLA.constants.SC_WRAP_INDENT_SAME` (1)
+-- Wrapped sublines are aligned to first subline indent.
+-- * `_SCINTILLA.constants.SC_WRAP_INDENT_INDENT` (2)
+-- Wrapped sublines are aligned to first subline indent plus one more level
+-- of indentation.
+-- @field whitespace_size (number)
-- The size of the dots used to mark space characters.
--- * `word_chars` [string]
+-- @field word_chars (string)
-- The set of characters making up words when moving or selecting by word.
--- * `wrap_mode` [number]
+-- @field wrap_mode (number)
-- Text word wrap mode.
--- * `_SCINTILLA.constants.SC_WRAP_NONE` (0)
--- Disable line wrapping.
--- * `_SCINTILLA.constants.SC_WRAP_WORD` (1)
--- Enable wrapping on word boundaries.
--- * `_SCINTILLA.constants.SC_WRAP_CHAR` (2)
--- Enable wrapping between any characters.
--- * `wrap_start_indent` [number]
+--
+-- * `_SCINTILLA.constants.SC_WRAP_NONE` (0)
+-- Disable line wrapping.
+-- * `_SCINTILLA.constants.SC_WRAP_WORD` (1)
+-- Enable wrapping on word boundaries.
+-- * `_SCINTILLA.constants.SC_WRAP_CHAR` (2)
+-- Enable wrapping between any characters.
+-- @field wrap_start_indent (number)
-- The start indent for wrapped lines.
--- * `wrap_visual_flags` [number]
+-- @field wrap_visual_flags (number)
-- The display mode of visual flags for wrapped lines.
--- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_NONE` (0)
--- No visual flags.
--- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_END` (1)
--- Visual flag at end of subline of a wrapped line.
--- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_START` (2)
--- Visual flag at begin of subline of a wrapped line.
--- Subline is indented by at least 1 to make room for the flag.
--- * `wrap_visual_flags_location` [number]
+--
+-- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_NONE` (0)
+-- No visual flags.
+-- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_END` (1)
+-- Visual flag at end of subline of a wrapped line.
+-- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_START` (2)
+-- Visual flag at begin of subline of a wrapped line.
+-- Subline is indented by at least 1 to make room for the flag.
+-- @field wrap_visual_flags_location (number)
-- The location of visual flags for wrapped lines.
--- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_DEFAULT` (0)
--- Visual flags drawn near border.
--- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_END_BY_TEXT` (1)
--- Visual flag at end of subline drawn near text.
--- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_START_BY_TEXT` (2)
--- Visual flag at beginning of subline drawn near text.
--- * `x_offset` [number]
+--
+-- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_DEFAULT` (0)
+-- Visual flags drawn near border.
+-- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_END_BY_TEXT` (1)
+-- Visual flag at end of subline drawn near text.
+-- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_START_BY_TEXT` (2)
+-- Visual flag at beginning of subline drawn near text.
+-- @field x_offset (number)
-- The horizontal scroll position.
-- A value of `0` is the normal position with the first text column visible at
-- the left of the view.
--- * `zoom` [number]
+-- @field zoom (number)
-- The number of points added to the size of all fonts.
-- It may be positive to magnify or negative to reduce.
---
--- [`string.iconv()`]: string.html#iconv
+module('buffer')
---
-- Add a selection from anchor to caret as the main selection.
diff --git a/core/.view.luadoc b/core/.view.luadoc
index cff00421..bea8efb8 100644
--- a/core/.view.luadoc
+++ b/core/.view.luadoc
@@ -5,13 +5,9 @@
---
-- The currently focused view.
-- It also represents the structure of any view table in `_G._VIEWS`.
-module('view')
-
--- Markdown:
--- ## Fields
---
--- * `size` [number]
+-- @field size (number)
-- The position of the split resizer (if this view is part of a split view).
+module('view')
---
-- The buffer this view contains. (Read-only)
diff --git a/core/args.lua b/core/args.lua
index 08b74ffd..7d2c6e4b 100644
--- a/core/args.lua
+++ b/core/args.lua
@@ -5,13 +5,12 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Processes command line arguments for Textadept.
-module('args')]]
-
--- Markdown:
+--
-- ## Arg Events
--
-- + `'arg_none'`
-- Called when no command line arguments are passed to Textadept on init.
+module('args')]]
local arg = arg
diff --git a/core/events.lua b/core/events.lua
index d8772b20..fabd52e5 100644
--- a/core/events.lua
+++ b/core/events.lua
@@ -5,9 +5,7 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Textadept's core event structure and handlers.
-module('events')]]
-
--- Markdown:
+--
-- ## Overview
--
-- Textadept is very event-driven. Most of its functionality comes through event
@@ -248,6 +246,7 @@ module('events')]]
--
-- events.connect('my_event', my_event_handler)
-- events.emit('my_event', 'my message') -- prints 'my message' to a view
+module('events')]]
---
-- A table of event names and a table of functions connected to them.
diff --git a/core/file_io.lua b/core/file_io.lua
index 8f067d68..41566664 100644
--- a/core/file_io.lua
+++ b/core/file_io.lua
@@ -3,9 +3,7 @@
--[[ This comment is for LuaDoc.
---
-- Extends Lua's io package to provide file input/output routines for Textadept.
-module('io')]]
-
--- Markdown:
+--
-- ## Working with UTF-8
--
-- If your filesystem does not use UTF-8 encoded filenames, conversions to and
@@ -44,6 +42,7 @@ module('io')]]
-- Called when a file is saved under a different filename.
-- Arguments:
-- * `filename`: The filename encoded in UTF-8.
+module('io')]]
-- Events.
local events, events_connect = events, events.connect
@@ -289,7 +288,7 @@ end
-- If any buffer is dirty, the user is prompted to continue. No buffers are
-- saved automatically. They must be saved manually.
-- @usage io.close_all()
--- @return true if user did not cancel.
+-- @return `true` if user did not cancel.
-- @name close_all
function io.close_all()
while #_BUFFERS > 1 do
@@ -345,6 +344,7 @@ end)
---
-- Prompts the user to open a recently opened file.
+-- @see recent_files
-- @name open_recent_file
function io.open_recent_file()
local i = gui.filteredlist(_L['Open'], _L['File'], io.recent_files, true)
diff --git a/core/gui.lua b/core/gui.lua
index 56bc1eb7..f97ace83 100644
--- a/core/gui.lua
+++ b/core/gui.lua
@@ -4,21 +4,17 @@ local gui = gui
--[[ This comment is for LuaDoc.
--- The core gui table.
-module('gui')]]
-
--- Markdown:
--- ## Fields
---
--- * `title` [string]
+-- @field title (string)
-- The title of the Textadept window.
--- * `context_menu`
+-- @field context_menu
-- A GTK menu defining the editor's context menu.
--- * `clipboard_text` [string] (Read-only)
+-- @field clipboard_text (string, Read-only)
-- The text on the clipboard.
--- * `statusbar_text` [string]
+-- @field statusbar_text (string)
-- The text displayed by the statusbar.
--- * `docstatusbar_text` [string] (Write-only)
+-- @field docstatusbar_text (string, Write-only)
-- The text displayed by the doc statusbar.
+module('gui')]]
local _L = _L
diff --git a/core/init.lua b/core/init.lua
index 0f83c85f..f3228906 100644
--- a/core/init.lua
+++ b/core/init.lua
@@ -21,39 +21,34 @@ gui.set_theme()
_M = {} -- modules table
--[[ This comment is for LuaDoc.
---- Extends Lua's _G table to provide extra functions and fields.
-module('_G')]]
-
--- Markdown:
--- ## Fields
---
--- * `_HOME` [string]
+---
+-- Extends Lua's _G table to provide extra functions and fields.
+-- @field _HOME (string)
-- Path to the directory containing Textadept.
--- * `_LEXERPATH` [string]
--- Paths to lexers, formatted like [`package.path`][].
--- * `_RELEASE` [string]
+-- @field _LEXERPATH (string)
+-- Paths to lexers, formatted like
+-- [`package.path`](http://lua.org/manual/5.2/manual.html#pdf-package.path).
+-- @field _RELEASE (string)
-- The Textadept release version.
--- * `_USERHOME` [string]
+-- @field _USERHOME (string)
-- Path to the user's `~/.textadept/`.
--- * `_CHARSET` [string]
+-- @field _CHARSET (string)
-- The character set encoding of the filesystem.
--- This is used in [File I/O][].
--- * `RESETTING` [bool]
+-- This is used in [File I/O](io.html).
+-- @field RESETTING (bool)
-- If [`reset()`](#reset) has been called, this flag is `true` while the Lua
-- state is being re-initialized.
--- * `WIN32` [bool]
+-- @field WIN32 (bool)
-- If Textadept is running on Windows, this flag is `true`.
--- * `OSX` [bool]
+-- @field OSX (bool)
-- If Textadept is running on Mac OSX, this flag is `true`.
---
--- [`package.path`]: http://www.lua.org/manual/5.2/manual.html#pdf-package.path
--- [File I/O]: io.html
+module('_G')]]
---
-- Calls `dofile()` on the given filename in the user's Textadept directory.
-- Errors are printed to the Textadept message buffer.
-- @param filename The name of the file (not path).
--- @return true if successful; false otherwise.
+-- @return `true` if successful; `false` otherwise.
-- @see dofile
function user_dofile(filename)
if not lfs.attributes(_USERHOME..'/'..filename) then return false end
@@ -116,6 +111,7 @@ local quit
-- that need to differentiate between startup and reset can utilize this
-- variable.
-- @class function
+-- @see RESETTING
-- @name reset
local reset
diff --git a/core/keys.lua b/core/keys.lua
index 72144246..08181c49 100644
--- a/core/keys.lua
+++ b/core/keys.lua
@@ -5,9 +5,7 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Manages key commands in Textadept.
-module('keys')]]
-
--- Markdown:
+--
-- ## Overview
--
-- Key commands are defined in the global table `keys`. Each key-value pair in
@@ -51,35 +49,9 @@ module('keys')]]
--
-- Key commands can be chained like in Emacs using keychain sequences. By
-- default, the `Esc` key (`Apple+Esc` on Mac OSX) cancels the current keychain,
--- but it can be redefined by setting the `keys.CLEAR` field. Naturally, the
+-- but it can be redefined by re-defining [`CLEAR`](#CLEAR). Naturally, the
-- clear sequence cannot be chained.
--
--- ## Settings
---
--- + `CTRL` [string]
--- The string representing the Control key.
--- The default value is 'c'.
--- + `ALT` [string]
--- The string representing the Alt/option key.
--- The default value is 'a'.
--- + `META` [string]
--- The string representing the Command key on Mac OSX.
--- The default value is 'm'.
--- + `SHIFT` [string]
--- The string representing the Shift key.
--- The default value is 's'.
--- + `ADD` [string]
--- The string representing used to join together a sequence of Control, Alt,
--- Meta, or Shift modifier keys.
--- The default value is ''.
--- * `CLEAR` [string]
--- The string representing the key sequence that clears the current keychain.
--- The default value is 'esc' (Escape).
--- * `LANGUAGE_MODULE_PREFIX` [string]
--- The starting key command of the keychain reserved for language-specific
--- modules.
--- The default value is Ctrl/Cmd+L.
---
-- ## Precedence
--
-- When searching for a key command to execute in the `keys` table, key commands
@@ -118,9 +90,18 @@ module('keys')]]
--
-- ## Problems
--
--- All Lua functions must be defined BEFORE they are reference in key commands.
--- Therefore, any module containing key commands should be loaded after all
--- other modules, whose functions are being referenced, have been loaded.
+-- All Lua functions must be defined **before** they are reference in key
+-- commands. Therefore, any module containing key commands should be loaded
+-- after all other modules, whose functions are being referenced, have been
+-- loaded.
+-- @field CLEAR (string)
+-- The string representing the key sequence that clears the current keychain.
+-- The default value is `'esc'` (Escape).
+-- @field LANGUAGE_MODULE_PREFIX (string)
+-- The starting key command of the keychain reserved for language-specific
+-- modules.
+-- The default value is Ctrl/Cmd+L.
+module('keys')]]
local ADD = ''
local CTRL, ALT, META, SHIFT = 'c'..ADD, 'a'..ADD, 'm'..ADD, 's'..ADD
diff --git a/core/locale.lua b/core/locale.lua
index 92aea70e..a2a0d9d4 100644
--- a/core/locale.lua
+++ b/core/locale.lua
@@ -5,13 +5,9 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Table of all messages used by Textadept for localization.
-module('_L')]]
-
--- Markdown:
--- ## Settings
---
--- * `_NIL` [string]
+-- @field _NIL (string)
-- String returned when no localization for a given message exists.
+module('_L')]]
M._NIL = 'No Localization'
diff --git a/doc/markdowndoc.lua b/doc/markdowndoc.lua
index 6c181a7b..359c73cb 100644
--- a/doc/markdowndoc.lua
+++ b/doc/markdowndoc.lua
@@ -11,6 +11,7 @@ local table_concat = table.concat
local M = {}
local NAVFILE = '%s* [%s](%s)\n'
+local FIELD = '\n### `%s` %s\n\n'
local FUNCTION = '\n### `%s` (%s)\n\n'
--local FUNCTION = '### `%s` (%s)\n\n'
local DESCRIPTION = '%s\n\n'
@@ -21,7 +22,7 @@ local RETURN = '* %s\n'
local SEE = '* [`%s`](#%s)\n'
local TABLE = '\n### `%s`\n\n'
--local TABLE = '### `%s`\n\n'
-local FIELD = '* `%s`: %s\n'
+local TFIELD = '* `%s`: %s\n'
local HTML = [[
@@ -170,30 +171,24 @@ function M.start(doc)
-- Write the header and description.
f:write('# ', name, '\n\n')
f:write(module.description, '\n\n')
+ f:write('- - -\n\n')
- -- Extract any Markdown doc comments and insert them.
- -- Markdown doc comments must immediately proceed a 'module' declaration
- -- (excluding blank lines), start with '-- Markdown:', and end on a blank or
- -- uncommented line.
- if filename then
- local module_declaration, markdown = false, false
- local module_file = io_open(filename, 'rb')
- for line in module_file:lines() do
- if not module_declaration and line:find('^module') then
- module_declaration = true
- elseif module_declaration and not markdown and line ~= '' then
- if line ~= '-- Markdown:' then break end
- markdown = true
- elseif markdown then
- line = line:match('^%-%-%s?(.*)$')
- if not line then break end
- f:write(line, '\n')
+ -- Write fields.
+ if module.doc[1].class == 'module' then
+ local fields = module.doc[1].field
+ if fields and #fields > 0 then
+ table.sort(fields)
+ f:write('## Fields\n\n')
+ f:write('- - -\n\n')
+ for _, field in ipairs(fields) do
+ local type, description = fields[field]:match('^(%b())%s*(.+)$')
+ f:write(string_format(FIELD, field, field, type or ''))
+ write_description(f, description or fields[field])
+ f:write('- - -\n\n')
end
+ f:write('\n')
end
- module_file:close()
end
- f:write('\n')
- f:write('- - -\n\n')
-- Write functions.
local funcs = module.functions
@@ -223,7 +218,7 @@ function M.start(doc)
local tbl = tables[tname]
f:write(string_format(TABLE, tbl.name, tbl.name))
write_description(f, tbl.description)
- write_hashmap(f, 'Fields', FIELD, tbl.field)
+ write_hashmap(f, 'Fields', TFIELD, tbl.field)
write_list(f, 'Usage', USAGE, tbl.usage)
write_list(f, 'See also', SEE, tbl.see)
f:write('- - -\n\n')
@@ -238,6 +233,7 @@ function M.start(doc)
template.toc, template.main = p:read('*all'):match('^(.-\n\n)(.+)$')
p:close()
template.toc = template.toc:gsub('()', '%1%2') -- strip params
+ :gsub('([^<]+)
', '%1') -- sans serif
f = io_open(M.options.output_dir..'/api/'..name..'.html', 'wb')
local html = HTML:gsub('%%%(([^)]+)%)', template)
f:write(html)
diff --git a/modules/cpp/init.lua b/modules/cpp/init.lua
index 1d26bf31..a63ad0e8 100644
--- a/modules/cpp/init.lua
+++ b/modules/cpp/init.lua
@@ -8,9 +8,7 @@ local M = {}
-- It provides utilities for editing C/C++ code.
-- User tags are loaded from `_USERHOME/modules/cpp/tags` and user apis are
-- loaded from `_USERHOME/modules/cpp/api`.
-module('_M.cpp')]]
-
--- Markdown:
+--
-- ## Key Commands
--
-- + `Ctrl+L, M` (`⌘L, M` on Mac OSX)
@@ -23,11 +21,9 @@ module('_M.cpp')]]
-- and functions.
-- + `Shift+Return` (`⇧↩`)
-- Add ';' to line end and insert newline.
---
--- ## Fields
---
--- * `sense`
+-- @field sense
-- The C/C++ [Adeptsense](_M.textadept.adeptsense.html).
+module('_M.cpp')]]
local m_editing, m_run = _M.textadept.editing, _M.textadept.run
-- Comment string tables use lexer names.
diff --git a/modules/lua/adeptsensedoc.lua b/modules/lua/adeptsensedoc.lua
index 89379ea6..11d89396 100644
--- a/modules/lua/adeptsensedoc.lua
+++ b/modules/lua/adeptsensedoc.lua
@@ -40,16 +40,35 @@ local function write_apidoc(file, m, b)
-- Block documentation for the function or field.
local doc = {}
-- Function arguments or field type.
+ local class = b.class
local header = name
- if b.class == 'function' then
+ if class == 'function' then
header = header..(b.param and '('..table.concat(b.param, ', ')..')' or '')
+ elseif class == 'field' and b.description:find('^%s*%b()') then
+ header = header..' '..b.description:match('^%s*(%b())')
+ elseif class == 'module' or class == 'table' then
+ header = header..' ('..class..')'
end
- if b.modifier and b.modifier ~= '' then header = header..' '..b.modifier end
doc[#doc + 1] = header
-- Function or field description.
- doc[#doc + 1] = b.description:gsub('\\n', '\\\\n')
+ local description = b.description
+ if class == 'module' then
+ -- Modules usually have additional Markdown documentation so just grab the
+ -- documentation before a Markdown header.
+ description = description:match('^(.-)[\r\n]+#') or description
+ elseif class == 'field' then
+ -- Type information is already in the header; discard it in the description.
+ description = description:match('^%s*%b()[\t ]*[\r\n]*(.+)$') or description
+ -- Strip consistent leading whitespace.
+ local indent
+ indent, description = description:match('^(%s*)(.*)$')
+ if indent ~= '' then description = description:gsub('\n'..indent, '\n') end
+ end
+ doc[#doc + 1] = description:gsub('\\n', '\\\\n')
+ :gsub('%[([^%]]+)%]%b[]', '%1') -- Markdown links
+ :gsub('%[([^%]]+)%]%b()', '%1') -- Markdown links
-- Function parameters (@param).
- if b.class == 'function' and b.param then
+ if class == 'function' and b.param then
for _, p in ipairs(b.param) do
if b.param[p] and #b.param[p] > 0 then
doc[#doc + 1] = '@param '..p..' '..b.param[p]:gsub('\\n', '\\\\n')
@@ -57,7 +76,7 @@ local function write_apidoc(file, m, b)
end
end
-- Function usage (@usage).
- if b.class == 'function' and b.usage then
+ if class == 'function' and b.usage then
if type(b.usage) == 'string' then
doc[#doc + 1] = '@usage '..b.usage
else
@@ -65,7 +84,7 @@ local function write_apidoc(file, m, b)
end
end
-- Function returns (@return).
- if b.class == 'function' and b.ret then
+ if class == 'function' and b.ret then
if type(b.ret) == 'string' then
doc[#doc + 1] = '@return '..b.ret
else
@@ -92,10 +111,10 @@ function M.start(doc)
-- local profiler = require 'profiler'
-- profiler.start()
- local modules = doc.modules
+ local modules, files = doc.modules, doc.files
-- Convert module functions in the Lua luadoc into LuaDoc modules.
- local lua_luadoc = doc.files['../modules/lua/lua.luadoc']
+ local lua_luadoc = files['../modules/lua/lua.luadoc']
if lua_luadoc then
for _, f in ipairs(lua_luadoc.functions) do
f = lua_luadoc.functions[f]
@@ -113,45 +132,50 @@ function M.start(doc)
end
end
+ -- Create a map of file names to doc objects so their module names can be
+ -- determined.
+ local filedocs = {}
+ for _, name in ipairs(files) do filedocs[name] = files[name].doc end
+
-- Parse out module fields (-- * `FIELD`: doc) and insert them into the
-- module's LuaDoc.
- for _, file in ipairs(doc.files) do
+ for _, file in ipairs(files) do
local module_name, field, docs
+ local module_doc = filedocs[file][1]
+ if module_doc and module_doc.class == 'module' then
+ module_name = module_doc.name
+ modules[module_name].fields = module_doc.field
+ elseif module_doc then
+ print('[WARN] '..file..' has no module declaration')
+ end
-- Adds the field to its module's LuaDoc.
local function add_field()
local doc = table.concat(docs, '\n')
- doc = doc:gsub('%[([^%]]+)%]%b[]', '%1'):gsub('%[([^%]]+)%]%b()', '%1')
field.description = doc
local m = modules[field.module]
if not m then
local name = field.module
- _G.print("Module '"..name.."' does not exist. Faking...")
+ print('[INFO] module `'..name..'\' does not exist. Faking...')
m = { name = name, functions = {}, fake = true }
modules[#modules + 1] = name
modules[name] = m
end
if not m.fields then m.fields = {} end
m.fields[#m.fields + 1] = field.name
- m.fields[field.name] = field
+ m.fields[field.name] = field.description
field = nil
end
local f = io.open(file, 'rb')
for line in f:lines() do
- if not field and line:find('^module%(') then
- -- Get the module's name to add the parsed fields to.
- module_name = line:match("^module%('([^']+)'")
- elseif line:find('^%-%- %* `') then
+ if line:find('^%-%- %* `') then
-- New field; if another field was parsed right before this one, add
-- the former field to its module's LuaDoc.
if field then add_field() end
field, docs = {}, {}
- local name, doc = line:match('^%-%- %* `([^`]+)`([^\r\n]*)')
+ local name, doc = line:match('^%-%- %* `([^`]+)`%s*([^\r\n]*)')
field.module = name:match('^_G%.(.-)%.[^%.]+$') or module_name or
name:match('^[^%.]+')
field.name = name:match('[^%.]+$')
- if doc ~= '' then
- field.modifier, doc = doc:match('^%s*([^:]*):?%s*(.*)$')
- end
if doc ~= '' then docs[#docs + 1] = doc end
elseif field and line:find('^%-%-%s+[^\r\n]+') then
docs[#docs + 1] = line:match('^%-%-%s%s%s(%s*[^\r\n]+)')
@@ -180,7 +204,7 @@ function M.start(doc)
-- Tag the module as a global table.
write_tag(ctags, module, 't', '')
end
- m.modifier = '[module]'
+ m.class = 'module'
write_apidoc(apidoc, { name = '_G' }, m)
end
-- Tag the functions and write the apidoc.
@@ -195,32 +219,38 @@ function M.start(doc)
local table = m.tables[t]
local module = module -- define locally so any modification stays local
if t:find('^_G%.') then module, t = t:match('^_G%.(.-)%.?([^%.]+)$') end
- if not module then _G.print(table.name) end
+ if not module then print(table.name) end
local ext_fields = module == '_G' and '' or 'class:'..module
write_tag(ctags, t, 't', ext_fields)
- table.modifier = '[table]'
write_apidoc(apidoc, m, table)
-- Tag the fields of the tables.
t = module..'.'..t
for _, f in ipairs(table.field or {}) do
write_tag(ctags, f, 'F', 'class:'..t)
- write_apidoc(apidoc, { name = t },
- { name = f, description = table.field[f] })
+ write_apidoc(apidoc, { name = t }, {
+ name = f,
+ description = table.field[f],
+ class = 'table'
+ })
end
end
-- Tag the fields.
for _, f in ipairs(m.fields or {}) do
local ext_fields = module == '_G' and '' or 'class:'..module
write_tag(ctags, f, 'F', ext_fields)
- write_apidoc(apidoc, m, m.fields[f])
+ write_apidoc(apidoc, { name = f }, {
+ name = module..'.'..f,
+ description = m.fields[f],
+ class = 'field'
+ })
end
end
table.sort(ctags)
table.sort(apidoc)
- local f = io.open(M.options.output_dir..'/tags', 'w')
+ local f = io.open(M.options.output_dir..'/tags', 'wb')
f:write(table.concat(ctags, '\n'))
f:close()
- f = io.open(M.options.output_dir..'api', 'w')
+ f = io.open(M.options.output_dir..'api', 'wb')
f:write(table.concat(apidoc, '\n'))
f:close()
diff --git a/modules/lua/init.lua b/modules/lua/init.lua
index 235a7e8c..173398ac 100644
--- a/modules/lua/init.lua
+++ b/modules/lua/init.lua
@@ -8,9 +8,7 @@ local M = {}
-- It provides utilities for editing Lua code.
-- User tags are loaded from `_USERHOME/modules/lua/tags` and user apis are
-- loaded from `_USERHOME/modules/lua/api`.
-module('_M.lua')]]
-
--- Markdown:
+--
-- ## Key Commands
--
-- + `Ctrl+L, M` (`⌘L, M` on Mac OSX)
@@ -25,11 +23,9 @@ module('_M.lua')]]
-- + `:`
-- When to the right of a known symbol, show an autocompletion list of
-- functions only.
---
--- ## Fields
---
--- * `sense`
+-- @field sense
-- The Lua [Adeptsense](_M.textadept.adeptsense.html).
+module('_M.lua')]]
local m_editing, m_run = _M.textadept.editing, _M.textadept.run
-- Comment string tables use lexer names.
diff --git a/modules/lua/lua.luadoc b/modules/lua/lua.luadoc
index 22551dfb..a288c6c9 100644
--- a/modules/lua/lua.luadoc
+++ b/modules/lua/lua.luadoc
@@ -59,7 +59,7 @@ function dofile([filename]) end
-- message.
function error(message [, level]) end
--- * `_G._G`
+-- * `_G._G` (table)
-- A global variable (not a function) that holds the global environment
-- (see §2.2). Lua itself does not use this variable; changing its value does
-- not affect any environment, nor vice-versa.
@@ -235,7 +235,7 @@ function tostring(v) end
-- "`table`", "`function`", "`thread`", and "`userdata`".
function type(v) end
--- * `_G._VERSION` [string]
+-- * `_G._VERSION` (string)
-- A global variable (not a function) that holds a string containing the
-- current interpreter version. The current contents of this variable is
-- "`Lua 5.2`".
@@ -322,7 +322,7 @@ function coroutine.yield(···) end
-- any loader for the module, then `require` raises an error.
function require(modname) end
--- * `package.config`
+-- * `package.config` (string)
-- A string describing some compile-time configurations for packages. This
-- string is a sequence of lines:
-- The first line is the directory separator string. Default is '`\`' for
@@ -336,14 +336,14 @@ function require(modname) end
-- The fifth line is a mark to ignore all text before it when building the
-- `luaopen_` function name. Default is '`-`'.
--- * `package.cpath`
+-- * `package.cpath` (string)
-- The path used by `require` to search for a C loader.
-- Lua initializes the C path `package.cpath` in the same way it initializes
-- the Lua path `package.path`, using the environment variable `LUA_CPATH_5_2`
-- or the environment variable `LUA_CPATH` or a default path defined in
-- `luaconf.h`.
--- * `package.loaded`
+-- * `package.loaded` (table)
-- A table used by `require` to control which modules are already loaded. When
-- you require a module `modname` and `package.loaded[modname]` is not false,
-- `require` simply returns the value stored there.
@@ -371,7 +371,7 @@ function require(modname) end
-- systems that support the `dlfcn` standard).
function package.loadlib(libname, funcname) end
--- * `package.path`
+-- * `package.path` (string)
-- The path used by `require` to search for a Lua loader.
-- At start-up, Lua initializes this variable with the value of the
-- environment variable `LUA_PATH_5_2` or the environment variable `LUA_PATH`
@@ -379,12 +379,12 @@ function package.loadlib(libname, funcname) end
-- variables are not defined. Any "`;;`" in the value of the environment
-- variable is replaced by the default path.
--- * `package.preload`
+-- * `package.preload` (table)
-- A table to store loaders for specific modules (see `require`).
-- This variable is only a reference to the real table; assignments to this
-- variable do not change the table used by `require`.
--- * `package.searchers`
+-- * `package.searchers` (table)
-- A table used by `require` to control how to load modules.
-- Each entry in this table is a *searcher function*. When looking for a
-- module, `require` calls each of these searchers in ascending order, with
@@ -725,7 +725,7 @@ function math.fmod(x, y) end
-- absolute value of `m` is in the range *[0.5, 1)* (or zero when `x` is zero).
function math.frexp(x) end
--- * `math.huge`
+-- * `math.huge` (number)
-- The value `HUGE_VAL`, a value larger than or equal to any other numerical
-- value.
@@ -751,7 +751,7 @@ function math.min(x, ···) end
-- `x`.
function math.modf(x) end
--- * `math.pi`
+-- * `math.pi` (number)
-- The value of 'π'.
---
@@ -963,11 +963,11 @@ function io.popen(prog [, mode]) end
-- Equivalent to `io.input():read(···)`.
function io.read(···) end
--- * `io.stderr`
+-- * `io.stderr` (file)
-- Standard error.
--- * `io.stdin`
+-- * `io.stdin` (file)
-- Standard in.
--- * `io.stdout`
+-- * `io.stdout` (file)
-- Standard out.
---
diff --git a/modules/textadept/adeptsense.lua b/modules/textadept/adeptsense.lua
index b1004fd2..7e3d7449 100644
--- a/modules/textadept/adeptsense.lua
+++ b/modules/textadept/adeptsense.lua
@@ -5,9 +5,7 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Language autocompletion support for the textadept module.
-module('_M.textadept.adeptsense')]]
-
--- Markdown:
+--
-- ## Overview
--
-- Adeptsense is a form of autocompletion for programming. It has the means to
@@ -142,7 +140,7 @@ module('_M.textadept.adeptsense')]]
-- in your shell. Since Adeptsense only cares about classes, functions, and
-- fields, you need to let it know which kind of tag is which. Unfortunately,
-- Lua support in Ctags is not good at all. Instead, Textadept has a utility
--- (`scripts/adeptsensedoc.lua`) to generate a fake set of tags that is more
+-- (`modules/lua/adeptsensedoc.lua`) to generate a fake set of tags that is more
-- useful. Functions are tagged `'f'` and should be recognized as such; table
-- keys are tagged `'t'` and should be recognized as fields; module fields,
-- `'F'`, should be fields; and modules, `'m'`, should be classes:
@@ -201,7 +199,7 @@ module('_M.textadept.adeptsense')]]
-- characters for an Adeptsense is sufficient for most static and some dynamic
-- languages. The rest of this document is devoted to more complex techniques.
--
--- ### Overriding Adeptsense Functions
+-- ### Fine-Tuning
--
-- Sometimes Adeptsense's default behavior is not sufficient. Maybe the
-- `type_declarations` and `type_assignments` tables used by the
@@ -343,22 +341,16 @@ module('_M.textadept.adeptsense')]]
-- [`load_ctags()`](#load_ctags) and [`api_files`](#api_files) respectively.
--
-- [LuaDoc]: http://keplerproject.github.com/luadoc/
---
--- ### Other Adeptsense Settings
---
--- * `always_show_globals` [bool]
+-- @field always_show_globals (bool)
-- Include globals in the list of completions offered.
-- Globals are classes, functions, and fields that do not belong to another
-- class. They are contained in `completions['']`. The default value is
-- `true`.
-
---
--- ## Settings
---
--- * `FUNCTIONS` [string]
+-- @field FUNCTIONS (string)
-- XPM image for Adeptsense functions.
--- * `FIELDS` [string]
+-- @field FIELDS (string)
-- XPM image for Adeptsense fields.
+module('_M.textadept.adeptsense')]]
local senses = {}
diff --git a/modules/textadept/bookmarks.lua b/modules/textadept/bookmarks.lua
index 33fcf0e9..4219da58 100644
--- a/modules/textadept/bookmarks.lua
+++ b/modules/textadept/bookmarks.lua
@@ -5,13 +5,9 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Bookmarks for the textadept module.
-module('_M.textadept.bookmarks')]]
-
--- Markdown:
--- ## Settings
---
--- * `MARK_BOOKMARK_COLOR` [number]
+-- @field MARK_BOOKMARK_COLOR (number)
-- The color used for a bookmarked line in `0xBBGGRR` format.
+module('_M.textadept.bookmarks')]]
M.MARK_BOOKMARK_COLOR = 0xB3661A
diff --git a/modules/textadept/command_entry.lua b/modules/textadept/command_entry.lua
index 5483ffa9..0ae836c4 100644
--- a/modules/textadept/command_entry.lua
+++ b/modules/textadept/command_entry.lua
@@ -4,13 +4,9 @@
--[[ This comment is for LuaDoc.
---
-- Textadept's Command entry.
-module('gui.command_entry')]]
-
--- Markdown:
--- ## Fields
---
--- * `entry_text` [string]
+-- @field entry_text (string)
-- The text in the entry.
+module('gui.command_entry')]]
-- Environment for abbreviated commands.
-- @class table
diff --git a/modules/textadept/editing.lua b/modules/textadept/editing.lua
index 9093a150..6dfea6b7 100644
--- a/modules/textadept/editing.lua
+++ b/modules/textadept/editing.lua
@@ -5,34 +5,30 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Editing commands for the textadept module.
-module('_M.textadept.editing')]]
-
--- Markdown:
--- ## Settings
---
--- * `AUTOPAIR` [bool]
+-- @field AUTOPAIR (bool)
-- Opening `(`, `[`, `[`, `"`, or `'` characters are automatically closed.
-- The default value is `true`.
--- * `HIGHLIGHT_BRACES` [bool]
--- Highlight matching `()[]{}<>` characters.
+-- @field HIGHLIGHT_BRACES (bool)
+-- Highlight matching `()[]{}` characters.
-- The default value is `true`.
--- * `AUTOINDENT` [bool]
+-- @field AUTOINDENT (bool)
-- Match the indentation level of the previous line when pressing the Enter
-- key.
-- The default value is `true`.
--- * `STRIP_WHITESPACE_ON_SAVE` [bool]
+-- @field STRIP_WHITESPACE_ON_SAVE (bool)
-- Strip trailing whitespace on file save.
-- The default value is `true`.
--- * `MARK_HIGHLIGHT_BACK` [number]
+-- @field MARK_HIGHLIGHT_BACK (number)
-- The background color used for a line containing a highlighted word in
-- `0xBBGGRR` format.
--- * `INDIC_HIGHLIGHT_BACK` [number]
+-- @field INDIC_HIGHLIGHT_BACK (number)
-- The color used for an indicator for a highlighted word in `0xBBGGRR`
-- format.
--- * `INDIC_HIGHLIGHT_ALPHA` [number]
+-- @field INDIC_HIGHLIGHT_ALPHA (number)
-- The alpha transparency value between `0` (transparent) and `255` (opaque)
-- used for an indicator for a highlighted word.
-- The default value is `100`.
+module('_M.textadept.editing')]]
M.AUTOPAIR = true
M.HIGHLIGHT_BRACES = true
@@ -44,7 +40,7 @@ M.INDIC_HIGHLIGHT_ALPHA = 100
---
-- Comment strings for various lexer languages.
--- Used for the `block_comment()` function. Keys are lexer language names and
+-- Used by the `block_comment()` function. Keys are lexer language names and
-- values are the line comment delimiters for the language. This table is
-- typically populated by language-specific modules.
-- @class table
@@ -61,6 +57,7 @@ M.comment_string = {}
-- @class table
-- @name char_matches
-- @usage _M.textadept.editing.char_matches.hypertext = { ..., [60] = '>' }
+-- @see AUTOPAIR
M.char_matches = { [40] = ')', [91] = ']', [123] = '}', [39] = "'", [34] = '"' }
---
@@ -71,6 +68,7 @@ M.char_matches = { [40] = ')', [91] = ']', [123] = '}', [39] = "'", [34] = '"' }
-- @class table
-- @name braces
-- @usage _M.textadept.editing.braces.hypertext = { ..., [60] = 1, [62] = 1 }
+-- @see HIGHLIGHT_BRACES
M.braces = { [40] = 1, [41] = 1, [91] = 1, [93] = 1, [123] = 1, [125] = 1 }
-- The current call tip.
@@ -232,8 +230,10 @@ end
---
-- Block comments or uncomments code with a given comment string.
+-- If none is specified, uses the `comment_string` table.
-- @param comment The comment string inserted or removed from the beginning of
-- each line in the selection.
+-- @see comment_string
-- @name block_comment
function M.block_comment(comment)
local buffer = buffer
@@ -281,8 +281,9 @@ end
---
-- Prepares the buffer for saving to a file.
--- Strips trailing whitespace off of every line, ensures an ending newline, and
--- converts non-consistent EOLs.
+-- Strips trailing whitespace off of every line if `STRIP_WHITESPACE_ON_SAVE` is
+-- `true`, ensures an ending newline, and converts non-consistent EOLs.
+-- @see STRIP_WHITESPACE_ON_SAVE
-- @name prepare_for_save
function M.prepare_for_save()
if not M.STRIP_WHITESPACE_ON_SAVE then return end
@@ -386,7 +387,7 @@ end
---
-- Selects the current word under the caret.
-- @name select_word
-function M.select_word(action)
+function M.select_word()
local buffer = buffer
buffer:set_sel(buffer:word_start_position(buffer.current_pos, true),
buffer:word_end_position(buffer.current_pos, true))
diff --git a/modules/textadept/filter_through.lua b/modules/textadept/filter_through.lua
index 3c43a131..0e6a0fc0 100644
--- a/modules/textadept/filter_through.lua
+++ b/modules/textadept/filter_through.lua
@@ -14,13 +14,16 @@ local filter_through_active = false
---
-- Prompts for a Linux, Mac OSX, or Windows shell command to filter text
-- through.
--- The standard input (stdin) for shell commands is determined as follows: (1)
--- If text is selected and spans multiple lines, all text on the lines
+-- The standard input (stdin) for shell commands is determined as follows:
+--
+-- 1. If text is selected and spans multiple lines, all text on the lines
-- containing the selection is used. However, if the end of the selection is at
-- the beginning of a line, only the EOL (end of line) characters from the
--- previous line are included as input. The rest of the line is excluded. (2) If
--- text is selected and spans a single line, only the selected text is used. (3)
--- If no text is selected, the entire buffer is used.
+-- previous line are included as input. The rest of the line is excluded.
+-- 2. If text is selected and spans a single line, only the selected text is
+-- used.
+-- 3. If no text is selected, the entire buffer is used.
+--
-- The input text is replaced with the standard output (stdout) of the command.
-- @name filter_through
function M.filter_through()
diff --git a/modules/textadept/find.lua b/modules/textadept/find.lua
index 8e6ef20f..62fbc5fe 100644
--- a/modules/textadept/find.lua
+++ b/modules/textadept/find.lua
@@ -5,53 +5,49 @@ local find = gui.find
--[[ This comment is for LuaDoc.
---
-- Textadept's integrated find/replace dialog.
-module('gui.find')]]
-
--- Markdown:
--- ## Fields
---
--- * `find_entry_text` [string]
+-- @field find_entry_text (string)
-- The text in the find entry.
--- * `replace_entry_text` [string]
+-- @field replace_entry_text (string)
-- The text in the replace entry.
--- * `match_case` [bool]
+-- @field match_case (bool)
-- Searches are case-sensitive.
--- * `whole_word` [bool]
+-- @field whole_word (bool)
-- Only whole-word matches are allowed in searches.
--- * `lua` [bool]
+-- @field lua (bool)
-- The search text is interpreted as a Lua pattern.
--- * `in_files` [bool]
+-- @field in_files (bool)
-- Search for the text in a list of files.
--- * `find_label_text` [string] (Write-only)
+-- @field find_label_text (string, Write-only)
-- The text of the 'Find' label.
-- This is primarily used for localization.
--- * `replace_label_text` [string] (Write-only)
+-- @field replace_label_text (string, Write-only)
-- The text of the 'Replace' label.
-- This is primarily used for localization.
--- * `find_next_button_text` [string] (Write-only)
+-- @field find_next_button_text (string, Write-only)
-- The text of the 'Find Next' button.
-- This is primarily used for localization.
--- * `find_prev_button_text` [string] (Write-only)
+-- @field find_prev_button_text (string, Write-only)
-- The text of the 'Find Prev' button.
-- This is primarily used for localization.
--- * `replace_button_text` [string] (Write-only)
+-- @field replace_button_text (string, Write-only)
-- The text of the 'Replace' button.
-- This is primarily used for localization.
--- * `replace_all_button_text` [string] (Write-only)
+-- @field replace_all_button_text (string, Write-only)
-- The text of the 'Replace All' button.
-- This is primarily used for localization.
--- * `match_case_label_text` [string] (Write-only)
+-- @field match_case_label_text (string, Write-only)
-- The text of the 'Match case' label.
-- This is primarily used for localization.
--- * `whole_word_label_text` [string] (Write-only)
+-- @field whole_word_label_text (string, Write-only)
-- The text of the 'Whole word' label.
-- This is primarily used for localization.
--- * `lua_pattern_label_text` [string] (Write-only)
+-- @field lua_pattern_label_text (string, Write-only)
-- The text of the 'Lua pattern' label.
-- This is primarily used for localization.
--- * `in_files_label_text` [string] (Write-only)
+-- @field in_files_label_text (string, Write-only)
-- The text of the 'In files' label.
-- This is primarily used for localization.
+module('gui.find')]]
local _L = _L
find.find_label_text = _L['Find:']
diff --git a/modules/textadept/keys.lua b/modules/textadept/keys.lua
index 33ceb8e8..f2e8bf73 100644
--- a/modules/textadept/keys.lua
+++ b/modules/textadept/keys.lua
@@ -6,7 +6,7 @@ local M = {}
---
-- Defines key commands for Textadept.
-- This set of key commands is pretty standard among other text editors.
--- This module, should be `require`ed last, but before `_M.textadept.menu`.
+-- This module, should be `require`d last, but before `_M.textadept.menu`.
module('_M.textadept.keys')]]
-- Utility functions.
diff --git a/modules/textadept/menu.lua b/modules/textadept/menu.lua
index 967521a9..29a1a85a 100644
--- a/modules/textadept/menu.lua
+++ b/modules/textadept/menu.lua
@@ -6,7 +6,7 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Provides dynamic menus for Textadept.
--- This module should be `require`ed last, after `_M.textadept.keys` since it
+-- This module should be `require`d last, after `_M.textadept.keys` since it
-- looks up defined key commands to show them in menus.
module('_M.textadept.menu')]]
@@ -279,6 +279,7 @@ end
-- for setting a menu accelerator. If the menu text is `'separator'`, a menu
-- separator is created and no action table is required.
-- @see keys.get_gdk_key
+-- @see rebuild_command_tables
-- @name set_menubar
function M.set_menubar(menubar)
key_shortcuts = {}
diff --git a/modules/textadept/mime_types.lua b/modules/textadept/mime_types.lua
index 1760f23d..9efbbec9 100644
--- a/modules/textadept/mime_types.lua
+++ b/modules/textadept/mime_types.lua
@@ -5,9 +5,7 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Handles file-specific settings.
-module('_M.textadept.mime_types')]]
-
--- Markdown:
+--
-- ## Mime-type Events
--
-- * `_G.events.LANGUAGE_MODULE_LOADED`
@@ -16,6 +14,7 @@ module('_M.textadept.mime_types')]]
-- when Textadept starts.
-- Arguments:
-- * `lang`: The language lexer name.
+module('_M.textadept.mime_types')]]
-- Events.
local events, events_connect = events, events.connect
diff --git a/modules/textadept/run.lua b/modules/textadept/run.lua
index 42423c7b..b8af5f66 100644
--- a/modules/textadept/run.lua
+++ b/modules/textadept/run.lua
@@ -8,9 +8,7 @@ local M = {}
-- Typically, language-specific modules populate the `compile_command`,
-- `run_command`, and `error_detail` tables for a particular language's file
-- extension.
-module('_M.textadept.run')]]
-
--- Markdown:
+--
-- ## Run Events
--
-- * `_G.events.COMPILE_OUTPUT`
@@ -31,6 +29,7 @@ module('_M.textadept.run')]]
-- Arguments:
-- * `lexer`: The lexer language.
-- * `output`: The output from the command.
+module('_M.textadept.run')]]
-- Events.
local events, events_connect, events_emit = events, events.connect, events.emit
diff --git a/modules/textadept/session.lua b/modules/textadept/session.lua
index 5dffaaf6..91adf795 100644
--- a/modules/textadept/session.lua
+++ b/modules/textadept/session.lua
@@ -5,21 +5,17 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Session support for the textadept module.
-module('_M.textadept.session')]]
-
--- Markdown:
--- ## Settings
---
--- * `DEFAULT_SESSION` [string]
+-- @field DEFAULT_SESSION (string)
-- The path to the default session file.
--- * `SAVE_ON_QUIT` [bool]
+-- @field SAVE_ON_QUIT (bool)
-- Save the session when quitting.
-- The default value is `true` and can be disabled by passing the command line
-- switch `-n` or `--nosession` to Textadept.
--- * `MAX_RECENT_FILES` [number]
+-- @field MAX_RECENT_FILES (number)
-- The maximum number of files from the recent files list to save to the
-- session.
-- The default value is `10`.
+module('_M.textadept.session')]]
M.DEFAULT_SESSION = _USERHOME..'/session'
M.SAVE_ON_QUIT = true
@@ -33,6 +29,7 @@ M.MAX_RECENT_FILES = 10
-- value is `DEFAULT_SESSION`.
-- @return `true` if the session file was opened and read; `false` otherwise.
-- @usage _M.textadept.session.load(filename)
+-- @see DEFAULT_SESSION
-- @name load
function M.load(filename)
local not_found = {}
@@ -112,6 +109,7 @@ events.connect('arg_none', function() if M.SAVE_ON_QUIT then M.load() end end)
-- @param filename The absolute path to the session file to save. The default
-- value is either the current session file or `DEFAULT_SESSION`.
-- @usage _M.textadept.session.save(filename)
+-- @see DEFAULT_SESSION
-- @name save
function M.save(filename)
local session = {}
diff --git a/modules/textadept/snapopen.lua b/modules/textadept/snapopen.lua
index 6f8d4772..3ccfe376 100644
--- a/modules/textadept/snapopen.lua
+++ b/modules/textadept/snapopen.lua
@@ -5,15 +5,6 @@ local M = {}
--[[ This comment is for LuaDoc.
---
-- Snapopen for the textadept module.
-module('_M.textadept.snapopen')]]
-
--- Markdown:
--- ## Settings
---
--- * `DEFAULT_DEPTH` [number]
--- Maximum directory depth to search. The default value is `4`.
--- * `MAX` [number]
--- Maximum number of files to list. The default value is `1000`.
--
-- ## Examples
--
@@ -29,8 +20,15 @@ module('_M.textadept.snapopen')]]
-- snapopen(nil, '!%.lua$')
--
-- -- Ignore the project's 'images' folder and HTML pages.
--- snapopen('/path/to/project',
--- { folders = { 'images' }, extensions = { 'html' } }, true)
+-- snapopen('/path/to/project', {
+-- folders = { 'images' },
+-- extensions = { 'html' }
+-- }, true)
+-- @field DEFAULT_DEPTH (number)
+-- Maximum directory depth to search. The default value is `4`.
+-- @field MAX (number)
+-- Maximum number of files to list. The default value is `1000`.
+module('_M.textadept.snapopen')]]
---
-- Table of default UTF-8 paths to search.
diff --git a/modules/textadept/snippets.lua b/modules/textadept/snippets.lua
index 1647c3fe..3674a079 100644
--- a/modules/textadept/snippets.lua
+++ b/modules/textadept/snippets.lua
@@ -2,12 +2,10 @@
local M = {}
---[[ This comment is for LuaDoc.
+--[=[ This comment is for LuaDoc.
---
-- Provides Lua-style snippets for Textadept.
-module('_M.textadept.snippets')]]
-
--- Markdown:
+--
-- ## Overview
--
-- Snippets are dynamic pieces of text inserted into a document that contain
@@ -117,6 +115,7 @@ module('_M.textadept.snippets')]]
--
-- It is recommended to use tab characters instead of spaces like in the last
-- example. Tabs will be converted to spaces as necessary.
+module('_M.textadept.snippets')]=]
-- The stack of currently running snippets.
local snippet_stack = {}
--
cgit v1.2.3