aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar mitchell <70453897+667e-11@users.noreply.github.com>2020-05-25 21:16:01 -0400
committerGravatar mitchell <70453897+667e-11@users.noreply.github.com>2020-05-25 21:16:01 -0400
commitf2374c4aba53fa462dc88d4104e10d8cb97e61ba (patch)
tree5e5a9d26a5ad8915c0e12187dd059b1109fcf22d
parenteffc636745e8d9c680c3acf42e8e25eed10cd903 (diff)
Allow views to be used as buffers and update API.
This allows for a superficial separation of buffer- and view-specific Scintilla functionality. buffers and views can now be used interchangeably for the most part, and the APIs are guidance, not hard requirements. User scripts do not require any modification and will continue to function normally.
-rw-r--r--core/._M.luadoc2
-rw-r--r--core/.buffer.luadoc1362
-rw-r--r--core/.iconv.luadoc2
-rw-r--r--core/.os.luadoc2
-rw-r--r--core/.ui.dialogs.luadoc2
-rw-r--r--core/.view.luadoc1365
-rw-r--r--core/events.lua38
-rw-r--r--core/file_io.lua8
-rw-r--r--core/iface.lua12
-rw-r--r--core/ui.lua66
-rw-r--r--doc/manual.md31
-rw-r--r--init.lua272
-rw-r--r--modules/lua/ta_api634
-rw-r--r--modules/lua/ta_tags598
-rw-r--r--modules/textadept/command_entry.lua2
-rw-r--r--modules/textadept/editing.lua8
-rw-r--r--modules/textadept/file_types.lua2
-rw-r--r--modules/textadept/find.lua8
-rw-r--r--modules/textadept/keys.lua6
-rw-r--r--modules/textadept/menu.lua30
-rw-r--r--modules/textadept/session.lua4
-rw-r--r--modules/textadept/snippets.lua4
-rwxr-xr-xscripts/gen_iface.lua12
-rw-r--r--src/textadept.c67
-rw-r--r--test/test.lua98
-rw-r--r--themes/dark.lua60
-rw-r--r--themes/light.lua60
-rw-r--r--themes/term.lua36
28 files changed, 2466 insertions, 2325 deletions
diff --git a/core/._M.luadoc b/core/._M.luadoc
index 80b127cd..479b88bb 100644
--- a/core/._M.luadoc
+++ b/core/._M.luadoc
@@ -68,7 +68,7 @@
-- if lexer ~= 'python' then return end
-- buffer.tab_width = 4
-- buffer.use_tabs = false
--- buffer.view_ws = buffer.WS_VISIBLEALWAYS
+-- view.view_ws = view.WS_VISIBLEALWAYS
-- end
--
-- ## Autocompletion and Documentation
diff --git a/core/.buffer.luadoc b/core/.buffer.luadoc
index 969c45ac..b0618699 100644
--- a/core/.buffer.luadoc
+++ b/core/.buffer.luadoc
@@ -1,4 +1,4 @@
--- Copyright 2007-2018 Mitchell mitchell.att.foicica.com. See LICENSE.
+-- Copyright 2007-2020 Mitchell mitchell.att.foicica.com. See LICENSE.
-- This is a DUMMY FILE used for making LuaDoc for Buffers.
---
@@ -6,33 +6,17 @@
-- Constants are documented in the fields they apply to.
-- While you can work with individual buffer instances, it is really only useful
-- to work with the global one.
--- Many of these functions and fields are derived from the Scintilla editing
--- component, and additional information can be found on the Scintilla website:
+-- Many of these functions and fields are derived from buffer-specific
+-- functionality of the Scintilla editing component, and additional information
+-- can be found on the Scintilla website:
-- [http://scintilla.org/ScintillaDoc.html](
--- http://scintilla.org/ScintillaDoc.html)
--- @field additional_caret_fore (number)
--- The foreground color, in "0xBBGGRR" format, of additional carets.
--- @field additional_carets_blink (bool)
--- Allow additional carets to blink.
--- The default value is `true`.
--- @field additional_carets_visible (bool)
--- Display additional carets.
--- The default value is `true`.
--- @field additional_sel_alpha (number)
--- The alpha value, ranging from `0` (transparent) to `255` (opaque), of
--- additional selections.
--- The default value is `buffer.ALPHA_NOALPHA`, for no alpha.
--- @field additional_sel_back (number, Write-only)
--- The background color, in "0xBBGGRR" format, of additional selections.
--- This field has no effect when calling `buffer.set_sel_back(false, ...)`.
--- @field additional_sel_fore (number, Write-only)
--- The foreground color, in "0xBBGGRR" format, of additional selections.
--- This field has no effect when calling `buffer.set_sel_fore(false, ...)`.
+-- http://scintilla.org/ScintillaDoc.html).
+-- Note that with regard to Scintilla-specific functionality, this API is a
+-- _suggestion_, not a hard requirement. All of that functionality also exists
+-- in [`view`](), even if undocumented.
-- @field additional_selection_typing (bool)
-- Type into multiple selections.
-- The default value is `false`.
--- @field all_lines_visible (bool, Read-only)
--- Whether or not all lines are visible.
-- @field anchor (number)
-- The anchor's position.
-- @field annotation_lines (table, Read-only)
@@ -43,20 +27,6 @@
-- size/size_fractional, bold/weight, italics, fore, back, and character_set.
-- @field annotation_text (table)
-- Table of annotation text per line number.
--- @field annotation_visible (number)
--- The annotation visibility mode.
---
--- * `buffer.ANNOTATION_HIDDEN`
--- Annotations are invisible.
--- * `buffer.ANNOTATION_STANDARD`
--- Draw annotations left-justified with no decoration.
--- * `buffer.ANNOTATION_BOXED`
--- Indent annotations to match the annotated text and outline them with a
--- box.
--- * `buffer.ANNOTATION_INDENTED`
--- Indent non-decorated annotations to match the annotated text.
---
--- The default value is `buffer.ANNOTATION_HIDDEN`.
-- @field auto_c_auto_hide (bool)
-- Automatically cancel an autocompletion or user list when no entries match
-- typed text.
@@ -94,14 +64,6 @@
-- @field auto_c_ignore_case (bool)
-- Ignore case when searching an autocompletion or user list for matches.
-- The default value is `false`.
--- @field auto_c_max_height (number)
--- The maximum number of items per page to show in autocompletion and user
--- lists. The default value is `5`.
--- @field auto_c_max_width (number)
--- The maximum number of characters per item to show in autocompletion and
--- user lists.
--- The default value is `0`, which automatically sizes the width to fit the
--- longest item.
-- @field auto_c_multi (number)
-- The multiple selection autocomplete mode.
--
@@ -131,51 +93,15 @@
-- The character byte that separates autocompletion and user list items and
-- their image types.
-- Autocompletion and user list items can display both an image and text.
--- Register images and their types using [`buffer.register_image()`]() or
--- [`buffer.register_rgba_image()`]() before appending image types to list
+-- Register images and their types using [`view.register_image()`]() or
+-- [`view.register_rgba_image()`]() before appending image types to list
-- items after type separator characters.
-- The default value is 63 ('?').
-- @field back_space_un_indents (bool)
-- Un-indent text when backspacing within indentation.
-- The default value is `false`.
--- @field call_tip_fore_hlt (number, Write-only)
--- A call tip's highlighted text foreground color, in "0xBBGGRR" format.
-- @field call_tip_pos_start (number, Write-only)
-- The position in which backspacing beyond it hides a visible call tip.
--- @field call_tip_position (boolean)
--- Display a call tip above the current line instead of below it.
--- The default value is `false`.
--- @field call_tip_use_style (number)
--- The pixel width of tab characters in call tips.
--- When non-zero, also enables the use of style number `buffer.STYLE_CALLTIP`
--- instead of `buffer.STYLE_DEFAULT` for call tip styles.
--- The default value is `0`.
--- @field caret_fore (number)
--- The caret's foreground color, in "0xBBGGRR" format.
--- @field caret_line_back (number)
--- The background color, in "0xBBGGRR" format, of the line that contains the
--- caret.
--- @field caret_line_back_alpha (number)
--- The caret line's background alpha value, ranging from `0` (transparent) to
--- `255` (opaque).
--- The default value is `buffer.ALPHA_NOALPHA`, for no alpha.
--- @field caret_line_frame (number)
--- The caret line's frame width in pixels.
--- When non-zero, the line that contains the caret is framed instead of
--- colored in. The `buffer.caret_line_back` and `buffer.caret_line_back_alpha`
--- properties apply to the frame.
--- The default value is `0`.
--- @field caret_line_visible (bool)
--- Color the background of the line that contains the caret a different color.
--- The default value is `false`.
--- @field caret_line_visible_always (bool)
--- Always show the caret line, even when the window is not in focus.
--- The default value is `false`, showing the line only when the window is in
--- focus.
--- @field caret_period (number)
--- The time between caret blinks in milliseconds.
--- A value of `0` stops blinking.
--- The default value is `500`.
-- @field caret_sticky (number)
-- The caret's preferred horizontal position when moving between lines.
--
@@ -189,24 +115,6 @@
-- inserted indentation.
--
-- The default value is `buffer.CARETSTICKY_OFF`.
--- @field caret_style (number)
--- The caret's visual style.
---
--- * `buffer.CARETSTYLE_INVISIBLE`
--- No caret.
--- * `buffer.CARETSTYLE_LINE`
--- A line caret.
--- * `buffer.CARETSTYLE_BLOCK`
--- A block caret.
---
--- Any block setting may be combined with `buffer.CARETSTYLE_BLOCK_AFTER` via
--- bitwise OR (`|`) in order to draw the caret after the end of a selection,
--- as opposed to just inside it.
---
--- The default value is `buffer.CARETSTYLE_LINE`.
--- @field caret_width (number)
--- The line caret's pixel width in insert mode, either `0`, `1`, `2`, or `3`.
--- The default value is `1`.
-- @field char_at (table, Read-only)
-- Table of character bytes per position.
-- @field column (table, Read-only)
@@ -215,43 +123,8 @@
-- @field current_pos (number)
-- The caret's position.
-- When set, does not scroll the caret into view.
--- @field cursor (number)
--- The display cursor type.
---
--- * `buffer.CURSORNORMAL`
--- The text insert cursor.
--- * `buffer.CURSORARROW`
--- The arrow cursor.
--- * `buffer.CURSORWAIT`
--- The wait cursor.
--- * `buffer.CURSORREVERSEARROW`
--- The reversed arrow cursor.
---
--- The default value is `buffer.CURSORNORMAL`.
--- @field edge_colour (number)
--- The color, in "0xBBGGRR" format, of the single edge or background for long
--- lines according to `buffer.edge_mode`.
--- @field edge_column (number)
--- The column number to mark long lines at.
--- @field edge_mode (number)
--- The long line mark mode.
---
--- * `buffer.EDGE_NONE`
--- Long lines are not marked.
--- * `buffer.EDGE_LINE`
--- Draw a single vertical line whose color is [`buffer.edge_colour`]() at
--- column [`buffer.edge_column`]().
--- * `buffer.EDGE_BACKGROUND`
--- Change the background color of text after column [`buffer.edge_column`]()
--- to [`buffer.edge_colour`]().
--- * `buffer.EDGE_MULTILINE`
--- Draw vertical lines whose colors and columns are defined by calls to
--- [`buffer:multi_edge_add_line()`]().
-- @field encoding (string or nil)
-- The string encoding of the file, or `nil` for binary files.
--- @field end_at_last_line (bool)
--- Disable scrolling past the last line.
--- The default value is `true`.
-- @field end_styled (number, Read-only)
-- The current styling position or the last correctly styled character's
-- position.
@@ -269,51 +142,8 @@
--
-- The default value is `buffer.EOL_CRLF` on Windows platforms,
-- `buffer.EOL_LF` otherwise.
--- @field extra_ascent (number)
--- The amount of pixel padding above lines.
--- The default value is `0`.
--- @field extra_descent (number)
--- The amount of pixel padding below lines.
--- The default is `0`.
-- @field filename (string)
-- The absolute file path associated with the buffer.
--- @field first_visible_line (number)
--- The line number of the line at the top of the view.
--- @field fold_display_text_style (number)
--- The fold display text mode.
---
--- * `buffer.FOLDDISPLAYTEXT_HIDDEN`
--- Fold display text is not shown.
--- * `buffer.FOLDDISPLAYTEXT_STANDARD`
--- Fold display text is shown with no decoration.
--- * `buffer.FOLDDISPLAYTEXT_BOXED`
--- Fold display text is shown outlined with a box.
---
--- The default value is `buffer.FOLDDISPLAYTEXT_HIDDEN`.
--- @field fold_expanded (table)
--- Table of flags per line number that indicate whether or not fold points are
--- expanded for those line numbers.
--- Setting expanded fold states does not toggle folds; it only updates fold
--- margin markers. Use [`buffer.toggle_fold()`]() instead.
--- @field fold_flags (number, Read-only)
--- Bit-mask of folding lines to draw in the buffer.
---
--- * `buffer.FOLDFLAG_LINEBEFORE_EXPANDED`
--- Draw lines above expanded folds.
--- * `buffer.FOLDFLAG_LINEBEFORE_CONTRACTED`
--- Draw lines above collapsed folds.
--- * `buffer.FOLDFLAG_LINEAFTER_EXPANDED`
--- Draw lines below expanded folds.
--- * `buffer.FOLDFLAG_LINEAFTER_CONTRACTED`
--- Draw lines below collapsed folds.
--- * `buffer.FOLDFLAG_LEVELNUMBERS`
--- Show hexadecimal fold levels in line margins.
--- This option cannot be combined with `FOLDFLAG_LINESTATE`.
--- * `buffer.FOLDFLAG_LINESTATE`
--- Show line state in line margins.
--- This option cannot be combined with `FOLDFLAG_LEVELNUMBERS`.
---
--- The default value is `0`.
-- @field fold_level (table)
-- Table of fold level bit-masks per line number.
-- Fold level masks comprise of an integer level combined with any of the
@@ -328,140 +158,9 @@
-- @field fold_parent (table, Read-only)
-- Table of fold point line numbers per child line number.
-- A line number of `-1` means no line was found.
--- @field h_scroll_bar (bool)
--- Display the horizontal scroll bar.
--- The default value is `true`.
--- @field highlight_guide (number)
--- The indentation guide column number to also highlight when highlighting
--- matching braces, or `0` to stop indentation guide highlighting.
--- @field idle_styling (number)
--- The idle styling mode.
--- This mode has no effect when `buffer.wrap_mode` is on.
---
--- * `buffer.IDLESTYLING_NONE`
--- Style all the currently visible text before displaying it.
--- * `buffer.IDLESTYLING_TOVISIBLE`
--- Style some text before displaying it and then style the rest
--- incrementally in the background as an idle-time task.
--- * `buffer.IDLESTYLING_AFTERVISIBLE`
--- Style text after the currently visible portion in the background.
--- * `buffer.IDLESTYLING_ALL`
--- Style text both before and after the visible text in the background.
---
--- The default value is `buffer.IDLESTYLING_NONE`.
-- @field indent (number)
-- The number of spaces in one level of indentation.
-- The default value is `0`, which uses the value of [`buffer.tab_width`]().
--- @field indentation_guides (number)
--- The indentation guide drawing mode.
--- Indentation guides are dotted vertical lines that appear within indentation
--- whitespace at each level of indentation.
---
--- * `buffer.IV_NONE`
--- Does not draw any guides.
--- * `buffer.IV_REAL`
--- Draw guides only within indentation whitespace.
--- * `buffer.IV_LOOKFORWARD`
--- Draw guides beyond the current line up to the next non-empty line's
--- indentation level, but with an additional level if the previous non-empty
--- line is a fold point.
--- * `buffer.IV_LOOKBOTH`
--- Draw guides beyond the current line up to either the indentation level of
--- the previous or next non-empty line, whichever is greater.
---
--- The default value is `buffer.IV_NONE`.
--- @field indic_alpha (table)
--- Table of fill color alpha values, ranging from `0` (transparent) to `255`
--- (opaque), for indicator numbers from `1` to `32` whose styles are either
--- `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.
--- The default values are `buffer.ALPHA_NOALPHA`, for no alpha.
--- @field indic_fore (table)
--- Table of foreground colors, in "0xBBGGRR" format, for indicator numbers
--- from `1` to `32`.
--- Changing an indicator's foreground color resets that indicator's hover
--- foreground color.
--- @field indic_hover_fore (table)
--- Table of hover foreground colors, in "0xBBGGRR" format, for indicator
--- numbers from `1` to `32`.
--- The default values are the respective indicator foreground colors.
--- @field indic_hover_style (table)
--- Table of hover styles for indicators numbers from `1` to `32`. An
--- indicator's hover style drawn when either the cursor hovers over that
--- indicator or the caret is within that indicator.
--- The default values are the respective indicator styles.
--- @field indic_outline_alpha (table)
--- Table of outline color alpha values, ranging from `0` (transparent) to
--- `255` (opaque), for indicator numbers from `1` to `32` whose styles are
--- either `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.
--- The default values are `buffer.ALPHA_NOALPHA`, for no alpha.
--- @field indic_style (table)
--- Table of styles for indicator numbers from `1` to `32`.
---
--- * `buffer.INDIC_PLAIN`
--- An underline.
--- * `buffer.INDIC_SQUIGGLE`
--- A squiggly underline 3 pixels in height.
--- * `buffer.INDIC_TT`
--- An underline of small 'T' shapes.
--- * `buffer.INDIC_DIAGONAL`
--- An underline of diagonal hatches.
--- * `buffer.INDIC_STRIKE`
--- Strike out.
--- * `buffer.INDIC_HIDDEN`
--- Invisible.
--- * `buffer.INDIC_BOX`
--- A bounding box.
--- * `buffer.INDIC_ROUNDBOX`
--- A translucent box with rounded corners around the text. Use
--- [`buffer.indic_alpha`]() and [`buffer.indic_outline_alpha`]() to set the
--- fill and outline transparency, respectively. Their default values are
--- `30` and `50`.
--- * `buffer.INDIC_STRAIGHTBOX`
--- Similar to `INDIC_ROUNDBOX` but with sharp corners.
--- * `buffer.INDIC_DASH`
--- A dashed underline.
--- * `buffer.INDIC_DOTS`
--- A dotted underline.
--- * `buffer.INDIC_SQUIGGLELOW`
--- A squiggly underline 2 pixels in height.
--- * `buffer.INDIC_DOTBOX`
--- Similar to `INDIC_STRAIGHTBOX` but with a dotted outline.
--- Translucency alternates between [`buffer.indic_alpha`]() and
--- [`buffer.indic_outline_alpha`]() starting with the top-left pixel.
--- * `buffer.INDIC_SQUIGGLEPIXMAP`
--- Identical to `INDIC_SQUIGGLE` but draws faster by using a pixmap instead
--- of multiple line segments.
--- * `buffer.INDIC_COMPOSITIONTHICK`
--- A 2-pixel thick underline at the bottom of the line inset by 1 pixel on
--- on either side. Similar in appearance to the target in Asian language
--- input composition.
--- * `buffer.INDIC_COMPOSITIONTHIN`
--- A 1-pixel thick underline just before the bottom of the line inset by 1
--- pixel on either side. Similar in appearance to the non-target ranges in
--- Asian language input composition.
--- * `buffer.INDIC_FULLBOX`
--- Similar to `INDIC_STRAIGHTBOX` but extends to the top of its line,
--- potentially touching any similar indicators on the line above.
--- * `buffer.INDIC_TEXTFORE`
--- Changes the color of text to an indicator's foreground color.
--- * `buffer.INDIC_POINT`
--- A triangle below the start of the indicator range.
--- * `buffer.INDIC_POINTCHARACTER`
--- A triangle below the centre of the first character of the indicator
--- range.
--- * `buffer.INDIC_GRADIENT`
--- A box with a vertical gradient from solid on top to transparent on
--- bottom.
--- * `buffer.INDIC_GRADIENTCENTRE`
--- A box with a centered gradient from solid in the middle to transparent on
--- the top and bottom.
---
--- Use [`_SCINTILLA.next_indic_number()`]() for custom indicators.
--- Changing an indicator's style resets that indicator's hover style.
--- @field indic_under (table)
--- Table of flags that indicate whether or not to draw indicators behind text
--- instead of over the top of it for indicator numbers from `1` to `32`.
--- The default values are `false`.
-- @field indicator_current (number)
-- The indicator number in the range of `1` to `32` used by
-- [`buffer.indicator_fill_range()`]() and
@@ -478,118 +177,20 @@
-- Table of positions at the ends of indentation per line number.
-- @field line_indentation (table)
-- Table of column indentation amounts per line number.
--- @field line_visible (table, Read-only)
--- Table of flags per line number that indicate whether or not lines are
--- visible for those line numbers.
--- @field lines_on_screen (number, Read-only)
--- The number of completely visible lines in the view.
--- It is possible to have a partial line visible at the bottom of the view.
-- @field main_selection (number)
-- The number of the main, or most recent, selection.
-- Only an existing selection can be made main.
--- @field margins (number)
--- The number of margins.
--- The default value is `5`.
--- @field margin_back_n (table)
--- Table of background colors, in "0xBBGGRR" format, of margin numbers from
--- `1` to `buffer.margins` (`5` by default).
--- Only affects margins of type `buffer.MARGIN_COLOUR`.
--- @field margin_cursor_n (table)
--- Table of cursor types shown over margin numbers from `1` to
--- `buffer.margins` (`5` by default).
---
--- * `buffer.CURSORARROW`
--- Normal arrow cursor.
--- * `buffer.CURSORREVERSEARROW`
--- Reversed arrow cursor.
---
--- The default values are `buffer.CURSORREVERSEARROW`.
--- @field margin_left (number)
--- The pixel size of the left margin of the buffer text.
--- The default value is `1`.
--- @field margin_mask_n (table)
--- Table of bit-masks of markers whose symbols marker symbol margins can
--- display for margin numbers from `1` to `buffer.margins` (`5` by default).
--- Bit-masks are 32-bit values whose bits correspond to the 32 available
--- markers.
--- The default values are `0`, `buffer.MASK_FOLDERS`, `0`, `0`, and `0`, for
--- a line margin and logical marker margin.
--- @field margin_options (number)
--- A bit-mask of margin option settings.
---
--- * `buffer.MARGINOPTION_NONE`
--- None.
--- * `buffer.MARGINOPTION_SUBLINESELECT`
--- Select only a wrapped line's sub-line (rather than the entire line) when
--- the line number margin is clicked.
---
--- The default value is `buffer.MARGINOPTION_NONE`.
--- @field margin_right (number)
--- The pixel size of the right margin of the buffer text.
--- The default value is `1`.
--- @field margin_sensitive_n (table)
--- Table of flags that indicate whether or not mouse clicks in margins emit
--- `MARGIN_CLICK` events for margin numbers from `1` to `buffer.margins` (`5`
--- by default).
--- The default values are `false`.
+-- @field margin_text (table)
+-- Table of text displayed in text margins per line number.
-- @field margin_style (table)
-- Table of style numbers in the text margin per line number.
-- Only some style attributes are active in text margins: font, size, bold,
-- italics, fore, and back.
--- @field margin_text (table)
--- Table of text displayed in text margins per line number.
--- @field margin_type_n (table)
--- Table of margin types for margin numbers from `1` to `buffer.margins` (`5`
--- by default).
---
--- * `buffer.MARGIN_SYMBOL`
--- A marker symbol margin.
--- * `buffer.MARGIN_NUMBER`
--- A line number margin.
--- * `buffer.MARGIN_BACK`
--- A marker symbol margin whose background color matches the default text
--- background color.
--- * `buffer.MARGIN_FORE`
--- A marker symbol margin whose background color matches the default text
--- foreground color.
--- * `buffer.MARGIN_TEXT`
--- A text margin.
--- * `buffer.MARGIN_RTEXT`
--- A right-justified text margin.
--- * `buffer.MARGIN_COLOUR`
--- A marker symbol margin whose background color is configurable.
---
--- The default value for the first margin is `buffer.MARGIN_NUMBER`, followed
--- by `buffer.MARGIN_SYMBOL` for the rest.
--- @field margin_width_n (table)
--- Table of pixel margin widths for margin numbers from `1` to
--- `buffer.margins` (`5` by default).
--- @field marker_alpha (table, Write-only)
--- Table of alpha values, ranging from `0` (transparent) to `255` (opaque),
--- of markers drawn in the text area (not the margin) for markers numbers from
--- `1` to `32`.
--- The default values are `buffer.ALPHA_NOALPHA`, for no alpha.
--- @field marker_back (table, Write-only)
--- Table of background colors, in "0xBBGGRR" format, of marker numbers from
--- `1` to `32`.
--- @field marker_back_selected (table, Write-only)
--- Table of background colors, in "0xBBGGRR" format, of markers whose folding
--- blocks are selected for marker numbers from `1` to `32`.
--- @field marker_fore (table, Write-only)
--- Table of foreground colors, in "0xBBGGRR" format, of marker numbers from
--- `1` to `32`.
--- @field mouse_dwell_time (number)
--- The number of milliseconds the mouse must idle before generating a
--- `DWELL_START` event. A time of `buffer.TIME_FOREVER` will never generate
--- one.
--- @field mouse_selection_rectangular_switch (bool)
--- Whether or not pressing [`buffer.rectangular_selection_modifier`]() when
--- selecting text normally with the mouse turns on rectangular selection.
--- The default value is `false`.
-- @field modify (bool, Read-only)
-- Whether or not the buffer has unsaved changes.
--- @field move_extends_selection (bool)
+-- @field move_extends_selection (bool, Read-only)
-- Whether or not regular caret movement alters the selected text.
+-- [`buffer.selection_mode`]() dictates this property.
-- @field multi_paste (number)
-- The multiple selection paste mode.
--
@@ -629,49 +230,6 @@
-- The rectangular selection's caret position.
-- @field rectangular_selection_caret_virtual_space (number)
-- The amount of virtual space for the rectangular selection's caret.
--- @field rectangular_selection_modifier (number)
--- The modifier key used in combination with a mouse drag in order to create a
--- rectangular selection.
---
--- * `buffer.MOD_CTRL`
--- The "Control" modifier key.
--- * `buffer.MOD_ALT`
--- The "Alt" modifier key.
--- * `buffer.MOD_SUPER`
--- The "Super" modifier key, usually defined as the left "Windows" or
--- "Command" key.
---
--- The default value is `buffer.MOD_CTRL`.
--- @field representation (table)
--- The alternative string representations of characters.
--- Representations are displayed in the same way control characters are. Use
--- the empty string for the '\0' character when assigning its representation.
--- Call [`buffer.clear_representation()`]() to remove a representation.
--- @field rgba_image_height (number)
--- The height of the RGBA image to be defined using
--- [`buffer.marker_define_rgba_image()`]().
--- @field rgba_image_scale (number)
--- The scale factor in percent of the RGBA image to be defined using
--- [`buffer.marker_define_rgba_image()`]().
--- This is useful on OSX with a retina display where each display unit is 2
--- pixels: use a factor of `200` so that each image pixel is displayed using a
--- screen pixel. The default scale, `100`, will stretch each image pixel to
--- cover 4 screen pixels on a retina display.
--- @field rgba_image_width (number)
--- The width of the RGBA image to be defined using
--- [`buffer.marker_define_rgba_image()`]() and
--- [`buffer.register_rgba_image()`]().
--- @field scroll_width (number)
--- The horizontal scrolling pixel width.
--- For performance, the view does not measure the display width of the buffer
--- to determine the properties of the horizontal scroll bar, but uses an
--- assumed width instead. To ensure the width of the currently visible lines
--- can be scrolled use [`buffer.scroll_width_tracking`]().
--- The default value is `2000`.
--- @field scroll_width_tracking (bool)
--- Continuously update the horizontal scrolling width to match the maximum
--- width of a displayed line beyond [`buffer.scroll_width`]().
--- The default value is `false`.
-- @field search_flags (number)
-- The bit-mask of search flags used by [`buffer.search_in_target()`]().
--
@@ -686,13 +244,6 @@
-- Interpret search text as a regular expression.
--
-- The default value is `0`.
--- @field sel_alpha (number)
--- The selection's alpha value, ranging from `0` (transparent) to `255`
--- (opaque).
--- The default value is `buffer.ALPHA_NOALPHA`, for no alpha.
--- @field sel_eol_filled (bool)
--- Extend the selection to the view's right margin.
--- The default value is `false`.
-- @field selection_empty (bool, Read-only)
-- Whether or not no text is selected.
-- @field selection_end (number)
@@ -747,64 +298,6 @@
-- The number of active selections. There is always at least one selection.
-- @field style_at (table, Read-only)
-- Table of style numbers per position.
--- @field style_back (table)
--- Table of background colors, in "0xBBGGRR" format, of text for style numbers
--- from `1` to `256`.
--- @field style_bold (table)
--- Table of flags that indicate whether or not text is bold for style numbers
--- from `1` to `256`.
--- The default values are `false`.
--- @field style_case (table)
--- Table of letter case modes of text for style numbers from `1` to `256`.
---
--- * `buffer.CASE_MIXED`
--- Display text in normally.
--- * `buffer.CASE_UPPER`
--- Display text in upper case.
--- * `buffer.CASE_LOWER`
--- Display text in lower case.
--- * `buffer.CASE_CAMEL`
--- Display text in camel case.
---
--- The default values are `buffer.CASE_MIXED`.
--- @field style_changeable (table)
--- Table of flags that indicate whether or not text is changeable for style
--- numbers from `1` to `256`.
--- The default values are `true`.
--- Read-only styles do not allow the caret into the range of text.
--- @field style_eol_filled (table)
--- Table of flags that indicate whether or not the background colors of styles
--- whose characters occur last on lines extend all the way to the view's right
--- margin for style numbers from `1` to `256`.
--- The default values are `false`.
--- @field style_font (table)
--- Table of string font names of text for style numbers from `1` to `256`.
--- @field style_fore (table)
--- Table of foreground colors, in "0xBBGGRR" format, of text for style numbers
--- from `1` to `256`.
--- @field style_italic (table)
--- Table of flags that indicate whether or not text is italic for style
--- numbers from `1` to `256`.
--- The default values are `false`.
--- @field style_size (table)
--- Table of font sizes of text for style numbers from `1` to `256`.
--- @field style_underline (table)
--- Table of flags that indicate whether or not text is underlined for style
--- numbers from `1` to `256`.
--- The default values are `false`.
--- @field style_visible (table)
--- Table of flags that indicate whether or not text is visible for style
--- numbers from `1` to `256`.
--- The default values are `true`.
--- @field tab_draw_mode (number)
--- The draw mode of visible tabs.
---
--- * `buffer.TD_LONGARROW`
--- An arrow that stretches until the tabstop.
--- * `buffer.TD_STRIKEOUT`
--- A horizontal line that stretches until the tabstop.
---
--- The default value is `buffer.TD_LONGARROW`.
-- @field tab_indents (bool)
-- Indent text when tabbing within indentation.
-- The default value is `false`.
@@ -840,25 +333,6 @@
-- does not convert any of the buffer's existing indentation. Use
-- [`textadept.editing.convert_indentation()`]() to do so.
-- The default value is `true`.
--- @field v_scroll_bar (bool)
--- Display the vertical scroll bar.
--- The default value is `true`.
--- @field view_eol (bool)
--- Display end of line characters.
--- The default value is `false`.
--- @field view_ws (number)
--- The whitespace visibility mode.
---
--- * `buffer.WS_INVISIBLE`
--- Whitespace is invisible.
--- * `buffer.WS_VISIBLEALWAYS`
--- Display all space characters as dots and tab characters as arrows.
--- * `buffer.WS_VISIBLEAFTERINDENT`
--- Display only non-indentation spaces and tabs as dots and arrows.
--- * `buffer.WS_VISIBLEONLYININDENT`
--- Display only indentation spaces and tabs as dots and arrows.
---
--- The default value is `buffer.WS_INVISIBLE`.
-- @field virtual_space_options (number)
-- The virtual space mode.
--
@@ -882,144 +356,10 @@
-- Set this only after setting [`buffer.word_chars`]().
-- The default value is a string that contains all non-newline characters less
-- than ASCII value 33.
--- @field whitespace_size (number)
--- The pixel size of the dots that represent space characters when whitespace
--- is visible.
--- The default value is `1`.
-- @field word_chars (string)
-- The string set of characters recognized as word characters.
-- The default value is a string that contains alphanumeric characters, an
-- underscore, and all characters greater than ASCII value 127.
--- @field wrap_indent_mode (number)
--- The wrapped line indent mode.
---
--- * `buffer.WRAPINDENT_FIXED`
--- Indent wrapped lines by [`buffer.wrap_start_indent`]().
--- * `buffer.WRAPINDENT_SAME`
--- Indent wrapped lines the same amount as the first line.
--- * `buffer.WRAPINDENT_INDENT`
--- Indent wrapped lines one more level than the level of the first line.
--- * `buffer.WRAPINDENT_DEEPINDENT`
--- Indent wrapped lines two more levels than the level of the first line.
---
--- The default value is `buffer.WRAPINDENT_FIXED`.
--- @field wrap_mode (number)
--- Long line wrap mode.
---
--- * `buffer.WRAP_NONE`
--- Long lines are not wrapped.
--- * `buffer.WRAP_WORD`
--- Wrap long lines at word (and style) boundaries.
--- * `buffer.WRAP_CHAR`
--- Wrap long lines at character boundaries.
--- * `buffer.WRAP_WHITESPACE`
--- Wrap long lines at word boundaries (ignoring style boundaries).
---
--- The default value is `buffer.WRAP_NONE`.
--- @field wrap_start_indent (number)
--- The number of spaces of indentation to display wrapped lines with if
--- [`buffer.wrap_indent_mode`]() is `buffer.WRAP_INDENT_FIXED`.
--- The default value is `0`.
--- @field wrap_visual_flags (number)
--- The wrapped line visual flag display mode.
---
--- * `buffer.WRAPVISUALFLAG_NONE`
--- No visual flags.
--- * `buffer.WRAPVISUALFLAG_END`
--- Show a visual flag at the end of a wrapped line.
--- * `buffer.WRAPVISUALFLAG_START`
--- Show a visual flag at the beginning of a sub-line.
--- * `buffer.WRAPVISUALFLAG_MARGIN`
--- Show a visual flag in the sub-line's line number margin.
---
--- The default value is `buffer.WRAPVISUALFLAG_NONE`.
--- @field wrap_visual_flags_location (number)
--- The wrapped line visual flag drawing mode.
---
--- * `buffer.WRAPVISUALFLAGLOC_DEFAULT`
--- Draw a visual flag near the view's right margin.
--- * `buffer.WRAPVISUALFLAGLOC_END_BY_TEXT`
--- Draw a visual flag near text at the end of a wrapped line.
--- * `buffer.WRAPVISUALFLAGLOC_START_BY_TEXT`
--- Draw a visual flag near text at the beginning of a subline.
---
--- The default value is `buffer.WRAPVISUALFLAGLOC_DEFAULT`.
--- @field x_offset (number)
--- The horizontal scroll pixel position.
--- A value of `0` is the normal position with the first text column visible at
--- the left of the view.
--- @field zoom (number)
--- The number of points to add to the size of all fonts.
--- Negative values are allowed.
--- The default value is `0`.
--- @field ANNOTATION_BOXED (number, Read-only)
---
--- @field ANNOTATION_HIDDEN (number, Read-only)
---
--- @field ANNOTATION_STANDARD (number, Read-only)
---
--- @field ANNOTATION_INDENTED (number, Read-only)
---
--- @field CARETSTYLE_BLOCK (number, Read-only)
---
--- @field CARETSTYLE_INVISIBLE (number, Read-only)
---
--- @field CARETSTYLE_LINE (number, Read-only)
---
--- @field CARET_EVEN (number, Read-only)
---
--- @field CARET_JUMPS (number, Read-only)
---
--- @field CARET_SLOP (number, Read-only)
---
--- @field CARET_STRICT (number, Read-only)
---
--- @field EDGE_BACKGROUND (number, Read-only)
---
--- @field EDGE_LINE (number, Read-only)
---
--- @field EDGE_MULTILINE (number, Read-only)
---
--- @field EDGE_NONE (number, Read-only)
---
--- @field INDIC_BOX (number, Read-only)
---
--- @field INDIC_COMPOSITIONTHICK (number, Read-only)
---
--- @field INDIC_COMPOSITIONTHIN (number, Read-only)
---
--- @field INDIC_DASH (number, Read-only)
---
--- @field INDIC_DIAGONAL (number, Read-only)
---
--- @field INDIC_DOTBOX (number, Read-only)
---
--- @field INDIC_DOTS (number, Read-only)
---
--- @field INDIC_FULLBOX (number, Read-only)
---
--- @field INDIC_HIDDEN (number, Read-only)
---
--- @field INDICATOR_MAX (number, Read-only)
---
--- @field INDIC_PLAIN (number, Read-only)
---
--- @field INDIC_ROUNDBOX (number, Read-only)
---
--- @field INDIC_SQUIGGLE (number, Read-only)
---
--- @field INDIC_SQUIGGLELOW (number, Read-only)
---
--- @field INDIC_SQUIGGLEPIXMAP (number, Read-only)
---
--- @field INDIC_STRAIGHTBOX (number, Read-only)
---
--- @field INDIC_STRIKE (number, Read-only)
---
--- @field INDIC_TEXTFORE (number, Read-only)
---
--- @field INDIC_TT (number, Read-only)
---
-- @field FIND_MATCHCASE (number, Read-only)
--
-- @field FIND_REGEXP (number, Read-only)
@@ -1028,46 +368,12 @@
--
-- @field FIND_WORDSTART (number, Read-only)
--
--- @field MOD_ALT (number, Read-only)
---
--- @field MOD_CTRL (number, Read-only)
---
--- @field MOD_META (number, Read-only)
---
--- @field MOD_SHIFT (number, Read-only)
---
--- @field MOD_SUPER (number, Read-only)
---
--- @field MOUSE_DRAG (number, Read-only)
---
--- @field MOUSE_PRESS (number, Read-only)
---
--- @field MOUSE_RELEASE (number, Read-only)
---
-- @field VS_NONE (number, Read-only)
--
-- @field VS_RECTANGULARSELECTION (number, Read-only)
--
-- @field VS_USERACCESSIBLE (number, Read-only)
--
--- @field WS_INVISIBLE (number, Read-only)
---
--- @field WS_VISIBLEAFTERINDENT (number, Read-only)
---
--- @field WS_VISIBLEALWAYS (number, Read-only)
---
--- @field ALPHA_NOALPHA (number, Read-only)
---
--- @field ALPHA_OPAQUE (number, Read-only)
---
--- @field ALPHA_TRANSPARENT (number, Read-only)
---
--- @field AUTOMATICFOLD_CHANGE (number, Read-only)
---
--- @field AUTOMATICFOLD_CLICK (number, Read-only)
---
--- @field AUTOMATICFOLD_SHOW (number, Read-only)
---
-- @field CARETSTICKY_OFF (number, Read-only)
--
-- @field CARETSTICKY_ON (number, Read-only)
@@ -1078,44 +384,12 @@
--
-- @field CASEINSENSITIVEBEHAVIOUR_RESPECTCASE (number, Read-only)
--
--- @field CASE_LOWER (number, Read-only)
---
--- @field CASE_MIXED (number, Read-only)
---
--- @field CASE_UPPER (number, Read-only)
---
--- @field CURSORARROW (number, Read-only)
---
--- @field CURSORNORMAL (number, Read-only)
---
--- @field CURSORREVERSEARROW (number, Read-only)
---
--- @field CURSORWAIT (number, Read-only)
---
-- @field EOL_CR (number, Read-only)
--
-- @field EOL_CRLF (number, Read-only)
--
-- @field EOL_LF (number, Read-only)
--
--- @field FOLDACTION_CONTRACT (number, Read-only)
---
--- @field FOLDACTION_EXPAND (number, Read-only)
---
--- @field FOLDACTION_TOGGLE (number, Read-only)
---
--- @field FOLDFLAG_LEVELNUMBERS (number, Read-only)
---
--- @field FOLDFLAG_LINEAFTER_CONTRACTED (number, Read-only)
---
--- @field FOLDFLAG_LINEAFTER_EXPANDED (number, Read-only)
---
--- @field FOLDFLAG_LINEBEFORE_CONTRACTED (number, Read-only)
---
--- @field FOLDFLAG_LINEBEFORE_EXPANDED (number, Read-only)
---
--- @field FOLDFLAG_LINESTATE (number, Read-only)
---
-- @field FOLDLEVELBASE (number, Read-only)
--
-- @field FOLDLEVELHEADERFLAG (number, Read-only)
@@ -1124,31 +398,9 @@
--
-- @field FOLDLEVELWHITEFLAG (number, Read-only)
--
--- @field IV_LOOKBOTH (number, Read-only)
---
--- @field IV_LOOKFORWARD (number, Read-only)
---
--- @field IV_NONE (number, Read-only)
---
--- @field IV_REAL (number, Read-only)
---
--- @field MARGINOPTION_NONE (number, Read-only)
---
--- @field MARGINOPTION_SUBLINESELECT (number, Read-only)
---
--- @field MARGIN_BACK (number, Read-only)
---
--- @field MARGIN_COLOUR (number, Read-only)
---
--- @field MARGIN_FORE (number, Read-only)
---
--- @field MARGIN_NUMBER (number, Read-only)
---
--- @field MARGIN_RTEXT (number, Read-only)
---
--- @field MARGIN_SYMBOL (number, Read-only)
+-- @field INDICATOR_MAX (number, Read-only)
--
--- @field MARGIN_TEXT (number, Read-only)
+-- @field MARK_AVAILABLE (number, Read-only)
--
-- @field MARKER_MAX (number, Read-only)
--
@@ -1166,76 +418,6 @@
--
-- @field MARKNUM_FOLDERTAIL (number, Read-only)
--
--- @field MARK_ARROW (number, Read-only)
---
--- @field MARK_ARROWDOWN (number, Read-only)
---
--- @field MARK_ARROWS (number, Read-only)
---
--- @field MARK_AVAILABLE (number, Read-only)
---
--- @field MARK_BACKGROUND (number, Read-only)
---
--- @field MARK_BOOKMARK (number, Read-only)
---
--- @field MARK_BOXMINUS (number, Read-only)
---
--- @field MARK_BOXMINUSCONNECTED (number, Read-only)
---
--- @field MARK_BOXPLUS (number, Read-only)
---
--- @field MARK_BOXPLUSCONNECTED (number, Read-only)
---
--- @field MARK_CHARACTER (number, Read-only)
---
--- @field MARK_CIRCLE (number, Read-only)
---
--- @field MARK_CIRCLEMINUS (number, Read-only)
---
--- @field MARK_CIRCLEMINUSCONNECTED (number, Read-only)
---
--- @field MARK_CIRCLEPLUS (number, Read-only)
---
--- @field MARK_CIRCLEPLUSCONNECTED (number, Read-only)
---
--- @field MARK_DOTDOTDOT (number, Read-only)
---
--- @field MARK_EMPTY (number, Read-only)
---
--- @field MARK_FULLRECT (number, Read-only)
---
--- @field MARK_LCORNER (number, Read-only)
---
--- @field MARK_LCORNERCURVE (number, Read-only)
---
--- @field MARK_LEFTRECT (number, Read-only)
---
--- @field MARK_MINUS (number, Read-only)
---
--- @field MARK_PIXMAP (number, Read-only)
---
--- @field MARK_PLUS (number, Read-only)
---
--- @field MARK_RGBAIMAGE (number, Read-only)
---
--- @field MARK_ROUNDRECT (number, Read-only)
---
--- @field MARK_SHORTARROW (number, Read-only)
---
--- @field MARK_SMALLRECT (number, Read-only)
---
--- @field MARK_TCORNER (number, Read-only)
---
--- @field MARK_TCORNERCURVE (number, Read-only)
---
--- @field MARK_UNDERLINE (number, Read-only)
---
--- @field MARK_VERTICALBOOKMARK (number, Read-only)
---
--- @field MARK_VLINE (number, Read-only)
---
--- @field MASK_FOLDERS (number, Read-only)
---
-- @field MULTIAUTOC_EACH (number, Read-only)
--
-- @field MULTIAUTOC_ONCE (number, Read-only)
@@ -1258,66 +440,12 @@
--
-- @field SEL_THIN (number, Read-only)
--
--- @field TIME_FOREVER (number, Read-only)
+-- @field STYLE_MAX (number, Read-only)
--
-- @field UPDATE_CONTENT (number, Read-only)
--
--- @field UPDATE_H_SCROLL (number, Read-only)
---
-- @field UPDATE_SELECTION (number, Read-only)
--
--- @field UPDATE_V_SCROLL (number, Read-only)
---
--- @field WRAPINDENT_FIXED (number, Read-only)
---
--- @field WRAPINDENT_INDENT (number, Read-only)
---
--- @field WRAPINDENT_SAME (number, Read-only)
---
--- @field WRAPVISUALFLAGLOC_DEFAULT (number, Read-only)
---
--- @field WRAPVISUALFLAGLOC_END_BY_TEXT (number, Read-only)
---
--- @field WRAPVISUALFLAGLOC_START_BY_TEXT (number, Read-only)
---
--- @field WRAPVISUALFLAG_END (number, Read-only)
---
--- @field WRAPVISUALFLAG_MARGIN (number, Read-only)
---
--- @field WRAPVISUALFLAG_NONE (number, Read-only)
---
--- @field WRAPVISUALFLAG_START (number, Read-only)
---
--- @field WRAP_CHAR (number, Read-only)
---
--- @field WRAP_NONE (number, Read-only)
---
--- @field WRAP_WHITESPACE (number, Read-only)
---
--- @field WRAP_WORD (number, Read-only)
---
--- @field STYLE_BRACEBAD (number, Read-only)
---
--- @field STYLE_BRACELIGHT (number, Read-only)
---
--- @field STYLE_CALLTIP (number, Read-only)
---
--- @field STYLE_CONTROLCHAR (number, Read-only)
---
--- @field STYLE_DEFAULT (number, Read-only)
---
--- @field STYLE_FOLDDISPLAYTEXT (number, Read-only)
---
--- @field STYLE_INDENTGUIDE (number, Read-only)
---
--- @field STYLE_LINENUMBER (number, Read-only)
---
--- @field STYLE_MAX (number, Read-only)
---
--- @field VISIBLE_SLOP (number, Read-only)
---
--- @field VISIBLE_STRICT (number, Read-only)
---
module('buffer')
---
@@ -1418,43 +546,6 @@ function back_tab(buffer) end
function begin_undo_action(buffer) end
---
--- Highlights the character at position *pos* as an unmatched brace character
--- using the `'style.bracebad'` style.
--- Removes highlighting when *pos* is `-1`.
--- @param buffer A buffer.
--- @param pos The position in *buffer* to highlight, or `-1` to remove the
--- highlight.
-function brace_bad_light(buffer, pos) end
-
----
--- Highlights unmatched brace characters with indicator number *indicator*, in
--- the range of `1 to `32`, instead of the
--- `buffer.STYLE_BRACEBAD` style if *use_indicator* is `true`.
--- @param buffer A buffer.
--- @param use_indicator Whether or not to use an indicator.
--- @param indicator The indicator number to use.
-function brace_bad_light_indicator(buffer, use_indicator, indicator) end
-
----
--- Highlights the characters at positions *pos1* and *pos2* as matching braces
--- using the `'style.bracelight'` style.
--- If indent guides are enabled, locates the column with `buffer.column` and
--- sets `buffer.highlight_guide` in order to highlight the indent guide.
--- @param buffer A buffer.
--- @param pos1 The first position in *buffer* to highlight.
--- @param pos2 The second position in *buffer* to highlight.
-function brace_highlight(buffer, pos1, pos2) end
-
----
--- Highlights matching brace characters with indicator number *indicator*, in
--- the range of `1` to `32`, instead of the
--- `buffer.STYLE_BRACELIGHT` style if *use_indicator* is `true`.
--- @param buffer A buffer.
--- @param use_indicator Whether or not to use an indicator.
--- @param indicator The indicator number to use.
-function brace_highlight_indicator(buffer, use_indicator, indicator) end
-
----
-- Returns the position of the matching brace for the brace character at
-- position *pos*, taking nested braces into account, or `-1`.
-- The brace characters recognized are '(', ')', '[', ']', '{', '}', '<', and
@@ -1483,14 +574,6 @@ function call_tip_cancel(buffer) end
function call_tip_pos_start(buffer) end
---
--- Highlights a call tip's text between positions *start_pos* to *end_pos* with
--- the color `buffer.call_tip_fore_hlt`.
--- @param buffer A buffer.
--- @param start_pos The start position in a call tip text to highlight.
--- @param end_pos The end position in a call tip text to highlight.
-function call_tip_set_hlt(buffer, start_pos, end_pos) end
-
----
-- Displays a call tip at position *pos* with string *text* as the call tip's
-- contents.
-- Any "\001" or "\002" bytes in *text* are replaced by clickable up or down
@@ -1576,19 +659,6 @@ function clear_all(buffer) end
function clear_document_style(buffer) end
---
--- Clears all images registered using `buffer.register_image()` and
--- `buffer.register_rgba_image()`.
--- @param buffer A buffer.
-function clear_registered_images(buffer) end
-
----
--- Removes the alternate string representation for character *char*.
--- @param buffer A buffer.
--- @param char The character in `buffer.representations` to remove the alternate
--- string representation for.
-function clear_representation(buffer, char) end
-
----
-- Removes all selections and moves the caret to the beginning of the buffer.
-- @param buffer A buffer.
function clear_selections(buffer) end
@@ -1605,14 +675,6 @@ function clear_selections(buffer) end
function colourise(buffer, start_pos, end_pos) end
---
--- Returns the line number of the next contracted fold point starting from line
--- number *line*, or `-1` if none exists.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to start at.
--- @return number
-function contracted_fold_next(buffer, line) end
-
----
-- Converts all end of line characters to those in end of line mode *mode*.
-- @param buffer A buffer.
-- @param mode The end of line mode to convert to. Valid values are:
@@ -1720,17 +782,6 @@ function delete_back_not_line(buffer) end
function delete_range(buffer, pos, length) end
---
--- Returns the actual line number of displayed line number *display_line*,
--- taking hidden lines into account.
--- If *display_line* is less than or equal to `1`, returns `1`. If
--- *display_line* is greater than the number of displayed lines, returns
--- `buffer.line_count`.
--- @param buffer A buffer.
--- @param display_line The display line number to use.
--- @return number
-function doc_line_from_visible(buffer, display_line) end
-
----
-- Moves the caret to the end of the buffer.
-- @param buffer A buffer.
function document_end(buffer) end
@@ -1774,20 +825,6 @@ function empty_undo_buffer(buffer) end
function end_undo_action(buffer) end
---
--- Ensures line number *line* is visible by expanding any fold points hiding it.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to ensure visible.
-function ensure_visible(buffer, line) end
-
----
--- Ensures line number *line* is visible by expanding any fold points hiding it
--- based on the vertical caret policy previously defined in
--- `buffer.set_visible_policy()`.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to ensure visible.
-function ensure_visible_enforce_policy(buffer, line) end
-
----
-- Returns the position of column number *column* on line number *line* (taking
-- tab and multi-byte characters into account), or the position at the end of
-- line *line*.
@@ -1797,50 +834,12 @@ function ensure_visible_enforce_policy(buffer, line) end
function find_column(buffer, line, column) end
---
--- Contracts, expands, or toggles all fold points, depending on *action*.
--- When toggling, the state of the first fold point determines whether to
--- expand or contract.
--- @param buffer A buffer.
--- @param action The fold action to perform. Valid values are:
--- * `buffer.FOLDACTION_CONTRACT`
--- * `buffer.FOLDACTION_EXPAND`
--- * `buffer.FOLDACTION_TOGGLE`
-function fold_all(buffer, action) end
-
----
--- Contracts, expands, or toggles the fold point on line number *line*, as well
--- as all of its children, depending on *action*.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to set the fold states for.
--- @param action The fold action to perform. Valid values are:
--- * `buffer.FOLDACTION_CONTRACT`
--- * `buffer.FOLDACTION_EXPAND`
--- * `buffer.FOLDACTION_TOGGLE`
-function fold_children(buffer, line, action) end
-
----
--- Contracts, expands, or toggles the fold point on line number *line*,
--- depending on *action*.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to set the fold state for.
--- @param action The fold action to perform. Valid values are:
--- * `buffer.FOLDACTION_CONTRACT`
--- * `buffer.FOLDACTION_EXPAND`
--- * `buffer.FOLDACTION_TOGGLE`
-function fold_line(buffer, line, action) end
-
----
-- Returns the current line's text and the caret's position on that line.
-- @param buffer A buffer.
-- @return string, number
function get_cur_line(buffer) end
---
--- Returns the default fold display text.
--- @param buffer A buffer.
-function get_default_fold_display_text(buffer) end
-
----
-- Returns the line number of the last line after line number *line* whose fold
-- level is greater than *level*.
-- If *level* is `-1`, returns the level of *line*.
@@ -1898,15 +897,6 @@ function goto_line(buffer, line) end
function goto_pos(buffer, pos) end
---
--- Hides the range of lines between line numbers *start_line* to *end_line*.
--- This has no effect on fold levels or fold flags and the first line cannot be
--- hidden.
--- @param buffer A buffer.
--- @param start_line The start line of the range of lines in *buffer* to hide.
--- @param end_line The end line of the range of lines in *buffer* to hide.
-function hide_lines(buffer, start_line, end_line) end
-
----
-- Moves the caret to the beginning of the current line.
-- @param buffer A buffer.
function home(buffer) end
@@ -2115,24 +1105,6 @@ function line_length(buffer, line) end
function line_reverse(buffer) end
---
--- Scrolls the buffer right *columns* columns and down *lines* lines.
--- Negative values are allowed.
--- @param buffer A buffer.
--- @param columns The number of columns to scroll horizontally.
--- @param lines The number of lines to scroll vertically.
-function line_scroll(buffer, columns, lines) end
-
----
--- Scrolls the buffer down one line, keeping the caret visible.
--- @param buffer A buffer.
-function line_scroll_down(buffer) end
-
----
--- Scrolls the buffer up one line, keeping the caret visible.
--- @param buffer A buffer.
-function line_scroll_up(buffer) end
-
----
-- Swaps the current line with the previous one.
-- @param buffer A buffer.
function line_transpose(buffer) end
@@ -2201,51 +1173,6 @@ function marker_add(buffer, line, marker) end
function marker_add_set(buffer, line, marker_mask) end
---
--- Assigns marker symbol *symbol* to marker number *marker*, in the range of `1`
--- to `32`.
--- *symbol* is shown in marker symbol margins next to lines marked with
--- *marker*.
--- @param buffer A buffer.
--- @param marker The marker number in the range of `1` to `32` to set *symbol*
--- for.
--- @param symbol The marker symbol: `buffer.MARK_*`.
--- @see _SCINTILLA.next_marker_number
-function marker_define(buffer, marker, symbol) end
-
----
--- Associates marker number *marker*, in the range of `1` to `32`, with XPM
--- image *pixmap*.
--- The `buffer.MARK_PIXMAP` marker symbol must be assigned to *marker*.
--- *pixmap* is shown in marker symbol margins next to lines marked with
--- *marker*.
--- @param buffer A buffer.
--- @param marker The marker number in the range of `1` to `32` to define
--- pixmap *pixmap* for.
--- @param pixmap The string pixmap data.
-function marker_define_pixmap(buffer, marker, pixmap) end
-
----
--- Associates marker number *marker*, in the range of `1` to `32`, with RGBA
--- image *pixels*.
--- The dimensions for *pixels* (`buffer.rgba_image_width` and
--- `buffer.rgba_image_height`) must have already been defined. *pixels* is a
--- sequence of 4 byte pixel values (red, blue, green, and alpha) defining the
--- image line by line starting at the top-left pixel.
--- The `buffer.MARK_RGBAIMAGE` marker symbol must be assigned to *marker*.
--- *pixels* is shown in symbol margins next to lines marked with *marker*.
--- @param buffer A buffer.
--- @param marker The marker number in the range of `1` to `32` to define RGBA
--- data *pixels* for.
--- @param pixels The string sequence of 4 byte pixel values starting with the
--- pixels for the top line, with the leftmost pixel first, then continuing
--- with the pixels for subsequent lines. There is no gap between lines for
--- alignment reasons. Each pixel consists of, in order, a red byte, a green
--- byte, a blue byte and an alpha byte. The colour bytes are not premultiplied
--- by the alpha value. That is, a fully red pixel that is 25% opaque will be
--- `[FF, 00, 00, 3F]`.
-function marker_define_rgba_image(buffer, marker, pixels) end
-
----
-- Deletes marker number *marker*, in the range of `1` to `32`, from line number
-- *line*. If *marker* is `-1`, deletes all markers from *line*.
-- @param buffer A buffer.
@@ -2270,13 +1197,6 @@ function marker_delete_all(buffer, marker) end
function marker_delete_handle(buffer, handle) end
---
--- Highlights the margin fold markers for the current fold block if *enabled* is
--- `true`.
--- @param buffer A buffer.
--- @param enabled Whether or not to enable highlight.
-function marker_enable_highlight(buffer, enabled) end
-
----
-- Returns a bit-mask that represents the markers that were added to line number
-- *line*.
-- The first bit is set if marker number 1 is present, the second bit for marker
@@ -2337,16 +1257,6 @@ function marker_number_from_line(buffer, line, n) end
function marker_previous(buffer, line, marker_mask) end
---
--- Returns the symbol assigned to marker number *marker*, in the range of `1` to
--- `32`, used in `buffer.marker_define()`,
--- `buffer.marker_define_pixmap()`, or `buffer.marker_define_rgba_image()`.
--- @param buffer A buffer.
--- @param marker The marker number in the range of `1` to `32` to get the symbol
--- of.
--- @return number
-function marker_symbol_defined(buffer, marker) end
-
----
-- Moves the caret into view if it is not already, removing any selections.
-- @param buffer A buffer.
function move_caret_inside_view(buffer) end
@@ -2377,19 +1287,6 @@ function multiple_select_add_each(buffer) end
function multiple_select_add_next(buffer) end
---
--- Adds a new vertical line at column number *column* with color *color*, in
--- "0xBBGGRR" format.
--- @param buffer A buffer.
--- @param column The column number to add a vertical line at.
--- @param color The color in "0xBBGGRR" format.
-function multi_edge_add_line(buffer, column, color) end
-
----
--- Clears all vertical lines created by `buffer:multi_edge_add_line()`.
--- @param buffer A buffer.
-function multi_edge_clear_all(buffer) end
-
----
-- Returns the name of style number *style*, which is between `1` and `256`.
-- @param buffer A buffer.
-- @param style The style number between `1` and `256` to get the name of.
@@ -2510,27 +1407,6 @@ function position_relative(buffer, pos, n) end
function redo(buffer) end
---
--- Registers XPM image *xpm_data* to type number *type* for use in
--- autocompletion and user lists.
--- @param buffer A buffer.
--- @param type Integer type to register the image with.
--- @param xpm_data The XPM data as described in `buffer.marker_define_pixmap()`.
-function register_image(buffer, type, xpm_data) end
-
----
--- Registers RGBA image *pixels* to type number *type* for use in autocompletion
--- and user lists.
--- The dimensions for *pixels* (`buffer.rgba_image_width` and
--- `buffer.rgba_image_height`) must have already been defined. *pixels* is a
--- sequence of 4 byte pixel values (red, blue, green, and alpha) defining the
--- image line by line starting at the top-left pixel.
--- @param buffer A buffer.
--- @param type Integer type to register the image with.
--- @param pixels The RGBA data as described in
--- `buffer.marker_define_rgba_image()`.
-function register_rgba_image(buffer, type, pixels) end
-
----
-- Replaces the selected text with string *text*, scrolling the caret into view.
-- @param buffer A buffer.
-- @param text The text to replace the selected text with.
@@ -2562,35 +1438,6 @@ function replace_target_re(buffer, text) end
function rotate_selection(buffer) end
---
--- Scrolls the caret into view based on the policies previously defined in
--- `buffer.set_x_caret_policy()` and `buffer.set_y_caret_policy()`.
--- @param buffer A buffer.
--- @see set_x_caret_policy
--- @see set_y_caret_policy
-function scroll_caret(buffer) end
-
----
--- Scrolls into view the range of text between positions *primary_pos* and
--- *secondary_pos*, with priority given to *primary_pos*.
--- Similar to `buffer.scroll_caret()`, but with *primary_pos* instead of
--- `buffer.current_pos`.
--- This is useful for scrolling search results into view.
--- @param buffer A buffer.
--- @param secondary_pos The secondary range position to scroll into view.
--- @param primary_pos The primary range position to scroll into view.
-function scroll_range(buffer, secondary_pos, primary_pos) end
-
----
--- Scrolls to the end of the buffer without moving the caret.
--- @param buffer A buffer.
-function scroll_to_end(buffer) end
-
----
--- Scrolls to the beginning of the buffer without moving the caret.
--- @param buffer A buffer.
-function scroll_to_start(buffer) end
-
----
-- Anchors the position that `buffer.search_next()` and `buffer.search_prev()`
-- start at to the beginning of the current selection or caret position.
-- @param buffer A buffer.
@@ -2651,13 +1498,6 @@ function selection_duplicate(buffer) end
function set_chars_default(buffer) end
---
--- Sets the default fold display text to string *text*.
--- @param buffer A buffer.
--- @param text The text to display by default next to folded lines.
--- @see toggle_fold_show_text
-function set_default_fold_display_text(buffer, text) end
-
----
-- Moves the caret to position *pos* without scrolling the view and removes any
-- selections.
-- @param buffer A buffer
@@ -2665,23 +1505,6 @@ function set_default_fold_display_text(buffer, text) end
function set_empty_selection(buffer, pos) end
---
--- Overrides the fold margin's default color with color *color*, in "0xBBGGRR"
--- format,
--- if *use_setting* is `true`.
--- @param buffer A buffer.
--- @param use_setting Whether or not to use *color*.
--- @param color The color in "0xBBGGRR" format.
-function set_fold_margin_colour(buffer, use_setting, color) end
-
----
--- Overrides the fold margin's default highlight color with color *color*, in
--- "0xBBGGRR" format, if *use_setting* is `true`.
--- @param buffer A buffer.
--- @param use_setting Whether or not to use *color*.
--- @param color The color in "0xBBGGRR" format.
-function set_fold_margin_hi_colour(buffer, use_setting, color) end
-
----
-- Indicates the buffer has no unsaved changes.
-- @param buffer A buffer.
function set_save_point(buffer) end
@@ -2698,24 +1521,6 @@ function set_save_point(buffer) end
function set_sel(buffer, start_pos, end_pos) end
---
--- Overrides the selection's default background color with color *color*, in
--- "0xBBGGRR" format, if *use_setting* is `true`.
--- Overwrites any existing `buffer.additional_sel_back` color.
--- @param buffer A buffer.
--- @param use_setting Whether or not to use *color*.
--- @param color The color in "0xBBGGRR" format.
-function set_sel_back(buffer, use_setting, color) end
-
----
--- Overrides the selection's default foreground color with color *color*, in
--- "0xBBGGRR" format, if *use_setting* is `true`.
--- Overwrites any existing `buffer.additional_sel_fore` color.
--- @param buffer A buffer.
--- @param use_setting Whether or not to use *color*.
--- @param color The color in "0xBBGGRR" format.
-function set_sel_fore(buffer, use_setting, color) end
-
----
-- Selects the range of text between positions *start_pos* to *end_pos*,
-- removing all other selections.
-- @param buffer A buffer.
@@ -2749,59 +1554,6 @@ function set_target_range(buffer, start_pos, end_pos) end
function set_text(buffer, text) end
---
--- Defines scrolling policy bit-mask *policy* as the policy for keeping the
--- caret *y* number of lines away from the vertical margins as
--- `buffer.ensure_visible_enforce_policy()` redisplays hidden or folded lines.
--- It is similar in operation to `buffer.set_y_caret_policy()`.
--- @param buffer A buffer.
--- @param policy The combination of `buffer.VISIBLE_SLOP` and
--- `buffer.VISIBLE_STRICT` policy flags to set.
--- @param y The number of lines from the vertical margins to keep the caret.
-function set_visible_policy(buffer, policy, y) end
-
----
--- Overrides the background color of whitespace with color *color*, in
--- "0xBBGGRR" format, if *use_setting* is `true`.
--- @param buffer A buffer.
--- @param use_setting Whether or not to use *color*.
--- @param color The color in "0xBBGGRR" format.
-function set_whitespace_back(buffer, use_setting, color) end
-
----
--- Overrides the foreground color of whitespace with color *color*, in
--- "0xBBGGRR" format, if *use_setting* is `true`.
--- @param use_setting Whether or not to use *color*.
--- @param color The color in "0xBBGGRR" format.
-function set_whitespace_fore(buffer, use_setting, color) end
-
----
--- Defines scrolling policy bit-mask *policy* as the policy for keeping the
--- caret *x* number of pixels away from the horizontal margins.
--- @param buffer A buffer.
--- @param policy The combination of `buffer.CARET_SLOP`, `buffer.CARET_STRICT`,
--- `buffer.CARET_EVEN`, and `buffer.CARET_JUMPS` policy flags to set.
--- @param x The number of pixels from the horizontal margins to keep the caret.
-function set_x_caret_policy(buffer, policy, x) end
-
----
--- Defines scrolling policy bit-mask *policy* as the policy for keeping the
--- caret *y* number of lines away from the vertical margins.
--- @param buffer A buffer.
--- @param policy The combination of `buffer.CARET_SLOP`, `buffer.CARET_STRICT`,
--- `buffer.CARET_EVEN`, and `buffer.CARET_JUMPS` policy flags to set.
--- @param y The number of lines from the vertical margins to keep the caret.
-function set_y_caret_policy(buffer, policy, y) end
-
----
--- Shows the range of lines between line numbers *start_line* to *end_line*.
--- This has no effect on fold levels or fold flags and the first line cannot be
--- hidden.
--- @param buffer A buffer.
--- @param start_line The start line of the range of lines in *buffer* to show.
--- @param end_line The end line of the range of lines in *buffer* to show.
-function show_lines(buffer, start_line, end_line) end
-
----
-- Begins styling at position *position* with styling bit-mask *style_mask*.
-- *style_mask* specifies which style bits can be set with
-- `buffer.set_styling()`.
@@ -2836,16 +1588,6 @@ function stuttered_page_up(buffer) end
function stuttered_page_up_extend(buffer) end
---
--- Reverts all styles to having the same properties as `buffer.STYLE_DEFAULT`.
--- @param buffer A buffer.
-function style_clear_all(buffer) end
-
----
--- Resets `buffer.STYLE_DEFAULT` to its initial state.
--- @param buffer A buffer.
-function style_reset_default(buffer) end
-
----
-- Swaps the main selection's beginning and end positions.
-- @param buffer A buffer.
function swap_main_anchor_caret(buffer) end
@@ -2869,22 +1611,6 @@ function target_from_selection(buffer) end
function target_whole_document(buffer) end
---
--- Returns the pixel height of line number *line*.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to get the pixel height of.
--- @return number
-function text_height(buffer, line) end
-
----
--- Returns the pixel width string *text* would have when styled with style
--- number *style_num*, in the range of `1` to `256`.
--- @param buffer A buffer.
--- @param style_num The style number between `1` and `256` to use.
--- @param text The text to measure the width of.
--- @return number
-function text_width(buffer, style_num, text) end
-
----
-- Cycles between `buffer.caret_sticky` option settings `buffer.CARETSTICKY_ON`
-- and `buffer.CARETSTICKY_OFF`.
-- @param buffer A buffer.
@@ -2892,26 +1618,6 @@ function text_width(buffer, style_num, text) end
function toggle_caret_sticky(buffer) end
---
--- Toggles the fold point on line number *line* between expanded (where all of
--- its child lines are displayed) and contracted (where all of its child lines
--- are hidden).
--- @param buffer A buffer.
--- @param line The line number in *buffer* to toggle the fold on.
--- @see set_default_fold_display_text
-function toggle_fold(buffer, line) end
-
----
--- Toggles a fold point on line number *line* between expanded (where all of
--- its child lines are displayed) and contracted (where all of its child lines
--- are hidden), and shows string *text* after the line.
--- *text* is drawn with style number `buffer.STYLE_FOLDDISPLAYTEXT`.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to toggle the fold on and display
--- *text* after.
--- @param text The text to display after the line.
-function toggle_fold_show_text(buffer, line, text) end
-
----
-- Undoes the most recent action.
-- @param buffer A buffer.
function undo(buffer) end
@@ -2978,21 +1684,6 @@ function vc_home_wrap(buffer) end
function vc_home_wrap_extend(buffer) end
---
--- Centers current line in the view.
--- @param buffer A buffer.
-function vertical_centre_caret(buffer) end
-
----
--- Returns the displayed line number of actual line number *line*, taking hidden
--- lines into account, or `-1` if *line* is outside the range of lines in the
--- buffer.
--- Lines can occupy more than one display line if they wrap.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to use.
--- @return number
-function visible_from_doc_line(buffer, line) end
-
----
-- Returns the position of the end of the word at position *pos*.
-- `buffer.word_chars` contains the set of characters that constitute words. If
-- *pos* has a non-word character to its right and *only_word_chars* is `false`,
@@ -3106,24 +1797,6 @@ function word_right_extend(buffer) end
-- terminated by the start or end of the buffer.
function word_start_position(buffer, pos, only_word_chars) end
----
--- Returns the number of wrapped lines needed to fully display line number
--- *line*.
--- @param buffer A buffer.
--- @param line The line number in *buffer* to use.
--- @return number
-function wrap_count(buffer, line) end
-
----
--- Increases the size of all fonts by one point, up to 20.
--- @param buffer A buffer.
-function zoom_in(buffer) end
-
----
--- Decreases the size of all fonts by one point, down to -10.
--- @param buffer A buffer.
-function zoom_out(buffer) end
-
-- External functions.
---
@@ -3262,7 +1935,6 @@ function set_theme(buffer, name, props) end
-- * margin_styles
-- * max_line_state
-- * mod_event_mask
--- * modify
-- * mouse_down_captures
-- * paste_convert_endings
-- * phases_draw
diff --git a/core/.iconv.luadoc b/core/.iconv.luadoc
index 0b8362e4..162938e8 100644
--- a/core/.iconv.luadoc
+++ b/core/.iconv.luadoc
@@ -1,4 +1,4 @@
--- Copyright 2007-2018 Mitchell mitchell.att.foicica.com. See LICENSE.
+-- Copyright 2007-2020 Mitchell mitchell.att.foicica.com. See LICENSE.
-- This is a DUMMY FILE used for making LuaDoc for built-in functions in the
-- string table.
diff --git a/core/.os.luadoc b/core/.os.luadoc
index fa118b0c..69132e6f 100644
--- a/core/.os.luadoc
+++ b/core/.os.luadoc
@@ -1,4 +1,4 @@
--- Copyright 2007-2018 Mitchell mitchell.att.foicica.com. See LICENSE.
+-- Copyright 2007-2020 Mitchell mitchell.att.foicica.com. See LICENSE.
-- This is a DUMMY FILE used for making LuaDoc for built-in functions in the
-- os table.
diff --git a/core/.ui.dialogs.luadoc b/core/.ui.dialogs.luadoc
index ac5bb7b5..aa7e6b77 100644
--- a/core/.ui.dialogs.luadoc
+++ b/core/.ui.dialogs.luadoc
@@ -1,4 +1,4 @@
--- Copyright 2007-2018 Mitchell mitchell.att.foicica.com. See LICENSE.
+-- Copyright 2007-2020 Mitchell mitchell.att.foicica.com. See LICENSE.
-- This is a DUMMY FILE used for making LuaDoc for built-in functions in the
-- ui.dialogs table.
diff --git a/core/.view.luadoc b/core/.view.luadoc
index bf190ee3..7f1477af 100644
--- a/core/.view.luadoc
+++ b/core/.view.luadoc
@@ -1,10 +1,916 @@
--- Copyright 2007-2018 Mitchell mitchell.att.foicica.com. See LICENSE.
+-- Copyright 2007-2020 Mitchell mitchell.att.foicica.com. See LICENSE.
-- This is a DUMMY FILE used for making LuaDoc for Views.
---
-- A Textadept view object.
+-- Constants are documented in the fields they apply to.
+-- While you can work with individual view instances, it is often useful to work
+-- with just the global one.
+-- Many of these functions and fields are derived from view-specific
+-- functionality the Scintilla editing component, and additional information can
+-- be found on the Scintilla website:
+-- [http://scintilla.org/ScintillaDoc.html](
+-- http://scintilla.org/ScintillaDoc.html)
+-- Note that with regard to Scintilla-specific functionality, this API is a
+-- _suggestion_, not a hard requirement. All of that functionality also exists
+-- in [`buffer`](), even if undocumented.
+-- @field additional_caret_fore (number)
+-- The foreground color, in "0xBBGGRR" format, of additional carets.
+-- @field additional_carets_blink (bool)
+-- Allow additional carets to blink.
+-- The default value is `true`.
+-- @field additional_carets_visible (bool)
+-- Display additional carets.
+-- The default value is `true`.
+-- @field additional_sel_alpha (number)
+-- The alpha value, ranging from `0` (transparent) to `255` (opaque), of
+-- additional selections.
+-- The default value is `view.ALPHA_NOALPHA`, for no alpha.
+-- @field additional_sel_back (number, Write-only)
+-- The background color, in "0xBBGGRR" format, of additional selections.
+-- This field has no effect when calling `view:set_sel_back(false, ...)`.
+-- @field additional_sel_fore (number, Write-only)
+-- The foreground color, in "0xBBGGRR" format, of additional selections.
+-- This field has no effect when calling `view:set_sel_fore(false, ...)`.
+-- @field all_lines_visible (bool, Read-only)
+-- Whether or not all lines are visible.
+-- @field annotation_visible (number)
+-- The annotation visibility mode.
+--
+-- * `view.ANNOTATION_HIDDEN`
+-- Annotations are invisible.
+-- * `view.ANNOTATION_STANDARD`
+-- Draw annotations left-justified with no decoration.
+-- * `view.ANNOTATION_BOXED`
+-- Indent annotations to match the annotated text and outline them with a
+-- box.
+-- * `view.ANNOTATION_INDENTED`
+-- Indent non-decorated annotations to match the annotated text.
+--
+-- The default value is `view.ANNOTATION_HIDDEN`.
+-- @field auto_c_max_height (number)
+-- The maximum number of items per page to show in autocompletion and user
+-- lists. The default value is `5`.
+-- @field auto_c_max_width (number)
+-- The maximum number of characters per item to show in autocompletion and
+-- user lists.
+-- The default value is `0`, which automatically sizes the width to fit the
+-- longest item.
+-- @field call_tip_fore_hlt (number, Write-only)
+-- A call tip's highlighted text foreground color, in "0xBBGGRR" format.
+-- @field call_tip_position (boolean)
+-- Display a call tip above the current line instead of below it.
+-- The default value is `false`.
+-- @field call_tip_use_style (number)
+-- The pixel width of tab characters in call tips.
+-- When non-zero, also enables the use of style number `view.STYLE_CALLTIP`
+-- instead of `view.STYLE_DEFAULT` for call tip styles.
+-- The default value is `0`.
+-- @field caret_fore (number)
+-- The caret's foreground color, in "0xBBGGRR" format.
+-- @field caret_line_back (number)
+-- The background color, in "0xBBGGRR" format, of the line that contains the
+-- caret.
+-- @field caret_line_back_alpha (number)
+-- The caret line's background alpha value, ranging from `0` (transparent) to
+-- `255` (opaque).
+-- The default value is `view.ALPHA_NOALPHA`, for no alpha.
+-- @field caret_line_frame (number)
+-- The caret line's frame width in pixels.
+-- When non-zero, the line that contains the caret is framed instead of
+-- colored in. The `view.caret_line_back` and `view.caret_line_back_alpha`
+-- properties apply to the frame.
+-- The default value is `0`.
+-- @field caret_line_visible (bool)
+-- Color the background of the line that contains the caret a different color.
+-- The default value is `false`.
+-- @field caret_line_visible_always (bool)
+-- Always show the caret line, even when the window is not in focus.
+-- The default value is `false`, showing the line only when the window is in
+-- focus.
+-- @field caret_period (number)
+-- The time between caret blinks in milliseconds.
+-- A value of `0` stops blinking.
+-- The default value is `500`.
+-- @field caret_style (number)
+-- The caret's visual style.
+--
+-- * `view.CARETSTYLE_INVISIBLE`
+-- No caret.
+-- * `view.CARETSTYLE_LINE`
+-- A line caret.
+-- * `view.CARETSTYLE_BLOCK`
+-- A block caret.
+--
+-- Any block setting may be combined with `view.CARETSTYLE_BLOCK_AFTER` via
+-- bitwise OR (`|`) in order to draw the caret after the end of a selection,
+-- as opposed to just inside it.
+--
+-- The default value is `view.CARETSTYLE_LINE`.
+-- @field caret_width (number)
+-- The line caret's pixel width in insert mode, either `0`, `1`, `2`, or `3`.
+-- The default value is `1`.
+-- @field cursor (number)
+-- The display cursor type.
+--
+-- * `view.CURSORNORMAL`
+-- The text insert cursor.
+-- * `view.CURSORARROW`
+-- The arrow cursor.
+-- * `view.CURSORWAIT`
+-- The wait cursor.
+-- * `view.CURSORREVERSEARROW`
+-- The reversed arrow cursor.
+--
+-- The default value is `view.CURSORNORMAL`.
+-- @field edge_colour (number)
+-- The color, in "0xBBGGRR" format, of the single edge or background for long
+-- lines according to `view.edge_mode`.
+-- @field edge_column (number)
+-- The column number to mark long lines at.
+-- @field edge_mode (number)
+-- The long line mark mode.
+--
+-- * `view.EDGE_NONE`
+-- Long lines are not marked.
+-- * `view.EDGE_LINE`
+-- Draw a single vertical line whose color is [`view.edge_colour`]() at
+-- column [`view.edge_column`]().
+-- * `view.EDGE_BACKGROUND`
+-- Change the background color of text after column [`view.edge_column`]()
+-- to [`view.edge_colour`]().
+-- * `view.EDGE_MULTILINE`
+-- Draw vertical lines whose colors and columns are defined by calls to
+-- [`view:multi_edge_add_line()`]().
+-- @field end_at_last_line (bool)
+-- Disable scrolling past the last line.
+-- The default value is `true`.
+-- @field extra_ascent (number)
+-- The amount of pixel padding above lines.
+-- The default value is `0`.
+-- @field extra_descent (number)
+-- The amount of pixel padding below lines.
+-- The default is `0`.
+-- @field first_visible_line (number)
+-- The line number of the line at the top of the view.
+-- @field fold_display_text_style (number)
+-- The fold display text mode.
+--
+-- * `view.FOLDDISPLAYTEXT_HIDDEN`
+-- Fold display text is not shown.
+-- * `view.FOLDDISPLAYTEXT_STANDARD`
+-- Fold display text is shown with no decoration.
+-- * `view.FOLDDISPLAYTEXT_BOXED`
+-- Fold display text is shown outlined with a box.
+--
+-- The default value is `view.FOLDDISPLAYTEXT_HIDDEN`.
+-- @field fold_expanded (table)
+-- Table of flags per line number that indicate whether or not fold points are
+-- expanded for those line numbers.
+-- Setting expanded fold states does not toggle folds; it only updates fold
+-- margin markers. Use [`view.toggle_fold()`]() instead.
+-- @field fold_flags (number, Read-only)
+-- Bit-mask of folding lines to draw in the buffer.
+--
+-- * `view.FOLDFLAG_LINEBEFORE_EXPANDED`
+-- Draw lines above expanded folds.
+-- * `view.FOLDFLAG_LINEBEFORE_CONTRACTED`
+-- Draw lines above collapsed folds.
+-- * `view.FOLDFLAG_LINEAFTER_EXPANDED`
+-- Draw lines below expanded folds.
+-- * `view.FOLDFLAG_LINEAFTER_CONTRACTED`
+-- Draw lines below collapsed folds.
+-- * `view.FOLDFLAG_LEVELNUMBERS`
+-- Show hexadecimal fold levels in line margins.
+-- This option cannot be combined with `FOLDFLAG_LINESTATE`.
+-- * `view.FOLDFLAG_LINESTATE`
+-- Show line state in line margins.
+-- This option cannot be combined with `FOLDFLAG_LEVELNUMBERS`.
+--
+-- The default value is `0`.
+-- @field h_scroll_bar (bool)
+-- Display the horizontal scroll bar.
+-- The default value is `true`.
+-- @field highlight_guide (number)
+-- The indentation guide column number to also highlight when highlighting
+-- matching braces, or `0` to stop indentation guide highlighting.
+-- @field idle_styling (number)
+-- The idle styling mode.
+-- This mode has no effect when `view.wrap_mode` is on.
+--
+-- * `view.IDLESTYLING_NONE`
+-- Style all the currently visible text before displaying it.
+-- * `view.IDLESTYLING_TOVISIBLE`
+-- Style some text before displaying it and then style the rest
+-- incrementally in the background as an idle-time task.
+-- * `view.IDLESTYLING_AFTERVISIBLE`
+-- Style text after the currently visible portion in the background.
+-- * `view.IDLESTYLING_ALL`
+-- Style text both before and after the visible text in the background.
+--
+-- The default value is `view.IDLESTYLING_NONE`.
+-- @field indentation_guides (number)
+-- The indentation guide drawing mode.
+-- Indentation guides are dotted vertical lines that appear within indentation
+-- whitespace at each level of indentation.
+--
+-- * `view.IV_NONE`
+-- Does not draw any guides.
+-- * `view.IV_REAL`
+-- Draw guides only within indentation whitespace.
+-- * `view.IV_LOOKFORWARD`
+-- Draw guides beyond the current line up to the next non-empty line's
+-- indentation level, but with an additional level if the previous non-empty
+-- line is a fold point.
+-- * `view.IV_LOOKBOTH`
+-- Draw guides beyond the current line up to either the indentation level of
+-- the previous or next non-empty line, whichever is greater.
+--
+-- The default value is `view.IV_NONE`.
+-- @field indic_alpha (table)
+-- Table of fill color alpha values, ranging from `0` (transparent) to `255`
+-- (opaque), for indicator numbers from `1` to `32` whose styles are either
+-- `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.
+-- The default values are `view.ALPHA_NOALPHA`, for no alpha.
+-- @field indic_fore (table)
+-- Table of foreground colors, in "0xBBGGRR" format, for indicator numbers
+-- from `1` to `32`.
+-- Changing an indicator's foreground color resets that indicator's hover
+-- foreground color.
+-- @field indic_hover_fore (table)
+-- Table of hover foreground colors, in "0xBBGGRR" format, for indicator
+-- numbers from `1` to `32`.
+-- The default values are the respective indicator foreground colors.
+-- @field indic_hover_style (table)
+-- Table of hover styles for indicators numbers from `1` to `32`. An
+-- indicator's hover style drawn when either the cursor hovers over that
+-- indicator or the caret is within that indicator.
+-- The default values are the respective indicator styles.
+-- @field indic_outline_alpha (table)
+-- Table of outline color alpha values, ranging from `0` (transparent) to
+-- `255` (opaque), for indicator numbers from `1` to `32` whose styles are
+-- either `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.
+-- The default values are `view.ALPHA_NOALPHA`, for no alpha.
+-- @field indic_style (table)
+-- Table of styles for indicator numbers from `1` to `32`.
+--
+-- * `view.INDIC_PLAIN`
+-- An underline.
+-- * `view.INDIC_SQUIGGLE`
+-- A squiggly underline 3 pixels in height.
+-- * `view.INDIC_TT`
+-- An underline of small 'T' shapes.
+-- * `view.INDIC_DIAGONAL`
+-- An underline of diagonal hatches.
+-- * `view.INDIC_STRIKE`
+-- Strike out.
+-- * `view.INDIC_HIDDEN`
+-- Invisible.
+-- * `view.INDIC_BOX`
+-- A bounding box.
+-- * `view.INDIC_ROUNDBOX`
+-- A translucent box with rounded corners around the text. Use
+-- [`view.indic_alpha`]() and [`view.indic_outline_alpha`]() to set the
+-- fill and outline transparency, respectively. Their default values are
+-- `30` and `50`.
+-- * `view.INDIC_STRAIGHTBOX`
+-- Similar to `INDIC_ROUNDBOX` but with sharp corners.
+-- * `view.INDIC_DASH`
+-- A dashed underline.
+-- * `view.INDIC_DOTS`
+-- A dotted underline.
+-- * `view.INDIC_SQUIGGLELOW`
+-- A squiggly underline 2 pixels in height.
+-- * `view.INDIC_DOTBOX`
+-- Similar to `INDIC_STRAIGHTBOX` but with a dotted outline.
+-- Translucency alternates between [`view.indic_alpha`]() and
+-- [`view.indic_outline_alpha`]() starting with the top-left pixel.
+-- * `view.INDIC_SQUIGGLEPIXMAP`
+-- Identical to `INDIC_SQUIGGLE` but draws faster by using a pixmap instead
+-- of multiple line segments.
+-- * `view.INDIC_COMPOSITIONTHICK`
+-- A 2-pixel thick underline at the bottom of the line inset by 1 pixel on
+-- on either side. Similar in appearance to the target in Asian language
+-- input composition.
+-- * `view.INDIC_COMPOSITIONTHIN`
+-- A 1-pixel thick underline just before the bottom of the line inset by 1
+-- pixel on either side. Similar in appearance to the non-target ranges in
+-- Asian language input composition.
+-- * `view.INDIC_FULLBOX`
+-- Similar to `INDIC_STRAIGHTBOX` but extends to the top of its line,
+-- potentially touching any similar indicators on the line above.
+-- * `view.INDIC_TEXTFORE`
+-- Changes the color of text to an indicator's foreground color.
+-- * `view.INDIC_POINT`
+-- A triangle below the start of the indicator range.
+-- * `view.INDIC_POINTCHARACTER`
+-- A triangle below the centre of the first character of the indicator
+-- range.
+-- * `view.INDIC_GRADIENT`
+-- A box with a vertical gradient from solid on top to transparent on
+-- bottom.
+-- * `view.INDIC_GRADIENTCENTRE`
+-- A box with a centered gradient from solid in the middle to transparent on
+-- the top and bottom.
+--
+-- Use [`_SCINTILLA.next_indic_number()`]() for custom indicators.
+-- Changing an indicator's style resets that indicator's hover style.
+-- @field indic_under (table)
+-- Table of flags that indicate whether or not to draw indicators behind text
+-- instead of over the top of it for indicator numbers from `1` to `32`.
+-- The default values are `false`.
+-- @field line_visible (table, Read-only)
+-- Table of flags per line number that indicate whether or not lines are
+-- visible for those line numbers.
+-- @field lines_on_screen (number, Read-only)
+-- The number of completely visible lines in the view.
+-- It is possible to have a partial line visible at the bottom of the view.
+-- @field margins (number)
+-- The number of margins.
+-- The default value is `5`.
+-- @field margin_back_n (table)
+-- Table of background colors, in "0xBBGGRR" format, of margin numbers from
+-- `1` to `view.margins` (`5` by default).
+-- Only affects margins of type `view.MARGIN_COLOUR`.
+-- @field margin_cursor_n (table)
+-- Table of cursor types shown over margin numbers from `1` to
+-- `view.margins` (`5` by default).
+--
+-- * `view.CURSORARROW`
+-- Normal arrow cursor.
+-- * `view.CURSORREVERSEARROW`
+-- Reversed arrow cursor.
+--
+-- The default values are `view.CURSORREVERSEARROW`.
+-- @field margin_left (number)
+-- The pixel size of the left margin of the buffer text.
+-- The default value is `1`.
+-- @field margin_mask_n (table)
+-- Table of bit-masks of markers whose symbols marker symbol margins can
+-- display for margin numbers from `1` to `view.margins` (`5` by default).
+-- Bit-masks are 32-bit values whose bits correspond to the 32 available
+-- markers.
+-- The default values are `0`, `view.MASK_FOLDERS`, `0`, `0`, and `0`, for
+-- a line margin and logical marker margin.
+-- @field margin_options (number)
+-- A bit-mask of margin option settings.
+--
+-- * `view.MARGINOPTION_NONE`
+-- None.
+-- * `view.MARGINOPTION_SUBLINESELECT`
+-- Select only a wrapped line's sub-line (rather than the entire line) when
+-- the line number margin is clicked.
+--
+-- The default value is `view.MARGINOPTION_NONE`.
+-- @field margin_right (number)
+-- The pixel size of the right margin of the buffer text.
+-- The default value is `1`.
+-- @field margin_sensitive_n (table)
+-- Table of flags that indicate whether or not mouse clicks in margins emit
+-- `MARGIN_CLICK` events for margin numbers from `1` to `view.margins` (`5`
+-- by default).
+-- The default values are `false`.
+-- @field margin_type_n (table)
+-- Table of margin types for margin numbers from `1` to `view.margins` (`5`
+-- by default).
+--
+-- * `view.MARGIN_SYMBOL`
+-- A marker symbol margin.
+-- * `view.MARGIN_NUMBER`
+-- A line number margin.
+-- * `view.MARGIN_BACK`
+-- A marker symbol margin whose background color matches the default text
+-- background color.
+-- * `view.MARGIN_FORE`
+-- A marker symbol margin whose background color matches the default text
+-- foreground color.
+-- * `view.MARGIN_TEXT`
+-- A text margin.
+-- * `view.MARGIN_RTEXT`
+-- A right-justified text margin.
+-- * `view.MARGIN_COLOUR`
+-- A marker symbol margin whose background color is configurable.
+--
+-- The default value for the first margin is `view.MARGIN_NUMBER`, followed
+-- by `view.MARGIN_SYMBOL` for the rest.
+-- @field margin_width_n (table)
+-- Table of pixel margin widths for margin numbers from `1` to
+-- `view.margins` (`5` by default).
+-- @field marker_alpha (table, Write-only)
+-- Table of alpha values, ranging from `0` (transparent) to `255` (opaque),
+-- of markers drawn in the text area (not the margin) for markers numbers from
+-- `1` to `32`.
+-- The default values are `view.ALPHA_NOALPHA`, for no alpha.
+-- @field marker_back (table, Write-only)
+-- Table of background colors, in "0xBBGGRR" format, of marker numbers from
+-- `1` to `32`.
+-- @field marker_back_selected (table, Write-only)
+-- Table of background colors, in "0xBBGGRR" format, of markers whose folding
+-- blocks are selected for marker numbers from `1` to `32`.
+-- @field marker_fore (table, Write-only)
+-- Table of foreground colors, in "0xBBGGRR" format, of marker numbers from
+-- `1` to `32`.
+-- @field mouse_dwell_time (number)
+-- The number of milliseconds the mouse must idle before generating a
+-- `DWELL_START` event. A time of `view.TIME_FOREVER` will never generate
+-- one.
+-- @field mouse_selection_rectangular_switch (bool)
+-- Whether or not pressing [`view.rectangular_selection_modifier`]() when
+-- selecting text normally with the mouse turns on rectangular selection.
+-- The default value is `false`.
+-- @field rectangular_selection_modifier (number)
+-- The modifier key used in combination with a mouse drag in order to create a
+-- rectangular selection.
+--
+-- * `view.MOD_CTRL`
+-- The "Control" modifier key.
+-- * `view.MOD_ALT`
+-- The "Alt" modifier key.
+-- * `view.MOD_SUPER`
+-- The "Super" modifier key, usually defined as the left "Windows" or
+-- "Command" key.
+--
+-- The default value is `view.MOD_CTRL`.
+-- @field representation (table)
+-- The alternative string representations of characters.
+-- Representations are displayed in the same way control characters are. Use
+-- the empty string for the '\0' character when assigning its representation.
+-- Call [`view.clear_representation()`]() to remove a representation.
+-- @field rgba_image_height (number)
+-- The height of the RGBA image to be defined using
+-- [`view.marker_define_rgba_image()`]().
+-- @field rgba_image_scale (number)
+-- The scale factor in percent of the RGBA image to be defined using
+-- [`view.marker_define_rgba_image()`]().
+-- This is useful on OSX with a retina display where each display unit is 2
+-- pixels: use a factor of `200` so that each image pixel is displayed using a
+-- screen pixel. The default scale, `100`, will stretch each image pixel to
+-- cover 4 screen pixels on a retina display.
+-- @field rgba_image_width (number)
+-- The width of the RGBA image to be defined using
+-- [`view.marker_define_rgba_image()`]() and
+-- [`view.register_rgba_image()`]().
+-- @field scroll_width (number)
+-- The horizontal scrolling pixel width.
+-- For performance, the view does not measure the display width of the buffer
+-- to determine the properties of the horizontal scroll bar, but uses an
+-- assumed width instead. To ensure the width of the currently visible lines
+-- can be scrolled use [`view.scroll_width_tracking`]().
+-- The default value is `2000`.
+-- @field scroll_width_tracking (bool)
+-- Continuously update the horizontal scrolling width to match the maximum
+-- width of a displayed line beyond [`view.scroll_width`]().
+-- The default value is `false`.
+-- @field sel_alpha (number)
+-- The selection's alpha value, ranging from `0` (transparent) to `255`
+-- (opaque).
+-- The default value is `view.ALPHA_NOALPHA`, for no alpha.
+-- @field sel_eol_filled (bool)
+-- Extend the selection to the view's right margin.
+-- The default value is `false`.
-- @field size (number)
-- The split resizer's pixel position if the view is a split one.
+-- @field style_back (table)
+-- Table of background colors, in "0xBBGGRR" format, of text for style numbers
+-- from `1` to `256`.
+-- @field style_bold (table)
+-- Table of flags that indicate whether or not text is bold for style numbers
+-- from `1` to `256`.
+-- The default values are `false`.
+-- @field style_case (table)
+-- Table of letter case modes of text for style numbers from `1` to `256`.
+--
+-- * `view.CASE_MIXED`
+-- Display text in normally.
+-- * `view.CASE_UPPER`
+-- Display text in upper case.
+-- * `view.CASE_LOWER`
+-- Display text in lower case.
+-- * `view.CASE_CAMEL`
+-- Display text in camel case.
+--
+-- The default values are `view.CASE_MIXED`.
+-- @field style_changeable (table)
+-- Table of flags that indicate whether or not text is changeable for style
+-- numbers from `1` to `256`.
+-- The default values are `true`.
+-- Read-only styles do not allow the caret into the range of text.
+-- @field style_eol_filled (table)
+-- Table of flags that indicate whether or not the background colors of styles
+-- whose characters occur last on lines extend all the way to the view's right
+-- margin for style numbers from `1` to `256`.
+-- The default values are `false`.
+-- @field style_font (table)
+-- Table of string font names of text for style numbers from `1` to `256`.
+-- @field style_fore (table)
+-- Table of foreground colors, in "0xBBGGRR" format, of text for style numbers
+-- from `1` to `256`.
+-- @field style_italic (table)
+-- Table of flags that indicate whether or not text is italic for style
+-- numbers from `1` to `256`.
+-- The default values are `false`.
+-- @field style_size (table)
+-- Table of font sizes of text for style numbers from `1` to `256`.
+-- @field style_underline (table)
+-- Table of flags that indicate whether or not text is underlined for style
+-- numbers from `1` to `256`.
+-- The default values are `false`.
+-- @field style_visible (table)
+-- Table of flags that indicate whether or not text is visible for style
+-- numbers from `1` to `256`.
+-- The default values are `true`.
+-- @field tab_draw_mode (number)
+-- The draw mode of visible tabs.
+--
+-- * `view.TD_LONGARROW`
+-- An arrow that stretches until the tabstop.
+-- * `view.TD_STRIKEOUT`
+-- A horizontal line that stretches until the tabstop.
+--
+-- The default value is `view.TD_LONGARROW`.
+-- @field v_scroll_bar (bool)
+-- Display the vertical scroll bar.
+-- The default value is `true`.
+-- @field view_eol (bool)
+-- Display end of line characters.
+-- The default value is `false`.
+-- @field view_ws (number)
+-- The whitespace visibility mode.
+--
+-- * `view.WS_INVISIBLE`
+-- Whitespace is invisible.
+-- * `view.WS_VISIBLEALWAYS`
+-- Display all space characters as dots and tab characters as arrows.
+-- * `view.WS_VISIBLEAFTERINDENT`
+-- Display only non-indentation spaces and tabs as dots and arrows.
+-- * `view.WS_VISIBLEONLYININDENT`
+-- Display only indentation spaces and tabs as dots and arrows.
+--
+-- The default value is `view.WS_INVISIBLE`.
+-- @field whitespace_size (number)
+-- The pixel size of the dots that represent space characters when whitespace
+-- is visible.
+-- The default value is `1`.
+-- @field wrap_indent_mode (number)
+-- The wrapped line indent mode.
+--
+-- * `view.WRAPINDENT_FIXED`
+-- Indent wrapped lines by [`view.wrap_start_indent`]().
+-- * `view.WRAPINDENT_SAME`
+-- Indent wrapped lines the same amount as the first line.
+-- * `view.WRAPINDENT_INDENT`
+-- Indent wrapped lines one more level than the level of the first line.
+-- * `view.WRAPINDENT_DEEPINDENT`
+-- Indent wrapped lines two more levels than the level of the first line.
+--
+-- The default value is `view.WRAPINDENT_FIXED`.
+-- @field wrap_mode (number)
+-- Long line wrap mode.
+--
+-- * `view.WRAP_NONE`
+-- Long lines are not wrapped.
+-- * `view.WRAP_WORD`
+-- Wrap long lines at word (and style) boundaries.
+-- * `view.WRAP_CHAR`
+-- Wrap long lines at character boundaries.
+-- * `view.WRAP_WHITESPACE`
+-- Wrap long lines at word boundaries (ignoring style boundaries).
+--
+-- The default value is `view.WRAP_NONE`.
+-- @field wrap_start_indent (number)
+-- The number of spaces of indentation to display wrapped lines with if
+-- [`view.wrap_indent_mode`]() is `view.WRAPINDENT_FIXED`.
+-- The default value is `0`.
+-- @field wrap_visual_flags (number)
+-- The wrapped line visual flag display mode.
+--
+-- * `view.WRAPVISUALFLAG_NONE`
+-- No visual flags.
+-- * `view.WRAPVISUALFLAG_END`
+-- Show a visual flag at the end of a wrapped line.
+-- * `view.WRAPVISUALFLAG_START`
+-- Show a visual flag at the beginning of a sub-line.
+-- * `view.WRAPVISUALFLAG_MARGIN`
+-- Show a visual flag in the sub-line's line number margin.
+--
+-- The default value is `view.WRAPVISUALFLAG_NONE`.
+-- @field wrap_visual_flags_location (number)
+-- The wrapped line visual flag drawing mode.
+--
+-- * `view.WRAPVISUALFLAGLOC_DEFAULT`
+-- Draw a visual flag near the view's right margin.
+-- * `view.WRAPVISUALFLAGLOC_END_BY_TEXT`
+-- Draw a visual flag near text at the end of a wrapped line.
+-- * `view.WRAPVISUALFLAGLOC_START_BY_TEXT`
+-- Draw a visual flag near text at the beginning of a subline.
+--
+-- The default value is `view.WRAPVISUALFLAGLOC_DEFAULT`.
+-- @field x_offset (number)
+-- The horizontal scroll pixel position.
+-- A value of `0` is the normal position with the first text column visible at
+-- the left of the view.
+-- @field zoom (number)
+-- The number of points to add to the size of all fonts.
+-- Negative values are allowed.
+-- The default value is `0`.
+-- @field ANNOTATION_BOXED (number, Read-only)
+--
+-- @field ANNOTATION_HIDDEN (number, Read-only)
+--
+-- @field ANNOTATION_STANDARD (number, Read-only)
+--
+-- @field ANNOTATION_INDENTED (number, Read-only)
+--
+-- @field CARETSTYLE_BLOCK (number, Read-only)
+--
+-- @field CARETSTYLE_INVISIBLE (number, Read-only)
+--
+-- @field CARETSTYLE_LINE (number, Read-only)
+--
+-- @field CARET_EVEN (number, Read-only)
+--
+-- @field CARET_JUMPS (number, Read-only)
+--
+-- @field CARET_SLOP (number, Read-only)
+--
+-- @field CARET_STRICT (number, Read-only)
+--
+-- @field EDGE_BACKGROUND (number, Read-only)
+--
+-- @field EDGE_LINE (number, Read-only)
+--
+-- @field EDGE_MULTILINE (number, Read-only)
+--
+-- @field EDGE_NONE (number, Read-only)
+--
+-- @field FOLDACTION_CONTRACT (number, Read-only)
+--
+-- @field FOLDACTION_EXPAND (number, Read-only)
+--
+-- @field FOLDACTION_TOGGLE (number, Read-only)
+--
+-- @field FOLDDISPLAYTEXT_HIDDEN (number, Read-only)
+--
+-- @field FOLDDISPLAYTEXT_STANDARD (number, Read-only)
+--
+-- @field FOLDDISPLAYTEXT_BOXED (number, Read-only)
+--
+-- @field INDIC_BOX (number, Read-only)
+--
+-- @field INDIC_COMPOSITIONTHICK (number, Read-only)
+--
+-- @field INDIC_COMPOSITIONTHIN (number, Read-only)
+--
+-- @field INDIC_DASH (number, Read-only)
+--
+-- @field INDIC_DIAGONAL (number, Read-only)
+--
+-- @field INDIC_DOTBOX (number, Read-only)
+--
+-- @field INDIC_DOTS (number, Read-only)
+--
+-- @field INDIC_FULLBOX (number, Read-only)
+--
+-- @field INDIC_GRADIENT (number, Read-only)
+--
+-- @field INDIC_GRADIENTCENTRE (number, Read-only)
+--
+-- @field INDIC_HIDDEN (number, Read-only)
+--
+-- @field INDIC_PLAIN (number, Read-only)
+--
+-- @field INDIC_POINT (number, Read-only)
+--
+-- @field INDIC_POINTCHARACTER (number, Read-only)
+--
+-- @field INDIC_ROUNDBOX (number, Read-only)
+--
+-- @field INDIC_SQUIGGLE (number, Read-only)
+--
+-- @field INDIC_SQUIGGLELOW (number, Read-only)
+--
+-- @field INDIC_SQUIGGLEPIXMAP (number, Read-only)
+--
+-- @field INDIC_STRAIGHTBOX (number, Read-only)
+--
+-- @field INDIC_STRIKE (number, Read-only)
+--
+-- @field INDIC_TEXTFORE (number, Read-only)
+--
+-- @field INDIC_TT (number, Read-only)
+--
+-- @field MOD_ALT (number, Read-only)
+--
+-- @field MOD_CTRL (number, Read-only)
+--
+-- @field MOD_META (number, Read-only)
+--
+-- @field MOD_SHIFT (number, Read-only)
+--
+-- @field MOD_SUPER (number, Read-only)
+--
+-- @field MOUSE_DRAG (number, Read-only)
+--
+-- @field MOUSE_PRESS (number, Read-only)
+--
+-- @field MOUSE_RELEASE (number, Read-only)
+--
+-- @field WS_INVISIBLE (number, Read-only)
+--
+-- @field WS_VISIBLEAFTERINDENT (number, Read-only)
+--
+-- @field WS_VISIBLEALWAYS (number, Read-only)
+--
+-- @field WS_VISIBLEONLYININDENT (number, Read-only)
+--
+-- @field ALPHA_NOALPHA (number, Read-only)
+--
+-- @field ALPHA_OPAQUE (number, Read-only)
+--
+-- @field ALPHA_TRANSPARENT (number, Read-only)
+--
+-- @field CASE_CAMEL (number, Read-only)
+--
+-- @field CASE_LOWER (number, Read-only)
+--
+-- @field CASE_MIXED (number, Read-only)
+--
+-- @field CASE_UPPER (number, Read-only)
+--
+-- @field CURSORARROW (number, Read-only)
+--
+-- @field CURSORNORMAL (number, Read-only)
+--
+-- @field CURSORREVERSEARROW (number, Read-only)
+--
+-- @field CURSORWAIT (number, Read-only)
+--
+-- @field FOLDFLAG_LEVELNUMBERS (number, Read-only)
+--
+-- @field FOLDFLAG_LINEAFTER_CONTRACTED (number, Read-only)
+--
+-- @field FOLDFLAG_LINEAFTER_EXPANDED (number, Read-only)
+--
+-- @field FOLDFLAG_LINEBEFORE_CONTRACTED (number, Read-only)
+--
+-- @field FOLDFLAG_LINEBEFORE_EXPANDED (number, Read-only)
+--
+-- @field FOLDFLAG_LINESTATE (number, Read-only)
+--
+-- @field IV_LOOKBOTH (number, Read-only)
+--
+-- @field IV_LOOKFORWARD (number, Read-only)
+--
+-- @field IV_NONE (number, Read-only)
+--
+-- @field IV_REAL (number, Read-only)
+--
+-- @field MARGINOPTION_NONE (number, Read-only)
+--
+-- @field MARGINOPTION_SUBLINESELECT (number, Read-only)
+--
+-- @field MARGIN_BACK (number, Read-only)
+--
+-- @field MARGIN_COLOUR (number, Read-only)
+--
+-- @field MARGIN_FORE (number, Read-only)
+--
+-- @field MARGIN_NUMBER (number, Read-only)
+--
+-- @field MARGIN_RTEXT (number, Read-only)
+--
+-- @field MARGIN_SYMBOL (number, Read-only)
+--
+-- @field MARGIN_TEXT (number, Read-only)
+--
+-- @field MARK_ARROW (number, Read-only)
+--
+-- @field MARK_ARROWDOWN (number, Read-only)
+--
+-- @field MARK_ARROWS (number, Read-only)
+--
+-- @field MARK_BACKGROUND (number, Read-only)
+--
+-- @field MARK_BOOKMARK (number, Read-only)
+--
+-- @field MARK_BOXMINUS (number, Read-only)
+--
+-- @field MARK_BOXMINUSCONNECTED (number, Read-only)
+--
+-- @field MARK_BOXPLUS (number, Read-only)
+--
+-- @field MARK_BOXPLUSCONNECTED (number, Read-only)
+--
+-- @field MARK_CHARACTER (number, Read-only)
+--
+-- @field MARK_CIRCLE (number, Read-only)
+--
+-- @field MARK_CIRCLEMINUS (number, Read-only)
+--
+-- @field MARK_CIRCLEMINUSCONNECTED (number, Read-only)
+--
+-- @field MARK_CIRCLEPLUS (number, Read-only)
+--
+-- @field MARK_CIRCLEPLUSCONNECTED (number, Read-only)
+--
+-- @field MARK_DOTDOTDOT (number, Read-only)
+--
+-- @field MARK_EMPTY (number, Read-only)
+--
+-- @field MARK_FULLRECT (number, Read-only)
+--
+-- @field MARK_LCORNER (number, Read-only)
+--
+-- @field MARK_LCORNERCURVE (number, Read-only)
+--
+-- @field MARK_LEFTRECT (number, Read-only)
+--
+-- @field MARK_MINUS (number, Read-only)
+--
+-- @field MARK_PIXMAP (number, Read-only)
+--
+-- @field MARK_PLUS (number, Read-only)
+--
+-- @field MARK_RGBAIMAGE (number, Read-only)
+--
+-- @field MARK_ROUNDRECT (number, Read-only)
+--
+-- @field MARK_SHORTARROW (number, Read-only)
+--
+-- @field MARK_SMALLRECT (number, Read-only)
+--
+-- @field MARK_TCORNER (number, Read-only)
+--
+-- @field MARK_TCORNERCURVE (number, Read-only)
+--
+-- @field MARK_UNDERLINE (number, Read-only)
+--
+-- @field MARK_VERTICALBOOKMARK (number, Read-only)
+--
+-- @field MARK_VLINE (number, Read-only)
+--
+-- @field MASK_FOLDERS (number, Read-only)
+--
+-- @field TD_LONGARROW (number, Read-only)
+--
+-- @field TD_STRIKEOUT (number, Read-only)
+--
+-- @field TIME_FOREVER (number, Read-only)
+--
+-- @field WRAPINDENT_DEEPINDENT (number, Read-only)
+--
+-- @field WRAPINDENT_FIXED (number, Read-only)
+--
+-- @field WRAPINDENT_INDENT (number, Read-only)
+--
+-- @field WRAPINDENT_SAME (number, Read-only)
+--
+-- @field WRAPVISUALFLAGLOC_DEFAULT (number, Read-only)
+--
+-- @field WRAPVISUALFLAGLOC_END_BY_TEXT (number, Read-only)
+--
+-- @field WRAPVISUALFLAGLOC_START_BY_TEXT (number, Read-only)
+--
+-- @field WRAPVISUALFLAG_END (number, Read-only)
+--
+-- @field WRAPVISUALFLAG_MARGIN (number, Read-only)
+--
+-- @field WRAPVISUALFLAG_NONE (number, Read-only)
+--
+-- @field WRAPVISUALFLAG_START (number, Read-only)
+--
+-- @field WRAP_CHAR (number, Read-only)
+--
+-- @field WRAP_NONE (number, Read-only)
+--
+-- @field WRAP_WHITESPACE (number, Read-only)
+--
+-- @field WRAP_WORD (number, Read-only)
+--
+-- @field STYLE_BRACEBAD (number, Read-only)
+--
+-- @field STYLE_BRACELIGHT (number, Read-only)
+--
+-- @field STYLE_CALLTIP (number, Read-only)
+--
+-- @field STYLE_CONTROLCHAR (number, Read-only)
+--
+-- @field STYLE_DEFAULT (number, Read-only)
+--
+-- @field STYLE_FOLDDISPLAYTEXT (number, Read-only)
+--
+-- @field STYLE_INDENTGUIDE (number, Read-only)
+--
+-- @field STYLE_LINENUMBER (number, Read-only)
+--
+-- @field UPDATE_H_SCROLL (number, Read-only)
+--
+-- @field UPDATE_V_SCROLL (number, Read-only)
+--
+-- @field VISIBLE_SLOP (number, Read-only)
+--
+-- @field VISIBLE_STRICT (number, Read-only)
+--
module('view')
---
@@ -14,6 +920,463 @@ module('view')
local buffer
---
+-- Highlights the character at position *pos* as an unmatched brace character
+-- using the `'style.bracebad'` style.
+-- Removes highlighting when *pos* is `-1`.
+-- @param view A view.
+-- @param pos The position in *buffer* to highlight, or `-1` to remove the
+-- highlight.
+function brace_bad_light(view, pos) end
+
+---
+-- Highlights unmatched brace characters with indicator number *indicator*, in
+-- the range of `1 to `32`, instead of the
+-- `view.STYLE_BRACEBAD` style if *use_indicator* is `true`.
+-- @param view A view.
+-- @param use_indicator Whether or not to use an indicator.
+-- @param indicator The indicator number to use.
+function brace_bad_light_indicator(view, use_indicator, indicator) end
+
+---
+-- Highlights the characters at positions *pos1* and *pos2* as matching braces
+-- using the `'style.bracelight'` style.
+-- If indent guides are enabled, locates the column with `buffer.column` and
+-- sets `view.highlight_guide` in order to highlight the indent guide.
+-- @param view A view.
+-- @param pos1 The first position in *buffer* to highlight.
+-- @param pos2 The second position in *buffer* to highlight.
+function brace_highlight(view, pos1, pos2) end
+
+---
+-- Highlights matching brace characters with indicator number *indicator*, in
+-- the range of `1` to `32`, instead of the
+-- `view.STYLE_BRACELIGHT` style if *use_indicator* is `true`.
+-- @param view A view.
+-- @param use_indicator Whether or not to use an indicator.
+-- @param indicator The indicator number to use.
+function brace_highlight_indicator(view, use_indicator, indicator) end
+
+---
+-- Highlights a call tip's text between positions *start_pos* to *end_pos* with
+-- the color `view.call_tip_fore_hlt`.
+-- @param view A view.
+-- @param start_pos The start position in a call tip text to highlight.
+-- @param end_pos The end position in a call tip text to highlight.
+function call_tip_set_hlt(view, start_pos, end_pos) end
+
+---
+-- Clears all images registered using `view.register_image()` and
+-- `view.register_rgba_image()`.
+-- @param view A view.
+function clear_registered_images(view) end
+
+---
+-- Removes the alternate string representation for character *char*.
+-- @param view A view.
+-- @param char The character in `buffer.representations` to remove the alternate
+-- string representation for.
+function clear_representation(view, char) end
+
+---
+-- Returns the line number of the next contracted fold point starting from line
+-- number *line*, or `-1` if none exists.
+-- @param view A view.
+-- @param line The line number in *buffer* to start at.
+-- @return number
+function contracted_fold_next(view, line) end
+
+---
+-- Returns the actual line number of displayed line number *display_line*,
+-- taking hidden lines into account.
+-- If *display_line* is less than or equal to `1`, returns `1`. If
+-- *display_line* is greater than the number of displayed lines, returns
+-- `buffer.line_count`.
+-- @param view A view.
+-- @param display_line The display line number to use.
+-- @return number
+function doc_line_from_visible(view, display_line) end
+
+---
+-- Ensures line number *line* is visible by expanding any fold points hiding it.
+-- @param view A view.
+-- @param line The line number in *buffer* to ensure visible.
+function ensure_visible(view, line) end
+
+---
+-- Ensures line number *line* is visible by expanding any fold points hiding it
+-- based on the vertical caret policy previously defined in
+-- `view.set_visible_policy()`.
+-- @param view A view.
+-- @param line The line number in *buffer* to ensure visible.
+function ensure_visible_enforce_policy(view, line) end
+
+---
+-- Contracts, expands, or toggles all fold points, depending on *action*.
+-- When toggling, the state of the first fold point determines whether to
+-- expand or contract.
+-- @param view A view.
+-- @param action The fold action to perform. Valid values are:
+-- * `view.FOLDACTION_CONTRACT`
+-- * `view.FOLDACTION_EXPAND`
+-- * `view.FOLDACTION_TOGGLE`
+function fold_all(view, action) end
+
+---
+-- Contracts, expands, or toggles the fold point on line number *line*, as well
+-- as all of its children, depending on *action*.
+-- @param view A view.
+-- @param line The line number in *buffer* to set the fold states for.
+-- @param action The fold action to perform. Valid values are:
+-- * `view.FOLDACTION_CONTRACT`
+-- * `view.FOLDACTION_EXPAND`
+-- * `view.FOLDACTION_TOGGLE`
+function fold_children(view, line, action) end
+
+---
+-- Contracts, expands, or toggles the fold point on line number *line*,
+-- depending on *action*.
+-- @param view A view.
+-- @param line The line number in *buffer* to set the fold state for.
+-- @param action The fold action to perform. Valid values are:
+-- * `view.FOLDACTION_CONTRACT`
+-- * `view.FOLDACTION_EXPAND`
+-- * `view.FOLDACTION_TOGGLE`
+function fold_line(view, line, action) end
+
+---
+-- Returns the default fold display text.
+-- @param view A view.
+function get_default_fold_display_text(view) end
+
+---
+-- Hides the range of lines between line numbers *start_line* to *end_line*.
+-- This has no effect on fold levels or fold flags and the first line cannot be
+-- hidden.
+-- @param view A view.
+-- @param start_line The start line of the range of lines in *buffer* to hide.
+-- @param end_line The end line of the range of lines in *buffer* to hide.
+function hide_lines(view, start_line, end_line) end
+
+---
+-- Scrolls the buffer right *columns* columns and down *lines* lines.
+-- Negative values are allowed.
+-- @param view A view.
+-- @param columns The number of columns to scroll horizontally.
+-- @param lines The number of lines to scroll vertically.
+function line_scroll(view, columns, lines) end
+
+---
+-- Scrolls the buffer down one line, keeping the caret visible.
+-- @param view A view.
+function line_scroll_down(view) end
+
+---
+-- Scrolls the buffer up one line, keeping the caret visible.
+-- @param view A view.
+function line_scroll_up(view) end
+
+---
+-- Assigns marker symbol *symbol* to marker number *marker*, in the range of `1`
+-- to `32`.
+-- *symbol* is shown in marker symbol margins next to lines marked with
+-- *marker*.
+-- @param view A view.
+-- @param marker The marker number in the range of `1` to `32` to set *symbol*
+-- for.
+-- @param symbol The marker symbol: `buffer.MARK_*`.
+-- @see _SCINTILLA.next_marker_number
+function marker_define(view, marker, symbol) end
+
+---
+-- Associates marker number *marker*, in the range of `1` to `32`, with XPM
+-- image *pixmap*.
+-- The `view.MARK_PIXMAP` marker symbol must be assigned to *marker*.
+-- *pixmap* is shown in marker symbol margins next to lines marked with
+-- *marker*.
+-- @param view A view.
+-- @param marker The marker number in the range of `1` to `32` to define
+-- pixmap *pixmap* for.
+-- @param pixmap The string pixmap data.
+function marker_define_pixmap(view, marker, pixmap) end
+
+---
+-- Associates marker number *marker*, in the range of `1` to `32`, with RGBA
+-- image *pixels*.
+-- The dimensions for *pixels* (`view.rgba_image_width` and
+-- `view.rgba_image_height`) must have already been defined. *pixels* is a
+-- sequence of 4 byte pixel values (red, blue, green, and alpha) defining the
+-- image line by line starting at the top-left pixel.
+-- The `view.MARK_RGBAIMAGE` marker symbol must be assigned to *marker*.
+-- *pixels* is shown in symbol margins next to lines marked with *marker*.
+-- @param view A view.
+-- @param marker The marker number in the range of `1` to `32` to define RGBA
+-- data *pixels* for.
+-- @param pixels The string sequence of 4 byte pixel values starting with the
+-- pixels for the top line, with the leftmost pixel first, then continuing
+-- with the pixels for subsequent lines. There is no gap between lines for
+-- alignment reasons. Each pixel consists of, in order, a red byte, a green
+-- byte, a blue byte and an alpha byte. The colour bytes are not premultiplied
+-- by the alpha value. That is, a fully red pixel that is 25% opaque will be
+-- `[FF, 00, 00, 3F]`.
+function marker_define_rgba_image(view, marker, pixels) end
+
+---
+-- Highlights the margin fold markers for the current fold block if *enabled* is
+-- `true`.
+-- @param view A view.
+-- @param enabled Whether or not to enable highlight.
+function marker_enable_highlight(view, enabled) end
+
+---
+-- Returns the symbol assigned to marker number *marker*, in the range of `1` to
+-- `32`, used in `view.marker_define()`,
+-- `view.marker_define_pixmap()`, or `view.marker_define_rgba_image()`.
+-- @param view A view.
+-- @param marker The marker number in the range of `1` to `32` to get the symbol
+-- of.
+-- @return number
+function marker_symbol_defined(view, marker) end
+
+---
+-- Adds a new vertical line at column number *column* with color *color*, in
+-- "0xBBGGRR" format.
+-- @param view A view.
+-- @param column The column number to add a vertical line at.
+-- @param color The color in "0xBBGGRR" format.
+function multi_edge_add_line(view, column, color) end
+
+---
+-- Clears all vertical lines created by `view:multi_edge_add_line()`.
+-- @param view A view.
+function multi_edge_clear_all(view) end
+
+---
+-- Registers XPM image *xpm_data* to type number *type* for use in
+-- autocompletion and user lists.
+-- @param view A view.
+-- @param type Integer type to register the image with.
+-- @param xpm_data The XPM data as described in `view.marker_define_pixmap()`.
+function register_image(view, type, xpm_data) end
+
+---
+-- Registers RGBA image *pixels* to type number *type* for use in autocompletion
+-- and user lists.
+-- The dimensions for *pixels* (`view.rgba_image_width` and
+-- `view.rgba_image_height`) must have already been defined. *pixels* is a
+-- sequence of 4 byte pixel values (red, blue, green, and alpha) defining the
+-- image line by line starting at the top-left pixel.
+-- @param view A view.
+-- @param type Integer type to register the image with.
+-- @param pixels The RGBA data as described in
+-- `view.marker_define_rgba_image()`.
+function register_rgba_image(view, type, pixels) end
+
+---
+-- Scrolls the caret into view based on the policies previously defined in
+-- `view.set_x_caret_policy()` and `view.set_y_caret_policy()`.
+-- @param view A view.
+-- @see set_x_caret_policy
+-- @see set_y_caret_policy
+function scroll_caret(view) end
+
+---
+-- Scrolls to the end of the buffer without moving the caret.
+-- @param view A view.
+function scroll_to_end(view) end
+
+---
+-- Scrolls to the beginning of the buffer without moving the caret.
+-- @param view A view.
+function scroll_to_start(view) end
+
+---
+-- Scrolls into view the range of text between positions *primary_pos* and
+-- *secondary_pos*, with priority given to *primary_pos*.
+-- Similar to `view.scroll_caret()`, but with *primary_pos* instead of
+-- `buffer.current_pos`.
+-- This is useful for scrolling search results into view.
+-- @param view A view.
+-- @param secondary_pos The secondary range position to scroll into view.
+-- @param primary_pos The primary range position to scroll into view.
+function scroll_range(view, secondary_pos, primary_pos) end
+
+---
+-- Sets the default fold display text to string *text*.
+-- @param view A view.
+-- @param text The text to display by default next to folded lines.
+-- @see toggle_fold_show_text
+function set_default_fold_display_text(view, text) end
+
+---
+-- Overrides the fold margin's default color with color *color*, in "0xBBGGRR"
+-- format,
+-- if *use_setting* is `true`.
+-- @param view A view.
+-- @param use_setting Whether or not to use *color*.
+-- @param color The color in "0xBBGGRR" format.
+function set_fold_margin_colour(view, use_setting, color) end
+
+---
+-- Overrides the fold margin's default highlight color with color *color*, in
+-- "0xBBGGRR" format, if *use_setting* is `true`.
+-- @param view A view.
+-- @param use_setting Whether or not to use *color*.
+-- @param color The color in "0xBBGGRR" format.
+function set_fold_margin_hi_colour(view, use_setting, color) end
+
+---
+-- Overrides the selection's default background color with color *color*, in
+-- "0xBBGGRR" format, if *use_setting* is `true`.
+-- Overwrites any existing `view.additional_sel_back` color.
+-- @param view A view.
+-- @param use_setting Whether or not to use *color*.
+-- @param color The color in "0xBBGGRR" format.
+function set_sel_back(view, use_setting, color) end
+
+---
+-- Overrides the selection's default foreground color with color *color*, in
+-- "0xBBGGRR" format, if *use_setting* is `true`.
+-- Overwrites any existing `view.additional_sel_fore` color.
+-- @param view A view.
+-- @param use_setting Whether or not to use *color*.
+-- @param color The color in "0xBBGGRR" format.
+function set_sel_fore(view, use_setting, color) end
+
+---
+-- Defines scrolling policy bit-mask *policy* as the policy for keeping the
+-- caret *y* number of lines away from the vertical margins as
+-- `view.ensure_visible_enforce_policy()` redisplays hidden or folded lines.
+-- It is similar in operation to `view.set_y_caret_policy()`.
+-- @param view A view.
+-- @param policy The combination of `view.VISIBLE_SLOP` and
+-- `view.VISIBLE_STRICT` policy flags to set.
+-- @param y The number of lines from the vertical margins to keep the caret.
+function set_visible_policy(view, policy, y) end
+
+---
+-- Overrides the background color of whitespace with color *color*, in
+-- "0xBBGGRR" format, if *use_setting* is `true`.
+-- @param view A view.
+-- @param use_setting Whether or not to use *color*.
+-- @param color The color in "0xBBGGRR" format.
+function set_whitespace_back(view, use_setting, color) end
+
+---
+-- Overrides the foreground color of whitespace with color *color*, in
+-- "0xBBGGRR" format, if *use_setting* is `true`.
+-- @param use_setting Whether or not to use *color*.
+-- @param color The color in "0xBBGGRR" format.
+function set_whitespace_fore(view, use_setting, color) end
+
+---
+-- Defines scrolling policy bit-mask *policy* as the policy for keeping the
+-- caret *x* number of pixels away from the horizontal margins.
+-- @param view A view.
+-- @param policy The combination of `view.CARET_SLOP`, `view.CARET_STRICT`,
+-- `view.CARET_EVEN`, and `view.CARET_JUMPS` policy flags to set.
+-- @param x The number of pixels from the horizontal margins to keep the caret.
+function set_x_caret_policy(view, policy, x) end
+
+---
+-- Defines scrolling policy bit-mask *policy* as the policy for keeping the
+-- caret *y* number of lines away from the vertical margins.
+-- @param view A view.
+-- @param policy The combination of `view.CARET_SLOP`, `view.CARET_STRICT`,
+-- `view.CARET_EVEN`, and `view.CARET_JUMPS` policy flags to set.
+-- @param y The number of lines from the vertical margins to keep the caret.
+function set_y_caret_policy(view, policy, y) end
+
+---
+-- Shows the range of lines between line numbers *start_line* to *end_line*.
+-- This has no effect on fold levels or fold flags and the first line cannot be
+-- hidden.
+-- @param view A view.
+-- @param start_line The start line of the range of lines in *buffer* to show.
+-- @param end_line The end line of the range of lines in *buffer* to show.
+function show_lines(view, start_line, end_line) end
+
+---
+-- Reverts all styles to having the same properties as `view.STYLE_DEFAULT`.
+-- @param view A view.
+function style_clear_all(view) end
+
+---
+-- Resets `view.STYLE_DEFAULT` to its initial state.
+-- @param view A view.
+function style_reset_default(view) end
+
+---
+-- Returns the pixel height of line number *line*.
+-- @param view A view.
+-- @param line The line number in *buffer* to get the pixel height of.
+-- @return number
+function text_height(view, line) end
+
+---
+-- Returns the pixel width string *text* would have when styled with style
+-- number *style_num*, in the range of `1` to `256`.
+-- @param view A view.
+-- @param style_num The style number between `1` and `256` to use.
+-- @param text The text to measure the width of.
+-- @return number
+function text_width(view, style_num, text) end
+
+---
+-- Toggles the fold point on line number *line* between expanded (where all of
+-- its child lines are displayed) and contracted (where all of its child lines
+-- are hidden).
+-- @param view A view.
+-- @param line The line number in *buffer* to toggle the fold on.
+-- @see set_default_fold_display_text
+function toggle_fold(view, line) end
+
+---
+-- Toggles a fold point on line number *line* between expanded (where all of
+-- its child lines are displayed) and contracted (where all of its child lines
+-- are hidden), and shows string *text* after the line.
+-- *text* is drawn with style number `view.STYLE_FOLDDISPLAYTEXT`.
+-- @param view A view.
+-- @param line The line number in *buffer* to toggle the fold on and display
+-- *text* after.
+-- @param text The text to display after the line.
+function toggle_fold_show_text(view, line, text) end
+
+---
+-- Centers current line in the view.
+-- @param view A view.
+function vertical_centre_caret(view) end
+
+---
+-- Returns the displayed line number of actual line number *line*, taking hidden
+-- lines into account, or `-1` if *line* is outside the range of lines in the
+-- buffer.
+-- Lines can occupy more than one display line if they wrap.
+-- @param view A view.
+-- @param line The line number in *buffer* to use.
+-- @return number
+function visible_from_doc_line(view, line) end
+
+---
+-- Returns the number of wrapped lines needed to fully display line number
+-- *line*.
+-- @param view A view.
+-- @param line The line number in *buffer* to use.
+-- @return number
+function wrap_count(view, line) end
+
+---
+-- Increases the size of all fonts by one point, up to 20.
+-- @param view A view.
+function zoom_in(view) end
+
+---
+-- Decreases the size of all fonts by one point, down to -10.
+-- @param view A view.
+function zoom_out(view) end
+
+-- External functions.
+
+---
-- Splits the view into top and bottom views (unless *vertical* is `true`),
-- focuses the new view, and returns both the old and new views.
-- If *vertical* is `false`, splits the view vertically into left and
diff --git a/core/events.lua b/core/events.lua
index 37dbc7b3..4a45b8ec 100644
--- a/core/events.lua
+++ b/core/events.lua
@@ -89,10 +89,10 @@ local M = {}
--
-- * _`position`_: The position double-clicked.
-- * _`line`_: The line number of the position double-clicked.
--- * _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,
--- `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.
--- Note: If you set `buffer.rectangular_selection_modifier` to
--- `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"
+-- * _`modifiers`_: A bit-mask of any modifier keys used: `view.MOD_CTRL`,
+-- `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.
+-- Note: If you set `view.rectangular_selection_modifier` to
+-- `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"
-- and "Alt" due to a Scintilla limitation with GTK.
-- @field CSI (string)
-- Emitted when the terminal version receives an unrecognized CSI sequence.
@@ -112,7 +112,7 @@ local M = {}
-- * _`x`_: The x-coordinate of the mouse in the view.
-- * _`y`_: The y-coordinate of the mouse in the view.
-- @field DWELL_START (string)
--- Emitted when the mouse is stationary for [`buffer.mouse_dwell_time`]()
+-- Emitted when the mouse is stationary for [`view.mouse_dwell_time`]()
-- milliseconds.
-- Arguments:
--
@@ -138,10 +138,10 @@ local M = {}
-- Arguments:
--
-- * _`position`_: The clicked text's position.
--- * _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,
--- `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.
--- Note: If you set `buffer.rectangular_selection_modifier` to
--- `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"
+-- * _`modifiers`_: A bit-mask of any modifier keys used: `view.MOD_CTRL`,
+-- `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.
+-- Note: If you set `view.rectangular_selection_modifier` to
+-- `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"
-- and "Alt" due to a Scintilla limitation with GTK.
-- @field INDICATOR_RELEASE (string)
-- Emitted when releasing the mouse after clicking on text that has an
@@ -168,10 +168,10 @@ local M = {}
--
-- * _`margin`_: The margin number clicked.
-- * _`position`_: The beginning position of the clicked margin's line.
--- * _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,
--- `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.
--- Note: If you set `buffer.rectangular_selection_modifier` to
--- `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"
+-- * _`modifiers`_: A bit-mask of any modifier keys used: `view.MOD_CTRL`,
+-- `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.
+-- Note: If you set `view.rectangular_selection_modifier` to
+-- `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"
-- and "Alt" due to a Scintilla limitation with GTK.
-- @field MENU_CLICKED (string)
-- Emitted after selecting a menu item.
@@ -187,8 +187,8 @@ local M = {}
-- has switched to.)
-- Arguments:
--
--- * _`event`_: The mouse event: `buffer.MOUSE_PRESS`, `buffer.MOUSE_DRAG`, or
--- `buffer.MOUSE_RELEASE`.
+-- * _`event`_: The mouse event: `view.MOUSE_PRESS`, `view.MOUSE_DRAG`, or
+-- `view.MOUSE_RELEASE`.
-- * _`button`_: The mouse button number.
-- * _`y`_: The y-coordinate of the mouse event, starting from 1.
-- * _`x`_: The x-coordinate of the mouse event, starting from 1.
@@ -264,9 +264,9 @@ local M = {}
-- Buffer contents, styling, or markers have changed.
-- + `buffer.UPDATE_SELECTION`
-- Buffer selection has changed (including caret movement).
--- + `buffer.UPDATE_V_SCROLL`
+-- + `view.UPDATE_V_SCROLL`
-- Buffer has scrolled vertically.
--- + `buffer.UPDATE_H_SCROLL`
+-- + `view.UPDATE_H_SCROLL`
-- Buffer has scrolled horizontally.
-- @field URI_DROPPED (string)
-- Emitted after dragging and dropping a URI into a view.
@@ -290,8 +290,8 @@ local M = {}
-- Emitted right after switching to another view.
-- Emitted by [`ui.goto_view()`]().
-- @field ZOOM (string)
--- Emitted after changing [`buffer.zoom`]().
--- Emitted by [`buffer.zoom_in()`]() and [`buffer.zoom_out()`]().
+-- Emitted after changing [`view.zoom`]().
+-- Emitted by [`view.zoom_in()`]() and [`view.zoom_out()`]().
module('events')]]
-- Map of event names to tables of handler functions.
diff --git a/core/file_io.lua b/core/file_io.lua
index 7a7d841b..f90c51ab 100644
--- a/core/file_io.lua
+++ b/core/file_io.lua
@@ -167,7 +167,7 @@ end
local function reload(buffer)
if not buffer then buffer = _G.buffer end
if not buffer.filename then return end
- local pos, first_visible_line = buffer.current_pos, buffer.first_visible_line
+ local pos, first_visible_line = buffer.current_pos, view.first_visible_line
local f = assert(io.open(buffer.filename, 'rb'))
local text = f:read('a')
f:close()
@@ -177,14 +177,14 @@ local function reload(buffer)
buffer.mod_time = lfs.attributes(buffer.filename, 'modification')
if buffer == _G.buffer then
buffer:goto_pos(pos)
- buffer.first_visible_line = first_visible_line
+ view.first_visible_line = first_visible_line
end
end
-- LuaDoc is in core/.buffer.luadoc.
local function set_encoding(buffer, encoding)
assert_type(encoding, 'string/nil', 1)
- local pos, first_visible_line = buffer.current_pos, buffer.first_visible_line
+ local pos, first_visible_line = buffer.current_pos, view.first_visible_line
local text = buffer:get_text()
if buffer.encoding then
text = text:iconv(buffer.encoding, 'UTF-8')
@@ -193,7 +193,7 @@ local function set_encoding(buffer, encoding)
if encoding then text = text:iconv('UTF-8', encoding) end
buffer:set_text(text)
buffer:goto_pos(pos)
- buffer.first_visible_line = first_visible_line
+ view.first_visible_line = first_visible_line
buffer.encoding = encoding
buffer.code_page = buffer.encoding and buffer.CP_UTF8 or 0
end
diff --git a/core/iface.lua b/core/iface.lua
index fdaab1ed..05e80131 100644
--- a/core/iface.lua
+++ b/core/iface.lua
@@ -52,11 +52,11 @@ M.events = {[2000]={"style_needed","position"},[2001]={"char_added","ch","charac
local marker_number, indic_number, list_type, image_type = 0, 0, 0, 0
---
--- Returns a unique marker number for use with `buffer.marker_define()`.
+-- Returns a unique marker number for use with `view.marker_define()`.
-- Use this function for custom markers in order to prevent clashes with
-- identifiers of other custom markers.
-- @usage local marknum = _SCINTILLA.next_marker_number()
--- @see buffer.marker_define
+-- @see view.marker_define
-- @name next_marker_number
function M.next_marker_number()
assert(marker_number < M.constants.MARKER_MAX, 'too many markers in use')
@@ -69,7 +69,7 @@ end
-- Use this function for custom indicators in order to prevent clashes with
-- identifiers of other custom indicators.
-- @usage local indic_num = _SCINTILLA.next_indic_number()
--- @see buffer.indic_style
+-- @see view.indic_style
-- @name next_indic_number
function M.next_indic_number()
assert(indic_number < M.constants.INDICATOR_MAX, 'too many indicators in use')
@@ -92,12 +92,12 @@ end
---
-- Returns a unique image type identier number for use with
--- `buffer.register_image()` and `buffer.register_rgba_image()`.
+-- `view.register_image()` and `view.register_rgba_image()`.
-- Use this function for custom image types in order to prevent clashes with
-- identifiers of other custom image types.
-- @usage local image_type = _SCINTILLA.next_image_type()
--- @see buffer.register_image
--- @see buffer.register_rgba_image
+-- @see view.register_image
+-- @see view.register_rgba_image
-- @name next_image_type
function M.next_image_type()
image_type = image_type + 1
diff --git a/core/ui.lua b/core/ui.lua
index 1ec21be1..aa685e14 100644
--- a/core/ui.lua
+++ b/core/ui.lua
@@ -40,27 +40,27 @@ ui.silent_print = false
-- Helper function for printing messages to buffers.
-- @see ui._print
local function _print(buffer_type, ...)
- local print_buffer
- for _, buffer in ipairs(_BUFFERS) do
- if buffer._type == buffer_type then print_buffer = buffer break end
+ local buffer
+ for _, buf in ipairs(_BUFFERS) do
+ if buf._type == buffer_type then buffer = buf break end
end
- if not print_buffer then
+ if not buffer then
if not ui.tabs then view:split() end
- print_buffer = buffer.new()
- print_buffer._type = buffer_type
+ buffer = _G.buffer.new()
+ buffer._type = buffer_type
events.emit(events.FILE_OPENED)
elseif not ui.silent_print then
for _, view in ipairs(_VIEWS) do
if view.buffer._type == buffer_type then ui.goto_view(view) break end
end
- if view.buffer._type ~= buffer_type then view:goto_buffer(print_buffer) end
+ if view.buffer._type ~= buffer_type then view:goto_buffer(buffer) end
end
local args, n = {...}, select('#', ...)
for i = 1, n do args[i] = tostring(args[i]) end
- print_buffer:append_text(table.concat(args, '\t'))
- print_buffer:append_text('\n')
- print_buffer:goto_pos(buffer.length + 1)
- print_buffer:set_save_point()
+ buffer:append_text(table.concat(args, '\t'))
+ buffer:append_text('\n')
+ buffer:goto_pos(buffer.length + 1)
+ buffer:set_save_point()
end
---
-- Prints the given string messages to the buffer of string type *buffer_type*.
@@ -342,36 +342,34 @@ end)
-- Save buffer properties.
events_connect(events.BUFFER_BEFORE_SWITCH, function()
- local buffer = buffer
-- Save view state.
buffer._anchor, buffer._current_pos = buffer.anchor, buffer.current_pos
local n = buffer.main_selection
buffer._anchor_virtual_space = buffer.selection_n_anchor_virtual_space[n]
buffer._caret_virtual_space = buffer.selection_n_caret_virtual_space[n]
- buffer._top_line = buffer:doc_line_from_visible(buffer.first_visible_line)
- buffer._x_offset = buffer.x_offset
+ buffer._top_line = view:doc_line_from_visible(view.first_visible_line)
+ buffer._x_offset = view.x_offset
-- Save fold state.
- local folds, i = {}, buffer:contracted_fold_next(1)
+ local folds, i = {}, view:contracted_fold_next(1)
while i >= 1 do
- folds[#folds + 1], i = i, buffer:contracted_fold_next(i + 1)
+ folds[#folds + 1], i = i, view:contracted_fold_next(i + 1)
end
buffer._folds = folds
end)
-- Restore buffer properties.
events_connect(events.BUFFER_AFTER_SWITCH, function()
- local buffer = buffer
if not buffer._folds then return end
-- Restore fold state.
- for i = 1, #buffer._folds do buffer:toggle_fold(buffer._folds[i]) end
+ for i = 1, #buffer._folds do view:toggle_fold(buffer._folds[i]) end
-- Restore view state.
buffer:set_sel(buffer._anchor, buffer._current_pos)
buffer.selection_n_anchor_virtual_space[1] = buffer._anchor_virtual_space
buffer.selection_n_caret_virtual_space[1] = buffer._caret_virtual_space
buffer:choose_caret_x()
- local _top_line, top_line = buffer._top_line, buffer.first_visible_line
- buffer:line_scroll(0, buffer:visible_from_doc_line(_top_line) - top_line)
- buffer.x_offset = buffer._x_offset or 0
+ local _top_line, top_line = buffer._top_line, view.first_visible_line
+ view:line_scroll(0, view:visible_from_doc_line(_top_line) - top_line)
+ view.x_offset = buffer._x_offset or 0
end)
-- Updates titlebar and statusbar.
@@ -385,13 +383,12 @@ events_connect(events.VIEW_AFTER_SWITCH, update_bars)
-- Save view state.
local function save_view_state()
- local buffer = buffer
- buffer._view_eol, buffer._view_ws = buffer.view_eol, buffer.view_ws
- buffer._wrap_mode = buffer.wrap_mode
+ buffer._view_eol, buffer._view_ws = view.view_eol, view.view_ws
+ buffer._wrap_mode = view.wrap_mode
buffer._margin_type_n, buffer._margin_width_n = {}, {}
- for i = 1, buffer.margins do
- buffer._margin_type_n[i] = buffer.margin_type_n[i]
- buffer._margin_width_n[i] = buffer.margin_width_n[i]
+ for i = 1, view.margins do
+ buffer._margin_type_n[i] = view.margin_type_n[i]
+ buffer._margin_width_n[i] = view.margin_width_n[i]
end
end
events_connect(events.BUFFER_BEFORE_SWITCH, save_view_state)
@@ -399,13 +396,12 @@ events_connect(events.VIEW_BEFORE_SWITCH, save_view_state)
-- Restore view state.
local function restore_view_state()
- local buffer = buffer
if not buffer._margin_type_n then return end
- buffer.view_eol, buffer.view_ws = buffer._view_eol, buffer._view_ws
- buffer.wrap_mode = buffer._wrap_mode
- for i = 1, buffer.margins do
- buffer.margin_type_n[i] = buffer._margin_type_n[i]
- buffer.margin_width_n[i] = buffer._margin_width_n[i]
+ view.view_eol, view.view_ws = buffer._view_eol, buffer._view_ws
+ view.wrap_mode = buffer._wrap_mode
+ for i = 1, view.margins do
+ view.margin_type_n[i] = buffer._margin_type_n[i]
+ view.margin_width_n[i] = buffer._margin_width_n[i]
end
end
events_connect(events.BUFFER_AFTER_SWITCH, restore_view_state)
@@ -482,8 +478,8 @@ if CURSES then
local resize
events_connect(events.MOUSE, function(event, button, y, x)
- if event == buffer.MOUSE_RELEASE or button ~= 1 then return end
- if event == buffer.MOUSE_PRESS then
+ if event == view.MOUSE_RELEASE or button ~= 1 then return end
+ if event == view.MOUSE_PRESS then
local view = get_view(ui.get_split_table(), y - 1, x) -- title is at y = 1
if not view[1] and not view[2] then
ui.goto_view(view)
diff --git a/doc/manual.md b/doc/manual.md
index f101c9cf..3649b410 100644
--- a/doc/manual.md
+++ b/doc/manual.md
@@ -2034,8 +2034,12 @@ lexers |Removed |N/A<sup>a</sup>
\_paths |Renamed |[paths][]
**ui.find** | |
find\_in\_files\_timeout|Removed |N/A
+**view** | |
+N/A |Added |_buffer functions and fields_<sup>b</sup>
<sup>a</sup>Use `for name in buffer:private_lexer_call(_SCINTILLA.functions.property_names[1]):gmatch('[^\n]+') do ... end`.
+<sup>b</sup>Most buffer functions and fields are available in views now. See
+section below.
[buffer:name_of_style]: api.html#buffer.name_of_style
[events.SESSION_SAVE]: api.html#events.SESSION_SAVE
@@ -2099,6 +2103,33 @@ I found it helpful to quickly scan source files for syntax-highlighted numbers
and then seeing if those numbers needed to be changed. Searching for "- 1",
"+ 1", "buffer.length", etc. was also helpful.
+#### View API Additions and Buffer API Changes
+
+Textadept's [buffer][] API is largely based on the [Scintilla API][], which does
+not distinguish between buffer- and view-specific functionality. Textadept 11
+now attempts to separate this functionality, but only superficially. Buffers and
+views may be used interchangeably for the most part, but the [buffer][] and
+[view][] API provides _guidance_ (not hard requirements) on which functions and
+fields are more appropriate for their respective objects. _User scripts do not
+need to be updated and will continue to function normally_. The following "Find"
+regex can be used to help convert `buffer.*` functionality to `view.*`:
+
+<pre style="word-wrap: break-word;">
+<code>(\w+)([.:])\b(additional_caret_fore|additional_carets_blink|additional_carets_visible|additional_sel_alpha|additional_sel_back|additional_sel_fore|all_lines_visible|annotation_visible|auto_c_max_height|auto_c_max_width|call_tip_fore_hlt|call_tip_position|call_tip_use_style|caret_fore|caret_line_back|caret_line_back_alpha|caret_line_frame|caret_line_visible|caret_line_visible_always|caret_period|caret_style|caret_width|cursor|edge_colour|edge_column|edge_mode|end_at_last_line|extra_ascent|extra_descent|first_visible_line|fold_display_text_style|fold_expanded|fold_flags|h_scroll_bar|highlight_guide|idle_styling|indentation_guides|indic_alpha|indic_fore|indic_hover_fore|indic_hover_style|indic_outline_alpha|indic_style|indic_under|line_visible|lines_on_screen|margins|margin_back_n|margin_cursor_n|margin_left|margin_mask_n|margin_options|margin_right|margin_sensitive_n|margin_type_n|margin_width_n|marker_alpha|marker_back|marker_back_selected|marker_fore|mouse_dwell_time|mouse_selection_rectangular_switch|rectangular_selection_modifier|representation|rgba_image_height|rgba_image_scale|rgba_image_width|scroll_width|scroll_width_tracking|sel_alpha|sel_eol_filled|size|style_back|style_bold|style_case|style_changeable|style_eol_filled|style_font|style_fore|style_italic|style_size|style_underline|style_visible|tab_draw_mode|v_scroll_bar|view_eol|view_ws|whitespace_size|wrap_indent_mode|wrap_mode|wrap_start_indent|wrap_visual_flags|wrap_visual_flags_location|x_offset|zoom|ANNOTATION_BOXED|ANNOTATION_HIDDEN|ANNOTATION_STANDARD|ANNOTATION_INDENTED|CARETSTYLE_BLOCK|CARETSTYLE_INVISIBLE|CARETSTYLE_LINE|CARET_EVEN|CARET_JUMPS|CARET_SLOP|CARET_STRICT|EDGE_BACKGROUND|EDGE_LINE|EDGE_MULTILINE|EDGE_NONE|FOLDACTION_CONTRACT|FOLDACTION_EXPAND|FOLDACTION_TOGGLE|FOLDDISPLAYTEXT_HIDDEN|FOLDDISPLAYTEXT_STANDARD|FOLDDISPLAYTEXT_BOXED|INDIC_BOX|INDIC_COMPOSITIONTHICK|INDIC_COMPOSITIONTHIN|INDIC_DASH|INDIC_DIAGONAL|INDIC_DOTBOX|INDIC_DOTS|INDIC_FULLBOX|INDIC_GRADIENT|INDIC_GRADIENTCENTRE|INDIC_HIDDEN|INDIC_PLAIN|INDIC_POINT|INDIC_POINTCHARACTER|INDIC_ROUNDBOX|INDIC_SQUIGGLE|INDIC_SQUIGGLELOW|INDIC_SQUIGGLEPIXMAP|INDIC_STRAIGHTBOX|INDIC_STRIKE|INDIC_TEXTFORE|INDIC_TT|MOD_ALT|MOD_CTRL|MOD_META|MOD_SHIFT|MOD_SUPER|MOUSE_DRAG|MOUSE_PRESS|MOUSE_RELEASE|WS_INVISIBLE|WS_VISIBLEAFTERINDENT|WS_VISIBLEALWAYS|WS_VISIBLEONLYININDENT|ALPHA_NOALPHA|ALPHA_OPAQUE|ALPHA_TRANSPARENT|CASE_CAMEL|CASE_LOWER|CASE_MIXED|CASE_UPPER|CURSORARROW|CURSORNORMAL|CURSORREVERSEARROW|CURSORWAIT|FOLDFLAG_LEVELNUMBERS|FOLDFLAG_LINEAFTER_CONTRACTED|FOLDFLAG_LINEAFTER_EXPANDED|FOLDFLAG_LINEBEFORE_CONTRACTED|FOLDFLAG_LINEBEFORE_EXPANDED|FOLDFLAG_LINESTATE|IV_LOOKBOTH|IV_LOOKFORWARD|IV_NONE|IV_REAL|MARGINOPTION_NONE|MARGINOPTION_SUBLINESELECT|MARGIN_BACK|MARGIN_COLOUR|MARGIN_FORE|MARGIN_NUMBER|MARGIN_RTEXT|MARGIN_SYMBOL|MARGIN_TEXT|MARK_ARROW|MARK_ARROWDOWN|MARK_ARROWS|MARK_BACKGROUND|MARK_BOOKMARK|MARK_BOXMINUS|MARK_BOXMINUSCONNECTED|MARK_BOXPLUS|MARK_BOXPLUSCONNECTED|MARK_CHARACTER|MARK_CIRCLE|MARK_CIRCLEMINUS|MARK_CIRCLEMINUSCONNECTED|MARK_CIRCLEPLUS|MARK_CIRCLEPLUSCONNECTED|MARK_DOTDOTDOT|MARK_EMPTY|MARK_FULLRECT|MARK_LCORNER|MARK_LCORNERCURVE|MARK_LEFTRECT|MARK_MINUS|MARK_PIXMAP|MARK_PLUS|MARK_RGBAIMAGE|MARK_ROUNDRECT|MARK_SHORTARROW|MARK_SMALLRECT|MARK_TCORNER|MARK_TCORNERCURVE|MARK_UNDERLINE|MARK_VERTICALBOOKMARK|MARK_VLINE|MASK_FOLDERS|TD_LONGARROW|TD_STRIKEOUT|TIME_FOREVER|WRAPINDENT_DEEPINDENT|WRAPINDENT_FIXED|WRAPINDENT_INDENT|WRAPINDENT_SAME|WRAPVISUALFLAGLOC_DEFAULT|WRAPVISUALFLAGLOC_END_BY_TEXT|WRAPVISUALFLAGLOC_START_BY_TEXT|WRAPVISUALFLAG_END|WRAPVISUALFLAG_MARGIN|WRAPVISUALFLAG_NONE|WRAPVISUALFLAG_START|WRAP_CHAR|WRAP_NONE|WRAP_WHITESPACE|WRAP_WORD|STYLE_BRACEBAD|STYLE_BRACELIGHT|STYLE_CALLTIP|STYLE_CONTROLCHAR|STYLE_DEFAULT|STYLE_FOLDDISPLAYTEXT|STYLE_INDENTGUIDE|STYLE_LINENUMBER|UPDATE_H_SCROLL|UPDATE_V_SCROLL|VISIBLE_SLOP|VISIBLE_STRICT|brace_bad_light|brace_bad_light_indicator|brace_highlight|brace_highlight_indicator|call_tip_set_hlt|clear_registered_images|clear_representation|contracted_fold_next|doc_line_from_visible|ensure_visible|ensure_visible_enforce_policy|fold_all|fold_children|fold_line|get_default_fold_display_text|hide_lines|line_scroll|line_scroll_down|line_scroll_up|marker_define|marker_define_pixmap|marker_define_rgba_image|marker_enable_highlight|marker_symbol_defined|multi_edge_add_line|multi_edge_clear_all|register_image|register_rgba_image|scroll_caret|scroll_to_end|scroll_to_start|scroll_range|set_default_fold_display_text|set_fold_margin_colour|set_fold_margin_hi_colour|set_sel_back|set_sel_fore|set_visible_policy|set_whitespace_back|set_whitespace_fore|set_x_caret_policy|set_y_caret_policy|show_lines|style_clear_all|style_reset_default|text_height|text_width|toggle_fold|toggle_fold_show_text|vertical_centre_caret|visible_from_doc_line|wrap_count|zoom_in|zoom_out|split|unsplit|goto_buffer)\b</code>
+</pre>
+
+"Replace" with
+
+ view\2\3
+
+It is not recommended to blindly "Replace All". Each change should be manually
+confirmed.
+
+[buffer]: api.html#buffer
+[Scintilla API]: http://scintilla.org/ScintillaDoc.html
+[Scintilla]: http://scintilla.org
+[view]: api.html#view
+
#### Localization Changes
GUI mnemonics in localization keys have been removed. For example, `_L['_New']`
diff --git a/init.lua b/init.lua
index 050c55d6..d7c9f271 100644
--- a/init.lua
+++ b/init.lua
@@ -55,43 +55,45 @@ if not arg then view:goto_buffer(buffer) end
local settings = {}
-local buffer_mt = getmetatable(buffer)
-local orig__index, orig__newindex = buffer_mt.__index, buffer_mt.__newindex
+local buffer_mt, view_mt = getmetatable(buffer), getmetatable(view)
local function repr(v)
return string.format(type(v) == 'string' and '%q' or '%s', v)
end
-buffer_mt.__index = function(buffer, k)
- local v = orig__index(buffer, k)
- if type(v) == 'function' then
- return function(...)
- local args = {...}
- if type(args[1]) == 'table' then table.remove(args, 1) end -- ignore self
- for i = 1, #args do args[i] = repr(args[i]) end
- settings[#settings + 1] = string.format(
- 'buffer:%s(%s)', k, table.concat(args, ','))
- return v(...)
- end
- elseif type(v) == 'table' then
- local property_mt = getmetatable(v)
- setmetatable(v, {
- __index = property_mt.__index,
- __newindex = function(property, k2, v2)
+for _, mt in ipairs{buffer_mt, view_mt} do
+ mt.__orig_index, mt.__orig_newindex = mt.__index, mt.__newindex
+ mt.__index = function(t, k)
+ local v = mt.__orig_index(t, k)
+ if type(v) == 'function' then
+ return function(...)
+ local args = {...}
+ if type(args[1]) == 'table' then table.remove(args, 1) end -- self
+ for i = 1, #args do args[i] = repr(args[i]) end
settings[#settings + 1] = string.format(
- 'buffer.%s[%s]=%s', k, repr(k2), repr(v2))
- property_mt.__newindex(property, k2, v2)
+ 'buffer:%s(%s)', k, table.concat(args, ','))
+ return v(...)
end
- })
+ elseif type(v) == 'table' then
+ local property_mt = getmetatable(v)
+ setmetatable(v, {
+ __index = property_mt.__index,
+ __newindex = function(property, k2, v2)
+ settings[#settings + 1] = string.format(
+ 'buffer.%s[%s]=%s', k, repr(k2), repr(v2))
+ property_mt.__newindex(property, k2, v2)
+ end
+ })
+ end
+ return v
+ end
+ mt.__newindex = function(t, k, v)
+ settings[#settings + 1] = string.format('buffer[%s]=%s', repr(k), repr(v))
+ mt.__orig_newindex(t, k, v)
end
- return v
-end
-buffer_mt.__newindex = function(buffer, k, v)
- settings[#settings + 1] = string.format('buffer[%s]=%s', repr(k), repr(v))
- orig__newindex(buffer, k, v)
end
--- Default buffer settings.
+-- Default buffer and view settings.
-local buffer = buffer
+local buffer, view = buffer, view
buffer:set_theme(not CURSES and 'light' or 'term')
-- Multiple Selection and Virtual Space
@@ -100,74 +102,74 @@ buffer.additional_selection_typing = true
buffer.multi_paste = buffer.MULTIPASTE_EACH
--buffer.virtual_space_options = buffer.VS_RECTANGULARSELECTION |
-- buffer.VS_USERACCESSIBLE
-buffer.rectangular_selection_modifier = buffer.MOD_ALT
-buffer.mouse_selection_rectangular_switch = true
---buffer.additional_carets_blink = false
---buffer.additional_carets_visible = false
+view.rectangular_selection_modifier = view.MOD_ALT
+view.mouse_selection_rectangular_switch = true
+--view.additional_carets_blink = false
+--view.additional_carets_visible = false
-- Scrolling.
-buffer:set_x_caret_policy(buffer.CARET_SLOP, 20)
-buffer:set_y_caret_policy(
- buffer.CARET_SLOP | buffer.CARET_STRICT | buffer.CARET_EVEN, 1)
-buffer:set_visible_policy(buffer.VISIBLE_SLOP | buffer.VISIBLE_STRICT, 5)
---buffer.h_scroll_bar = CURSES
---buffer.v_scroll_bar = false
-if CURSES and not (WIN32 or LINUX or BSD) then buffer.v_scroll_bar = false end
---buffer.scroll_width =
---buffer.scroll_width_tracking = true
---buffer.end_at_last_line = false
+view:set_x_caret_policy(view.CARET_SLOP, 20)
+view:set_y_caret_policy(
+ view.CARET_SLOP | view.CARET_STRICT | view.CARET_EVEN, 1)
+view:set_visible_policy(view.VISIBLE_SLOP | view.VISIBLE_STRICT, 5)
+--view.h_scroll_bar = CURSES
+--view.v_scroll_bar = false
+if CURSES and not (WIN32 or LINUX or BSD) then view.v_scroll_bar = false end
+--view.scroll_width =
+--view.scroll_width_tracking = true
+--view.end_at_last_line = false
-- Whitespace
-buffer.view_ws = buffer.WS_INVISIBLE
---buffer.whitespace_size =
---buffer.extra_ascent =
---buffer.extra_descent =
+view.view_ws = view.WS_INVISIBLE
+--view.whitespace_size =
+--view.extra_ascent =
+--view.extra_descent =
-- Line Endings
-buffer.view_eol = false
+view.view_eol = false
-- Styling
-if not CURSES then buffer.idle_styling = buffer.IDLESTYLING_ALL end
+if not CURSES then view.idle_styling = view.IDLESTYLING_ALL end
-- Caret and Selection Styles.
---buffer.sel_eol_filled = true
-buffer.caret_line_visible = not CURSES
---buffer.caret_line_visible_always = true
---buffer.caret_period = 0
---buffer.caret_style = buffer.CARETSTYLE_BLOCK
---buffer.caret_width =
+--view.sel_eol_filled = true
+view.caret_line_visible = not CURSES
+--view.caret_line_visible_always = true
+--view.caret_period = 0
+--view.caret_style = view.CARETSTYLE_BLOCK
+--view.caret_width =
--buffer.caret_sticky = buffer.CARETSTICKY_ON
-- Margins.
---buffer.margin_left =
---buffer.margin_right =
+--view.margin_left =
+--view.margin_right =
-- Line Number Margin.
-buffer.margin_type_n[1] = buffer.MARGIN_NUMBER
+view.margin_type_n[1] = view.MARGIN_NUMBER
local function resize_line_number_margin()
-- This needs to be evaluated dynamically since themes/styles can change.
- local buffer = _G.buffer
+ local buffer, view = _G.buffer, _G.view
local width = math.max(4, #tostring(buffer.line_count)) *
- buffer:text_width(buffer.STYLE_LINENUMBER, '9') + (not CURSES and 4 or 0)
- buffer.margin_width_n[1] = math.max(buffer.margin_width_n[1], width)
+ view:text_width(view.STYLE_LINENUMBER, '9') + (not CURSES and 4 or 0)
+ view.margin_width_n[1] = math.max(view.margin_width_n[1], width)
end
events.connect(events.BUFFER_NEW, resize_line_number_margin)
events.connect(events.VIEW_NEW, resize_line_number_margin)
events.connect(events.FILE_OPENED, resize_line_number_margin)
-- Marker Margin.
-buffer.margin_width_n[2] = not CURSES and 4 or 1
+view.margin_width_n[2] = not CURSES and 4 or 1
-- Fold Margin.
-buffer.margin_width_n[3] = not CURSES and 12 or 1
-buffer.margin_mask_n[3] = buffer.MASK_FOLDERS
+view.margin_width_n[3] = not CURSES and 12 or 1
+view.margin_mask_n[3] = view.MASK_FOLDERS
-- Other Margins.
-for i = 2, buffer.margins do
- buffer.margin_type_n[i] = buffer.MARGIN_SYMBOL
- buffer.margin_sensitive_n[i] = true
- buffer.margin_cursor_n[i] = buffer.CURSORARROW
- if i > 3 then buffer.margin_width_n[i] = 0 end
+for i = 2, view.margins do
+ view.margin_type_n[i] = view.MARGIN_SYMBOL
+ view.margin_sensitive_n[i] = true
+ view.margin_cursor_n[i] = view.CURSORARROW
+ if i > 3 then view.margin_width_n[i] = 0 end
end
-- Annotations.
-buffer.annotation_visible = buffer.ANNOTATION_BOXED
+view.annotation_visible = view.ANNOTATION_BOXED
-- Other.
buffer.buffered_draw = not CURSES and not OSX -- Quartz buffers drawing on OSX
@@ -182,61 +184,61 @@ buffer.use_tabs = false
--buffer.indent = 2
buffer.tab_indents = true
buffer.back_space_un_indents = true
-buffer.indentation_guides = not CURSES and buffer.IV_LOOKBOTH or buffer.IV_NONE
+view.indentation_guides = not CURSES and view.IV_LOOKBOTH or view.IV_NONE
-- Margin Markers.
-buffer:marker_define(textadept.bookmarks.MARK_BOOKMARK, buffer.MARK_FULLRECT)
-buffer:marker_define(textadept.run.MARK_WARNING, buffer.MARK_FULLRECT)
-buffer:marker_define(textadept.run.MARK_ERROR, buffer.MARK_FULLRECT)
+view:marker_define(textadept.bookmarks.MARK_BOOKMARK, view.MARK_FULLRECT)
+view:marker_define(textadept.run.MARK_WARNING, view.MARK_FULLRECT)
+view:marker_define(textadept.run.MARK_ERROR, view.MARK_FULLRECT)
-- Arrow Folding Symbols.
---buffer:marker_define(buffer.MARKNUM_FOLDEROPEN, buffer.MARK_ARROWDOWN)
---buffer:marker_define(buffer.MARKNUM_FOLDER, buffer.MARK_ARROW)
---buffer:marker_define(buffer.MARKNUM_FOLDERSUB, buffer.MARK_EMPTY)
---buffer:marker_define(buffer.MARKNUM_FOLDERTAIL, buffer.MARK_EMPTY)
---buffer:marker_define(buffer.MARKNUM_FOLDEREND, buffer.MARK_EMPTY)
---buffer:marker_define(buffer.MARKNUM_FOLDEROPENMID, buffer.MARK_EMPTY)
---buffer:marker_define(buffer.MARKNUM_FOLDERMIDTAIL, buffer.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDEROPEN, view.MARK_ARROWDOWN)
+--view:marker_define(buffer.MARKNUM_FOLDER, view.MARK_ARROW)
+--view:marker_define(buffer.MARKNUM_FOLDERSUB, view.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDERTAIL, view.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDEREND, view.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDEROPENMID, view.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDERMIDTAIL, view.MARK_EMPTY)
-- Plus/Minus Folding Symbols.
---buffer:marker_define(buffer.MARKNUM_FOLDEROPEN, buffer.MARK_MINUS)
---buffer:marker_define(buffer.MARKNUM_FOLDER, buffer.MARK_PLUS)
---buffer:marker_define(buffer.MARKNUM_FOLDERSUB, buffer.MARK_EMPTY)
---buffer:marker_define(buffer.MARKNUM_FOLDERTAIL, buffer.MARK_EMPTY)
---buffer:marker_define(buffer.MARKNUM_FOLDEREND, buffer.MARK_EMPTY)
---buffer:marker_define(buffer.MARKNUM_FOLDEROPENMID, buffer.MARK_EMPTY)
---buffer:marker_define(buffer.MARKNUM_FOLDERMIDTAIL, buffer.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDEROPEN, view.MARK_MINUS)
+--view:marker_define(buffer.MARKNUM_FOLDER, view.MARK_PLUS)
+--view:marker_define(buffer.MARKNUM_FOLDERSUB, view.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDERTAIL, view.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDEREND, view.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDEROPENMID, view.MARK_EMPTY)
+--view:marker_define(buffer.MARKNUM_FOLDERMIDTAIL, view.MARK_EMPTY)
-- Circle Tree Folding Symbols.
---buffer:marker_define(buffer.MARKNUM_FOLDEROPEN, buffer.MARK_CIRCLEMINUS)
---buffer:marker_define(buffer.MARKNUM_FOLDER, buffer.MARK_CIRCLEPLUS)
---buffer:marker_define(buffer.MARKNUM_FOLDERSUB, buffer.MARK_VLINE)
---buffer:marker_define(buffer.MARKNUM_FOLDERTAIL, buffer.MARK_LCORNERCURVE)
---buffer:marker_define(
--- buffer.MARKNUM_FOLDEREND, buffer.MARK_CIRCLEPLUSCONNECTED)
---buffer:marker_define(
--- buffer.MARKNUM_FOLDEROPENMID, buffer.MARK_CIRCLEMINUSCONNECTED)
---buffer:marker_define(buffer.MARKNUM_FOLDERMIDTAIL, buffer.MARK_TCORNERCURVE)
+--view:marker_define(buffer.MARKNUM_FOLDEROPEN, view.MARK_CIRCLEMINUS)
+--view:marker_define(buffer.MARKNUM_FOLDER, view.MARK_CIRCLEPLUS)
+--view:marker_define(buffer.MARKNUM_FOLDERSUB, view.MARK_VLINE)
+--view:marker_define(buffer.MARKNUM_FOLDERTAIL, view.MARK_LCORNERCURVE)
+--view:marker_define(
+-- buffer.MARKNUM_FOLDEREND, view.MARK_CIRCLEPLUSCONNECTED)
+--view:marker_define(
+-- buffer.MARKNUM_FOLDEROPENMID, view.MARK_CIRCLEMINUSCONNECTED)
+--view:marker_define(buffer.MARKNUM_FOLDERMIDTAIL, view.MARK_TCORNERCURVE)
-- Box Tree Folding Symbols.
-buffer:marker_define(buffer.MARKNUM_FOLDEROPEN, buffer.MARK_BOXMINUS)
-buffer:marker_define(buffer.MARKNUM_FOLDER, buffer.MARK_BOXPLUS)
-buffer:marker_define(buffer.MARKNUM_FOLDERSUB, buffer.MARK_VLINE)
-buffer:marker_define(buffer.MARKNUM_FOLDERTAIL, buffer.MARK_LCORNER)
-buffer:marker_define(buffer.MARKNUM_FOLDEREND, buffer.MARK_BOXPLUSCONNECTED)
-buffer:marker_define(
- buffer.MARKNUM_FOLDEROPENMID, buffer.MARK_BOXMINUSCONNECTED)
-buffer:marker_define(buffer.MARKNUM_FOLDERMIDTAIL, buffer.MARK_TCORNER)
---buffer:marker_enable_highlight(true)
+view:marker_define(buffer.MARKNUM_FOLDEROPEN, view.MARK_BOXMINUS)
+view:marker_define(buffer.MARKNUM_FOLDER, view.MARK_BOXPLUS)
+view:marker_define(buffer.MARKNUM_FOLDERSUB, view.MARK_VLINE)
+view:marker_define(buffer.MARKNUM_FOLDERTAIL, view.MARK_LCORNER)
+view:marker_define(buffer.MARKNUM_FOLDEREND, view.MARK_BOXPLUSCONNECTED)
+view:marker_define(
+ buffer.MARKNUM_FOLDEROPENMID, view.MARK_BOXMINUSCONNECTED)
+view:marker_define(buffer.MARKNUM_FOLDERMIDTAIL, view.MARK_TCORNER)
+--view:marker_enable_highlight(true)
-- Indicators.
-buffer.indic_style[ui.find.INDIC_FIND] = buffer.INDIC_ROUNDBOX
-if not CURSES then buffer.indic_under[ui.find.INDIC_FIND] = true end
+view.indic_style[ui.find.INDIC_FIND] = view.INDIC_ROUNDBOX
+if not CURSES then view.indic_under[ui.find.INDIC_FIND] = true end
local INDIC_BRACEMATCH = textadept.editing.INDIC_BRACEMATCH
-buffer.indic_style[INDIC_BRACEMATCH] = buffer.INDIC_BOX
-buffer:brace_highlight_indicator(not CURSES, INDIC_BRACEMATCH)
+view.indic_style[INDIC_BRACEMATCH] = view.INDIC_BOX
+view:brace_highlight_indicator(not CURSES, INDIC_BRACEMATCH)
local INDIC_HIGHLIGHT = textadept.editing.INDIC_HIGHLIGHT
-buffer.indic_style[INDIC_HIGHLIGHT] = buffer.INDIC_ROUNDBOX
-if not CURSES then buffer.indic_under[INDIC_HIGHLIGHT] = true end
+view.indic_style[INDIC_HIGHLIGHT] = view.INDIC_ROUNDBOX
+if not CURSES then view.indic_under[INDIC_HIGHLIGHT] = true end
local INDIC_PLACEHOLDER = textadept.snippets.INDIC_PLACEHOLDER
-buffer.indic_style[INDIC_PLACEHOLDER] = not CURSES and buffer.INDIC_DOTBOX or
- buffer.INDIC_STRAIGHTBOX
+view.indic_style[INDIC_PLACEHOLDER] = not CURSES and view.INDIC_DOTBOX or
+ view.INDIC_STRAIGHTBOX
-- Autocompletion.
--buffer.auto_c_separator =
@@ -250,13 +252,13 @@ buffer.auto_c_multi = buffer.MULTIAUTOC_EACH
--buffer.auto_c_auto_hide = false
--buffer.auto_c_drop_rest_of_word = true
--buffer.auto_c_type_separator =
---buffer.auto_c_max_height =
---buffer.auto_c_max_width =
+--view.auto_c_max_height =
+--view.auto_c_max_width =
-- Call Tips.
-buffer.call_tip_use_style = buffer.tab_width *
- buffer:text_width(buffer.STYLE_CALLTIP, ' ')
---buffer.call_tip_position = true
+view.call_tip_use_style = buffer.tab_width *
+ view:text_width(view.STYLE_CALLTIP, ' ')
+--view.call_tip_position = true
-- Folding.
buffer.property['fold'] = '1'
@@ -266,19 +268,19 @@ buffer.property['fold'] = '1'
--buffer.property['fold.compact'] = '1'
buffer.automatic_fold = buffer.AUTOMATICFOLD_SHOW | buffer.AUTOMATICFOLD_CLICK |
buffer.AUTOMATICFOLD_CHANGE
-buffer.fold_flags = not CURSES and buffer.FOLDFLAG_LINEAFTER_CONTRACTED or 0
-buffer.fold_display_text_style = buffer.FOLDDISPLAYTEXT_BOXED
+view.fold_flags = not CURSES and view.FOLDFLAG_LINEAFTER_CONTRACTED or 0
+view.fold_display_text_style = view.FOLDDISPLAYTEXT_BOXED
-- Line Wrapping.
-buffer.wrap_mode = buffer.WRAP_NONE
---buffer.wrap_visual_flags = buffer.WRAPVISUALFLAG_MARGIN
---buffer.wrap_visual_flags_location = buffer.WRAPVISUALFLAGLOC_END_BY_TEXT
---buffer.wrap_indent_mode = buffer.WRAPINDENT_SAME
---buffer.wrap_start_indent =
+view.wrap_mode = view.WRAP_NONE
+--view.wrap_visual_flags = view.WRAPVISUALFLAG_MARGIN
+--view.wrap_visual_flags_location = view.WRAPVISUALFLAGLOC_END_BY_TEXT
+--view.wrap_indent_mode = view.WRAPINDENT_SAME
+--view.wrap_start_indent =
-- Long Lines.
---buffer.edge_mode = not CURSES and buffer.EDGE_LINE or buffer.EDGE_BACKGROUND
---buffer.edge_column = 80
+--view.edge_mode = not CURSES and view.EDGE_LINE or view.EDGE_BACKGROUND
+--view.edge_column = 80
-- Accessibility.
buffer.accessibility = buffer.ACCESSIBILITY_DISABLED
@@ -290,7 +292,9 @@ if lfs.attributes(user_init) then dofile(user_init) end
-- Generate default buffer settings for subsequent buffers and remove temporary
-- buffer metatable listener.
local load_settings = load(table.concat(settings, '\n'))
-buffer_mt.__index, buffer_mt.__newindex = orig__index, orig__newindex
+for _, mt in ipairs{buffer_mt, view_mt} do
+ mt.__index, mt.__newindex = mt.__orig_index, mt.__orig_newindex
+end
-- Sets default properties for a Scintilla document.
events.connect(events.BUFFER_NEW, function()
@@ -308,22 +312,24 @@ events.connect(events.BUFFER_NEW, function()
buffer:private_lexer_call(LOADLEXERLIBRARY, _HOME .. '/lexers')
load_settings()
buffer:private_lexer_call(SETLEXERLANGUAGE, 'text')
- if buffer == ui.command_entry then buffer.caret_line_visible = false end
+ if buffer == ui.command_entry then
+ ui.command_entry.caret_line_visible = false
+ end
end, 1)
-- Sets default properties for a Scintilla window.
events.connect(events.VIEW_NEW, function()
- local buffer = _G.buffer
+ local buffer, view = _G.buffer, _G.view
-- Allow redefinitions of these Scintilla key commands.
local ctrl_keys = {
'[', ']', '/', '\\', 'Z', 'Y', 'X', 'C', 'V', 'A', 'L', 'T', 'D', 'U'
}
for _, key in ipairs(ctrl_keys) do
- buffer:clear_cmd_key(string.byte(key) | buffer.MOD_CTRL << 16)
+ view:clear_cmd_key(string.byte(key) | view.MOD_CTRL << 16)
end
for _, key in ipairs{'L', 'T', 'U', 'Z'} do -- ctrl+shift keys
- buffer:clear_cmd_key(
- string.byte(key) | (buffer.MOD_CTRL | buffer.MOD_SHIFT) << 16)
+ view:clear_cmd_key(
+ string.byte(key) | (view.MOD_CTRL | view.MOD_SHIFT) << 16)
end
-- Since BUFFER_NEW loads themes and settings on startup, only load them for
-- subsequent views.
diff --git a/modules/lua/ta_api b/modules/lua/ta_api
index bc079ada..03fe8200 100644
--- a/modules/lua/ta_api
+++ b/modules/lua/ta_api
@@ -1,15 +1,12 @@
-ALPHA_NOALPHA buffer.ALPHA_NOALPHA (number, Read-only)\n
-ALPHA_OPAQUE buffer.ALPHA_OPAQUE (number, Read-only)\n
-ALPHA_TRANSPARENT buffer.ALPHA_TRANSPARENT (number, Read-only)\n
-ANNOTATION_BOXED buffer.ANNOTATION_BOXED (number, Read-only)\n
-ANNOTATION_HIDDEN buffer.ANNOTATION_HIDDEN (number, Read-only)\n
-ANNOTATION_INDENTED buffer.ANNOTATION_INDENTED (number, Read-only)\n
-ANNOTATION_STANDARD buffer.ANNOTATION_STANDARD (number, Read-only)\n
+ALPHA_NOALPHA view.ALPHA_NOALPHA (number, Read-only)\n
+ALPHA_OPAQUE view.ALPHA_OPAQUE (number, Read-only)\n
+ALPHA_TRANSPARENT view.ALPHA_TRANSPARENT (number, Read-only)\n
+ANNOTATION_BOXED view.ANNOTATION_BOXED (number, Read-only)\n
+ANNOTATION_HIDDEN view.ANNOTATION_HIDDEN (number, Read-only)\n
+ANNOTATION_INDENTED view.ANNOTATION_INDENTED (number, Read-only)\n
+ANNOTATION_STANDARD view.ANNOTATION_STANDARD (number, Read-only)\n
APPLEEVENT_ODOC events.APPLEEVENT_ODOC (string)\nEmitted when Mac OSX tells Textadept to open a file.\nArguments:\n\n* _`uri`_: The UTF-8-encoded URI to open.
ARG_NONE events.ARG_NONE (string)\nEmitted when no command line arguments are passed to Textadept on startup.
-AUTOMATICFOLD_CHANGE buffer.AUTOMATICFOLD_CHANGE (number, Read-only)\n
-AUTOMATICFOLD_CLICK buffer.AUTOMATICFOLD_CLICK (number, Read-only)\n
-AUTOMATICFOLD_SHOW buffer.AUTOMATICFOLD_SHOW (number, Read-only)\n
AUTO_C_CANCELED events.AUTO_C_CANCELED (string)\nEmitted when canceling an autocompletion or user list.
AUTO_C_CHAR_DELETED events.AUTO_C_CHAR_DELETED (string)\nEmitted after deleting a character while an autocompletion or user list is\nactive.
AUTO_C_COMPLETED events.AUTO_C_COMPLETED (string)\nEmitted after inserting an item from an autocompletion list into the\nbuffer.\nArguments:\n\n* _`text`_: The selection's text.\n* _`position`_: The autocompleted word's beginning position.
@@ -25,18 +22,19 @@ CALL_TIP_CLICK events.CALL_TIP_CLICK (string)\nEmitted when clicking on a callti
CARETSTICKY_OFF buffer.CARETSTICKY_OFF (number, Read-only)\n
CARETSTICKY_ON buffer.CARETSTICKY_ON (number, Read-only)\n
CARETSTICKY_WHITESPACE buffer.CARETSTICKY_WHITESPACE (number, Read-only)\n
-CARETSTYLE_BLOCK buffer.CARETSTYLE_BLOCK (number, Read-only)\n
-CARETSTYLE_INVISIBLE buffer.CARETSTYLE_INVISIBLE (number, Read-only)\n
-CARETSTYLE_LINE buffer.CARETSTYLE_LINE (number, Read-only)\n
-CARET_EVEN buffer.CARET_EVEN (number, Read-only)\n
-CARET_JUMPS buffer.CARET_JUMPS (number, Read-only)\n
-CARET_SLOP buffer.CARET_SLOP (number, Read-only)\n
-CARET_STRICT buffer.CARET_STRICT (number, Read-only)\n
+CARETSTYLE_BLOCK view.CARETSTYLE_BLOCK (number, Read-only)\n
+CARETSTYLE_INVISIBLE view.CARETSTYLE_INVISIBLE (number, Read-only)\n
+CARETSTYLE_LINE view.CARETSTYLE_LINE (number, Read-only)\n
+CARET_EVEN view.CARET_EVEN (number, Read-only)\n
+CARET_JUMPS view.CARET_JUMPS (number, Read-only)\n
+CARET_SLOP view.CARET_SLOP (number, Read-only)\n
+CARET_STRICT view.CARET_STRICT (number, Read-only)\n
CASEINSENSITIVEBEHAVIOUR_IGNORECASE buffer.CASEINSENSITIVEBEHAVIOUR_IGNORECASE (number, Read-only)\n
CASEINSENSITIVEBEHAVIOUR_RESPECTCASE buffer.CASEINSENSITIVEBEHAVIOUR_RESPECTCASE (number, Read-only)\n
-CASE_LOWER buffer.CASE_LOWER (number, Read-only)\n
-CASE_MIXED buffer.CASE_MIXED (number, Read-only)\n
-CASE_UPPER buffer.CASE_UPPER (number, Read-only)\n
+CASE_CAMEL view.CASE_CAMEL (number, Read-only)\n
+CASE_LOWER view.CASE_LOWER (number, Read-only)\n
+CASE_MIXED view.CASE_MIXED (number, Read-only)\n
+CASE_UPPER view.CASE_UPPER (number, Read-only)\n
CHAR_ADDED events.CHAR_ADDED (string)\nEmitted after the user types a text character into the buffer.\nArguments:\n\n* _`code`_: The text character's character code.
CLASS lexer.CLASS (string)\nThe token name for class tokens.
CLASS textadept.editing.XPM_IMAGES.CLASS (table)\nThe image number for classes.
@@ -46,10 +44,10 @@ COMPILE_OUTPUT events.COMPILE_OUTPUT (string)\nEmitted when executing a language
CONSTANT lexer.CONSTANT (string)\nThe token name for constant tokens.
CSI events.CSI (string)\nEmitted when the terminal version receives an unrecognized CSI sequence.\nArguments:\n\n* _`cmd`_: The 24-bit CSI command value. The lowest byte contains the\n command byte. The second lowest byte contains the leading byte, if any\n (e.g. '?'). The third lowest byte contains the intermediate byte, if any\n (e.g. '$').\n* _`args`_: Table of numeric arguments of the CSI sequence.
CURSES _G.CURSES (bool)\nWhether or not Textadept is running in the terminal.\nCurses feature incompatibilities are listed in the Appendix.
-CURSORARROW buffer.CURSORARROW (number, Read-only)\n
-CURSORNORMAL buffer.CURSORNORMAL (number, Read-only)\n
-CURSORREVERSEARROW buffer.CURSORREVERSEARROW (number, Read-only)\n
-CURSORWAIT buffer.CURSORWAIT (number, Read-only)\n
+CURSORARROW view.CURSORARROW (number, Read-only)\n
+CURSORNORMAL view.CURSORNORMAL (number, Read-only)\n
+CURSORREVERSEARROW view.CURSORREVERSEARROW (number, Read-only)\n
+CURSORWAIT view.CURSORWAIT (number, Read-only)\n
DEBUGGER_BREAKPOINT_ADDED events.DEBUGGER_BREAKPOINT_ADDED (string)\nEmitted when a breakpoint is added.\nThis is only emitted when the debugger is running and paused (e.g. at a\nbreakpoint). Breakpoints added while the debugger is not running are queued\nup until the debugger starts.\nArguments:\n\n* _`lexer`_: The lexer name of the language to add a breakpoint for.\n* _`filename`_: The filename to add a breakpoint in.\n* _`line`_: The 1-based line number to break on.
DEBUGGER_BREAKPOINT_REMOVED events.DEBUGGER_BREAKPOINT_REMOVED (string)\nEmitted when a breakpoint is removed.\nThis is only emitted when the debugger is running and paused (e.g. at a\nbreakpoint).\nArguments:\n\n* _`lexer`_: The lexer name of the language being debugged.\n* _`filename`_: The filename to remove a breakpoint from.\n* _`line`_: The 1-based line number to stop breaking on.
DEBUGGER_COMMAND events.DEBUGGER_COMMAND (string)\nEmitted when a debugger command should be run.\nThis is only emitted when the debugger is running and paused (e.g. at a\nbreakpoint).\nArguments:\n\n* _`lexer`_: The lexer name of the language being debugged.\n* _`text`_: The text of the command to run.
@@ -67,13 +65,13 @@ DEBUGGER_WATCH_ADDED events.DEBUGGER_WATCH_ADDED (string)\nEmitted when a watch
DEBUGGER_WATCH_REMOVED events.DEBUGGER_WATCH_REMOVED (string)\nEmitted when a breakpoint is removed.\nThis is only emitted when the debugger is running and paused (e.g. at a\nbreakpoint).\nArguments:\n\n* _`lexer`_: The lexer name of the language being debugged.\n* _`expr`_: The expression to stop watching.\n* _`id`_: The expression's ID number.
DEFAULT lexer.DEFAULT (string)\nThe token name for default tokens.
DOCUTILS_PATH _M.rest.DOCUTILS_PATH (string)\nThe absolute path to the directory that contains the Python Docutils\nlibrary if it is not in the environment's `PYTHONPATH`.\nThe default value is `nil`, which indicates Docutils is installed.
-DOUBLE_CLICK events.DOUBLE_CLICK (string)\nEmitted after double-clicking the mouse button.\nArguments:\n\n* _`position`_: The position double-clicked.\n* _`line`_: The line number of the position double-clicked.\n* _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,\n `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.\n Note: If you set `buffer.rectangular_selection_modifier` to\n `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK.
+DOUBLE_CLICK events.DOUBLE_CLICK (string)\nEmitted after double-clicking the mouse button.\nArguments:\n\n* _`position`_: The position double-clicked.\n* _`line`_: The line number of the position double-clicked.\n* _`modifiers`_: A bit-mask of any modifier keys used: `view.MOD_CTRL`,\n `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.\n Note: If you set `view.rectangular_selection_modifier` to\n `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK.
DWELL_END events.DWELL_END (string)\nEmitted after `DWELL_START` when the user moves the mouse, presses a key,\nor scrolls the view.\nArguments:\n\n* _`position`_: The position closest to *x* and *y*.\n* _`x`_: The x-coordinate of the mouse in the view.\n* _`y`_: The y-coordinate of the mouse in the view.
-DWELL_START events.DWELL_START (string)\nEmitted when the mouse is stationary for `buffer.mouse_dwell_time`\nmilliseconds.\nArguments:\n\n* _`position`_: The position closest to *x* and *y*.\n* _`x`_: The x-coordinate of the mouse in the view.\n* _`y`_: The y-coordinate of the mouse in the view.
-EDGE_BACKGROUND buffer.EDGE_BACKGROUND (number, Read-only)\n
-EDGE_LINE buffer.EDGE_LINE (number, Read-only)\n
-EDGE_MULTILINE buffer.EDGE_MULTILINE (number, Read-only)\n
-EDGE_NONE buffer.EDGE_NONE (number, Read-only)\n
+DWELL_START events.DWELL_START (string)\nEmitted when the mouse is stationary for `view.mouse_dwell_time`\nmilliseconds.\nArguments:\n\n* _`position`_: The position closest to *x* and *y*.\n* _`x`_: The x-coordinate of the mouse in the view.\n* _`y`_: The y-coordinate of the mouse in the view.
+EDGE_BACKGROUND view.EDGE_BACKGROUND (number, Read-only)\n
+EDGE_LINE view.EDGE_LINE (number, Read-only)\n
+EDGE_MULTILINE view.EDGE_MULTILINE (number, Read-only)\n
+EDGE_NONE view.EDGE_NONE (number, Read-only)\n
EOL_CR buffer.EOL_CR (number, Read-only)\n
EOL_CRLF buffer.EOL_CRLF (number, Read-only)\n
EOL_LF buffer.EOL_LF (number, Read-only)\n
@@ -90,15 +88,18 @@ FIND_WHOLEWORD buffer.FIND_WHOLEWORD (number, Read-only)\n
FIND_WORDSTART buffer.FIND_WORDSTART (number, Read-only)\n
FIND_WRAPPED events.FIND_WRAPPED (string)\nEmitted when a text search wraps (passes through the beginning of the\nbuffer), either from bottom to top (when searching for a next occurrence),\nor from top to bottom (when searching for a previous occurrence).\nThis is useful for implementing a more visual or audible notice when a\nsearch wraps in addition to the statusbar message.
FOCUS events.FOCUS (string)\nEmitted when Textadept receives focus.\nThis event is never emitted when Textadept is running in the terminal.
-FOLDACTION_CONTRACT buffer.FOLDACTION_CONTRACT (number, Read-only)\n
-FOLDACTION_EXPAND buffer.FOLDACTION_EXPAND (number, Read-only)\n
-FOLDACTION_TOGGLE buffer.FOLDACTION_TOGGLE (number, Read-only)\n
-FOLDFLAG_LEVELNUMBERS buffer.FOLDFLAG_LEVELNUMBERS (number, Read-only)\n
-FOLDFLAG_LINEAFTER_CONTRACTED buffer.FOLDFLAG_LINEAFTER_CONTRACTED (number, Read-only)\n
-FOLDFLAG_LINEAFTER_EXPANDED buffer.FOLDFLAG_LINEAFTER_EXPANDED (number, Read-only)\n
-FOLDFLAG_LINEBEFORE_CONTRACTED buffer.FOLDFLAG_LINEBEFORE_CONTRACTED (number, Read-only)\n
-FOLDFLAG_LINEBEFORE_EXPANDED buffer.FOLDFLAG_LINEBEFORE_EXPANDED (number, Read-only)\n
-FOLDFLAG_LINESTATE buffer.FOLDFLAG_LINESTATE (number, Read-only)\n
+FOLDACTION_CONTRACT view.FOLDACTION_CONTRACT (number, Read-only)\n
+FOLDACTION_EXPAND view.FOLDACTION_EXPAND (number, Read-only)\n
+FOLDACTION_TOGGLE view.FOLDACTION_TOGGLE (number, Read-only)\n
+FOLDDISPLAYTEXT_BOXED view.FOLDDISPLAYTEXT_BOXED (number, Read-only)\n
+FOLDDISPLAYTEXT_HIDDEN view.FOLDDISPLAYTEXT_HIDDEN (number, Read-only)\n
+FOLDDISPLAYTEXT_STANDARD view.FOLDDISPLAYTEXT_STANDARD (number, Read-only)\n
+FOLDFLAG_LEVELNUMBERS view.FOLDFLAG_LEVELNUMBERS (number, Read-only)\n
+FOLDFLAG_LINEAFTER_CONTRACTED view.FOLDFLAG_LINEAFTER_CONTRACTED (number, Read-only)\n
+FOLDFLAG_LINEAFTER_EXPANDED view.FOLDFLAG_LINEAFTER_EXPANDED (number, Read-only)\n
+FOLDFLAG_LINEBEFORE_CONTRACTED view.FOLDFLAG_LINEBEFORE_CONTRACTED (number, Read-only)\n
+FOLDFLAG_LINEBEFORE_EXPANDED view.FOLDFLAG_LINEBEFORE_EXPANDED (number, Read-only)\n
+FOLDFLAG_LINESTATE view.FOLDFLAG_LINESTATE (number, Read-only)\n
FOLDLEVELBASE buffer.FOLDLEVELBASE (number, Read-only)\n
FOLDLEVELHEADERFLAG buffer.FOLDLEVELHEADERFLAG (number, Read-only)\n
FOLDLEVELNUMBERMASK buffer.FOLDLEVELNUMBERMASK (number, Read-only)\n
@@ -108,41 +109,45 @@ FOLD_BLANK lexer.FOLD_BLANK (number)\nFlag indicating that the line is blank.
FOLD_HEADER lexer.FOLD_HEADER (number)\nFlag indicating the line is fold point.
FUNCTION lexer.FUNCTION (string)\nThe token name for function tokens.
IDENTIFIER lexer.IDENTIFIER (string)\nThe token name for identifier tokens.
-INDICATOR_CLICK events.INDICATOR_CLICK (string)\nEmitted when clicking the mouse on text that has an indicator present.\nArguments:\n\n* _`position`_: The clicked text's position.\n* _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,\n `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.\n Note: If you set `buffer.rectangular_selection_modifier` to\n `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK.
+INDICATOR_CLICK events.INDICATOR_CLICK (string)\nEmitted when clicking the mouse on text that has an indicator present.\nArguments:\n\n* _`position`_: The clicked text's position.\n* _`modifiers`_: A bit-mask of any modifier keys used: `view.MOD_CTRL`,\n `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.\n Note: If you set `view.rectangular_selection_modifier` to\n `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK.
+INDICATOR_MAX buffer.INDICATOR_MAX (number, Read-only)\n
INDICATOR_RELEASE events.INDICATOR_RELEASE (string)\nEmitted when releasing the mouse after clicking on text that has an\nindicator present.\nArguments:\n\n* _`position`_: The clicked text's position.
INDIC_ADDITION file_diff.INDIC_ADDITION (number)\nThe indicator number for text added within lines.
-INDIC_BOX buffer.INDIC_BOX (number, Read-only)\n
+INDIC_BOX view.INDIC_BOX (number, Read-only)\n
INDIC_BRACEMATCH textadept.editing.INDIC_BRACEMATCH (number)\nThe matching brace highlight indicator number.
-INDIC_COMPOSITIONTHICK buffer.INDIC_COMPOSITIONTHICK (number, Read-only)\n
-INDIC_COMPOSITIONTHIN buffer.INDIC_COMPOSITIONTHIN (number, Read-only)\n
-INDIC_DASH buffer.INDIC_DASH (number, Read-only)\n
+INDIC_COMPOSITIONTHICK view.INDIC_COMPOSITIONTHICK (number, Read-only)\n
+INDIC_COMPOSITIONTHIN view.INDIC_COMPOSITIONTHIN (number, Read-only)\n
+INDIC_DASH view.INDIC_DASH (number, Read-only)\n
INDIC_DELETION file_diff.INDIC_DELETION (number)\nThe indicator number for text deleted within lines.
-INDIC_DIAGONAL buffer.INDIC_DIAGONAL (number, Read-only)\n
-INDIC_DOTBOX buffer.INDIC_DOTBOX (number, Read-only)\n
-INDIC_DOTS buffer.INDIC_DOTS (number, Read-only)\n
+INDIC_DIAGONAL view.INDIC_DIAGONAL (number, Read-only)\n
+INDIC_DOTBOX view.INDIC_DOTBOX (number, Read-only)\n
+INDIC_DOTS view.INDIC_DOTS (number, Read-only)\n
INDIC_ERROR lsp.INDIC_ERROR (number)\nThe error diagnostic indicator number.
INDIC_FIND ui.find.INDIC_FIND (number)\nThe find in files highlight indicator number.
-INDIC_FULLBOX buffer.INDIC_FULLBOX (number, Read-only)\n
-INDIC_HIDDEN buffer.INDIC_HIDDEN (number, Read-only)\n
+INDIC_FULLBOX view.INDIC_FULLBOX (number, Read-only)\n
+INDIC_GRADIENT view.INDIC_GRADIENT (number, Read-only)\n
+INDIC_GRADIENTCENTRE view.INDIC_GRADIENTCENTRE (number, Read-only)\n
+INDIC_HIDDEN view.INDIC_HIDDEN (number, Read-only)\n
INDIC_HIGHLIGHT textadept.editing.INDIC_HIGHLIGHT (number)\nThe word highlight indicator number.
-INDIC_MAX buffer.INDIC_MAX (number, Read-only)\n
INDIC_PLACEHOLDER textadept.snippets.INDIC_PLACEHOLDER (number)\nThe snippet placeholder indicator number.
-INDIC_PLAIN buffer.INDIC_PLAIN (number, Read-only)\n
-INDIC_ROUNDBOX buffer.INDIC_ROUNDBOX (number, Read-only)\n
+INDIC_PLAIN view.INDIC_PLAIN (number, Read-only)\n
+INDIC_POINT view.INDIC_POINT (number, Read-only)\n
+INDIC_POINTCHARACTER view.INDIC_POINTCHARACTER (number, Read-only)\n
+INDIC_ROUNDBOX view.INDIC_ROUNDBOX (number, Read-only)\n
INDIC_SPELLING spellcheck.INDIC_SPELLING (number)\nThe spelling error indicator number.
-INDIC_SQUIGGLE buffer.INDIC_SQUIGGLE (number, Read-only)\n
-INDIC_SQUIGGLELOW buffer.INDIC_SQUIGGLELOW (number, Read-only)\n
-INDIC_SQUIGGLEPIXMAP buffer.INDIC_SQUIGGLEPIXMAP (number, Read-only)\n
-INDIC_STRAIGHTBOX buffer.INDIC_STRAIGHTBOX (number, Read-only)\n
-INDIC_STRIKE buffer.INDIC_STRIKE (number, Read-only)\n
-INDIC_TEXTFORE buffer.INDIC_TEXTFORE (number, Read-only)\n
-INDIC_TT buffer.INDIC_TT (number, Read-only)\n
+INDIC_SQUIGGLE view.INDIC_SQUIGGLE (number, Read-only)\n
+INDIC_SQUIGGLELOW view.INDIC_SQUIGGLELOW (number, Read-only)\n
+INDIC_SQUIGGLEPIXMAP view.INDIC_SQUIGGLEPIXMAP (number, Read-only)\n
+INDIC_STRAIGHTBOX view.INDIC_STRAIGHTBOX (number, Read-only)\n
+INDIC_STRIKE view.INDIC_STRIKE (number, Read-only)\n
+INDIC_TEXTFORE view.INDIC_TEXTFORE (number, Read-only)\n
+INDIC_TT view.INDIC_TT (number, Read-only)\n
INDIC_WARN lsp.INDIC_WARN (number)\nThe warning diagnostic indicator number.
INITIALIZED events.INITIALIZED (string)\nEmitted after Textadept finishes initializing.
-IV_LOOKBOTH buffer.IV_LOOKBOTH (number, Read-only)\n
-IV_LOOKFORWARD buffer.IV_LOOKFORWARD (number, Read-only)\n
-IV_NONE buffer.IV_NONE (number, Read-only)\n
-IV_REAL buffer.IV_REAL (number, Read-only)\n
+IV_LOOKBOTH view.IV_LOOKBOTH (number, Read-only)\n
+IV_LOOKFORWARD view.IV_LOOKFORWARD (number, Read-only)\n
+IV_NONE view.IV_NONE (number, Read-only)\n
+IV_REAL view.IV_REAL (number, Read-only)\n
KEYPRESS events.KEYPRESS (string)\nEmitted when pressing a key.\nIf any handler returns `true`, the key is not inserted into the buffer.\nArguments:\n\n* _`code`_: The numeric key code.\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.\n* _`meta`_: The "Command" modifier key on Mac OSX is held down.\n* _`caps_lock`_: The "Caps Lock" modifier is on.
KEYSYMS keys.KEYSYMS (table)\nLookup table for string representations of key codes higher than 255.\nKey codes can be identified by temporarily uncommenting the `print()`\nstatements in *core/keys.lua*.
KEYWORD lexer.KEYWORD (string)\nThe token name for keyword tokens.
@@ -153,16 +158,16 @@ LSP_INITIALIZED events.LSP_INITIALIZED (string)\nEmitted when an LSP connection
LSP_NOTIFICATION events.LSP_NOTIFICATION (string)\nEmitted when an LSP server emits an unhandled notification.\nThis is useful for handling server-specific notifications. Responses can be\nsent via `Server:respond()`.\nAn event handler should return `true`.\nArguments:\n\n* _`lexer`_: The lexer language of the LSP.\n* _`server`_: The LSP server.\n* _`method`_: The string LSP notification method name.\n* _`params`_: The table of LSP notification params. Contents may be\n server-specific.
LUA_FLAGS ctags.LUA_FLAGS (string)\nA set of command-line options for ctags that better parses Lua code.\nCombine this with other flags in `ctags.ctags_flags` if Lua files will\nbe parsed.
LUA_GENERATOR ctags.LUA_GENERATOR (string)\nPlaceholder value that indicates Textadept's built-in Lua tags and api file\ngenerator should be used instead of ctags. Requires LuaDoc to be installed.
-MARGINOPTION_NONE buffer.MARGINOPTION_NONE (number, Read-only)\n
-MARGINOPTION_SUBLINESELECT buffer.MARGINOPTION_SUBLINESELECT (number, Read-only)\n
-MARGIN_BACK buffer.MARGIN_BACK (number, Read-only)\n
-MARGIN_CLICK events.MARGIN_CLICK (string)\nEmitted when clicking the mouse inside a sensitive margin.\nArguments:\n\n* _`margin`_: The margin number clicked.\n* _`position`_: The beginning position of the clicked margin's line.\n* _`modifiers`_: A bit-mask of any modifier keys used: `buffer.MOD_CTRL`,\n `buffer.MOD_SHIFT`, `buffer.MOD_ALT`, and `buffer.MOD_META`.\n Note: If you set `buffer.rectangular_selection_modifier` to\n `buffer.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK.
-MARGIN_COLOUR buffer.MARGIN_COLOUR (number, Read-only)\n
-MARGIN_FORE buffer.MARGIN_FORE (number, Read-only)\n
-MARGIN_NUMBER buffer.MARGIN_NUMBER (number, Read-only)\n
-MARGIN_RTEXT buffer.MARGIN_RTEXT (number, Read-only)\n
-MARGIN_SYMBOL buffer.MARGIN_SYMBOL (number, Read-only)\n
-MARGIN_TEXT buffer.MARGIN_TEXT (number, Read-only)\n
+MARGINOPTION_NONE view.MARGINOPTION_NONE (number, Read-only)\n
+MARGINOPTION_SUBLINESELECT view.MARGINOPTION_SUBLINESELECT (number, Read-only)\n
+MARGIN_BACK view.MARGIN_BACK (number, Read-only)\n
+MARGIN_CLICK events.MARGIN_CLICK (string)\nEmitted when clicking the mouse inside a sensitive margin.\nArguments:\n\n* _`margin`_: The margin number clicked.\n* _`position`_: The beginning position of the clicked margin's line.\n* _`modifiers`_: A bit-mask of any modifier keys used: `view.MOD_CTRL`,\n `view.MOD_SHIFT`, `view.MOD_ALT`, and `view.MOD_META`.\n Note: If you set `view.rectangular_selection_modifier` to\n `view.MOD_CTRL`, the "Control" modifier is reported as *both* "Control"\n and "Alt" due to a Scintilla limitation with GTK.
+MARGIN_COLOUR view.MARGIN_COLOUR (number, Read-only)\n
+MARGIN_FORE view.MARGIN_FORE (number, Read-only)\n
+MARGIN_NUMBER view.MARGIN_NUMBER (number, Read-only)\n
+MARGIN_RTEXT view.MARGIN_RTEXT (number, Read-only)\n
+MARGIN_SYMBOL view.MARGIN_SYMBOL (number, Read-only)\n
+MARGIN_TEXT view.MARGIN_TEXT (number, Read-only)\n
MARKER_MAX buffer.MARKER_MAX (number, Read-only)\n
MARKNUM_FOLDER buffer.MARKNUM_FOLDER (number, Read-only)\n
MARKNUM_FOLDEREND buffer.MARKNUM_FOLDEREND (number, Read-only)\n
@@ -172,59 +177,59 @@ MARKNUM_FOLDEROPENMID buffer.MARKNUM_FOLDEROPENMID (number, Read-only)\n
MARKNUM_FOLDERSUB buffer.MARKNUM_FOLDERSUB (number, Read-only)\n
MARKNUM_FOLDERTAIL buffer.MARKNUM_FOLDERTAIL (number, Read-only)\n
MARK_ADDITION file_diff.MARK_ADDITION (number)\nThe marker for line additions.
-MARK_ARROW buffer.MARK_ARROW (number, Read-only)\n
-MARK_ARROWDOWN buffer.MARK_ARROWDOWN (number, Read-only)\n
-MARK_ARROWS buffer.MARK_ARROWS (number, Read-only)\n
+MARK_ARROW view.MARK_ARROW (number, Read-only)\n
+MARK_ARROWDOWN view.MARK_ARROWDOWN (number, Read-only)\n
+MARK_ARROWS view.MARK_ARROWS (number, Read-only)\n
MARK_AVAILABLE buffer.MARK_AVAILABLE (number, Read-only)\n
-MARK_BACKGROUND buffer.MARK_BACKGROUND (number, Read-only)\n
-MARK_BOOKMARK buffer.MARK_BOOKMARK (number, Read-only)\n
+MARK_BACKGROUND view.MARK_BACKGROUND (number, Read-only)\n
MARK_BOOKMARK textadept.bookmarks.MARK_BOOKMARK (number)\nThe bookmark mark number.
-MARK_BOXMINUS buffer.MARK_BOXMINUS (number, Read-only)\n
-MARK_BOXMINUSCONNECTED buffer.MARK_BOXMINUSCONNECTED (number, Read-only)\n
-MARK_BOXPLUS buffer.MARK_BOXPLUS (number, Read-only)\n
-MARK_BOXPLUSCONNECTED buffer.MARK_BOXPLUSCONNECTED (number, Read-only)\n
+MARK_BOOKMARK view.MARK_BOOKMARK (number, Read-only)\n
+MARK_BOXMINUS view.MARK_BOXMINUS (number, Read-only)\n
+MARK_BOXMINUSCONNECTED view.MARK_BOXMINUSCONNECTED (number, Read-only)\n
+MARK_BOXPLUS view.MARK_BOXPLUS (number, Read-only)\n
+MARK_BOXPLUSCONNECTED view.MARK_BOXPLUSCONNECTED (number, Read-only)\n
MARK_BREAKPOINT_COLOR debugger.MARK_BREAKPOINT_COLOR (number)\nThe color of breakpoint markers.
-MARK_CHARACTER buffer.MARK_CHARACTER (number, Read-only)\n
-MARK_CIRCLE buffer.MARK_CIRCLE (number, Read-only)\n
-MARK_CIRCLEMINUS buffer.MARK_CIRCLEMINUS (number, Read-only)\n
-MARK_CIRCLEMINUSCONNECTED buffer.MARK_CIRCLEMINUSCONNECTED (number, Read-only)\n
-MARK_CIRCLEPLUS buffer.MARK_CIRCLEPLUS (number, Read-only)\n
-MARK_CIRCLEPLUSCONNECTED buffer.MARK_CIRCLEPLUSCONNECTED (number, Read-only)\n
+MARK_CHARACTER view.MARK_CHARACTER (number, Read-only)\n
+MARK_CIRCLE view.MARK_CIRCLE (number, Read-only)\n
+MARK_CIRCLEMINUS view.MARK_CIRCLEMINUS (number, Read-only)\n
+MARK_CIRCLEMINUSCONNECTED view.MARK_CIRCLEMINUSCONNECTED (number, Read-only)\n
+MARK_CIRCLEPLUS view.MARK_CIRCLEPLUS (number, Read-only)\n
+MARK_CIRCLEPLUSCONNECTED view.MARK_CIRCLEPLUSCONNECTED (number, Read-only)\n
MARK_DEBUGLINE_COLOR debugger.MARK_DEBUGLINE_COLOR (number)\nThe color of the current debug line marker.
MARK_DELETION file_diff.MARK_DELETION (number)\nThe marker for line deletions.
-MARK_DOTDOTDOT buffer.MARK_DOTDOTDOT (number, Read-only)\n
-MARK_EMPTY buffer.MARK_EMPTY (number, Read-only)\n
+MARK_DOTDOTDOT view.MARK_DOTDOTDOT (number, Read-only)\n
+MARK_EMPTY view.MARK_EMPTY (number, Read-only)\n
MARK_ERROR textadept.run.MARK_ERROR (number)\nThe run or compile error marker number.
-MARK_FULLRECT buffer.MARK_FULLRECT (number, Read-only)\n
-MARK_LCORNER buffer.MARK_LCORNER (number, Read-only)\n
-MARK_LCORNERCURVE buffer.MARK_LCORNERCURVE (number, Read-only)\n
-MARK_LEFTRECT buffer.MARK_LEFTRECT (number, Read-only)\n
-MARK_MINUS buffer.MARK_MINUS (number, Read-only)\n
+MARK_FULLRECT view.MARK_FULLRECT (number, Read-only)\n
+MARK_LCORNER view.MARK_LCORNER (number, Read-only)\n
+MARK_LCORNERCURVE view.MARK_LCORNERCURVE (number, Read-only)\n
+MARK_LEFTRECT view.MARK_LEFTRECT (number, Read-only)\n
+MARK_MINUS view.MARK_MINUS (number, Read-only)\n
MARK_MODIFICATION file_diff.MARK_MODIFICATION (number)\nThe marker for line modifications.
-MARK_PIXMAP buffer.MARK_PIXMAP (number, Read-only)\n
-MARK_PLUS buffer.MARK_PLUS (number, Read-only)\n
-MARK_RGBAIMAGE buffer.MARK_RGBAIMAGE (number, Read-only)\n
-MARK_ROUNDRECT buffer.MARK_ROUNDRECT (number, Read-only)\n
-MARK_SHORTARROW buffer.MARK_SHORTARROW (number, Read-only)\n
-MARK_SMALLRECT buffer.MARK_SMALLRECT (number, Read-only)\n
-MARK_TCORNER buffer.MARK_TCORNER (number, Read-only)\n
-MARK_TCORNERCURVE buffer.MARK_TCORNERCURVE (number, Read-only)\n
-MARK_UNDERLINE buffer.MARK_UNDERLINE (number, Read-only)\n
-MARK_VERTICALBOOKMARK buffer.MARK_VERTICALBOOKMARK (number, Read-only)\n
-MARK_VLINE buffer.MARK_VLINE (number, Read-only)\n
+MARK_PIXMAP view.MARK_PIXMAP (number, Read-only)\n
+MARK_PLUS view.MARK_PLUS (number, Read-only)\n
+MARK_RGBAIMAGE view.MARK_RGBAIMAGE (number, Read-only)\n
+MARK_ROUNDRECT view.MARK_ROUNDRECT (number, Read-only)\n
+MARK_SHORTARROW view.MARK_SHORTARROW (number, Read-only)\n
+MARK_SMALLRECT view.MARK_SMALLRECT (number, Read-only)\n
+MARK_TCORNER view.MARK_TCORNER (number, Read-only)\n
+MARK_TCORNERCURVE view.MARK_TCORNERCURVE (number, Read-only)\n
+MARK_UNDERLINE view.MARK_UNDERLINE (number, Read-only)\n
+MARK_VERTICALBOOKMARK view.MARK_VERTICALBOOKMARK (number, Read-only)\n
+MARK_VLINE view.MARK_VLINE (number, Read-only)\n
MARK_WARNING textadept.run.MARK_WARNING (number)\nThe run or compile warning marker number.
-MASK_FOLDERS buffer.MASK_FOLDERS (number, Read-only)\n
+MASK_FOLDERS view.MASK_FOLDERS (number, Read-only)\n
MENU_CLICKED events.MENU_CLICKED (string)\nEmitted after selecting a menu item.\nArguments:\n\n* _`menu_id`_: The numeric ID of the menu item, which was defined in\n `ui.menu()`.
METHOD textadept.editing.XPM_IMAGES.METHOD (table)\nThe image number for methods.
-MOD_ALT buffer.MOD_ALT (number, Read-only)\n
-MOD_CTRL buffer.MOD_CTRL (number, Read-only)\n
-MOD_META buffer.MOD_META (number, Read-only)\n
-MOD_SHIFT buffer.MOD_SHIFT (number, Read-only)\n
-MOD_SUPER buffer.MOD_SUPER (number, Read-only)\n
-MOUSE events.MOUSE (string)\nEmitted by the terminal version for an unhandled mouse event.\nA handler should return `true` if it handled the event. Otherwise Textadept\nwill try again. (This side effect for a `false` or `nil` return is useful\nfor sending the original mouse event to a different view that a handler\nhas switched to.)\nArguments:\n\n* _`event`_: The mouse event: `buffer.MOUSE_PRESS`, `buffer.MOUSE_DRAG`, or\n `buffer.MOUSE_RELEASE`.\n* _`button`_: The mouse button number.\n* _`y`_: The y-coordinate of the mouse event, starting from 1.\n* _`x`_: The x-coordinate of the mouse event, starting from 1.\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.
-MOUSE_DRAG buffer.MOUSE_DRAG (number, Read-only)\n
-MOUSE_PRESS buffer.MOUSE_PRESS (number, Read-only)\n
-MOUSE_RELEASE buffer.MOUSE_RELEASE (number, Read-only)\n
+MOD_ALT view.MOD_ALT (number, Read-only)\n
+MOD_CTRL view.MOD_CTRL (number, Read-only)\n
+MOD_META view.MOD_META (number, Read-only)\n
+MOD_SHIFT view.MOD_SHIFT (number, Read-only)\n
+MOD_SUPER view.MOD_SUPER (number, Read-only)\n
+MOUSE events.MOUSE (string)\nEmitted by the terminal version for an unhandled mouse event.\nA handler should return `true` if it handled the event. Otherwise Textadept\nwill try again. (This side effect for a `false` or `nil` return is useful\nfor sending the original mouse event to a different view that a handler\nhas switched to.)\nArguments:\n\n* _`event`_: The mouse event: `view.MOUSE_PRESS`, `view.MOUSE_DRAG`, or\n `view.MOUSE_RELEASE`.\n* _`button`_: The mouse button number.\n* _`y`_: The y-coordinate of the mouse event, starting from 1.\n* _`x`_: The x-coordinate of the mouse event, starting from 1.\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.
+MOUSE_DRAG view.MOUSE_DRAG (number, Read-only)\n
+MOUSE_PRESS view.MOUSE_PRESS (number, Read-only)\n
+MOUSE_RELEASE view.MOUSE_RELEASE (number, Read-only)\n
MULTIAUTOC_EACH buffer.MULTIAUTOC_EACH (number, Read-only)\n
MULTIAUTOC_ONCE buffer.MULTIAUTOC_ONCE (number, Read-only)\n
MULTIPASTE_EACH buffer.MULTIPASTE_EACH (number, Read-only)\n
@@ -257,31 +262,31 @@ SIGNAL textadept.editing.XPM_IMAGES.SIGNAL (table)\nThe image number for signals
SLOT textadept.editing.XPM_IMAGES.SLOT (table)\nThe image number for slots.
STRING lexer.STRING (string)\nThe token name for string tokens.
STRUCT textadept.editing.XPM_IMAGES.STRUCT (table)\nThe image number for structures.
-STYLE_BRACEBAD buffer.STYLE_BRACEBAD (number, Read-only)\n
STYLE_BRACEBAD lexer.STYLE_BRACEBAD (string)\nThe style used for unmatched brace characters.
-STYLE_BRACELIGHT buffer.STYLE_BRACELIGHT (number, Read-only)\n
+STYLE_BRACEBAD view.STYLE_BRACEBAD (number, Read-only)\n
STYLE_BRACELIGHT lexer.STYLE_BRACELIGHT (string)\nThe style used for highlighted brace characters.
-STYLE_CALLTIP buffer.STYLE_CALLTIP (number, Read-only)\n
+STYLE_BRACELIGHT view.STYLE_BRACELIGHT (number, Read-only)\n
STYLE_CALLTIP lexer.STYLE_CALLTIP (string)\nThe style used by call tips if `buffer.call_tip_use_style` is set.\nOnly the font name, size, and color attributes are used.
+STYLE_CALLTIP view.STYLE_CALLTIP (number, Read-only)\n
STYLE_CLASS lexer.STYLE_CLASS (string)\nThe style typically used for class definitions.
STYLE_COMMENT lexer.STYLE_COMMENT (string)\nThe style typically used for code comments.
STYLE_CONSTANT lexer.STYLE_CONSTANT (string)\nThe style typically used for constants.
-STYLE_CONTROLCHAR buffer.STYLE_CONTROLCHAR (number, Read-only)\n
STYLE_CONTROLCHAR lexer.STYLE_CONTROLCHAR (string)\nThe style used for control characters.\nColor attributes are ignored.
-STYLE_DEFAULT buffer.STYLE_DEFAULT (number, Read-only)\n
+STYLE_CONTROLCHAR view.STYLE_CONTROLCHAR (number, Read-only)\n
STYLE_DEFAULT lexer.STYLE_DEFAULT (string)\nThe style all styles are based off of.
+STYLE_DEFAULT view.STYLE_DEFAULT (number, Read-only)\n
STYLE_EMBEDDED lexer.STYLE_EMBEDDED (string)\nThe style typically used for embedded code.
STYLE_ERROR lexer.STYLE_ERROR (string)\nThe style typically used for erroneous syntax.
-STYLE_FOLDDISPLAYTEXT buffer.STYLE_FOLDDISPLAYTEXT (number, Read-only)\n
STYLE_FOLDDISPLAYTEXT lexer.STYLE_FOLDDISPLAYTEXT (string)\nThe style used for fold display text.
+STYLE_FOLDDISPLAYTEXT view.STYLE_FOLDDISPLAYTEXT (number, Read-only)\n
STYLE_FUNCTION lexer.STYLE_FUNCTION (string)\nThe style typically used for function definitions.
STYLE_IDENTIFIER lexer.STYLE_IDENTIFIER (string)\nThe style typically used for identifier words.
-STYLE_INDENTGUIDE buffer.STYLE_INDENTGUIDE (number, Read-only)\n
STYLE_INDENTGUIDE lexer.STYLE_INDENTGUIDE (string)\nThe style used for indentation guides.
+STYLE_INDENTGUIDE view.STYLE_INDENTGUIDE (number, Read-only)\n
STYLE_KEYWORD lexer.STYLE_KEYWORD (string)\nThe style typically used for language keywords.
STYLE_LABEL lexer.STYLE_LABEL (string)\nThe style typically used for labels.
-STYLE_LINENUMBER buffer.STYLE_LINENUMBER (number, Read-only)\n
STYLE_LINENUMBER lexer.STYLE_LINENUMBER (string)\nThe style used for all margins except fold margins.
+STYLE_LINENUMBER view.STYLE_LINENUMBER (number, Read-only)\n
STYLE_MAX buffer.STYLE_MAX (number, Read-only)\n
STYLE_NUMBER lexer.STYLE_NUMBER (string)\nThe style typically used for numbers.
STYLE_OPERATOR lexer.STYLE_OPERATOR (string)\nThe style typically used for operators.
@@ -293,14 +298,16 @@ STYLE_VARIABLE lexer.STYLE_VARIABLE (string)\nThe style typically used for varia
STYLE_WHITESPACE lexer.STYLE_WHITESPACE (string)\nThe style typically used for whitespace.
SUSPEND events.SUSPEND (string)\nEmitted when suspending Textadept. If any handler returns `true`, Textadept\ndoes not suspend.\nThis event is only emitted by the terminal version.
TAB_CLICKED events.TAB_CLICKED (string)\nEmitted when the user clicks on a buffer tab.\nWhen connecting to this event, connect with an index of 1 if the handler\nneeds to run before Textadept switches between buffers.\nNote that Textadept always displays a context menu on right-click.\nArguments:\n\n* _`index`_: The numeric index of the clicked tab.\n* _`button`_: The mouse button number that was clicked, either `1` (left\n button), `2` (middle button), `3` (right button), `4` (wheel up), or `5`\n (wheel down).\n* _`shift`_: The "Shift" modifier key is held down.\n* _`ctrl`_: The "Control" modifier key is held down.\n* _`alt`_: The "Alt"/"Option" modifier key is held down.\n* _`meta`_: The "Command" modifier key on Mac OSX is held down.
-TIME_FOREVER buffer.TIME_FOREVER (number, Read-only)\n
+TD_LONGARROW view.TD_LONGARROW (number, Read-only)\n
+TD_STRIKEOUT view.TD_STRIKEOUT (number, Read-only)\n
+TIME_FOREVER view.TIME_FOREVER (number, Read-only)\n
TYPE lexer.TYPE (string)\nThe token name for type tokens.
TYPEDEF textadept.editing.XPM_IMAGES.TYPEDEF (table)\nThe image number for type definitions.
UPDATE_CONTENT buffer.UPDATE_CONTENT (number, Read-only)\n
-UPDATE_H_SCROLL buffer.UPDATE_H_SCROLL (number, Read-only)\n
+UPDATE_H_SCROLL view.UPDATE_H_SCROLL (number, Read-only)\n
UPDATE_SELECTION buffer.UPDATE_SELECTION (number, Read-only)\n
-UPDATE_UI events.UPDATE_UI (string)\nEmitted after the view is visually updated.\nArguments:\n\n* _`updated`_: A bitmask of changes since the last update.\n\n + `buffer.UPDATE_CONTENT`\n Buffer contents, styling, or markers have changed.\n + `buffer.UPDATE_SELECTION`\n Buffer selection has changed (including caret movement).\n + `buffer.UPDATE_V_SCROLL`\n Buffer has scrolled vertically.\n + `buffer.UPDATE_H_SCROLL`\n Buffer has scrolled horizontally.
-UPDATE_V_SCROLL buffer.UPDATE_V_SCROLL (number, Read-only)\n
+UPDATE_UI events.UPDATE_UI (string)\nEmitted after the view is visually updated.\nArguments:\n\n* _`updated`_: A bitmask of changes since the last update.\n\n + `buffer.UPDATE_CONTENT`\n Buffer contents, styling, or markers have changed.\n + `buffer.UPDATE_SELECTION`\n Buffer selection has changed (including caret movement).\n + `view.UPDATE_V_SCROLL`\n Buffer has scrolled vertically.\n + `view.UPDATE_H_SCROLL`\n Buffer has scrolled horizontally.
+UPDATE_V_SCROLL view.UPDATE_V_SCROLL (number, Read-only)\n
URI_DROPPED events.URI_DROPPED (string)\nEmitted after dragging and dropping a URI into a view.\nArguments:\n\n* _`text`_: The UTF-8-encoded URI dropped.
USER_LIST_SELECTION events.USER_LIST_SELECTION (string)\nEmitted after selecting an item in a user list.\nArguments:\n\n* _`id`_: The *id* from `buffer.user_list_show()`.\n* _`text`_: The selection's text.\n* _`position`_: The position the list was displayed at.
VARIABLE lexer.VARIABLE (string)\nThe token name for variable tokens.
@@ -308,32 +315,34 @@ VARIABLE textadept.editing.XPM_IMAGES.VARIABLE (table)\nThe image number for var
VIEW_AFTER_SWITCH events.VIEW_AFTER_SWITCH (string)\nEmitted right after switching to another view.\nEmitted by `ui.goto_view()`.
VIEW_BEFORE_SWITCH events.VIEW_BEFORE_SWITCH (string)\nEmitted right before switching to another view.\nEmitted by `ui.goto_view()`.
VIEW_NEW events.VIEW_NEW (string)\nEmitted after creating a new view.\nEmitted on startup and by `view.split()`.
-VISIBLE_SLOP buffer.VISIBLE_SLOP (number, Read-only)\n
-VISIBLE_STRICT buffer.VISIBLE_STRICT (number, Read-only)\n
+VISIBLE_SLOP view.VISIBLE_SLOP (number, Read-only)\n
+VISIBLE_STRICT view.VISIBLE_STRICT (number, Read-only)\n
VS_NONE buffer.VS_NONE (number, Read-only)\n
VS_RECTANGULARSELECTION buffer.VS_RECTANGULARSELECTION (number, Read-only)\n
VS_USERACCESSIBLE buffer.VS_USERACCESSIBLE (number, Read-only)\n
WHITESPACE lexer.WHITESPACE (string)\nThe token name for whitespace tokens.
WIN32 _G.WIN32 (bool)\nWhether or not Textadept is running on Windows.
-WRAPINDENT_FIXED buffer.WRAPINDENT_FIXED (number, Read-only)\n
-WRAPINDENT_INDENT buffer.WRAPINDENT_INDENT (number, Read-only)\n
-WRAPINDENT_SAME buffer.WRAPINDENT_SAME (number, Read-only)\n
-WRAPVISUALFLAGLOC_DEFAULT buffer.WRAPVISUALFLAGLOC_DEFAULT (number, Read-only)\n
-WRAPVISUALFLAGLOC_END_BY_TEXT buffer.WRAPVISUALFLAGLOC_END_BY_TEXT (number, Read-only)\n
-WRAPVISUALFLAGLOC_START_BY_TEXT buffer.WRAPVISUALFLAGLOC_START_BY_TEXT (number, Read-only)\n
-WRAPVISUALFLAG_END buffer.WRAPVISUALFLAG_END (number, Read-only)\n
-WRAPVISUALFLAG_MARGIN buffer.WRAPVISUALFLAG_MARGIN (number, Read-only)\n
-WRAPVISUALFLAG_NONE buffer.WRAPVISUALFLAG_NONE (number, Read-only)\n
-WRAPVISUALFLAG_START buffer.WRAPVISUALFLAG_START (number, Read-only)\n
-WRAP_CHAR buffer.WRAP_CHAR (number, Read-only)\n
-WRAP_NONE buffer.WRAP_NONE (number, Read-only)\n
-WRAP_WHITESPACE buffer.WRAP_WHITESPACE (number, Read-only)\n
-WRAP_WORD buffer.WRAP_WORD (number, Read-only)\n
-WS_INVISIBLE buffer.WS_INVISIBLE (number, Read-only)\n
-WS_VISIBLEAFTERINDENT buffer.WS_VISIBLEAFTERINDENT (number, Read-only)\n
-WS_VISIBLEALWAYS buffer.WS_VISIBLEALWAYS (number, Read-only)\n
+WRAPINDENT_DEEPINDENT view.WRAPINDENT_DEEPINDENT (number, Read-only)\n
+WRAPINDENT_FIXED view.WRAPINDENT_FIXED (number, Read-only)\n
+WRAPINDENT_INDENT view.WRAPINDENT_INDENT (number, Read-only)\n
+WRAPINDENT_SAME view.WRAPINDENT_SAME (number, Read-only)\n
+WRAPVISUALFLAGLOC_DEFAULT view.WRAPVISUALFLAGLOC_DEFAULT (number, Read-only)\n
+WRAPVISUALFLAGLOC_END_BY_TEXT view.WRAPVISUALFLAGLOC_END_BY_TEXT (number, Read-only)\n
+WRAPVISUALFLAGLOC_START_BY_TEXT view.WRAPVISUALFLAGLOC_START_BY_TEXT (number, Read-only)\n
+WRAPVISUALFLAG_END view.WRAPVISUALFLAG_END (number, Read-only)\n
+WRAPVISUALFLAG_MARGIN view.WRAPVISUALFLAG_MARGIN (number, Read-only)\n
+WRAPVISUALFLAG_NONE view.WRAPVISUALFLAG_NONE (number, Read-only)\n
+WRAPVISUALFLAG_START view.WRAPVISUALFLAG_START (number, Read-only)\n
+WRAP_CHAR view.WRAP_CHAR (number, Read-only)\n
+WRAP_NONE view.WRAP_NONE (number, Read-only)\n
+WRAP_WHITESPACE view.WRAP_WHITESPACE (number, Read-only)\n
+WRAP_WORD view.WRAP_WORD (number, Read-only)\n
+WS_INVISIBLE view.WS_INVISIBLE (number, Read-only)\n
+WS_VISIBLEAFTERINDENT view.WS_VISIBLEAFTERINDENT (number, Read-only)\n
+WS_VISIBLEALWAYS view.WS_VISIBLEALWAYS (number, Read-only)\n
+WS_VISIBLEONLYININDENT view.WS_VISIBLEONLYININDENT (number, Read-only)\n
XPM_IMAGES textadept.editing.XPM_IMAGES (table)\nMap of image names to registered image numbers.
-ZOOM events.ZOOM (string)\nEmitted after changing `buffer.zoom`.\nEmitted by `buffer.zoom_in()` and `buffer.zoom_out()`.
+ZOOM events.ZOOM (string)\nEmitted after changing `view.zoom`.\nEmitted by `view.zoom_in()` and `view.zoom_out()`.
_BUFFERS _G._BUFFERS (table)\nTable of all open buffers in Textadept.\nNumeric keys have buffer values and buffer keys have their associated numeric\nkeys.\n@see _G.buffer
_CHARSET _G._CHARSET (string)\nThe filesystem's character encoding.\nThis is used when working with files.
_G _G._G (module)\nExtends Lua's _G table to provide extra functions and fields for Textadept.
@@ -353,14 +362,14 @@ add_selection buffer.add_selection(buffer, end_pos, start_pos)\nSelects the rang
add_style lexer.add_style(lexer, token_name, style)\nAssociates string *token_name* in lexer *lexer* with Scintilla style string\n*style*.\nStyle strings are comma-separated property settings. Available property\nsettings are:\n\n * `font:name`: Font name.\n * `size:int`: Font size.\n * `bold` or `notbold`: Whether or not the font face is bold.\n * `weight:int`: Font weight (between 1 and 999).\n * `italics` or `notitalics`: Whether or not the font face is italic.\n * `underlined` or `notunderlined`: Whether or not the font face is\n underlined.\n * `fore:color`: Font face foreground color in "#RRGGBB" or 0xBBGGRR format.\n * `back:color`: Font face background color in "#RRGGBB" or 0xBBGGRR format.\n * `eolfilled` or `noteolfilled`: Whether or not the background color\n extends to the end of the line.\n * `case:char`: Font case ('u' for uppercase, 'l' for lowercase, and 'm' for\n mixed case).\n * `visible` or `notvisible`: Whether or not the text is visible.\n * `changeable` or `notchangeable`: Whether or not the text is changeable or\n read-only.\n\nProperty settings may also contain "$(property.name)" expansions for\nproperties defined in Scintilla, theme files, etc.\n@param lexer The lexer to add a style to.\n@param token_name The name of the token to associated with the style.\n@param style A style string for Scintilla.\n@usage lex:add_style('longstring', lexer.STYLE_STRING)\n@usage lex:add_style('deprecated_func', lexer.STYLE_FUNCTION .. ',italics')\n@usage lex:add_style('visible_ws',\n lexer.STYLE_WHITESPACE .. ',back:$(color.grey)')
add_text buffer.add_text(buffer, text)\nAdds string *text* to the buffer at the caret position and moves the caret to\nthe end of the added text without scrolling it into view.\n@param buffer A buffer.\n@param text The text to add.
add_word spellchecker:add_word(word)\nAdds string *word* to the spellchecker.\nNote: this is not a permanent addition. It only persists for the life of\nthis spellchecker and applies only to this spellchecker.\n@param word The word to add.
-additional_caret_fore buffer.additional_caret_fore (number)\nThe foreground color, in "0xBBGGRR" format, of additional carets.
-additional_carets_blink buffer.additional_carets_blink (bool)\nAllow additional carets to blink.\nThe default value is `true`.
-additional_carets_visible buffer.additional_carets_visible (bool)\nDisplay additional carets.\nThe default value is `true`.
-additional_sel_alpha buffer.additional_sel_alpha (number)\nThe alpha value, ranging from `0` (transparent) to `255` (opaque), of\nadditional selections.\nThe default value is `buffer.ALPHA_NOALPHA`, for no alpha.
-additional_sel_back buffer.additional_sel_back (number, Write-only)\nThe background color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `buffer.set_sel_back(false, ...)`.
-additional_sel_fore buffer.additional_sel_fore (number, Write-only)\nThe foreground color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `buffer.set_sel_fore(false, ...)`.
+additional_caret_fore view.additional_caret_fore (number)\nThe foreground color, in "0xBBGGRR" format, of additional carets.
+additional_carets_blink view.additional_carets_blink (bool)\nAllow additional carets to blink.\nThe default value is `true`.
+additional_carets_visible view.additional_carets_visible (bool)\nDisplay additional carets.\nThe default value is `true`.
+additional_sel_alpha view.additional_sel_alpha (number)\nThe alpha value, ranging from `0` (transparent) to `255` (opaque), of\nadditional selections.\nThe default value is `view.ALPHA_NOALPHA`, for no alpha.
+additional_sel_back view.additional_sel_back (number, Write-only)\nThe background color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `view:set_sel_back(false, ...)`.
+additional_sel_fore view.additional_sel_fore (number, Write-only)\nThe foreground color, in "0xBBGGRR" format, of additional selections.\nThis field has no effect when calling `view:set_sel_fore(false, ...)`.
additional_selection_typing buffer.additional_selection_typing (bool)\nType into multiple selections.\nThe default value is `false`.
-all_lines_visible buffer.all_lines_visible (bool, Read-only)\nWhether or not all lines are visible.
+all_lines_visible view.all_lines_visible (bool, Read-only)\nWhether or not all lines are visible.
alnum lexer.alnum (pattern)\nA pattern that matches any alphanumeric character ('A'-'Z', 'a'-'z',\n '0'-'9').
alpha lexer.alpha (pattern)\nA pattern that matches any alphabetic character ('A'-'Z', 'a'-'z').
anchor buffer.anchor (number)\nThe anchor's position.
@@ -368,7 +377,7 @@ annotation_clear_all buffer.annotation_clear_all(buffer)\nClears annotations fro
annotation_lines buffer.annotation_lines (table, Read-only)\nTable of the number of annotation text lines per line number.
annotation_style buffer.annotation_style (table)\nTable of style numbers for annotation text per line number.\nOnly some style attributes are active in annotations: font,\nsize/size_fractional, bold/weight, italics, fore, back, and character_set.
annotation_text buffer.annotation_text (table)\nTable of annotation text per line number.
-annotation_visible buffer.annotation_visible (number)\nThe annotation visibility mode.\n\n* `buffer.ANNOTATION_HIDDEN`\n Annotations are invisible.\n* `buffer.ANNOTATION_STANDARD`\n Draw annotations left-justified with no decoration.\n* `buffer.ANNOTATION_BOXED`\n Indent annotations to match the annotated text and outline them with a\n box.\n* `buffer.ANNOTATION_INDENTED`\n Indent non-decorated annotations to match the annotated text.\n\nThe default value is `buffer.ANNOTATION_HIDDEN`.
+annotation_visible view.annotation_visible (number)\nThe annotation visibility mode.\n\n* `view.ANNOTATION_HIDDEN`\n Annotations are invisible.\n* `view.ANNOTATION_STANDARD`\n Draw annotations left-justified with no decoration.\n* `view.ANNOTATION_BOXED`\n Indent annotations to match the annotated text and outline them with a\n box.\n* `view.ANNOTATION_INDENTED`\n Indent non-decorated annotations to match the annotated text.\n\nThe default value is `view.ANNOTATION_HIDDEN`.
ansi_c _G.keys.ansi_c (table)\nTable of C-specific key bindings.
ansi_c _G.snippets.ansi_c (table)\nTable of C-specific snippets.
ansi_c _M.ansi_c (module)\nThe ansi_c module.\nIt provides utilities for editing C code.
@@ -396,8 +405,8 @@ auto_c_current_text buffer.auto_c_current_text (string, Read-only)\nThe text of
auto_c_drop_rest_of_word buffer.auto_c_drop_rest_of_word (bool)\nDelete any word characters immediately to the right of autocompleted text.\nThe default value is `false`.
auto_c_fill_ups buffer.auto_c_fill_ups (string, Write-only)\nThe set of characters that choose the currently selected item in an\nautocompletion or user list when the user types one of them.\nThe default value is `''`.
auto_c_ignore_case buffer.auto_c_ignore_case (bool)\nIgnore case when searching an autocompletion or user list for matches.\nThe default value is `false`.
-auto_c_max_height buffer.auto_c_max_height (number)\nThe maximum number of items per page to show in autocompletion and user\nlists. The default value is `5`.
-auto_c_max_width buffer.auto_c_max_width (number)\nThe maximum number of characters per item to show in autocompletion and\nuser lists.\nThe default value is `0`, which automatically sizes the width to fit the\nlongest item.
+auto_c_max_height view.auto_c_max_height (number)\nThe maximum number of items per page to show in autocompletion and user\nlists. The default value is `5`.
+auto_c_max_width view.auto_c_max_width (number)\nThe maximum number of characters per item to show in autocompletion and\nuser lists.\nThe default value is `0`, which automatically sizes the width to fit the\nlongest item.
auto_c_multi buffer.auto_c_multi (number)\nThe multiple selection autocomplete mode.\n\n* `buffer.MULTIAUTOC_ONCE`\n Autocomplete into only the main selection.\n* `buffer.MULTIAUTOC_EACH`\n Autocomplete into all selections.\n\nThe default value is `buffer.MULTIAUTOC_ONCE`.
auto_c_order buffer.auto_c_order (number)\nThe order setting for autocompletion and user lists.\n\n* `buffer.ORDER_PRESORTED`\n Lists passed to `buffer.auto_c_show()` are in sorted, alphabetical\n order.\n* `buffer.ORDER_PERFORMSORT`\n Sort autocompletion lists passed to `buffer.auto_c_show()`.\n* `buffer.ORDER_CUSTOM`\n Lists passed to `buffer.auto_c_show()` are already in a custom order.\n\nThe default value is `buffer.ORDER_PRESORTED`.
auto_c_pos_start buffer.auto_c_pos_start(buffer)\nReturns the position where autocompletion started or where a user list was\nshown.\n@param buffer A buffer.\n@return number
@@ -405,7 +414,7 @@ auto_c_select buffer.auto_c_select(buffer, prefix)\nSelects the first item that
auto_c_separator buffer.auto_c_separator (number)\nThe byte value of the character that separates autocompletion and user list\nlist items.\nThe default value is `32` (' ').
auto_c_show buffer.auto_c_show(buffer, len_entered, items)\nDisplays an autocompletion list constructed from string *items* (whose items\nare delimited by `buffer.auto_c_separator` characters) using *len_entered*\nnumber of characters behind the caret as the prefix of the word to be\nautocompleted.\nThe sorted order of *items* (`buffer.auto_c_order`) must have already been\ndefined.\n@param buffer A buffer.\n@param len_entered The number of characters before the caret used to provide\n the context.\n@param items The sorted string of words to show, separated by\n `buffer.auto_c_separator` characters (initially spaces).\n@see auto_c_separator\n@see auto_c_order
auto_c_stops buffer.auto_c_stops(buffer, chars)\nAllows the user to type any character in string set *chars* in order to\ncancel an autocompletion or user list.\nThe default set is empty.\n@param buffer A buffer.\n@param chars The string of characters that cancel autocompletion. This string\n is empty by default.
-auto_c_type_separator buffer.auto_c_type_separator (number)\nThe character byte that separates autocompletion and user list items and\ntheir image types.\nAutocompletion and user list items can display both an image and text.\nRegister images and their types using `buffer.register_image()` or\n`buffer.register_rgba_image()` before appending image types to list\nitems after type separator characters.\nThe default value is 63 ('?').
+auto_c_type_separator buffer.auto_c_type_separator (number)\nThe character byte that separates autocompletion and user list items and\ntheir image types.\nAutocompletion and user list items can display both an image and text.\nRegister images and their types using `view.register_image()` or\n`view.register_rgba_image()` before appending image types to list\nitems after type separator characters.\nThe default value is 63 ('?').
auto_indent textadept.editing.auto_indent (bool)\nMatch the previous line's indentation level after inserting a new line.\nThe default value is `true`.
auto_pairs textadept.editing.auto_pairs (table)\nMap of auto-paired characters like parentheses, brackets, braces, and quotes.\nThe ASCII values of opening characters are assigned to strings that contain\ncomplement characters. The default auto-paired characters are "()", "[]",\n"{}", "''", and """".
autocomplete textadept.editing.autocomplete(name)\nDisplays an autocompletion list provided by the autocompleter function\nassociated with string *name*, and returns `true` if completions were found.\n@param name The name of an autocompleter function in the `autocompleters`\n table to use for providing autocompletions.\n@see autocompleters
@@ -419,14 +428,14 @@ back_tab buffer.back_tab(buffer)\nUn-indents the text on the selected lines.\n@p
begin_undo_action buffer.begin_undo_action(buffer)\nStarts a sequence of actions to be undone or redone as a single action.\nMay be nested.\n@param buffer A buffer.
block_comment textadept.editing.block_comment()\nComments or uncomments the selected lines based on the current language.\nAs long as any part of a line is selected, the entire line is eligible for\ncommenting/uncommenting.\n@see comment_string
bookmarks textadept.bookmarks (module)\nBookmarks for Textadept.
-brace_bad_light buffer.brace_bad_light(buffer, pos)\nHighlights the character at position *pos* as an unmatched brace character\nusing the `'style.bracebad'` style.\nRemoves highlighting when *pos* is `-1`.\n@param buffer A buffer.\n@param pos The position in *buffer* to highlight, or `-1` to remove the\n highlight.
-brace_bad_light_indicator buffer.brace_bad_light_indicator(buffer, use_indicator, indicator)\nHighlights unmatched brace characters with indicator number *indicator*, in\nthe range of `1 to `32`, instead of the\n`buffer.STYLE_BRACEBAD` style if *use_indicator* is `true`.\n@param buffer A buffer.\n@param use_indicator Whether or not to use an indicator.\n@param indicator The indicator number to use.
-brace_highlight buffer.brace_highlight(buffer, pos1, pos2)\nHighlights the characters at positions *pos1* and *pos2* as matching braces\nusing the `'style.bracelight'` style.\nIf indent guides are enabled, locates the column with `buffer.column` and\nsets `buffer.highlight_guide` in order to highlight the indent guide.\n@param buffer A buffer.\n@param pos1 The first position in *buffer* to highlight.\n@param pos2 The second position in *buffer* to highlight.
-brace_highlight_indicator buffer.brace_highlight_indicator(buffer, use_indicator, indicator)\nHighlights matching brace characters with indicator number *indicator*, in\nthe range of `1` to `32`, instead of the\n`buffer.STYLE_BRACELIGHT` style if *use_indicator* is `true`.\n@param buffer A buffer.\n@param use_indicator Whether or not to use an indicator.\n@param indicator The indicator number to use.
+brace_bad_light view.brace_bad_light(view, pos)\nHighlights the character at position *pos* as an unmatched brace character\nusing the `'style.bracebad'` style.\nRemoves highlighting when *pos* is `-1`.\n@param view A view.\n@param pos The position in *buffer* to highlight, or `-1` to remove the\n highlight.
+brace_bad_light_indicator view.brace_bad_light_indicator(view, use_indicator, indicator)\nHighlights unmatched brace characters with indicator number *indicator*, in\nthe range of `1 to `32`, instead of the\n`view.STYLE_BRACEBAD` style if *use_indicator* is `true`.\n@param view A view.\n@param use_indicator Whether or not to use an indicator.\n@param indicator The indicator number to use.
+brace_highlight view.brace_highlight(view, pos1, pos2)\nHighlights the characters at positions *pos1* and *pos2* as matching braces\nusing the `'style.bracelight'` style.\nIf indent guides are enabled, locates the column with `buffer.column` and\nsets `view.highlight_guide` in order to highlight the indent guide.\n@param view A view.\n@param pos1 The first position in *buffer* to highlight.\n@param pos2 The second position in *buffer* to highlight.
+brace_highlight_indicator view.brace_highlight_indicator(view, use_indicator, indicator)\nHighlights matching brace characters with indicator number *indicator*, in\nthe range of `1` to `32`, instead of the\n`view.STYLE_BRACELIGHT` style if *use_indicator* is `true`.\n@param view A view.\n@param use_indicator Whether or not to use an indicator.\n@param indicator The indicator number to use.
brace_match buffer.brace_match(buffer, pos, max_re_style)\nReturns the position of the matching brace for the brace character at\nposition *pos*, taking nested braces into account, or `-1`.\nThe brace characters recognized are '(', ')', '[', ']', '{', '}', '<', and\n'>' and must have the same style.\n@param buffer A buffer.\n@param pos The position of the brace in *buffer* to match.\n@param max_re_style Must be `0`. Reserved for expansion.\n@return number
brace_matches textadept.editing.brace_matches (table)\nTable of brace characters to highlight.\nThe ASCII values of brace characters are keys and are assigned non-`nil`\nvalues. The default brace characters are '(', ')', '[', ']', '{', and '}'.
browser export.browser (string)\nPath to or the name of the browser executable to show exported HTML files\nin.\nThe default value is 'firefox'.
-buffer _G.buffer (module)\nA Textadept buffer object.\nConstants are documented in the fields they apply to.\nWhile you can work with individual buffer instances, it is really only useful\nto work with the global one.\nMany of these functions and fields are derived from the Scintilla editing\ncomponent, and additional information can be found on the Scintilla website:\nhttp://scintilla.org/ScintillaDoc.html
+buffer _G.buffer (module)\nA Textadept buffer object.\nConstants are documented in the fields they apply to.\nWhile you can work with individual buffer instances, it is really only useful\nto work with the global one.\nMany of these functions and fields are derived from buffer-specific\nfunctionality of the Scintilla editing component, and additional information\ncan be found on the Scintilla website:\nhttp://scintilla.org/ScintillaDoc.html.\nNote that with regard to Scintilla-specific functionality, this API is a\n_suggestion_, not a hard requirement. All of that functionality also exists\nin `view`, even if undocumented.
buffer _G.buffer (table)\nThe current buffer in the current view.
buffer view.buffer (table)\nThe buffer the view contains. (Read-only)
bufstatusbar_text ui.bufstatusbar_text (string, Write-only)\nThe text displayed in the buffer statusbar.
@@ -434,27 +443,27 @@ build textadept.run.build(root_directory)\nBuilds the project whose root path is
build_commands textadept.run.build_commands (table)\nMap of project root paths and "makefiles" to their associated "build" shell\ncommand line strings or functions that return such strings.\nFunctions may also return a working directory to operate in. By default, it\nis the project's root directory.
call_tip_active buffer.call_tip_active(buffer)\nReturns whether or not a call tip is visible.\n@param buffer A buffer.\n@return bool
call_tip_cancel buffer.call_tip_cancel(buffer)\nRemoves a call tip from view.\n@param buffer A buffer.
-call_tip_fore_hlt buffer.call_tip_fore_hlt (number, Write-only)\nA call tip's highlighted text foreground color, in "0xBBGGRR" format.
+call_tip_fore_hlt view.call_tip_fore_hlt (number, Write-only)\nA call tip's highlighted text foreground color, in "0xBBGGRR" format.
call_tip_pos_start buffer.call_tip_pos_start (number, Write-only)\nThe position in which backspacing beyond it hides a visible call tip.
call_tip_pos_start buffer.call_tip_pos_start(buffer)\nReturns a call tip's display position.\n@param buffer A buffer.\n@return number
-call_tip_position buffer.call_tip_position (boolean)\nDisplay a call tip above the current line instead of below it.\nThe default value is `false`.
-call_tip_set_hlt buffer.call_tip_set_hlt(buffer, start_pos, end_pos)\nHighlights a call tip's text between positions *start_pos* to *end_pos* with\nthe color `buffer.call_tip_fore_hlt`.\n@param buffer A buffer.\n@param start_pos The start position in a call tip text to highlight.\n@param end_pos The end position in a call tip text to highlight.
+call_tip_position view.call_tip_position (boolean)\nDisplay a call tip above the current line instead of below it.\nThe default value is `false`.
+call_tip_set_hlt view.call_tip_set_hlt(view, start_pos, end_pos)\nHighlights a call tip's text between positions *start_pos* to *end_pos* with\nthe color `view.call_tip_fore_hlt`.\n@param view A view.\n@param start_pos The start position in a call tip text to highlight.\n@param end_pos The end position in a call tip text to highlight.
call_tip_show buffer.call_tip_show(buffer, pos, text)\nDisplays a call tip at position *pos* with string *text* as the call tip's\ncontents.\nAny "\001" or "\002" bytes in *text* are replaced by clickable up or down\narrow visuals, respectively. These may be used to indicate that a symbol has\nmore than one call tip, for example.\n@param buffer A buffer.\n@param pos The position in *buffer* to show a call tip at.\n@param text The call tip text to show.
-call_tip_use_style buffer.call_tip_use_style (number)\nThe pixel width of tab characters in call tips.\nWhen non-zero, also enables the use of style number `buffer.STYLE_CALLTIP`\ninstead of `buffer.STYLE_DEFAULT` for call tip styles.\nThe default value is `0`.
+call_tip_use_style view.call_tip_use_style (number)\nThe pixel width of tab characters in call tips.\nWhen non-zero, also enables the use of style number `view.STYLE_CALLTIP`\ninstead of `view.STYLE_DEFAULT` for call tip styles.\nThe default value is `0`.
can_redo buffer.can_redo(buffer)\nReturns whether or not there is an action to be redone.\n@param buffer A buffer.\n@return bool
can_undo buffer.can_undo(buffer)\nReturns whether or not there is an action to be undone.\n@param buffer A buffer.\n@return bool
cancel buffer.cancel(buffer)\nCancels the active selection mode, autocompletion or user list, call tip,\netc.\n@param buffer A buffer.
cancel_current textadept.snippets.cancel_current()\nCancels the active snippet, removing all inserted text.\nReturns `false` if no snippet is active.\n@return `false` if no snippet is active; `nil` otherwise.
-caret_fore buffer.caret_fore (number)\nThe caret's foreground color, in "0xBBGGRR" format.
-caret_line_back buffer.caret_line_back (number)\nThe background color, in "0xBBGGRR" format, of the line that contains the\ncaret.
-caret_line_back_alpha buffer.caret_line_back_alpha (number)\nThe caret line's background alpha value, ranging from `0` (transparent) to\n`255` (opaque).\nThe default value is `buffer.ALPHA_NOALPHA`, for no alpha.
-caret_line_frame buffer.caret_line_frame (number)\nThe caret line's frame width in pixels.\nWhen non-zero, the line that contains the caret is framed instead of\ncolored in. The `buffer.caret_line_back` and `buffer.caret_line_back_alpha`\nproperties apply to the frame.\nThe default value is `0`.
-caret_line_visible buffer.caret_line_visible (bool)\nColor the background of the line that contains the caret a different color.\nThe default value is `false`.
-caret_line_visible_always buffer.caret_line_visible_always (bool)\nAlways show the caret line, even when the window is not in focus.\nThe default value is `false`, showing the line only when the window is in\nfocus.
-caret_period buffer.caret_period (number)\nThe time between caret blinks in milliseconds.\nA value of `0` stops blinking.\nThe default value is `500`.
+caret_fore view.caret_fore (number)\nThe caret's foreground color, in "0xBBGGRR" format.
+caret_line_back view.caret_line_back (number)\nThe background color, in "0xBBGGRR" format, of the line that contains the\ncaret.
+caret_line_back_alpha view.caret_line_back_alpha (number)\nThe caret line's background alpha value, ranging from `0` (transparent) to\n`255` (opaque).\nThe default value is `view.ALPHA_NOALPHA`, for no alpha.
+caret_line_frame view.caret_line_frame (number)\nThe caret line's frame width in pixels.\nWhen non-zero, the line that contains the caret is framed instead of\ncolored in. The `view.caret_line_back` and `view.caret_line_back_alpha`\nproperties apply to the frame.\nThe default value is `0`.
+caret_line_visible view.caret_line_visible (bool)\nColor the background of the line that contains the caret a different color.\nThe default value is `false`.
+caret_line_visible_always view.caret_line_visible_always (bool)\nAlways show the caret line, even when the window is not in focus.\nThe default value is `false`, showing the line only when the window is in\nfocus.
+caret_period view.caret_period (number)\nThe time between caret blinks in milliseconds.\nA value of `0` stops blinking.\nThe default value is `500`.
caret_sticky buffer.caret_sticky (number)\nThe caret's preferred horizontal position when moving between lines.\n\n* `buffer.CARETSTICKY_OFF`\n Use the same position the caret had on the previous line.\n* `buffer.CARETSTICKY_ON`\n Use the last position the caret was moved to via the mouse, left/right\n arrow keys, home/end keys, etc. Typing text does not affect the position.\n* `buffer.CARETSTICKY_WHITESPACE`\n Use the position the caret had on the previous line, but prior to any\n inserted indentation.\n\nThe default value is `buffer.CARETSTICKY_OFF`.
-caret_style buffer.caret_style (number)\nThe caret's visual style.\n\n* `buffer.CARETSTYLE_INVISIBLE`\n No caret.\n* `buffer.CARETSTYLE_LINE`\n A line caret.\n* `buffer.CARETSTYLE_BLOCK`\n A block caret.\n* `buffer.CARETSTYLE_BLOCK_ALWAYS`\n A block caret in both insert and overtype mode.\n\nAny block setting may be combined with `buffer.CARETSTYLE_BLOCK_AFTER` via\nbitwise OR (`|`) in order to draw the caret after the end of a selection,\nas opposed to just inside it.\n\nThe default value is `buffer.CARETSTYLE_LINE`.
-caret_width buffer.caret_width (number)\nThe line caret's pixel width in insert mode, either `0`, `1`, `2`, or `3`.\nThe default value is `1`.
+caret_style view.caret_style (number)\nThe caret's visual style.\n\n* `view.CARETSTYLE_INVISIBLE`\n No caret.\n* `view.CARETSTYLE_LINE`\n A line caret.\n* `view.CARETSTYLE_BLOCK`\n A block caret.\n\nAny block setting may be combined with `view.CARETSTYLE_BLOCK_AFTER` via\nbitwise OR (`|`) in order to draw the caret after the end of a selection,\nas opposed to just inside it.\n\nThe default value is `view.CARETSTYLE_LINE`.
+caret_width view.caret_width (number)\nThe line caret's pixel width in insert mode, either `0`, `1`, `2`, or `3`.\nThe default value is `1`.
char_at buffer.char_at (table, Read-only)\nTable of character bytes per position.
char_left buffer.char_left(buffer)\nMoves the caret left one character.\n@param buffer A buffer.
char_left_extend buffer.char_left_extend(buffer)\nMoves the caret left one character, extending the selected text to the new\nposition.\n@param buffer A buffer.
@@ -469,8 +478,8 @@ clear buffer.clear(buffer)\nDeletes the selected text or the character at the ca
clear textadept.bookmarks.clear()\nClears all bookmarks in the current buffer.
clear_all buffer.clear_all(buffer)\nDeletes the buffer's text.\n@param buffer A buffer.
clear_document_style buffer.clear_document_style(buffer)\nClears all styling and folding information.\n@param buffer A buffer.
-clear_registered_images buffer.clear_registered_images(buffer)\nClears all images registered using `buffer.register_image()` and\n`buffer.register_rgba_image()`.\n@param buffer A buffer.
-clear_representation buffer.clear_representation(buffer, char)\nRemoves the alternate string representation for character *char*.\n@param buffer A buffer.\n@param char The character in `buffer.representations` to remove the alternate\n string representation for.
+clear_registered_images view.clear_registered_images(view)\nClears all images registered using `view.register_image()` and\n`view.register_rgba_image()`.\n@param view A view.
+clear_representation view.clear_representation(view, char)\nRemoves the alternate string representation for character *char*.\n@param view A view.\n@param char The character in `buffer.representations` to remove the alternate\n string representation for.
clear_selections buffer.clear_selections(buffer)\nRemoves all selections and moves the caret to the beginning of the buffer.\n@param buffer A buffer.
clipboard_text ui.clipboard_text (string)\nThe text on the clipboard.
close buffer.close(buffer, force)\nCloses the buffer, prompting the user to continue if there are unsaved\nchanges (unless *force* is `true`), and returns `true` if the buffer was\nclosed.\n@param buffer A buffer.\n@param force Optional flag that discards unsaved changes without prompting\n the user. The default value is `false`.\n@return `true` if the buffer was closed; `nil` otherwise.
@@ -490,7 +499,7 @@ constants _SCINTILLA.constants (table)\nMap of Scintilla constant names to their
context_menu textadept.menu.context_menu (table)\nThe default right-click context menu.\nSubmenus, and menu items can be retrieved by name in addition to table index\nnumber.
context_menu ui.context_menu (userdata)\nThe buffer's context menu, a `ui.menu()`.\nThis is a low-level field. You probably want to use the higher-level\n`textadept.menu.context_menu`.
continue debugger.continue(lexer, ...)\nContinue debugger execution unless the debugger is already executing (e.g.\nnot at a breakpoint).\nIf no debugger is running, starts one, then continues execution.\nEmits a `DEBUGGER_CONTINUE` event, passing along any arguments given.\n@param lexer Optional lexer name of the language to continue executing. The\n default value is the current lexer.
-contracted_fold_next buffer.contracted_fold_next(buffer, line)\nReturns the line number of the next contracted fold point starting from line\nnumber *line*, or `-1` if none exists.\n@param buffer A buffer.\n@param line The line number in *buffer* to start at.\n@return number
+contracted_fold_next view.contracted_fold_next(view, line)\nReturns the line number of the next contracted fold point starting from line\nnumber *line*, or `-1` if none exists.\n@param view A view.\n@param line The line number in *buffer* to start at.\n@return number
control_structure_patterns _M.ruby.control_structure_patterns (table)\nPatterns for auto `end` completion for control structures.\n@see try_to_autocomplete_end
convert_eols buffer.convert_eols(buffer, mode)\nConverts all end of line characters to those in end of line mode *mode*.\n@param buffer A buffer.\n@param mode The end of line mode to convert to. Valid values are:\n * `buffer.EOL_CRLF`\n * `buffer.EOL_CR`\n * `buffer.EOL_LF`
convert_indentation textadept.editing.convert_indentation()\nConverts indentation between tabs and spaces according to `buffer.use_tabs`.\nIf `buffer.use_tabs` is `true`, `buffer.tab_width` indenting spaces are\nconverted to tabs. Otherwise, all indenting tabs are converted to\n`buffer.tab_width` spaces.\n@see buffer.use_tabs
@@ -507,7 +516,7 @@ ctags _G.ctags (module)\n[Experimental]\nUtilize Ctags with Textadept.\n\nThis m
ctags ctags.ctags (string)\nPath to the ctags executable.\nThe default value is `'ctags'`.
ctags_flags ctags.ctags_flags (table)\nMap of project root paths to string command-line options, or functions that\nreturn such strings, that are passed to ctags when generating project tags.\n@see LUA_FLAGS
current_pos buffer.current_pos (number)\nThe caret's position.\nWhen set, does not scroll the caret into view.
-cursor buffer.cursor (number)\nThe display cursor type.\n\n* `buffer.CURSORNORMAL`\n The text insert cursor.\n* `buffer.CURSORARROW`\n The arrow cursor.\n* `buffer.CURSORWAIT`\n The wait cursor.\n* `buffer.CURSORREVERSEARROW`\n The reversed arrow cursor.\n\nThe default value is `buffer.CURSORNORMAL`.
+cursor view.cursor (number)\nThe display cursor type.\n\n* `view.CURSORNORMAL`\n The text insert cursor.\n* `view.CURSORARROW`\n The arrow cursor.\n* `view.CURSORWAIT`\n The wait cursor.\n* `view.CURSORREVERSEARROW`\n The reversed arrow cursor.\n\nThe default value is `view.CURSORNORMAL`.
cut buffer.cut(buffer)\nCuts the selected text to the clipboard.\nMultiple selections are copied in order with no delimiters. Rectangular\nselections are copied from top to bottom with end of line characters. Virtual\nspace is not copied.\n@param buffer A buffer.
cycle_history_next lua_repl.cycle_history_next()\nCycle forward through command history, taking into account commands with\nmultiple lines.
cycle_history_prev lua_repl.cycle_history_prev()\nCycle backward through command history, taking into account commands with\nmultiple lines.
@@ -523,7 +532,6 @@ delete buffer.delete(buffer)\nDeletes the buffer.\n**Do not call this function.*
delete_back buffer.delete_back(buffer)\nDeletes the character behind the caret if no text is selected.\nOtherwise, deletes the selected text.\n@param buffer A buffer.
delete_back_not_line buffer.delete_back_not_line(buffer)\nDeletes the character behind the caret unless either the caret is at the\nbeginning of a line or text is selected.\nIf text is selected, deletes it.\n@param buffer A buffer.
delete_range buffer.delete_range(buffer, pos, length)\nDeletes the range of text from position *pos* to *pos* + *length*.\n@param buffer A buffer.\n@param pos The start position of the range of text in *buffer* to delete.\n@param length The number of characters in the range of text to delete.
-delimited_range lexer.delimited_range(chars, single_line, no_escape, balanced)\nCreates and returns a pattern that matches a range of text bounded by\n*chars* characters.\nThis is a convenience function for matching more complicated delimited ranges\nlike strings with escape characters and balanced parentheses. *single_line*\nindicates whether or not the range must be on a single line, *no_escape*\nindicates whether or not to ignore '\' as an escape character, and *balanced*\nindicates whether or not to handle balanced ranges like parentheses and\nrequires *chars* to be composed of two characters.\n@param chars The character(s) that bound the matched range.\n@param single_line Optional flag indicating whether or not the range must be\n on a single line.\n@param no_escape Optional flag indicating whether or not the range end\n character may be escaped by a '\\' character.\n@param balanced Optional flag indicating whether or not to match a balanced\n range, like the "%b" Lua pattern. This flag only applies if *chars*\n consists of two different characters (e.g. "()").\n@usage local dq_str_escapes = lexer.delimited_range('"')\n@usage local dq_str_noescapes = lexer.delimited_range('"', false, true)\n@usage local unbalanced_parens = lexer.delimited_range('()')\n@usage local balanced_parens = lexer.delimited_range('()', false, false,\n true)\n@return pattern\n@see nested_pair
dialog ui.dialog(kind, ...)\nLow-level function for prompting the user with a gtdialog of kind *kind*\nwith the given string and table arguments, returning a formatted string of\nthe dialog's output.\nYou probably want to use the higher-level functions in the `ui.dialogs`\nmodule.\nTable arguments containing strings are allowed and expanded in place. This is\nuseful for filtered list dialogs with many items.\n@param kind The kind of gtdialog.\n@param ... Parameters to the gtdialog.\n@return string gtdialog result.
dialogs ui.dialogs (module)\nProvides a set of interactive dialog prompts for user input.
diff _G.diff(text1, text2)\nReturns a list that represents the differences between strings *text1* and\n*text2*.\nEach consecutive pair of elements in the returned list represents a "diff".\nThe first element is an integer: 0 for a deletion, 1 for an insertion, and 2\nfor equality. The second element is the associated diff text.\n@param text1 String to compare against.\n@param text2 String to compare.\n@usage diffs = diff(text1, text2)\n for i = 1, #diffs, 2 do print(diffs[i], diffs[i + 1]) end\n@return list of differences
@@ -531,16 +539,16 @@ digit lexer.digit (pattern)\nA pattern that matches any digit ('0'-'9').
dir_foreach lfs.dir_foreach(dir, f, filter, n, include_dirs, level)\nIterates over all files and sub-directories (up to *n* levels deep) in\ndirectory *dir*, calling function *f* with each file found.\nString or list *filter* determines which files to pass through to *f*, with\nthe default filter being `lfs.default_filter`. A filter consists of Lua\npatterns that match file and directory paths to include or exclude. Exclusive\npatterns begin with a '!'. If no inclusive patterns are given, any path is\ninitially considered. As a convenience, file extensions can be specified\nliterally instead of as a Lua pattern (e.g. '.lua' vs. '%.lua$'), and '/'\nalso matches the Windows directory separator ('[/\\]' is not needed).\n@param dir The directory path to iterate over.\n@param f Function to call with each full file path found. If *f* returns\n `false` explicitly, iteration ceases.\n@param filter Optional filter for files and directories to include and\n exclude. The default value is `lfs.default_filter`.\n@param n Optional maximum number of directory levels to descend into.\n The default value is `nil`, which indicates no limit.\n@param include_dirs Optional flag indicating whether or not to call *f* with\n directory names too. Directory names are passed with a trailing '/' or '\',\n depending on the current platform.\n The default value is `false`.\n@param level Utility value indicating the directory level this function is\n at. This value is used and set internally, and should not be set otherwise.\n@see filter
disable_listening history.disable_listening()\nDisables recording of edit locations and clears all view history.
disconnect events.disconnect(event, f)\nRemoves function *f* from the set of handlers for event *event*.\n@param event The string event name.\n@param f The Lua function connected to *event*.\n@see connect
-doc_line_from_visible buffer.doc_line_from_visible(buffer, display_line)\nReturns the actual line number of displayed line number *display_line*,\ntaking hidden lines into account.\nIf *display_line* is less than or equal to `1`, returns `1`. If\n*display_line* is greater than the number of displayed lines, returns\n`buffer.line_count`.\n@param buffer A buffer.\n@param display_line The display line number to use.\n@return number
+doc_line_from_visible view.doc_line_from_visible(view, display_line)\nReturns the actual line number of displayed line number *display_line*,\ntaking hidden lines into account.\nIf *display_line* is less than or equal to `1`, returns `1`. If\n*display_line* is greater than the number of displayed lines, returns\n`buffer.line_count`.\n@param view A view.\n@param display_line The display line number to use.\n@return number
document_end buffer.document_end(buffer)\nMoves the caret to the end of the buffer.\n@param buffer A buffer.
document_end_extend buffer.document_end_extend(buffer)\nMoves the caret to the end of the buffer, extending the selected text to the\nnew position.\n@param buffer A buffer.
document_start buffer.document_start(buffer)\nMoves the caret to the beginning of the buffer.\n@param buffer A buffer.
document_start_extend buffer.document_start_extend(buffer)\nMoves the caret to the beginning of the buffer, extending the selected text\nto the new position.\n@param buffer A buffer.
drop_selection_n buffer.drop_selection_n(buffer, n)\nDrops existing selection number *n*.\n@param buffer A buffer.\n@param n The number of the existing selection.
dropdown ui.dialogs.dropdown(options)\nPrompts the user with a drop-down item selection dialog defined by dialog\noptions table *options*, returning the selected button's index along with the\nindex of the selected item.\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with the selected item's text.\nIf the dialog closed due to *options*.`exit_onchange`, returns `4` along with\neither the selected item's index or its text. If the dialog timed out,\nreturns `0` or `"timeout"`. If the user canceled the dialog, returns `-1` or\n`"delete"`.\n@param options Table of key-value option pairs for the drop-down dialog.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `items`: The list of string items to show in the drop-down.\n * `button1`: The right-most button's label. The default value is\n `_L['OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `exit_onchange`: Close the dialog after selecting a new item. The default\n value is `false`.\n * `select`: The index of the initially selected list item. The default\n value is `1`.\n * `string_output`: Return the selected button's label (instead of its\n index) and the selected item's text (instead of its index). If no item\n was selected, returns the dialog's exit status (instead of its exit\n code). The default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.dropdown{title = 'Select Encoding', width = 200,\n items = io.encodings, string_output = true}\n@return selected button or exit code, selected item
-edge_colour buffer.edge_colour (number)\nThe color, in "0xBBGGRR" format, of the single edge or background for long\nlines according to `buffer.edge_mode`.
-edge_column buffer.edge_column (number)\nThe column number to mark long lines at.
-edge_mode buffer.edge_mode (number)\nThe long line mark mode.\n\n* `buffer.EDGE_NONE`\n Long lines are not marked.\n* `buffer.EDGE_LINE`\n Draw a single vertical line whose color is `buffer.edge_colour` at\n column `buffer.edge_column`.\n* `buffer.EDGE_BACKGROUND`\n Change the background color of text after column `buffer.edge_column`\n to `buffer.edge_colour`.\n* `buffer.EDGE_MULTILINE`\n Draw vertical lines whose colors and columns are defined by calls to\n `buffer:multi_edge_add_line()`.
+edge_colour view.edge_colour (number)\nThe color, in "0xBBGGRR" format, of the single edge or background for long\nlines according to `view.edge_mode`.
+edge_column view.edge_column (number)\nThe column number to mark long lines at.
+edge_mode view.edge_mode (number)\nThe long line mark mode.\n\n* `view.EDGE_NONE`\n Long lines are not marked.\n* `view.EDGE_LINE`\n Draw a single vertical line whose color is `view.edge_colour` at\n column `view.edge_column`.\n* `view.EDGE_BACKGROUND`\n Change the background color of text after column `view.edge_column`\n to `view.edge_colour`.\n* `view.EDGE_MULTILINE`\n Draw vertical lines whose colors and columns are defined by calls to\n `view:multi_edge_add_line()`.
edit_toggle_overtype buffer.edit_toggle_overtype(buffer)\nToggles `buffer.overtype`.\n@param buffer A buffer.
editing textadept.editing (module)\nEditing features for Textadept.
editing_keys ui.command_entry.editing_keys (table)\nA metatable with typical platform-specific key bindings for text entries.\nThis metatable may be used to add basic editing and movement keys to command\nentry modes. It is automatically added to command entry modes unless a\nmetatable was previously set.
@@ -551,11 +559,11 @@ enable_listening history.enable_listening()\nEnables recording of edit locations
enclose textadept.editing.enclose(left, right)\nEncloses the selected text or the current word within strings *left* and\n*right*, taking multiple selections into account.\n@param left The left part of the enclosure.\n@param right The right part of the enclosure.
encoding buffer.encoding (string or nil)\nThe string encoding of the file, or `nil` for binary files.
encodings io.encodings (table)\nList of encodings to attempt to decode files as.\nYou should add to this list if you get a "Conversion failed" error when\ntrying to open a file whose encoding is not recognized. Valid encodings are\nGNU iconv's encodings and include:\n\n * European: ASCII, ISO-8859-{1,2,3,4,5,7,9,10,13,14,15,16}, KOI8-R, KOI8-U,\n KOI8-RU, CP{1250,1251,1252,1253,1254,1257}, CP{850,866,1131},\n Mac{Roman,CentralEurope,Iceland,Croatian,Romania},\n Mac{Cyrillic,Ukraine,Greek,Turkish}, Macintosh.\n * Semitic: ISO-8859-{6,8}, CP{1255,1256}, CP862, Mac{Hebrew,Arabic}.\n * Japanese: EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP, ISO-2022-JP-2,\n ISO-2022-JP-1.\n * Chinese: EUC-CN, HZ, GBK, CP936, GB18030, EUC-TW, BIG5, CP950,\n BIG5-HKSCS, BIG5-HKSCS:2004, BIG5-HKSCS:2001, BIG5-HKSCS:1999,\n ISO-2022-CN, ISO-2022-CN-EXT.\n * Korean: EUC-KR, CP949, ISO-2022-KR, JOHAB.\n * Armenian: ARMSCII-8.\n * Georgian: Georgian-Academy, Georgian-PS.\n * Tajik: KOI8-T.\n * Kazakh: PT154, RK1048.\n * Thai: ISO-8859-11, TIS-620, CP874, MacThai.\n * Laotian: MuleLao-1, CP1133.\n * Vietnamese: VISCII, TCVN, CP1258.\n * Unicode: UTF-8, UCS-2, UCS-2BE, UCS-2LE, UCS-4, UCS-4BE, UCS-4LE, UTF-16,\n UTF-16BE, UTF-16LE, UTF-32, UTF-32BE, UTF-32LE, UTF-7, C99, JAVA.
-end_at_last_line buffer.end_at_last_line (bool)\nDisable scrolling past the last line.\nThe default value is `true`.
+end_at_last_line view.end_at_last_line (bool)\nDisable scrolling past the last line.\nThe default value is `true`.
end_styled buffer.end_styled (number, Read-only)\nThe current styling position or the last correctly styled character's\nposition.
end_undo_action buffer.end_undo_action(buffer)\nEnds a sequence of actions to be undone or redone as a single action.\n@param buffer A buffer.
-ensure_visible buffer.ensure_visible(buffer, line)\nEnsures line number *line* is visible by expanding any fold points hiding it.\n@param buffer A buffer.\n@param line The line number in *buffer* to ensure visible.
-ensure_visible_enforce_policy buffer.ensure_visible_enforce_policy(buffer, line)\nEnsures line number *line* is visible by expanding any fold points hiding it\nbased on the vertical caret policy previously defined in\n`buffer.set_visible_policy()`.\n@param buffer A buffer.\n@param line The line number in *buffer* to ensure visible.
+ensure_visible view.ensure_visible(view, line)\nEnsures line number *line* is visible by expanding any fold points hiding it.\n@param view A view.\n@param line The line number in *buffer* to ensure visible.
+ensure_visible_enforce_policy view.ensure_visible_enforce_policy(view, line)\nEnsures line number *line* is visible by expanding any fold points hiding it\nbased on the vertical caret policy previously defined in\n`view.set_visible_policy()`.\n@param view A view.\n@param line The line number in *buffer* to ensure visible.
eol_mode buffer.eol_mode (number)\nThe current end of line mode. Changing the current mode does not convert\nany of the buffer's existing end of line characters.\nUse `buffer.convert_eols()` to do so.\n\n* `buffer.EOL_CRLF`\n Carriage return with line feed ("\r\\n").\n* `buffer.EOL_CR`\n Carriage return ("\r").\n* `buffer.EOL_LF`\n Line feed ("\\n").\n\nThe default value is `buffer.EOL_CRLF` on Windows platforms,\n`buffer.EOL_LF` otherwise.
error_patterns textadept.run.error_patterns (table)\nMap of file extensions and lexer names to their associated lists of string\npatterns that match warning and error messages emitted by compile and run\ncommands for those file extensions and lexers.\nPatterns match single lines and contain captures for a filename, line number,\ncolumn number (optional), and warning or error message (optional).\nDouble-clicking a warning or error message takes the user to the source of\nthat warning/error.\nNote: `(.-)` captures in patterns are interpreted as filenames; `(%d+)`\ncaptures are interpreted as line numbers first, and then column numbers; and\nany other capture is treated as warning/error message text.
evaluate_repl lua_repl.evaluate_repl()\nEvaluates as Lua code the current line or the text on the currently selected\nlines.\nIf the current line has a syntax error, it is ignored and treated as a line\ncontinuation.
@@ -567,8 +575,8 @@ expr_types _M.python.expr_types (table)\nMap of expression patterns to their typ
expr_types _M.ruby.expr_types (table)\nMap of expression patterns to their types.\nExpressions are expected to match after the '=' sign of a statement.
extend lexer.extend (pattern)\nA pattern that matches any ASCII extended character (codes 0 to 255).
extensions textadept.file_types.extensions (table)\nMap of file extensions to their associated lexer names.\nIf the file type is not recognized by its first-line, each file extension is\nmatched against the file's extension.
-extra_ascent buffer.extra_ascent (number)\nThe amount of pixel padding above lines.\nThe default value is `0`.
-extra_descent buffer.extra_descent (number)\nThe amount of pixel padding below lines.\nThe default is `0`.
+extra_ascent view.extra_ascent (number)\nThe amount of pixel padding above lines.\nThe default value is `0`.
+extra_descent view.extra_descent (number)\nThe amount of pixel padding below lines.\nThe default is `0`.
file_diff _G.file_diff (module)\n[Experimental]\nTwo-way file comparison for Textadept.\n\nThis module is not loaded by default. `require('file_diff')` must be called\nfrom *~/.textadept/init.lua*.
file_types textadept.file_types (module)\nHandles file type detection for Textadept.
filename buffer.filename (string)\nThe absolute file path associated with the buffer.
@@ -589,19 +597,19 @@ find_next_button_text ui.find.find_next_button_text (string, Write-only)\nThe te
find_prev ui.find.find_prev()\nMimics pressing the "Find Prev" button.
find_prev_button_text ui.find.find_prev_button_text (string, Write-only)\nThe text of the "Find Prev" button.\nThis is primarily used for localization.
find_references lsp.find_references()\nSearches for project references to the current symbol and prints them.
-first_visible_line buffer.first_visible_line (number)\nThe line number of the line at the top of the view.
+first_visible_line view.first_visible_line (number)\nThe line number of the line at the top of the view.
float lexer.float (pattern)\nA pattern that matches a floating point number.
focus ui.command_entry.focus()\nOpens the command entry.
focus ui.find.focus()\nDisplays and focuses the Find & Replace Pane.
fold lexer.fold(lexer, text, start_pos, start_line, start_level)\nDetermines fold points in a chunk of text *text* using lexer *lexer*,\nreturning a table of fold levels associated with line numbers.\n*text* starts at position *start_pos* on line number *start_line* with a\nbeginning fold level of *start_level* in the buffer.\n@param lexer The lexer to fold text with.\n@param text The text in the buffer to fold.\n@param start_pos The position in the buffer *text* starts at, counting from\n 1.\n@param start_line The line number *text* starts on, counting from 1.\n@param start_level The fold level *text* starts on.\n@return table of fold levels associated with line numbers.
-fold_all buffer.fold_all(buffer, action)\nContracts, expands, or toggles all fold points, depending on *action*.\nWhen toggling, the state of the first fold point determines whether to\nexpand or contract.\n@param buffer A buffer.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
-fold_children buffer.fold_children(buffer, line, action)\nContracts, expands, or toggles the fold point on line number *line*, as well\nas all of its children, depending on *action*.\n@param buffer A buffer.\n@param line The line number in *buffer* to set the fold states for.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
-fold_display_text_style buffer.fold_display_text_style (number)\nThe fold display text mode.\n\n* `buffer.FOLDDISPLAYTEXT_HIDDEN`\n Fold display text is not shown.\n* `buffer.FOLDDISPLAYTEXT_STANDARD`\n Fold display text is shown with no decoration.\n* `buffer.FOLDDISPLAYTEXT_BOXED`\n Fold display text is shown outlined with a box.\n\nThe default value is `buffer.FOLDDISPLAYTEXT_HIDDEN`.
-fold_expanded buffer.fold_expanded (table)\nTable of flags per line number that indicate whether or not fold points are\nexpanded for those line numbers.\nSetting expanded fold states does not toggle folds; it only updates fold\nmargin markers. Use `buffer.toggle_fold()` instead.
-fold_flags buffer.fold_flags (number, Read-only)\nBit-mask of folding lines to draw in the buffer.\n\n* `buffer.FOLDFLAG_LINEBEFORE_EXPANDED`\n Draw lines above expanded folds.\n* `buffer.FOLDFLAG_LINEBEFORE_CONTRACTED`\n Draw lines above collapsed folds.\n* `buffer.FOLDFLAG_LINEAFTER_EXPANDED`\n Draw lines below expanded folds.\n* `buffer.FOLDFLAG_LINEAFTER_CONTRACTED`\n Draw lines below collapsed folds.\n* `buffer.FOLDFLAG_LEVELNUMBERS`\n Show hexadecimal fold levels in line margins.\n This option cannot be combined with `FOLDFLAG_LINESTATE`.\n* `buffer.FOLDFLAG_LINESTATE`\n Show line state in line margins.\n This option cannot be combined with `FOLDFLAG_LEVELNUMBERS`.\n\nThe default value is `0`.
+fold_all view.fold_all(view, action)\nContracts, expands, or toggles all fold points, depending on *action*.\nWhen toggling, the state of the first fold point determines whether to\nexpand or contract.\n@param view A view.\n@param action The fold action to perform. Valid values are:\n * `view.FOLDACTION_CONTRACT`\n * `view.FOLDACTION_EXPAND`\n * `view.FOLDACTION_TOGGLE`
+fold_children view.fold_children(view, line, action)\nContracts, expands, or toggles the fold point on line number *line*, as well\nas all of its children, depending on *action*.\n@param view A view.\n@param line The line number in *buffer* to set the fold states for.\n@param action The fold action to perform. Valid values are:\n * `view.FOLDACTION_CONTRACT`\n * `view.FOLDACTION_EXPAND`\n * `view.FOLDACTION_TOGGLE`
+fold_display_text_style view.fold_display_text_style (number)\nThe fold display text mode.\n\n* `view.FOLDDISPLAYTEXT_HIDDEN`\n Fold display text is not shown.\n* `view.FOLDDISPLAYTEXT_STANDARD`\n Fold display text is shown with no decoration.\n* `view.FOLDDISPLAYTEXT_BOXED`\n Fold display text is shown outlined with a box.\n\nThe default value is `view.FOLDDISPLAYTEXT_HIDDEN`.
+fold_expanded view.fold_expanded (table)\nTable of flags per line number that indicate whether or not fold points are\nexpanded for those line numbers.\nSetting expanded fold states does not toggle folds; it only updates fold\nmargin markers. Use `view.toggle_fold()` instead.
+fold_flags view.fold_flags (number, Read-only)\nBit-mask of folding lines to draw in the buffer.\n\n* `view.FOLDFLAG_LINEBEFORE_EXPANDED`\n Draw lines above expanded folds.\n* `view.FOLDFLAG_LINEBEFORE_CONTRACTED`\n Draw lines above collapsed folds.\n* `view.FOLDFLAG_LINEAFTER_EXPANDED`\n Draw lines below expanded folds.\n* `view.FOLDFLAG_LINEAFTER_CONTRACTED`\n Draw lines below collapsed folds.\n* `view.FOLDFLAG_LEVELNUMBERS`\n Show hexadecimal fold levels in line margins.\n This option cannot be combined with `FOLDFLAG_LINESTATE`.\n* `view.FOLDFLAG_LINESTATE`\n Show line state in line margins.\n This option cannot be combined with `FOLDFLAG_LEVELNUMBERS`.\n\nThe default value is `0`.
fold_level buffer.fold_level (table)\nTable of fold level bit-masks per line number.\nFold level masks comprise of an integer level combined with any of the\nfollowing bit flags:\n\n* `buffer.FOLDLEVELBASE`\n The initial fold level.\n* `buffer.FOLDLEVELWHITEFLAG`\n The line is blank.\n* `buffer.FOLDLEVELHEADERFLAG`\n The line is a header, or fold point.
fold_level lexer.fold_level (table, Read-only)\nTable of fold level bit-masks for line numbers starting from 1.\nFold level masks are composed of an integer level combined with any of the\nfollowing bits:\n\n* `lexer.FOLD_BASE`\n The initial fold level.\n* `lexer.FOLD_BLANK`\n The line is blank.\n* `lexer.FOLD_HEADER`\n The line is a header, or fold point.
-fold_line buffer.fold_line(buffer, line, action)\nContracts, expands, or toggles the fold point on line number *line*,\ndepending on *action*.\n@param buffer A buffer.\n@param line The line number in *buffer* to set the fold state for.\n@param action The fold action to perform. Valid values are:\n * `buffer.FOLDACTION_CONTRACT`\n * `buffer.FOLDACTION_EXPAND`\n * `buffer.FOLDACTION_TOGGLE`
+fold_line view.fold_line(view, line, action)\nContracts, expands, or toggles the fold point on line number *line*,\ndepending on *action*.\n@param view A view.\n@param line The line number in *buffer* to set the fold state for.\n@param action The fold action to perform. Valid values are:\n * `view.FOLDACTION_CONTRACT`\n * `view.FOLDACTION_EXPAND`\n * `view.FOLDACTION_TOGGLE`
fold_line_comments lexer.fold_line_comments(prefix)\nReturns a fold function (to be passed to `lexer.add_fold_point()`) that folds\nconsecutive line comments that start with string *prefix*.\n@param prefix The prefix string defining a line comment.\n@usage lex:add_fold_point(lexer.COMMENT, '--',\n lexer.fold_line_comments('--'))\n@usage lex:add_fold_point(lexer.COMMENT, '//',\n lexer.fold_line_comments('//'))
fold_parent buffer.fold_parent (table, Read-only)\nTable of fold point line numbers per child line number.\nA line number of `-1` means no line was found.
fontselect ui.dialogs.fontselect(options)\nPrompts the user with a font selection dialog defined by dialog options\ntable *options*, returning the font selected (including style and size).\nIf the user canceled the dialog, returns `nil`.\n@param options Table of key-value option pairs for the option select dialog.\n\n * `title`: The dialog's title text.\n * `text`: The font preview text.\n * `font_name`: The initially selected font name.\n * `font_size`: The initially selected font size. The default value is `12`.\n * `font_style`: The initially selected font style. The available options\n are `"regular"`, `"bold"`, `"italic"`, and `"bold italic"`. The default\n value is `"regular"`.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n@usage ui.dialogs.fontselect{title = 'Font', font_name = 'Monospace',\n font_size = 10}\n@return selected font, including style and size
@@ -609,7 +617,7 @@ forward history.forward()\nNavigates forwards through the current view's history
functions _SCINTILLA.functions (table)\nMap of Scintilla function names to tables containing their IDs, return types,\nwParam types, and lParam types. Types are as follows:\n\n + `0`: Void.\n + `1`: Integer.\n + `2`: Length of the given lParam string.\n + `3`: Integer position.\n + `4`: Color, in "0xBBGGRR" format.\n + `5`: Boolean `true` or `false`.\n + `6`: Bitmask of Scintilla key modifiers and a key value.\n + `7`: String parameter.\n + `8`: String return value.
generate_default_api ctags.generate_default_api (bool)\nWhether or not to generate simple api documentation files based on *tags*\nfile contents. For example, functions are documented with their signatures\nand source file paths.\nThis *api* file is generated in the same directory as *tags* and can be\nread by `textadept.editing.show_documentation` as long as it was added\nto `textadept.editing.api_files` for a given language.\nThe default value is `true`.
get_cur_line buffer.get_cur_line(buffer)\nReturns the current line's text and the caret's position on that line.\n@param buffer A buffer.\n@return string, number
-get_default_fold_display_text buffer.get_default_fold_display_text(buffer)\nReturns the default fold display text.\n@param buffer A buffer.
+get_default_fold_display_text view.get_default_fold_display_text(view)\nReturns the default fold display text.\n@param view A view.
get_last_child buffer.get_last_child(buffer, line, level)\nReturns the line number of the last line after line number *line* whose fold\nlevel is greater than *level*.\nIf *level* is `-1`, returns the level of *line*.\n@param buffer A buffer.\n@param line The line number in *buffer* of a header line.\n@param level The fold level, or `-1` for the level of *line*.
get_lexer buffer.get_lexer(buffer, current)\nReturns the buffer's lexer name.\nIf *current* is `true`, returns the name of the lexer under the caret in\na multiple-language lexer.\n@param buffer A buffer.\n@param current Whether or not to get the lexer at the current caret position\n in multi-language lexers. The default is `false` and returns the parent\n lexer.
get_line buffer.get_line(buffer, line)\nReturns the text on line number *line*, including end of line characters.\n@param buffer A buffer.\n@param line The line number in *buffer* to use.\n@return string, number
@@ -638,13 +646,13 @@ goto_tag ctags.goto_tag(tag)\nJumps to the source of string *tag* or the source
goto_type_definition lsp.goto_type_definition()\nJumps to the definition of the current type, returning whether or not a\ndefinition was found.\n@return `true` if a definition was found; `false` otherwise.
goto_view ui.goto_view(view)\nShifts to view *view* or the view *view* number of views relative to the\ncurrent one.\nEmits `VIEW_BEFORE_SWITCH` and `VIEW_AFTER_SWITCH` events.\n@param view A view or relative view number (typically 1 or -1).\n@see _G._VIEWS\n@see events.VIEW_BEFORE_SWITCH\n@see events.VIEW_AFTER_SWITCH
graph lexer.graph (pattern)\nA pattern that matches any graphical character ('!' to '~').
-h_scroll_bar buffer.h_scroll_bar (bool)\nDisplay the horizontal scroll bar.\nThe default value is `true`.
+h_scroll_bar view.h_scroll_bar (bool)\nDisplay the horizontal scroll bar.\nThe default value is `true`.
handle_notification Server:handle_notification(method, params)\nHandles an unsolicited notification from this language server.\n@param method String method name of the notification.\n@param params Table of parameters for the notification.
handle_stdout Server:handle_stdout(output)\nProcesses unsolicited, incoming stdout from the Language Server, primarily to\nlook for notifications and act on them.\n@param output String stdout from the Language Server.
height ui.command_entry.height (number)\nThe height in pixels of the command entry.
hex_num lexer.hex_num (pattern)\nA pattern that matches a hexadecimal number.
-hide_lines buffer.hide_lines(buffer, start_line, end_line)\nHides the range of lines between line numbers *start_line* to *end_line*.\nThis has no effect on fold levels or fold flags and the first line cannot be\nhidden.\n@param buffer A buffer.\n@param start_line The start line of the range of lines in *buffer* to hide.\n@param end_line The end line of the range of lines in *buffer* to hide.
-highlight_guide buffer.highlight_guide (number)\nThe indentation guide column number to also highlight when highlighting\nmatching braces, or `0` to stop indentation guide highlighting.
+hide_lines view.hide_lines(view, start_line, end_line)\nHides the range of lines between line numbers *start_line* to *end_line*.\nThis has no effect on fold levels or fold flags and the first line cannot be\nhidden.\n@param view A view.\n@param start_line The start line of the range of lines in *buffer* to hide.\n@param end_line The end line of the range of lines in *buffer* to hide.
+highlight_guide view.highlight_guide (number)\nThe indentation guide column number to also highlight when highlighting\nmatching braces, or `0` to stop indentation guide highlighting.
highlight_word textadept.editing.highlight_word()\nHighlights all occurrences of the selected text or all occurrences of the\ncurrent word.\n@see buffer.word_chars
history _G.history (module)\n[Experimental]\nRecords buffer positions within Textadept views over time and allows for\nnavigating through that history.\n\nThis module is not loaded by default. `require('history')` must be called\nfrom *~/.textadept/init.lua*.\n\nBy default, this module listens for text edit events, and each time an\ninsertion or deletion occurs, its location is appended to the current view's\nlocation history. If the edit is close enough to the previous record, the\nprevious record is amended.
history lua_repl.history (table)\nLua command history.\nIt has a numeric `pos` field that indicates where in the history the user\ncurrently is.
@@ -660,19 +668,19 @@ html _G.keys.html (table)\nContainer for HTML-specific key bindings.
html _G.snippets.html (table)\nContainer for HTML-specific snippets.
html _M.html (module)\nThe html module.\nIt provides utilities for editing HTML code.
iconv string.iconv(text, new, old)\nConverts string *text* from encoding *old* to encoding *new* using iconv,\nreturning the string result.\nValid encodings are GNU iconv's encodings and include:\n\n * European: ASCII, ISO-8859-{1,2,3,4,5,7,9,10,13,14,15,16}, KOI8-R, KOI8-U,\n KOI8-RU, CP{1250,1251,1252,1253,1254,1257}, CP{850,866,1131},\n Mac{Roman,CentralEurope,Iceland,Croatian,Romania},\n Mac{Cyrillic,Ukraine,Greek,Turkish}, Macintosh.\n * Semitic: ISO-8859-{6,8}, CP{1255,1256}, CP862, Mac{Hebrew,Arabic}.\n * Japanese: EUC-JP, SHIFT_JIS, CP932, ISO-2022-JP, ISO-2022-JP-2,\n ISO-2022-JP-1.\n * Chinese: EUC-CN, HZ, GBK, CP936, GB18030, EUC-TW, BIG5, CP950,\n BIG5-HKSCS, BIG5-HKSCS:2004, BIG5-HKSCS:2001, BIG5-HKSCS:1999,\n ISO-2022-CN, ISO-2022-CN-EXT.\n * Korean: EUC-KR, CP949, ISO-2022-KR, JOHAB.\n * Armenian: ARMSCII-8.\n * Georgian: Georgian-Academy, Georgian-PS.\n * Tajik: KOI8-T.\n * Kazakh: PT154, RK1048.\n * Thai: ISO-8859-11, TIS-620, CP874, MacThai.\n * Laotian: MuleLao-1, CP1133.\n * Vietnamese: VISCII, TCVN, CP1258.\n * Unicode: UTF-8, UCS-2, UCS-2BE, UCS-2LE, UCS-4, UCS-4BE, UCS-4LE, UTF-16,\n UTF-16BE, UTF-16LE, UTF-32, UTF-32BE, UTF-32LE, UTF-7, C99, JAVA.\n@param text The text to convert.\n@param new The string encoding to convert to.\n@param old The string encoding to convert from.
-idle_styling buffer.idle_styling (number)\nThe idle styling mode.\nThis mode has no effect when `buffer.wrap_mode` is on.\n\n* `buffer.IDLESTYLING_NONE`\n Style all the currently visible text before displaying it.\n* `buffer.IDLESTYLING_TOVISIBLE`\n Style some text before displaying it and then style the rest\n incrementally in the background as an idle-time task.\n* `buffer.IDLESTYLING_AFTERVISIBLE`\n Style text after the currently visible portion in the background.\n* `buffer.IDLESTYLING_ALL`\n Style text both before and after the visible text in the background.\n\nThe default value is `buffer.IDLESTYLING_NONE`.
+idle_styling view.idle_styling (number)\nThe idle styling mode.\nThis mode has no effect when `view.wrap_mode` is on.\n\n* `view.IDLESTYLING_NONE`\n Style all the currently visible text before displaying it.\n* `view.IDLESTYLING_TOVISIBLE`\n Style some text before displaying it and then style the rest\n incrementally in the background as an idle-time task.\n* `view.IDLESTYLING_AFTERVISIBLE`\n Style text after the currently visible portion in the background.\n* `view.IDLESTYLING_ALL`\n Style text both before and after the visible text in the background.\n\nThe default value is `view.IDLESTYLING_NONE`.
in_files ui.find.in_files (bool)\nFind search text in a list of files.\nThe default value is `false`.
in_files_label_text ui.find.in_files_label_text (string, Write-only)\nThe text of the "In files" label.\nThis is primarily used for localization.
indent buffer.indent (number)\nThe number of spaces in one level of indentation.\nThe default value is `0`, which uses the value of `buffer.tab_width`.
indent_amount lexer.indent_amount (table, Read-only)\nTable of indentation amounts in character columns, for line numbers\nstarting from 1.
-indentation_guides buffer.indentation_guides (number)\nThe indentation guide drawing mode.\nIndentation guides are dotted vertical lines that appear within indentation\nwhitespace at each level of indentation.\n\n* `buffer.IV_NONE`\n Does not draw any guides.\n* `buffer.IV_REAL`\n Draw guides only within indentation whitespace.\n* `buffer.IV_LOOKFORWARD`\n Draw guides beyond the current line up to the next non-empty line's\n indentation level, but with an additional level if the previous non-empty\n line is a fold point.\n* `buffer.IV_LOOKBOTH`\n Draw guides beyond the current line up to either the indentation level of\n the previous or next non-empty line, whichever is greater.\n\nThe default value is `buffer.IV_NONE`.
-indic_alpha buffer.indic_alpha (table)\nTable of fill color alpha values, ranging from `0` (transparent) to `255`\n(opaque), for indicator numbers from `1` to `32` whose styles are either\n`INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.\nThe default values are `buffer.ALPHA_NOALPHA`, for no alpha.
-indic_fore buffer.indic_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, for indicator numbers\nfrom `1` to `32`.\nChanging an indicator's foreground color resets that indicator's hover\nforeground color.
-indic_hover_fore buffer.indic_hover_fore (table)\nTable of hover foreground colors, in "0xBBGGRR" format, for indicator\nnumbers from `1` to `32`.\nThe default values are the respective indicator foreground colors.
-indic_hover_style buffer.indic_hover_style (table)\nTable of hover styles for indicators numbers from `1` to `32`. An\nindicator's hover style drawn when either the cursor hovers over that\nindicator or the caret is within that indicator.\nThe default values are the respective indicator styles.
-indic_outline_alpha buffer.indic_outline_alpha (table)\nTable of outline color alpha values, ranging from `0` (transparent) to\n`255` (opaque), for indicator numbers from `1` to `32` whose styles are\neither `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.\nThe default values are `buffer.ALPHA_NOALPHA`, for no alpha.
-indic_style buffer.indic_style (table)\nTable of styles for indicator numbers from `1` to `32`.\n\n* `buffer.INDIC_PLAIN`\n An underline.\n* `buffer.INDIC_SQUIGGLE`\n A squiggly underline 3 pixels in height.\n* `buffer.INDIC_TT`\n An underline of small 'T' shapes.\n* `buffer.INDIC_DIAGONAL`\n An underline of diagonal hatches.\n* `buffer.INDIC_STRIKE`\n Strike out.\n* `buffer.INDIC_HIDDEN`\n Invisible.\n* `buffer.INDIC_BOX`\n A bounding box.\n* `buffer.INDIC_ROUNDBOX`\n A translucent box with rounded corners around the text. Use\n `buffer.indic_alpha` and `buffer.indic_outline_alpha` to set the\n fill and outline transparency, respectively. Their default values are\n `30` and `50`.\n* `buffer.INDIC_STRAIGHTBOX`\n Similar to `INDIC_ROUNDBOX` but with sharp corners.\n* `buffer.INDIC_DASH`\n A dashed underline.\n* `buffer.INDIC_DOTS`\n A dotted underline.\n* `buffer.INDIC_SQUIGGLELOW`\n A squiggly underline 2 pixels in height.\n* `buffer.INDIC_DOTBOX`\n Similar to `INDIC_STRAIGHTBOX` but with a dotted outline.\n Translucency alternates between `buffer.indic_alpha` and\n `buffer.indic_outline_alpha` starting with the top-left pixel.\n* `buffer.INDIC_SQUIGGLEPIXMAP`\n Identical to `INDIC_SQUIGGLE` but draws faster by using a pixmap instead\n of multiple line segments.\n* `buffer.INDIC_COMPOSITIONTHICK`\n A 2-pixel thick underline at the bottom of the line inset by 1 pixel on\n on either side. Similar in appearance to the target in Asian language\n input composition.\n* `buffer.INDIC_COMPOSITIONTHIN`\n A 1-pixel thick underline just before the bottom of the line inset by 1\n pixel on either side. Similar in appearance to the non-target ranges in\n Asian language input composition.\n* `buffer.INDIC_FULLBOX`\n Similar to `INDIC_STRAIGHTBOX` but extends to the top of its line,\n potentially touching any similar indicators on the line above.\n* `buffer.INDIC_TEXTFORE`\n Changes the color of text to an indicator's foreground color.\n* `buffer.INDIC_POINT`\n A triangle below the start of the indicator range.\n* `buffer.INDIC_POINTCHARACTER`\n A triangle below the centre of the first character of the indicator\n range.\n* `buffer.INDIC_GRADIENT`\n A box with a vertical gradient from solid on top to transparent on\n bottom.\n* `buffer.INDIC_GRADIENTCENTRE`\n A box with a centered gradient from solid in the middle to transparent on\n the top and bottom.\n\nUse `_SCINTILLA.next_indic_number()` for custom indicators.\nChanging an indicator's style resets that indicator's hover style.
-indic_under buffer.indic_under (table)\nTable of flags that indicate whether or not to draw indicators behind text\ninstead of over the top of it for indicator numbers from `1` to `32`.\nThe default values are `false`.
+indentation_guides view.indentation_guides (number)\nThe indentation guide drawing mode.\nIndentation guides are dotted vertical lines that appear within indentation\nwhitespace at each level of indentation.\n\n* `view.IV_NONE`\n Does not draw any guides.\n* `view.IV_REAL`\n Draw guides only within indentation whitespace.\n* `view.IV_LOOKFORWARD`\n Draw guides beyond the current line up to the next non-empty line's\n indentation level, but with an additional level if the previous non-empty\n line is a fold point.\n* `view.IV_LOOKBOTH`\n Draw guides beyond the current line up to either the indentation level of\n the previous or next non-empty line, whichever is greater.\n\nThe default value is `view.IV_NONE`.
+indic_alpha view.indic_alpha (table)\nTable of fill color alpha values, ranging from `0` (transparent) to `255`\n(opaque), for indicator numbers from `1` to `32` whose styles are either\n`INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.\nThe default values are `view.ALPHA_NOALPHA`, for no alpha.
+indic_fore view.indic_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, for indicator numbers\nfrom `1` to `32`.\nChanging an indicator's foreground color resets that indicator's hover\nforeground color.
+indic_hover_fore view.indic_hover_fore (table)\nTable of hover foreground colors, in "0xBBGGRR" format, for indicator\nnumbers from `1` to `32`.\nThe default values are the respective indicator foreground colors.
+indic_hover_style view.indic_hover_style (table)\nTable of hover styles for indicators numbers from `1` to `32`. An\nindicator's hover style drawn when either the cursor hovers over that\nindicator or the caret is within that indicator.\nThe default values are the respective indicator styles.
+indic_outline_alpha view.indic_outline_alpha (table)\nTable of outline color alpha values, ranging from `0` (transparent) to\n`255` (opaque), for indicator numbers from `1` to `32` whose styles are\neither `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`.\nThe default values are `view.ALPHA_NOALPHA`, for no alpha.
+indic_style view.indic_style (table)\nTable of styles for indicator numbers from `1` to `32`.\n\n* `view.INDIC_PLAIN`\n An underline.\n* `view.INDIC_SQUIGGLE`\n A squiggly underline 3 pixels in height.\n* `view.INDIC_TT`\n An underline of small 'T' shapes.\n* `view.INDIC_DIAGONAL`\n An underline of diagonal hatches.\n* `view.INDIC_STRIKE`\n Strike out.\n* `view.INDIC_HIDDEN`\n Invisible.\n* `view.INDIC_BOX`\n A bounding box.\n* `view.INDIC_ROUNDBOX`\n A translucent box with rounded corners around the text. Use\n `view.indic_alpha` and `view.indic_outline_alpha` to set the\n fill and outline transparency, respectively. Their default values are\n `30` and `50`.\n* `view.INDIC_STRAIGHTBOX`\n Similar to `INDIC_ROUNDBOX` but with sharp corners.\n* `view.INDIC_DASH`\n A dashed underline.\n* `view.INDIC_DOTS`\n A dotted underline.\n* `view.INDIC_SQUIGGLELOW`\n A squiggly underline 2 pixels in height.\n* `view.INDIC_DOTBOX`\n Similar to `INDIC_STRAIGHTBOX` but with a dotted outline.\n Translucency alternates between `view.indic_alpha` and\n `view.indic_outline_alpha` starting with the top-left pixel.\n* `view.INDIC_SQUIGGLEPIXMAP`\n Identical to `INDIC_SQUIGGLE` but draws faster by using a pixmap instead\n of multiple line segments.\n* `view.INDIC_COMPOSITIONTHICK`\n A 2-pixel thick underline at the bottom of the line inset by 1 pixel on\n on either side. Similar in appearance to the target in Asian language\n input composition.\n* `view.INDIC_COMPOSITIONTHIN`\n A 1-pixel thick underline just before the bottom of the line inset by 1\n pixel on either side. Similar in appearance to the non-target ranges in\n Asian language input composition.\n* `view.INDIC_FULLBOX`\n Similar to `INDIC_STRAIGHTBOX` but extends to the top of its line,\n potentially touching any similar indicators on the line above.\n* `view.INDIC_TEXTFORE`\n Changes the color of text to an indicator's foreground color.\n* `view.INDIC_POINT`\n A triangle below the start of the indicator range.\n* `view.INDIC_POINTCHARACTER`\n A triangle below the centre of the first character of the indicator\n range.\n* `view.INDIC_GRADIENT`\n A box with a vertical gradient from solid on top to transparent on\n bottom.\n* `view.INDIC_GRADIENTCENTRE`\n A box with a centered gradient from solid in the middle to transparent on\n the top and bottom.\n\nUse `_SCINTILLA.next_indic_number()` for custom indicators.\nChanging an indicator's style resets that indicator's hover style.
+indic_under view.indic_under (table)\nTable of flags that indicate whether or not to draw indicators behind text\ninstead of over the top of it for indicator numbers from `1` to `32`.\nThe default values are `false`.
indicator_all_on_for buffer.indicator_all_on_for(buffer, pos)\nReturns a bit-mask that represents which indicators are on at position *pos*.\nThe first bit is set if indicator 1 is on, the second bit for indicator 2,\netc.\n@param buffer A buffer.\n@param pos The position in *buffer* to get indicators at.\n@return number
indicator_clear_range buffer.indicator_clear_range(buffer, pos, length)\nClears indicator number `buffer.indicator_current` over the range of text\nfrom position *pos* to *pos* + *length*.\n@param buffer A buffer.\n@param pos The start position of the range of text in *buffer* to clear\n indicators over.\n@param length The number of characters in the range of text to clear\n indicators over.
indicator_current buffer.indicator_current (number)\nThe indicator number in the range of `1` to `32` used by\n`buffer.indicator_fill_range()` and\n`buffer.indicator_clear_range()`.
@@ -693,7 +701,7 @@ keys _G.keys (table)\nMap of key bindings to commands, with language-specific ke
keys lua_repl.keys (table)\nTable of key bindings for the REPL.
keys textadept.keys (module)\nDefines key commands for Textadept.\nThis set of key commands is pretty standard among other text editors, at\nleast for basic editing commands and movements.
kill spawn_proc:kill(signal)\nKills running process *spawn_proc*, or sends it Unix signal *signal*.\n@param signal Optional Unix signal to send to *spawn_proc*. The default value\n is 9 (`SIGKILL`), which kills the process.
-last_char_includes lexer.last_char_includes(s)\nCreates and returns a pattern that verifies that string set *s* contains the\nfirst non-whitespace character behind the current match position.\n@param s String character set like one passed to `lpeg.S()`.\n@usage local regex = lexer.last_char_includes('+-*!%^&|=,([{') *\n lexer.delimited_range('/')\n@return pattern
+last_char_includes lexer.last_char_includes(s)\nCreates and returns a pattern that verifies that string set *s* contains the\nfirst non-whitespace character behind the current match position.\n@param s String character set like one passed to `lpeg.S()`.\n@usage local regex = lexer.last_char_includes('+-*!%^&|=,([{') *\n lexer.range('/')\n@return pattern
length buffer.length (number, Read-only)\nThe number of bytes in the buffer.
lex lexer.lex(lexer, text, init_style)\nLexes a chunk of text *text* (that has an initial style number of\n*init_style*) using lexer *lexer*, returning a table of token names and\npositions.\n@param lexer The lexer to lex text with.\n@param text The text in the buffer to lex.\n@param init_style The current style. Multiple-language lexers use this to\n determine which language to start lexing in.\n@return table of token names and positions.
lexer _G.lexer (module)\nLexes Scintilla documents and source code with Lua and LPeg.
@@ -721,17 +729,17 @@ line_indentation buffer.line_indentation (table)\nTable of column indentation am
line_length buffer.line_length(buffer, line)\nReturns the number of bytes on line number *line*, including end of line\ncharacters.\nTo get line length excluding end of line characters, use\n`buffer.line_end_position[line] - buffer.position_from_line(line)`.\n@param buffer A buffer.\n@param line The line number in *buffer* to get the length of.\n@return number
line_numbers export.line_numbers (boolean)\nWhether or not to show line numbers in exported output.\nThe default value is `true`.
line_reverse buffer.line_reverse(buffer)\nReverses the order of the selected lines.\n@param buffer A buffer.
-line_scroll buffer.line_scroll(buffer, columns, lines)\nScrolls the buffer right *columns* columns and down *lines* lines.\nNegative values are allowed.\n@param buffer A buffer.\n@param columns The number of columns to scroll horizontally.\n@param lines The number of lines to scroll vertically.
-line_scroll_down buffer.line_scroll_down(buffer)\nScrolls the buffer down one line, keeping the caret visible.\n@param buffer A buffer.
-line_scroll_up buffer.line_scroll_up(buffer)\nScrolls the buffer up one line, keeping the caret visible.\n@param buffer A buffer.
+line_scroll view.line_scroll(view, columns, lines)\nScrolls the buffer right *columns* columns and down *lines* lines.\nNegative values are allowed.\n@param view A view.\n@param columns The number of columns to scroll horizontally.\n@param lines The number of lines to scroll vertically.
+line_scroll_down view.line_scroll_down(view)\nScrolls the buffer down one line, keeping the caret visible.\n@param view A view.
+line_scroll_up view.line_scroll_up(view)\nScrolls the buffer up one line, keeping the caret visible.\n@param view A view.
line_state lexer.line_state (table)\nTable of integer line states for line numbers starting from 1.\nLine states can be used by lexers for keeping track of persistent states.
line_transpose buffer.line_transpose(buffer)\nSwaps the current line with the previous one.\n@param buffer A buffer.
line_up buffer.line_up(buffer)\nMoves the caret up one line.\n@param buffer A buffer.
line_up_extend buffer.line_up_extend(buffer)\nMoves the caret up one line, extending the selected text to the new position.\n@param buffer A buffer.
line_up_rect_extend buffer.line_up_rect_extend(buffer)\nMoves the caret up one line, extending the rectangular selection to the new\nposition.\n@param buffer A buffer.
-line_visible buffer.line_visible (table, Read-only)\nTable of flags per line number that indicate whether or not lines are\nvisible for those line numbers.
+line_visible view.line_visible (table, Read-only)\nTable of flags per line number that indicate whether or not lines are\nvisible for those line numbers.
lines_join buffer.lines_join(buffer)\nJoins the lines in the target range, inserting spaces between the words\njoined at line boundaries.\n@param buffer A buffer.
-lines_on_screen buffer.lines_on_screen (number, Read-only)\nThe number of completely visible lines in the view.\nIt is possible to have a partial line visible at the bottom of the view.
+lines_on_screen view.lines_on_screen (number, Read-only)\nThe number of completely visible lines in the view.\nIt is possible to have a partial line visible at the bottom of the view.
lines_split buffer.lines_split(buffer, pixel_width, width)\nSplits the lines in the target range into lines *width* pixels wide.\nIf *width* is `0`, splits the lines in the target range into lines as wide as\nthe view.\n@param buffer A buffer.\n@param width The pixel width to split lines at. When `0`, uses the width of\n the view.
load lexer.load(name, alt_name, cache)\nInitializes or loads and returns the lexer of string name *name*.\nScintilla calls this function in order to load a lexer. Parent lexers also\ncall this function in order to load child lexers and vice-versa. The user\ncalls this function in order to load a lexer when using this module as a Lua\nlibrary.\n@param name The name of the lexing language.\n@param alt_name The alternate name of the lexing language. This is useful for\n embedding the same child lexer with multiple sets of start and end tokens.\n@param cache Flag indicating whether or not to load lexers from the cache.\n This should only be `true` when initially loading a lexer (e.g. not from\n within another lexer for embedding purposes).\n The default value is `false`.\n@return lexer object
load textadept.macros.load(filename)\nLoads a macro from file *filename* or the user-selected file.\n@param filename Optional macro file to load. If `nil`, the user is prompted\n for one.
@@ -751,37 +759,39 @@ lua debugger.lua (module)\nLanguage debugging support for Lua.\nRequires LuaSock
lua_repl _G.lua_repl (module)\n[Experimental]\nAn interactive Lua REPL using Textadept's Lua State, similar to Lua's\ninteractive REPL.\n\nThis is an alternative to the single-line Lua command entry.\n\nThis module is not loaded by default. `require('lua_repl')` must be called\nfrom *~/.textadept/init.lua*.
macros textadept.macros (module)\nA module for recording, playing, saving, and loading keyboard macros.\nMenu commands are also recorded.\nAt this time, typing into multiple cursors during macro playback is not\nsupported.
main_selection buffer.main_selection (number)\nThe number of the main, or most recent, selection.\nOnly an existing selection can be made main.
-margin_back_n buffer.margin_back_n (table)\nTable of background colors, in "0xBBGGRR" format, of margin numbers from\n`1` to `buffer.margins` (`5` by default).\nOnly affects margins of type `buffer.MARGIN_COLOUR`.
-margin_cursor_n buffer.margin_cursor_n (table)\nTable of cursor types shown over margin numbers from `1` to\n`buffer.margins` (`5` by default).\n\n* `buffer.CURSORARROW`\n Normal arrow cursor.\n* `buffer.CURSORREVERSEARROW`\n Reversed arrow cursor.\n\nThe default values are `buffer.CURSORREVERSEARROW`.
-margin_left buffer.margin_left (number)\nThe pixel size of the left margin of the buffer text.\nThe default value is `1`.
-margin_mask_n buffer.margin_mask_n (table)\nTable of bit-masks of markers whose symbols marker symbol margins can\ndisplay for margin numbers from `1` to `buffer.margins` (`5` by default).\nBit-masks are 32-bit values whose bits correspond to the 32 available\nmarkers.\nThe default values are `0`, `buffer.MASK_FOLDERS`, `0`, `0`, and `0`, for\na line margin and logical marker margin.
-margin_options buffer.margin_options (number)\nA bit-mask of margin option settings.\n\n* `buffer.MARGINOPTION_NONE`\n None.\n* `buffer.MARGINOPTION_SUBLINESELECT`\n Select only a wrapped line's sub-line (rather than the entire line) when\n the line number margin is clicked.\n\nThe default value is `buffer.MARGINOPTION_NONE`.
-margin_right buffer.margin_right (number)\nThe pixel size of the right margin of the buffer text.\nThe default value is `1`.
-margin_sensitive_n buffer.margin_sensitive_n (table)\nTable of flags that indicate whether or not mouse clicks in margins emit\n`MARGIN_CLICK` events for margin numbers from `1` to `buffer.margins` (`5`\nby default).\nThe default values are `false`.
+margin_back_n view.margin_back_n (table)\nTable of background colors, in "0xBBGGRR" format, of margin numbers from\n`1` to `view.margins` (`5` by default).\nOnly affects margins of type `view.MARGIN_COLOUR`.
+margin_cursor_n view.margin_cursor_n (table)\nTable of cursor types shown over margin numbers from `1` to\n`view.margins` (`5` by default).\n\n* `view.CURSORARROW`\n Normal arrow cursor.\n* `view.CURSORREVERSEARROW`\n Reversed arrow cursor.\n\nThe default values are `view.CURSORREVERSEARROW`.
+margin_left view.margin_left (number)\nThe pixel size of the left margin of the buffer text.\nThe default value is `1`.
+margin_mask_n view.margin_mask_n (table)\nTable of bit-masks of markers whose symbols marker symbol margins can\ndisplay for margin numbers from `1` to `view.margins` (`5` by default).\nBit-masks are 32-bit values whose bits correspond to the 32 available\nmarkers.\nThe default values are `0`, `view.MASK_FOLDERS`, `0`, `0`, and `0`, for\na line margin and logical marker margin.
+margin_options view.margin_options (number)\nA bit-mask of margin option settings.\n\n* `view.MARGINOPTION_NONE`\n None.\n* `view.MARGINOPTION_SUBLINESELECT`\n Select only a wrapped line's sub-line (rather than the entire line) when\n the line number margin is clicked.\n\nThe default value is `view.MARGINOPTION_NONE`.
+margin_right view.margin_right (number)\nThe pixel size of the right margin of the buffer text.\nThe default value is `1`.
+margin_sensitive_n view.margin_sensitive_n (table)\nTable of flags that indicate whether or not mouse clicks in margins emit\n`MARGIN_CLICK` events for margin numbers from `1` to `view.margins` (`5`\nby default).\nThe default values are `false`.
margin_style buffer.margin_style (table)\nTable of style numbers in the text margin per line number.\nOnly some style attributes are active in text margins: font, size, bold,\nitalics, fore, and back.
margin_text buffer.margin_text (table)\nTable of text displayed in text margins per line number.
margin_text_clear_all buffer.margin_text_clear_all(buffer)\nClears all text in text margins.\n@param buffer A buffer.
-margin_type_n buffer.margin_type_n (table)\nTable of margin types for margin numbers from `1` to `buffer.margins` (`5`\nby default).\n\n* `buffer.MARGIN_SYMBOL`\n A marker symbol margin.\n* `buffer.MARGIN_NUMBER`\n A line number margin.\n* `buffer.MARGIN_BACK`\n A marker symbol margin whose background color matches the default text\n background color.\n* `buffer.MARGIN_FORE`\n A marker symbol margin whose background color matches the default text\n foreground color.\n* `buffer.MARGIN_TEXT`\n A text margin.\n* `buffer.MARGIN_RTEXT`\n A right-justified text margin.\n* `buffer.MARGIN_COLOUR`\n A marker symbol margin whose background color is configurable.\n\nThe default value for the first margin is `buffer.MARGIN_NUMBER`, followed\nby `buffer.MARGIN_SYMBOL` for the rest.
-margin_width_n buffer.margin_width_n (table)\nTable of pixel margin widths for margin numbers from `1` to\n`buffer.margins` (`5` by default).
-margins buffer.margins (number)\nThe number of margins.\nThe default value is `5`.
+margin_type_n view.margin_type_n (table)\nTable of margin types for margin numbers from `1` to `view.margins` (`5`\nby default).\n\n* `view.MARGIN_SYMBOL`\n A marker symbol margin.\n* `view.MARGIN_NUMBER`\n A line number margin.\n* `view.MARGIN_BACK`\n A marker symbol margin whose background color matches the default text\n background color.\n* `view.MARGIN_FORE`\n A marker symbol margin whose background color matches the default text\n foreground color.\n* `view.MARGIN_TEXT`\n A text margin.\n* `view.MARGIN_RTEXT`\n A right-justified text margin.\n* `view.MARGIN_COLOUR`\n A marker symbol margin whose background color is configurable.\n\nThe default value for the first margin is `view.MARGIN_NUMBER`, followed\nby `view.MARGIN_SYMBOL` for the rest.
+margin_width_n view.margin_width_n (table)\nTable of pixel margin widths for margin numbers from `1` to\n`view.margins` (`5` by default).
+margins view.margins (number)\nThe number of margins.\nThe default value is `5`.
marker_add buffer.marker_add(buffer, line, marker)\nAdds marker number *marker*, in the range of `1` to `32`, to line number\n*line*, returning the added marker's handle which can be used in\n`buffer.marker_delete_handle()` and `buffer.marker_line_from_handle()`, or\n`-1` if *line* is invalid.\n@param buffer A buffer.\n@param line The line number to add the marker on.\n@param marker The marker number in the range of `1` to `32` to add.\n@return number
marker_add_set buffer.marker_add_set(buffer, line, marker_mask)\nAdds the markers specified in marker bit-mask *marker_mask* to line number\n*line*.\nThe first bit is set to add marker number 1, the second bit for marker number\n2, and so on up to marker number 32.\n@param buffer A buffer.\n@param line The line number to add the markers on.\n@param marker_mask The mask of markers to set. Set the first bit to set\n marker 1, the second bit for marker 2 and so on.
-marker_alpha buffer.marker_alpha (table, Write-only)\nTable of alpha values, ranging from `0` (transparent) to `255` (opaque),\nof markers drawn in the text area (not the margin) for markers numbers from\n`1` to `32`.\nThe default values are `buffer.ALPHA_NOALPHA`, for no alpha.
-marker_back buffer.marker_back (table, Write-only)\nTable of background colors, in "0xBBGGRR" format, of marker numbers from\n`1` to `32`.
-marker_back_selected buffer.marker_back_selected (table, Write-only)\nTable of background colors, in "0xBBGGRR" format, of markers whose folding\nblocks are selected for marker numbers from `1` to `32`.
-marker_define buffer.marker_define(buffer, marker, symbol)\nAssigns marker symbol *symbol* to marker number *marker*, in the range of `1`\nto `32`.\n*symbol* is shown in marker symbol margins next to lines marked with\n*marker*.\n@param buffer A buffer.\n@param marker The marker number in the range of `1` to `32` to set *symbol*\n for.\n@param symbol The marker symbol: `buffer.MARK_*`.\n@see _SCINTILLA.next_marker_number
-marker_define_pixmap buffer.marker_define_pixmap(buffer, marker, pixmap)\nAssociates marker number *marker*, in the range of `1` to `32`, with XPM\nimage *pixmap*.\nThe `buffer.MARK_PIXMAP` marker symbol must be assigned to *marker*.\n*pixmap* is shown in marker symbol margins next to lines marked with\n*marker*.\n@param buffer A buffer.\n@param marker The marker number in the range of `1` to `32` to define\n pixmap *pixmap* for.\n@param pixmap The string pixmap data.
-marker_define_rgba_image buffer.marker_define_rgba_image(buffer, marker, pixels)\nAssociates marker number *marker*, in the range of `1` to `32`, with RGBA\nimage *pixels*.\nThe dimensions for *pixels* (`buffer.rgba_image_width` and\n`buffer.rgba_image_height`) must have already been defined. *pixels* is a\nsequence of 4 byte pixel values (red, blue, green, and alpha) defining the\nimage line by line starting at the top-left pixel.\nThe `buffer.MARK_RGBAIMAGE` marker symbol must be assigned to *marker*.\n*pixels* is shown in symbol margins next to lines marked with *marker*.\n@param buffer A buffer.\n@param marker The marker number in the range of `1` to `32` to define RGBA\n data *pixels* for.\n@param pixels The string sequence of 4 byte pixel values starting with the\n pixels for the top line, with the leftmost pixel first, then continuing\n with the pixels for subsequent lines. There is no gap between lines for\n alignment reasons. Each pixel consists of, in order, a red byte, a green\n byte, a blue byte and an alpha byte. The colour bytes are not premultiplied\n by the alpha value. That is, a fully red pixel that is 25% opaque will be\n `[FF, 00, 00, 3F]`.
+marker_alpha view.marker_alpha (table, Write-only)\nTable of alpha values, ranging from `0` (transparent) to `255` (opaque),\nof markers drawn in the text area (not the margin) for markers numbers from\n`1` to `32`.\nThe default values are `view.ALPHA_NOALPHA`, for no alpha.
+marker_back view.marker_back (table, Write-only)\nTable of background colors, in "0xBBGGRR" format, of marker numbers from\n`1` to `32`.
+marker_back_selected view.marker_back_selected (table, Write-only)\nTable of background colors, in "0xBBGGRR" format, of markers whose folding\nblocks are selected for marker numbers from `1` to `32`.
+marker_define view.marker_define(view, marker, symbol)\nAssigns marker symbol *symbol* to marker number *marker*, in the range of `1`\nto `32`.\n*symbol* is shown in marker symbol margins next to lines marked with\n*marker*.\n@param view A view.\n@param marker The marker number in the range of `1` to `32` to set *symbol*\n for.\n@param symbol The marker symbol: `buffer.MARK_*`.\n@see _SCINTILLA.next_marker_number
+marker_define_pixmap view.marker_define_pixmap(view, marker, pixmap)\nAssociates marker number *marker*, in the range of `1` to `32`, with XPM\nimage *pixmap*.\nThe `view.MARK_PIXMAP` marker symbol must be assigned to *marker*.\n*pixmap* is shown in marker symbol margins next to lines marked with\n*marker*.\n@param view A view.\n@param marker The marker number in the range of `1` to `32` to define\n pixmap *pixmap* for.\n@param pixmap The string pixmap data.
+marker_define_rgba_image view.marker_define_rgba_image(view, marker, pixels)\nAssociates marker number *marker*, in the range of `1` to `32`, with RGBA\nimage *pixels*.\nThe dimensions for *pixels* (`view.rgba_image_width` and\n`view.rgba_image_height`) must have already been defined. *pixels* is a\nsequence of 4 byte pixel values (red, blue, green, and alpha) defining the\nimage line by line starting at the top-left pixel.\nThe `view.MARK_RGBAIMAGE` marker symbol must be assigned to *marker*.\n*pixels* is shown in symbol margins next to lines marked with *marker*.\n@param view A view.\n@param marker The marker number in the range of `1` to `32` to define RGBA\n data *pixels* for.\n@param pixels The string sequence of 4 byte pixel values starting with the\n pixels for the top line, with the leftmost pixel first, then continuing\n with the pixels for subsequent lines. There is no gap between lines for\n alignment reasons. Each pixel consists of, in order, a red byte, a green\n byte, a blue byte and an alpha byte. The colour bytes are not premultiplied\n by the alpha value. That is, a fully red pixel that is 25% opaque will be\n `[FF, 00, 00, 3F]`.
marker_delete buffer.marker_delete(buffer, line, marker)\nDeletes marker number *marker*, in the range of `1` to `32`, from line number\n*line*. If *marker* is `-1`, deletes all markers from *line*.\n@param buffer A buffer.\n@param line The line number to delete the marker on.\n@param marker The marker number in the range of `1` to `32` to delete from\n *line*, or `-1` to delete all markers from the line.
marker_delete_all buffer.marker_delete_all(buffer, marker)\nDeletes marker number *marker*, in the range of `1` to `32`, from any line\nthat has it.\nIf *marker* is `-1`, deletes all markers from all lines.\n@param buffer A buffer.\n@param marker The marker number in the range of `1` to `32` to delete from\n all lines, or `-1` to delete all markers from all lines.
marker_delete_handle buffer.marker_delete_handle(buffer, handle)\nDeletes the marker with handle *handle* returned by `buffer.marker_add()`.\n@param buffer A buffer.\n@param handle The identifier of a marker returned by `buffer.marker_add()`.
-marker_enable_highlight buffer.marker_enable_highlight(buffer, enabled)\nHighlights the margin fold markers for the current fold block if *enabled* is\n`true`.\n@param buffer A buffer.\n@param enabled Whether or not to enable highlight.
-marker_fore buffer.marker_fore (table, Write-only)\nTable of foreground colors, in "0xBBGGRR" format, of marker numbers from\n`1` to `32`.
+marker_enable_highlight view.marker_enable_highlight(view, enabled)\nHighlights the margin fold markers for the current fold block if *enabled* is\n`true`.\n@param view A view.\n@param enabled Whether or not to enable highlight.
+marker_fore view.marker_fore (table, Write-only)\nTable of foreground colors, in "0xBBGGRR" format, of marker numbers from\n`1` to `32`.
marker_get buffer.marker_get(buffer, line)\nReturns a bit-mask that represents the markers that were added to line number\n*line*.\nThe first bit is set if marker number 1 is present, the second bit for marker\nnumber 2, and so on.\n@param buffer A buffer.\n@param line The line number to get markers on.\n@return number
+marker_handle_from_line buffer.marker_handle_from_line(buffer, line, n)\nReturns the handle of the *n*th marker on line number *line*, or `-1` if no\nsuch marker exists.\n@param buffer A buffer.\n@param line The line number to get markers on.\n@param n The marker to get the handle of.
marker_line_from_handle buffer.marker_line_from_handle(buffer, handle)\nReturns the line number that marker handle *handle*, returned by\n`buffer.marker_add()`, was added to, or `-1` if the line was not found.\n@param buffer A buffer.\n@param handle The identifier of a marker returned by `buffer.marker_add()`.\n@return number
marker_next buffer.marker_next(buffer, line, marker_mask)\nReturns the first line number, starting at line number *line*, that has had\nall of the markers represented by marker bit-mask *marker_mask* added to it.\nReturns `-1` if no line was found.\nThe first bit is set if marker 1 is set, the second bit for marker 2, etc.,\nup to marker 32.\n@param buffer A buffer.\n@param line The start line to search from.\n@param marker_mask The mask of markers to find. Set the first bit to find\n marker 1, the second bit for marker 2, and so on.\n@return number
+marker_number_from_line buffer.marker_number_from_line(buffer, line, n)\nReturns the number of the *n*th marker on line number *line*, or `-1` if no\nsuch marker exists.\n@param buffer A buffer.\n@param line The line number to get markers on.\n@param n The marker to get the number of.
marker_previous buffer.marker_previous(buffer, line, marker_mask)\nReturns the last line number, before or on line number *line*, that has had\nall of the markers represented by marker bit-mask *marker_mask* added to it.\nReturns `-1` if no line was found.\nThe first bit is set if marker 1 is set, the second bit for marker 2, etc.,\nup to marker 32.\n@param buffer A buffer.\n@param line The start line to search from.\n@param marker_mask The mask of markers to find. Set the first bit to find\n marker 1, the second bit for marker 2, and so on.\n@return number
-marker_symbol_defined buffer.marker_symbol_defined(buffer, marker)\nReturns the symbol assigned to marker number *marker*, in the range of `1` to\n`32`, used in `buffer.marker_define()`,\n`buffer.marker_define_pixmap()`, or `buffer.marker_define_rgba_image()`.\n@param buffer A buffer.\n@param marker The marker number in the range of `1` to `32` to get the symbol\n of.\n@return number
+marker_symbol_defined view.marker_symbol_defined(view, marker)\nReturns the symbol assigned to marker number *marker*, in the range of `1` to\n`32`, used in `view.marker_define()`,\n`view.marker_define_pixmap()`, or `view.marker_define_rgba_image()`.\n@param view A view.\n@param marker The marker number in the range of `1` to `32` to get the symbol\n of.\n@return number
match_case ui.find.match_case (bool)\nMatch search text case sensitively.\nThe default value is `false`.
match_case_label_text ui.find.match_case_label_text (string, Write-only)\nThe text of the "Match case" label.\nThis is primarily used for localization.
maximized ui.maximized (bool)\nWhether or not Textadept's window is maximized.
@@ -795,34 +805,34 @@ minimum_line_distance history.minimum_line_distance (number)\nThe minimum number
mode keys.mode (string)\nThe current key mode.\nWhen non-`nil`, all key bindings defined outside of `keys[mode]` are\nignored.\nThe default value is `nil`.
modify buffer.modify (bool, Read-only)\nWhether or not the buffer has unsaved changes.
modify_rule lexer.modify_rule(lexer, id, rule)\nReplaces in lexer *lexer* the existing rule identified by string *id* with\npattern *rule*.\n@param lexer The lexer to modify.\n@param id The id associated with this rule.\n@param rule The LPeg pattern of the rule.
-mouse_dwell_time buffer.mouse_dwell_time (number)\nThe number of milliseconds the mouse must idle before generating a\n`DWELL_START` event. A time of `buffer.TIME_FOREVER` will never generate\none.
-mouse_selection_rectangular_switch buffer.mouse_selection_rectangular_switch (bool)\nWhether or not pressing `buffer.rectangular_selection_modifier` when\nselecting text normally with the mouse turns on rectangular selection.\nThe default value is `false`.
+mouse_dwell_time view.mouse_dwell_time (number)\nThe number of milliseconds the mouse must idle before generating a\n`DWELL_START` event. A time of `view.TIME_FOREVER` will never generate\none.
+mouse_selection_rectangular_switch view.mouse_selection_rectangular_switch (bool)\nWhether or not pressing `view.rectangular_selection_modifier` when\nselecting text normally with the mouse turns on rectangular selection.\nThe default value is `false`.
move_caret_inside_view buffer.move_caret_inside_view(buffer)\nMoves the caret into view if it is not already, removing any selections.\n@param buffer A buffer.
-move_extends_selection buffer.move_extends_selection (bool)\nWhether or not regular caret movement alters the selected text.
+move_extends_selection buffer.move_extends_selection (bool, Read-only)\nWhether or not regular caret movement alters the selected text.\n`buffer.selection_mode` dictates this property.
move_selected_lines_down buffer.move_selected_lines_down(buffer)\nShifts the selected lines down one line.\n@param buffer A buffer.
move_selected_lines_up buffer.move_selected_lines_up(buffer)\nShifts the selected lines up one line.\n@param buffer A buffer.
msgbox ui.dialogs.msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options*, returning the selected button's index.\nIf *options*.`string_output` is `true`, returns the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `button1`: The right-most button's label. The default value is\n `_L['OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `string_output`: Return the selected button's label (instead of its\n index) or the dialog's exit status instead of the button's index (instead\n of its exit code). The default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.msgbox{title = 'EOL Mode', text = 'Which EOL?',\n icon = 'gtk-dialog-question', button1 = 'CRLF', button2 = 'CR',\n button3 = 'LF'}\n@return selected button or exit code
-multi_edge_add_line buffer.multi_edge_add_line(buffer, column, color)\nAdds a new vertical line at column number *column* with color *color*, in\n"0xBBGGRR" format.\n@param buffer A buffer.\n@param column The column number to add a vertical line at.\n@param color The color in "0xBBGGRR" format.
-multi_edge_clear_all buffer.multi_edge_clear_all(buffer)\nClears all vertical lines created by `buffer:multi_edge_add_line()`.\n@param buffer A buffer.
+multi_edge_add_line view.multi_edge_add_line(view, column, color)\nAdds a new vertical line at column number *column* with color *color*, in\n"0xBBGGRR" format.\n@param view A view.\n@param column The column number to add a vertical line at.\n@param color The color in "0xBBGGRR" format.
+multi_edge_clear_all view.multi_edge_clear_all(view)\nClears all vertical lines created by `view:multi_edge_add_line()`.\n@param view A view.
multi_paste buffer.multi_paste (number)\nThe multiple selection paste mode.\n\n* `buffer.MULTIPASTE_ONCE`\n Paste into only the main selection.\n* `buffer.MULTIPASTE_EACH`\n Paste into all selections.\n\nThe default value is `buffer.MULTIPASTE_ONCE`.
multiple_select_add_each buffer.multiple_select_add_each(buffer)\nAdds to the set of selections each occurrence of the main selection within\nthe target range.\nIf there is no selected text, the current word is used.\n@param buffer A buffer.
multiple_select_add_next buffer.multiple_select_add_next(buffer)\nAdds to the set of selections the next occurrence of the main selection\nwithin the target range, makes that occurrence the new main selection, and\nscrolls it into view.\nIf there is no selected text, the current word is used.\n@param buffer A buffer.
multiple_selection buffer.multiple_selection (bool)\nEnable multiple selection.\nThe default value is `false`.
name_of_style buffer.name_of_style(buffer, style)\nReturns the name of style number *style*, which is between `1` and `256`.\n@param buffer A buffer.\n@param style The style number between `1` and `256` to get the name of.\n@return string
-nested_pair lexer.nested_pair(start_chars, end_chars)\nReturns a pattern that matches a balanced range of text that starts with\nstring *start_chars* and ends with string *end_chars*.\nWith single-character delimiters, this function is identical to\n`delimited_range(start_chars .. end_chars, false, true, true)`.\n@param start_chars The string starting a nested sequence.\n@param end_chars The string ending a nested sequence.\n@usage local nested_comment = lexer.nested_pair('/*', '*/')\n@return pattern\n@see delimited_range
new Server.new(lexer, cmd, init_options)\nStarts, initializes, and returns a new language server.\n@param lexer Lexer language of the language server.\n@param cmd String command to start the language server.\n@param init_options Optional table of options to be passed to the language\n server for initialization.
new buffer.new()\nCreates and returns a new buffer.\nEmits a `BUFFER_NEW` event.\n@return the new buffer.\n@see events.BUFFER_NEW
new lexer.new(name, opts)\nCreates a returns a new lexer with the given name.\n@param name The lexer's name.\n@param opts Table of lexer options. Options currently supported:\n * `lex_by_line`: Whether or not the lexer only processes whole lines of\n text (instead of arbitrary chunks of text) at a time.\n Line lexers cannot look ahead to subsequent lines.\n The default value is `false`.\n * `fold_by_indentation`: Whether or not the lexer does not define any fold\n points and that fold points should be calculated based on changes in line\n indentation.\n The default value is `false`.\n * `case_insensitive_fold_points`: Whether or not fold points added via\n `lexer.add_fold_point()` ignore case.\n The default value is `false`.\n * `inherit`: Lexer to inherit from.\n The default value is `nil`.\n@usage lexer.new('rhtml', {inherit = lexer.load('html')})
new_line buffer.new_line(buffer)\nTypes a new line at the caret position according to `buffer.eol_mode`.\n@param buffer A buffer.
newline lexer.newline (pattern)\nA pattern that matches a sequence of end of line characters.
-next_image_type _SCINTILLA.next_image_type()\nReturns a unique image type identier number for use with\n`buffer.register_image()` and `buffer.register_rgba_image()`.\nUse this function for custom image types in order to prevent clashes with\nidentifiers of other custom image types.\n@usage local image_type = _SCINTILLA.next_image_type()\n@see buffer.register_image\n@see buffer.register_rgba_image
-next_indic_number _SCINTILLA.next_indic_number()\nReturns a unique indicator number for use with custom indicators.\nUse this function for custom indicators in order to prevent clashes with\nidentifiers of other custom indicators.\n@usage local indic_num = _SCINTILLA.next_indic_number()\n@see buffer.indic_style
-next_marker_number _SCINTILLA.next_marker_number()\nReturns a unique marker number for use with `buffer.marker_define()`.\nUse this function for custom markers in order to prevent clashes with\nidentifiers of other custom markers.\n@usage local marknum = _SCINTILLA.next_marker_number()\n@see buffer.marker_define
+next_image_type _SCINTILLA.next_image_type()\nReturns a unique image type identier number for use with\n`view.register_image()` and `view.register_rgba_image()`.\nUse this function for custom image types in order to prevent clashes with\nidentifiers of other custom image types.\n@usage local image_type = _SCINTILLA.next_image_type()\n@see view.register_image\n@see view.register_rgba_image
+next_indic_number _SCINTILLA.next_indic_number()\nReturns a unique indicator number for use with custom indicators.\nUse this function for custom indicators in order to prevent clashes with\nidentifiers of other custom indicators.\n@usage local indic_num = _SCINTILLA.next_indic_number()\n@see view.indic_style
+next_marker_number _SCINTILLA.next_marker_number()\nReturns a unique marker number for use with `view.marker_define()`.\nUse this function for custom markers in order to prevent clashes with\nidentifiers of other custom markers.\n@usage local marknum = _SCINTILLA.next_marker_number()\n@see view.marker_define
next_user_list_type _SCINTILLA.next_user_list_type()\nReturns a unique user list identier number for use with\n`buffer.user_list_show()`.\nUse this function for custom user lists in order to prevent clashes with\nlist identifiers of other custom user lists.\n@usage local list_type = _SCINTILLA.next_user_list_type()\n@see buffer.user_list_show
nonnewline lexer.nonnewline (pattern)\nA pattern that matches any single, non-newline character.
nonnewline_esc lexer.nonnewline_esc (pattern)\nA pattern that matches any single, non-newline character or any set of end\nof line characters escaped with '\'.
notify Server:notify(method, params)\nSends a notification to this language server.\n@param method String method name of the notification.\n@param params Table of parameters for the notification.
notify_opened Server:notify_opened(buffer)\nNotifies this language server that the given buffer was opened.\n@param buffer Buffer opened.
+number lexer.number (pattern)\nA pattern that matches a typical number, either a floating point, decimal,\nhexadecimal, or octal number.
oct_num lexer.oct_num (pattern)\nA pattern that matches an octal number.
ok_msgbox ui.dialogs.ok_msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options* and with localized "Ok" and "Cancel" buttons, returning the\nselected button's index.\nIf *options*.`string_output` is `true`, returns the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label (instead of its\n index) or the dialog's exit status instead of the button's index (instead\n of its exit code). The default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code
open_file _G.ui.command_entry.open_file()\nOpens the command entry in a mode that can open files relative to the current\nfile or directory.\nTab-completion is available, and on Win32, Cygwin-style '/c/' root\ndirectories are supported.\nIf no file is ultimately specified, the user is prompted with Textadept's\ndefault File Open dialog.
@@ -849,14 +859,14 @@ paths textadept.snippets.paths (table)\nList of directory paths to look for snip
patterns textadept.file_types.patterns (table)\nMap of first-line patterns to their associated lexer names.\nEach pattern is matched against the first line in the file.
pause debugger.pause(...)\nPause debugger execution unless the debugger is already paused (e.g. at a\nbreakpoint).\nEmits a `DEBUGGER_PAUSE` event, passing along any additional arguments given.
play textadept.macros.play()\nPlays a recorded or loaded macro.\n@see load
-position_after buffer.position_after(buffer, pos)\nReturns the position of the character after position *pos* (taking multi-byte\ncharacters into account), or `buffer.length` if there is no character after\n*pos*.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the position after from.
+position_after buffer.position_after(buffer, pos)\nReturns the position of the character after position *pos* (taking multi-byte\ncharacters into account), or `buffer.length + 1` if there is no character\nafter *pos*.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the position after from.
position_before buffer.position_before(buffer, pos)\nReturns the position of the character before position *pos* (taking\nmulti-byte characters into account), or `1` if there is no character before\n*pos*.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the position before from.\n@return number
position_from_line buffer.position_from_line(buffer, line)\nReturns the position at the beginning of line number *line*.\nReturns `-1` if *line* is greater than `buffer.line_count + 1`.\n@param buffer A buffer.\n@param line The line number in *buffer* to get the beginning position for.\n@return number
position_relative buffer.position_relative(buffer, pos, n)\nReturns the position *n* characters before or after position *pos* (taking\nmulti-byte characters into account).\nReturns `1` if the position is less than 1 or greater than\n`buffer.length + 1`.\n@param buffer A buffer.\n@param pos The position in *buffer* to get the relative position from.\n@param n The relative number of characters to get the position for. A\n negative number indicates a position before while a positive number\n indicates a position after.\n@return number
previous textadept.snippets.previous()\nJumps back to the previous snippet placeholder, reverting any changes from\nthe current one.\nReturns `false` if no snippet is active.\n@return `false` if no snippet is active; `nil` otherwise.
print lexer.print (pattern)\nA pattern that matches any printable character (' ' to '~').
print ui.print(...)\nPrints the given string messages to the message buffer.\nOpens a new buffer if one has not already been opened for printing messages.\n@param ... Message strings.
-progressbar ui.dialogs.progressbar(options, f)\nDisplays a progressbar dialog defined by dialog options table *options* and\nupdates from function *f*.\nReturns "stopped" if *options*.`stoppable` is `true` and the user clicked the\n"Stop" button. Otherwise, returns `nil`.\n@param options Table of key-value option pairs for the progressbar dialog.\n\n * `title`: The dialog's title text.\n * `percent`: The initial progressbar percentage between 0 and 100.\n * `text`: The initial progressbar display text (GTK only).\n * `indeterminate`: Show the progress bar as "busy", with no percentage\n updates.\n * `stoppable`: Show the "Stop" button.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n@param f Function repeatedly called to do work and provide progress updates.\n The function is called without arguments and must return either `nil`,\n which indicates work is complete, or a progress percentage number in the\n range 0-100 and optional string text to display (GTK only). If the text\n is either "stop disable" or "stop enable" and *options*.`stoppable` is\n `true`, the "Stop" button is disabled or enabled, respectively.\n@usage ui.dialogs.progressbar({stoppable = true},\n function() if work() then return percent, status else return nil end end)\n@return nil or "stopped"
+progressbar ui.dialogs.progressbar(options, f)\nDisplays a progressbar dialog, defined by dialog options table *options*,\nthat receives updates from function *f*.\nReturns "stopped" if *options*.`stoppable` is `true` and the user clicked the\n"Stop" button. Otherwise, returns `nil`.\n@param options Table of key-value option pairs for the progressbar dialog.\n\n * `title`: The dialog's title text.\n * `percent`: The initial progressbar percentage between 0 and 100.\n * `text`: The initial progressbar display text (GTK only).\n * `indeterminate`: Show the progress bar as "busy", with no percentage\n updates.\n * `stoppable`: Show the "Stop" button.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n@param f Function repeatedly called to do work and provide progress updates.\n The function is called without arguments and must return either `nil`,\n which indicates work is complete, or a progress percentage number in the\n range 0-100 and an optional string to display (GTK only). If the text is\n either "stop disable" or "stop enable" and *options*.`stoppable` is `true`,\n the "Stop" button is disabled or enabled, respectively.\n@usage ui.dialogs.progressbar({stoppable = true},\n function() if work() then return percent, status else return nil end end)\n@return nil or "stopped"
properties _SCINTILLA.properties (table)\nMap of Scintilla property names to table values containing their "get"\nfunction IDs, "set" function IDs, return types, and wParam types.\nThe wParam type will be non-zero if the property is indexable.\nTypes are the same as in the `functions` table.\n@see functions
property buffer.property (table)\nMap of key-value string pairs used by lexers.
property lexer.property (table)\nMap of key-value string pairs.
@@ -869,10 +879,11 @@ punctuation_chars buffer.punctuation_chars (string)\nThe string set of character
python _G.keys.python (table)\nContainer for Python-specific key bindings.
python _G.snippets.python (table)\nContainer for Python-specific snippets.
python _M.python (module)\nThe python module.\nIt provides utilities for editing Python code.
-quick_open io.quick_open(paths, filter, opts)\nPrompts the user to select files to be opened from *paths*, a string\ndirectory path or list of directory paths, using a filtered list dialog.\nIf *paths* is `nil`, uses the current project's root directory, which is\nobtained from `io.get_project_root()`.\nString or list *filter* determines which files to show in the dialog, with\nthe default filter being `lfs.default_filter`. A filter consists of Lua\npatterns that match file and directory paths to include or exclude. Exclusive\npatterns begin with a '!'. If no inclusive patterns are given, any path is\ninitially considered. As a convenience, file extensions can be specified\nliterally instead of as a Lua pattern (e.g. '.lua' vs. '%.lua$'), and '/'\nalso matches the Windows directory separator ('[/\\]' is not needed).\nThe number of files in the list is capped at `quick_open_max`.\nIf *filter* is `nil` and *paths* is ultimately a string, the filter from the\n`io.quick_open_filters` table is used in place of `lfs.default_filter` if the\nformer exists.\n*opts* is an optional table of additional options for\n`ui.dialogs.filteredlist()`.\n@param paths Optional string directory path or table of directory paths to\n search. The default value is the current project's root directory, if\n available.\n@param filter Optional filter for files and directories to exclude. The\n default value is `lfs.default_filter` unless *paths* is a string and a\n filter for it is defined in `io.quick_open_filters`.\n@param opts Optional table of additional options for\n `ui.dialogs.filteredlist()`.\n@usage io.quick_open(buffer.filename:match('^.+/')) -- list all files in the\n current file's directory, subject to the default filter\n@usage io.quick_open(io.get_current_project(), '.lua') -- list all Lua files\n in the current project\n@usage io.quick_open(io.get_current_project(), '!/build') -- list all files\n in the current project except those in the build directory\n@see io.quick_open_filters\n@see lfs.default_filter\n@see quick_open_max\n@see ui.dialogs.filteredlist
+quick_open io.quick_open(paths, filter, opts)\nPrompts the user to select files to be opened from *paths*, a string\ndirectory path or list of directory paths, using a filtered list dialog.\nIf *paths* is `nil`, uses the current project's root directory, which is\nobtained from `io.get_project_root()`.\nString or list *filter* determines which files to show in the dialog, with\nthe default filter being `lfs.default_filter`. A filter consists of Lua\npatterns that match file and directory paths to include or exclude. Exclusive\npatterns begin with a '!'. If no inclusive patterns are given, any path is\ninitially considered. As a convenience, file extensions can be specified\nliterally instead of as a Lua pattern (e.g. '.lua' vs. '%.lua$'), and '/'\nalso matches the Windows directory separator ('[/\\]' is not needed).\nThe number of files in the list is capped at `quick_open_max`.\nIf *filter* is `nil` and *paths* is ultimately a string, the filter from the\n`io.quick_open_filters` table is used in place of `lfs.default_filter` if the\nformer exists.\n*opts* is an optional table of additional options for\n`ui.dialogs.filteredlist()`.\n@param paths Optional string directory path or table of directory paths to\n search. The default value is the current project's root directory, if\n available.\n@param filter Optional filter for files and directories to include and/or\n exclude. The default value is `lfs.default_filter` unless *paths* is a\n string and a filter for it is defined in `io.quick_open_filters`.\n@param opts Optional table of additional options for\n `ui.dialogs.filteredlist()`.\n@usage io.quick_open(buffer.filename:match('^.+/')) -- list all files in the\n current file's directory, subject to the default filter\n@usage io.quick_open(io.get_current_project(), '.lua') -- list all Lua files\n in the current project\n@usage io.quick_open(io.get_current_project(), '!/build') -- list all files\n in the current project except those in the build directory\n@see io.quick_open_filters\n@see lfs.default_filter\n@see quick_open_max\n@see ui.dialogs.filteredlist
quick_open_filters io.quick_open_filters (table)\nMap of file paths to filters used by `io.quick_open()`.\n@see quick_open
quick_open_max io.quick_open_max (number)\nThe maximum number of files listed in the quick open dialog.\nThe default value is `1000`.
quit _G.quit()\nEmits a `QUIT` event, and unless any handler returns `false`, quits\nTextadept.\n@see events.QUIT
+range lexer.range(s, e, single_line, escapes, balanced)\nCreates and returns a pattern that matches a range of text bounded by strings\nor patterns *s* and *e*.\nThis is a convenience function for matching more complicated ranges like\nstrings with escape characters, balanced parentheses, and block comments\n(nested or not). *e* is optional and defaults to *s*. *single_line* indicates\nwhether or not the range must be on a single line; *escapes* indicates\nwhether or not to allow '\' as an escape character; and *balanced* indicates\nwhether or not to handle balanced ranges like parentheses, and requires *s*\nand *e* to be different.\n@param s String or pattern start of a range.\n@param e Optional string or pattern end of a range. The default value is *s*.\n@param single_line Optional flag indicating whether or not the range must be\n on a single line.\n@param escapes Optional flag indicating whether or not the range end may\n be escaped by a '\' character.\n The default value is `false` unless *s* and *e* are identical,\n single-character strings. In that case, the default value is `true`.\n@param balanced Optional flag indicating whether or not to match a balanced\n range, like the "%b" Lua pattern. This flag only applies if *s* and *e* are\n different.\n@usage local dq_str_escapes = lexer.range('"')\n@usage local dq_str_noescapes = lexer.range('"', false, false)\n@usage local unbalanced_parens = lexer.range('(', ')')\n@usage local balanced_parens = lexer.range('(', ')', false, false, true)\n@return pattern
read Server:read()\nReads and returns an incoming JSON message from this language server.\n@return table of data from JSON
read spawn_proc:read(arg)\nReads and returns stdout from process *spawn_proc*, according to string\nformat or number *arg*.\nSimilar to Lua's `io.read()` and blocks for input. *spawn_proc* must still be\nrunning. If an error occurs while reading, returns `nil`, an error code, and\nan error message.\nEnsure any read operations read all stdout available, as the stdout callback\nfunction passed to `os.spawn()` will not be called until the stdout buffer is\nclear.\n@param arg Optional argument similar to those in Lua's `io.read()`, but "n"\n is not supported. The default value is "l", which reads a line.\n@return string of bytes read
read_only buffer.read_only (bool)\nWhether or not the buffer is read-only.\nThe default value is `false`.
@@ -882,13 +893,13 @@ rectangular_selection_anchor buffer.rectangular_selection_anchor (number)\nThe r
rectangular_selection_anchor_virtual_space buffer.rectangular_selection_anchor_virtual_space (number)\nThe amount of virtual space for the rectangular selection's anchor.
rectangular_selection_caret buffer.rectangular_selection_caret (number)\nThe rectangular selection's caret position.
rectangular_selection_caret_virtual_space buffer.rectangular_selection_caret_virtual_space (number)\nThe amount of virtual space for the rectangular selection's caret.
-rectangular_selection_modifier buffer.rectangular_selection_modifier (number)\nThe modifier key used in combination with a mouse drag in order to create a\nrectangular selection.\n\n* `buffer.MOD_CTRL`\n The "Control" modifier key.\n* `buffer.MOD_ALT`\n The "Alt" modifier key.\n* `buffer.MOD_SUPER`\n The "Super" modifier key, usually defined as the left "Windows" or\n "Command" key.\n\nThe default value is `buffer.MOD_CTRL`.
+rectangular_selection_modifier view.rectangular_selection_modifier (number)\nThe modifier key used in combination with a mouse drag in order to create a\nrectangular selection.\n\n* `view.MOD_CTRL`\n The "Control" modifier key.\n* `view.MOD_ALT`\n The "Alt" modifier key.\n* `view.MOD_SUPER`\n The "Super" modifier key, usually defined as the left "Windows" or\n "Command" key.\n\nThe default value is `view.MOD_CTRL`.
redo buffer.redo(buffer)\nRedoes the next undone action.\n@param buffer A buffer.
regex ui.find.regex (bool)\nInterpret search text as a Regular Expression.\nThe default value is `false`.
regex_label_text ui.find.regex_label_text (string, Write-only)\nThe text of the "Regex" label.\nThis is primarily used for localization.
register args.register(short, long, narg, f, description)\nRegisters a command line switch with short and long versions *short* and\n*long*, respectively. *narg* is the number of arguments the switch accepts,\n*f* is the function called when the switch is tripped, and *description* is\nthe switch's description when displaying help.\n@param short The string short version of the switch.\n@param long The string long version of the switch.\n@param narg The number of expected parameters for the switch.\n@param f The Lua function to run when the switch is tripped. It is passed\n *narg* string arguments.\n@param description The string description of the switch for command line\n help.
-register_image buffer.register_image(buffer, type, xpm_data)\nRegisters XPM image *xpm_data* to type number *type* for use in\nautocompletion and user lists.\n@param buffer A buffer.\n@param type Integer type to register the image with.\n@param xpm_data The XPM data as described in `buffer.marker_define_pixmap()`.
-register_rgba_image buffer.register_rgba_image(buffer, type, pixels)\nRegisters RGBA image *pixels* to type number *type* for use in autocompletion\nand user lists.\nThe dimensions for *pixels* (`buffer.rgba_image_width` and\n`buffer.rgba_image_height`) must have already been defined. *pixels* is a\nsequence of 4 byte pixel values (red, blue, green, and alpha) defining the\nimage line by line starting at the top-left pixel.\n@param buffer A buffer.\n@param type Integer type to register the image with.\n@param pixels The RGBA data as described in\n `buffer.marker_define_rgba_image()`.
+register_image view.register_image(view, type, xpm_data)\nRegisters XPM image *xpm_data* to type number *type* for use in\nautocompletion and user lists.\n@param view A view.\n@param type Integer type to register the image with.\n@param xpm_data The XPM data as described in `view.marker_define_pixmap()`.
+register_rgba_image view.register_rgba_image(view, type, pixels)\nRegisters RGBA image *pixels* to type number *type* for use in autocompletion\nand user lists.\nThe dimensions for *pixels* (`view.rgba_image_width` and\n`view.rgba_image_height`) must have already been defined. *pixels* is a\nsequence of 4 byte pixel values (red, blue, green, and alpha) defining the\nimage line by line starting at the top-left pixel.\n@param view A view.\n@param type Integer type to register the image with.\n@param pixels The RGBA data as described in\n `view.marker_define_rgba_image()`.
reload buffer.reload(buffer)\nReloads the buffer's file contents, discarding any changes.\n@param buffer A buffer.
remove_breakpoint debugger.remove_breakpoint(file, line)\nRemoves a breakpoint from line number *line* in file *file*, or prompts the\nuser for a breakpoint(s) to remove.\nEmits a `DEBUGGER_BREAKPOINT_REMOVED` event if the debugger is running.\nIf the debugger is executing (e.g. not at a breakpoint), assumes a breakpoint\ncannot be removed and shows an error message.\n@param file Optional filename of the breakpoint to remove.\n@param line Optional 1-based line number of the breakpoint to remove.
remove_watch debugger.remove_watch(id)\nStops watching the expression identified by *id*, or the expression selected\nby the user.\nEmits a `DEBUGGER_WATCH_REMOVED` event if the debugger is running.\nIf the debugger is executing (e.g. not at a breakpoint), assumes a watch\ncannot be set and shows an error message.\n@param id ID number of the expression, as given in the `DEBUGGER_WATCH_ADDED`\n event.
@@ -901,7 +912,7 @@ replace_label_text ui.find.replace_label_text (string, Write-only)\nThe text of
replace_sel buffer.replace_sel(buffer, text)\nReplaces the selected text with string *text*, scrolling the caret into view.\n@param buffer A buffer.\n@param text The text to replace the selected text with.
replace_target buffer.replace_target(buffer, text)\nReplaces the text in the target range with string *text* sans modifying any\nselections or scrolling the view.\nSetting the target and calling this function with an empty string is another\nway to delete text.\n@param buffer A buffer.\n@param text The text to replace the target range with.\n@return number
replace_target_re buffer.replace_target_re(buffer, text)\nReplaces the text in the target range with string *text* but first replaces\nany "\d" sequences with the text of capture number *d* from the regular\nexpression (or the entire match for *d* = 0), and then returns the\nreplacement text's length.\n@param buffer A buffer.\n@param text The text to replace the target range with.\n@return number
-representation buffer.representation (table)\nThe alternative string representations of characters.\nRepresentations are displayed in the same way control characters are. Use\nthe empty string for the '\0' character when assigning its representation.\nCall `buffer.clear_representation()` to remove a representation.
+representation view.representation (table)\nThe alternative string representations of characters.\nRepresentations are displayed in the same way control characters are. Use\nthe empty string for the '\0' character when assigning its representation.\nCall `view.clear_representation()` to remove a representation.
request Server:request(method, params)\nSends a request to this language server and returns the result of the\nrequest.\nAny intermediate notifications from the server are processed, but any\nintermediate requests from the server are ignored.\nNote: at this time, requests are synchronous, so the id number for a response\nwill be the same as the id number for a request.\n@param method String method name of the request.\n@param params Table of parameters for the request.\n@return table result of the request, or nil if the result was `json.null`.
reset _G.reset()\nResets the Lua State by reloading all initialization scripts.\nLanguage modules for opened files are NOT reloaded. Re-opening the files that\nuse them will reload those modules instead.\nThis function is useful for modifying user scripts (such as\n*~/.textadept/init.lua* and *~/.textadept/modules/textadept/keys.lua*) on\nthe fly without having to restart Textadept. `arg` is set to `nil` when\nreinitializing the Lua State. Any scripts that need to differentiate between\nstartup and reset can test `arg`.
respond Server:respond(id, result)\nResponds to an unsolicited request from this language server.\n@param id Numeric ID of the request.\n@param result Table result of the request.
@@ -909,9 +920,9 @@ rest _G.keys.rest (table)\nContainer for reST-specific key bindings.
rest _G.snippets.rest (table)\nContainer for reST-specific snippets.
rest _M.rest (module)\nThe reST module.\nIt provides utilities for editing reST and Sphinx documents.
restart debugger.restart(...)\nRestarts debugger execution from the beginning.\nEmits a `DEBUGGER_PAUSE` event, passing along any additional arguments given.
-rgba_image_height buffer.rgba_image_height (number)\nThe height of the RGBA image to be defined using\n`buffer.marker_define_rgba_image()`.
-rgba_image_scale buffer.rgba_image_scale (number)\nThe scale factor in percent of the RGBA image to be defined using\n`buffer.marker_define_rgba_image()`.\nThis is useful on OSX with a retina display where each display unit is 2\npixels: use a factor of `200` so that each image pixel is displayed using a\nscreen pixel. The default scale, `100`, will stretch each image pixel to\ncover 4 screen pixels on a retina display.
-rgba_image_width buffer.rgba_image_width (number)\nThe width of the RGBA image to be defined using\n`buffer.marker_define_rgba_image()` and\n`buffer.register_rgba_image()`.
+rgba_image_height view.rgba_image_height (number)\nThe height of the RGBA image to be defined using\n`view.marker_define_rgba_image()`.
+rgba_image_scale view.rgba_image_scale (number)\nThe scale factor in percent of the RGBA image to be defined using\n`view.marker_define_rgba_image()`.\nThis is useful on OSX with a retina display where each display unit is 2\npixels: use a factor of `200` so that each image pixel is displayed using a\nscreen pixel. The default scale, `100`, will stretch each image pixel to\ncover 4 screen pixels on a retina display.
+rgba_image_width view.rgba_image_width (number)\nThe width of the RGBA image to be defined using\n`view.marker_define_rgba_image()` and\n`view.register_rgba_image()`.
rotate_selection buffer.rotate_selection(buffer)\nDesignates the next additional selection to be the main selection.\n@param buffer A buffer.
ruby _G.keys.ruby (table)\nContainer for Ruby-specific key bindings.
ruby _G.snippets.ruby (table)\nContainer for Ruby-specific snippets.
@@ -927,12 +938,12 @@ save textadept.session.save(filename)\nSaves the session to file *filename* or t
save_all_files io.save_all_files()\nSaves all unsaved buffers to their respective files.\n@see buffer.save
save_as buffer.save_as(buffer, filename)\nSaves the buffer to file *filename* or the user-specified filename.\nEmits a `FILE_AFTER_SAVE` event.\n@param buffer A buffer.\n@param filename Optional new filepath to save the buffer to. If `nil`, the\n user is prompted for one.
save_on_quit textadept.session.save_on_quit (bool)\nSave the session when quitting.\nThe default value is `true` unless the user passed the command line switch\n`-n` or `--nosession` to Textadept.
-scroll_caret buffer.scroll_caret(buffer)\nScrolls the caret into view based on the policies previously defined in\n`buffer.set_x_caret_policy()` and `buffer.set_y_caret_policy()`.\n@param buffer A buffer.\n@see set_x_caret_policy\n@see set_y_caret_policy
-scroll_range buffer.scroll_range(buffer, secondary_pos, primary_pos)\nScrolls into view the range of text between positions *primary_pos* and\n*secondary_pos*, with priority given to *primary_pos*.\nSimilar to `buffer.scroll_caret()`, but with *primary_pos* instead of\n`buffer.current_pos`.\nThis is useful for scrolling search results into view.\n@param buffer A buffer.\n@param secondary_pos The secondary range position to scroll into view.\n@param primary_pos The primary range position to scroll into view.
-scroll_to_end buffer.scroll_to_end(buffer)\nScrolls to the end of the buffer without moving the caret.\n@param buffer A buffer.
-scroll_to_start buffer.scroll_to_start(buffer)\nScrolls to the beginning of the buffer without moving the caret.\n@param buffer A buffer.
-scroll_width buffer.scroll_width (number)\nThe horizontal scrolling pixel width.\nFor performance, the view does not measure the display width of the buffer\nto determine the properties of the horizontal scroll bar, but uses an\nassumed width instead. To ensure the width of the currently visible lines\ncan be scrolled use `buffer.scroll_width_tracking`.\nThe default value is `2000`.
-scroll_width_tracking buffer.scroll_width_tracking (bool)\nContinuously update the horizontal scrolling width to match the maximum\nwidth of a displayed line beyond `buffer.scroll_width`.\nThe default value is `false`.
+scroll_caret view.scroll_caret(view)\nScrolls the caret into view based on the policies previously defined in\n`view.set_x_caret_policy()` and `view.set_y_caret_policy()`.\n@param view A view.\n@see set_x_caret_policy\n@see set_y_caret_policy
+scroll_range view.scroll_range(view, secondary_pos, primary_pos)\nScrolls into view the range of text between positions *primary_pos* and\n*secondary_pos*, with priority given to *primary_pos*.\nSimilar to `view.scroll_caret()`, but with *primary_pos* instead of\n`buffer.current_pos`.\nThis is useful for scrolling search results into view.\n@param view A view.\n@param secondary_pos The secondary range position to scroll into view.\n@param primary_pos The primary range position to scroll into view.
+scroll_to_end view.scroll_to_end(view)\nScrolls to the end of the buffer without moving the caret.\n@param view A view.
+scroll_to_start view.scroll_to_start(view)\nScrolls to the beginning of the buffer without moving the caret.\n@param view A view.
+scroll_width view.scroll_width (number)\nThe horizontal scrolling pixel width.\nFor performance, the view does not measure the display width of the buffer\nto determine the properties of the horizontal scroll bar, but uses an\nassumed width instead. To ensure the width of the currently visible lines\ncan be scrolled use `view.scroll_width_tracking`.\nThe default value is `2000`.
+scroll_width_tracking view.scroll_width_tracking (bool)\nContinuously update the horizontal scrolling width to match the maximum\nwidth of a displayed line beyond `view.scroll_width`.\nThe default value is `false`.
search_anchor buffer.search_anchor(buffer)\nAnchors the position that `buffer.search_next()` and `buffer.search_prev()`\nstart at to the beginning of the current selection or caret position.\n@param buffer A buffer.
search_flags buffer.search_flags (number)\nThe bit-mask of search flags used by `buffer.search_in_target()`.\n\n* `buffer.FIND_WHOLEWORD`\n Match search text only when it is surrounded by non-word characters.\n* `buffer.FIND_MATCHCASE`\n Match search text case sensitively.\n* `buffer.FIND_WORDSTART`\n Match search text only when the previous character is a non-word\n character.\n* `buffer.FIND_REGEXP`\n Interpret search text as a regular expression.\n\nThe default value is `0`.
search_in_target buffer.search_in_target(buffer, text)\nSearches for the first occurrence of string *text* in the target range\nbounded by `buffer.target_start` and `buffer.target_end` using search flags\n`buffer.search_flags` and, if found, sets the new target range to that\noccurrence, returning its position or `-1` if *text* was not found.\n@param buffer A buffer.\n@param text The text to search the target range for.\n@return number\n@see search_flags
@@ -940,8 +951,8 @@ search_next buffer.search_next(buffer, flags, text)\nSearches for and selects th
search_prev buffer.search_prev(buffer, flags, text)\nSearches for and selects the last occurrence of string *text* before the\nsearch anchor using search flags *flags*, returning that occurrence's\nposition or `-1` if *text* was not found.\n@param buffer A buffer.\n@param flags The search flags to use. See `buffer.search_flags`.\n@param text The text to search for.\n@return number\n@see search_flags
secure_inputbox ui.dialogs.secure_inputbox(options)\nPrompts the user with a masked inputbox dialog defined by dialog options\ntable *options*, returning the selected button's index along with the user's\ninput text (the latter as a string or table, depending on the type of\n*options*.`informative_text`).\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with the user's input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the inputbox.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text. If the value is a\n table, the first table value is the main message text and any subsequent\n values are used as the labels for multiple entry boxes. Providing a\n single label has no effect.\n * `text`: The dialog's initial input text. If the value is a table, the\n table values are used to populate the multiple entry boxes defined by\n `informative_text`.\n * `button1`: The right-most button's label. The default value is\n `_L['OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `string_output`: Return the selected button's label (instead of its\n index) or the dialog's exit status instead of the button's index (instead\n of its exit code). The default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, input text
secure_standard_inputbox ui.dialogs.secure_standard_inputbox(options)\nPrompts the user with a masked inputbox dialog defined by dialog options\ntable *options* and with localized "Ok" and "Cancel" buttons, returning the\nselected button's index along with the user's input text (the latter as a\nstring or table, depending on the type of *options*.`informative_text`).\nIf *options*.`string_output` is `true`, returns the selected button's label\nalong with the user's input text.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the inputbox.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text. If the value is a\n table, the first table value is the main message text and any subsequent\n values are used as the labels for multiple entry boxes. Providing a\n single label has no effect.\n * `text`: The dialog's initial input text. If the value is a table, the\n table values are used to populate the multiple entry boxes defined by\n `informative_text`.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label (instead of its\n index) or the dialog's exit status instead of the button's index (instead\n of its exit code). The default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code, input text
-sel_alpha buffer.sel_alpha (number)\nThe selection's alpha value, ranging from `0` (transparent) to `255`\n(opaque).\nThe default value is `buffer.ALPHA_NOALPHA`, for no alpha.
-sel_eol_filled buffer.sel_eol_filled (bool)\nExtend the selection to the view's right margin.\nThe default value is `false`.
+sel_alpha view.sel_alpha (number)\nThe selection's alpha value, ranging from `0` (transparent) to `255`\n(opaque).\nThe default value is `view.ALPHA_NOALPHA`, for no alpha.
+sel_eol_filled view.sel_eol_filled (bool)\nExtend the selection to the view's right margin.\nThe default value is `false`.
select textadept.snippets.select()\nPrompts the user to select a snippet to insert from a list of global and\nlanguage-specific snippets.
select_all buffer.select_all(buffer)\nSelects all of the buffer's text without scrolling the view.\n@param buffer A buffer.
select_command textadept.menu.select_command()\nPrompts the user to select a menu command to run.
@@ -968,31 +979,31 @@ selections buffer.selections (number, Read-only)\nThe number of active selection
server_commands lsp.server_commands (table)\nMap of lexer languages to LSP language server commands or configurations, or\nfunctions that return either a server command or a configuration.\nCommands are simple string shell commands. Configurations are tables with the\nfollowing keys:\n\n * `command`: String shell command used to run the LSP language server.\n * `init_options`: Table of initialization options to pass to the language\n server in the "initialize" request.
session textadept.session (module)\nSession support for Textadept.
set_chars_default buffer.set_chars_default(buffer)\nResets `buffer.word_chars`, `buffer.whitespace_chars`, and\n`buffer.punctuation_chars` to their respective defaults.\n@param buffer A buffer.\n@see word_chars\n@see whitespace_chars\n@see punctuation_chars
-set_default_fold_display_text buffer.set_default_fold_display_text(buffer, text)\nSets the default fold display text to string *text*.\n@param buffer A buffer.\n@param text The text to display by default next to folded lines.\n@see toggle_fold_show_text
+set_default_fold_display_text view.set_default_fold_display_text(view, text)\nSets the default fold display text to string *text*.\n@param view A view.\n@param text The text to display by default next to folded lines.\n@see toggle_fold_show_text
set_empty_selection buffer.set_empty_selection(buffer, pos)\nMoves the caret to position *pos* without scrolling the view and removes any\nselections.\n@param buffer A buffer\n@param pos The position in *buffer* to move to.
set_encoding buffer.set_encoding(buffer, encoding)\nConverts the current buffer's contents to encoding *encoding*.\n@param buffer A buffer.\n@param encoding The string encoding to set. Valid encodings are ones that GNU\n iconv accepts. If `nil`, assumes a binary encoding.\n@usage buffer:set_encoding('CP1252')
-set_fold_margin_colour buffer.set_fold_margin_colour(buffer, use_setting, color)\nOverrides the fold margin's default color with color *color*, in "0xBBGGRR"\nformat,\nif *use_setting* is `true`.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_fold_margin_hi_colour buffer.set_fold_margin_hi_colour(buffer, use_setting, color)\nOverrides the fold margin's default highlight color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_fold_margin_colour view.set_fold_margin_colour(view, use_setting, color)\nOverrides the fold margin's default color with color *color*, in "0xBBGGRR"\nformat,\nif *use_setting* is `true`.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_fold_margin_hi_colour view.set_fold_margin_hi_colour(view, use_setting, color)\nOverrides the fold margin's default highlight color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
set_frame debugger.set_frame()\nPrompts the user to select a stack frame to switch to from the current\ndebugger call stack, unless the debugger is executing (e.g. not at a\nbreakpoint).\nEmits a `DEBUGGER_SET_FRAME` event.
set_lexer buffer.set_lexer(buffer, lexer)\nAssociates lexer name *lexer* or the auto-detected lexer name with the buffer\nand then loads the appropriate language module if that module exists.\n@param buffer A buffer.\n@param lexer Optional string lexer name to set. If `nil`, attempts to\n auto-detect the buffer's lexer.\n@usage buffer:set_lexer('lexer_name')
set_save_point buffer.set_save_point(buffer)\nIndicates the buffer has no unsaved changes.\n@param buffer A buffer.
set_sel buffer.set_sel(buffer, start_pos, end_pos)\nSelects the range of text between positions *start_pos* and *end_pos*,\nscrolling the selected text into view.\n@param buffer A buffer.\n@param start_pos The start position of the range of text in *buffer* to\n select. If negative, it means the end of the buffer.\n@param end_pos The end position of the range of text in *buffer* to select.\n If negative, it means remove any selection (i.e. set the `anchor` to the\n same position as `current_pos`).
-set_sel_back buffer.set_sel_back(buffer, use_setting, color)\nOverrides the selection's default background color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\nOverwrites any existing `buffer.additional_sel_back` color.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_sel_fore buffer.set_sel_fore(buffer, use_setting, color)\nOverrides the selection's default foreground color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\nOverwrites any existing `buffer.additional_sel_fore` color.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_sel_back view.set_sel_back(view, use_setting, color)\nOverrides the selection's default background color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\nOverwrites any existing `view.additional_sel_back` color.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_sel_fore view.set_sel_fore(view, use_setting, color)\nOverrides the selection's default foreground color with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\nOverwrites any existing `view.additional_sel_fore` color.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
set_selection buffer.set_selection(buffer, end_pos, start_pos)\nSelects the range of text between positions *start_pos* to *end_pos*,\nremoving all other selections.\n@param buffer A buffer.\n@param end_pos The caret position of the range of text to select in *buffer*.\n@param start_pos The anchor position of the range of text to select in\n *buffer*.
set_styling buffer.set_styling(buffer, length, style)\nAssigns style number *style*, in the range from `1` to `256`, to the next\n*length* characters, starting from the current styling position, and\nincrements the styling position by *length*.\n`buffer:start_styling` should be called before `buffer:set_styling()`.\n@param buffer A buffer.\n@param length The number of characters to style.\n@param style The style number to set.
set_target_range buffer.set_target_range(buffer, start_pos, end_pos)\nDefines the target range's beginning and end positions as *start_pos* and\n*end_pos*, respectively.\n@param buffer A buffer.\n@param start_pos The position of the beginning of the target range.\n@param end_pos The position of the end of the target range.
set_text buffer.set_text(buffer, text)\nReplaces the buffer's text with string *text*.\n@param buffer A buffer.\n@param text The text to set.
-set_theme buffer.set_theme(buffer, name, props)\nDeclares the editor theme to be string *name* and (optionally) assigns the\nproperties contained in table *props*.\nUser themes override Textadept's default themes when they have the same name.\nIf *name* contains slashes, it is assumed to be an absolute path to a theme\ninstead of a theme name.\n@param buffer A buffer.\n@param name The name or absolute path of a theme to set.\n@param props Optional table of theme property assignments that override the\n theme's defaults.\n@usage buffer:set_theme('light', {font = 'Monospace', fontsize = 12})
-set_visible_policy buffer.set_visible_policy(buffer, policy, y)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *y* number of lines away from the vertical margins as\n`buffer.ensure_visible_enforce_policy()` redisplays hidden or folded lines.\nIt is similar in operation to `buffer.set_y_caret_policy()`.\n@param buffer A buffer.\n@param policy The combination of `buffer.VISIBLE_SLOP` and\n `buffer.VISIBLE_STRICT` policy flags to set.\n@param y The number of lines from the vertical margins to keep the caret.
+set_theme buffer.set_theme(buffer, name, props)\nSets the buffer's color theme to be string *name* and (optionally) assigns\nthe properties contained in table *props*.\nUser themes override Textadept's default themes when they have the same name.\nIf *name* contains slashes, it is assumed to be an absolute path to a theme\ninstead of a theme name.\n@param buffer A buffer.\n@param name The name or absolute path of a theme to set.\n@param props Optional table of theme property assignments that override the\n theme's defaults.\n@usage buffer:set_theme('light', {font = 'Monospace', fontsize = 12})
+set_visible_policy view.set_visible_policy(view, policy, y)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *y* number of lines away from the vertical margins as\n`view.ensure_visible_enforce_policy()` redisplays hidden or folded lines.\nIt is similar in operation to `view.set_y_caret_policy()`.\n@param view A view.\n@param policy The combination of `view.VISIBLE_SLOP` and\n `view.VISIBLE_STRICT` policy flags to set.\n@param y The number of lines from the vertical margins to keep the caret.
set_watch debugger.set_watch(expr)\nWatches string expression *expr* for changes and breaks on each change.\nEmits a `DEBUGGER_WATCH_ADDED` event if the debugger is running, or queues up\nthe event to run in `debugger.start()`.\nIf the debugger is executing (e.g. not at a breakpoint), assumes a watch\ncannot be set and shows an error message.\n@param expr String expression to watch.
-set_whitespace_back buffer.set_whitespace_back(buffer, use_setting, color)\nOverrides the background color of whitespace with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param buffer A buffer.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_whitespace_fore buffer.set_whitespace_fore(buffer, use_setting, color)\nOverrides the foreground color of whitespace with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
-set_x_caret_policy buffer.set_x_caret_policy(buffer, policy, x)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *x* number of pixels away from the horizontal margins.\n@param buffer A buffer.\n@param policy The combination of `buffer.CARET_SLOP`, `buffer.CARET_STRICT`,\n `buffer.CARET_EVEN`, and `buffer.CARET_JUMPS` policy flags to set.\n@param x The number of pixels from the horizontal margins to keep the caret.
-set_y_caret_policy buffer.set_y_caret_policy(buffer, policy, y)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *y* number of lines away from the vertical margins.\n@param buffer A buffer.\n@param policy The combination of `buffer.CARET_SLOP`, `buffer.CARET_STRICT`,\n `buffer.CARET_EVEN`, and `buffer.CARET_JUMPS` policy flags to set.\n@param y The number of lines from the vertical margins to keep the caret.
+set_whitespace_back view.set_whitespace_back(view, use_setting, color)\nOverrides the background color of whitespace with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param view A view.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_whitespace_fore view.set_whitespace_fore(view, use_setting, color)\nOverrides the foreground color of whitespace with color *color*, in\n"0xBBGGRR" format, if *use_setting* is `true`.\n@param use_setting Whether or not to use *color*.\n@param color The color in "0xBBGGRR" format.
+set_x_caret_policy view.set_x_caret_policy(view, policy, x)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *x* number of pixels away from the horizontal margins.\n@param view A view.\n@param policy The combination of `view.CARET_SLOP`, `view.CARET_STRICT`,\n `view.CARET_EVEN`, and `view.CARET_JUMPS` policy flags to set.\n@param x The number of pixels from the horizontal margins to keep the caret.
+set_y_caret_policy view.set_y_caret_policy(view, policy, y)\nDefines scrolling policy bit-mask *policy* as the policy for keeping the\ncaret *y* number of lines away from the vertical margins.\n@param view A view.\n@param policy The combination of `view.CARET_SLOP`, `view.CARET_STRICT`,\n `view.CARET_EVEN`, and `view.CARET_JUMPS` policy flags to set.\n@param y The number of lines from the vertical margins to keep the caret.
show_all_diagnostics lsp.show_all_diagnostics (bool)\nWhether or not to show all diagnostics.\nThe default value is `false`, and assumes any diagnostics on the current\nline or next line are due to an incomplete statement during something like\nan autocompletion, signature help, etc. request.
show_documentation textadept.editing.show_documentation(pos, case_insensitive)\nDisplays a call tip with documentation for the symbol under or directly\nbehind position *pos* or the caret position.\nDocumentation is read from API files in the `api_files` table.\nIf a call tip is already shown, cycles to the next one if it exists.\nSymbols are determined by using `buffer.word_chars`.\n@param pos Optional position of the symbol to show documentation for. If\n omitted, the caret position is used.\n@param case_insensitive Optional flag that indicates whether or not to search\n API files case-insensitively for symbols. The default value is `false`.\n@see api_files\n@see buffer.word_chars
-show_lines buffer.show_lines(buffer, start_line, end_line)\nShows the range of lines between line numbers *start_line* to *end_line*.\nThis has no effect on fold levels or fold flags and the first line cannot be\nhidden.\n@param buffer A buffer.\n@param start_line The start line of the range of lines in *buffer* to show.\n@param end_line The end line of the range of lines in *buffer* to show.
+show_lines view.show_lines(view, start_line, end_line)\nShows the range of lines between line numbers *start_line* to *end_line*.\nThis has no effect on fold levels or fold flags and the first line cannot be\nhidden.\n@param view A view.\n@param start_line The start line of the range of lines in *buffer* to show.\n@param end_line The end line of the range of lines in *buffer* to show.
signature_help lsp.signature_help()\nShows a calltip for the current function.\nIf a call tip is already shown, cycles to the next one if it exists.
silent_print ui.silent_print (bool)\nWhether or not to print messages to buffers silently.\nThis is not guaranteed to be a constant value, as Textadept may change it\nfor the editor's own purposes. This flag should be used only in conjunction\nwith a group of `ui.print()` and `ui._print()` function calls.\nThe default value is `false`, and focuses buffers when messages are printed\nto them.
size ui.size (table)\nA table containing the width and height pixel values of Textadept's window.
@@ -1031,19 +1042,19 @@ stuttered_page_up buffer.stuttered_page_up(buffer)\nMoves the caret to the top o
stuttered_page_up_extend buffer.stuttered_page_up_extend(buffer)\nLike `buffer.stuttered_page_up()`, but extends the selected text to the new\nposition.\n@param buffer A buffer.
style_at buffer.style_at (table, Read-only)\nTable of style numbers per position.
style_at lexer.style_at (table, Read-only)\nTable of style names at positions in the buffer starting from 1.
-style_back buffer.style_back (table)\nTable of background colors, in "0xBBGGRR" format, of text for style numbers\nfrom `1` to `256`.
-style_bold buffer.style_bold (table)\nTable of flags that indicate whether or not text is bold for style numbers\nfrom `1` to `256`.\nThe default values are `false`.
-style_case buffer.style_case (table)\nTable of letter case modes of text for style numbers from `1` to `256`.\n\n* `buffer.CASE_MIXED`\n Display text in normally.\n* `buffer.CASE_UPPER`\n Display text in upper case.\n* `buffer.CASE_LOWER`\n Display text in lower case.\n* `buffer.CASE_CAMEL`\n Display text in camel case.\n\nThe default values are `buffer.CASE_MIXED`.
-style_changeable buffer.style_changeable (table)\nTable of flags that indicate whether or not text is changeable for style\nnumbers from `1` to `256`.\nThe default values are `true`.\nRead-only styles do not allow the caret into the range of text.
-style_clear_all buffer.style_clear_all(buffer)\nReverts all styles to having the same properties as `buffer.STYLE_DEFAULT`.\n@param buffer A buffer.
-style_eol_filled buffer.style_eol_filled (table)\nTable of flags that indicate whether or not the background colors of styles\nwhose characters occur last on lines extend all the way to the view's right\nmargin for style numbers from `1` to `256`.\nThe default values are `false`.
-style_font buffer.style_font (table)\nTable of string font names of text for style numbers from `1` to `256`.
-style_fore buffer.style_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, of text for style numbers\nfrom `1` to `256`.
-style_italic buffer.style_italic (table)\nTable of flags that indicate whether or not text is italic for style\nnumbers from `1` to `256`.\nThe default values are `false`.
-style_reset_default buffer.style_reset_default(buffer)\nResets `buffer.STYLE_DEFAULT` to its initial state.\n@param buffer A buffer.
-style_size buffer.style_size (table)\nTable of font sizes of text for style numbers from `1` to `256`.
-style_underline buffer.style_underline (table)\nTable of flags that indicate whether or not text is underlined for style\nnumbers from `1` to `256`.\nThe default values are `false`.
-style_visible buffer.style_visible (table)\nTable of flags that indicate whether or not text is visible for style\nnumbers from `1` to `256`.\nThe default values are `true`.
+style_back view.style_back (table)\nTable of background colors, in "0xBBGGRR" format, of text for style numbers\nfrom `1` to `256`.
+style_bold view.style_bold (table)\nTable of flags that indicate whether or not text is bold for style numbers\nfrom `1` to `256`.\nThe default values are `false`.
+style_case view.style_case (table)\nTable of letter case modes of text for style numbers from `1` to `256`.\n\n* `view.CASE_MIXED`\n Display text in normally.\n* `view.CASE_UPPER`\n Display text in upper case.\n* `view.CASE_LOWER`\n Display text in lower case.\n* `view.CASE_CAMEL`\n Display text in camel case.\n\nThe default values are `view.CASE_MIXED`.
+style_changeable view.style_changeable (table)\nTable of flags that indicate whether or not text is changeable for style\nnumbers from `1` to `256`.\nThe default values are `true`.\nRead-only styles do not allow the caret into the range of text.
+style_clear_all view.style_clear_all(view)\nReverts all styles to having the same properties as `view.STYLE_DEFAULT`.\n@param view A view.
+style_eol_filled view.style_eol_filled (table)\nTable of flags that indicate whether or not the background colors of styles\nwhose characters occur last on lines extend all the way to the view's right\nmargin for style numbers from `1` to `256`.\nThe default values are `false`.
+style_font view.style_font (table)\nTable of string font names of text for style numbers from `1` to `256`.
+style_fore view.style_fore (table)\nTable of foreground colors, in "0xBBGGRR" format, of text for style numbers\nfrom `1` to `256`.
+style_italic view.style_italic (table)\nTable of flags that indicate whether or not text is italic for style\nnumbers from `1` to `256`.\nThe default values are `false`.
+style_reset_default view.style_reset_default(view)\nResets `view.STYLE_DEFAULT` to its initial state.\n@param view A view.
+style_size view.style_size (table)\nTable of font sizes of text for style numbers from `1` to `256`.
+style_underline view.style_underline (table)\nTable of flags that indicate whether or not text is underlined for style\nnumbers from `1` to `256`.\nThe default values are `false`.
+style_visible view.style_visible (table)\nTable of flags that indicate whether or not text is visible for style\nnumbers from `1` to `256`.\nThe default values are `true`.
suggest spellchecker:suggest(word)\nReturns a list of spelling suggestions for string *word*.\nIf *word* is spelled correctly, the returned list will be empty.\n@param word The word to get spelling suggestions for.\n@return list of suggestions
swap_main_anchor_caret buffer.swap_main_anchor_caret(buffer)\nSwaps the main selection's beginning and end positions.\n@param buffer A buffer.
switch_buffer ui.switch_buffer(zorder)\nPrompts the user to select a buffer to switch to.\nBuffers are listed in the order they were opened unless `zorder` is `true`,\nin which case buffers are listed by their z-order (most recently viewed to\nleast recently viewed).\n@param zorder Flag that indicates whether or not to list buffers by their\n z-order. The default value is `false`.
@@ -1051,7 +1062,7 @@ sync_buffer Server:sync_buffer()\nSynchronizes the current buffer with this lang
tab buffer.tab(buffer)\nIndents the text on the selected lines or types a Tab character ("\t") at\nthe caret position.\n@param buffer A buffer.
tab_context_menu textadept.menu.tab_context_menu (table)\nThe default tabbar context menu.\nSubmenus, and menu items can be retrieved by name in addition to table index\nnumber.
tab_context_menu ui.tab_context_menu (userdata)\nThe context menu for the buffer's tab, a `ui.menu()`.\nThis is a low-level field. You probably want to use the higher-level\n`textadept.menu.tab_context_menu`.
-tab_draw_mode buffer.tab_draw_mode (number)\nThe draw mode of visible tabs.\n\n* `buffer.TD_LONGARROW`\n An arrow that stretches until the tabstop.\n* `buffer.TD_STRIKEOUT`\n A horizontal line that stretches until the tabstop.\n\nThe default value is `buffer.TD_LONGARROW`.
+tab_draw_mode view.tab_draw_mode (number)\nThe draw mode of visible tabs.\n\n* `view.TD_LONGARROW`\n An arrow that stretches until the tabstop.\n* `view.TD_STRIKEOUT`\n A horizontal line that stretches until the tabstop.\n\nThe default value is `view.TD_LONGARROW`.
tab_indents buffer.tab_indents (bool)\nIndent text when tabbing within indentation.\nThe default value is `false`.
tab_label buffer.tab_label (string)\nThe buffer's tab label in the tab bar.
tab_width buffer.tab_width (number)\nThe number of space characters represented by a tab character.\nThe default value is `8`.
@@ -1068,22 +1079,23 @@ target_start buffer.target_start (number)\nThe position of the beginning of the
target_start_virtual_space buffer.target_start_virtual_space (number)\nThe position of the beginning of virtual space in the target range.\nThis is set to `1` when `buffer.target_start` or\n`buffer.target_end` is set, or when `buffer.set_target_range()` is\ncalled.
target_text buffer.target_text (string, Read-only)\nThe text in the target range.
target_whole_document buffer.target_whole_document(buffer)\nDefines the target range's beginning and end positions as the beginning and\nend positions of the document, respectively.\n@param buffer A buffer.
-text_height buffer.text_height(buffer, line)\nReturns the pixel height of line number *line*.\n@param buffer A buffer.\n@param line The line number in *buffer* to get the pixel height of.\n@return number
+text_height view.text_height(view, line)\nReturns the pixel height of line number *line*.\n@param view A view.\n@param line The line number in *buffer* to get the pixel height of.\n@return number
text_length buffer.text_length (number, Read-only)\nThe number of bytes in the buffer.
text_range buffer.text_range(buffer, start_pos, end_pos)\nReturns the range of text between positions *start_pos* and *end_pos*.\n@param buffer A buffer.\n@param start_pos The start position of the range of text to get in *buffer*.\n@param end_pos The end position of the range of text to get in *buffer*.
-text_width buffer.text_width(buffer, style_num, text)\nReturns the pixel width string *text* would have when styled with style\nnumber *style_num*, in the range of `1` to `256`.\n@param buffer A buffer.\n@param style_num The style number between `1` and `256` to use.\n@param text The text to measure the width of.\n@return number
+text_width view.text_width(view, style_num, text)\nReturns the pixel width string *text* would have when styled with style\nnumber *style_num*, in the range of `1` to `256`.\n@param view A view.\n@param style_num The style number between `1` and `256` to use.\n@param text The text to measure the width of.\n@return number
textadept _G.textadept (module)\nThe textadept module.\nIt provides utilities for editing text in Textadept.
textbox ui.dialogs.textbox(options)\nPrompts the user with a multiple-line textbox dialog defined by dialog\noptions table *options*, returning the selected button's index.\nIf *options*.`string_output` is `true`, returns the selected button's label.\nIf *options*.`editable` is `true`, also returns the textbox's text. If the\ndialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the dialog.\n\n * `title`: The dialog's title text.\n * `informative_text`: The dialog's main message text.\n * `text`: The dialog's initial textbox text.\n * `text_from_file`: The filename whose contents are loaded into the\n textbox. This option has no effect when `text` is given.\n * `button1`: The right-most button's label. The default value is\n `_L['OK']`.\n * `button2`: The middle button's label.\n * `button3`: The left-most button's label. This option requires `button2`\n to be set.\n * `editable`: Allows the user to edit the textbox's text. The default value\n is `false`.\n * `focus_textbox`: Focus the textbox instead of the buttons. The default\n value is `false`.\n * `scroll_to`: Where to scroll the textbox's text.\n The available values are `"top"` and `"bottom"`. The default value is\n `"top"`.\n * `selected`: Select all of the textbox's text. The default value is\n `false`.\n * `monospaced_font`: Use a monospaced font in the textbox instead of a\n proportional one. The default value is `false`.\n * `string_output`: Return the selected button's label (instead of its\n index) or the dialog's exit status instead of the button's index (instead\n of its exit code). The default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@usage ui.dialogs.textbox{title = 'License Agreement',\n informative_text = 'You agree to:', text_from_file = _HOME..'/LICENSE'}\n@return selected button or exit code, textbox text
theme file_diff.theme (string)\nThe theme to use, either 'dark' or 'light'.\nThis is not the theme used with Textadept.\nDepending on this setting, additions will be colored 'dark_green' or\n'light_green', deletions will be colored 'dark_red' or 'light_red', and so\non.\nThe default value is auto-detected.
timeout _G.timeout(interval, f, ...)\nCalls function *f* with the given arguments after *interval* seconds.\nIf *f* returns `true`, calls *f* repeatedly every *interval* seconds as long\nas *f* returns `true`. A `nil` or `false` return value stops repetition.\n@param interval The interval in seconds to call *f* after.\n@param f The function to call.\n@param ... Additional arguments to pass to *f*.
title ui.title (string, Write-only)\nThe title text of Textadept's window.
+to_eol lexer.to_eol(prefix, escape)\nCreates and returns a pattern that matches from string or pattern *prefix*\nuntil the end of the line.\n*escape* indicates whether the end of the line can be escaped with a '\'\ncharacter.\n@param prefix String or pattern prefix to start matching at.\n@param escape Optional flag indicating whether or not newlines can be escaped\n by a '\' character. The default value is `false`.\n@usage local line_comment = lexer.to_eol('//')\n@usage local line_comment = lexer.to_eol(P('#') + ';')\n@return pattern
to_html export.to_html(filename, out_filename)\nExports filename *filename* (or the current file) to filename *out_filename*\n(or the user-specified file) in HTML format, and then opens the result in a\nweb browser.\n@param filename The filename to export. The default value is the current\n buffer's filename.\n@param out_filename The filename to export to. If `nil`, the user is prompted\n for one.
toggle textadept.bookmarks.toggle()\nToggles a bookmark on the current line.
toggle_block _M.ruby.toggle_block()\nToggles between `{ ... }` and `do ... end` Ruby blocks.\nIf the caret is inside a `{ ... }` single-line block, that block is converted\nto a multiple-line `do .. end` block. If the caret is on a line that contains\nsingle-line `do ... end` block, that block is converted to a single-line\n`{ ... }` block. If the caret is inside a multiple-line `do ... end` block,\nthat block is converted to a single-line `{ ... }` block with all newlines\nreplaced by a space. Indentation is important. The `do` and `end` keywords\nmust be on lines with the same level of indentation to toggle correctly.
toggle_breakpoint debugger.toggle_breakpoint(file, line)\nToggles a breakpoint on line number *line* in file *file*, or the current\nline in the current file.\nMay emit `DEBUGGER_BREAKPOINT_ADDED` and `DEBUGGER_BREAKPOINT_REMOVED` events\ndepending on circumstance.\nMay show an error message if the debugger is executing (e.g. not at a\nbreakpoint).\n@param file Optional filename of the breakpoint to toggle.\n@param line Optional 1-based line number of the breakpoint to toggle.\n@see remove_breakpoint
toggle_caret_sticky buffer.toggle_caret_sticky(buffer)\nCycles between `buffer.caret_sticky` option settings `buffer.CARETSTICKY_ON`\nand `buffer.CARETSTICKY_OFF`.\n@param buffer A buffer.\n@see caret_sticky
-toggle_fold buffer.toggle_fold(buffer, line)\nToggles the fold point on line number *line* between expanded (where all of\nits child lines are displayed) and contracted (where all of its child lines\nare hidden).\n@param buffer A buffer.\n@param line The line number in *buffer* to toggle the fold on.\n@see set_default_fold_display_text
-toggle_fold_show_text buffer.toggle_fold_show_text(buffer, line, text)\nToggles a fold point on line number *line* between expanded (where all of\nits child lines are displayed) and contracted (where all of its child lines\nare hidden), and shows string *text* after the line.\n*text* is drawn with style number `buffer.STYLE_FOLDDISPLAYTEXT`.\n@param buffer A buffer.\n@param line The line number in *buffer* to toggle the fold on and display\n *text* after.\n@param text The text to display after the line.
+toggle_fold view.toggle_fold(view, line)\nToggles the fold point on line number *line* between expanded (where all of\nits child lines are displayed) and contracted (where all of its child lines\nare hidden).\n@param view A view.\n@param line The line number in *buffer* to toggle the fold on.\n@see set_default_fold_display_text
+toggle_fold_show_text view.toggle_fold_show_text(view, line, text)\nToggles a fold point on line number *line* between expanded (where all of\nits child lines are displayed) and contracted (where all of its child lines\nare hidden), and shows string *text* after the line.\n*text* is drawn with style number `view.STYLE_FOLDDISPLAYTEXT`.\n@param view A view.\n@param line The line number in *buffer* to toggle the fold on and display\n *text* after.\n@param text The text to display after the line.
token lexer.token(name, patt)\nCreates and returns a token pattern with token name *name* and pattern\n*patt*.\nIf *name* is not a predefined token name, its style must be defined via\n`lexer.add_style()`.\n@param name The name of token. If this name is not a predefined token name,\n then a style needs to be assiciated with it via `lexer.add_style()`.\n@param patt The LPeg pattern associated with the token.\n@usage local ws = token(lexer.WHITESPACE, lexer.space^1)\n@usage local annotation = token('annotation', '@' * lexer.word)\n@return pattern
transpose_chars textadept.editing.transpose_chars()\nTransposes characters intelligently.\nIf the caret is at the end of a line, transposes the two characters before\nthe caret. Otherwise, the characters to the left and right are.
try_to_autocomplete_end _M.ruby.try_to_autocomplete_end()\nTries to autocomplete Ruby's `end` keyword for control structures like `if`,\n`while`, `for`, etc.\n@see control_structure_patterns
@@ -1096,7 +1108,7 @@ upper lexer.upper (pattern)\nA pattern that matches any upper case character ('A
upper_case buffer.upper_case(buffer)\nConverts the selected text to upper case letters.\n@param buffer A buffer.
use_tabs buffer.use_tabs (bool)\nUse tabs instead of spaces in indentation. Changing the current setting\ndoes not convert any of the buffer's existing indentation. Use\n`textadept.editing.convert_indentation()` to do so.\nThe default value is `true`.
user_list_show buffer.user_list_show(buffer, id, items)\nDisplays a user list identified by list identifier number *id* and\nconstructed from string *items* (whose items are delimited by\n`buffer.auto_c_separator` characters).\nThe sorted order of *items* (`buffer.auto_c_order`) must have already been\ndefined. When the user selects an item, *id* is sent in a\n`USER_LIST_SELECTION` event along with the selection.\n@param buffer A buffer.\n@param id The list identifier number greater than zero to use.\n@param items The sorted string of words to show, separated by\n `buffer.auto_c_separator` characters (initially spaces).\n@see _SCINTILLA.next_user_list_type\n@see events.USER_LIST_SELECTION
-v_scroll_bar buffer.v_scroll_bar (bool)\nDisplay the vertical scroll bar.\nThe default value is `true`.
+v_scroll_bar view.v_scroll_bar (bool)\nDisplay the vertical scroll bar.\nThe default value is `true`.
variables debugger.variables()\nDisplays a dialog with variables in the current stack frame.
vc_home buffer.vc_home(buffer)\nMoves the caret to the first visible character on the current line or, if\nalready there, to the beginning of the current line.\n@param buffer A buffer.
vc_home_display buffer.vc_home_display(buffer)\nMoves the caret to the first visible character on the current wrapped line\nor, if already there, to the beginning of the current wrapped line.\n@param buffer A buffer.
@@ -1105,16 +1117,16 @@ vc_home_extend buffer.vc_home_extend(buffer)\nLike `buffer.vc_home()`, but exten
vc_home_rect_extend buffer.vc_home_rect_extend(buffer)\nLike `buffer.vc_home()`, but extends the rectangular selection to the new\nposition.\n@param buffer A buffer.
vc_home_wrap buffer.vc_home_wrap(buffer)\nMoves the caret to the first visible character on the current wrapped line\nor, if already there, to the beginning of the actual line.\n@param buffer A buffer.
vc_home_wrap_extend buffer.vc_home_wrap_extend(buffer)\nLike `buffer.vc_home_wrap()`, but extends the selected text to the new\nposition.\n@param buffer A buffer.
-vertical_centre_caret buffer.vertical_centre_caret(buffer)\nCenters current line in the view.\n@param buffer A buffer.
-view _G.view (module)\nA Textadept view object.
+vertical_centre_caret view.vertical_centre_caret(view)\nCenters current line in the view.\n@param view A view.
+view _G.view (module)\nA Textadept view object.\nConstants are documented in the fields they apply to.\nWhile you can work with individual view instances, it is often useful to work\nwith just the global one.\nMany of these functions and fields are derived from view-specific\nfunctionality the Scintilla editing component, and additional information can\nbe found on the Scintilla website:\nhttp://scintilla.org/ScintillaDoc.html\nNote that with regard to Scintilla-specific functionality, this API is a\n_suggestion_, not a hard requirement. All of that functionality also exists\nin `buffer`, even if undocumented.
view _G.view (table)\nThe current view.
-view_eol buffer.view_eol (bool)\nDisplay end of line characters.\nThe default value is `false`.
-view_ws buffer.view_ws (number)\nThe whitespace visibility mode.\n\n* `buffer.WS_INVISIBLE`\n Whitespace is invisible.\n* `buffer.WS_VISIBLEALWAYS`\n Display all space characters as dots and tab characters as arrows.\n* `buffer.WS_VISIBLEAFTERINDENT`\n Display only non-indentation spaces and tabs as dots and arrows.\n* `buffer.WS_VISIBLEONLYININDENT`\n Display only indentation spaces and tabs as dots and arrows.\n\nThe default value is `buffer.WS_INVISIBLE`.
+view_eol view.view_eol (bool)\nDisplay end of line characters.\nThe default value is `false`.
+view_ws view.view_ws (number)\nThe whitespace visibility mode.\n\n* `view.WS_INVISIBLE`\n Whitespace is invisible.\n* `view.WS_VISIBLEALWAYS`\n Display all space characters as dots and tab characters as arrows.\n* `view.WS_VISIBLEAFTERINDENT`\n Display only non-indentation spaces and tabs as dots and arrows.\n* `view.WS_VISIBLEONLYININDENT`\n Display only indentation spaces and tabs as dots and arrows.\n\nThe default value is `view.WS_INVISIBLE`.
virtual_space_options buffer.virtual_space_options (number)\nThe virtual space mode.\n\n* `buffer.VS_NONE`\n Disable virtual space.\n* `buffer.VS_RECTANGULARSELECTION`\n Enable virtual space only for rectangular selections.\n* `buffer.VS_USERACCESSIBLE`\n Enable virtual space.\n* `buffer.VS_NOWRAPLINESTART`\n Prevent the caret from wrapping to the previous line via\n `buffer:char_left()` and `buffer:char_left_extend()`. This option is not\n restricted to virtual space and should be added to any of the above\n options.\n\nWhen virtual space is enabled, the caret may move into the space past end\nof line characters.\nThe default value is `buffer.VS_NONE`.
-visible_from_doc_line buffer.visible_from_doc_line(buffer, line)\nReturns the displayed line number of actual line number *line*, taking hidden\nlines into account, or `-1` if *line* is outside the range of lines in the\nbuffer.\nLines can occupy more than one display line if they wrap.\n@param buffer A buffer.\n@param line The line number in *buffer* to use.\n@return number
-wait spawn_proc:wait()\nBlocks until process *spawn_proc* finishes and returns its status code.\n@return integer status code
+visible_from_doc_line view.visible_from_doc_line(view, line)\nReturns the displayed line number of actual line number *line*, taking hidden\nlines into account, or `-1` if *line* is outside the range of lines in the\nbuffer.\nLines can occupy more than one display line if they wrap.\n@param view A view.\n@param line The line number in *buffer* to use.\n@return number
+wait spawn_proc:wait()\nBlocks until process *spawn_proc* finishes (if it has not already done so)\nand returns its status code.\n@return integer status code
whitespace_chars buffer.whitespace_chars (string)\nThe string set of characters recognized as whitespace characters.\nSet this only after setting `buffer.word_chars`.\nThe default value is a string that contains all non-newline characters less\nthan ASCII value 33.
-whitespace_size buffer.whitespace_size (number)\nThe pixel size of the dots that represent space characters when whitespace\nis visible.\nThe default value is `1`.
+whitespace_size view.whitespace_size (number)\nThe pixel size of the dots that represent space characters when whitespace\nis visible.\nThe default value is `1`.
whole_word ui.find.whole_word (bool)\nMatch search text only when it is surrounded by non-word characters in\nsearches.\nThe default value is `false`.
whole_word_label_text ui.find.whole_word_label_text (string, Write-only)\nThe text of the "Whole word" label.\nThis is primarily used for localization.
word lexer.word (pattern)\nA pattern that matches a typical word. Words begin with a letter or\nunderscore and consist of alphanumeric and underscore characters.
@@ -1134,19 +1146,19 @@ word_right_end buffer.word_right_end(buffer)\nMoves the caret right one word, po
word_right_end_extend buffer.word_right_end_extend(buffer)\nLike `buffer.word_right_end()`, but extends the selected text to the new\nposition.\n@param buffer A buffer.
word_right_extend buffer.word_right_extend(buffer)\nMoves the caret right one word, extending the selected text to the new\nposition.\n`buffer.word_chars` contains the set of characters that constitute words.\n@param buffer A buffer.
word_start_position buffer.word_start_position(buffer, pos, only_word_chars)\nReturns the position of the beginning of the word at position *pos*.\n`buffer.word_chars` contains the set of characters that constitute words. If\n*pos* has a non-word character to its left and *only_word_chars* is `false`,\nreturns the last word character's position.\n@param buffer A buffer.\n@param pos The position in *buffer* of the word.\n@param only_word_chars If `true`, stops searching at the first non-word\n character in the search direction. Otherwise, the first character in the\n search direction sets the type of the search as word or non-word and the\n search stops at the first non-matching character. Searches are also\n terminated by the start or end of the buffer.
-wrap_count buffer.wrap_count(buffer, line)\nReturns the number of wrapped lines needed to fully display line number\n*line*.\n@param buffer A buffer.\n@param line The line number in *buffer* to use.\n@return number
-wrap_indent_mode buffer.wrap_indent_mode (number)\nThe wrapped line indent mode.\n\n* `buffer.WRAPINDENT_FIXED`\n Indent wrapped lines by `buffer.wrap_start_indent`.\n* `buffer.WRAPINDENT_SAME`\n Indent wrapped lines the same amount as the first line.\n* `buffer.WRAPINDENT_INDENT`\n Indent wrapped lines one more level than the level of the first line.\n* `buffer.WRAPINDENT_DEEPINDENT`\n Indent wrapped lines two more levels than the level of the first line.\n\nThe default value is `buffer.WRAPINDENT_FIXED`.
-wrap_mode buffer.wrap_mode (number)\nLong line wrap mode.\n\n* `buffer.WRAP_NONE`\n Long lines are not wrapped.\n* `buffer.WRAP_WORD`\n Wrap long lines at word (and style) boundaries.\n* `buffer.WRAP_CHAR`\n Wrap long lines at character boundaries.\n* `buffer.WRAP_WHITESPACE`\n Wrap long lines at word boundaries (ignoring style boundaries).\n\nThe default value is `buffer.WRAP_NONE`.
-wrap_start_indent buffer.wrap_start_indent (number)\nThe number of spaces of indentation to display wrapped lines with if\n`buffer.wrap_indent_mode` is `buffer.WRAP_INDENT_FIXED`.\nThe default value is `0`.
-wrap_visual_flags buffer.wrap_visual_flags (number)\nThe wrapped line visual flag display mode.\n\n* `buffer.WRAPVISUALFLAG_NONE`\n No visual flags.\n* `buffer.WRAPVISUALFLAG_END`\n Show a visual flag at the end of a wrapped line.\n* `buffer.WRAPVISUALFLAG_START`\n Show a visual flag at the beginning of a sub-line.\n* `buffer.WRAPVISUALFLAG_MARGIN`\n Show a visual flag in the sub-line's line number margin.\n\nThe default value is `buffer.WRAPVISUALFLAG_NONE`.
-wrap_visual_flags_location buffer.wrap_visual_flags_location (number)\nThe wrapped line visual flag drawing mode.\n\n* `buffer.WRAPVISUALFLAGLOC_DEFAULT`\n Draw a visual flag near the view's right margin.\n* `buffer.WRAPVISUALFLAGLOC_END_BY_TEXT`\n Draw a visual flag near text at the end of a wrapped line.\n* `buffer.WRAPVISUALFLAGLOC_START_BY_TEXT`\n Draw a visual flag near text at the beginning of a subline.\n\nThe default value is `buffer.WRAPVISUALFLAGLOC_DEFAULT`.
+wrap_count view.wrap_count(view, line)\nReturns the number of wrapped lines needed to fully display line number\n*line*.\n@param view A view.\n@param line The line number in *buffer* to use.\n@return number
+wrap_indent_mode view.wrap_indent_mode (number)\nThe wrapped line indent mode.\n\n* `view.WRAPINDENT_FIXED`\n Indent wrapped lines by `view.wrap_start_indent`.\n* `view.WRAPINDENT_SAME`\n Indent wrapped lines the same amount as the first line.\n* `view.WRAPINDENT_INDENT`\n Indent wrapped lines one more level than the level of the first line.\n* `view.WRAPINDENT_DEEPINDENT`\n Indent wrapped lines two more levels than the level of the first line.\n\nThe default value is `view.WRAPINDENT_FIXED`.
+wrap_mode view.wrap_mode (number)\nLong line wrap mode.\n\n* `view.WRAP_NONE`\n Long lines are not wrapped.\n* `view.WRAP_WORD`\n Wrap long lines at word (and style) boundaries.\n* `view.WRAP_CHAR`\n Wrap long lines at character boundaries.\n* `view.WRAP_WHITESPACE`\n Wrap long lines at word boundaries (ignoring style boundaries).\n\nThe default value is `view.WRAP_NONE`.
+wrap_start_indent view.wrap_start_indent (number)\nThe number of spaces of indentation to display wrapped lines with if\n`view.wrap_indent_mode` is `view.WRAPINDENT_FIXED`.\nThe default value is `0`.
+wrap_visual_flags view.wrap_visual_flags (number)\nThe wrapped line visual flag display mode.\n\n* `view.WRAPVISUALFLAG_NONE`\n No visual flags.\n* `view.WRAPVISUALFLAG_END`\n Show a visual flag at the end of a wrapped line.\n* `view.WRAPVISUALFLAG_START`\n Show a visual flag at the beginning of a sub-line.\n* `view.WRAPVISUALFLAG_MARGIN`\n Show a visual flag in the sub-line's line number margin.\n\nThe default value is `view.WRAPVISUALFLAG_NONE`.
+wrap_visual_flags_location view.wrap_visual_flags_location (number)\nThe wrapped line visual flag drawing mode.\n\n* `view.WRAPVISUALFLAGLOC_DEFAULT`\n Draw a visual flag near the view's right margin.\n* `view.WRAPVISUALFLAGLOC_END_BY_TEXT`\n Draw a visual flag near text at the end of a wrapped line.\n* `view.WRAPVISUALFLAGLOC_START_BY_TEXT`\n Draw a visual flag near text at the beginning of a subline.\n\nThe default value is `view.WRAPVISUALFLAGLOC_DEFAULT`.
write spawn_proc:write(...)\nWrites string input to the stdin of process *spawn_proc*.\nNote: On Linux, if more than 65536 bytes (64K) are to be written, it is\npossible those bytes need to be written in 65536-byte (64K) chunks, or the\nprocess may not receive all input. However, it is also possible that there is\na limit on how many bytes can be written in a short period of time, perhaps\n196608 bytes (192K).\n@param ... Standard input for *spawn_proc*.
-x_offset buffer.x_offset (number)\nThe horizontal scroll pixel position.\nA value of `0` is the normal position with the first text column visible at\nthe left of the view.
+x_offset view.x_offset (number)\nThe horizontal scroll pixel position.\nA value of `0` is the normal position with the first text column visible at\nthe left of the view.
xdigit lexer.xdigit (pattern)\nA pattern that matches any hexadecimal digit ('0'-'9', 'A'-'F', 'a'-'f').
yaml _G.keys.yaml (table)\nContainer for YAML-specific key bindings.
yaml _G.snippets.yaml (table)\nContainer for YAML-specific snippets.
yaml _M.yaml (module)\nThe YAML module.\nIt provides utilities for editing YAML documents.
yesno_msgbox ui.dialogs.yesno_msgbox(options)\nPrompts the user with a generic message box dialog defined by dialog options\ntable *options* and with localized "Yes", "No", and "Cancel" buttons,\nreturning the selected button's index.\nIf *options*.`string_output` is `true`, returns the selected button's label.\nIf the dialog timed out, returns `0` or `"timeout"`. If the user canceled the\ndialog, returns `-1` or `"delete"`.\n@param options Table of key-value option pairs for the message box.\n\n * `title`: The dialog's title text.\n * `text`: The dialog's main message text.\n * `informative_text`: The dialog's extra informative text.\n * `icon`: The dialog's GTK stock icon name. Examples are\n "gtk-dialog-error", "gtk-dialog-info", "gtk-dialog-question", and\n "gtk-dialog-warning". The dialog does not display an icon by default.\n * `icon_file`: The dialog's icon file path. This option has no effect when\n `icon` is set.\n * `no_cancel`: Do not display the "Cancel" button. The default value is\n `false`.\n * `string_output`: Return the selected button's label (instead of its\n index) or the dialog's exit status instead of the button's index (instead\n of its exit code). The default value is `false`.\n * `width`: The dialog's pixel width.\n * `height`: The dialog's pixel height.\n * `float`: Show the dialog on top of all desktop windows. The default value\n is `false`.\n * `timeout`: The integer number of seconds the dialog waits for the user to\n select a button before timing out. Dialogs do not time out by default.\n@return selected button or exit code
-zoom buffer.zoom (number)\nThe number of points to add to the size of all fonts.\nNegative values are allowed.\nThe default value is `0`.
-zoom_in buffer.zoom_in(buffer)\nIncreases the size of all fonts by one point, up to 20.\n@param buffer A buffer.
-zoom_out buffer.zoom_out(buffer)\nDecreases the size of all fonts by one point, down to -10.\n@param buffer A buffer. \ No newline at end of file
+zoom view.zoom (number)\nThe number of points to add to the size of all fonts.\nNegative values are allowed.\nThe default value is `0`.
+zoom_in view.zoom_in(view)\nIncreases the size of all fonts by one point, up to 20.\n@param view A view.
+zoom_out view.zoom_out(view)\nDecreases the size of all fonts by one point, down to -10.\n@param view A view. \ No newline at end of file
diff --git a/modules/lua/ta_tags b/modules/lua/ta_tags
index fe890887..ecfc9b48 100644
--- a/modules/lua/ta_tags
+++ b/modules/lua/ta_tags
@@ -1,15 +1,12 @@
-ALPHA_NOALPHA _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-ALPHA_OPAQUE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-ALPHA_TRANSPARENT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-ANNOTATION_BOXED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-ANNOTATION_HIDDEN _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-ANNOTATION_INDENTED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-ANNOTATION_STANDARD _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+ALPHA_NOALPHA _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+ALPHA_OPAQUE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+ALPHA_TRANSPARENT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+ANNOTATION_BOXED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+ANNOTATION_HIDDEN _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+ANNOTATION_INDENTED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+ANNOTATION_STANDARD _HOME/core/.view.luadoc /^module('view')$/;" F class:view
APPLEEVENT_ODOC _HOME/core/events.lua /^module('events')]]$/;" F class:events
ARG_NONE _HOME/core/args.lua /^module('args')]]$/;" F class:events
-AUTOMATICFOLD_CHANGE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-AUTOMATICFOLD_CLICK _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-AUTOMATICFOLD_SHOW _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
AUTO_C_CANCELED _HOME/core/events.lua /^module('events')]]$/;" F class:events
AUTO_C_CHAR_DELETED _HOME/core/events.lua /^module('events')]]$/;" F class:events
AUTO_C_COMPLETED _HOME/core/events.lua /^module('events')]]$/;" F class:events
@@ -25,18 +22,19 @@ CALL_TIP_CLICK _HOME/core/events.lua /^module('events')]]$/;" F class:events
CARETSTICKY_OFF _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
CARETSTICKY_ON _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
CARETSTICKY_WHITESPACE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CARETSTYLE_BLOCK _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CARETSTYLE_INVISIBLE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CARETSTYLE_LINE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CARET_EVEN _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CARET_JUMPS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CARET_SLOP _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CARET_STRICT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+CARETSTYLE_BLOCK _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CARETSTYLE_INVISIBLE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CARETSTYLE_LINE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CARET_EVEN _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CARET_JUMPS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CARET_SLOP _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CARET_STRICT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
CASEINSENSITIVEBEHAVIOUR_IGNORECASE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
CASEINSENSITIVEBEHAVIOUR_RESPECTCASE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CASE_LOWER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CASE_MIXED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CASE_UPPER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+CASE_CAMEL _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CASE_LOWER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CASE_MIXED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CASE_UPPER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
CHAR_ADDED _HOME/core/events.lua /^module('events')]]$/;" F class:events
CLASS _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
CLASS _HOME/modules/textadept/editing.lua /^M.XPM_IMAGES = {$/;" F class:textadept.editing.XPM_IMAGES
@@ -46,10 +44,10 @@ COMPILE_OUTPUT _HOME/modules/textadept/run.lua /^module('textadept.run')]]$/;" F
CONSTANT _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
CSI _HOME/core/events.lua /^module('events')]]$/;" F class:events
CURSES _HOME/core/init.lua /^module('_G')]]$/;" F
-CURSORARROW _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CURSORNORMAL _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CURSORREVERSEARROW _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-CURSORWAIT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+CURSORARROW _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CURSORNORMAL _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CURSORREVERSEARROW _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+CURSORWAIT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
DEBUGGER_BREAKPOINT_ADDED _HOME/modules/debugger/init.lua /^module('debugger')]]$/;" F class:events
DEBUGGER_BREAKPOINT_REMOVED _HOME/modules/debugger/init.lua /^module('debugger')]]$/;" F class:events
DEBUGGER_COMMAND _HOME/modules/debugger/init.lua /^module('debugger')]]$/;" F class:events
@@ -70,10 +68,10 @@ DOCUTILS_PATH _HOME/modules/rest/init.lua /^module('_M.rest')]]$/;" F class:_M.r
DOUBLE_CLICK _HOME/core/events.lua /^module('events')]]$/;" F class:events
DWELL_END _HOME/core/events.lua /^module('events')]]$/;" F class:events
DWELL_START _HOME/core/events.lua /^module('events')]]$/;" F class:events
-EDGE_BACKGROUND _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-EDGE_LINE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-EDGE_MULTILINE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-EDGE_NONE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+EDGE_BACKGROUND _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+EDGE_LINE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+EDGE_MULTILINE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+EDGE_NONE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
EOL_CR _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
EOL_CRLF _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
EOL_LF _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -90,15 +88,18 @@ FIND_WHOLEWORD _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
FIND_WORDSTART _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
FIND_WRAPPED _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:events
FOCUS _HOME/core/events.lua /^module('events')]]$/;" F class:events
-FOLDACTION_CONTRACT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-FOLDACTION_EXPAND _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-FOLDACTION_TOGGLE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-FOLDFLAG_LEVELNUMBERS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-FOLDFLAG_LINEAFTER_CONTRACTED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-FOLDFLAG_LINEAFTER_EXPANDED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-FOLDFLAG_LINEBEFORE_CONTRACTED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-FOLDFLAG_LINEBEFORE_EXPANDED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-FOLDFLAG_LINESTATE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+FOLDACTION_CONTRACT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDACTION_EXPAND _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDACTION_TOGGLE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDDISPLAYTEXT_BOXED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDDISPLAYTEXT_HIDDEN _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDDISPLAYTEXT_STANDARD _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDFLAG_LEVELNUMBERS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDFLAG_LINEAFTER_CONTRACTED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDFLAG_LINEAFTER_EXPANDED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDFLAG_LINEBEFORE_CONTRACTED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDFLAG_LINEBEFORE_EXPANDED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+FOLDFLAG_LINESTATE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
FOLDLEVELBASE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
FOLDLEVELHEADERFLAG _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
FOLDLEVELNUMBERMASK _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -109,40 +110,44 @@ FOLD_HEADER _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
FUNCTION _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
IDENTIFIER _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
INDICATOR_CLICK _HOME/core/events.lua /^module('events')]]$/;" F class:events
+INDICATOR_MAX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
INDICATOR_RELEASE _HOME/core/events.lua /^module('events')]]$/;" F class:events
INDIC_ADDITION _HOME/modules/file_diff/init.lua /^module('file_diff')]]$/;" F class:file_diff
-INDIC_BOX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+INDIC_BOX _HOME/core/.view.luadoc /^module('view')$/;" F class:view
INDIC_BRACEMATCH _HOME/modules/textadept/editing.lua /^module('textadept.editing')]]$/;" F class:textadept.editing
-INDIC_COMPOSITIONTHICK _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_COMPOSITIONTHIN _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_DASH _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+INDIC_COMPOSITIONTHICK _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_COMPOSITIONTHIN _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_DASH _HOME/core/.view.luadoc /^module('view')$/;" F class:view
INDIC_DELETION _HOME/modules/file_diff/init.lua /^module('file_diff')]]$/;" F class:file_diff
-INDIC_DIAGONAL _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_DOTBOX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_DOTS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+INDIC_DIAGONAL _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_DOTBOX _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_DOTS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
INDIC_ERROR _HOME/modules/lsp/init.lua /^module('lsp')]]$/;" F class:lsp
INDIC_FIND _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
-INDIC_FULLBOX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_HIDDEN _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+INDIC_FULLBOX _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_GRADIENT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_GRADIENTCENTRE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_HIDDEN _HOME/core/.view.luadoc /^module('view')$/;" F class:view
INDIC_HIGHLIGHT _HOME/modules/textadept/editing.lua /^module('textadept.editing')]]$/;" F class:textadept.editing
-INDIC_MAX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
INDIC_PLACEHOLDER _HOME/modules/textadept/snippets.lua /^module('textadept.snippets')]=]$/;" F class:textadept.snippets
-INDIC_PLAIN _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_ROUNDBOX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+INDIC_PLAIN _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_POINT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_POINTCHARACTER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_ROUNDBOX _HOME/core/.view.luadoc /^module('view')$/;" F class:view
INDIC_SPELLING _HOME/modules/spellcheck/init.lua /^module('spellcheck')]]$/;" F class:spellcheck
-INDIC_SQUIGGLE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_SQUIGGLELOW _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_SQUIGGLEPIXMAP _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_STRAIGHTBOX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_STRIKE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_TEXTFORE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-INDIC_TT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+INDIC_SQUIGGLE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_SQUIGGLELOW _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_SQUIGGLEPIXMAP _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_STRAIGHTBOX _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_STRIKE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_TEXTFORE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+INDIC_TT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
INDIC_WARN _HOME/modules/lsp/init.lua /^module('lsp')]]$/;" F class:lsp
INITIALIZED _HOME/core/events.lua /^module('events')]]$/;" F class:events
-IV_LOOKBOTH _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-IV_LOOKFORWARD _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-IV_NONE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-IV_REAL _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+IV_LOOKBOTH _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+IV_LOOKFORWARD _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+IV_NONE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+IV_REAL _HOME/core/.view.luadoc /^module('view')$/;" F class:view
KEYPRESS _HOME/core/events.lua /^module('events')]]$/;" F class:events
KEYSYMS _HOME/core/keys.lua /^M.KEYSYMS = {$/;" t class:keys
KEYWORD _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
@@ -153,16 +158,16 @@ LSP_INITIALIZED _HOME/modules/lsp/init.lua /^module('lsp')]]$/;" F class:events
LSP_NOTIFICATION _HOME/modules/lsp/init.lua /^module('lsp')]]$/;" F class:events
LUA_FLAGS _HOME/modules/ctags/init.lua /^module('ctags')]]$/;" F class:ctags
LUA_GENERATOR _HOME/modules/ctags/init.lua /^module('ctags')]]$/;" F class:ctags
-MARGINOPTION_NONE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARGINOPTION_SUBLINESELECT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARGIN_BACK _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARGINOPTION_NONE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARGINOPTION_SUBLINESELECT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARGIN_BACK _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARGIN_CLICK _HOME/core/events.lua /^module('events')]]$/;" F class:events
-MARGIN_COLOUR _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARGIN_FORE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARGIN_NUMBER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARGIN_RTEXT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARGIN_SYMBOL _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARGIN_TEXT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARGIN_COLOUR _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARGIN_FORE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARGIN_NUMBER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARGIN_RTEXT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARGIN_SYMBOL _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARGIN_TEXT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARKER_MAX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
MARKNUM_FOLDER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
MARKNUM_FOLDEREND _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -172,59 +177,59 @@ MARKNUM_FOLDEROPENMID _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:b
MARKNUM_FOLDERSUB _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
MARKNUM_FOLDERTAIL _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
MARK_ADDITION _HOME/modules/file_diff/init.lua /^module('file_diff')]]$/;" F class:file_diff
-MARK_ARROW _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_ARROWDOWN _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_ARROWS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARK_ARROW _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_ARROWDOWN _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_ARROWS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARK_AVAILABLE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_BACKGROUND _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_BOOKMARK _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARK_BACKGROUND _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_BOOKMARK _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARK_BOOKMARK _HOME/modules/textadept/bookmarks.lua /^module('textadept.bookmarks')]]$/;" F class:textadept.bookmarks
-MARK_BOXMINUS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_BOXMINUSCONNECTED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_BOXPLUS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_BOXPLUSCONNECTED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARK_BOXMINUS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_BOXMINUSCONNECTED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_BOXPLUS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_BOXPLUSCONNECTED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARK_BREAKPOINT_COLOR _HOME/modules/debugger/init.lua /^module('debugger')]]$/;" F class:debugger
-MARK_CHARACTER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_CIRCLE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_CIRCLEMINUS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_CIRCLEMINUSCONNECTED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_CIRCLEPLUS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_CIRCLEPLUSCONNECTED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARK_CHARACTER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_CIRCLE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_CIRCLEMINUS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_CIRCLEMINUSCONNECTED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_CIRCLEPLUS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_CIRCLEPLUSCONNECTED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARK_DEBUGLINE_COLOR _HOME/modules/debugger/init.lua /^module('debugger')]]$/;" F class:debugger
MARK_DELETION _HOME/modules/file_diff/init.lua /^module('file_diff')]]$/;" F class:file_diff
-MARK_DOTDOTDOT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_EMPTY _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARK_DOTDOTDOT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_EMPTY _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARK_ERROR _HOME/modules/textadept/run.lua /^module('textadept.run')]]$/;" F class:textadept.run
-MARK_FULLRECT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_LCORNER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_LCORNERCURVE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_LEFTRECT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_MINUS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARK_FULLRECT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_LCORNER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_LCORNERCURVE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_LEFTRECT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_MINUS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARK_MODIFICATION _HOME/modules/file_diff/init.lua /^module('file_diff')]]$/;" F class:file_diff
-MARK_PIXMAP _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_PLUS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_RGBAIMAGE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_ROUNDRECT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_SHORTARROW _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_SMALLRECT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_TCORNER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_TCORNERCURVE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_UNDERLINE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_VERTICALBOOKMARK _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MARK_VLINE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MARK_PIXMAP _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_PLUS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_RGBAIMAGE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_ROUNDRECT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_SHORTARROW _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_SMALLRECT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_TCORNER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_TCORNERCURVE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_UNDERLINE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_VERTICALBOOKMARK _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MARK_VLINE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MARK_WARNING _HOME/modules/textadept/run.lua /^module('textadept.run')]]$/;" F class:textadept.run
-MASK_FOLDERS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MASK_FOLDERS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MENU_CLICKED _HOME/core/events.lua /^module('events')]]$/;" F class:events
METHOD _HOME/modules/textadept/editing.lua /^M.XPM_IMAGES = {$/;" F class:textadept.editing.XPM_IMAGES
-MOD_ALT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MOD_CTRL _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MOD_META _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MOD_SHIFT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MOD_SUPER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MOD_ALT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MOD_CTRL _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MOD_META _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MOD_SHIFT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MOD_SUPER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MOUSE _HOME/core/events.lua /^module('events')]]$/;" F class:events
-MOUSE_DRAG _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MOUSE_PRESS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-MOUSE_RELEASE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+MOUSE_DRAG _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MOUSE_PRESS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+MOUSE_RELEASE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
MULTIAUTOC_EACH _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
MULTIAUTOC_ONCE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
MULTIPASTE_EACH _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -257,30 +262,30 @@ SIGNAL _HOME/modules/textadept/editing.lua /^M.XPM_IMAGES = {$/;" F class:textad
SLOT _HOME/modules/textadept/editing.lua /^M.XPM_IMAGES = {$/;" F class:textadept.editing.XPM_IMAGES
STRING _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STRUCT _HOME/modules/textadept/editing.lua /^M.XPM_IMAGES = {$/;" F class:textadept.editing.XPM_IMAGES
-STYLE_BRACEBAD _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+STYLE_BRACEBAD _HOME/core/.view.luadoc /^module('view')$/;" F class:view
STYLE_BRACEBAD _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-STYLE_BRACELIGHT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+STYLE_BRACELIGHT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
STYLE_BRACELIGHT _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-STYLE_CALLTIP _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+STYLE_CALLTIP _HOME/core/.view.luadoc /^module('view')$/;" F class:view
STYLE_CALLTIP _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_CLASS _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_COMMENT _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_CONSTANT _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-STYLE_CONTROLCHAR _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+STYLE_CONTROLCHAR _HOME/core/.view.luadoc /^module('view')$/;" F class:view
STYLE_CONTROLCHAR _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-STYLE_DEFAULT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+STYLE_DEFAULT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
STYLE_DEFAULT _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_EMBEDDED _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_ERROR _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-STYLE_FOLDDISPLAYTEXT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+STYLE_FOLDDISPLAYTEXT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
STYLE_FOLDDISPLAYTEXT _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_FUNCTION _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_IDENTIFIER _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-STYLE_INDENTGUIDE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+STYLE_INDENTGUIDE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
STYLE_INDENTGUIDE _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_KEYWORD _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_LABEL _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-STYLE_LINENUMBER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+STYLE_LINENUMBER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
STYLE_LINENUMBER _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_MAX _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
STYLE_NUMBER _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
@@ -293,14 +298,16 @@ STYLE_VARIABLE _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
STYLE_WHITESPACE _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
SUSPEND _HOME/core/events.lua /^module('events')]]$/;" F class:events
TAB_CLICKED _HOME/core/events.lua /^module('events')]]$/;" F class:events
-TIME_FOREVER _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+TD_LONGARROW _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+TD_STRIKEOUT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+TIME_FOREVER _HOME/core/.view.luadoc /^module('view')$/;" F class:view
TYPE _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
TYPEDEF _HOME/modules/textadept/editing.lua /^M.XPM_IMAGES = {$/;" F class:textadept.editing.XPM_IMAGES
UPDATE_CONTENT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-UPDATE_H_SCROLL _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+UPDATE_H_SCROLL _HOME/core/.view.luadoc /^module('view')$/;" F class:view
UPDATE_SELECTION _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
UPDATE_UI _HOME/core/events.lua /^module('events')]]$/;" F class:events
-UPDATE_V_SCROLL _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+UPDATE_V_SCROLL _HOME/core/.view.luadoc /^module('view')$/;" F class:view
URI_DROPPED _HOME/core/events.lua /^module('events')]]$/;" F class:events
USER_LIST_SELECTION _HOME/core/events.lua /^module('events')]]$/;" F class:events
VARIABLE _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
@@ -308,30 +315,32 @@ VARIABLE _HOME/modules/textadept/editing.lua /^M.XPM_IMAGES = {$/;" F class:text
VIEW_AFTER_SWITCH _HOME/core/events.lua /^module('events')]]$/;" F class:events
VIEW_BEFORE_SWITCH _HOME/core/events.lua /^module('events')]]$/;" F class:events
VIEW_NEW _HOME/core/events.lua /^module('events')]]$/;" F class:events
-VISIBLE_SLOP _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-VISIBLE_STRICT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+VISIBLE_SLOP _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+VISIBLE_STRICT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
VS_NONE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
VS_RECTANGULARSELECTION _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
VS_USERACCESSIBLE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
WHITESPACE _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
WIN32 _HOME/core/init.lua /^module('_G')]]$/;" F
-WRAPINDENT_FIXED _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPINDENT_INDENT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPINDENT_SAME _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPVISUALFLAGLOC_DEFAULT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPVISUALFLAGLOC_END_BY_TEXT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPVISUALFLAGLOC_START_BY_TEXT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPVISUALFLAG_END _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPVISUALFLAG_MARGIN _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPVISUALFLAG_NONE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAPVISUALFLAG_START _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAP_CHAR _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAP_NONE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAP_WHITESPACE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WRAP_WORD _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WS_INVISIBLE _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WS_VISIBLEAFTERINDENT _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-WS_VISIBLEALWAYS _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+WRAPINDENT_DEEPINDENT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPINDENT_FIXED _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPINDENT_INDENT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPINDENT_SAME _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPVISUALFLAGLOC_DEFAULT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPVISUALFLAGLOC_END_BY_TEXT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPVISUALFLAGLOC_START_BY_TEXT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPVISUALFLAG_END _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPVISUALFLAG_MARGIN _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPVISUALFLAG_NONE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAPVISUALFLAG_START _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAP_CHAR _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAP_NONE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAP_WHITESPACE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WRAP_WORD _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WS_INVISIBLE _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WS_VISIBLEAFTERINDENT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WS_VISIBLEALWAYS _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+WS_VISIBLEONLYININDENT _HOME/core/.view.luadoc /^module('view')$/;" F class:view
XPM_IMAGES _HOME/modules/textadept/editing.lua /^M.XPM_IMAGES = {$/;" t class:textadept.editing
ZOOM _HOME/core/events.lua /^module('events')]]$/;" F class:events
_BUFFERS _HOME/core/init.lua /^local _BUFFERS$/;" t
@@ -361,14 +370,14 @@ add_selection _HOME/core/.buffer.luadoc /^function add_selection(buffer, end_pos
add_style _HOME/lexers/lexer.lua /^function M.add_style(lexer, token_name, style)$/;" f class:lexer
add_text _HOME/core/.buffer.luadoc /^function add_text(buffer, text) end$/;" f class:buffer
add_word _HOME/modules/spellcheck/init.lua /^function spellchecker:add_word(word) end$/;" f class:spellchecker
-additional_caret_fore _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-additional_carets_blink _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-additional_carets_visible _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-additional_sel_alpha _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-additional_sel_back _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-additional_sel_fore _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+additional_caret_fore _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+additional_carets_blink _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+additional_carets_visible _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+additional_sel_alpha _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+additional_sel_back _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+additional_sel_fore _HOME/core/.view.luadoc /^module('view')$/;" F class:view
additional_selection_typing _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-all_lines_visible _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+all_lines_visible _HOME/core/.view.luadoc /^module('view')$/;" F class:view
alnum _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
alpha _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
anchor _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -376,7 +385,7 @@ annotation_clear_all _HOME/core/.buffer.luadoc /^function annotation_clear_all(b
annotation_lines _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
annotation_style _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
annotation_text _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-annotation_visible _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+annotation_visible _HOME/core/.view.luadoc /^module('view')$/;" F class:view
ansi_c _HOME/modules/ansi_c/init.lua /^keys.ansi_c = {}$/;" t class:keys
ansi_c _HOME/modules/ansi_c/init.lua /^module('_M.ansi_c')]]$/;" m class:_M
ansi_c _HOME/modules/ansi_c/init.lua /^snippets.ansi_c = {$/;" t class:snippets
@@ -404,8 +413,8 @@ auto_c_current_text _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buf
auto_c_drop_rest_of_word _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
auto_c_fill_ups _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
auto_c_ignore_case _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-auto_c_max_height _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-auto_c_max_width _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+auto_c_max_height _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+auto_c_max_width _HOME/core/.view.luadoc /^module('view')$/;" F class:view
auto_c_multi _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
auto_c_order _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
auto_c_pos_start _HOME/core/.buffer.luadoc /^function auto_c_pos_start(buffer) end$/;" f class:buffer
@@ -427,10 +436,10 @@ back_tab _HOME/core/.buffer.luadoc /^function back_tab(buffer) end$/;" f class:b
begin_undo_action _HOME/core/.buffer.luadoc /^function begin_undo_action(buffer) end$/;" f class:buffer
block_comment _HOME/modules/textadept/editing.lua /^function M.block_comment()$/;" f class:textadept.editing
bookmarks _HOME/modules/textadept/bookmarks.lua /^module('textadept.bookmarks')]]$/;" m class:textadept
-brace_bad_light _HOME/core/.buffer.luadoc /^function brace_bad_light(buffer, pos) end$/;" f class:buffer
-brace_bad_light_indicator _HOME/core/.buffer.luadoc /^function brace_bad_light_indicator(buffer, use_indicator, indicator) end$/;" f class:buffer
-brace_highlight _HOME/core/.buffer.luadoc /^function brace_highlight(buffer, pos1, pos2) end$/;" f class:buffer
-brace_highlight_indicator _HOME/core/.buffer.luadoc /^function brace_highlight_indicator(buffer, use_indicator, indicator) end$/;" f class:buffer
+brace_bad_light _HOME/core/.view.luadoc /^function brace_bad_light(view, pos) end$/;" f class:view
+brace_bad_light_indicator _HOME/core/.view.luadoc /^function brace_bad_light_indicator(view, use_indicator, indicator) end$/;" f class:view
+brace_highlight _HOME/core/.view.luadoc /^function brace_highlight(view, pos1, pos2) end$/;" f class:view
+brace_highlight_indicator _HOME/core/.view.luadoc /^function brace_highlight_indicator(view, use_indicator, indicator) end$/;" f class:view
brace_match _HOME/core/.buffer.luadoc /^function brace_match(buffer, pos, max_re_style) end$/;" f class:buffer
brace_matches _HOME/modules/textadept/editing.lua /^M.brace_matches = {[40] = 1, [41] = 1, [91] = 1, [93] = 1, [123] = 1, [125] = 1}$/;" t class:textadept.editing
browser _HOME/modules/export/init.lua /^module('export')]]$/;" F class:export
@@ -442,27 +451,27 @@ build _HOME/modules/textadept/run.lua /^function M.build(root_directory)$/;" f c
build_commands _HOME/modules/textadept/run.lua /^M.build_commands = {--[[Ant]]['build.xml']='ant',--[[Dockerfile]]Dockerfile='docker build .',--[[Make]]Makefile='make',GNUmakefile='make',makefile='make',--[[Maven]]['pom.xml']='mvn',--[[Ruby]]Rakefile='rake'}$/;" t class:textadept.run
call_tip_active _HOME/core/.buffer.luadoc /^function call_tip_active(buffer) end$/;" f class:buffer
call_tip_cancel _HOME/core/.buffer.luadoc /^function call_tip_cancel(buffer) end$/;" f class:buffer
-call_tip_fore_hlt _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+call_tip_fore_hlt _HOME/core/.view.luadoc /^module('view')$/;" F class:view
call_tip_pos_start _HOME/core/.buffer.luadoc /^function call_tip_pos_start(buffer) end$/;" f class:buffer
call_tip_pos_start _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-call_tip_position _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-call_tip_set_hlt _HOME/core/.buffer.luadoc /^function call_tip_set_hlt(buffer, start_pos, end_pos) end$/;" f class:buffer
+call_tip_position _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+call_tip_set_hlt _HOME/core/.view.luadoc /^function call_tip_set_hlt(view, start_pos, end_pos) end$/;" f class:view
call_tip_show _HOME/core/.buffer.luadoc /^function call_tip_show(buffer, pos, text) end$/;" f class:buffer
-call_tip_use_style _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+call_tip_use_style _HOME/core/.view.luadoc /^module('view')$/;" F class:view
can_redo _HOME/core/.buffer.luadoc /^function can_redo(buffer) end$/;" f class:buffer
can_undo _HOME/core/.buffer.luadoc /^function can_undo(buffer) end$/;" f class:buffer
cancel _HOME/core/.buffer.luadoc /^function cancel(buffer) end$/;" f class:buffer
cancel_current _HOME/modules/textadept/snippets.lua /^function M.cancel_current()$/;" f class:textadept.snippets
-caret_fore _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-caret_line_back _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-caret_line_back_alpha _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-caret_line_frame _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-caret_line_visible _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-caret_line_visible_always _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-caret_period _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+caret_fore _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+caret_line_back _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+caret_line_back_alpha _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+caret_line_frame _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+caret_line_visible _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+caret_line_visible_always _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+caret_period _HOME/core/.view.luadoc /^module('view')$/;" F class:view
caret_sticky _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-caret_style _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-caret_width _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+caret_style _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+caret_width _HOME/core/.view.luadoc /^module('view')$/;" F class:view
char_at _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
char_left _HOME/core/.buffer.luadoc /^function char_left(buffer) end$/;" f class:buffer
char_left_extend _HOME/core/.buffer.luadoc /^function char_left_extend(buffer) end$/;" f class:buffer
@@ -477,8 +486,8 @@ clear _HOME/core/.buffer.luadoc /^function clear(buffer) end$/;" f class:buffer
clear _HOME/modules/textadept/bookmarks.lua /^function M.clear() buffer:marker_delete_all(M.MARK_BOOKMARK) end$/;" f class:textadept.bookmarks
clear_all _HOME/core/.buffer.luadoc /^function clear_all(buffer) end$/;" f class:buffer
clear_document_style _HOME/core/.buffer.luadoc /^function clear_document_style(buffer) end$/;" f class:buffer
-clear_registered_images _HOME/core/.buffer.luadoc /^function clear_registered_images(buffer) end$/;" f class:buffer
-clear_representation _HOME/core/.buffer.luadoc /^function clear_representation(buffer, char) end$/;" f class:buffer
+clear_registered_images _HOME/core/.view.luadoc /^function clear_registered_images(view) end$/;" f class:view
+clear_representation _HOME/core/.view.luadoc /^function clear_representation(view, char) end$/;" f class:view
clear_selections _HOME/core/.buffer.luadoc /^function clear_selections(buffer) end$/;" f class:buffer
clipboard_text _HOME/core/ui.lua /^module('ui')]]$/;" F class:ui
close _HOME/core/.buffer.luadoc /^function close(buffer, force) end$/;" f class:buffer
@@ -494,11 +503,11 @@ compile _HOME/modules/textadept/run.lua /^function M.compile(filename)$/;" f cla
compile_commands _HOME/modules/textadept/run.lua /^M.compile_commands = {actionscript='mxmlc "%f"',ada='gnatmake "%f"',ansi_c='gcc -o "%e" "%f"',antlr='antlr4 "%f"',g='antlr3 "%f"',applescript='osacompile "%f" -o "%e.scpt"',asm='nasm "%f"'--[[ && ld "%e.o" -o "%e"']],boo='booc "%f"',caml='ocamlc -o "%e" "%f"',csharp=WIN32 and 'csc "%f"' or 'mcs "%f"',coffeescript='coffee -c "%f"',context='context --nonstopmode "%f"',cpp='g++ -o "%e" "%f"',cuda=WIN32 and 'nvcc -o "%e.exe" "%f"' or 'nvcc -o "%e" "%f"',dmd='dmd "%f"',dot='dot -Tps "%f" -o "%e.ps"',eiffel='se c "%f"',elixir='elixirc "%f"',erlang='erl -compile "%e"',faust='faust -o "%e.cpp" "%f"',fsharp=WIN32 and 'fsc.exe "%f"' or 'mono fsc.exe "%f"',fortran='gfortran -o "%e" "%f"',gap='gac -o "%e" "%f"',go='go build "%f"',groovy='groovyc "%f"',haskell=WIN32 and 'ghc -o "%e.exe" "%f"' or 'ghc -o "%e" "%f"',inform=function() return 'inform -c "'..buffer.filename:match('^(.+%.inform[/\\])Source')..'"' end,java='javac "%f"',ltx='pdflatex -file-line-error -halt-on-error "%f"',less='lessc --no-color "%f" "%e.css"',lilypond='lilypond "%f"',lisp='clisp -c "%f"',litcoffee='coffee -c "%f"',lua='luac -o "%e.luac" "%f"',moon='moonc "%f"',markdown='markdown "%f" > "%e.html"',myr='mbld -b "%e" "%f"',nemerle='ncc "%f" -out:"%e.exe"',nim='nim c "%f"',nsis='MakeNSIS "%f"',objective_c='gcc -o "%e" "%f"',pascal='fpc "%f"',perl='perl -c "%f"',php='php -l "%f"',prolog='gplc --no-top-level "%f"',python='python -m py_compile "%f"',ruby='ruby -c "%f"',rust='rustc "%f"',sass='sass "%f" "%e.css"',scala='scalac "%f"',sml='mlton "%f"',tex='pdflatex -file-line-error -halt-on-error "%f"',vala='valac "%f"',vb=WIN32 and 'vbc "%f"' or 'vbnc "%f"',}$/;" t class:textadept.run
complete_lua _HOME/modules/lua_repl/init.lua /^function M.complete_lua()$/;" f class:lua_repl
connect _HOME/core/events.lua /^function M.connect(event, f, index)$/;" f class:events
-constants _HOME/core/iface.lua /^M.constants = {ACCESSIBILITY_DISABLED=0,ACCESSIBILITY_ENABLED=1,ALPHA_NOALPHA=256,ALPHA_OPAQUE=255,ALPHA_TRANSPARENT=0,ANNOTATION_BOXED=2,ANNOTATION_HIDDEN=0,ANNOTATION_INDENTED=3,ANNOTATION_STANDARD=1,AUTOMATICFOLD_CHANGE=0x0004,AUTOMATICFOLD_CLICK=0x0002,AUTOMATICFOLD_SHOW=0x0001,CARETSTICKY_OFF=0,CARETSTICKY_ON=1,CARETSTICKY_WHITESPACE=2,CARETSTYLE_BLOCK=2,CARETSTYLE_BLOCK_AFTER=0x100,CARETSTYLE_INS_MASK=0xF,CARETSTYLE_INVISIBLE=0,CARETSTYLE_LINE=1,CARETSTYLE_OVERSTRIKE_BAR=0,CARETSTYLE_OVERSTRIKE_BLOCK=0x10,CARET_EVEN=0x08,CARET_JUMPS=0x10,CARET_SLOP=0x01,CARET_STRICT=0x04,CASEINSENSITIVEBEHAVIOUR_IGNORECASE=1,CASEINSENSITIVEBEHAVIOUR_RESPECTCASE=0,CASE_CAMEL=3,CASE_LOWER=2,CASE_MIXED=0,CASE_UPPER=1,CHARACTERSOURCE_DIRECT_INPUT=0,CHARACTERSOURCE_IME_RESULT=2,CHARACTERSOURCE_TENTATIVE_INPUT=1,CP_UTF8=65001,CURSORARROW=2,CURSORNORMAL=-1,CURSORREVERSEARROW=7,CURSORWAIT=4,EDGE_BACKGROUND=2,EDGE_LINE=1,EDGE_MULTILINE=3,EDGE_NONE=0,EOL_CR=1,EOL_CRLF=0,EOL_LF=2,FIND_CXX11REGEX=0x00800000,FIND_MATCHCASE=0x4,FIND_NONE=0x0,FIND_REGEXP=10485760,FIND_WHOLEWORD=0x2,FIND_WORDSTART=0x00100000,FOLDACTION_CONTRACT=0,FOLDACTION_EXPAND=1,FOLDACTION_TOGGLE=2,FOLDDISPLAYTEXT_BOXED=2,FOLDDISPLAYTEXT_HIDDEN=0,FOLDDISPLAYTEXT_STANDARD=1,FOLDFLAG_LEVELNUMBERS=0x0040,FOLDFLAG_LINEAFTER_CONTRACTED=0x0010,FOLDFLAG_LINEAFTER_EXPANDED=0x0008,FOLDFLAG_LINEBEFORE_CONTRACTED=0x0004,FOLDFLAG_LINEBEFORE_EXPANDED=0x0002,FOLDFLAG_LINESTATE=0x0080,FOLDLEVELBASE=0x400,FOLDLEVELHEADERFLAG=0x2000,FOLDLEVELNUMBERMASK=0x0FFF,FOLDLEVELWHITEFLAG=0x1000,IDLESTYLING_AFTERVISIBLE=2,IDLESTYLING_ALL=3,IDLESTYLING_NONE=0,IDLESTYLING_TOVISIBLE=1,IME_INLINE=1,IME_WINDOWED=0,INDICATOR_CONTAINER=9,INDICATOR_IME=33,INDICATOR_IME_MAX=36,INDICATOR_MAX=36,INDIC_BOX=6,INDIC_COMPOSITIONTHICK=14,INDIC_COMPOSITIONTHIN=15,INDIC_CONTAINER=9,INDIC_DASH=9,INDIC_DIAGONAL=3,INDIC_DOTBOX=12,INDIC_DOTS=10,INDIC_FULLBOX=16,INDIC_GRADIENT=20,INDIC_GRADIENTCENTRE=21,INDIC_HIDDEN=5,INDIC_IME=33,INDIC_IME_MAX=36,INDIC_MAX=36,INDIC_PLAIN=0,INDIC_POINT=18,INDIC_POINTCHARACTER=19,INDIC_ROUNDBOX=7,INDIC_SQUIGGLE=1,INDIC_SQUIGGLELOW=11,INDIC_SQUIGGLEPIXMAP=13,INDIC_STRAIGHTBOX=8,INDIC_STRIKE=4,INDIC_TEXTFORE=17,INDIC_TT=2,IV_LOOKBOTH=3,IV_LOOKFORWARD=2,IV_NONE=0,IV_REAL=1,LASTSTEPINUNDOREDO=0x100,MARGINOPTION_NONE=0,MARGINOPTION_SUBLINESELECT=1,MARGIN_BACK=2,MARGIN_COLOUR=6,MARGIN_FORE=3,MARGIN_NUMBER=1,MARGIN_RTEXT=5,MARGIN_SYMBOL=0,MARGIN_TEXT=4,MARKER_MAX=32,MARKNUM_FOLDER=31,MARKNUM_FOLDEREND=26,MARKNUM_FOLDERMIDTAIL=28,MARKNUM_FOLDEROPEN=32,MARKNUM_FOLDEROPENMID=27,MARKNUM_FOLDERSUB=30,MARKNUM_FOLDERTAIL=29,MARK_ARROW=2,MARK_ARROWDOWN=6,MARK_ARROWS=24,MARK_AVAILABLE=28,MARK_BACKGROUND=22,MARK_BOOKMARK=31,MARK_BOXMINUS=14,MARK_BOXMINUSCONNECTED=15,MARK_BOXPLUS=12,MARK_BOXPLUSCONNECTED=13,MARK_CHARACTER=10000,MARK_CIRCLE=0,MARK_CIRCLEMINUS=20,MARK_CIRCLEMINUSCONNECTED=21,MARK_CIRCLEPLUS=18,MARK_CIRCLEPLUSCONNECTED=19,MARK_DOTDOTDOT=23,MARK_EMPTY=5,MARK_FULLRECT=26,MARK_LCORNER=10,MARK_LCORNERCURVE=16,MARK_LEFTRECT=27,MARK_MINUS=7,MARK_PIXMAP=25,MARK_PLUS=8,MARK_RGBAIMAGE=30,MARK_ROUNDRECT=1,MARK_SHORTARROW=4,MARK_SMALLRECT=3,MARK_TCORNER=11,MARK_TCORNERCURVE=17,MARK_UNDERLINE=29,MARK_VERTICALBOOKMARK=32,MARK_VLINE=9,MASK_FOLDERS=0xFE000000,MAX_MARGIN=5,MODEVENTMASKALL=0x3FFFFF,MOD_ALT=4,MOD_BEFOREDELETE=0x800,MOD_BEFOREINSERT=0x400,MOD_CHANGEANNOTATION=0x20000,MOD_CHANGEFOLD=0x8,MOD_CHANGEINDICATOR=0x4000,MOD_CHANGELINESTATE=0x8000,MOD_CHANGEMARGIN=0x10000,MOD_CHANGEMARKER=0x200,MOD_CHANGESTYLE=0x4,MOD_CHANGETABSTOPS=0x200000,MOD_CONTAINER=0x40000,MOD_CTRL=2,MOD_DELETETEXT=0x2,MOD_INSERTCHECK=0x100000,MOD_INSERTTEXT=0x1,MOD_LEXERSTATE=0x80000,MOD_META=16,MOD_NONE=0x0,MOD_NORM=0,MOD_SHIFT=1,MOD_SUPER=8,MOUSE_DRAG=2,MOUSE_PRESS=1,MOUSE_RELEASE=3,MULTIAUTOC_EACH=1,MULTIAUTOC_ONCE=0,MULTILINEUNDOREDO=0x1000,MULTIPASTE_EACH=1,MULTIPASTE_ONCE=0,MULTISTEPUNDOREDO=0x80,ORDER_CUSTOM=2,ORDER_PERFORMSORT=1,ORDER_PRESORTED=0,PERFORMED_REDO=0x40,PERFORMED_UNDO=0x20,PERFORMED_USER=0x10,SEL_LINES=2,SEL_RECTANGLE=1,SEL_STREAM=0,SEL_THIN=3,STARTACTION=0x2000,STYLE_BRACEBAD=35,STYLE_BRACELIGHT=34,STYLE_CALLTIP=38,STYLE_CONTROLCHAR=36,STYLE_DEFAULT=32,STYLE_FOLDDISPLAYTEXT=39,STYLE_INDENTGUIDE=37,STYLE_LASTPREDEFINED=39,STYLE_LINENUMBER=33,STYLE_MAX=256,TD_LONGARROW=0,TD_STRIKEOUT=1,TIME_FOREVER=10000000,UNDO_NONE=0,UPDATE_CONTENT=0x1,UPDATE_H_SCROLL=0x8,UPDATE_SELECTION=0x2,UPDATE_V_SCROLL=0x4,VISIBLE_SLOP=0x01,VISIBLE_STRICT=0x04,VS_NONE=0,VS_NOWRAPLINESTART=4,VS_RECTANGULARSELECTION=1,VS_USERACCESSIBLE=2,WRAPINDENT_DEEPINDENT=3,WRAPINDENT_FIXED=0,WRAPINDENT_INDENT=2,WRAPINDENT_SAME=1,WRAPVISUALFLAGLOC_DEFAULT=0x0000,WRAPVISUALFLAGLOC_END_BY_TEXT=0x0001,WRAPVISUALFLAGLOC_START_BY_TEXT=0x0002,WRAPVISUALFLAG_END=0x0001,WRAPVISUALFLAG_MARGIN=0x0004,WRAPVISUALFLAG_NONE=0x0000,WRAPVISUALFLAG_START=0x0002,WRAP_CHAR=2,WRAP_NONE=0,WRAP_WHITESPACE=3,WRAP_WORD=1,WS_INVISIBLE=0,WS_VISIBLEAFTERINDENT=2,WS_VISIBLEALWAYS=1,WS_VISIBLEONLYININDENT=3}$/;" t class:_SCINTILLA
+constants _HOME/core/iface.lua /^M.constants = {ACCESSIBILITY_DISABLED=0,ACCESSIBILITY_ENABLED=1,ALPHA_NOALPHA=256,ALPHA_OPAQUE=255,ALPHA_TRANSPARENT=0,ANNOTATION_BOXED=2,ANNOTATION_HIDDEN=0,ANNOTATION_INDENTED=3,ANNOTATION_STANDARD=1,AUTOMATICFOLD_CHANGE=0x0004,AUTOMATICFOLD_CLICK=0x0002,AUTOMATICFOLD_SHOW=0x0001,CARETSTICKY_OFF=0,CARETSTICKY_ON=1,CARETSTICKY_WHITESPACE=2,CARETSTYLE_BLOCK=2,CARETSTYLE_BLOCK_AFTER=0x100,CARETSTYLE_INS_MASK=0xF,CARETSTYLE_INVISIBLE=0,CARETSTYLE_LINE=1,CARETSTYLE_OVERSTRIKE_BAR=0,CARETSTYLE_OVERSTRIKE_BLOCK=0x10,CARET_EVEN=0x08,CARET_JUMPS=0x10,CARET_SLOP=0x01,CARET_STRICT=0x04,CASEINSENSITIVEBEHAVIOUR_IGNORECASE=1,CASEINSENSITIVEBEHAVIOUR_RESPECTCASE=0,CASE_CAMEL=3,CASE_LOWER=2,CASE_MIXED=0,CASE_UPPER=1,CHARACTERSOURCE_DIRECT_INPUT=0,CHARACTERSOURCE_IME_RESULT=2,CHARACTERSOURCE_TENTATIVE_INPUT=1,CP_UTF8=65001,CURSORARROW=2,CURSORNORMAL=-1,CURSORREVERSEARROW=7,CURSORWAIT=4,EDGE_BACKGROUND=2,EDGE_LINE=1,EDGE_MULTILINE=3,EDGE_NONE=0,EOL_CR=1,EOL_CRLF=0,EOL_LF=2,FIND_CXX11REGEX=0x00800000,FIND_MATCHCASE=0x4,FIND_NONE=0x0,FIND_REGEXP=10485760,FIND_WHOLEWORD=0x2,FIND_WORDSTART=0x00100000,FOLDACTION_CONTRACT=0,FOLDACTION_EXPAND=1,FOLDACTION_TOGGLE=2,FOLDDISPLAYTEXT_BOXED=2,FOLDDISPLAYTEXT_HIDDEN=0,FOLDDISPLAYTEXT_STANDARD=1,FOLDFLAG_LEVELNUMBERS=0x0040,FOLDFLAG_LINEAFTER_CONTRACTED=0x0010,FOLDFLAG_LINEAFTER_EXPANDED=0x0008,FOLDFLAG_LINEBEFORE_CONTRACTED=0x0004,FOLDFLAG_LINEBEFORE_EXPANDED=0x0002,FOLDFLAG_LINESTATE=0x0080,FOLDLEVELBASE=0x400,FOLDLEVELHEADERFLAG=0x2000,FOLDLEVELNUMBERMASK=0x0FFF,FOLDLEVELWHITEFLAG=0x1000,IDLESTYLING_AFTERVISIBLE=2,IDLESTYLING_ALL=3,IDLESTYLING_NONE=0,IDLESTYLING_TOVISIBLE=1,IME_INLINE=1,IME_WINDOWED=0,INDICATOR_CONTAINER=9,INDICATOR_IME=33,INDICATOR_IME_MAX=36,INDICATOR_MAX=36,INDIC_BOX=6,INDIC_COMPOSITIONTHICK=14,INDIC_COMPOSITIONTHIN=15,INDIC_CONTAINER=8,INDIC_DASH=9,INDIC_DIAGONAL=3,INDIC_DOTBOX=12,INDIC_DOTS=10,INDIC_FULLBOX=16,INDIC_GRADIENT=20,INDIC_GRADIENTCENTRE=21,INDIC_HIDDEN=5,INDIC_IME=32,INDIC_IME_MAX=35,INDIC_MAX=35,INDIC_PLAIN=0,INDIC_POINT=18,INDIC_POINTCHARACTER=19,INDIC_ROUNDBOX=7,INDIC_SQUIGGLE=1,INDIC_SQUIGGLELOW=11,INDIC_SQUIGGLEPIXMAP=13,INDIC_STRAIGHTBOX=8,INDIC_STRIKE=4,INDIC_TEXTFORE=17,INDIC_TT=2,IV_LOOKBOTH=3,IV_LOOKFORWARD=2,IV_NONE=0,IV_REAL=1,LASTSTEPINUNDOREDO=0x100,MARGINOPTION_NONE=0,MARGINOPTION_SUBLINESELECT=1,MARGIN_BACK=2,MARGIN_COLOUR=6,MARGIN_FORE=3,MARGIN_NUMBER=1,MARGIN_RTEXT=5,MARGIN_SYMBOL=0,MARGIN_TEXT=4,MARKER_MAX=32,MARKNUM_FOLDER=31,MARKNUM_FOLDEREND=26,MARKNUM_FOLDERMIDTAIL=28,MARKNUM_FOLDEROPEN=32,MARKNUM_FOLDEROPENMID=27,MARKNUM_FOLDERSUB=30,MARKNUM_FOLDERTAIL=29,MARK_ARROW=2,MARK_ARROWDOWN=6,MARK_ARROWS=24,MARK_AVAILABLE=28,MARK_BACKGROUND=22,MARK_BOOKMARK=31,MARK_BOXMINUS=14,MARK_BOXMINUSCONNECTED=15,MARK_BOXPLUS=12,MARK_BOXPLUSCONNECTED=13,MARK_CHARACTER=10000,MARK_CIRCLE=0,MARK_CIRCLEMINUS=20,MARK_CIRCLEMINUSCONNECTED=21,MARK_CIRCLEPLUS=18,MARK_CIRCLEPLUSCONNECTED=19,MARK_DOTDOTDOT=23,MARK_EMPTY=5,MARK_FULLRECT=26,MARK_LCORNER=10,MARK_LCORNERCURVE=16,MARK_LEFTRECT=27,MARK_MINUS=7,MARK_PIXMAP=25,MARK_PLUS=8,MARK_RGBAIMAGE=30,MARK_ROUNDRECT=1,MARK_SHORTARROW=4,MARK_SMALLRECT=3,MARK_TCORNER=11,MARK_TCORNERCURVE=17,MARK_UNDERLINE=29,MARK_VERTICALBOOKMARK=32,MARK_VLINE=9,MASK_FOLDERS=0xFE000000,MAX_MARGIN=5,MODEVENTMASKALL=0x3FFFFF,MOD_ALT=4,MOD_BEFOREDELETE=0x800,MOD_BEFOREINSERT=0x400,MOD_CHANGEANNOTATION=0x20000,MOD_CHANGEFOLD=0x8,MOD_CHANGEINDICATOR=0x4000,MOD_CHANGELINESTATE=0x8000,MOD_CHANGEMARGIN=0x10000,MOD_CHANGEMARKER=0x200,MOD_CHANGESTYLE=0x4,MOD_CHANGETABSTOPS=0x200000,MOD_CONTAINER=0x40000,MOD_CTRL=2,MOD_DELETETEXT=0x2,MOD_INSERTCHECK=0x100000,MOD_INSERTTEXT=0x1,MOD_LEXERSTATE=0x80000,MOD_META=16,MOD_NONE=0x0,MOD_NORM=0,MOD_SHIFT=1,MOD_SUPER=8,MOUSE_DRAG=2,MOUSE_PRESS=1,MOUSE_RELEASE=3,MULTIAUTOC_EACH=1,MULTIAUTOC_ONCE=0,MULTILINEUNDOREDO=0x1000,MULTIPASTE_EACH=1,MULTIPASTE_ONCE=0,MULTISTEPUNDOREDO=0x80,ORDER_CUSTOM=2,ORDER_PERFORMSORT=1,ORDER_PRESORTED=0,PERFORMED_REDO=0x40,PERFORMED_UNDO=0x20,PERFORMED_USER=0x10,SEL_LINES=2,SEL_RECTANGLE=1,SEL_STREAM=0,SEL_THIN=3,STARTACTION=0x2000,STYLE_BRACEBAD=36,STYLE_BRACELIGHT=35,STYLE_CALLTIP=39,STYLE_CONTROLCHAR=37,STYLE_DEFAULT=33,STYLE_FOLDDISPLAYTEXT=40,STYLE_INDENTGUIDE=38,STYLE_LASTPREDEFINED=40,STYLE_LINENUMBER=34,STYLE_MAX=256,TD_LONGARROW=0,TD_STRIKEOUT=1,TIME_FOREVER=10000000,UNDO_NONE=0,UPDATE_CONTENT=0x1,UPDATE_H_SCROLL=0x8,UPDATE_SELECTION=0x2,UPDATE_V_SCROLL=0x4,VISIBLE_SLOP=0x01,VISIBLE_STRICT=0x04,VS_NONE=0,VS_NOWRAPLINESTART=4,VS_RECTANGULARSELECTION=1,VS_USERACCESSIBLE=2,WRAPINDENT_DEEPINDENT=3,WRAPINDENT_FIXED=0,WRAPINDENT_INDENT=2,WRAPINDENT_SAME=1,WRAPVISUALFLAGLOC_DEFAULT=0x0000,WRAPVISUALFLAGLOC_END_BY_TEXT=0x0001,WRAPVISUALFLAGLOC_START_BY_TEXT=0x0002,WRAPVISUALFLAG_END=0x0001,WRAPVISUALFLAG_MARGIN=0x0004,WRAPVISUALFLAG_NONE=0x0000,WRAPVISUALFLAG_START=0x0002,WRAP_CHAR=2,WRAP_NONE=0,WRAP_WHITESPACE=3,WRAP_WORD=1,WS_INVISIBLE=0,WS_VISIBLEAFTERINDENT=2,WS_VISIBLEALWAYS=1,WS_VISIBLEONLYININDENT=3}$/;" t class:_SCINTILLA
context_menu _HOME/core/ui.lua /^module('ui')]]$/;" F class:ui
context_menu _HOME/modules/textadept/menu.lua /^local default_context_menu = {$/;" t class:textadept.menu
continue _HOME/modules/debugger/init.lua /^function M.continue(lexer, ...)$/;" f class:debugger
-contracted_fold_next _HOME/core/.buffer.luadoc /^function contracted_fold_next(buffer, line) end$/;" f class:buffer
+contracted_fold_next _HOME/core/.view.luadoc /^function contracted_fold_next(view, line) end$/;" f class:view
control_structure_patterns _HOME/modules/ruby/init.lua /^local control_structure_patterns = {$/;" t class:_M.ruby
convert_eols _HOME/core/.buffer.luadoc /^function convert_eols(buffer, mode) end$/;" f class:buffer
convert_indentation _HOME/modules/textadept/editing.lua /^function M.convert_indentation()$/;" f class:textadept.editing
@@ -515,7 +524,7 @@ ctags _HOME/modules/ctags/init.lua /^module('ctags')]]$/;" F class:ctags
ctags _HOME/modules/ctags/init.lua /^module('ctags')]]$/;" m
ctags_flags _HOME/modules/ctags/init.lua /^M.ctags_flags = {}$/;" t class:ctags
current_pos _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-cursor _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+cursor _HOME/core/.view.luadoc /^module('view')$/;" F class:view
cut _HOME/core/.buffer.luadoc /^function cut(buffer) end$/;" f class:buffer
cycle_history_next _HOME/modules/lua_repl/init.lua /^function M.cycle_history_next()$/;" f class:lua_repl
cycle_history_prev _HOME/modules/lua_repl/init.lua /^function M.cycle_history_prev()$/;" f class:lua_repl
@@ -533,7 +542,6 @@ delete _HOME/core/.buffer.luadoc /^function delete(buffer) end$/;" f class:buffe
delete_back _HOME/core/.buffer.luadoc /^function delete_back(buffer) end$/;" f class:buffer
delete_back_not_line _HOME/core/.buffer.luadoc /^function delete_back_not_line(buffer) end$/;" f class:buffer
delete_range _HOME/core/.buffer.luadoc /^function delete_range(buffer, pos, length) end$/;" f class:buffer
-delimited_range _HOME/lexers/lexer.lua /^function M.delimited_range(chars, single_line, no_escape, balanced)$/;" f class:lexer
dialog _HOME/core/ui.lua /^local dialog$/;" f class:ui
dialogs _HOME/core/.ui.dialogs.luadoc /^module('ui.dialogs')$/;" m class:ui
diff _HOME/modules/file_diff/init.lua /^function _G.diff(text1, text2) end$/;" f
@@ -541,16 +549,16 @@ digit _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
dir_foreach _HOME/core/lfs_ext.lua /^function lfs.dir_foreach(dir, f, filter, n, include_dirs, level)$/;" f class:lfs
disable_listening _HOME/modules/history/init.lua /^function M.disable_listening()$/;" f class:history
disconnect _HOME/core/events.lua /^function M.disconnect(event, f)$/;" f class:events
-doc_line_from_visible _HOME/core/.buffer.luadoc /^function doc_line_from_visible(buffer, display_line) end$/;" f class:buffer
+doc_line_from_visible _HOME/core/.view.luadoc /^function doc_line_from_visible(view, display_line) end$/;" f class:view
document_end _HOME/core/.buffer.luadoc /^function document_end(buffer) end$/;" f class:buffer
document_end_extend _HOME/core/.buffer.luadoc /^function document_end_extend(buffer) end$/;" f class:buffer
document_start _HOME/core/.buffer.luadoc /^function document_start(buffer) end$/;" f class:buffer
document_start_extend _HOME/core/.buffer.luadoc /^function document_start_extend(buffer) end$/;" f class:buffer
drop_selection_n _HOME/core/.buffer.luadoc /^function drop_selection_n(buffer, n) end$/;" f class:buffer
dropdown _HOME/core/.ui.dialogs.luadoc /^function dropdown(options) end$/;" f class:ui.dialogs
-edge_colour _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-edge_column _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-edge_mode _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+edge_colour _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+edge_column _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+edge_mode _HOME/core/.view.luadoc /^module('view')$/;" F class:view
edit_toggle_overtype _HOME/core/.buffer.luadoc /^function edit_toggle_overtype(buffer) end$/;" f class:buffer
editing _HOME/modules/textadept/editing.lua /^module('textadept.editing')]]$/;" m class:textadept
editing_keys _HOME/modules/textadept/command_entry.lua /^M.editing_keys = {__index = {$/;" t class:ui.command_entry
@@ -561,11 +569,11 @@ enable_listening _HOME/modules/history/init.lua /^function M.enable_listening()$
enclose _HOME/modules/textadept/editing.lua /^function M.enclose(left, right)$/;" f class:textadept.editing
encoding _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
encodings _HOME/core/file_io.lua /^io.encodings = {'UTF-8', 'ASCII', 'CP1252', 'UTF-16'}$/;" t class:io
-end_at_last_line _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+end_at_last_line _HOME/core/.view.luadoc /^module('view')$/;" F class:view
end_styled _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
end_undo_action _HOME/core/.buffer.luadoc /^function end_undo_action(buffer) end$/;" f class:buffer
-ensure_visible _HOME/core/.buffer.luadoc /^function ensure_visible(buffer, line) end$/;" f class:buffer
-ensure_visible_enforce_policy _HOME/core/.buffer.luadoc /^function ensure_visible_enforce_policy(buffer, line) end$/;" f class:buffer
+ensure_visible _HOME/core/.view.luadoc /^function ensure_visible(view, line) end$/;" f class:view
+ensure_visible_enforce_policy _HOME/core/.view.luadoc /^function ensure_visible_enforce_policy(view, line) end$/;" f class:view
eol_mode _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
error_patterns _HOME/modules/textadept/run.lua /^M.error_patterns = {actionscript={'^(.-)%((%d+)%): col: (%d+) (.+)$'},ada={'^(.-):(%d+):(%d+):%s*(.*)$','^[^:]+: (.-):(%d+) (.+)$'},ansi_c={'^(.-):(%d+):(%d+): (.+)$'},antlr={'^error%(%d+%): (.-):(%d+):(%d+): (.+)$','^warning%(%d+%): (.-):(%d+):(%d+): (.+)$'},--[[ANTLR]]g={'^error%(%d+%): (.-):(%d+):(%d+): (.+)$','^warning%(%d+%): (.-):(%d+):(%d+): (.+)$'},asm={'^(.-):(%d+): (.+)$'},awk={'^awk: (.-):(%d+): (.+)$'},boo={'^(.-)%((%d+),(%d+)%): (.+)$'},caml={'^%s*File "(.-)", line (%d+), characters (%d+)'},chuck={'^(.-)line%((%d+)%)%.char%((%d+)%): (.+)$'},cmake={'^CMake Error at (.-):(%d+)','^(.-):(%d+):$'},coffeescript={'^(.-):(%d+):(%d+): (.+)$'},context={'error on line (%d+) in file (.-): (.+)$'},cpp={'^(.-):(%d+):(%d+): (.+)$'},csharp={'^(.-)%((%d+),(%d+)%): (.+)$'},cuda={'^(.-)%((%d+)%): (error.+)$'},dart={"^'(.-)': error: line (%d+) pos (%d+): (.+)$",'%(file://(.-):(%d+):(%d+)%)'},dmd={'^(.-)%((%d+)%): (Error.+)$'},dot={'^Warning: (.-): (.+) in line (%d+)'},eiffel={'^Line (%d+) columns? .- in .- %((.-)%):$','^line (%d+) column (%d+) file (.-)$'},elixir={'^(.-):(%d+): (.+)$','Error%) (.-):(%d+): (.+)$'},erlang={'^(.-):(%d+): (.+)$'},faust={'^(.-):(%d+):(.+)$'},forth={'^(.-):(%d+): (.+)$'},fortran={'^(.-):(%d+)%D+(%d+):%s*(.*)$'},fsharp={'^(.-)%((%d+),(%d+)%): (.+)$'},gap={'^(.+) in (.-) line (%d+)$'},gnuplot={'^"(.-)", line (%d+): (.+)$'},go={'^(.-):(%d+): (.+)$'},groovy={'^%s+at .-%((.-):(%d+)%)$','^(.-):(%d+): (.+)$'},haskell={'^(.-):(%d+):(%d+):%s*(.*)$'},icon={'^File (.-); Line (%d+) # (.+)$','^.-from line (%d+) in (.-)$'},java={'^%s+at .-%((.-):(%d+)%)$','^(.-):(%d+): (.+)$'},javascript={'^%s+at .-%((.-):(%d+):(%d+)%)$','^%s+at (.-):(%d+):(%d+)$','^(.-):(%d+):?$'},ltx={'^(.-):(%d+): (.+)$'},less={'^(.+) in (.-) on line (%d+), column (%d+):$'},lilypond={'^(.-):(%d+):(%d+):%s*(.*)$'},litcoffee={'^(.-):(%d+):(%d+): (.+)$'},lua={'^luac?: (.-):(%d+): (.+)$'},makefile={'^(.-):(%d+): (.+)$'},nemerle={'^(.-)%((%d+),(%d+)%): (.+)$'},nim={'^(.-)%((%d+), (%d+)%) (%w+:.+)$'},objective_c={'^(.-):(%d+):(%d+): (.+)$'},pascal={'^(.-)%((%d+),(%d+)%) (%w+:.+)$'},perl={'^(.+) at (.-) line (%d+)'},php={'^(.+) in (.-) on line (%d+)$'},pike={'^(.-):(%d+):(.+)$'},prolog={'^(.-):(%d+):(%d+): (.+)$','^(.-):(%d+): (.+)$'},pure={'^(.-), line (%d+): (.+)$'},python={'^%s*File "(.-)", line (%d+)'},rexx={'^Error %d+ running "(.-)", line (%d+): (.+)$'},ruby={'^%s+from (.-):(%d+):','^(.-):(%d+):%s*(.+)$'},rust={'^(.-):(%d+):(%d+): (.+)$',"panicked at '([^']+)', (.-):(%d+)"},sass={'^WARNING on line (%d+) of (.-):$','^%s+on line (%d+) of (.-)$'},scala={'^%s+at .-%((.-):(%d+)%)$','^(.-):(%d+): (.+)$'},sh={'^(.-): (%d+): %1: (.+)$'},bash={'^(.-): line (%d+): (.+)$'},zsh={'^(.-):(%d+): (.+)$'},smalltalk={'^(.-):(%d+): (.+)$','%((.-):(%d+)%)$'},snobol4={'^(.-):(%d+): (.+)$'},tcl={'^%s*%(file "(.-)" line (%d+)%)$'},tex={'^(.-):(%d+): (.+)$'},vala={'^(.-):(%d+)%.(%d+)[%-%.%d]+: (.+)$','^(.-):(%d+):(%d+): (.+)$'},vb={'^(.-)%((%d+),(%d+)%): (.+)$'}}$/;" t class:textadept.run
evaluate_repl _HOME/modules/lua_repl/init.lua /^function M.evaluate_repl()$/;" f class:lua_repl
@@ -577,8 +585,8 @@ expr_types _HOME/modules/python/init.lua /^M.expr_types = {$/;" t class:_M.pytho
expr_types _HOME/modules/ruby/init.lua /^M.expr_types = {$/;" t class:_M.ruby
extend _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
extensions _HOME/modules/textadept/file_types.lua /^M.extensions = {--[[Actionscript]]as='actionscript',asc='actionscript',--[[Ada]]adb='ada',ads='ada',--[[ANTLR]]g='antlr',g4='antlr',--[[APDL]]ans='apdl',inp='apdl',mac='apdl',--[[APL]]apl='apl',--[[Applescript]]applescript='applescript',--[[ASM]]asm='asm',ASM='asm',s='asm',S='asm',--[[ASP]]asa='asp',asp='asp',hta='asp',--[[AutoIt]]au3='autoit',a3x='autoit',--[[AWK]]awk='awk',--[[Batch]]bat='batch',cmd='batch',--[[BibTeX]]bib='bibtex',--[[Boo]]boo='boo',--[[C#]]cs='csharp',--[[C/C++]]c='ansi_c',cc='cpp',C='ansi_c',cpp='cpp',cxx='cpp',['c++']='cpp',h='cpp',hh='cpp',hpp='cpp',hxx='cpp',['h++']='cpp',--[[ChucK]]ck='chuck',--[[CMake]]cmake='cmake',['cmake.in']='cmake',ctest='cmake',['ctest.in']='cmake',--[[CoffeeScript]]coffee='coffeescript',--[[Crystal]]cr='crystal',--[[CSS]]css='css',--[[CUDA]]cu='cuda',cuh='cuda',--[[D]]d='dmd',di='dmd',--[[Dart]]dart='dart',--[[Desktop]]desktop='desktop',--[[diff]]diff='diff',patch='diff',--[[Dockerfile]]Dockerfile='dockerfile',--[[dot]]dot='dot',--[[Eiffel]]e='eiffel',eif='eiffel',--[[Elixir]]ex='elixir',exs='elixir',--[[Erlang]]erl='erlang',hrl='erlang',--[[F#]]fs='fsharp',--[[Faust]]dsp='faust',--[[Fish]]fish='fish',--[[Forth]]forth='forth',frt='forth',fs='forth',--[[Fortran]]f='fortran',['for']='fortran',ftn='fortran',fpp='fortran',f77='fortran',f90='fortran',f95='fortran',f03='fortran',f08='fortran',--[[Gap]]g='gap',gd='gap',gi='gap',gap='gap',--[[Gettext]]po='gettext',pot='gettext',--[[Gherkin]]feature='gherkin',--[[GLSL]]glslf='glsl',glslv='glsl',--[[GNUPlot]]dem='gnuplot',plt='gnuplot',--[[Go]]go='go',--[[Groovy]]groovy='groovy',gvy='groovy',--[[Gtkrc]]gtkrc='gtkrc',--[[Haskell]]hs='haskell',--[[HTML]]htm='html',html='html',shtm='html',shtml='html',xhtml='html',vue='html',--[[Icon]]icn='icon',--[[IDL]]idl='idl',odl='idl',--[[Inform]]inf='inform',ni='inform',--[[ini]]cfg='ini',cnf='ini',inf='ini',ini='ini',reg='ini',--[[Io]]io='io_lang',--[[Java]]bsh='java',java='java',--[[Javascript]]js='javascript',jsfl='javascript',--[[JSON]]json='json',--[[JSP]]jsp='jsp',--[[LaTeX]]bbl='latex',dtx='latex',ins='latex',ltx='latex',tex='latex',sty='latex',--[[Ledger]]ledger='ledger',journal='ledger',--[[LESS]]less='less',--[[LilyPond]]lily='lilypond',ly='lilypond',--[[Lisp]]cl='lisp',el='lisp',lisp='lisp',lsp='lisp',--[[Literate Coffeescript]]litcoffee='litcoffee',--[[Logtalk]]lgt='logtalk',--[[Lua]]lua='lua',--[[Makefile]]GNUmakefile='makefile',iface='makefile',mak='makefile',makefile='makefile',Makefile='makefile',--[[Man]]['1']='man',['2']='man',['3']='man',['4']='man',['5']='man',['6']='man',['7']='man',['8']='man',['9']='man',['1x']='man',['2x']='man',['3x']='man',['4x']='man',['5x']='man',['6x']='man',['7x']='man',['8x']='man',['9x']='man',--[[Markdown]]md='markdown',--[[MoonScript]]moon='moonscript',--[[Myrddin]]myr='myrddin',--[[Nemerle]]n='nemerle',--[[Nim]]nim='nim',--[[NSIS]]nsh='nsis',nsi='nsis',nsis='nsis',--[[Objective C]]m='objective_c',mm='objective_c',objc='objective_c',--[[OCaml]]caml='caml',ml='caml',mli='caml',mll='caml',mly='caml',--[[Pascal]]dpk='pascal',dpr='pascal',p='pascal',pas='pascal',--[[Perl]]al='perl',perl='perl',pl='perl',pm='perl',pod='perl',--[[PHP]]inc='php',php='php',php3='php',php4='php',phtml='php',--[[PICO-8]]p8='pico',--[[Pike]]pike='pike',pmod='pike',--[[PKGBUILD]]PKGBUILD='pkgbuild',--[[Postscript]]eps='ps',ps='ps',--[[PowerShell]]ps1='powershell',--[[Prolog]]prolog='prolog',--[[Properties]]props='props',properties='props',--[[Protobuf]]proto='protobuf',--[[Pure]]pure='pure',--[[Python]]sc='python',py='python',pyw='python',--[[R]]R='rstats',Rout='rstats',Rhistory='rstats',Rt='rstats',['Rout.save']='rstats',['Rout.fail']='rstats',S='rstats',--[[REBOL]]r='rebol',reb='rebol',--[[reST]]rst='rest',--[[Rexx]]orx='rexx',rex='rexx',--[[RHTML]]erb='rhtml',rhtml='rhtml',--[[Ruby]]Rakefile='ruby',rake='ruby',rb='ruby',rbw='ruby',--[[Rust]]rs='rust',--[[Sass CSS]]sass='sass',scss='sass',--[[Scala]]scala='scala',--[[Scheme]]sch='scheme',scm='scheme',--[[Shell]]bash='bash',bashrc='bash',bash_profile='bash',configure='bash',csh='bash',ksh='bash',mksh='bash',sh='bash',zsh='bash',--[[Smalltalk]]changes='smalltalk',st='smalltalk',sources='smalltalk',--[[SML]]sml='sml',fun='sml',sig='sml',--[[SNOBOL4]]sno='snobol4',SNO='snobol4',--[[SQL]]ddl='sql',sql='sql',--[[TaskPaper]]taskpaper='taskpaper',--[[Tcl]]tcl='tcl',tk='tcl',--[[Texinfo]]texi='texinfo',--[[TOML]]toml='toml',--[[Txt2tags]]t2t='txt2tags',--[[Vala]]vala='vala',--[[vCard]]vcf='vcard',vcard='vcard',--[[Verilog]]v='verilog',ver='verilog',--[[VHDL]]vh='vhdl',vhd='vhdl',vhdl='vhdl',--[[Visual Basic]]asa='vb',bas='vb',cls='vb',ctl='vb',dob='vb',dsm='vb',dsr='vb',frm='vb',pag='vb',vb='vb',vba='vb',vbs='vb',--[[WSF]]wsf='wsf',--[[XML]]dtd='xml',svg='xml',xml='xml',xsd='xml',xsl='xml',xslt='xml',xul='xml',--[[Xtend]]xtend='xtend',--[[YAML]]yaml='yaml',yml='yaml'}$/;" t class:textadept.file_types
-extra_ascent _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-extra_descent _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+extra_ascent _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+extra_descent _HOME/core/.view.luadoc /^module('view')$/;" F class:view
file_diff _HOME/modules/file_diff/init.lua /^module('file_diff')]]$/;" m
file_types _HOME/modules/textadept/file_types.lua /^module('textadept.file_types')]]$/;" m class:textadept
filename _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -599,27 +607,27 @@ find_next_button_text _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;"
find_prev _HOME/modules/textadept/find.lua /^local find_prev$/;" f class:ui.find
find_prev_button_text _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
find_references _HOME/modules/lsp/init.lua /^function M.find_references()$/;" f class:lsp
-first_visible_line _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+first_visible_line _HOME/core/.view.luadoc /^module('view')$/;" F class:view
float _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
focus _HOME/modules/textadept/command_entry.lua /^local focus$/;" f class:ui.command_entry
focus _HOME/modules/textadept/find.lua /^local focus$/;" f class:ui.find
fold _HOME/lexers/lexer.lua /^function M.fold(lexer, text, start_pos, start_line, start_level)$/;" f class:lexer
-fold_all _HOME/core/.buffer.luadoc /^function fold_all(buffer, action) end$/;" f class:buffer
-fold_children _HOME/core/.buffer.luadoc /^function fold_children(buffer, line, action) end$/;" f class:buffer
-fold_display_text_style _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-fold_expanded _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-fold_flags _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+fold_all _HOME/core/.view.luadoc /^function fold_all(view, action) end$/;" f class:view
+fold_children _HOME/core/.view.luadoc /^function fold_children(view, line, action) end$/;" f class:view
+fold_display_text_style _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+fold_expanded _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+fold_flags _HOME/core/.view.luadoc /^module('view')$/;" F class:view
fold_level _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
fold_level _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-fold_line _HOME/core/.buffer.luadoc /^function fold_line(buffer, line, action) end$/;" f class:buffer
+fold_line _HOME/core/.view.luadoc /^function fold_line(view, line, action) end$/;" f class:view
fold_line_comments _HOME/lexers/lexer.lua /^function M.fold_line_comments(prefix)$/;" f class:lexer
fold_parent _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
fontselect _HOME/core/.ui.dialogs.luadoc /^function fontselect(options) end$/;" f class:ui.dialogs
forward _HOME/modules/history/init.lua /^function M.forward()$/;" f class:history
-functions _HOME/core/iface.lua /^M.functions = {add_ref_document={2376,0,0,1},add_selection={2573,0,3,3},add_styled_text={2002,0,2,9},add_tab_stop={2676,0,3,1},add_text={2001,0,2,7},add_undo_action={2560,0,1,1},allocate={2446,0,3,0},allocate_extended_styles={2553,1,1,0},allocate_sub_styles={4020,1,1,1},annotation_clear_all={2547,0,0,0},append_text={2282,0,2,7},assign_cmd_key={2070,0,6,1},auto_c_active={2102,5,0,0},auto_c_cancel={2101,0,0,0},auto_c_complete={2104,0,0,0},auto_c_pos_start={2103,3,0,0},auto_c_select={2108,0,0,7},auto_c_show={2100,0,1,7},auto_c_stops={2105,0,0,7},back_tab={2328,0,0,0},begin_undo_action={2078,0,0,0},brace_bad_light={2352,0,3,0},brace_bad_light_indicator={2499,0,5,3},brace_highlight={2351,0,3,3},brace_highlight_indicator={2498,0,5,3},brace_match={2353,3,3,1},call_tip_active={2202,5,0,0},call_tip_cancel={2201,0,0,0},call_tip_pos_start={2203,3,0,0},call_tip_set_hlt={2204,0,3,3},call_tip_show={2200,0,3,7},can_paste={2173,5,0,0},can_redo={2016,5,0,0},can_undo={2174,5,0,0},cancel={2325,0,0,0},change_insertion={2672,0,2,7},change_lexer_state={2617,1,3,3},char_left={2304,0,0,0},char_left_extend={2305,0,0,0},char_left_rect_extend={2428,0,0,0},char_position_from_point={2561,3,1,1},char_position_from_point_close={2562,3,1,1},char_right={2306,0,0,0},char_right_extend={2307,0,0,0},char_right_rect_extend={2429,0,0,0},choose_caret_x={2399,0,0,0},clear={2180,0,0,0},clear_all={2004,0,0,0},clear_all_cmd_keys={2072,0,0,0},clear_cmd_key={2071,0,6,0},clear_document_style={2005,0,0,0},clear_registered_images={2408,0,0,0},clear_representation={2667,0,7,0},clear_selections={2571,0,0,0},clear_tab_stops={2675,0,3,0},colourise={4003,0,3,3},contracted_fold_next={2618,3,3,0},convert_eols={2029,0,1,0},copy={2178,0,0,0},copy_allow_line={2519,0,0,0},copy_range={2419,0,3,3},copy_text={2420,0,2,7},count_characters={2633,1,3,3},count_code_units={2715,1,3,3},create_document={2375,1,3,1},create_loader={2632,1,3,1},cut={2177,0,0,0},del_line_left={2395,0,0,0},del_line_right={2396,0,0,0},del_word_left={2335,0,0,0},del_word_right={2336,0,0,0},del_word_right_end={2518,0,0,0},delete_back={2326,0,0,0},delete_back_not_line={2344,0,0,0},delete_range={2645,0,3,2},describe_key_word_sets={4017,0,0,8},describe_property={4016,0,7,8},description_of_style={4032,0,3,8},doc_line_from_visible={2221,3,3,0},document_end={2318,0,0,0},document_end_extend={2319,0,0,0},document_start={2316,0,0,0},document_start_extend={2317,0,0,0},drop_selection_n={2671,0,3,0},edit_toggle_overtype={2324,0,0,0},empty_undo_buffer={2175,0,0,0},encoded_from_utf8={2449,0,7,8},end_undo_action={2079,0,0,0},ensure_visible={2232,0,3,0},ensure_visible_enforce_policy={2234,0,3,0},expand_children={2239,0,3,1},find_column={2456,3,3,3},find_indicator_flash={2641,0,3,3},find_indicator_hide={2642,0,0,0},find_indicator_show={2640,0,3,3},find_text={2150,3,1,11},fold_all={2662,0,1,0},fold_children={2238,0,3,1},fold_line={2237,0,3,1},form_feed={2330,0,0,0},format_range={2151,3,5,12},free_sub_styles={4023,0,0,0},get_cur_line={2027,3,2,8},get_default_fold_display_text={2723,0,0,8},get_hotspot_active_back={2495,4,0,0},get_hotspot_active_fore={2494,4,0,0},get_line={2153,0,3,8},get_line_sel_end_position={2425,3,3,0},get_line_sel_start_position={2424,3,3,0},get_next_tab_stop={2677,1,3,1},get_sel_text={2161,0,0,8},get_styled_text={2015,3,0,10},get_text={2182,0,2,8},get_text_range={2162,3,0,10},goto_line={2024,0,3,0},goto_pos={2025,0,3,0},grab_focus={2400,0,0,0},hide_lines={2227,0,3,3},hide_selection={2163,0,5,0},home={2312,0,0,0},home_display={2345,0,0,0},home_display_extend={2346,0,0,0},home_extend={2313,0,0,0},home_rect_extend={2430,0,0,0},home_wrap={2349,0,0,0},home_wrap_extend={2450,0,0,0},indicator_all_on_for={2506,1,3,0},indicator_clear_range={2505,0,3,2},indicator_end={2509,3,3,3},indicator_fill_range={2504,0,3,2},indicator_start={2508,3,3,3},indicator_value_at={2507,1,3,3},insert_text={2003,0,3,7},is_range_word={2691,5,3,3},line_copy={2455,0,0,0},line_cut={2337,0,0,0},line_delete={2338,0,0,0},line_down={2300,0,0,0},line_down_extend={2301,0,0,0},line_down_rect_extend={2426,0,0,0},line_duplicate={2404,0,0,0},line_end={2314,0,0,0},line_end_display={2347,0,0,0},line_end_display_extend={2348,0,0,0},line_end_extend={2315,0,0,0},line_end_rect_extend={2432,0,0,0},line_end_wrap={2451,0,0,0},line_end_wrap_extend={2452,0,0,0},line_from_position={2166,3,3,0},line_length={2350,1,3,0},line_reverse={2354,0,0,0},line_scroll={2168,0,1,1},line_scroll_down={2342,0,0,0},line_scroll_up={2343,0,0,0},line_transpose={2339,0,0,0},line_up={2302,0,0,0},line_up_extend={2303,0,0,0},line_up_rect_extend={2427,0,0,0},lines_join={2288,0,0,0},lines_split={2289,0,1,0},load_lexer_library={4007,0,0,7},lower_case={2340,0,0,0},margin_text_clear_all={2536,0,0,0},marker_add={2043,1,3,3},marker_add_set={2466,0,3,1},marker_define={2040,0,3,1},marker_define_pixmap={2049,0,3,7},marker_define_rgba_image={2626,0,3,7},marker_delete={2044,0,3,3},marker_delete_all={2045,0,3,0},marker_delete_handle={2018,0,1,0},marker_enable_highlight={2293,0,5,0},marker_get={2046,1,3,0},marker_line_from_handle={2017,3,1,0},marker_next={2047,3,3,1},marker_previous={2048,3,3,1},marker_symbol_defined={2529,1,3,0},move_caret_inside_view={2401,0,0,0},move_selected_lines_down={2621,0,0,0},move_selected_lines_up={2620,0,0,0},multi_edge_add_line={2694,0,1,4},multi_edge_clear_all={2695,0,0,0},multiple_select_add_each={2689,0,0,0},multiple_select_add_next={2688,0,0,0},name_of_style={4030,0,3,8},new_line={2329,0,0,0},null={2172,0,0,0},page_down={2322,0,0,0},page_down_extend={2323,0,0,0},page_down_rect_extend={2434,0,0,0},page_up={2320,0,0,0},page_up_extend={2321,0,0,0},page_up_rect_extend={2433,0,0,0},para_down={2413,0,0,0},para_down_extend={2414,0,0,0},para_up={2415,0,0,0},para_up_extend={2416,0,0,0},paste={2179,0,0,0},point_x_from_position={2164,1,0,3},point_y_from_position={2165,1,0,3},position_after={2418,3,3,0},position_before={2417,3,3,0},position_from_line={2167,3,3,0},position_from_point={2022,3,1,1},position_from_point_close={2023,3,1,1},position_relative={2670,3,3,1},position_relative_code_units={2716,3,3,3},private_lexer_call={4013,1,1,1},property_names={4014,0,0,8},property_type={4015,1,7,0},redo={2011,0,0,0},register_image={2405,0,1,7},register_rgba_image={2627,0,1,7},release_all_extended_styles={2552,0,0,0},release_document={2377,0,0,1},replace_sel={2170,0,0,7},replace_target={2194,1,2,7},replace_target_re={2195,1,2,7},rotate_selection={2606,0,0,0},scroll_caret={2169,0,0,0},scroll_range={2569,0,3,3},scroll_to_end={2629,0,0,0},scroll_to_start={2628,0,0,0},search_anchor={2366,0,0,0},search_in_target={2197,3,2,7},search_next={2367,3,1,7},search_prev={2368,3,1,7},select_all={2013,0,0,0},selection_duplicate={2469,0,0,0},set_chars_default={2444,0,0,0},set_default_fold_display_text={2722,0,0,7},set_empty_selection={2556,0,3,0},set_fold_margin_colour={2290,0,5,4},set_fold_margin_hi_colour={2291,0,5,4},set_hotspot_active_back={2411,0,5,4},set_hotspot_active_fore={2410,0,5,4},set_length_for_encode={2448,0,3,0},set_save_point={2014,0,0,0},set_sel={2160,0,3,3},set_sel_back={2068,0,5,4},set_sel_fore={2067,0,5,4},set_selection={2572,0,3,3},set_styling={2033,0,2,3},set_styling_ex={2073,0,2,7},set_target_range={2686,0,3,3},set_text={2181,0,0,7},set_visible_policy={2394,0,1,1},set_whitespace_back={2085,0,5,4},set_whitespace_fore={2084,0,5,4},set_x_caret_policy={2402,0,1,1},set_y_caret_policy={2403,0,1,1},show_lines={2226,0,3,3},start_record={3001,0,0,0},start_styling={2032,0,3,1},stop_record={3002,0,0,0},stuttered_page_down={2437,0,0,0},stuttered_page_down_extend={2438,0,0,0},stuttered_page_up={2435,0,0,0},stuttered_page_up_extend={2436,0,0,0},style_clear_all={2050,0,0,0},style_reset_default={2058,0,0,0},swap_main_anchor_caret={2607,0,0,0},tab={2327,0,0,0},tags_of_style={4031,0,3,8},target_as_utf8={2447,0,0,8},target_from_selection={2287,0,0,0},target_whole_document={2690,0,0,0},text_height={2279,1,3,0},text_width={2276,1,3,7},toggle_caret_sticky={2459,0,0,0},toggle_fold={2231,0,3,0},toggle_fold_show_text={2700,0,3,7},undo={2176,0,0,0},upper_case={2341,0,0,0},use_pop_up={2371,0,1,0},user_list_show={2117,0,1,7},vc_home={2331,0,0,0},vc_home_display={2652,0,0,0},vc_home_display_extend={2653,0,0,0},vc_home_extend={2332,0,0,0},vc_home_rect_extend={2431,0,0,0},vc_home_wrap={2453,0,0,0},vc_home_wrap_extend={2454,0,0,0},vertical_centre_caret={2619,0,0,0},visible_from_doc_line={2220,3,3,0},word_end_position={2267,3,3,5},word_left={2308,0,0,0},word_left_end={2439,0,0,0},word_left_end_extend={2440,0,0,0},word_left_extend={2309,0,0,0},word_part_left={2390,0,0,0},word_part_left_extend={2391,0,0,0},word_part_right={2392,0,0,0},word_part_right_extend={2393,0,0,0},word_right={2310,0,0,0},word_right_end={2441,0,0,0},word_right_end_extend={2442,0,0,0},word_right_extend={2311,0,0,0},word_start_position={2266,3,3,5},wrap_count={2235,1,3,0},zoom_in={2333,0,0,0},zoom_out={2334,0,0,0},}$/;" t class:_SCINTILLA
+functions _HOME/core/iface.lua /^M.functions = {add_ref_document={2376,0,0,1},add_selection={2573,0,3,3},add_styled_text={2002,0,2,9},add_tab_stop={2676,0,3,1},add_text={2001,0,2,7},add_undo_action={2560,0,1,1},allocate={2446,0,3,0},allocate_extended_styles={2553,1,1,0},allocate_sub_styles={4020,1,1,1},annotation_clear_all={2547,0,0,0},append_text={2282,0,2,7},assign_cmd_key={2070,0,6,1},auto_c_active={2102,5,0,0},auto_c_cancel={2101,0,0,0},auto_c_complete={2104,0,0,0},auto_c_pos_start={2103,3,0,0},auto_c_select={2108,0,0,7},auto_c_show={2100,0,1,7},auto_c_stops={2105,0,0,7},back_tab={2328,0,0,0},begin_undo_action={2078,0,0,0},brace_bad_light={2352,0,3,0},brace_bad_light_indicator={2499,0,5,3},brace_highlight={2351,0,3,3},brace_highlight_indicator={2498,0,5,3},brace_match={2353,3,3,1},call_tip_active={2202,5,0,0},call_tip_cancel={2201,0,0,0},call_tip_pos_start={2203,3,0,0},call_tip_set_hlt={2204,0,3,3},call_tip_show={2200,0,3,7},can_paste={2173,5,0,0},can_redo={2016,5,0,0},can_undo={2174,5,0,0},cancel={2325,0,0,0},change_insertion={2672,0,2,7},change_lexer_state={2617,1,3,3},char_left={2304,0,0,0},char_left_extend={2305,0,0,0},char_left_rect_extend={2428,0,0,0},char_position_from_point={2561,3,1,1},char_position_from_point_close={2562,3,1,1},char_right={2306,0,0,0},char_right_extend={2307,0,0,0},char_right_rect_extend={2429,0,0,0},choose_caret_x={2399,0,0,0},clear={2180,0,0,0},clear_all={2004,0,0,0},clear_all_cmd_keys={2072,0,0,0},clear_cmd_key={2071,0,6,0},clear_document_style={2005,0,0,0},clear_registered_images={2408,0,0,0},clear_representation={2667,0,7,0},clear_selections={2571,0,0,0},clear_tab_stops={2675,0,3,0},colourise={4003,0,3,3},contracted_fold_next={2618,3,3,0},convert_eols={2029,0,1,0},copy={2178,0,0,0},copy_allow_line={2519,0,0,0},copy_range={2419,0,3,3},copy_text={2420,0,2,7},count_characters={2633,1,3,3},count_code_units={2715,1,3,3},create_document={2375,1,3,1},create_loader={2632,1,3,1},cut={2177,0,0,0},del_line_left={2395,0,0,0},del_line_right={2396,0,0,0},del_word_left={2335,0,0,0},del_word_right={2336,0,0,0},del_word_right_end={2518,0,0,0},delete_back={2326,0,0,0},delete_back_not_line={2344,0,0,0},delete_range={2645,0,3,2},describe_key_word_sets={4017,0,0,8},describe_property={4016,0,7,8},description_of_style={4032,0,3,8},doc_line_from_visible={2221,3,3,0},document_end={2318,0,0,0},document_end_extend={2319,0,0,0},document_start={2316,0,0,0},document_start_extend={2317,0,0,0},drop_selection_n={2671,0,3,0},edit_toggle_overtype={2324,0,0,0},empty_undo_buffer={2175,0,0,0},encoded_from_utf8={2449,0,7,8},end_undo_action={2079,0,0,0},ensure_visible={2232,0,3,0},ensure_visible_enforce_policy={2234,0,3,0},expand_children={2239,0,3,1},find_column={2456,3,3,3},find_indicator_flash={2641,0,3,3},find_indicator_hide={2642,0,0,0},find_indicator_show={2640,0,3,3},find_text={2150,3,1,11},fold_all={2662,0,1,0},fold_children={2238,0,3,1},fold_line={2237,0,3,1},form_feed={2330,0,0,0},format_range={2151,3,5,12},free_sub_styles={4023,0,0,0},get_cur_line={2027,3,2,8},get_default_fold_display_text={2723,0,0,8},get_hotspot_active_back={2495,4,0,0},get_hotspot_active_fore={2494,4,0,0},get_line={2153,0,3,8},get_line_sel_end_position={2425,3,3,0},get_line_sel_start_position={2424,3,3,0},get_next_tab_stop={2677,1,3,1},get_sel_text={2161,0,0,8},get_styled_text={2015,3,0,10},get_text={2182,0,2,8},get_text_range={2162,3,0,10},goto_line={2024,0,3,0},goto_pos={2025,0,3,0},grab_focus={2400,0,0,0},hide_lines={2227,0,3,3},hide_selection={2163,0,5,0},home={2312,0,0,0},home_display={2345,0,0,0},home_display_extend={2346,0,0,0},home_extend={2313,0,0,0},home_rect_extend={2430,0,0,0},home_wrap={2349,0,0,0},home_wrap_extend={2450,0,0,0},indicator_all_on_for={2506,1,3,0},indicator_clear_range={2505,0,3,2},indicator_end={2509,3,3,3},indicator_fill_range={2504,0,3,2},indicator_start={2508,3,3,3},indicator_value_at={2507,1,3,3},insert_text={2003,0,3,7},is_range_word={2691,5,3,3},line_copy={2455,0,0,0},line_cut={2337,0,0,0},line_delete={2338,0,0,0},line_down={2300,0,0,0},line_down_extend={2301,0,0,0},line_down_rect_extend={2426,0,0,0},line_duplicate={2404,0,0,0},line_end={2314,0,0,0},line_end_display={2347,0,0,0},line_end_display_extend={2348,0,0,0},line_end_extend={2315,0,0,0},line_end_rect_extend={2432,0,0,0},line_end_wrap={2451,0,0,0},line_end_wrap_extend={2452,0,0,0},line_from_position={2166,3,3,0},line_length={2350,1,3,0},line_reverse={2354,0,0,0},line_scroll={2168,0,1,1},line_scroll_down={2342,0,0,0},line_scroll_up={2343,0,0,0},line_transpose={2339,0,0,0},line_up={2302,0,0,0},line_up_extend={2303,0,0,0},line_up_rect_extend={2427,0,0,0},lines_join={2288,0,0,0},lines_split={2289,0,1,0},load_lexer_library={4007,0,0,7},lower_case={2340,0,0,0},margin_text_clear_all={2536,0,0,0},marker_add={2043,1,3,3},marker_add_set={2466,0,3,1},marker_define={2040,0,3,1},marker_define_pixmap={2049,0,3,7},marker_define_rgba_image={2626,0,3,7},marker_delete={2044,0,3,3},marker_delete_all={2045,0,3,0},marker_delete_handle={2018,0,1,0},marker_enable_highlight={2293,0,5,0},marker_get={2046,1,3,0},marker_handle_from_line={2732,1,3,3},marker_line_from_handle={2017,3,1,0},marker_next={2047,3,3,1},marker_number_from_line={2733,3,3,3},marker_previous={2048,3,3,1},marker_symbol_defined={2529,1,3,0},move_caret_inside_view={2401,0,0,0},move_selected_lines_down={2621,0,0,0},move_selected_lines_up={2620,0,0,0},multi_edge_add_line={2694,0,1,4},multi_edge_clear_all={2695,0,0,0},multiple_select_add_each={2689,0,0,0},multiple_select_add_next={2688,0,0,0},name_of_style={4030,0,3,8},new_line={2329,0,0,0},null={2172,0,0,0},page_down={2322,0,0,0},page_down_extend={2323,0,0,0},page_down_rect_extend={2434,0,0,0},page_up={2320,0,0,0},page_up_extend={2321,0,0,0},page_up_rect_extend={2433,0,0,0},para_down={2413,0,0,0},para_down_extend={2414,0,0,0},para_up={2415,0,0,0},para_up_extend={2416,0,0,0},paste={2179,0,0,0},point_x_from_position={2164,1,0,3},point_y_from_position={2165,1,0,3},position_after={2418,3,3,0},position_before={2417,3,3,0},position_from_line={2167,3,3,0},position_from_point={2022,3,1,1},position_from_point_close={2023,3,1,1},position_relative={2670,3,3,1},position_relative_code_units={2716,3,3,3},private_lexer_call={4013,1,1,1},property_names={4014,0,0,8},property_type={4015,1,7,0},redo={2011,0,0,0},register_image={2405,0,1,7},register_rgba_image={2627,0,1,7},release_all_extended_styles={2552,0,0,0},release_document={2377,0,0,1},replace_sel={2170,0,0,7},replace_target={2194,1,2,7},replace_target_re={2195,1,2,7},rotate_selection={2606,0,0,0},scroll_caret={2169,0,0,0},scroll_range={2569,0,3,3},scroll_to_end={2629,0,0,0},scroll_to_start={2628,0,0,0},search_anchor={2366,0,0,0},search_in_target={2197,3,2,7},search_next={2367,3,1,7},search_prev={2368,3,1,7},select_all={2013,0,0,0},selection_duplicate={2469,0,0,0},set_chars_default={2444,0,0,0},set_default_fold_display_text={2722,0,0,7},set_empty_selection={2556,0,3,0},set_fold_margin_colour={2290,0,5,4},set_fold_margin_hi_colour={2291,0,5,4},set_hotspot_active_back={2411,0,5,4},set_hotspot_active_fore={2410,0,5,4},set_length_for_encode={2448,0,3,0},set_save_point={2014,0,0,0},set_sel={2160,0,3,3},set_sel_back={2068,0,5,4},set_sel_fore={2067,0,5,4},set_selection={2572,0,3,3},set_styling={2033,0,2,3},set_styling_ex={2073,0,2,7},set_target_range={2686,0,3,3},set_text={2181,0,0,7},set_visible_policy={2394,0,1,1},set_whitespace_back={2085,0,5,4},set_whitespace_fore={2084,0,5,4},set_x_caret_policy={2402,0,1,1},set_y_caret_policy={2403,0,1,1},show_lines={2226,0,3,3},start_record={3001,0,0,0},start_styling={2032,0,3,1},stop_record={3002,0,0,0},stuttered_page_down={2437,0,0,0},stuttered_page_down_extend={2438,0,0,0},stuttered_page_up={2435,0,0,0},stuttered_page_up_extend={2436,0,0,0},style_clear_all={2050,0,0,0},style_reset_default={2058,0,0,0},swap_main_anchor_caret={2607,0,0,0},tab={2327,0,0,0},tags_of_style={4031,0,3,8},target_as_utf8={2447,0,0,8},target_from_selection={2287,0,0,0},target_whole_document={2690,0,0,0},text_height={2279,1,3,0},text_width={2276,1,3,7},toggle_caret_sticky={2459,0,0,0},toggle_fold={2231,0,3,0},toggle_fold_show_text={2700,0,3,7},undo={2176,0,0,0},upper_case={2341,0,0,0},use_pop_up={2371,0,1,0},user_list_show={2117,0,1,7},vc_home={2331,0,0,0},vc_home_display={2652,0,0,0},vc_home_display_extend={2653,0,0,0},vc_home_extend={2332,0,0,0},vc_home_rect_extend={2431,0,0,0},vc_home_wrap={2453,0,0,0},vc_home_wrap_extend={2454,0,0,0},vertical_centre_caret={2619,0,0,0},visible_from_doc_line={2220,3,3,0},word_end_position={2267,3,3,5},word_left={2308,0,0,0},word_left_end={2439,0,0,0},word_left_end_extend={2440,0,0,0},word_left_extend={2309,0,0,0},word_part_left={2390,0,0,0},word_part_left_extend={2391,0,0,0},word_part_right={2392,0,0,0},word_part_right_extend={2393,0,0,0},word_right={2310,0,0,0},word_right_end={2441,0,0,0},word_right_end_extend={2442,0,0,0},word_right_extend={2311,0,0,0},word_start_position={2266,3,3,5},wrap_count={2235,1,3,0},zoom_in={2333,0,0,0},zoom_out={2334,0,0,0},}$/;" t class:_SCINTILLA
generate_default_api _HOME/modules/ctags/init.lua /^module('ctags')]]$/;" F class:ctags
get_cur_line _HOME/core/.buffer.luadoc /^function get_cur_line(buffer) end$/;" f class:buffer
-get_default_fold_display_text _HOME/core/.buffer.luadoc /^function get_default_fold_display_text(buffer) end$/;" f class:buffer
+get_default_fold_display_text _HOME/core/.view.luadoc /^function get_default_fold_display_text(view) end$/;" f class:view
get_last_child _HOME/core/.buffer.luadoc /^function get_last_child(buffer, line, level) end$/;" f class:buffer
get_lexer _HOME/core/.buffer.luadoc /^function get_lexer(buffer, current) end$/;" f class:buffer
get_line _HOME/core/.buffer.luadoc /^function get_line(buffer, line) end$/;" f class:buffer
@@ -648,13 +656,13 @@ goto_tag _HOME/modules/ctags/init.lua /^function M.goto_tag(tag)$/;" f class:cta
goto_type_definition _HOME/modules/lsp/init.lua /^function M.goto_type_definition() return goto_definition('typeDefinition') end$/;" f class:lsp
goto_view _HOME/core/ui.lua /^local goto_view$/;" f class:ui
graph _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-h_scroll_bar _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+h_scroll_bar _HOME/core/.view.luadoc /^module('view')$/;" F class:view
handle_notification _HOME/modules/lsp/init.lua /^function Server:handle_notification(method, params)$/;" f class:Server
handle_stdout _HOME/modules/lsp/init.lua /^function Server:handle_stdout(output)$/;" f class:Server
height _HOME/modules/textadept/command_entry.lua /^module('ui.command_entry')]]$/;" F class:ui.command_entry
hex_num _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-hide_lines _HOME/core/.buffer.luadoc /^function hide_lines(buffer, start_line, end_line) end$/;" f class:buffer
-highlight_guide _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+hide_lines _HOME/core/.view.luadoc /^function hide_lines(view, start_line, end_line) end$/;" f class:view
+highlight_guide _HOME/core/.view.luadoc /^module('view')$/;" F class:view
highlight_word _HOME/modules/textadept/editing.lua /^function M.highlight_word()$/;" f class:textadept.editing
history _HOME/modules/history/init.lua /^module('history')]]$/;" m
history _HOME/modules/lua_repl/init.lua /^M.history = {pos = 0}$/;" t class:lua_repl
@@ -670,19 +678,19 @@ html _HOME/modules/html/init.lua /^keys.html = {}$/;" t class:keys
html _HOME/modules/html/init.lua /^module('_M.html')]]$/;" m class:_M
html _HOME/modules/html/init.lua /^snippets.html = {$/;" t class:snippets
iconv _HOME/core/.iconv.luadoc /^function iconv(text, new, old) end$/;" f class:string
-idle_styling _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+idle_styling _HOME/core/.view.luadoc /^module('view')$/;" F class:view
in_files _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
in_files_label_text _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
indent _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
indent_amount _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-indentation_guides _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-indic_alpha _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-indic_fore _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-indic_hover_fore _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-indic_hover_style _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-indic_outline_alpha _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-indic_style _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-indic_under _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+indentation_guides _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+indic_alpha _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+indic_fore _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+indic_hover_fore _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+indic_hover_style _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+indic_outline_alpha _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+indic_style _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+indic_under _HOME/core/.view.luadoc /^module('view')$/;" F class:view
indicator_all_on_for _HOME/core/.buffer.luadoc /^function indicator_all_on_for(buffer, pos) end$/;" f class:buffer
indicator_clear_range _HOME/core/.buffer.luadoc /^function indicator_clear_range(buffer, pos, length) end$/;" f class:buffer
indicator_current _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -731,17 +739,17 @@ line_indentation _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
line_length _HOME/core/.buffer.luadoc /^function line_length(buffer, line) end$/;" f class:buffer
line_numbers _HOME/modules/export/init.lua /^module('export')]]$/;" F class:export
line_reverse _HOME/core/.buffer.luadoc /^function line_reverse(buffer) end$/;" f class:buffer
-line_scroll _HOME/core/.buffer.luadoc /^function line_scroll(buffer, columns, lines) end$/;" f class:buffer
-line_scroll_down _HOME/core/.buffer.luadoc /^function line_scroll_down(buffer) end$/;" f class:buffer
-line_scroll_up _HOME/core/.buffer.luadoc /^function line_scroll_up(buffer) end$/;" f class:buffer
+line_scroll _HOME/core/.view.luadoc /^function line_scroll(view, columns, lines) end$/;" f class:view
+line_scroll_down _HOME/core/.view.luadoc /^function line_scroll_down(view) end$/;" f class:view
+line_scroll_up _HOME/core/.view.luadoc /^function line_scroll_up(view) end$/;" f class:view
line_state _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
line_transpose _HOME/core/.buffer.luadoc /^function line_transpose(buffer) end$/;" f class:buffer
line_up _HOME/core/.buffer.luadoc /^function line_up(buffer) end$/;" f class:buffer
line_up_extend _HOME/core/.buffer.luadoc /^function line_up_extend(buffer) end$/;" f class:buffer
line_up_rect_extend _HOME/core/.buffer.luadoc /^function line_up_rect_extend(buffer) end$/;" f class:buffer
-line_visible _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+line_visible _HOME/core/.view.luadoc /^module('view')$/;" F class:view
lines_join _HOME/core/.buffer.luadoc /^function lines_join(buffer) end$/;" f class:buffer
-lines_on_screen _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+lines_on_screen _HOME/core/.view.luadoc /^module('view')$/;" F class:view
lines_split _HOME/core/.buffer.luadoc /^function lines_split(buffer, pixel_width) end$/;" f class:buffer
load _HOME/lexers/lexer.lua /^function M.load(name, alt_name, cache)$/;" f class:lexer
load _HOME/modules/textadept/macros.lua /^function M.load(filename)$/;" f class:textadept.macros
@@ -761,37 +769,39 @@ lua _HOME/modules/lua/init.lua /^snippets.lua = {$/;" t class:snippets
lua_repl _HOME/modules/lua_repl/init.lua /^module('lua_repl')]]$/;" m
macros _HOME/modules/textadept/macros.lua /^module('textadept.macros')]]$/;" m class:textadept
main_selection _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margin_back_n _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margin_cursor_n _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margin_left _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margin_mask_n _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margin_options _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margin_right _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margin_sensitive_n _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+margin_back_n _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+margin_cursor_n _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+margin_left _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+margin_mask_n _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+margin_options _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+margin_right _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+margin_sensitive_n _HOME/core/.view.luadoc /^module('view')$/;" F class:view
margin_style _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
margin_text _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
margin_text_clear_all _HOME/core/.buffer.luadoc /^function margin_text_clear_all(buffer) end$/;" f class:buffer
-margin_type_n _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margin_width_n _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-margins _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+margin_type_n _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+margin_width_n _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+margins _HOME/core/.view.luadoc /^module('view')$/;" F class:view
marker_add _HOME/core/.buffer.luadoc /^function marker_add(buffer, line, marker) end$/;" f class:buffer
marker_add_set _HOME/core/.buffer.luadoc /^function marker_add_set(buffer, line, marker_mask) end$/;" f class:buffer
-marker_alpha _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-marker_back _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-marker_back_selected _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-marker_define _HOME/core/.buffer.luadoc /^function marker_define(buffer, marker, symbol) end$/;" f class:buffer
-marker_define_pixmap _HOME/core/.buffer.luadoc /^function marker_define_pixmap(buffer, marker, pixmap) end$/;" f class:buffer
-marker_define_rgba_image _HOME/core/.buffer.luadoc /^function marker_define_rgba_image(buffer, marker, pixels) end$/;" f class:buffer
+marker_alpha _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+marker_back _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+marker_back_selected _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+marker_define _HOME/core/.view.luadoc /^function marker_define(view, marker, symbol) end$/;" f class:view
+marker_define_pixmap _HOME/core/.view.luadoc /^function marker_define_pixmap(view, marker, pixmap) end$/;" f class:view
+marker_define_rgba_image _HOME/core/.view.luadoc /^function marker_define_rgba_image(view, marker, pixels) end$/;" f class:view
marker_delete _HOME/core/.buffer.luadoc /^function marker_delete(buffer, line, marker) end$/;" f class:buffer
marker_delete_all _HOME/core/.buffer.luadoc /^function marker_delete_all(buffer, marker) end$/;" f class:buffer
marker_delete_handle _HOME/core/.buffer.luadoc /^function marker_delete_handle(buffer, handle) end$/;" f class:buffer
-marker_enable_highlight _HOME/core/.buffer.luadoc /^function marker_enable_highlight(buffer, enabled) end$/;" f class:buffer
-marker_fore _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+marker_enable_highlight _HOME/core/.view.luadoc /^function marker_enable_highlight(view, enabled) end$/;" f class:view
+marker_fore _HOME/core/.view.luadoc /^module('view')$/;" F class:view
marker_get _HOME/core/.buffer.luadoc /^function marker_get(buffer, line) end$/;" f class:buffer
+marker_handle_from_line _HOME/core/.buffer.luadoc /^function marker_handle_from_line(buffer, line, n) end$/;" f class:buffer
marker_line_from_handle _HOME/core/.buffer.luadoc /^function marker_line_from_handle(buffer, handle) end$/;" f class:buffer
marker_next _HOME/core/.buffer.luadoc /^function marker_next(buffer, line, marker_mask) end$/;" f class:buffer
+marker_number_from_line _HOME/core/.buffer.luadoc /^function marker_number_from_line(buffer, line, n) end$/;" f class:buffer
marker_previous _HOME/core/.buffer.luadoc /^function marker_previous(buffer, line, marker_mask) end$/;" f class:buffer
-marker_symbol_defined _HOME/core/.buffer.luadoc /^function marker_symbol_defined(buffer, marker) end$/;" f class:buffer
+marker_symbol_defined _HOME/core/.view.luadoc /^function marker_symbol_defined(view, marker) end$/;" f class:view
match_case _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
match_case_label_text _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
maximized _HOME/core/ui.lua /^module('ui')]]$/;" F class:ui
@@ -805,21 +815,20 @@ minimum_line_distance _HOME/modules/history/init.lua /^module('history')]]$/;" F
mode _HOME/core/keys.lua /^module('keys')]]$/;" F class:keys
modify _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
modify_rule _HOME/lexers/lexer.lua /^function M.modify_rule(lexer, id, rule)$/;" f class:lexer
-mouse_dwell_time _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-mouse_selection_rectangular_switch _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+mouse_dwell_time _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+mouse_selection_rectangular_switch _HOME/core/.view.luadoc /^module('view')$/;" F class:view
move_caret_inside_view _HOME/core/.buffer.luadoc /^function move_caret_inside_view(buffer) end$/;" f class:buffer
move_extends_selection _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
move_selected_lines_down _HOME/core/.buffer.luadoc /^function move_selected_lines_down(buffer) end$/;" f class:buffer
move_selected_lines_up _HOME/core/.buffer.luadoc /^function move_selected_lines_up(buffer) end$/;" f class:buffer
msgbox _HOME/core/.ui.dialogs.luadoc /^function msgbox(options) end$/;" f class:ui.dialogs
-multi_edge_add_line _HOME/core/.buffer.luadoc /^function multi_edge_add_line(buffer, column, color) end$/;" f class:buffer
-multi_edge_clear_all _HOME/core/.buffer.luadoc /^function multi_edge_clear_all(buffer) end$/;" f class:buffer
+multi_edge_add_line _HOME/core/.view.luadoc /^function multi_edge_add_line(view, column, color) end$/;" f class:view
+multi_edge_clear_all _HOME/core/.view.luadoc /^function multi_edge_clear_all(view) end$/;" f class:view
multi_paste _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
multiple_select_add_each _HOME/core/.buffer.luadoc /^function multiple_select_add_each(buffer) end$/;" f class:buffer
multiple_select_add_next _HOME/core/.buffer.luadoc /^function multiple_select_add_next(buffer) end$/;" f class:buffer
multiple_selection _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
name_of_style _HOME/core/.buffer.luadoc /^function name_of_style(buffer, style) end$/;" f class:buffer
-nested_pair _HOME/lexers/lexer.lua /^function M.nested_pair(start_chars, end_chars)$/;" f class:lexer
new _HOME/core/.buffer.luadoc /^function new() end$/;" f class:buffer
new _HOME/lexers/lexer.lua /^function M.new(name, opts)$/;" f class:lexer
new _HOME/modules/lsp/init.lua /^function Server.new(lexer, cmd, init_options)$/;" f class:Server
@@ -833,6 +842,7 @@ nonnewline _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
nonnewline_esc _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
notify _HOME/modules/lsp/init.lua /^function Server:notify(method, params)$/;" f class:Server
notify_opened _HOME/modules/lsp/init.lua /^function Server:notify_opened(buffer)$/;" f class:Server
+number _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
oct_num _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
ok_msgbox _HOME/core/.ui.dialogs.luadoc /^function ok_msgbox(options) end$/;" f class:ui.dialogs
open_file _HOME/core/file_io.lua /^function io.open_file(filenames, encodings)$/;" f class:io
@@ -883,6 +893,7 @@ quick_open _HOME/core/file_io.lua /^function io.quick_open(paths, filter, opts)$
quick_open_filters _HOME/core/file_io.lua /^io.quick_open_filters = {}$/;" t class:io
quick_open_max _HOME/core/file_io.lua /^module('io')]]$/;" F class:io
quit _HOME/core/init.lua /^local quit$/;" f
+range _HOME/lexers/lexer.lua /^function M.range(s, e, single_line, escapes, balanced)$/;" f class:lexer
read _HOME/core/.os.luadoc /^function spawn_proc:read(arg) end$/;" f class:spawn_proc
read _HOME/modules/lsp/init.lua /^function Server:read()$/;" f class:Server
read_only _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -892,13 +903,13 @@ rectangular_selection_anchor _HOME/core/.buffer.luadoc /^module('buffer')$/;" F
rectangular_selection_anchor_virtual_space _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
rectangular_selection_caret _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
rectangular_selection_caret_virtual_space _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-rectangular_selection_modifier _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+rectangular_selection_modifier _HOME/core/.view.luadoc /^module('view')$/;" F class:view
redo _HOME/core/.buffer.luadoc /^function redo(buffer) end$/;" f class:buffer
regex _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
regex_label_text _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
register _HOME/core/args.lua /^function M.register(short, long, narg, f, description)$/;" f class:args
-register_image _HOME/core/.buffer.luadoc /^function register_image(buffer, type, xpm_data) end$/;" f class:buffer
-register_rgba_image _HOME/core/.buffer.luadoc /^function register_rgba_image(buffer, type, pixels) end$/;" f class:buffer
+register_image _HOME/core/.view.luadoc /^function register_image(view, type, xpm_data) end$/;" f class:view
+register_rgba_image _HOME/core/.view.luadoc /^function register_rgba_image(view, type, pixels) end$/;" f class:view
reload _HOME/core/.buffer.luadoc /^function reload(buffer) end$/;" f class:buffer
remove_breakpoint _HOME/modules/debugger/init.lua /^function M.remove_breakpoint(file, line)$/;" f class:debugger
remove_watch _HOME/modules/debugger/init.lua /^function M.remove_watch(id)$/;" f class:debugger
@@ -911,7 +922,7 @@ replace_label_text _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F
replace_sel _HOME/core/.buffer.luadoc /^function replace_sel(buffer, text) end$/;" f class:buffer
replace_target _HOME/core/.buffer.luadoc /^function replace_target(buffer, text) end$/;" f class:buffer
replace_target_re _HOME/core/.buffer.luadoc /^function replace_target_re(buffer, text) end$/;" f class:buffer
-representation _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+representation _HOME/core/.view.luadoc /^module('view')$/;" F class:view
request _HOME/modules/lsp/init.lua /^function Server:request(method, params)$/;" f class:Server
reset _HOME/core/init.lua /^local reset$/;" f
respond _HOME/modules/lsp/init.lua /^function Server:respond(id, result)$/;" f class:Server
@@ -919,9 +930,9 @@ rest _HOME/modules/rest/init.lua /^keys.rest = {$/;" t class:keys
rest _HOME/modules/rest/init.lua /^module('_M.rest')]]$/;" m class:_M
rest _HOME/modules/rest/init.lua /^snippets.rest = {$/;" t class:snippets
restart _HOME/modules/debugger/init.lua /^function M.restart(...)$/;" f class:debugger
-rgba_image_height _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-rgba_image_scale _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-rgba_image_width _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+rgba_image_height _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+rgba_image_scale _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+rgba_image_width _HOME/core/.view.luadoc /^module('view')$/;" F class:view
rotate_selection _HOME/core/.buffer.luadoc /^function rotate_selection(buffer) end$/;" f class:buffer
ruby _HOME/modules/ruby/init.lua /^keys.ruby = {$/;" t class:keys
ruby _HOME/modules/ruby/init.lua /^module('_M.ruby')]]$/;" m class:_M
@@ -937,12 +948,12 @@ save _HOME/modules/textadept/session.lua /^function M.save(filename)$/;" f class
save_all_files _HOME/core/file_io.lua /^function io.save_all_files()$/;" f class:io
save_as _HOME/core/.buffer.luadoc /^function save_as(buffer, filename) end$/;" f class:buffer
save_on_quit _HOME/modules/textadept/session.lua /^module('textadept.session')]]$/;" F class:textadept.session
-scroll_caret _HOME/core/.buffer.luadoc /^function scroll_caret(buffer) end$/;" f class:buffer
-scroll_range _HOME/core/.buffer.luadoc /^function scroll_range(buffer, secondary_pos, primary_pos) end$/;" f class:buffer
-scroll_to_end _HOME/core/.buffer.luadoc /^function scroll_to_end(buffer) end$/;" f class:buffer
-scroll_to_start _HOME/core/.buffer.luadoc /^function scroll_to_start(buffer) end$/;" f class:buffer
-scroll_width _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-scroll_width_tracking _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+scroll_caret _HOME/core/.view.luadoc /^function scroll_caret(view) end$/;" f class:view
+scroll_range _HOME/core/.view.luadoc /^function scroll_range(view, secondary_pos, primary_pos) end$/;" f class:view
+scroll_to_end _HOME/core/.view.luadoc /^function scroll_to_end(view) end$/;" f class:view
+scroll_to_start _HOME/core/.view.luadoc /^function scroll_to_start(view) end$/;" f class:view
+scroll_width _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+scroll_width_tracking _HOME/core/.view.luadoc /^module('view')$/;" F class:view
search_anchor _HOME/core/.buffer.luadoc /^function search_anchor(buffer) end$/;" f class:buffer
search_flags _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
search_in_target _HOME/core/.buffer.luadoc /^function search_in_target(buffer, text) end$/;" f class:buffer
@@ -950,8 +961,8 @@ search_next _HOME/core/.buffer.luadoc /^function search_next(buffer, flags, text
search_prev _HOME/core/.buffer.luadoc /^function search_prev(buffer, flags, text) end$/;" f class:buffer
secure_inputbox _HOME/core/.ui.dialogs.luadoc /^function secure_inputbox(options) end$/;" f class:ui.dialogs
secure_standard_inputbox _HOME/core/.ui.dialogs.luadoc /^function secure_standard_inputbox(options) end$/;" f class:ui.dialogs
-sel_alpha _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-sel_eol_filled _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+sel_alpha _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+sel_eol_filled _HOME/core/.view.luadoc /^module('view')$/;" F class:view
select _HOME/modules/textadept/snippets.lua /^function M.select()$/;" f class:textadept.snippets
select_all _HOME/core/.buffer.luadoc /^function select_all(buffer) end$/;" f class:buffer
select_command _HOME/modules/textadept/menu.lua /^function M.select_command()$/;" f class:textadept.menu
@@ -978,31 +989,31 @@ selections _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
server_commands _HOME/modules/lsp/init.lua /^M.server_commands = {}$/;" t class:lsp
session _HOME/modules/textadept/session.lua /^module('textadept.session')]]$/;" m class:textadept
set_chars_default _HOME/core/.buffer.luadoc /^function set_chars_default(buffer) end$/;" f class:buffer
-set_default_fold_display_text _HOME/core/.buffer.luadoc /^function set_default_fold_display_text(buffer, text) end$/;" f class:buffer
+set_default_fold_display_text _HOME/core/.view.luadoc /^function set_default_fold_display_text(view, text) end$/;" f class:view
set_empty_selection _HOME/core/.buffer.luadoc /^function set_empty_selection(buffer, pos) end$/;" f class:buffer
set_encoding _HOME/core/.buffer.luadoc /^function set_encoding(buffer, encoding) end$/;" f class:buffer
-set_fold_margin_colour _HOME/core/.buffer.luadoc /^function set_fold_margin_colour(buffer, use_setting, color) end$/;" f class:buffer
-set_fold_margin_hi_colour _HOME/core/.buffer.luadoc /^function set_fold_margin_hi_colour(buffer, use_setting, color) end$/;" f class:buffer
+set_fold_margin_colour _HOME/core/.view.luadoc /^function set_fold_margin_colour(view, use_setting, color) end$/;" f class:view
+set_fold_margin_hi_colour _HOME/core/.view.luadoc /^function set_fold_margin_hi_colour(view, use_setting, color) end$/;" f class:view
set_frame _HOME/modules/debugger/init.lua /^function M.set_frame()$/;" f class:debugger
set_lexer _HOME/core/.buffer.luadoc /^function set_lexer(buffer, lexer) end$/;" f class:buffer
set_save_point _HOME/core/.buffer.luadoc /^function set_save_point(buffer) end$/;" f class:buffer
set_sel _HOME/core/.buffer.luadoc /^function set_sel(buffer, start_pos, end_pos) end$/;" f class:buffer
-set_sel_back _HOME/core/.buffer.luadoc /^function set_sel_back(buffer, use_setting, color) end$/;" f class:buffer
-set_sel_fore _HOME/core/.buffer.luadoc /^function set_sel_fore(buffer, use_setting, color) end$/;" f class:buffer
+set_sel_back _HOME/core/.view.luadoc /^function set_sel_back(view, use_setting, color) end$/;" f class:view
+set_sel_fore _HOME/core/.view.luadoc /^function set_sel_fore(view, use_setting, color) end$/;" f class:view
set_selection _HOME/core/.buffer.luadoc /^function set_selection(buffer, end_pos, start_pos) end$/;" f class:buffer
set_styling _HOME/core/.buffer.luadoc /^function set_styling(buffer, length, style) end$/;" f class:buffer
set_target_range _HOME/core/.buffer.luadoc /^function set_target_range(buffer, start_pos, end_pos) end$/;" f class:buffer
set_text _HOME/core/.buffer.luadoc /^function set_text(buffer, text) end$/;" f class:buffer
set_theme _HOME/core/.buffer.luadoc /^function set_theme(buffer, name, props) end$/;" f class:buffer
-set_visible_policy _HOME/core/.buffer.luadoc /^function set_visible_policy(buffer, policy, y) end$/;" f class:buffer
+set_visible_policy _HOME/core/.view.luadoc /^function set_visible_policy(view, policy, y) end$/;" f class:view
set_watch _HOME/modules/debugger/init.lua /^function M.set_watch(expr)$/;" f class:debugger
-set_whitespace_back _HOME/core/.buffer.luadoc /^function set_whitespace_back(buffer, use_setting, color) end$/;" f class:buffer
-set_whitespace_fore _HOME/core/.buffer.luadoc /^function set_whitespace_fore(buffer, use_setting, color) end$/;" f class:buffer
-set_x_caret_policy _HOME/core/.buffer.luadoc /^function set_x_caret_policy(buffer, policy, x) end$/;" f class:buffer
-set_y_caret_policy _HOME/core/.buffer.luadoc /^function set_y_caret_policy(buffer, policy, y) end$/;" f class:buffer
+set_whitespace_back _HOME/core/.view.luadoc /^function set_whitespace_back(view, use_setting, color) end$/;" f class:view
+set_whitespace_fore _HOME/core/.view.luadoc /^function set_whitespace_fore(view, use_setting, color) end$/;" f class:view
+set_x_caret_policy _HOME/core/.view.luadoc /^function set_x_caret_policy(view, policy, x) end$/;" f class:view
+set_y_caret_policy _HOME/core/.view.luadoc /^function set_y_caret_policy(view, policy, y) end$/;" f class:view
show_all_diagnostics _HOME/modules/lsp/init.lua /^module('lsp')]]$/;" F class:lsp
show_documentation _HOME/modules/textadept/editing.lua /^function M.show_documentation(pos, case_insensitive)$/;" f class:textadept.editing
-show_lines _HOME/core/.buffer.luadoc /^function show_lines(buffer, start_line, end_line) end$/;" f class:buffer
+show_lines _HOME/core/.view.luadoc /^function show_lines(view, start_line, end_line) end$/;" f class:view
signature_help _HOME/modules/lsp/init.lua /^function M.signature_help()$/;" f class:lsp
silent_print _HOME/core/ui.lua /^module('ui')]]$/;" F class:ui
size _HOME/core/.view.luadoc /^module('view')$/;" F class:view
@@ -1041,19 +1052,19 @@ stuttered_page_up _HOME/core/.buffer.luadoc /^function stuttered_page_up(buffer)
stuttered_page_up_extend _HOME/core/.buffer.luadoc /^function stuttered_page_up_extend(buffer) end$/;" f class:buffer
style_at _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
style_at _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
-style_back _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_bold _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_case _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_changeable _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_clear_all _HOME/core/.buffer.luadoc /^function style_clear_all(buffer) end$/;" f class:buffer
-style_eol_filled _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_font _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_fore _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_italic _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_reset_default _HOME/core/.buffer.luadoc /^function style_reset_default(buffer) end$/;" f class:buffer
-style_size _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_underline _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-style_visible _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+style_back _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_bold _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_case _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_changeable _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_clear_all _HOME/core/.view.luadoc /^function style_clear_all(view) end$/;" f class:view
+style_eol_filled _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_font _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_fore _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_italic _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_reset_default _HOME/core/.view.luadoc /^function style_reset_default(view) end$/;" f class:view
+style_size _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_underline _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+style_visible _HOME/core/.view.luadoc /^module('view')$/;" F class:view
suggest _HOME/modules/spellcheck/init.lua /^function spellchecker:suggest(word) end$/;" f class:spellchecker
swap_main_anchor_caret _HOME/core/.buffer.luadoc /^function swap_main_anchor_caret(buffer) end$/;" f class:buffer
switch_buffer _HOME/core/ui.lua /^function ui.switch_buffer(zorder)$/;" f class:ui
@@ -1061,7 +1072,7 @@ sync_buffer _HOME/modules/lsp/init.lua /^function Server:sync_buffer()$/;" f cla
tab _HOME/core/.buffer.luadoc /^function tab(buffer) end$/;" f class:buffer
tab_context_menu _HOME/core/ui.lua /^module('ui')]]$/;" F class:ui
tab_context_menu _HOME/modules/textadept/menu.lua /^local default_tab_context_menu = {$/;" t class:textadept.menu
-tab_draw_mode _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+tab_draw_mode _HOME/core/.view.luadoc /^module('view')$/;" F class:view
tab_indents _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
tab_label _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
tab_width _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
@@ -1078,10 +1089,10 @@ target_start _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
target_start_virtual_space _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
target_text _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
target_whole_document _HOME/core/.buffer.luadoc /^function target_whole_document(buffer) end$/;" f class:buffer
-text_height _HOME/core/.buffer.luadoc /^function text_height(buffer, line) end$/;" f class:buffer
+text_height _HOME/core/.view.luadoc /^function text_height(view, line) end$/;" f class:view
text_length _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
text_range _HOME/core/.buffer.luadoc /^function text_range(buffer, start_pos, end_pos) end$/;" f class:buffer
-text_width _HOME/core/.buffer.luadoc /^function text_width(buffer, style_num, text) end$/;" f class:buffer
+text_width _HOME/core/.view.luadoc /^function text_width(view, style_num, text) end$/;" f class:view
textadept _HOME/modules/textadept/init.lua /^module('textadept')]]$/;" m
textadept.bookmarks _HOME/modules/textadept/bookmarks.lua /^module('textadept.bookmarks')]]$/;" m
textadept.editing _HOME/modules/textadept/editing.lua /^module('textadept.editing')]]$/;" m
@@ -1096,13 +1107,14 @@ textbox _HOME/core/.ui.dialogs.luadoc /^function textbox(options) end$/;" f clas
theme _HOME/modules/file_diff/init.lua /^module('file_diff')]]$/;" F class:file_diff
timeout _HOME/core/init.lua /^local timeout$/;" f
title _HOME/core/ui.lua /^module('ui')]]$/;" F class:ui
+to_eol _HOME/lexers/lexer.lua /^function M.to_eol(prefix, escape)$/;" f class:lexer
to_html _HOME/modules/export/init.lua /^function M.to_html(filename, out_filename)$/;" f class:export
toggle _HOME/modules/textadept/bookmarks.lua /^function M.toggle()$/;" f class:textadept.bookmarks
toggle_block _HOME/modules/ruby/init.lua /^function M.toggle_block()$/;" f class:_M.ruby
toggle_breakpoint _HOME/modules/debugger/init.lua /^function M.toggle_breakpoint(file, line)$/;" f class:debugger
toggle_caret_sticky _HOME/core/.buffer.luadoc /^function toggle_caret_sticky(buffer) end$/;" f class:buffer
-toggle_fold _HOME/core/.buffer.luadoc /^function toggle_fold(buffer, line) end$/;" f class:buffer
-toggle_fold_show_text _HOME/core/.buffer.luadoc /^function toggle_fold_show_text(buffer, line, text) end$/;" f class:buffer
+toggle_fold _HOME/core/.view.luadoc /^function toggle_fold(view, line) end$/;" f class:view
+toggle_fold_show_text _HOME/core/.view.luadoc /^function toggle_fold_show_text(view, line, text) end$/;" f class:view
token _HOME/lexers/lexer.lua /^function M.token(name, patt)$/;" f class:lexer
transpose_chars _HOME/modules/textadept/editing.lua /^function M.transpose_chars()$/;" f class:textadept.editing
try_to_autocomplete_end _HOME/modules/ruby/init.lua /^function M.try_to_autocomplete_end()$/;" f class:_M.ruby
@@ -1119,7 +1131,7 @@ upper _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
upper_case _HOME/core/.buffer.luadoc /^function upper_case(buffer) end$/;" f class:buffer
use_tabs _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
user_list_show _HOME/core/.buffer.luadoc /^function user_list_show(buffer, id, items) end$/;" f class:buffer
-v_scroll_bar _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+v_scroll_bar _HOME/core/.view.luadoc /^module('view')$/;" F class:view
variables _HOME/modules/debugger/init.lua /^function M.variables()$/;" f class:debugger
vc_home _HOME/core/.buffer.luadoc /^function vc_home(buffer) end$/;" f class:buffer
vc_home_display _HOME/core/.buffer.luadoc /^function vc_home_display(buffer) end$/;" f class:buffer
@@ -1128,16 +1140,16 @@ vc_home_extend _HOME/core/.buffer.luadoc /^function vc_home_extend(buffer) end$/
vc_home_rect_extend _HOME/core/.buffer.luadoc /^function vc_home_rect_extend(buffer) end$/;" f class:buffer
vc_home_wrap _HOME/core/.buffer.luadoc /^function vc_home_wrap(buffer) end$/;" f class:buffer
vc_home_wrap_extend _HOME/core/.buffer.luadoc /^function vc_home_wrap_extend(buffer) end$/;" f class:buffer
-vertical_centre_caret _HOME/core/.buffer.luadoc /^function vertical_centre_caret(buffer) end$/;" f class:buffer
+vertical_centre_caret _HOME/core/.view.luadoc /^function vertical_centre_caret(view) end$/;" f class:view
view _HOME/core/.view.luadoc /^module('view')$/;" m
view _HOME/core/init.lua /^local view$/;" t
-view_eol _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-view_ws _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+view_eol _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+view_ws _HOME/core/.view.luadoc /^module('view')$/;" F class:view
virtual_space_options _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-visible_from_doc_line _HOME/core/.buffer.luadoc /^function visible_from_doc_line(buffer, line) end$/;" f class:buffer
+visible_from_doc_line _HOME/core/.view.luadoc /^function visible_from_doc_line(view, line) end$/;" f class:view
wait _HOME/core/.os.luadoc /^function spawn_proc:wait() end$/;" f class:spawn_proc
whitespace_chars _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-whitespace_size _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+whitespace_size _HOME/core/.view.luadoc /^module('view')$/;" F class:view
whole_word _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
whole_word_label_text _HOME/modules/textadept/find.lua /^module('ui.find')]]$/;" F class:ui.find
word _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
@@ -1157,19 +1169,19 @@ word_right_end _HOME/core/.buffer.luadoc /^function word_right_end(buffer) end$/
word_right_end_extend _HOME/core/.buffer.luadoc /^function word_right_end_extend(buffer) end$/;" f class:buffer
word_right_extend _HOME/core/.buffer.luadoc /^function word_right_extend(buffer) end$/;" f class:buffer
word_start_position _HOME/core/.buffer.luadoc /^function word_start_position(buffer, pos, only_word_chars) end$/;" f class:buffer
-wrap_count _HOME/core/.buffer.luadoc /^function wrap_count(buffer, line) end$/;" f class:buffer
-wrap_indent_mode _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-wrap_mode _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-wrap_start_indent _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-wrap_visual_flags _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-wrap_visual_flags_location _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+wrap_count _HOME/core/.view.luadoc /^function wrap_count(view, line) end$/;" f class:view
+wrap_indent_mode _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+wrap_mode _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+wrap_start_indent _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+wrap_visual_flags _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+wrap_visual_flags_location _HOME/core/.view.luadoc /^module('view')$/;" F class:view
write _HOME/core/.os.luadoc /^function spawn_proc:write(...) end$/;" f class:spawn_proc
-x_offset _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
+x_offset _HOME/core/.view.luadoc /^module('view')$/;" F class:view
xdigit _HOME/lexers/lexer.lua /^module('lexer')]=]$/;" F class:lexer
yaml _HOME/modules/yaml/init.lua /^keys.yaml = {$/;" t class:keys
yaml _HOME/modules/yaml/init.lua /^module('_M.yaml')]]$/;" m class:_M
yaml _HOME/modules/yaml/init.lua /^snippets.yaml = {}$/;" t class:snippets
yesno_msgbox _HOME/core/.ui.dialogs.luadoc /^function yesno_msgbox(options) end$/;" f class:ui.dialogs
-zoom _HOME/core/.buffer.luadoc /^module('buffer')$/;" F class:buffer
-zoom_in _HOME/core/.buffer.luadoc /^function zoom_in(buffer) end$/;" f class:buffer
-zoom_out _HOME/core/.buffer.luadoc /^function zoom_out(buffer) end$/;" f class:buffer \ No newline at end of file
+zoom _HOME/core/.view.luadoc /^module('view')$/;" F class:view
+zoom_in _HOME/core/.view.luadoc /^function zoom_in(view) end$/;" f class:view
+zoom_out _HOME/core/.view.luadoc /^function zoom_out(view) end$/;" f class:view \ No newline at end of file
diff --git a/modules/textadept/command_entry.lua b/modules/textadept/command_entry.lua
index 29bea5b0..001dfa14 100644
--- a/modules/textadept/command_entry.lua
+++ b/modules/textadept/command_entry.lua
@@ -105,7 +105,7 @@ local function run_lua(code)
end
table.sort(items)
result = string.format('{%s}', table.concat(items, ', '))
- if buffer.edge_column > 0 and #result > buffer.edge_column then
+ if view.edge_column > 0 and #result > view.edge_column then
local indent = string.rep(' ', buffer.tab_width)
result = string.format(
'{\n%s%s\n}', indent, table.concat(items, ',\n' .. indent))
diff --git a/modules/textadept/editing.lua b/modules/textadept/editing.lua
index 8206b93e..e7e5d9d0 100644
--- a/modules/textadept/editing.lua
+++ b/modules/textadept/editing.lua
@@ -53,7 +53,7 @@ M.XPM_IMAGES = {
}
events.connect(events.VIEW_NEW, function()
for name, i in pairs(M.XPM_IMAGES) do
- if type(name) == 'string' then buffer:register_image(i, M.XPM_IMAGES[i]) end
+ if type(name) == 'string' then view:register_image(i, M.XPM_IMAGES[i]) end
end
end)
for _ = 1, #M.XPM_IMAGES do _SCINTILLA.next_image_type() end -- sync
@@ -160,11 +160,11 @@ events.connect(events.UPDATE_UI, function(updated)
local pos = buffer.selection_n_caret[buffer.main_selection]
if M.brace_matches[buffer.char_at[pos]] then
local match = buffer:brace_match(pos, 0)
- local f = match ~= -1 and buffer.brace_highlight or buffer.brace_bad_light
+ local f = match ~= -1 and view.brace_highlight or view.brace_bad_light
f(buffer, pos, match)
return
end
- buffer:brace_bad_light(-1)
+ view:brace_bad_light(-1)
end)
-- Moves over typeover characters when typed, taking multiple selections into
@@ -364,7 +364,7 @@ function M.goto_line(line)
line = tonumber(value)
if button ~= 1 or not line then return end
end
- buffer:ensure_visible_enforce_policy(line)
+ view:ensure_visible_enforce_policy(line)
buffer:goto_line(line)
end
args.register(
diff --git a/modules/textadept/file_types.lua b/modules/textadept/file_types.lua
index 2889734c..34ae1dae 100644
--- a/modules/textadept/file_types.lua
+++ b/modules/textadept/file_types.lua
@@ -70,7 +70,7 @@ local function set_lexer(buffer, lang)
buffer._lexer = lang
if package.searchpath(lang, package.path) then _M[lang] = require(lang) end
if buffer ~= ui.command_entry then events.emit(events.LEXER_LOADED, lang) end
- local last_line = buffer.first_visible_line + buffer.lines_on_screen
+ local last_line = view.first_visible_line + view.lines_on_screen
buffer:colourise(1, buffer:position_from_line(last_line + 1)) -- refresh
end
diff --git a/modules/textadept/find.lua b/modules/textadept/find.lua
index d15558fb..e98b1403 100644
--- a/modules/textadept/find.lua
+++ b/modules/textadept/find.lua
@@ -122,7 +122,7 @@ local function find(text, next, flags, no_wrap, wrapped)
if text == '' then return end
if not flags then flags = get_flags() end
if flags >= 1 << 31 then M.find_in_files() return end -- not performed here
- local first_visible_line = buffer.first_visible_line -- for 'no results found'
+ local first_visible_line = view.first_visible_line -- for 'no results found'
-- If text is selected, assume it is from the current search and move the
-- caret appropriately for the next search.
@@ -132,8 +132,8 @@ local function find(text, next, flags, no_wrap, wrapped)
buffer:search_anchor()
local f = next and buffer.search_next or buffer.search_prev
local pos = f(buffer, flags, text)
- buffer:ensure_visible_enforce_policy(buffer:line_from_position(pos))
- buffer:scroll_range(buffer.anchor, buffer.current_pos)
+ view:ensure_visible_enforce_policy(buffer:line_from_position(pos))
+ view:scroll_range(buffer.anchor, buffer.current_pos)
find_text, found_text = text, buffer:get_sel_text() -- track for "replace all"
-- If nothing was found, wrap the search.
@@ -144,7 +144,7 @@ local function find(text, next, flags, no_wrap, wrapped)
pos = find(text, next, flags, true, true)
if pos == -1 then
ui.statusbar_text = _L['No results found']
- buffer:line_scroll(0, first_visible_line - buffer.first_visible_line)
+ view:line_scroll(0, first_visible_line - view.first_visible_line)
buffer:goto_pos(anchor)
end
elseif not wrapped then
diff --git a/modules/textadept/keys.lua b/modules/textadept/keys.lua
index a72899ca..212f85ea 100644
--- a/modules/textadept/keys.lua
+++ b/modules/textadept/keys.lua
@@ -486,8 +486,8 @@ if GUI then
keys[not OSX and 'caI' or 'cI'] = m_view[_L['Toggle Show Indent Guides']][2]
keys[not OSX and 'caV' or 'cV'] = m_view[_L['Toggle Virtual Space']][2]
end
-keys[not OSX and GUI and 'c=' or 'm='] = buffer.zoom_in
-keys[not OSX and GUI and 'c-' or 'm-'] = buffer.zoom_out
+keys[not OSX and GUI and 'c=' or 'm='] = view.zoom_in
+keys[not OSX and GUI and 'c-' or 'm-'] = view.zoom_out
keys[not OSX and GUI and 'c0' or 'm0'] = m_view[_L['Reset Zoom']][2]
-- Help.
@@ -512,7 +512,7 @@ if OSX then
buffer:line_end_extend()
if not buffer.selection_empty then buffer:cut() else buffer:clear() end
end
- keys.cl = buffer.vertical_centre_caret
+ keys.cl = view.vertical_centre_caret
-- GTK-OSX reports Fn-key as a single keycode which confuses Scintilla. Do
-- not propagate it.
keys.fn = function() return true end
diff --git a/modules/textadept/menu.lua b/modules/textadept/menu.lua
index a92c2498..c998ade6 100644
--- a/modules/textadept/menu.lua
+++ b/modules/textadept/menu.lua
@@ -292,17 +292,15 @@ local default_menubar = {
{_L['UTF-16 Encoding'], function() set_encoding('UTF-16LE') end}
},
SEPARATOR,
- {_L['Toggle View EOL'], function()
- buffer.view_eol = not buffer.view_eol
- end},
+ {_L['Toggle View EOL'], function() view.view_eol = not view.view_eol end},
{_L['Toggle Wrap Mode'], function()
- local first_visible_line = buffer.first_visible_line
- local display_line = buffer:visible_from_doc_line(first_visible_line)
- buffer.wrap_mode = buffer.wrap_mode == 0 and buffer.WRAP_WHITESPACE or 0
- buffer:line_scroll(0, first_visible_line - display_line)
+ local first_visible_line = view.first_visible_line
+ local display_line = view:visible_from_doc_line(first_visible_line)
+ view.wrap_mode = view.wrap_mode == 0 and view.WRAP_WHITESPACE or 0
+ view:line_scroll(0, first_visible_line - display_line)
end},
{_L['Toggle View Whitespace'], function()
- buffer.view_ws = buffer.view_ws == 0 and buffer.WS_VISIBLEALWAYS or 0
+ view.view_ws = view.view_ws == 0 and view.WS_VISIBLEALWAYS or 0
end},
SEPARATOR,
{_L['Select Lexer...'], textadept.file_types.select_lexer},
@@ -318,28 +316,28 @@ local default_menubar = {
{_L['Unsplit View'], function() view:unsplit() end},
{_L['Unsplit All Views'], function() while view:unsplit() do end end},
{_L['Grow View'], function()
- if view.size then view.size = view.size + buffer:text_height(1) end
+ if view.size then view.size = view.size + view:text_height(1) end
end},
{_L['Shrink View'], function()
- if view.size then view.size = view.size - buffer:text_height(1) end
+ if view.size then view.size = view.size - view:text_height(1) end
end},
SEPARATOR,
{_L['Toggle Current Fold'], function()
- buffer:toggle_fold(buffer:line_from_position(buffer.current_pos))
+ view:toggle_fold(buffer:line_from_position(buffer.current_pos))
end},
SEPARATOR,
{_L['Toggle Show Indent Guides'], function()
- local off = buffer.indentation_guides == 0
- buffer.indentation_guides = off and buffer.IV_LOOKBOTH or 0
+ local off = view.indentation_guides == 0
+ view.indentation_guides = off and view.IV_LOOKBOTH or 0
end},
{_L['Toggle Virtual Space'], function()
local off = buffer.virtual_space_options == 0
buffer.virtual_space_options = off and buffer.VS_USERACCESSIBLE or 0
end},
SEPARATOR,
- {_L['Zoom In'], buffer.zoom_in},
- {_L['Zoom Out'], buffer.zoom_out},
- {_L['Reset Zoom'], function() buffer.zoom = 0 end}
+ {_L['Zoom In'], view.zoom_in},
+ {_L['Zoom Out'], view.zoom_out},
+ {_L['Reset Zoom'], function() view.zoom = 0 end}
},
{
title = _L['Help'],
diff --git a/modules/textadept/session.lua b/modules/textadept/session.lua
index b446ca54..43bb9e08 100644
--- a/modules/textadept/session.lua
+++ b/modules/textadept/session.lua
@@ -62,7 +62,7 @@ function M.load(filename)
if lfs.attributes(buf.filename) then
io.open_file(buf.filename)
buffer:set_sel(buf.anchor, buf.current_pos)
- buffer:line_scroll(0, buf.top_line - buffer.first_visible_line)
+ view:line_scroll(0, buf.top_line - view.first_visible_line)
for _, line in ipairs(buf.bookmarks) do
buffer:marker_add(line, textadept.bookmarks.MARK_BOOKMARK)
end
@@ -165,7 +165,7 @@ function M.save(filename)
filename = buffer.filename or buffer._type,
anchor = current and buffer.anchor or buffer._anchor,
current_pos = current and buffer.current_pos or buffer._current_pos,
- top_line = current and buffer.first_visible_line or buffer._top_line,
+ top_line = current and view.first_visible_line or buffer._top_line,
}
local bookmarks = {}
local BOOKMARK_BIT = 1 << textadept.bookmarks.MARK_BOOKMARK - 1
diff --git a/modules/textadept/snippets.lua b/modules/textadept/snippets.lua
index 707ab7ca..73f46bde 100644
--- a/modules/textadept/snippets.lua
+++ b/modules/textadept/snippets.lua
@@ -653,8 +653,8 @@ events.connect(events.UPDATE_UI, function(updated)
end)
events.connect(events.VIEW_NEW, function()
- buffer.indic_style[INDIC_SNIPPET] = buffer.INDIC_HIDDEN
- buffer.indic_style[INDIC_CURRENTPLACEHOLDER] = buffer.INDIC_HIDDEN
+ view.indic_style[INDIC_SNIPPET] = view.INDIC_HIDDEN
+ view.indic_style[INDIC_CURRENTPLACEHOLDER] = view.INDIC_HIDDEN
end)
-- Returns for the word behind the caret a list of snippet trigger word
diff --git a/scripts/gen_iface.lua b/scripts/gen_iface.lua
index dcd4b9b5..7d03cd5a 100755
--- a/scripts/gen_iface.lua
+++ b/scripts/gen_iface.lua
@@ -244,11 +244,11 @@ f:write([[
local marker_number, indic_number, list_type, image_type = 0, 0, 0, 0
---
--- Returns a unique marker number for use with `buffer.marker_define()`.
+-- Returns a unique marker number for use with `view.marker_define()`.
-- Use this function for custom markers in order to prevent clashes with
-- identifiers of other custom markers.
-- @usage local marknum = _SCINTILLA.next_marker_number()
--- @see buffer.marker_define
+-- @see view.marker_define
-- @name next_marker_number
function M.next_marker_number()
assert(marker_number < M.constants.MARKER_MAX, 'too many markers in use')
@@ -261,7 +261,7 @@ end
-- Use this function for custom indicators in order to prevent clashes with
-- identifiers of other custom indicators.
-- @usage local indic_num = _SCINTILLA.next_indic_number()
--- @see buffer.indic_style
+-- @see view.indic_style
-- @name next_indic_number
function M.next_indic_number()
assert(indic_number < M.constants.INDICATOR_MAX, 'too many indicators in use')
@@ -284,12 +284,12 @@ end
---
-- Returns a unique image type identier number for use with
--- `buffer.register_image()` and `buffer.register_rgba_image()`.
+-- `view.register_image()` and `view.register_rgba_image()`.
-- Use this function for custom image types in order to prevent clashes with
-- identifiers of other custom image types.
-- @usage local image_type = _SCINTILLA.next_image_type()
--- @see buffer.register_image
--- @see buffer.register_rgba_image
+-- @see view.register_image
+-- @see view.register_rgba_image
-- @name next_image_type
function M.next_image_type()
image_type = image_type + 1
diff --git a/src/textadept.c b/src/textadept.c
index 59794441..dc79ea47 100644
--- a/src/textadept.c
+++ b/src/textadept.c
@@ -1188,9 +1188,10 @@ static int call_scintilla(
static int call_scintilla_lua(lua_State *L) {
Scintilla *view = focused_view;
// If optional buffer/view argument is given, check it.
- if (is_type(L, 1, "ta_buffer")) view = view_for_doc(L, 1);
- //else if (is_type(L, 1, "ta_view"))
- // view = lua_toview(L, 1);
+ if (is_type(L, 1, "ta_buffer"))
+ view = view_for_doc(L, 1);
+ else if (is_type(L, 1, "ta_view"))
+ view = lua_toview(L, 1);
// Interface table is of the form {msg, rtype, wtype, ltype}.
return call_scintilla(
L, view, get_int_field(L, lua_upvalueindex(1), 1),
@@ -1239,9 +1240,8 @@ static int tab_clicked(GtkWidget *label, GdkEventButton *event, void *L) {
/** `buffer[k].__index` metamethod. */
static int property_index(lua_State *L) {
- //Scintilla *view = (lua_getfield(L, 1, "_self"), !is_type(L, -1, "ta_view"))?
- // view_for_doc(L, -1) : lua_toview(L, -1);
- Scintilla *view = (lua_getfield(L, 1, "_self"), view_for_doc(L, -1));
+ Scintilla *view = (lua_getfield(L, 1, "_self"), !is_type(L, -1, "ta_view")) ?
+ view_for_doc(L, -1) : lua_toview(L, -1);
lua_getfield(L, 1, "_iface"); // {get_id, set_id, rtype, wtype}.
int msg = get_int_field(L, -1, 1), wtype = get_int_field(L, -1, 4),
ltype = SVOID, rtype = get_int_field(L, -1, 3);
@@ -1251,9 +1251,8 @@ static int property_index(lua_State *L) {
/** `buffer[k].__newindex` metamethod. */
static int property_newindex(lua_State *L) {
- //Scintilla *view = (lua_getfield(L, 1, "_self"), !is_type(L, -1, "ta_view"))?
- // view_for_doc(L, -1) : lua_toview(L, -1);
- Scintilla *view = (lua_getfield(L, 1, "_self"), view_for_doc(L, -1));
+ Scintilla *view = (lua_getfield(L, 1, "_self"), !is_type(L, -1, "ta_view")) ?
+ view_for_doc(L, -1) : lua_toview(L, -1);
lua_getfield(L, 1, "_iface"); // {get_id, set_id, rtype, wtype}.
int msg = get_int_field(L, -1, 2), wtype = get_int_field(L, -1, 4),
ltype = get_int_field(L, -1, 3), rtype = SVOID;
@@ -1265,8 +1264,8 @@ static int property_newindex(lua_State *L) {
// Helper function for `buffer_index()` and `view_index()` that gets Scintilla
// properties.
static void get_property(lua_State *L) {
- //Scintilla *view = is_type(L, 1, "ta_buffer") ? view_for_doc(L, 1) :
- // lua_toview(L, 1);
+ Scintilla *view = is_type(L, 1, "ta_buffer") ? view_for_doc(L, 1) :
+ lua_toview(L, 1);
// Interface table is of the form {get_id, set_id, rtype, wtype}.
int msg = get_int_field(L, -1, 1), wtype = get_int_field(L, -1, 4),
ltype = SVOID, rtype = get_int_field(L, -1, 3);
@@ -1276,14 +1275,14 @@ static void get_property(lua_State *L) {
lua_pushvalue(L, 1), lua_setfield(L, -2, "_self");
lua_pushvalue(L, -2), lua_setfield(L, -2, "_iface");
set_metatable(L, -1, "ta_property", property_index, property_newindex);
- } else call_scintilla(L, view_for_doc(L, 1), msg, wtype, ltype, rtype, 2);
+ } else call_scintilla(L, view, msg, wtype, ltype, rtype, 2);
}
// Helper function for `buffer_newindex()` and `view_newindex()` that sets
// Scintilla properties.
static void set_property(lua_State *L) {
- //Scintilla *view = is_type(L, 1, "ta_buffer") ? view_for_doc(L, 1) :
- // lua_toview(L, 1);
+ Scintilla *view = is_type(L, 1, "ta_buffer") ? view_for_doc(L, 1) :
+ lua_toview(L, 1);
// Interface table is of the form {get_id, set_id, rtype, wtype}.
int msg = get_int_field(L, -1, 2), wtype = get_int_field(L, -1, 3),
ltype = get_int_field(L, -1, 4), rtype = SVOID, temp;
@@ -1291,7 +1290,7 @@ static void set_property(lua_State *L) {
if (wtype == SSTRING || wtype == SSTRINGRET ||
msg == SCI_SETMARGINLEFT || msg == SCI_SETMARGINRIGHT)
temp = wtype != SSTRINGRET ? wtype : SSTRING, wtype = ltype, ltype = temp;
- call_scintilla(L, view_for_doc(L, 1), msg, wtype, ltype, rtype, 3);
+ call_scintilla(L, view, msg, wtype, ltype, rtype, 3);
}
/** `buffer.__index` metamethod. */
@@ -2101,20 +2100,21 @@ static int view_index(lua_State *L) {
if ((p = get_parent_pane(pane, lua_toview(L, 1))))
lua_pushinteger(L, p->split_size);
#endif
- //} else if (lua_getfield(L, LUA_REGISTRYINDEX, "ta_functions"),
- // lua_pushvalue(L, 2), lua_rawget(L, -2) == LUA_TTABLE)
- // // If the key is a Scintilla function, return a callable closure.
- // lua_pushcclosure(L, call_scintilla_lua, 1);
- //else if (lua_getfield(L, LUA_REGISTRYINDEX, "ta_properties"),
- // lua_pushvalue(L, 2), lua_rawget(L, -2) == LUA_TTABLE)
- // // If the key is a Scintilla property, determine if it is an indexible one
- // // or not. If so, return a table with the appropriate metatable; otherwise
- // // call Scintilla to get the property's value.
- // get_property(L);
- //else if (lua_getfield(L, LUA_REGISTRYINDEX, "ta_constants"),
- // lua_pushvalue(L, 2), lua_rawget(L, -2) == LUA_TNUMBER); // pushed
- // // If the key is a Scintilla constant, return its value.
- } else lua_pushvalue(L, 2), lua_rawget(L, 1);
+ } else if (lua_getfield(L, LUA_REGISTRYINDEX, "ta_functions"),
+ lua_pushvalue(L, 2), lua_rawget(L, -2) == LUA_TTABLE)
+ // If the key is a Scintilla function, return a callable closure.
+ lua_pushcclosure(L, call_scintilla_lua, 1);
+ else if (lua_getfield(L, LUA_REGISTRYINDEX, "ta_properties"),
+ lua_pushvalue(L, 2), lua_rawget(L, -2) == LUA_TTABLE)
+ // If the key is a Scintilla property, determine if it is an indexible one
+ // or not. If so, return a table with the appropriate metatable; otherwise
+ // call Scintilla to get the property's value.
+ get_property(L);
+ else if (lua_getfield(L, LUA_REGISTRYINDEX, "ta_constants"),
+ lua_pushvalue(L, 2), lua_rawget(L, -2) == LUA_TNUMBER); // pushed
+ // If the key is a Scintilla constant, return its value.
+ else
+ lua_pushvalue(L, 2), lua_rawget(L, 1);
return 1;
}
@@ -2132,10 +2132,11 @@ static int view_newindex(lua_State *L) {
p->split_size = fmax(luaL_checkinteger(L, 3), 0),
resize_pane(p, p->rows, p->cols, p->y, p->x);
#endif
- //} else if (lua_getfield(L, LUA_REGISTRYINDEX, "ta_properties"),
- // lua_pushvalue(L, 2), lua_rawget(L, -2) == LUA_TTABLE)
- // set_property(L);
- } else lua_pushvalue(L, 2), lua_pushvalue(L, 3), lua_rawset(L, 1);
+ } else if (lua_getfield(L, LUA_REGISTRYINDEX, "ta_properties"),
+ lua_pushvalue(L, 2), lua_rawget(L, -2) == LUA_TTABLE)
+ set_property(L);
+ else
+ lua_pushvalue(L, 2), lua_pushvalue(L, 3), lua_rawset(L, 1);
return 0;
}
diff --git a/test/test.lua b/test/test.lua
index b27329fa..319a7e16 100644
--- a/test/test.lua
+++ b/test/test.lua
@@ -190,8 +190,8 @@ local function check_localizations(filename, L)
print(string.format('Processing file "%s"', filename:gsub(_HOME, '')))
local count = 0
for line in io.lines(filename) do
- local id = line:match([=[_L%[['"]([^'"]+)['"]%]]=])
- if id and assert(L[id], 'locale missing id "%s"', id) then
+ for id in line:gmatch([=[_L%[['"]([^'"]+)['"]%]]=]) do
+ assert(L[id], 'locale missing id "%s"', id)
count = count + 1
end
end
@@ -208,8 +208,8 @@ local function load_extra_localizations(filename, L)
local count = 0
for line in io.lines(filename) do
if line:find('_L%b[]%s*=') then
- local id = line:match([=[_L%[['"]([^'"]+)['"]%]%s*=]=])
- if id and assert(not L[id], 'duplicate locale id "%s"', id) then
+ for id in line:gmatch([=[_L%[['"]([^'"]+)['"]%]%s*=]=]) do
+ assert(not L[id], 'duplicate locale id "%s"', id)
L[id], count = true, count + 1
end
end
@@ -1020,17 +1020,17 @@ function test_ui_buffer_switch_save_restore_properties()
local filename = _HOME .. '/test/ui/test.lua'
io.open_file(filename)
buffer:goto_pos(10)
- buffer:fold_line(
- buffer:line_from_position(buffer.current_pos), buffer.FOLDACTION_CONTRACT)
- buffer.view_eol = true
- buffer.margin_width_n[INDEX(1)] = 0 -- hide line numbers
+ view:fold_line(
+ buffer:line_from_position(buffer.current_pos), view.FOLDACTION_CONTRACT)
+ view.view_eol = true
+ view.margin_width_n[INDEX(1)] = 0 -- hide line numbers
view:goto_buffer(-1)
- assert(buffer.margin_width_n[INDEX(1)] > 0, 'line numbers are still hidden')
+ assert(view.margin_width_n[INDEX(1)] > 0, 'line numbers are still hidden')
view:goto_buffer(1)
assert_equal(buffer.current_pos, 10)
- assert_equal(buffer.fold_expanded[buffer:line_from_position(buffer.current_pos)], false)
- assert_equal(buffer.view_eol, true)
- assert_equal(buffer.margin_width_n[INDEX(1)], 0)
+ assert_equal(view.fold_expanded[buffer:line_from_position(buffer.current_pos)], false)
+ assert_equal(view.view_eol, true)
+ assert_equal(view.margin_width_n[INDEX(1)], 0)
buffer:close()
end
@@ -1146,7 +1146,7 @@ function test_command_entry_run_lua_abbreviated_env()
run_lua_command('auto_c_active')
assert(buffer:get_text():find('false%s*$'), 'buffer:auto_c_active() result not false')
run_lua_command('view_eol=true')
- assert_equal(buffer.view_eol, true)
+ assert_equal(view.view_eol, true)
-- view get/set.
if #_VIEWS > 1 then view:unsplit() end
run_lua_command('split')
@@ -2278,15 +2278,15 @@ function test_menu_menu_functions()
local use_tabs = buffer.use_tabs
textadept.menu.menubar[_L['Buffer']][_L['Indentation']][_L['Toggle Use Tabs']][2]()
assert(buffer.use_tabs ~= use_tabs, 'use tabs not toggled')
- local view_eol = buffer.view_eol
+ local view_eol = view.view_eol
textadept.menu.menubar[_L['Buffer']][_L['Toggle View EOL']][2]()
- assert(buffer.view_eol ~= view_eol, 'view EOL not toggled')
- local wrap_mode = buffer.wrap_mode
+ assert(view.view_eol ~= view_eol, 'view EOL not toggled')
+ local wrap_mode = view.wrap_mode
textadept.menu.menubar[_L['Buffer']][_L['Toggle Wrap Mode']][2]()
- assert(buffer.wrap_mode ~= wrap_mode, 'wrap mode not toggled')
- local view_whitespace = buffer.view_ws
+ assert(view.wrap_mode ~= wrap_mode, 'wrap mode not toggled')
+ local view_whitespace = view.view_ws
textadept.menu.menubar[_L['Buffer']][_L['Toggle View Whitespace']][2]()
- assert(buffer.view_ws ~= view_whitespace, 'view whitespace not toggled')
+ assert(view.view_ws ~= view_whitespace, 'view whitespace not toggled')
view:split()
ui.update()
local size = view.size
@@ -2298,10 +2298,10 @@ function test_menu_menu_functions()
buffer:set_text('if foo then\n bar\nend')
buffer:colourise(POS(1), -1)
textadept.menu.menubar[_L['View']][_L['Toggle Current Fold']][2]()
- assert_equal(buffer.fold_expanded[buffer:line_from_position(buffer.current_pos)], false)
- local indentation_guides = buffer.indentation_guides
+ assert_equal(view.fold_expanded[buffer:line_from_position(buffer.current_pos)], false)
+ local indentation_guides = view.indentation_guides
textadept.menu.menubar[_L['View']][_L['Toggle Show Indent Guides']][2]()
- assert(buffer.indentation_guides ~= indentation_guides, 'indentation guides not toggled')
+ assert(view.indentation_guides ~= indentation_guides, 'indentation guides not toggled')
local virtual_space = buffer.virtual_space_options
textadept.menu.menubar[_L['View']][_L['Toggle Virtual Space']][2]()
assert(buffer.virtual_space_options ~= virtual_space, 'virtual space not toggled')
@@ -2947,15 +2947,65 @@ function test_view_split_resize_unsplit()
end
function test_buffer_read_write_only_properties()
- assert_raises(function() buffer.all_lines_visible = false end, 'read-only property')
+ assert_raises(function() view.all_lines_visible = false end, 'read-only property')
assert_raises(function() return buffer.auto_c_fill_ups end, 'write-only property')
assert_raises(function() buffer.annotation_text = {} end, 'read-only property')
assert_raises(function() buffer.char_at[POS(1)] = string.byte(' ') end, 'read-only property')
- assert_raises(function() return buffer.marker_alpha[INDEX(1)] end, 'write-only property')
+ assert_raises(function() return view.marker_alpha[INDEX(1)] end, 'write-only property')
end
-- TODO: test init.lua's buffer settings
+-- Load buffer and view API from their respective LuaDoc files.
+local function load_buffer_view_props()
+ local buffer_props, view_props = {}, {}
+ for name, props in pairs{buffer = buffer_props, view = view_props} do
+ for line in io.lines(string.format('%s/core/.%s.luadoc', _HOME, name)) do
+ if line:find('@field') then
+ props[line:match('@field ([%w_]+)')] = true
+ elseif line:find('^function') then
+ props[line:match('^function ([%w_]+)')] = true
+ end
+ end
+ end
+ return buffer_props, view_props
+end
+
+local function check_property_usage(filename, buffer_props, view_props)
+ print(string.format('Processing file "%s"', filename:gsub(_HOME, '')))
+ local line_num, count = 1, 0
+ for line in io.lines(filename) do
+ for pos, id, prop in line:gmatch('()([%w_]+)[.:]([%w_]+)') do
+ if id == 'M' or id == 'f' or id == 'p' or id == 'lexer' or id == 'spawn_proc' then goto continue end
+ if id == 'textadept' and prop == 'MARK_BOOKMARK' then goto continue end
+ if (id == 'ui' or id == 'split') and prop == 'size' then goto continue end
+ if id == 'keys' and prop == 'home' then goto continue end
+ if id == 'Rout' and prop == 'save' then goto continue end
+ if id == 'detail' and (prop == 'filename' or prop == 'column') then goto continue end
+ if (id == 'placeholder' or id == 'ph') and prop == 'length' then goto continue end
+ if id == 'client' and prop == 'close' then goto continue end
+ if (id == 'Foo' or id == 'Array' or id == 'Server') and prop == 'new' then goto continue end
+ if buffer_props[prop] then
+ assert(id == 'buffer' or id == 'buf' or id == 'buffer1' or id == 'buffer2', 'line %d:%d: "%s" should be a buffer property', line_num, pos, prop)
+ count = count + 1
+ elseif view_props[prop] then
+ assert(id == 'view', 'line %d:%d: "%s" should be a view property', line_num, pos, prop)
+ count = count + 1
+ end
+ ::continue::
+ end
+ line_num = line_num + 1
+ end
+ print(string.format('Checked %d buffer/view property usages.', count))
+end
+
+function test_buffer_view_usage()
+ local buffer_props, view_props = load_buffer_view_props()
+ lfs.dir_foreach(_HOME, function(filename)
+ check_property_usage(filename, buffer_props, view_props)
+ end, {'.lua', '.luadoc', '!/lexers', '!/modules/lsp/dkjson.lua', '!/modules/lua/lua.luadoc', '!/modules/debugger/lua/mobdebug.lua', '!/modules/yaml/lyaml.lua', '!/scripts', '!/src'})
+end
+
--------------------------------------------------------------------------------
assert(not WIN32 and not OSX, 'Test suite currently only runs on Linux')
diff --git a/themes/dark.lua b/themes/dark.lua
index d46655d5..6402c165 100644
--- a/themes/dark.lua
+++ b/themes/dark.lua
@@ -2,7 +2,7 @@
-- Dark theme for Textadept.
-- Contributions by Ana Balan.
-local buffer = buffer
+local buffer, view = buffer, view
local property, property_int = buffer.property, buffer.property_int
-- Greyscale colors.
@@ -88,50 +88,50 @@ property['style.variable'] = 'fore:$(color.light_blue)'
property['style.whitespace'] = ''
-- Multiple Selection and Virtual Space
---buffer.additional_sel_alpha =
---buffer.additional_sel_fore =
---buffer.additional_sel_back =
---buffer.additional_caret_fore =
+--view.additional_sel_alpha =
+--view.additional_sel_fore =
+--view.additional_sel_back =
+--view.additional_caret_fore =
-- Caret and Selection Styles.
-buffer:set_sel_fore(true, property_int['color.light_black'])
-buffer:set_sel_back(true, property_int['color.grey'])
---buffer.sel_alpha =
-buffer.caret_fore = property_int['color.grey']
-buffer.caret_line_back = property_int['color.light_black']
---buffer.caret_line_back_alpha =
+view:set_sel_fore(true, property_int['color.light_black'])
+view:set_sel_back(true, property_int['color.grey'])
+--view.sel_alpha =
+view.caret_fore = property_int['color.grey']
+view.caret_line_back = property_int['color.light_black']
+--view.caret_line_back_alpha =
-- Fold Margin.
-buffer:set_fold_margin_colour(true, property_int['color.black'])
-buffer:set_fold_margin_hi_colour(true, property_int['color.black'])
+view:set_fold_margin_colour(true, property_int['color.black'])
+view:set_fold_margin_hi_colour(true, property_int['color.black'])
-- Markers.
local MARK_BOOKMARK = textadept.bookmarks.MARK_BOOKMARK
---buffer.marker_fore[MARK_BOOKMARK] = property_int['color.black']
-buffer.marker_back[MARK_BOOKMARK] = property_int['color.dark_blue']
---buffer.marker_fore[textadept.run.MARK_WARNING] = property_int['color.black']
-buffer.marker_back[textadept.run.MARK_WARNING] = property_int['color.yellow']
---buffer.marker_fore[textadept.run.MARK_ERROR] = property_int['color.black']
-buffer.marker_back[textadept.run.MARK_ERROR] = property_int['color.red']
+--view.marker_fore[MARK_BOOKMARK] = property_int['color.black']
+view.marker_back[MARK_BOOKMARK] = property_int['color.dark_blue']
+--view.marker_fore[textadept.run.MARK_WARNING] = property_int['color.black']
+view.marker_back[textadept.run.MARK_WARNING] = property_int['color.yellow']
+--view.marker_fore[textadept.run.MARK_ERROR] = property_int['color.black']
+view.marker_back[textadept.run.MARK_ERROR] = property_int['color.red']
for i = buffer.MARKNUM_FOLDEREND, buffer.MARKNUM_FOLDEROPEN do -- fold margin
- buffer.marker_fore[i] = property_int['color.black']
- buffer.marker_back[i] = property_int['color.dark_grey']
- buffer.marker_back_selected[i] = property_int['color.light_grey']
+ view.marker_fore[i] = property_int['color.black']
+ view.marker_back[i] = property_int['color.dark_grey']
+ view.marker_back_selected[i] = property_int['color.light_grey']
end
-- Indicators.
-buffer.indic_fore[ui.find.INDIC_FIND] = property_int['color.dark_yellow']
-buffer.indic_alpha[ui.find.INDIC_FIND] = 255
+view.indic_fore[ui.find.INDIC_FIND] = property_int['color.dark_yellow']
+view.indic_alpha[ui.find.INDIC_FIND] = 255
local INDIC_BRACEMATCH = textadept.editing.INDIC_BRACEMATCH
-buffer.indic_fore[INDIC_BRACEMATCH] = property_int['color.light_grey']
+view.indic_fore[INDIC_BRACEMATCH] = property_int['color.light_grey']
local INDIC_HIGHLIGHT = textadept.editing.INDIC_HIGHLIGHT
-buffer.indic_fore[INDIC_HIGHLIGHT] = property_int['color.orange']
-buffer.indic_alpha[INDIC_HIGHLIGHT] = 255
+view.indic_fore[INDIC_HIGHLIGHT] = property_int['color.orange']
+view.indic_alpha[INDIC_HIGHLIGHT] = 255
local INDIC_PLACEHOLDER = textadept.snippets.INDIC_PLACEHOLDER
-buffer.indic_fore[INDIC_PLACEHOLDER] = property_int['color.grey']
+view.indic_fore[INDIC_PLACEHOLDER] = property_int['color.grey']
-- Call tips.
-buffer.call_tip_fore_hlt = property_int['color.light_blue']
+view.call_tip_fore_hlt = property_int['color.light_blue']
-- Long Lines.
-buffer.edge_colour = property_int['color.dark_grey']
+view.edge_colour = property_int['color.dark_grey']
diff --git a/themes/light.lua b/themes/light.lua
index 48c3912a..d72a85f9 100644
--- a/themes/light.lua
+++ b/themes/light.lua
@@ -2,7 +2,7 @@
-- Light theme for Textadept.
-- Contributions by Ana Balan.
-local buffer = buffer
+local buffer, view = buffer, view
local property, property_int = buffer.property, buffer.property_int
-- Greyscale colors.
@@ -88,50 +88,50 @@ property['style.variable'] = 'fore:$(color.dark_lavender)'
property['style.whitespace'] = ''
-- Multiple Selection and Virtual Space
---buffer.additional_sel_alpha =
---buffer.additional_sel_fore =
---buffer.additional_sel_back =
---buffer.additional_caret_fore =
+--view.additional_sel_alpha =
+--view.additional_sel_fore =
+--view.additional_sel_back =
+--view.additional_caret_fore =
-- Caret and Selection Styles.
-buffer:set_sel_fore(true, property_int['color.light_black'])
-buffer:set_sel_back(true, property_int['color.light_grey'])
---buffer.sel_alpha =
-buffer.caret_fore = property_int['color.grey_black']
-buffer.caret_line_back = property_int['color.dark_white']
---buffer.caret_line_back_alpha =
+view:set_sel_fore(true, property_int['color.light_black'])
+view:set_sel_back(true, property_int['color.light_grey'])
+--view.sel_alpha =
+view.caret_fore = property_int['color.grey_black']
+view.caret_line_back = property_int['color.dark_white']
+--view.caret_line_back_alpha =
-- Fold Margin.
-buffer:set_fold_margin_colour(true, property_int['color.white'])
-buffer:set_fold_margin_hi_colour(true, property_int['color.white'])
+view:set_fold_margin_colour(true, property_int['color.white'])
+view:set_fold_margin_hi_colour(true, property_int['color.white'])
-- Markers.
local MARK_BOOKMARK, t_run = textadept.bookmarks.MARK_BOOKMARK, textadept.run
---buffer.marker_fore[MARK_BOOKMARK] = property_int['color.white']
-buffer.marker_back[MARK_BOOKMARK] = property_int['color.dark_blue']
---buffer.marker_fore[t_run.MARK_WARNING] = property_int['color.white']
-buffer.marker_back[t_run.MARK_WARNING] = property_int['color.light_yellow']
---buffer.marker_fore[t_run.MARK_ERROR] = property_int['color.white']
-buffer.marker_back[t_run.MARK_ERROR] = property_int['color.light_red']
+--view.marker_fore[MARK_BOOKMARK] = property_int['color.white']
+view.marker_back[MARK_BOOKMARK] = property_int['color.dark_blue']
+--view.marker_fore[t_run.MARK_WARNING] = property_int['color.white']
+view.marker_back[t_run.MARK_WARNING] = property_int['color.light_yellow']
+--view.marker_fore[t_run.MARK_ERROR] = property_int['color.white']
+view.marker_back[t_run.MARK_ERROR] = property_int['color.light_red']
for i = buffer.MARKNUM_FOLDEREND, buffer.MARKNUM_FOLDEROPEN do -- fold margin
- buffer.marker_fore[i] = property_int['color.white']
- buffer.marker_back[i] = property_int['color.grey']
- buffer.marker_back_selected[i] = property_int['color.grey_black']
+ view.marker_fore[i] = property_int['color.white']
+ view.marker_back[i] = property_int['color.grey']
+ view.marker_back_selected[i] = property_int['color.grey_black']
end
-- Indicators.
-buffer.indic_fore[ui.find.INDIC_FIND] = property_int['color.yellow']
-buffer.indic_alpha[ui.find.INDIC_FIND] = 255
+view.indic_fore[ui.find.INDIC_FIND] = property_int['color.yellow']
+view.indic_alpha[ui.find.INDIC_FIND] = 255
local INDIC_BRACEMATCH = textadept.editing.INDIC_BRACEMATCH
-buffer.indic_fore[INDIC_BRACEMATCH] = property_int['color.grey']
+view.indic_fore[INDIC_BRACEMATCH] = property_int['color.grey']
local INDIC_HIGHLIGHT = textadept.editing.INDIC_HIGHLIGHT
-buffer.indic_fore[INDIC_HIGHLIGHT] = property_int['color.orange']
-buffer.indic_alpha[INDIC_HIGHLIGHT] = 255
+view.indic_fore[INDIC_HIGHLIGHT] = property_int['color.orange']
+view.indic_alpha[INDIC_HIGHLIGHT] = 255
local INDIC_PLACEHOLDER = textadept.snippets.INDIC_PLACEHOLDER
-buffer.indic_fore[INDIC_PLACEHOLDER] = property_int['color.grey_black']
+view.indic_fore[INDIC_PLACEHOLDER] = property_int['color.grey_black']
-- Call tips.
-buffer.call_tip_fore_hlt = property_int['color.light_blue']
+view.call_tip_fore_hlt = property_int['color.light_blue']
-- Long Lines.
-buffer.edge_colour = property_int['color.grey']
+view.edge_colour = property_int['color.grey']
diff --git a/themes/term.lua b/themes/term.lua
index bbb50b28..f3c5bfed 100644
--- a/themes/term.lua
+++ b/themes/term.lua
@@ -2,7 +2,7 @@
-- Terminal theme for Textadept.
-- Contributions by Ana Balan.
-local buffer = buffer
+local buffer, view = buffer, view
local property, property_int = buffer.property, buffer.property_int
-- Normal colors.
@@ -56,35 +56,35 @@ property['style.variable'] = 'fore:$(color.blue),bold'
property['style.whitespace'] = ''
-- Multiple Selection and Virtual Space
---buffer.additional_sel_fore =
---buffer.additional_sel_back =
---buffer.additional_caret_fore =
+--view.additional_sel_fore =
+--view.additional_sel_back =
+--view.additional_caret_fore =
-- Caret and Selection Styles.
---buffer:set_sel_fore(true, property_int['color.white'])
---buffer:set_sel_back(true, property_int['color.black'])
---buffer.caret_fore = property_int['color.black']
---buffer.caret_line_back =
+--view:set_sel_fore(true, property_int['color.white'])
+--view:set_sel_back(true, property_int['color.black'])
+--view.caret_fore = property_int['color.black']
+--view.caret_line_back =
-- Fold Margin.
---buffer:set_fold_margin_colour(true, property_int['color.white'])
---buffer:set_fold_margin_hi_colour(true, property_int['color.white'])
+--view:set_fold_margin_colour(true, property_int['color.white'])
+--view:set_fold_margin_hi_colour(true, property_int['color.white'])
-- Markers.
local MARK_BOOKMARK = textadept.bookmarks.MARK_BOOKMARK
-buffer.marker_back[MARK_BOOKMARK] = property_int['color.blue']
-buffer.marker_back[textadept.run.MARK_WARNING] = property_int['color.yellow']
-buffer.marker_back[textadept.run.MARK_ERROR] = property_int['color.red']
+view.marker_back[MARK_BOOKMARK] = property_int['color.blue']
+view.marker_back[textadept.run.MARK_WARNING] = property_int['color.yellow']
+view.marker_back[textadept.run.MARK_ERROR] = property_int['color.red']
-- Indicators.
-buffer.indic_fore[ui.find.INDIC_FIND] = property_int['color.yellow']
+view.indic_fore[ui.find.INDIC_FIND] = property_int['color.yellow']
local INDIC_HIGHLIGHT = textadept.editing.INDIC_HIGHLIGHT
-buffer.indic_fore[INDIC_HIGHLIGHT] = property_int['color.yellow']
+view.indic_fore[INDIC_HIGHLIGHT] = property_int['color.yellow']
local INDIC_PLACEHOLDER = textadept.snippets.INDIC_PLACEHOLDER
-buffer.indic_fore[INDIC_PLACEHOLDER] = property_int['color.magenta']
+view.indic_fore[INDIC_PLACEHOLDER] = property_int['color.magenta']
-- Call tips.
-buffer.call_tip_fore_hlt = property_int['color.blue']
+view.call_tip_fore_hlt = property_int['color.blue']
-- Long Lines.
-buffer.edge_colour = property_int['color.red']
+view.edge_colour = property_int['color.red']