diff options
Diffstat (limited to 'core/.buffer.luadoc')
-rw-r--r-- | core/.buffer.luadoc | 2099 |
1 files changed, 1115 insertions, 984 deletions
diff --git a/core/.buffer.luadoc b/core/.buffer.luadoc index 54b891a7..fe1cfa3b 100644 --- a/core/.buffer.luadoc +++ b/core/.buffer.luadoc @@ -10,598 +10,611 @@ -- -- [buffer]: _G.html#buffer -- @field additional_caret_fore (number) --- The foreground color of additional carets in "0xBBGGRR" format. +-- The foreground color, in "0xBBGGRR" format, of additional carets. -- @field additional_carets_blink (bool) --- Whether additional carets will blink. +-- Allow additional carets to blink. +-- The default value is `true`. -- @field additional_carets_visible (bool) --- Whether additional carets are visible. +-- Display additional carets. +-- The default value is `true`. -- @field additional_sel_alpha (number) --- The alpha of additional selections. Alpha ranges from `0` (transparent) to --- `255` (opaque) or `256` for no alpha. +-- The alpha value, ranging from `0` (transparent) to `255` (opaque), of +-- additional selections. +-- The default value is `256`, for no alpha. -- @field additional_sel_back (number) --- The background color of additional selections in "0xBBGGRR" format. --- `buffer:set_sel_back(true, ...)` must have been called previously for this --- to have an effect. +-- 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) --- The foreground color of additional selections in "0xBBGGRR" format. --- `buffer:set_sel_fore(true, ...)` must have been called previously for this --- to have an effect. +-- The foreground color, in "0xBBGGRR" format, of additional selections. +-- This field has no effect when calling `buffer:set_sel_fore(false, ...)`. -- @field additional_selection_typing (bool) --- Whether typing can be performed into multiple selections. +-- Type into multiple selections. +-- The default value is `false`. +-- @field all_lines_visible (bool, Read-only) +-- Whether or not all lines in the buffer are visible. -- @field anchor (number) --- The position of the opposite end of the selection to the caret. +-- The position of the beginning of the selected text. -- @field annotation_lines (table, Read-only) --- Table of the number of annotation lines for lines starting from zero. +-- Table of the number of annotation lines for line numbers starting from +-- zero. -- @field annotation_style (table) --- Table of style numbers for annotations for lines starting at zero. +-- Table of style numbers for annotations for line numbers starting from zero. -- Only some style attributes are active in annotations: font, -- size/size_fractional, bold/weight, italics, fore, back, and character_set. -- @field annotation_style_offset (number) --- The start of the range of style numbers used for annotations. +-- The beginning of the range of style numbers used for annotations. -- Annotation styles may be completely separated from standard text styles by -- setting a style offset. For example, setting this to `512` would allow the -- annotation styles to be numbered from `512` upto `767` so they do not -- overlap styles set by lexers (or margins if margins offset is `256`). Each --- style number set with `buffer.annotation_style` has the offset added before +-- style number set with `annotation_style` has the offset added before -- looking up the style. +-- The default value is `0`. -- @field annotation_text (table) --- Table of annotation text for lines starting from zero. +-- Table of annotation text for line numbers starting from zero. -- @field annotation_visible (number) --- The visibility of annotations. +-- The annotation visibility mode. -- -- * `_SCINTILLA.constants.ANNOTATION_HIDDEN` (0) --- Annotations are not displayed. +-- Annotations are invisible. -- * `_SCINTILLA.constants.ANNOTATION_STANDARD` (1) --- Annotations are drawn left justified with no adornment. +-- Draw annotations left-justified with no decoration. -- * `_SCINTILLA.constants.ANNOTATION_BOXED` (2) --- Annotations are indented to match the text and are surrounded by a box. +-- Indent annotations to match the text and outline with a box. +-- +-- The default value is `0`. -- @field auto_c_auto_hide (bool) --- Whether or not autocompletion is hidden automatically when nothing matches. --- By default, the list is cancelled if there are no viable matches (the user --- has typed characters that no longer match a list entry). +-- Automatically hide the autocompletion list when no entries match typed +-- text. +-- The default value is `true`. -- @field auto_c_cancel_at_start (bool) --- Whether auto-completion is cancelled by backspacing to a position before --- where the box was created. --- If `false`, the list is not cancelled until the caret moves at least one --- character before the word being completed. If `true`, cancel if the user --- backspaces to a position before where it was created. --- @field auto_c_case_insensitive (int) --- Auto-completion case insensitive behavior. --- When autocompletion is set to ignore case (`buffer.auto_c_ignore_case`), by --- default it will nonetheless select the first list member that matches in a --- case sensitive way to entered characters. +-- Cancel autocompletion when backspacing to a position before where +-- autocompletion started or before the word being completed. +-- The default value is `true`, to cancel when backspacing before where +-- autocompletion started. +-- @field auto_c_case_insensitive_behaviour (number) +-- The behavior setting for case insensitive autocompletion when +-- [`buffer.auto_c_ignore_case`](#auto_c_ignore_case) is `true`. -- -- * `_SCINTILLA.constants.SC_CASEINSENSITIVEBEHAVIOR_RESPECTCASE` (0) --- Prefer case-sensitive matches. +-- Prefer to select case-sensitive matches. -- * `_SCINTILLA.constants.SC_CASEINSENSITIVEBEHAVIOR_IGNORECASE` (1) -- No preference. +-- +-- The default value is `0`. -- @field auto_c_choose_single (bool) --- Whether a single item auto-completion list automatically choose the item. --- The default is to display the list even if there is only a single item. +-- Automatically choose the item in a single-item autocompletion list. +-- The default value is `false`. -- @field auto_c_current (number, Read-only) --- The currently selected item position in the auto-completion list. +-- The index of the currently selected item in the autocompletion list. -- @field auto_c_current_text (string, Read-only) --- The currently selected item text in the auto-completion list. +-- The text of the currently selected item in the autocompletion list. -- @field auto_c_drop_rest_of_word (bool) --- Whether or not autocompletion deletes any word characters after the --- inserted text upon completion. --- The default is `false`. +-- Delete word characters after autocompleted text. +-- The default value is `false`. -- @field auto_c_fill_ups (string, Write-only) --- A set of characters that when typed will cause the autocompletion to choose --- the selected item. --- By default, no fillup characters are set. +-- A set of characters that choose the currently selected item in an +-- autocompletion list when typed. +-- The default value is an empty string. -- @field auto_c_ignore_case (bool) --- Whether case is significant when performing auto-completion searches. --- By default, matching of characters to list members is case sensitive. +-- Ignore case when searching an autocompletion list for matches. +-- The default value is `false`. -- @field auto_c_max_height (number) --- The maximum height, in rows, of auto-completion and user lists. --- The default is 5 rows. +-- The maximum number of items to show in autocompletion and user lists. The +-- default value is `5`. -- @field auto_c_max_width (number) --- The maximum width, in characters, of auto-completion and user lists. --- Set to `0` to autosize to fit longest item, which is the default. +-- The maximum number of characters per row to show in autocompletion and user +-- lists. +-- The default value is `0`, which automatically sizes the list to fit the +-- longest item. -- @field auto_c_separator (number) --- The auto-completion list separator character byte. --- The default is the space character. +-- The character byte that separates autocompletion list items. +-- The default value is `32` (' '). -- @field auto_c_type_separator (number) --- The auto-completion list type-separator character byte. --- The default is `63` ('?'). Autocompletion list items may display an image --- as well as text. Each image is first registered with an integer type. Then --- this integer is included in the text of the list separated by a '?' from --- the text. +-- The character byte that separates autocompletion list items and their +-- image types. +-- Autocompletion list items can display both an image and text. Register +-- images and their types using [`buffer:register_image()`](#register_image) +-- or [`buffer:register_rgba_image()`](#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) --- Whether a backspace pressed when caret is within indentation unindents. +-- Un-indent text when backspacing within indentation. +-- The default value is `false`. -- @field buffered_draw (bool) --- Whether drawing is buffered. --- If drawing is buffered then each line of text is drawn into a bitmap buffer --- before drawing it to the screen to avoid flicker. The default is for --- drawing to be buffered. first or directly onto the screen. +-- Buffer drawing to avoid flickering. +-- Buffering draws each line of text into a bitmap buffer before drawing the +-- bitmap to the screen. +-- The default value is `true`. -- @field call_tip_back (number, Write-only) --- The background color for the call tip in "0xBBGGRR" format. +-- The background color, in "0xBBGGRR" format, for a call tip. -- @field call_tip_fore (number, Write-only) --- The foreground color for the call tip in "0xBBGGRR" format. +-- The foreground color, in "0xBBGGRR" format, for a call tip. -- @field call_tip_fore_hlt (number, Write-only) --- The foreground color for the highlighted part of the call tip in "0xBBGGRR" --- format. +-- The foreground color, in "0xBBGGRR" format, for the highlighted part of a +-- call tip. -- @field call_tip_position (boolean) --- The position of calltip, above or below text. --- By default the calltip is displayed below the text. Setting to `true` will --- display it above the text. +-- Display the call tip above or below the text. +-- The default value is `false` to display the call tip below the text. -- @field call_tip_use_style (number) --- Enable use of `_SCINTILLA.constants.STYLE_CALLTIP` and set call tip tab --- size in pixels. --- If the tab size is less than `1`, Tab characters are not treated specially. +-- The size in pixels of tab characters in call tips. +-- When non-zero, also enables the use of `_SCINTILLA.constants.STYLE_CALLTIP` +-- instead of `_SCINTILLA.constants.STYLE_DEFAULT` for call tip styles. +-- The default value is `0`, which does not treat tab characters specially. -- @field caret_fore (number) --- The foreground color of the caret in "0xBBGGRR" format. +-- The foreground color, in "0xBBGGRR" format, of the caret. -- @field caret_line_back (number) --- The color of the background of the line containing the caret in "0xBBGGRR" --- format. +-- The background color, in "0xBBGGRR" format, of the line containing the +-- caret. -- @field caret_line_back_alpha (number) --- The background alpha of the caret line. --- Alpha ranges from `0` (transparent) to `255` (opaque) or `256` for no --- alpha. +-- The background alpha value, ranging from `0` (transparent) to `255` +-- (opaque), of the caret line. +-- The default value is `256`, for no alpha. -- @field caret_line_visible (bool) --- Whether the background of the line containing the caret is in a different --- color. +-- Color the background of the line containing the caret a different color. +-- The default value is `false`. -- @field caret_period (number) --- The time in milliseconds that the caret is on and off. --- Setting the period to `0` stops the caret blinking. The default value is --- 500 milliseconds. +-- The time in milliseconds between caret blinks. +-- A value of `0` stops blinking. +-- The default value is `500`. -- @field caret_sticky (number) --- The caret preferred x position changing when the user types. +-- The preferred horizontal position of the caret when moving between lines. -- -- * `_SCINTILLA.constants.SC_CARETSTICKY_OFF` (0) --- All text changes (and all caret position changes) will remember the --- caret's new horizontal position when moving to different lines. --- This is the default. +-- Use the same position as on the previous line. -- * `_SCINTILLA.constants.SC_CARETSTICKY_ON` (1) --- The only thing which will cause the editor to remember the horizontal --- caret position is moving the caret with mouse or keyboard (left/right --- arrow keys, home/end keys, etc). +-- Use the last position the caret was moved to via the mouse, left/right +-- arrow keys, home/end keys, etc. Typing text does not affect the position. -- * `_SCINTILLA.constants.SC_CARETSTICKY_WHITESPACE` (2) --- The caret acts like sticky off except under one special case; when space --- or tab characters are inserted. (Including pasting *only space/tabs* -- --- undo, redo, etc. do not exhibit this behavior.) +-- Use the same position as on the previous line, but prior to any inserted +-- indentation. +-- +-- The default value is `0`. -- @field caret_style (number) --- The style of the caret to be drawn. +-- The style of caret to draw. -- -- * `_SCINTILLA.constants.CARETSTYLE_INVISIBLE` (0) --- Not draw the caret at all. +-- No caret. -- * `_SCINTILLA.constants.CARETSTYLE_LINE` (1) --- A line caret. This is the default value. +-- A line caret. -- * `_SCINTILLA.constants.CARETSTYLE_BLOCK` (2) -- A block caret. +-- +-- The default value is `1`. -- @field caret_width (number) --- The width of the insert mode caret in pixels. --- Can be `0`, `1`, `2` or `3` pixels. The default width is 1 pixel. This --- setting only affects the width of the cursor when the cursor style is set --- to line caret mode, it does not affect the width for a block caret. +-- The pixel width of the caret in insert mode, either `0`, `1`, `2`, or `3`, +-- and only applicable to line carets. +-- The default value is `1`. -- @field char_at (table, Read-only) --- Table of character bytes at positions in the document starting at zero. +-- Table of character bytes at positions in the buffer starting from zero. -- @field code_page (number) --- The code page used to interpret the bytes of the document as characters. --- The `_SCINTILLA.constants.SC_CP_UTF8` value can be used to enter Unicode --- mode. +-- The code page used to interpret buffer bytes as characters. +-- +-- + `0` None. +-- + `932` Japanese Shift-JIS. +-- + `936` Simplified Chinese GBK. +-- + `949` Korean Unified Hangul Code. +-- + `950` Traditional Chinese Big5. +-- + `1361` Korean Johab. +-- + `_SCINTILLA.constants.SC_CP_UTF8` (65001) UTF-8. +-- +-- The default value is `0`. -- @field column (table, Read-only) --- Table of column numbers, taking tab widths into account, for positions --- starting from zero. +-- Table of column numbers, taking tab widths into account, for positions in +-- the buffer starting from zero. -- @field control_char_symbol (number) --- The way control characters are displayed. --- If less than `32`, keep the rounded rectangle as ASCII mnemonics. --- Otherwise, use the given character byte. The default value is `0`. +-- The byte value of the character displayed in place of control characters, +-- characters whose byte values are less than 32. Values less than 32 dispay +-- ASCII mnemonics instead. +-- The default value is `0`. -- @field current_pos (number) -- The position of the caret. --- When setting, the caret is not scrolled into view. +-- When set, does not scroll the caret into view. -- @field cursor (number) -- The cursor type. -- -- * `_SCINTILLA.constants.SC_CURSORNORMAL` (-1) --- The normal cursor is displayed. +-- The normal cursor. -- * `_SCINTILLA.constants.SC_CURSORWAIT` (4) --- The wait cursor is displayed when the mouse is over the view. --- @field direct_function (number, Read-only) --- A pointer to a function that processes messages for this view. --- @field direct_pointer (number, Read-only) --- A pointer value to use as the first argument when calling the function --- returned by direct_function. --- @field dirty (bool) --- Flag indicating whether or not the buffer has been modified since it was --- last saved. --- @field eol_mode (number) --- The current end of line mode. +-- The wait cursor. -- --- * `_SCINTILLA.constants.SC_EOL_CRLF` (0) --- "CR+LF" ("\r\n"). --- * `_SCINTILLA.constants.SC_EOL_CR` (1) --- "CR" ("\r"). --- * `_SCINTILLA.constants.SC_EOL_LF` (2) --- "LF" ("\n"). +-- The default value is `-1`. +-- @field dirty (bool) +-- Whether or not the buffer has unsaved changes. +-- Unlike [`buffer.modify`](#modify), this field is accessible from any +-- buffer, not just the global one. -- @field edge_colour (number) --- The color used in edge indication in "0xBBGGRR" format. +-- The color, in "0xBBGGRR" format, used for the long line marker. -- @field edge_column (number) --- The column number which text should be kept within. +-- The column number to display the long line marker at. -- @field edge_mode (number) --- The edge highlight mode. +-- The long line edge mode. -- -- * `_SCINTILLA.constants.EDGE_NONE` (0) --- Long lines are not marked. This is the default state. +-- Long lines are not marked. -- * `_SCINTILLA.constants.EDGE_LINE` (1) --- A vertical line is drawn at the column number set by --- `buffer.edge_column`. +-- Draw a vertical line whose color is [`buffer.edge_colour`](#edge_colour) +-- at column [`buffer.edge_column`](#edge_column). -- * `_SCINTILLA.constants.EDGE_BACKGROUND` (2) --- The background color of characters after the column limit is changed to --- the color set by `buffer.edge_colour`. +-- Change the background color of characters after column +-- [`buffer.edge_column`](#edge_column) to +-- [`buffer.edge_colour`](#edge_colour). -- @field encoding (string or nil) --- The encoding of the file on the hard disk. --- It will be `nil` if the file is a binary file. +-- The string encoding of the file on the hard drive or `nil` for binary +-- files. -- @field encoding_bom (string) --- The byte-order mark of the file encoding (if any). +-- The byte-order mark, if any, of the file encoding. -- @field end_at_last_line (bool) --- Whether the maximum scroll position has the last line at the bottom of the --- view. --- If `false`, allows scrolling one page below the last line. The default --- value is `true`. +-- Disable scrolling past the last line. +-- The default value is `true`. -- @field end_styled (number, Read-only) -- The position of the last correctly styled character. +-- @field eol_mode (number) +-- The current end of line mode. +-- +-- * `_SCINTILLA.constants.SC_EOL_CRLF` (0) +-- "CR+LF" ("\r\n"). +-- * `_SCINTILLA.constants.SC_EOL_CR` (1) +-- "CR" ("\r"). +-- * `_SCINTILLA.constants.SC_EOL_LF` (2) +-- "LF" ("\n"). +-- +-- The default value is `0` on Windows platforms, `2` otherwise. -- @field extra_ascent (number) --- The extra ascent, the maximum that any style extends above the baseline, --- added to each line. +-- The amount of pixel padding above line text. +-- The default value is `0`. -- @field extra_descent (number) --- The extra descent, the maximum that any style extends below the baseline, --- added to each line. +-- The amount of pixel padding below line text. +-- The default is `0`. -- @field filename (string) --- The absolute path to the file associated with this buffer. --- It is encoded in UTF-8. Use [`string.iconv()`](string.html#iconv) for --- charset conversions. +-- The UTF-8-encoded absolute path to the file associated with the buffer. +-- Use [`string.iconv()`][] and [`_G._CHARSET`][] for charset conversions. +-- +-- [`string.iconv()`]: string.html#iconv +-- [`_G._CHARSET`]: _G.html#_CHARSET -- @field first_visible_line (number) --- The display line at the top of the display. --- @field focus (bool) --- The internal focus flag. --- @field fold_expanded (bool) --- Expanded state of a header line. +-- The line number of the line at the top of the view, starting from zero. +-- @field fold_expanded (table) +-- Table of flags indicating whether or not folds are expanded for line +-- numbers starting from zero. +-- Setting expanded fold states does not toggle folds; it only updates fold +-- margin markers. Use [`buffer:toggle_fold()`](#toggle_fold) instead. -- @field fold_flags (number) --- The style options for folding. --- Bits set in flags determine where folding lines are drawn: +-- Bit-mask of options for drawing folding lines. -- -- * `_SCINTILLA.constants.SC_FOLDFLAG_LINEBEFORE_EXPANDED` (2) --- Draw above if expanded. +-- Draw lines above expanded folds. -- * `_SCINTILLA.constants.SC_FOLDFLAG_LINEBEFORE_CONTRACTED` (4) --- Draw above if not expanded. +-- Draw lines above collapsed folds. -- * `_SCINTILLA.constants.SC_FOLDFLAG_LINEAFTER_EXPANDED` (8) --- Draw below if expanded. +-- Draw lines below expanded folds. -- * `_SCINTILLA.constants.SC_FOLDFLAG_LINEAFTER_CONTRACTED` (16) --- Draw below if not expanded. +-- Draw lines below collapsed folds. +-- +-- The default value is `0`. -- @field fold_level (table) --- Table of fold levels for lines starting from zero. --- Fold levels encodes an integer level along with flags indicating whether --- the line is a header and whether it is effectively white space. +-- Table of fold level bit-masks for line numbers starting from zero. +-- Fold level masks are composed of an integer level combined with any of the +-- following bits: -- -- * `_SCINTILLA.constants.SC_FOLDLEVELBASE` (0x400) --- Initial fold level. +-- The initial fold level. -- * `_SCINTILLA.constants.SC_FOLDLEVELWHITEFLAG` (0x1000) --- Indicates that the line is blank. +-- The line is blank. -- * `_SCINTILLA.constants.SC_FOLDLEVELHEADERFLAG` (0x2000) --- Indicates that the line is a header (fold point). +-- The line is a header, or fold point. -- @field fold_parent (table, Read-only) --- Table of parent line numbers for child lines starting from zero. --- `-1` means no line was found. --- @field font_quality (number) (Windows only) --- The quality level for text. --- --- * `_SCINTILLA.constants.SC_EFF_QUALITY_DEFAULt` (0). --- * `_SCINTILLA.constants.SC_EFF_QUALITY_NON_ANTIALIASED` (1). --- * `_SCINTILLA.constants.SC_EFF_QUALITY_ANTIALIASED` (2). --- * `_SCINTILLA.constants.SC_EFF_QUALITY_LCD_OPTIMIZED` (3). --- @field gap_position (number, Read-only) --- A position which, to avoid performance costs, should not be within the --- range of a call to `buffer:get_range_pointer()`. +-- Table of parent line numbers (fold points) for child line numbers starting +-- from zero. +-- A line number of `-1` means no line was found. -- @field h_scroll_bar (bool) --- Whether the horizontal scroll bar is visible. --- Set to `false` to never see it and `true` to enable it again. The default --- state is to display it when needed. +-- Display the horizontal scroll bar. +-- The default value is `true`. -- @field highlight_guide (number) --- The highlighted indentation guide column. --- Set to `0` to cancel this highlight. +-- The indentation guide column number to highlight, or `0` to stop +-- highlighting. -- @field hotspot_active_underline (bool) --- Whether active hotspots are underlined. +-- Underline active hotspots. +-- The default value is `true`. -- @field hotspot_single_line (bool) --- Whether hotspots are limited to single line so hotspots on two lines do not --- merge. +-- Limit hotspots to a single line. +-- The default value is `true`. -- @field indent (number) --- Ihe number of spaces used for one level of indentation. --- For a width of `0`, the indent size is the same as the tab size. +-- The number of spaces used for one level of indentation. +-- The default value is `0`, which matches the tab size. -- @field indentation_guides (number) --- Indentation guides appearance. +-- The indentation guide drawing mode. -- Indentation guides are dotted vertical lines that appear within indentation --- white space every indent size columns. +-- whitespace at each level of indentation. -- -- * `_SCINTILLA.constants.SC_IV_NONE` (0) --- No indentation guides are shown. +-- Guides are not drawn. -- * `_SCINTILLA.constants.SC_IV_REAL` (1) --- Indentation guides are shown inside real indentation white space. +-- Draw guides only within indentation whitespace. -- * `_SCINTILLA.constants.SC_IV_LOOKFORWARD` (2) --- Indentation guides are shown beyond the actual indentation up to the --- level of the next non-empty line. --- If the previous non-empty line was a fold header then indentation guides --- are shown for one more level of indent than that line. This setting is --- good for Python. +-- Draw guides beyond the current line up to the level of the next non-empty +-- line, but with an additional level if the previous non-empty line is a +-- fold header. -- * `_SCINTILLA.constants.SC_IV_LOOKBOTH` (3) --- Indentation guides are shown beyond the actual indentation up to the --- level of the next non-empty line or previous non-empty line whichever is --- the greater. --- This setting is good for most languages. +-- Draw guides beyond the current line up to either the level of the +-- previous or next non-empty line, whichever is greater. +-- +-- The default value is `0`. -- @field indic_alpha (table) --- Table of alpha transparency values ranging from `0` (transparent) to `255` --- (opaque) or `256` (no alpha) for indicators from `0` to `31`. --- Used for drawing the fill color of the `INDIC_ROUNDBOX` and --- `INDIC_STRAIGHTBOX` rectangle. +-- Table of fill color alpha values, ranging from `0` (transparent) to `255` +-- (opaque), for indicator numbers from `0` to `31` whose styles are either +-- `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`. +-- The default values are `256`, for no alpha. -- @field indic_fore (table) --- Table of foreground colors in "0xBBGGRR" format for indicators from `0` to --- `31`. +-- Table of foreground colors, in "0xBBGGRR" format, for indicator numbers +-- from `0` to `31`. -- @field indic_outline_alpha (table) --- Table of alpha transparency values ranging from `0` (transparent) to `255` --- (opaque) or `256` (no alpha) for indicators from `0` to `31`. --- Used for drawing the outline color of the `INDIC_ROUNDBOX` and --- `INDIC_STRAIGHTBOX` rectangle. +-- Table of outline color alpha values, ranging from `0` (transparent) to +-- `255` (opaque), for indicator numbers from `0` to `31` whose styles are +-- either `INDIC_ROUNDBOX`, `INDIC_STRAIGHTBOX`, or `INDIC_DOTBOX`. +-- The default values are `256`, for no alpha. -- @field indic_style (table) --- Table of styles for indicators from `0` to `31`. +-- Table of styles for indicator numbers from `0` to `31`. -- -- * `_SCINTILLA.constants.INDIC_PLAIN` (0) --- Underlined with a single, straight line. +-- An underline. -- * `_SCINTILLA.constants.INDIC_SQUIGGLE` (1) --- A squiggly underline. Requires 3 pixels of descender space. +-- A squiggly underline 3 pixels in height. -- * `_SCINTILLA.constants.INDIC_TT` (2) --- A line of small T shapes. +-- A line of small 'T' shapes. -- * `_SCINTILLA.constants.INDIC_DIAGONAL` (3) -- Diagonal hatching. -- * `_SCINTILLA.constants.INDIC_STRIKE` (4) -- Strike out. -- * `_SCINTILLA.constants.INDIC_HIDDEN` (5) --- An indicator with no visual effect. +-- Invisible. -- * `_SCINTILLA.constants.INDIC_BOX` (6) -- A rectangle around the text. -- * `_SCINTILLA.constants.INDIC_ROUNDBOX` (7) --- A rectangle with rounded corners around the text using translucent --- drawing with the interior usually more transparent than the border. Use --- `buffer.indic_alpha` and `buffer.indic_outline_alpha` to control the --- alpha transparency values. The default alpha values are `30` for fill --- color and `50` for outline color. +-- A translucent rectangle with rounded corners around the text. Use +-- [`buffer.indic_alpha`](#indic_alpha) and +-- [`buffer.indic_outline_alpha`](#indic_outline_alpha) to set the fill and +-- outline transparency, respectively. Their default values are `30` and +-- `50`. -- * `_SCINTILLA.constants.INDIC_STRAIGHTBOX` (8) --- A rectangle around the text using translucent drawing with the interior --- usually more transparent than the border. --- You can use `buffer.indic_alpha` and `buffer.indic_outline_alpha` to --- control the alpha transparency values. The default alpha values are `30` --- for fill color and `50` for outline color. +-- Similar to `INDIC_ROUNDBOX` but with sharp corners. -- * `_SCINTILLA.constants.INDIC_DASH` (9) -- A dashed underline. -- * `_SCINTILLA.constants.INDIC_DOTS` (10) -- A dotted underline. -- * `_SCINTILLA.constants.INDIC_SQUIGGLELOW` (11) --- Similar to `INDIC_SQUIGGLE` but only using 2 vertical pixels so will fit --- under small fonts. +-- A squiggly underline 2 pixels in height. -- * `_SCINTILLA.constants.INDIC_DOTBOX` (12) --- A dotted rectangle around the text using translucent drawing. --- Translucency alternates between the alpha and outline alpha settings with --- the top-left pixel using the alpha setting. `buffer.indic_alpha` and --- `buffer.indic_outline_alpha` control the alpha transparency values. --- The default values are `30` for alpha and `50` for outline alpha. To --- avoid excessive memory allocation the maximum width of a dotted box is --- 4000 pixels. +-- Similar to `INDIC_STRAIGHTBOX` but with a dotted outline. +-- Translucency alternates between [`buffer.indic_alpha`](#indic_alpha) and +-- [`buffer.indic_outline_alpha`](#indic_outline_alpha) starting with the +-- top-left pixel. -- * `_SCINTILLA.constants.INDIC_SQUIGGLEPIXMAP` (13) --- A version of `INDIC_SQUIGGLE` that draws using a pixmap instead of as a --- series of line segments for performance. Measured to be between 3 and 6 --- times faster than `INDIC_SQUIGGLE` on GTK+. Apperance will not be as good --- as `INDIC_SQUIGGLE` on OSX in HiDPI mode. --- * Use `_SCINTILLA.next_indic_number()` for custom indicators. +-- Identical to `INDIC_SQUIGGLE` but draws faster by using a pixmap instead +-- of multiple line segments. +-- +-- Use [`_SCINTILLA.next_indic_number()`][] for custom indicators. +-- +-- [`_SCINTILLA.next_indic_number()`]: _SCINTILLA.html#next_indic_number -- @field indic_under (table) --- Table of booleans for drawing under text or over (default) for indicators --- from `0` to `31`. +-- Table of flags indicating whether to draw indicators over text or under it +-- for indicator numbers from `0` to `31`. +-- For values to be `true`, [`buffer.two_phase_draw`](#two_phase_draw) must be +-- `true`. +-- The default values are `false` for drawing indicators over text. -- @field indicator_current (number) --- The indicator in the range of `0` to `31` used for --- `buffer:indicator_fill_range()` and `buffer:indicator_clear_range()`. +-- The indicator number in the range of `0` to `31` used by +-- [`buffer:indicator_fill_range()`](#indicator_fill_range) and +-- [`buffer:indicator_clear_range()`](#indicator_clear_range). -- @field indicator_value (number) --- The indicator value used for `buffer:indicator_fill_range()`. --- Currently all values are drawn the same. --- @field keys_unicode (bool) --- Interpret keyboard input as Unicode. +-- The indicator value used for +-- [`buffer:indicator_fill_range()`](#indicator_fill_range). +-- Currently, all values are drawn the same, but it may be possible to draw +-- different values in different styles in the future. -- @field layout_cache (number) --- The degree of caching of layout information. +-- The layout cache mode. -- -- * `_SCINTILLA.constants.SC_CACHE_NONE` (0) -- No lines are cached. -- * `_SCINTILLA.constants.SC_CACHE_CARET` (1) --- The line containing the text caret. --- This is the default. +-- Cache the line containing the caret. -- * `_SCINTILLA.constants.SC_CACHE_PAGE` (2) --- Visible lines plus the line containing the caret. +-- Cache visible lines. -- * `_SCINTILLA.constants.SC_CACHE_DOCUMENT` (3) --- All lines in the document. +-- Cache all lines in the buffer. +-- +-- The default value is `1`. -- @field length (number, Read-only) --- The number of bytes in the document. +-- The number of bytes in the buffer. -- @field lexer (number) --- The lexing language of the document. +-- The numeric ID of the Scintilla lexer used by the buffer. -- @field lexer_language (string) --- The name of the lexer. +-- The name of the Scintilla lexer used by the buffer. +-- You probably want to use [`buffer:get_lexer()`](#get_lexer) instead. -- @field line_count (number, Read-only) --- The number of lines in the document. +-- The number of lines in the buffer. -- There is always at least one. -- @field line_end_position (table, Read-only) --- Table of positions after the last visible characters on a line for lines --- starting from zero. +-- Table of positions at the ends of lines, but before any end of line +-- characters, for line numbers starting from zero. -- @field line_indent_position (table, Read-only) --- Table of positions before the first non indentation character on a line for --- lines starting from zero. +-- Table of positions at the ends of line indentation for line numbers +-- starting from zero. -- @field line_indentation (table) --- Table of line indentation amounts for lines starting from zero. --- The indentation is measured in character columns, which correspond to the --- width of space characters. +-- Table of line indentation amounts, measured in character columns, for line +-- numbers starting from zero. -- @field line_state (table) --- Table of extra styling information for lines starting from zero. --- As well as the 8 bits of lexical state stored for each character there is --- also an integer stored for each line. This can be used for longer lived --- parse states. --- @field line_visible (bool, Read-only) --- Is a line visible? +-- Table of integer line states for line numbers starting from zero. +-- Line states are used for storing longer lived parse states per line. They +-- are available in addition to the 8 bits of styling information per +-- character. +-- @field line_visible (table, Read-only) +-- Table of flags indicating whether or not lines are visible for line numbers +-- starting from zero. -- @field lines_on_screen (number, Read-only) --- The number of lines completely visible. --- @field lines_visible (bool, Read-only) --- Are all lines visible? +-- 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 main selection. --- The main selection may be displayed in different colors or with a --- differently styled caret. Only an already existing selection can be made --- main. +-- The main, or most recent, selection. +-- Only an existing selection can be made main. -- @field margin_cursor_n (table) --- Table of cursors shown for margins from zero to four. --- A reversed arrow cursor is normally shown over all margins. +-- Table of cursors shown for margin numbers from zero to four. -- --- * `_SCINTILLA.constants.SC_CURSORARROW` --- Normal arrow. --- * `_SCINTILLA.constants.SC_CURSORREVERSEARROW` --- Reversed arrow. +-- * `_SCINTILLA.constants.SC_CURSORARROW` (2) +-- Normal arrow cursor. +-- * `_SCINTILLA.constants.SC_CURSORREVERSEARROW` (7) +-- Reversed arrow cursor. +-- +-- The default values are `7`. -- @field margin_left (number) --- The size in pixels of the left margin. --- The default is to one pixel. +-- The size in pixels of the left margin of the buffer text. +-- The default value is `1`. -- @field margin_mask_n (table) --- Table of marker masks for margins from zero to four. --- A mask determines which markers are displayed in a margin. +-- Table of marker bit-masks for showing margin markers for margin numbers +-- from zero to four. +-- The default values are `0`, `0x1FFFFFF`, `0`, `0`, and `0`, for a line +-- margin and logical marker margin. -- @field margin_options (number) --- A bit mask of margin options. +-- A bit-mask of margin option settings. -- -- * `_SCINTILLA.constants.SC_MARGINOPTION_NONE` (0) --- None (default). +-- None. -- * `_SCINTILLA.constants.SC_MARGINOPTION_SUBLINESELECT` (1) --- Controls how wrapped lines are selected when clicking on margin in front --- of them. --- If set, only sub line of wrapped line is selected, otherwise whole --- wrapped line is selected. +-- Select only the sub-line of the wrapped line on margin click. +-- +-- The default value is `0`. -- @field margin_right (number) --- The size in pixels of the right margin. --- The default is to one pixel. +-- The size in pixels of the right margin of the buffer text. +-- The default value is `1`. -- @field margin_sensitive_n (table) --- Table of mouse click sensitivity booleans for margins from zero to four. --- A click in a sensitive margin emits a `MARGIN_CLICK` event. By default, all --- margins are insensitive. +-- Table of flags indicating whether or not mouse clicks in margins emit +-- `MARGIN_CLICK` events for margin numbers from zero to four. +-- The default values are `false`. -- @field margin_style (table) --- Table of style numbers for text margin lines starting from zero. +-- Table of style numbers for text margin line numbers starting from zero. -- Only some style attributes are active in text margins: font, -- size/size_fractional, bold/weight, italics, fore, back, and character_set. -- @field margin_style_offset (number) --- The start of the range of style numbers used for margin text. +-- The beginning of the range of style numbers used for margin text. -- Margin styles may be completely separated from standard text styles by -- setting a style offset. For example, setting this to `256` would allow the -- margin styles to be numbered from `256` upto `511` so they do not overlap --- styles set by lexers. Each style number set with `buffer.margin_style` has +-- styles set by lexers. Each style number set with `margin_style` has -- the offset added before looking up the style. -- @field margin_text (table) --- Table of text in the text margin for lines starting from zero. +-- Table of text in the text margin for line numbers starting from zero. -- @field margin_type_n (table) --- Table of margin types for margins from zero to four. +-- Table of margin types for margin numbers from zero to four. -- -- * `_SCINTILLA.constants.SC_MARGIN_SYMBOL` (0) -- A symbol margin. -- * `_SCINTILLA.constants.SC_MARGIN_NUMBER` (1) -- A line number margin. -- * `_SCINTILLA.constants.SC_MARGIN_BACK` (2) --- A symbol margin that sets its background color to match the default --- text background color. +-- A symbol margin whose background color matches the default text +-- background color. -- * `_SCINTILLA.constants.SC_MARGIN_FORE` (3) --- A symbol margin that sets its background color to match the default --- text foreground color. +-- A symbol margin whose foreground color matches the default text +-- foreground color. -- * `_SCINTILLA.constants.SC_MARGIN_TEXT` (4) -- A text margin. -- * `_SCINTILLA.constants.SC_MARGIN_RTEXT` (5) --- A right justified text margin. +-- A right-justified text margin. +-- +-- The default values are `true`, `false`, `false`, `false`, and `false`, for +-- a line number margin and symbol margins. -- @field margin_width_n (table) --- Table of margin widths expressed in pixes for margins from zero to four. +-- Table of margin widths in pixels for margin numbers from zero to four. -- @field marker_alpha (table, Write-only) --- Table of alpha values used for markers that are drawn in the text area, not --- the margin. --- Markers are numbers in the range of `0` to `31`. Alpha values are between --- `0` (transparent) and `255` (opaque), or `256` for no alpha. +-- Table of alpha values, ranging from `0` (transparent) to `255` (opaque), +-- used for markers drawn in the text area, not the margin, for markers +-- numbers from `0` to `31`. +-- The default values are `256`, for no alpha. -- @field marker_back (table, Write-only) --- Table of the background colors used for particular marker numbers. --- Marker numbers are in the range of `0` to `31`. Colors are in "0xBBGGRR" --- format. +-- Table of background colors, in "0xBBGGRR" format, used for marker numbers +-- from `0` to `31`. -- @field marker_back_selected (table, Write-only) --- Table of the background colors used for particular marker numbers when --- their folding blocks are selected. --- Marker numbers are in the range of `0` to `31`. Colors are in "0xBBGGRR" --- format. The default color is `0x0000FF`. +-- Table of background colors, in "0xBBGGRR" format, used for markers whose +-- folding blocks are selected for marker numbers from `0` to `31`. +-- The default values are `0x0000FF`. -- @field marker_fore (table, Write-only) --- Table of the foreground colors used for particular marker numbers. --- Marker numbers are in the range of `0` to `31`. Colors are in "0xBBGGRR" --- format. +-- Table of foreground colors, in "0xBBGGRR" format, used for marker numbers +-- from `0` to `31`. -- @field max_line_state (number, Read-only) --- The last line number that has line state. +-- The last line number with a non-zero line state. -- @field modify (bool) --- Whether the document is different from when it was last saved. --- @field mouse_down_captures (bool) --- Whether the mouse is captured when its button is pressed. +-- Whether or not the buffer has unsaved changes. +-- Unlike [`buffer.dirty`](#dirty), this field is accessible only from the +-- global buffer. -- @field mouse_dwell_time (number) --- The time the mouse must sit still to generate a mouse dwell event. --- If set to `_SCINTILLA.constants.SC_TIME_FOREVER`, the default, no dwell --- events are generated. --- @field multi_paste (bool) --- The effect of pasting when there are multiple selections. +-- The number of milliseconds the mouse must idle in order to generate a +-- `DWELL_START` event, or `_SCINTILLA.constants.SC_TIME_FOREVER` to never +-- generate one. +-- @field multi_paste (number) +-- The multiple selection paste mode. -- -- * `_SCINTILLA.constants.SC_MULTIPASTE_ONCE` (0) --- Pasted text can go into just the main selection (default). +-- Paste into only the main selection. -- * `_SCINTILLA.constants.SC_MULTIPASTE_EACH` (1) --- Pasted text can go into each selection. +-- Paste into all selections. +-- +-- The default value is `0`. -- @field multiple_selection (bool) --- Whether multiple selections can be made. --- When multiple selection is disabled, it is not possible to select multiple --- ranges by holding down the Ctrl key while dragging with the mouse. +-- Enable multiple selection. +-- The default value is `false`. -- @field overtype (bool) --- Overtype mode. +-- Enable overtype mode, where typed characters overwrite existing ones. +-- The default value is `false`. -- @field position_cache (number) -- The number of entries in the position cache. -- The position cache stores position information for short runs of text so -- that their layout can be determined more quickly if the run recurs. +-- The default value is `1024`. -- @field print_colour_mode (number) -- The print color mode. -- -- * `_SCINTILLA.constants.SC_PRINT_NORMAL` (0) --- Print using the current screen colors. --- This is the default. +-- Print with the current set of colors. -- * `_SCINTILLA.constants.SC_PRINT_INVERTLIGHT` (1) --- If you use a dark screen background this saves ink by inverting the light --- value of all colors and printing on a white background. +-- Print on a white background with the light values of the current color +-- set. +-- This mode is good for a dark background color. -- * `_SCINTILLA.constants.SC_PRINT_BLACKONWHITE` (2) --- Print all text as black on a white background. +-- Print black text on a white background. -- * `_SCINTILLA.constants.SC_PRINT_COLOURONWHITE` (3) --- Everything prints in its own color on a white background. +-- Print on a white background with the current color set. -- * `_SCINTILLA.constants.SC_PRINT_COLOURONWHITEDEFAULTBG` (4) --- Everything prints in its own color on a white background except that line --- numbers use their own background color. +-- Print on a white background with the current color set except for line +-- numbers which use their own background color. -- @field print_magnification (number) --- The print magnification added to the point size of each style for printing. +-- The number of points to add to the size of each font when printing. +-- Negative values are allowed. +-- The default value is `0`. -- @field print_wrap_mode (number) --- Printing line wrap mode. +-- The print line wrap mode. -- -- * `_SCINTILLA.constants.SC_WRAP_NONE` (0) --- Each line of text generates one line of output and the line is truncated --- if it is too long to fit into the print area. +-- Truncate long lines. -- * `_SCINTILLA.constants.SC_WRAP_WORD` (1) --- Wraps printed output so that all characters fit into the print rectangle. --- Tries to wrap only between words as indicated by white space or style --- changes although if a word is longer than a line, it will be wrapped --- before the line end. This is the default. --- * `_SCINTILLA.constants.SC_WRAP_CHAR` (2). +-- Wrap long lines at word boundaries if possible. +-- * `_SCINTILLA.constants.SC_WRAP_CHAR` (2) +-- Wrap long lines at character boundaries. -- @field property (table) --- Table of keyword:value string pairs used by a lexer for some optional --- features. --- @field property_expanded (table) --- Table of keyword:value string pairs used by a lexer for some optional --- features with `$()` variable replacement on returned string. +-- Map of key-value string pairs used by lexers. +-- @field property_expanded (table, Read-only) +-- Map of key-value string pairs used by lexers with `$()` variable +-- replacement performed in values. -- @field property_int (table, Read-only) --- Interprets `buffer.property[keyword]` as an integer if found or returns --- `0`. +-- Map of key-value pairs used by lexers with values interpreted as numbers, +-- or `0` if not found. -- @field punctuation_chars (string) --- The set of characters making up punctuation characters. --- Use after setting `buffer.word_chars`. +-- The set of characters considered to be punctuation characters. +-- Set this only after setting [`buffer.word_chars`](#word_chars). +-- The default value is a string containing all characters not considered to +-- be whitespace or word characters. -- @field read_only (bool) --- Read-only mode. +-- Whether or not the buffer is read-only. +-- The default value is `false`. -- @field rectangular_selection_anchor (number) -- The position of the anchor of the rectangular selection. -- @field rectangular_selection_anchor_virtual_space (number) @@ -611,161 +624,198 @@ -- @field rectangular_selection_caret_virtual_space (number) -- The amount of virtual space for the caret of the rectangular selection. -- @field rectangular_selection_modifier (number) --- The modifier key used to indicate that a rectangular selection should be --- created when combined with a mouse drag. +-- The modifier key used in combination with a mouse drag to create a +-- rectangular selection. -- -- * `_SCINTILLA.constants.SCMOD_CTRL` (2) --- Control key (default). +-- The "Control" modifier key. -- * `_SCINTILLA.constants.SCMOD_ALT` (4) --- Alt key. +-- The "Alt" modifier key. -- * `_SCINTILLA.constants.SCMOD_SUPER` (8) --- Left Windows key on a Windows keyboard or the Command key on a Mac. +-- The "Super" modifier key, usually defined as the left "Windows" or +-- "Command" key. +-- +-- The default value is `2`. -- @field rgba_image_height (number) --- The height for future RGBA image data. +-- The height for an RGBA image to be defined using +-- [`buffer:marker_define_rgba_image()`](#marker_define_rgba_image). -- @field rgba_image_scale (number) --- The scale factor in percent for future RGBA image data. +-- The scale factor in percent for an RGBA image to be defined using +-- [`buffer:marker_define_rgba_image()`](#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 dsplayed 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 for future RGBA image data. +-- The width for an RGBA image to be defined using +-- [`buffer:marker_define_rgba_image()`](#marker_define_rgba_image). -- @field scroll_width (number) --- The document width assumed for scrolling. --- For performance, the view does not measure the display width of the --- document to determine the properties of the horizontal scroll bar. Instead, --- an assumed width is used. The default value is `2000`. To ensure the width --- of the currently visible lines can be scrolled use --- `buffer.scroll_width_tracking`. +-- The assumed document width for horizontal scrolling purposes. +-- 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`](#scroll_width_tracking). +-- The default value is `2000`. -- @field scroll_width_tracking (bool) --- Whether the maximum width line displayed is used to set scroll width. +-- Set the scroll width to the maximum width of a displayed line beyond +-- [`buffer.scroll_width`](#scroll_width). +-- The default value is `false`. -- @field search_flags (number) --- The search flags used by `buffer:search_in_target()`. +-- The bit-mask of search flags used by +-- [`buffer:search_in_target()`](#search_in_target). -- -- * `_SCINTILLA.constants.SCFIND_WHOLEWORD` (2) --- A match only occurs with text that matches the case of the search string. +-- Match text surrounded by non-word characters. -- * `_SCINTILLA.constants.SCFIND_MATCHCASE` (4) --- A match only occurs if the characters before and after are not word --- characters. +-- Match text case sensitively. -- * `_SCINTILLA.constants.SCFIND_WORDSTART` (0x00100000) --- A match only occurs if the character before is not a word character. +-- Match text when the previous character is a non-word character. -- * `_SCINTILLA.constants.SCFIND_REGEXP` (0x00200000) --- The search string should be interpreted as a regular expression. +-- Interpret the search string as a regular expression. -- * `_SCINTILLA.constants.SCFIND_POSIX` (0x00400000) --- Treat regular expression in a more POSIX compatible manner by --- interpreting bare '(' and ')' for tagged sections rather than "\\(" and --- "\\)". +-- Interpret '(' and ')' as tags instead of "\\(" and "\\)" in a regular +-- expression. +-- +-- The default value is `0`. -- @field sel_alpha (number) --- The alpha of the selection, between `0` (transparent) and `255` (opaque), --- or `256` for no alpha. +-- The alpha value, ranging from `0` (transparent) to `255` (opaque), of the +-- selection. +-- The default value is `256`, for no alpha. -- @field sel_eol_filled (bool) --- The selection end of line fill. --- The selection can be drawn up to the right hand border by setting this --- property. +-- Extend the selection to the right margin of the view. +-- The default value is `false`. -- @field selection_empty (bool, Read-only) --- Is every selected range empty? +-- Whether or not no text is selected. -- @field selection_end (number) --- The position that ends the selection - this becomes the current position. --- This does not make the caret visible. +-- The position of the end of the selected text. +-- When set, becomes the current position, but is not scrolled into view. -- @field selection_is_rectangle (bool, Read-only) --- Is the selection rectangular? --- The alternative is the more common stream selection. +-- Whether or not the selection is a rectangular selection. -- @field selection_mode (number) --- The mode of the current selection. +-- The selection mode. -- -- * `_SCINTILLA.constants.SC_SEL_STREAM` (0) --- Stream. +-- Character selection. -- * `_SCINTILLA.constants.SC_SEL_RECTANGLE` (1) --- Rectangle. +-- Rectangular selection. -- * `_SCINTILLA.constants.SC_SEL_LINES` (2) --- Lines. +-- Line selection. -- * `_SCINTILLA.constants.SC_SEL_THIN` (3) --- Thin rectangular. +-- Thin rectangular selection. This is the mode after a rectangular +-- selection has been typed into and ensures that no characters are +-- selected. +-- +-- When set, caret movement alters the selected text until this field is set +-- again to the same value or [`buffer:cancel()`](#cancel) is called. -- @field selection_n_anchor (table) --- Table of anchor positions for existing selections starting from zero, the +-- Table of anchor positions for existing selections numbered from zero, the -- main selection. -- @field selection_n_anchor_virtual_space (table) -- Table of the amount of virtual space for anchors for existing selections --- starting from zero, the main selection. +-- numbered from zero, the main selection. -- @field selection_n_caret (table) --- Table of caret positions for existing selections starting from zero, the +-- Table of caret positions for existing selections numbered from zero, the -- main selection. -- @field selection_n_caret_virtual_space (table) -- Table of the amount of virtual space for carets for existing selections --- starting from zero, the main selection. +-- numbered from zero, the main selection. -- @field selection_n_end (table) --- Table of positions that end selections for existing selections starting --- from zero, the main selection. +-- Table of positions at the end of existing selections numbered from zero, +-- the main selection. -- @field selection_n_start (table) --- Table of positions that start selections for existing selections starting --- from zero, the main selection. +-- Table of positions at the beginning of existing selections numbered from +-- zero, the main selection. -- @field selection_start (number) --- The position that starts the selection - this becomes the anchor. --- This does not make the caret visible. +-- The position of the beginning of the selected text. +-- When set, becomes the anchor, but is not scrolled into view. -- @field selections (number, Read-only) --- The number of selections currently active. --- @field status (number) --- The error status. --- --- * `_SCINTILLA.constants.SC_STATUS_OK` (0) --- No failures. --- * `_SCINTILLA.constants.SC_STATUS_FAILURE` (1) --- Generic failure. --- * `_SCINTILLA.constants.SC_STATUS_BADALLOC` (2) --- Memory is exhausted. +-- The number of active selections. -- @field style_at (table, Read-only) --- Table of style bytes at positions in the document starting at zero. +-- Table of style bytes at positions in the buffer starting from zero. -- @field style_back (table) --- Table of background colors in "0xBBGGRR" format for styles from `0` to --- `255`. +-- Table of background colors, in "0xBBGGRR" format, for style numbers from +-- `0` to `255`. -- @field style_bits (number) --- The number of bits in style bytes used to hold the lexical state. +-- The number of bits in an 8-bit style byte to use for styling. +-- The number of styling bits required by the current lexer is +-- [`buffer.style_bits_needed`](#style_bits_needed). +-- The default value is `5`. -- @field style_bits_needed (number, Read-only) --- The number of bits the current lexer needs for styling. +-- The number of styling bits required by the current lexer. -- @field style_bold (table) --- Table of booleans for bold styles from `0` to `255`. +-- Table of flags indicating whether or not text within styles has a bold font +-- face for style numbers from `0` to `255`. +-- The default values are `false`. -- @field style_case (table) --- Table of cases for styles from `0` to `255`. +-- Table of letter case modes for text within styles for style numbers from +-- `0` to `255`. -- -- * `_SCINTILLA.constants.SC_CASE_MIXED` (0) --- Normal, mixed case. +-- Display text in mixed case. -- * `_SCINTILLA.constants.SC_CASE_UPPER` (1) --- Upper case. +-- Display text in upper case. -- * `_SCINTILLA.constants.SC_CASE_LOWER` (2) --- Lower case. +-- Display text in lower case. +-- +-- The default values are `0`. -- @field style_changeable (table) --- Table of booleans for changeable styles from `0` to `255`. --- The default setting is `true`. +-- Table of flags indicating whether or not text within styles is changeable +-- for style numbers from `0` to `255`. +-- The default values are `true`. +-- Currently, read-only styles do not allow the caret into the range of text, +-- but ranges containing read-only text are deletable. -- @field style_character_set (table) --- Table of character sets for styles from `0` to `255`. +-- Table of character sets for style numbers from `0` to `255`. +-- +-- * `_SCINTILLA.constants.SC_CHARSET_ANSI` (0) +-- * `_SCINTILLA.constants.SC_CHARSET_DEFAULT` (1) +-- * `_SCINTILLA.constants.SC_CHARSET_CYRILLIC` (1251) +-- * `_SCINTILLA.constants.SC_CHARSET_EASTEUROPE` (238) +-- * `_SCINTILLA.constants.SC_CHARSET_GB2312` (134) +-- * `_SCINTILLA.constants.SC_CHARSET_HANGUL` (129) +-- * `_SCINTILLA.constants.SC_CHARSET_RUSSIAN` (204) +-- * `_SCINTILLA.constants.SC_CHARSET_SHIFTJIS` (128) +-- * `_SCINTILLA.constants.SC_CHARSET_8859_15` (1000) +-- +-- The default values are `1`. -- @field style_eol_filled (table) --- Table of booleans for end of line filled styles from `0` to `255`. +-- Table of flags indicating whether or not to extend the background colors of +-- styles whose characters occur last on lines all the way to the right margin +-- of the view for style numbers from `0` to `255`. +-- The default values are `false`. -- @field style_font (table) --- Table of font faces for styles from `0` to `255`. +-- Table of font faces for style numbers from `0` to `255`. -- @field style_fore (table) --- Table of foreground colors in "0xBBGGRR" format for styles from `0` to --- `255`. +-- Table of foreground colors, in "0xBBGGRR" format, for style numbers from +-- `0` to `255`. -- @field style_hot_spot (table) --- Table of boolean hotspot styles from `0` to `255`. +-- Table of flags indicating whether or not text within styles is clickable +-- for style numbers from `0` to `255`. +-- The default values are `false`. -- @field style_italic (table) --- Table of booleans for italic styles from `0` to `255`. +-- Table of flags indicating whether or not text within styles has an italic +-- font face for style numbers from `0` to `255`. +-- The default values are `false`. -- @field style_size (table) --- Table of font sizes for styles from `0` to `255`. --- Font size is a whole number of points. +-- Table of font sizes, expressed in whole number points, for style numbers +-- from `0` to `255`. -- @field style_size_fractional (table) --- Table of sizes of characters for styles from `0` to `255`. --- Size is in hundreths of a point and multiplied by 100 internally. For --- example, a text size of 9.4 points is set with 940. +-- Table of character sizes, expressed in hundredths of a point, for style +-- numbers from `0` to `255`. +-- For example, a text size of 9.4 points is set using `940`. -- @field style_underline (table) --- Table of booleans for underlined styles from `0` to `255`. +-- Table of flags indicating whether or not text within styles has an +-- underlined font face for style numbers from `0` to `255`. +-- The default values are `false`. -- @field style_visible (table) --- Table of booleans for visible styles from `0` to `255`. +-- Table of flags indicating whether or not text within styles is visible for +-- style numbers from `0` to `255`. +-- The default values are `true`. -- @field style_weight (table) --- Table of character weights for styles from `0` to `255`. --- The weight or boldness of a font can be set with a number between 1 and 999 --- with 1 being very light and 999 very heavy. While any value can be used, --- fonts often only support between 2 and 4 weights with three weights being --- common enough to use symbolic names: +-- Table of character weights ranging from `1` (very light) to `999` (very +-- heavy) for text within styles for style numbers from `0` to `255`. +-- However, most fonts only support a small number of weights: -- -- * `_SCINTILLA.constants.SC_WEIGHT_NORMAL` (400) -- Normal. @@ -773,422 +823,444 @@ -- Semi-bold. -- * `_SCINTILLA.constants.SC_WEIGHT_BOLD` (700) -- Bold. +-- +-- The default values are `400`. -- @field tab_indents (bool) --- Whether a tab pressed when caret is within indentation indents. +-- Tabbing indents within indentation. +-- The default value is `false`. -- @field tab_width (number) --- The visible size of a tab as a multiple of the width of a space character. --- The default tab width is 8 characters. +-- The number of space characters represented by a tab character. +-- The default value is `8`. -- @field tag (table) --- Table of values of tags from a regular expression search. +-- List of tag match values from a regular expression search. -- @field target_end (number) --- The position that ends the target which is used for updating the document --- without affecting the scroll position. --- The target is also set by a successful `buffer:search_in_target()`. +-- The position of the end of the target range. +-- This is also set by a successful +-- [`buffer:search_in_target()`](#search_in_target). -- @field target_start (number) --- The position that starts the target which is used for updating the document --- without affecting the scroll position. --- The target is also set by a successful `buffer:search_in_target()`. +-- The position of the beginning of the target range. +-- This is also set by a successful +-- [`buffer:search_in_target()`](#search_in_target). -- @field text_length (number, Read-only) --- The number of characters in the document. +-- The number of characters in the buffer. -- @field two_phase_draw (bool) --- Two phase drawing mode. --- When `true`, drawing is performed in two phases, first the background and --- then the foreground. This avoids chopping off characters that overlap the --- next run. The default is for drawing to be two phase. +-- Draw in two phases: first the background and then the foreground. +-- The default is `true`. -- @field undo_collection (bool) --- Whether to collect undo information. --- When stopping collection, use `buffer:empty_undo_buffer()` to avoid the --- undo buffer being unsynchronized with the data in the buffer. +-- Collect undo information. +-- When setting to `false`, call +-- [`buffer:empty_undo_buffer()`](#empty_undo_buffer) to avoid desynchronizing +-- the undo buffer with the buffer text. +-- The default value is `true`. -- @field use_tabs (bool) --- Whether tabs will be used in indentation. --- The default is `true`. `false` will only use space characters. +-- Use tabs or spaces in indentation. +-- The default value is `true`, for using tabs. -- @field v_scroll_bar (bool) --- Whether the vertical scroll bar is visible. --- Set to `false` to never see it and `true` to enable it again. The default --- state is to display it when required. +-- Display the vertical scroll bar. +-- The default value is `true`. -- @field view_eol (bool) --- Whether the end of line characters are visible. --- Normally, the end of line characters are hidden. +-- Display end of line characters. +-- The default value is `false`. -- @field view_ws (number) --- The visibility of white space characters. +-- The whitespace character visibility mode. -- -- * `_SCINTILLA.constants.SCWS_INVISIBLE` (0) --- The normal display mode with white space displayed as an empty background --- color. +-- Whitespace is invisible. -- * `_SCINTILLA.constants.SCWS_VISIBLEALWAYS` (1) --- White space characters are drawn as dots and arrows. +-- Display whitespace as dots and arrows. -- * `_SCINTILLA.constants.SCWS_VISIBLEAFTERINDENT` (2) --- White space used for indentation is displayed normally but after the --- first visible character, it is shown as dots and arrows. +-- Display non-indentation whitespace as dots and arrows. +-- +-- The default value is `0`. -- @field virtual_space_options (number) --- Virtual space options. +-- The virtual space mode. -- -- * `_SCINTILLA.constants.SCVS_NONE` (0) --- Disables all use of virtual space (default). +-- Disable virtual space. -- * `_SCINTILLA.constants.SCVS_RECTANGULARSELECTION` (1) --- Enabled only for rectangular selections. +-- Enable virtual space only for rectangular selections. -- * `_SCINTILLA.constants.SCVS_USERACCESSIBLE` (2) --- Enabled. +-- Enable virtual space. +-- +-- The default value is `0`. -- @field whitespace_chars (string) --- The set of characters making up whitespace for when moving or selecting by --- word. --- Use after setting `buffer.word_chars`. +-- The set of characters considered to be whitespace characters when moving +-- or selecting text by word. +-- Set this only after setting [`buffer.word_chars`](#word_chars). +-- The default value is a string containing all non-newline characters less +-- than ASCII value 33. -- @field whitespace_size (number) --- The size of the dots used to mark space characters. +-- The size of the dots in pixels used to represent space characters when +-- whitespace is visible. +-- The default value is `1`. -- @field word_chars (string) --- The set of characters making up words when moving or selecting by word. +-- The set of characters considered to be word characters when moving or +-- selecting text by word. +-- The default value is a string containing alphanumeric characters, an +-- underscore, and all characters greater than ASCII value 127. -- @field wrap_indent_mode (number) --- How wrapped sublines are placed. --- Default is fixed. +-- The wrapped line indent mode. -- -- * `_SCINTILLA.constants.SC_WRAP_INDENT_FIXED` (0) --- Wrapped sublines aligned to left of window plus amount set by --- `buffer.wrap_start_indent`. +-- Indent wrapped lines by [`buffer.wrap_start_indent`](#wrap_start_indent). -- * `_SCINTILLA.constants.SC_WRAP_INDENT_SAME` (1) --- Wrapped sublines are aligned to first subline indent. +-- Indent wrapped lines the same as the first line. -- * `_SCINTILLA.constants.SC_WRAP_INDENT_INDENT` (2) --- Wrapped sublines are aligned to first subline indent plus one more level --- of indentation. +-- Indent wrapped lines one more level than the first line. -- @field wrap_mode (number) --- Text word wrap mode. +-- Long line wrap mode. -- -- * `_SCINTILLA.constants.SC_WRAP_NONE` (0) --- Disable line wrapping. +-- Long lines are not wrapped. -- * `_SCINTILLA.constants.SC_WRAP_WORD` (1) --- Enable wrapping on word boundaries. +-- Wrap long lines at word boundaries. -- * `_SCINTILLA.constants.SC_WRAP_CHAR` (2) --- Enable wrapping between any characters. +-- Wrap long lines at character boundaries. +-- +-- The default value is `0`. -- @field wrap_start_indent (number) --- The start indent for wrapped lines. +-- The number of spaces to indent wrapped lines by if +-- [`buffer.wrap_indent_mode`](#wrap_indent_mode) is +-- `_SCINTILLA.constants.SC_WRAP_INDENT_FIXED`. +-- The default value is `0`. -- @field wrap_visual_flags (number) --- The display mode of visual flags for wrapped lines. +-- The wrapped line visual display mode. -- -- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_NONE` (0) -- No visual flags. -- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_END` (1) --- Visual flag at end of subline of a wrapped line. +-- Show visual flag at the end of the line. -- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_START` (2) --- Visual flag at begin of subline of a wrapped line. --- Subline is indented by at least 1 to make room for the flag. +-- Show visual flag at the beginning of the sub-line. +-- * `_SCINTILLA.constants.SC_WRAPVISUALFLAG_MARGIN` (4) +-- Show visual flag in the line number margin of the sub-line. +-- +-- The default value is `0`. -- @field wrap_visual_flags_location (number) --- The location of visual flags for wrapped lines. +-- The wrapped line visual flag drawing mode. -- -- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_DEFAULT` (0) --- Visual flags drawn near border. +-- Draw the visual flag near the right border. -- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_END_BY_TEXT` (1) --- Visual flag at end of subline drawn near text. +-- Draw the visual flag near text at the end of the line. -- * `_SCINTILLA.constants.SC_WRAPVISUALFLAGLOC_START_BY_TEXT` (2) --- Visual flag at beginning of subline drawn near text. +-- Draw the visual flag near text at the beginning of the subline. +-- +-- The default value is `0`. -- @field x_offset (number) --- The horizontal scroll position. +-- The horizontal scroll position in pixels. -- 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 added to the size of all fonts. --- It may be positive to magnify or negative to reduce. +-- The number of points to add to the size of all fonts. +-- Negative values are allowed. +-- The default value is `0`. module('buffer') --- --- Add a selection from anchor to caret as the main selection. --- Retainings all other selections as additional selections. Since there is --- always at least one selection, to set a list of selections, the first --- selection should be added with `buffer:set_selection()` and later selections --- added with this function. +-- Adds a new selection to a text range from *anchor* to *caret* as the main +-- selection, retaining all other selections as additional selections. +-- Even if no text is selected, the current position counts as an empty +-- selection. Use `buffer:set_selection()` first when setting a list of +-- selections. -- @param buffer The global buffer. -- @param caret The caret. -- @param anchor The anchor. function add_selection(buffer, caret, anchor) end --- --- Add text to the document at current position. --- The current position is set at the end of the inserted text, but it is not --- scrolled into view. +-- Adds string *text* to the buffer at the current position and moves the +-- current position to the end of the added text, but does not scroll it into +-- view. -- @param buffer The global buffer. -- @param text The text to add. function add_text(buffer, text) end --- --- Enlarge the document to a particular size of text bytes. --- The document will not be made smaller than its current contents. +-- Enlarges the buffer to store *bytes* number of bytes, but never shrinks it +-- beyond the size of its contents. -- @param buffer The global buffer. --- @param bytes The number of bytes the document can store. +-- @param bytes The number of bytes the buffer can store. function allocate(buffer, bytes) end --- --- Clear the annotations from all lines. +-- Clears annotations from all lines. -- @param buffer The global buffer. function annotation_clear_all(buffer) end --- --- Append a string to the end of the document without changing the selection. --- The current selection is not changed and the new text is not scrolled into --- view. +-- Appends string *text* to the end of the buffer without changing the selected +-- text or scrolling the text into view. -- @param buffer The global buffer. -- @param text The text. function append_text(buffer, text) end --- --- Is there an auto-completion list visible? +-- Returns whether or not an autocompletion list is visible. -- @param buffer The global buffer. -- @return bool function auto_c_active(buffer) end --- --- Remove the auto-completion list from the screen. --- A set of characters that will cancel autocompletion can be specified with --- `buffer:auto_c_stops()`. +-- Cancels the autocompletion list. -- @param buffer The global buffer. function auto_c_cancel(buffer) end --- --- User has selected an item so remove the list and insert the selection. --- This has the same effect as the tab key. +-- Autocompletes the selected word in the list. -- @param buffer The global buffer. function auto_c_complete(buffer) end --- --- Retrieve the position of the caret when the auto-completion list was --- displayed. +-- Returns the position where autocompletion started at. -- @param buffer The global buffer. -- @return number function auto_c_pos_start(buffer) end --- --- Select the item in the auto-completion list that starts with a string. --- By default, comparisons are case sensitive, but this can change with --- `buffer.auto_c_ignore_case`. +-- Selects the first item in the autocompletion list that starts with *string*, +-- considering case sensitiveness depending on `buffer.auto_c_ignore_case`. -- @param buffer The global buffer. -- @param string The item in the list to select. function auto_c_select(buffer, string) end --- --- Display an auto-completion list. +-- Displays an autocompletion list from *item_list*, a sorted string whose items +-- are delimited by `buffer.auto_c_separator` characters, using *len_entered* +-- number of characters behind the caret as the prefix of the word to +-- autocomplete. -- @param buffer The global buffer. -- @param len_entered The number of characters before the caret used to provide -- the context. --- @param item_list List of words separated by separator characters (initially --- spaces). The list of words should be in sorted order. +-- @param item_list Sorted list of words separated by separator characters +-- (initially spaces). function auto_c_show(buffer, len_entered, item_list) end --- --- Define a set of characters that when typed cancel the auto-completion list. +-- Defines *chars* as the set of characters that cancel autocompletion when +-- typed. +-- The default set is an empty string. -- @param buffer The global buffer. -- @param chars String list of characters. This list is empty by default. function auto_c_stops(buffer, chars) end --- --- Dedent the selected lines. +-- Dedents the selected lines. -- @param buffer The global buffer. function back_tab(buffer) end --- --- Start a sequence of actions that is undone and redone as a unit. +-- Starts a sequence of actions to undo or redo as a single action. -- May be nested. -- @param buffer The global buffer. function begin_undo_action(buffer) end --- --- Highlight the character at a position indicating there is no matching brace. +-- Highlights the character at position *pos* as an unmatched brace character in +-- the `_SCINTILLA.constants.STYLE_BRACEBAD` style. +-- Removes highlighting when *pos* is `-1`. -- @param buffer The global buffer. -- @param pos The position or `-1` to remove the highlight. function brace_bad_light(buffer, pos) end --- --- Use specified indicator to highlight non matching brace instead of changing --- its style. +-- Highlights unmatched brace characters with indicator number *indic_num*, in +-- the range of `0` to `31`, instead of the +-- `_SCINTILLA.constants.STYLE_BRACEBAD` style if *use_indicator* is `true`. -- @param buffer The global buffer. -- @param use_indicator Use an indicator. -- @param indic_num The indicator number. function brace_bad_light_indicator(buffer, use_indicator, indic_num) end --- --- Highlight the characters at two positions. --- If indent guides are enabled, the indent that corresponds with the brace can --- be highlighted by locating the column with `buffer.column` and highlight the --- indent with `buffer.highlight_guide`. +-- Highlights the characters at positions *pos1* and *pos2* as matching braces +-- in the `_SCINTILLA.constants.STYLE_BRACELIGHT` style. +-- If indent guides are enabled, locate the column with `buffer.column` and +-- set `buffer.highlight_guide` in order to highlight the indent guide. -- @param buffer The global buffer. -- @param pos1 The first position. -- @param pos2 The second position. function brace_highlight(buffer, pos1, pos2) end --- --- Use specified indicator to highlight matching braces instead of changing --- their style. +-- Highlights matching brace characters with indicator number *indic_num*, in +-- the range of `0` to `31`, instead of the +-- `_SCINTILLA.constants.STYLE_BRACELIGHT` style if *use_indicator* is `true`. -- @param buffer The global buffer. -- @param use_indicator Use an indicator. -- @param indic_num The indicator number. function brace_highlight_indicator(buffer, use_indicator, indic_num) end --- --- Find the position of a matching brace or `-1` if no match. --- The brace characters handled are '(', ')', '[', ']', '{', '}', '<', and '>'. --- The search is forwards from an opening brace and backwards from a closing --- brace. A match only occurs if the style of the matching brace is the same as --- the starting brace or the matching brace is beyond the end of styling. Nested --- braces are handled correctly. +-- 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 +-- '>' and must have the same style. -- @param buffer The global buffer. -- @param pos The position. -- @return number. function brace_match(buffer, pos) end --- --- Is there an active call tip? +-- Returns whether or not a call tip is visible. -- @param buffer The global buffer. -- @return bool function call_tip_active(buffer) end --- --- Remove the call tip from the screen. --- Call tips are also removed if any keyboard commands that are not compatible --- with editing the argument list of a function are used. +-- Removes the call tip from view. -- @param buffer The global buffer. function call_tip_cancel(buffer) end --- --- Retrieve the position where the caret was before displaying the call tip. +-- Returns the position where the call tip displayed at. -- @param buffer The global buffer. -- @return number function call_tip_pos_start(buffer) end --- --- Highlights a segment of a call tip. +-- Highlights call tip text from *start_pos*, starting from zero, to *end_pos* +-- with the color `buffer.call_tip_fore_hlt`. -- @param buffer The global buffer. -- @param start_pos The start position. -- @param end_pos The end position. function call_tip_set_hlt(buffer, start_pos, end_pos) end --- --- Show a call tip containing a definition near position pos. --- The call tip text is aligned to start 1 line below this character unless up --- and/or down arrows have been included in the call tip text in which case the --- tip is aligned to the right-hand edge of the rightmost arrow. The assumption --- is that the text starts with something like `"\001 1 of 3 \002"`. +-- Displays a call tip containing string *text* for the word behind position +-- *pos*. +-- Any "\001" or "\002" bytes in *text* are replaced by arrow visuals, +-- indicating the word has more than one call tip. -- @param buffer The global buffer. -- @param pos The position. -- @param text The text. function call_tip_show(buffer, pos, text) end --- --- Will a paste succeed? +-- Returns whether or not the clipboard has text to paste. -- @param buffer The global buffer. -- @return bool function can_paste(buffer) end --- --- Are there any redoable actions in the undo history? +-- Returns whether or not there is an action to redo. -- @param buffer The global buffer. -- @return bool function can_redo(buffer) end --- --- Are there any undoable actions in the undo history? +-- Returns whether or not there is an action to undo. -- @param buffer The global buffer. -- @return bool function can_undo(buffer) end --- --- Cancel any modes such as call tip or auto-completion list display. +-- Cancels the active call tip, autocompletion list, user list, selection mode, +-- etc. -- @param buffer The global buffer. function cancel(buffer) end --- --- Indicate that the internal state of a lexer has changed over a range and --- therefore there may be a need to redraw. +-- Tells the lexer to re-process the range of text from *start_pos* to +-- *end_pos*. -- @param buffer The global buffer. -- @param start_pos The start position. -- @param end_pos The end position. function change_lexer_state(buffer, start_pos, end_pos) end --- --- Move caret left one character. +-- Moves the caret left one character. -- @param buffer The global buffer. function char_left(buffer) end --- --- Move caret left one character extending selection to new caret position. +-- Moves the caret left one character, extending the selection to the new +-- position. -- @param buffer The global buffer. function char_left_extend(buffer) end --- --- Move caret left one character, extending rectangular selection to new caret --- position. +-- Moves the caret left one character, extending the rectangular selection to +-- the new position. -- @param buffer The global buffer. function char_left_rect_extend(buffer) end --- --- Find the position of a character from a point within the window. +-- Returns the character position closest to view coordinates *x* and *y*. -- @param buffer The global buffer. --- @param x The x-coordinate in the window. --- @param y The y-coordinate in the window. +-- @param x The x-coordinate in the view. +-- @param y The y-coordinate in the view. -- @return number function char_position_from_point(buffer, x, y) end --- --- Find the position of a character from a point within the window. --- Return `-1` if not close to text. +-- Returns the character position closest to view coordinates *x* and *y*, or +-- `-1` if the point is outside the window or not close to any text. -- @param buffer The global buffer. --- @param x The x-coordinate in the window. --- @param y The y-coordinate in the window. +-- @param x The x-coordinate in the view. +-- @param y The y-coordinate in the view. -- @return number function char_position_from_point_close(buffer, x, y) end --- --- Move caret right one character. +-- Moves the caret right one character. -- @param buffer The global buffer. function char_right(buffer) end --- --- Move caret right one character extending selection to new caret position. +-- Moves the caret right one character, extending the selection to the new +-- position. -- @param buffer The global buffer. function char_right_extend(buffer) end --- --- Move caret right one character, extending rectangular selection to new caret --- position. +-- Moves the caret right one character, extending the rectangular selection to +-- the new position. -- @param buffer The global buffer. function char_right_rect_extend(buffer) end --- --- Set the last x chosen value to be the caret x position. --- The view remembers the x value of the last position horizontally moved to --- explicitly by the user and this value is then used when moving vertically --- such as by using the up and down keys. This function sets the current x --- position of the caret as the remembered value. +-- Sets the preferred horizontal position of the caret when moving between +-- lines to the current position. -- @param buffer The global buffer. +-- @see caret_sticky function choose_caret_x(buffer) end --- --- Clear the selection. +-- Deletes the selected text or the character at the current position. -- @param buffer The global buffer. function clear(buffer) end --- --- Delete all text in the document. +-- Deletes all of the text in the buffer unless the buffer is read-only. -- @param buffer The global buffer. function clear_all(buffer) end --- --- Drop all key mappings. +-- Clears Scintilla's internal key bindings. -- @param buffer The global buffer. function clear_all_cmd_keys(buffer) end --- --- Set all style bytes to `0`, remove all folding information. +-- Clears all styling and folding information in the buffer. -- @param buffer The global buffer. function clear_document_style(buffer) end --- --- Clear all the registered XPM images. +-- Clears all images registered using `buffer:register_image()` and +-- `buffer:register_rgba_image()`. -- @param buffer The global buffer. function clear_registered_images(buffer) end --- --- Clear selections to a single empty stream selection. +-- Removes all selections and moves the caret to the beginning of the buffer. -- @param buffer The global buffer. function clear_selections(buffer) end --- --- Colorise a segment of the document using the current lexing language. +-- Tells the lexer to style and fold the range of text from *start_pos* to +-- *end_pos*. +-- If *end_pos* is `-1`, styles and folds to the end of the buffer. -- @param buffer The global buffer. -- @param start_pos The start position. -- @param end_pos The end position or `-1` to style from `start_pos` to the end @@ -1196,16 +1268,15 @@ function clear_selections(buffer) end function colourise(buffer, start_pos, end_pos) end --- --- Find the next line at or after line_start that is a contracted fold header --- line. --- Return `-1` when no more lines. +-- Returns the line number of the next contracted fold header line starting at +-- *line_start*, or `-1`. -- @param buffer The global buffer. -- @param line_start The start line number. -- @return number function contracted_fold_next(buffer, line_start) end --- --- Converts all line endings in the document to one mode. +-- Converts all line endings to end of line mode *mode*. -- @param buffer The global buffer. -- @param mode The line ending mode. Valid values are: -- * `_SCINTILLA.constants.SC_EOL_CRLF` (0) @@ -1214,31 +1285,34 @@ function contracted_fold_next(buffer, line_start) end function convert_eo_ls(buffer, mode) end --- --- Copy the selection to the clipboard. +-- Copies the selected text to the clipboard. +-- Multiple selections are copied in order with no delimiters. Rectangular +-- selections are copied from top to bottom with line ending delimiters. Virtual +-- space is not copied. -- @param buffer The global buffer. function copy(buffer) end --- --- Copy the selection, if selection empty copy the line with the caret. +-- Copies the selected text or the current line to the clipboard. -- @param buffer The global buffer. function copy_allow_line(buffer) end --- --- Copy a range of text to the clipboard. Positions are clipped into the --- document. +-- Copies the range of text from *start_pos* to *end_pos* to the clipboard. -- @param buffer The global buffer. -- @param start_pos The start position. -- @param end_pos The end position. function copy_range(buffer, start_pos, end_pos) end --- --- Copy argument text to the clipboard. +-- Copies string *text* to the clipboard. -- @param buffer The global buffer. -- @param text The text. function copy_text(buffer, text) end --- --- Count characters between two positions. +-- Returns the number of whole characters in-between positions *start_pos* and +-- *end_pos*. -- @param buffer The global buffer. -- @param start_pos The start position. -- @param end_pos The end position. @@ -1246,216 +1320,232 @@ function copy_text(buffer, text) end function count_characters(buffer, start_pos, end_pos) end --- --- Cut the selection to the clipboard. +-- Cuts the selected text to the clipboard. +-- Multiple selections are copied in order with no delimiters. Rectangular +-- selections are copied from top to bottom with line ending delimiters. Virtual +-- space is not copied. -- @param buffer The global buffer. function cut(buffer) end --- --- Delete back from the current position to the start of the line. +-- Deletes text from the current position to the beginning of the line. -- @param buffer The global buffer. function del_line_left(buffer) end --- --- Delete forwards from the current position to the end of the line. +-- Deletes text from the current position to the end of the line. -- @param buffer The global buffer. function del_line_right(buffer) end --- --- Delete the word to the left of the caret. +-- Deletes the word to the left of the caret, including any leading non-word +-- characters. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function del_word_left(buffer) end --- --- Delete the word to the right of the caret. +-- Deletes the word to the right of the caret, including any trailing non-word +-- characters. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function del_word_right(buffer) end --- --- Delete the word to the right of the caret, but not the trailing non-word +-- Deletes the word to the right of the caret, excluding any trailing non-word -- characters. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function del_word_right_end(buffer) end --- --- Delete the selection or if no selection, the character before the caret. +-- Deletes the selected text or the character behind the caret. -- @param buffer The global buffer. function delete_back(buffer) end --- --- Delete the selection or if no selection, the character before the caret. --- Will not delete the character before at the start of a line. +-- Deletes the selected text or the character behind the caret unless the caret +-- is at the beginning of a line. -- @param buffer The global buffer. function delete_back_not_line(buffer) end --- --- Delete a range of text in the document. +-- Deletes the range of text from *pos* to *pos* + *length* in the buffer. -- @param buffer The global buffer. -- @param pos The start position of the range to delete. -- @param length The length of the range to delete. function delete_range(buffer, pos, length) end --- --- Find the document line of a display line taking hidden lines into account. +-- 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 zero, returns `0`. If +-- *display_line* is greater than or equal to the number of displayed lines, +-- returns `buffer.line_count`. -- @param buffer The global buffer. +-- @param display_line The display line number. -- @return number -function doc_line_from_visible(buffer) end +function doc_line_from_visible(buffer, display_line) end --- --- Move caret to last position in document. +-- Moves the caret to the end of the buffer. -- @param buffer The global buffer. function document_end(buffer) end --- --- Move caret to last position in document extending selection to new caret +-- Moves the caret to the end of the buffer, extending the selection to the new -- position. -- @param buffer The global buffer. function document_end_extend(buffer) end --- --- Move caret to first position in document. +-- Moves the caret to the beginning of the buffer. -- @param buffer The global buffer. function document_start(buffer) end --- --- Move caret to first position in document extending selection to new caret --- position. +-- Moves the caret to the beginning of the buffer, extending selection to the +-- new position. -- @param buffer The global buffer. function document_start_extend(buffer) end --- --- Switch from insert to overtype mode or the reverse. +-- Toggles `buffer.overtype`. -- @param buffer The global buffer. function edit_toggle_overtype(buffer) end --- --- Delete the undo history. --- It also sets the save point to the start of the undo buffer, so the document --- will appear to be unmodified. +-- Deletes the undo and redo history and sets `buffer.modify` to `false`. -- @param buffer The global buffer. function empty_undo_buffer(buffer) end --- --- Translates a UTF8 string into the document encoding. --- Return the length of the result in bytes. On error return `0`. +-- Returns the result of UTF-8-encoded string *string* converted into the +-- buffer's encoding. -- @param buffer The global buffer. -- @param string The string. -- @return number function encoded_from_utf8(buffer, string) end --- --- End a sequence of actions that is undone and redone as a unit. +-- Ends a sequence of actions to undo or redo as a single action. -- @param buffer The global buffer. function end_undo_action(buffer) end --- --- Ensure a particular line is visible by expanding any header line hiding it. +-- Ensures line number *line* is visible by expanding any fold header lines +-- hiding it. -- @param buffer The global buffer. -- @param line The line number. function ensure_visible(buffer, line) end --- --- Ensure a particular line is visible by expanding any header line hiding it. --- Use the currently set visibility policy to determine which range to display. +-- Ensures line number *line* is visible by expanding any fold header lines +-- hiding it and applies the vertical caret policy set with +-- `buffer:set_visible_policy()`. -- @param buffer The global buffer. -- @param line The line number. function ensure_visible_enforce_policy(buffer, line) end --- --- Find the position of a column on a line taking into account tabs and --- multi-byte characters. --- If beyond end of line, return line end position. +-- 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*. -- @param buffer The global buffer. -- @param line The line number. -- @param column The column number. function find_column(buffer, line, column) end --- --- Insert a Form Feed character. +-- Inserts a Form Feed ("\f") character at the current position. -- @param buffer The global buffer. function form_feed(buffer) end --- --- Retrieve the text of the line containing the caret. --- Also returns the index of the caret on the line. +-- Returns the current line's text and the index of the caret on the line, +-- starting from zero. -- @param buffer The global buffer. -- @return string, number function get_cur_line(buffer) end --- --- Get the back color for active hotspots in "0xBBGGRR" format. +-- Returns the numeric background color for active hotspots. -- @param buffer The global buffer. -- @return number function get_hotspot_active_back(buffer) end --- --- Get the fore color for active hotspots. +-- Returns the numeric foreground color for active hotspots. -- @param buffer The global buffer. -- @return number function get_hotspot_active_fore(buffer) end --- --- Find the last child line of a header line. +-- Returns the line number of the last line after line number *start_line* whose +-- fold level is greater than *level* or the level of *start_line* if *level* is +-- `-1`. -- @param buffer The global buffer. --- @param header_line The line number of a header line. --- @param level The level or `-1` for the level of `header_line`. -function get_last_child(buffer, header_line, level) end +-- @param start_line The line number of a header line. +-- @param level The level or `-1` for the level of `start_line`. +function get_last_child(buffer, start_line, level) end --- --- Retrieve the contents of a line. --- Also returns the length of the line. +-- Returns the text on line number *line*, including end of line characters, and +-- the length of the line. -- @param buffer The global buffer. -- @param line The line number. -- @return string, number function get_line(buffer, line) end --- --- Retrieve the position of the end of the selection at the given line (`-1` if --- no selection on this line). +-- Returns the position of the end of the selected text on line number *line*, +-- or `-1`. -- @param buffer The global buffer. -- @param line The line number. function get_line_sel_end_position(buffer, line) end --- --- Retrieve the position of the start of the selection at the given line (`-1` --- if no selection on this line). +-- Returns the position of the beginning of the selected text on line number +-- *line*, or `-1`. -- @param buffer The global buffer. -- @param line The line number. function get_line_sel_start_position(buffer, line) end --- --- Retrieve the selected text. --- Also returns the length of the text. +-- Returns the selected text and its length. +-- Multiple selections are included in order with no delimiters. Rectangular +-- selections are included from top to bottom with line ending delimiters. +-- Virtual space is not included. -- @param buffer The global buffer. -- @return string, number function get_sel_text(buffer) end --- --- Retrieve all the text in the document. --- Also returns number of characters retrieved. +-- Returns all of the text in the buffer and its length. -- @param buffer The global buffer. function get_text(buffer) end --- --- Set caret to start of a line and ensure it is visible. +-- Places the caret an anchor at the beginning of line number *line* and scrolls +-- them into view. -- @param buffer The global buffer. -- @param line The line number. function goto_line(buffer, line) end --- --- Set caret to a position and ensure it is visible. --- The anchor position is set the same as the current position. +-- Places the caret and anchor at position *pos* and scrolls them into view. -- @param buffer The global buffer. -- @param pos The position. function goto_pos(buffer, pos) end --- --- Set the focus to this view. +-- Sets the focus to the buffer's view. -- @param buffer The global buffer. function grab_focus(buffer) end --- --- Make a range of lines invisible. --- This has no effect on fold levels or fold flags. `start_line` can not be +-- Hides the range of lines from line number *start_line* to *end_line*. +-- This has no effect on fold levels or fold flags and the first line cannot be -- hidden. -- @param buffer The global buffer. -- @param start_line The start line. @@ -1463,91 +1553,93 @@ function grab_focus(buffer) end function hide_lines(buffer, start_line, end_line) end --- --- Draw the selection in normal style or with selection highlighted. +-- Do not highlight selected text if *normal* is `true`. -- @param buffer The global buffer. -- @param normal Draw normal selection. function hide_selection(buffer, normal) end --- --- Move caret to first position on line. +-- Moves the caret to the beginning of the current line. -- @param buffer The global buffer. function home(buffer) end --- --- Move caret to first position on display line. +-- Moves the caret to the beginning of the current wrapped line. -- @param buffer The global buffer. function home_display(buffer) end --- --- Move caret to first position on display line extending selection to new caret --- position. +-- Moves the caret to the beginning of the current wrapped line, extending the +-- selection to the new position. -- @param buffer The global buffer. function home_display_extend(buffer) end --- --- Move caret to first position on line extending selection to new caret --- position. +-- Moves the caret to the beginning of the current line, extending selection to +-- the new position. -- @param buffer The global buffer. function home_extend(buffer) end --- --- Move caret to first position on line, extending rectangular selection to new --- caret position. +-- Moves the caret to beginning of the current line, extending the rectangular +-- selection to the new position. -- @param buffer The global buffer. function home_rect_extend(buffer) end --- --- Move caret to the start of the display line when word-wrap is enabled. --- If already there, go to the start of the document line. +-- Moves the caret to beginning of the current wrapped line, or if already +-- there, to the beginning of the actual line. -- @param buffer The global buffer. function home_wrap(buffer) end --- --- Like `buffer:home_wrap()` but extending selection to new caret position. +-- Like `buffer:home_wrap()`, but extends the selection to the new position. -- @param buffer The global buffer. function home_wrap_extend(buffer) end --- --- Retrieve a bitmap value representing which indicators are non-zero at a --- position. --- Bit 0 is set if indicator 0 is present, bit 1 for indicator 1 and so on. +-- Returns a bit-mask representing which indicators are on at position *pos*. +-- Bit 0 is set if indicator 0 is on, bit 1 for indicator 1, etc. -- @param buffer The global buffer. -- @param pos The position. -- @return number function indicator_all_on_for(buffer, pos) end --- --- Turn a indicator off over a range. +-- Clears indicator `buffer.indicator_current` over the range of text from *pos* +-- to *pos* + *clear_length*. -- @param buffer The global buffer. -- @param pos The start position. -- @param clear_length The length. function indicator_clear_range(buffer, pos, clear_length) end --- --- Find the position where a particular indicator ends. +-- Returns the end position of indicator number *indicator*, in the range of `0` +-- to `31`, at position *pos*. -- @param buffer The global buffer. -- @param indicator An indicator number in the range of `0` to `31`. -- @param pos The position of the indicator. function indicator_end(buffer, indicator, pos) end --- --- Turn a indicator on over a range. --- This function fills with the current indicator value. +-- Sets indicator `buffer.indicator_value` or `buffer.indicator_current` over +-- the range of text from *pos* to *pos* + *fill_length*. -- @param buffer The global buffer. -- @param pos The start position. -- @param fill_length The length. function indicator_fill_range(buffer, pos, fill_length) end --- --- Find the position where a particular indicator starts. +-- Returns the position of the beginning of indicator number *indicator*, in the +-- range of `0` to `31`, at position *pos*. -- @param buffer The global buffer. -- @param indicator An indicator number in the range of `0` to `31`. -- @param pos The position of the indicator. function indicator_start(buffer, indicator, pos) end --- --- Retrieve the value of a particular indicator at a position. --- Currently all values are drawn the same. +-- Returns the value of indicator number *indicator*, in the range of `0` to +-- `31`, at position *pos*. -- @param buffer The global buffer. -- @param indicator The indicator number in the range of `0` to `31`. -- @param pos The position. @@ -1555,99 +1647,103 @@ function indicator_start(buffer, indicator, pos) end function indicator_value_at(buffer, indicator, pos) end --- --- Insert string at a position. --- If the current position is after the insertion point then it is moved along --- with its surrounding text but no scrolling is performed. +-- Inserts string *text* at position *pos* or the current position if *pos* is +-- `-1`. +-- If the current position is after the *pos*, it is moved appropriately, but +-- not scrolled into view. -- @param buffer The global buffer. -- @param pos The position to insert text at or `-1` for the current position. -- @param text The text to insert. function insert_text(buffer, pos, text) end --- --- Copy the line containing the caret. +-- Copies the current line to the clipboard. -- @param buffer The global buffer. function line_copy(buffer) end --- --- Cut the line containing the caret. +-- Cuts the current line to the clipboard. -- @param buffer The global buffer. function line_cut(buffer) end --- --- Delete the line containing the caret. +-- Deletes the current line. -- @param buffer The global buffer. function line_delete(buffer) end --- --- Move caret down one line. +-- Moves the caret down one line. -- @param buffer The global buffer. function line_down(buffer) end --- --- Move caret down one line extending selection to new caret position. +-- Moves the caret down one line, extending the selection to the new position. -- @param buffer The global buffer. function line_down_extend(buffer) end --- --- Move caret down one line, extending rectangular selection to new caret +-- Moves the caret down one line, extending the rectangular selection to the new -- position. -- @param buffer The global buffer. function line_down_rect_extend(buffer) end --- --- Duplicate the current line. +-- Duplicates the current line below the line. -- @param buffer The global buffer. function line_duplicate(buffer) end --- --- Move caret to last position on line. +-- Moves the caret to the end of the current line. -- @param buffer The global buffer. function line_end(buffer) end --- --- Move caret to last position on display line. +-- Moves the caret to the end of the current wrapped line. -- @param buffer The global buffer. function line_end_display(buffer) end --- --- Move caret to last position on display line extending selection to new caret --- position. +-- Moves the caret to the end of the current wrapped line, extending the +-- selection to the new position. -- @param buffer The global buffer. function line_end_display_extend(buffer) end --- --- Move caret to last position on line extending selection to new caret --- position. +-- Moves the caret to the end of the current line, extending the selection to +-- the new position. -- @param buffer The global buffer. function line_end_extend(buffer) end --- --- Move caret to last position on line, extending rectangular selection to new --- caret position. +-- Moves the caret to the end of the current line, extending the rectangular +-- selection to the new position. -- @param buffer The global buffer. function line_end_rect_extend(buffer) end --- --- Move caret to the end of the display line when word-wrap is enabled. --- If already there, go to the end of the document line. +-- Moves the caret to the end of the current wrapped line, or if already there, +-- to the end of the actual line. -- @param buffer The global buffer. function line_end_wrap(buffer) end --- --- Like `buffer:line_end_wrap()` but extending selection to new caret position. +-- Like `buffer:line_end_wrap()`, but extends the selection to the new position. -- @param buffer The global buffer. function line_end_wrap_extend(buffer) end --- --- Retrieve the line containing a position. +-- Returns the line number containing position *pos*. +-- Returns `0` if *pos* is less than 0 or `buffer.line_count` if *pos* is +-- greater than `buffer.length`. -- @param buffer The global buffer. -- @param pos The position. -- @return number function line_from_position(buffer, pos) end --- --- Returns how many characters are on a line, including end of line characters. --- To get the length of the line not including any end of line characters, use +-- Returns the number of characters on line number *line*, including end of line +-- characters. +-- To get line length excluding end of line characters, use -- `buffer.line_end_position[line] - buffer:position_from_line(line)`. -- @param buffer The global buffer. -- @param line The line number. @@ -1655,70 +1751,72 @@ function line_from_position(buffer, pos) end function line_length(buffer, line) end --- --- Scroll horizontally and vertically. +-- Scroll right *columns* columns and down *lines* lines. +-- Negative values are allowed. -- @param buffer The global 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 --- --- Scroll the document down, keeping the caret visible. +-- Scroll the buffer down one line, keeping the current position visible. -- @param buffer The global buffer. function line_scroll_down(buffer) end --- --- Scroll the document up, keeping the caret visible. +-- Scroll the buffer up one line, keeping the current position visible. -- @param buffer The global buffer. function line_scroll_up(buffer) end --- --- Switch the current line with the previous. +-- Switch the current line with the previous one. -- @param buffer The global buffer. function line_transpose(buffer) end --- --- Move caret up one line. +-- Moves the caret up one line. -- @param buffer The global buffer. function line_up(buffer) end --- --- Move caret up one line extending selection to new caret position. +-- Moves the caret up one line, extending the selection to the new position. -- @param buffer The global buffer. function line_up_extend(buffer) end --- --- Move caret up one line, extending rectangular selection to new caret +-- Moves the caret up one line, extending the rectangular selection to the new -- position. -- @param buffer The global buffer. function line_up_rect_extend(buffer) end --- --- Join the lines in the target. --- Where this would lead to no space between words, an extra space is inserted. +-- Joins the lines in the target range, inserting spaces in-between words on +-- separate lines. -- @param buffer The global buffer. function lines_join(buffer) end --- --- Split the lines in the target into lines that are less wide than --- `pixel_width` where possible. +-- Splits the lines in the target range into lines of width at most +-- *pixel_width* or the width of the view if *pixel_width* is `0`. -- @param buffer The global buffer. -- @param pixel_width The pixel width. When `0`, the width of the view is used. function lines_split(buffer, pixel_width) end --- --- Transform the selection to lower case. +-- Converts the selected text to lower case letters. -- @param buffer The global buffer. function lower_case(buffer) end --- --- Clear the margin text on all lines. +-- Clears margin text on all lines. -- @param buffer The global buffer. function margin_text_clear_all(buffer) end --- --- Add a marker to a line, returning an ID which can be used to find or delete --- the marker. --- Returns `-1` if this fails (illegal line number, out of memory). +-- Adds marker number *marker_num*, in the range of `0` to `31`, on line number +-- *line*, returning a marker handle which can be used in +-- `buffer:marker_delete_handle()` and `buffer:marker_line_from_handle()`, or +-- `-1` if the marker cannot be added. -- @param buffer The global buffer. -- @param line The line number. -- @param marker_num A marker number in the range of `0` to `31`. @@ -1726,7 +1824,9 @@ function margin_text_clear_all(buffer) end function marker_add(buffer, line, marker_num) end --- --- Add a set of markers to a line. +-- Adds the markers specified in the marker bit-mask *marker_mask* to line +-- number *line*. +-- Bit 0 is set to add marker 0, bit 1 for marker 1, etc., up to marker 31. -- @param buffer The global buffer. -- @param line The line number. -- @param marker_mask A mask of markers to set. Set bit 0 to set marker 0, bit @@ -1734,7 +1834,8 @@ function marker_add(buffer, line, marker_num) end function marker_add_set(buffer, line, marker_mask) end --- --- Set the symbol used for a particular marker number. +-- Sets the symbol *marker_symbol* shown in the margin for marker number +-- *marker_num*, in the range of `0` to `31`. -- @param buffer The global buffer. -- @param marker_num A marker number in the range of `0` to `31`. -- @param marker_symbol A marker symbol: `_SCINTILLA.constants.SC_MARK_*`. @@ -1742,16 +1843,22 @@ function marker_add_set(buffer, line, marker_mask) end function marker_define(buffer, marker_num, marker_symbol) end --- --- Define a marker from a pixmap. +-- Defines XPM image *pixmap* for marker number *marker_num*, in the range of +-- `0` to `31`. +-- Pixmap markers use the `_SCINTILLA.constants.SC_MARK_PIXMAP` marker symbol. -- @param buffer The global buffer. -- @param marker_num A marker number in the range of `0` to `31`. -- @param pixmap `NULL`-terminated pixmap data. function marker_define_pixmap(buffer, marker_num, pixmap) end --- --- Define a marker from RGBA data. --- It has the width and height from `buffer.rgba_image_width` and --- `buffer.rgba_image_height`. +-- Defines RGBA image *pixels* for marker number *marker_num*, in the range of +-- `0` to `31`. +-- RGBA image markers use the `_SCINTILLA.constants.SC_MARK_RGBAIMAGE` marker +-- symbol. The dimensions for *pixels*, `buffer.rgba_image_width` and +-- `buffer.rgba_image_height`, must be already 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 The global buffer. -- @param marker_num A marker number in the range of `0` to `31`. -- @param pixels A sequence of 4 byte pixel values starting with the pixels for @@ -1764,7 +1871,8 @@ function marker_define_pixmap(buffer, marker_num, pixmap) end function marker_define_rgba_image(buffer, marker_num, pixels) end --- --- Delete a marker from a line. +-- Deletes marker number *marker_num*, in the range of `0` to `31` or `-1` for +-- all markers, from line number *line*. -- @param buffer The global buffer. -- @param line The line number. -- @param marker_num A marker number in the range of `0` to `31` or `-1` to @@ -1772,44 +1880,47 @@ function marker_define_rgba_image(buffer, marker_num, pixels) end function marker_delete(buffer, line, marker_num) end --- --- Delete all markers with a particular number from all lines. +-- Deletes marker number *marker_num*, in the range of `0` to `31` or `-1` for +-- all markers, from all lines in the buffer. -- @param buffer The global buffer. -- @param marker_num A marker number in the range of `0` to `31` or `-1` to -- delete all markers from the line. function marker_delete_all(buffer, marker_num) end --- --- Delete a marker. +-- Deletes the marker with handle *handle* returned by `buffer:marker_add()`. -- @param buffer The global buffer. -- @param handle The identifier of a marker returned by `buffer:marker_add()`. function marker_delete_handle(buffer, handle) end --- --- Enable/disable highlight for current folding block (smallest one that --- contains the caret) +-- Highlights the margin fold markers for the current fold block if *enabled* is +-- `true`. -- @param buffer The global buffer. -- @param enabled Whether to enable highlight. function marker_enable_highlight(buffer, enabled) end --- --- Get a bit mask of all the markers set on a line. --- Bit 0 is set if marker 0 is present, bit 1 for marker 1 and so on. +-- Returns a bit-mask representing which markers are set line number *line*. +-- Bit 0 is set if marker 0 is set, bit 1 for marker 1, etc. -- @param buffer The global buffer. -- @param line The line number. -- @return number. function marker_get(buffer, line) end --- --- Retrieve the line number at which a particular marker is located. --- Returns `-1` if it not found. +-- Returns the line number the marker with handle *handle*, returned by +-- `buffer:marker_add()`, is on, or `-1`. -- @param buffer The global buffer. -- @param handle The identifier of a marker returned by `buffer:marker_add()`. -- @return number function marker_line_from_handle(buffer, handle) end --- --- Find the next line at or after start_line that includes a marker in mask. --- Return `-1` when no more lines. +-- Returns the first line number starting at line number *start_line* that has +-- all of the markers represented by marker bit-mask *marker_mask* set on, or +-- `-1`. +-- Bit 0 is set if marker 0 is set, bit 1 for marker 1, etc., up to marker 31. -- @param buffer The global buffer. -- @param start_line The start line. -- @param marker_mask A mask of markers to find. Set bit 0 to find marker 0, bit @@ -1818,7 +1929,10 @@ function marker_line_from_handle(buffer, handle) end function marker_next(buffer, start_line, marker_mask) end --- --- Find the previous line before `start_line` that includes a marker in mask. +-- Returns the last line number before or on line number *start_line* that has +-- all of the markers represented by marker bit-mask *marker_mask* set on, or +-- `-1`. +-- Bit 0 is set if marker 0 is set, bit 1 for marker 1, etc., up to marker 31. -- @param buffer The global buffer. -- @param start_line The start line. -- @param marker_mask A mask of markers to find. Set bit 0 to find marker 0, bit @@ -1827,180 +1941,176 @@ function marker_next(buffer, start_line, marker_mask) end function marker_previous(buffer, start_line, marker_mask) end --- --- Return the symbol defined for marker_num with `buffer:marker_define()`. +-- Returns the symbol defined for marker number *marker_num*, in the range of +-- `0` to `31`, used in `buffer:marker_define()`, +-- `buffer:marker_define_pixmap()`, or `buffer:marker_define_rgba_image()`. -- @param buffer The global buffer. -- @param marker_num A marker number in the range of `0` to `31`. -- @return number function marker_symbol_defined(buffer, marker_num) end --- --- Move the caret inside current view if it is not there already. --- Any selection is lost. +-- Moves the current position to be visible inside the view if it is not +-- already, removing any selections. -- @param buffer The global buffer. function move_caret_inside_view(buffer) end --- --- Move the selected lines down one line, shifting the line below before the --- selection. --- The selection will be automatically extended to the beginning of the --- selection's first line and the end of the seletion's last line. If nothing --- was selected, the line the cursor is currently at will be selected. +-- Moves the selected lines down one line. -- @param buffer The global buffer. function move_selected_lines_down(buffer) end --- --- Move the selected lines up one line, shifting the line above after the --- selection. --- The selection will be automatically extended to the beginning of the --- selection's first line and the end of the seletion's last line. If nothing --- was selected, the line the cursor is currently at will be selected. +-- Moves the selected lines up one line. -- @param buffer The global buffer. function move_selected_lines_up(buffer) end --- --- Insert a new line, may use a CRLF, CR or LF depending on EOL mode. +-- Inserts a new line character(s) at the current position depending on the end +-- of line mode. -- @param buffer The global buffer. function new_line(buffer) end --- --- Move caret one page down. +-- Moves the caret one page down. -- @param buffer The global buffer. function page_down(buffer) end --- --- Move caret one page down extending selection to new caret position. +-- Moves the caret one page down, extending the selection to the new position. -- @param buffer The global buffer. function page_down_extend(buffer) end --- --- Move caret one page down, extending rectangular selection to new caret +-- Moves the caret one page down, extending the rectangular selection to the new -- position. -- @param buffer The global buffer. function page_down_rect_extend(buffer) end --- --- Move caret one page up. +-- Moves the caret one page up. -- @param buffer The global buffer. function page_up(buffer) end --- --- Move caret one page up extending selection to new caret position. +-- Moves the caret one page up, extending the selection to the new position. -- @param buffer The global buffer. function page_up_extend(buffer) end --- --- Move caret one page up, extending rectangular selection to new caret +-- Moves the caret one page up, extending the rectangular selection to the new -- position. -- @param buffer The global buffer. function page_up_rect_extend(buffer) end --- --- Move caret one paragraph down (delimited by empty lines). +-- Moves the caret one paragraph down. +-- Paragraphs are surrounded by one or more blank lines. -- @param buffer The global buffer. function para_down(buffer) end --- --- Move caret one paragraph down (delimited by empty lines) extending selection --- to new caret position. +-- Moves the caret one paragraph down, extending the selection to the new +-- position. +-- Paragraphs are surrounded by one or more blank lines. -- @param buffer The global buffer. function para_down_extend(buffer) end --- --- Move caret one paragraph up (delimited by empty lines). +-- Moves the caret one paragraph up. +-- Paragraphs are surrounded by one or more blank lines. -- @param buffer The global buffer. function para_up(buffer) end --- --- Move caret one paragraph up (delimited by empty lines) extending selection to --- new caret position. +-- Moves the caret one paragraph up, extending the selection to the new +-- position. +-- Paragraphs are surrounded by one or more blank lines. -- @param buffer The global buffer. function para_up_extend(buffer) end --- --- Paste the contents of the clipboard into the document replacing the --- selection. +-- Pastes the contents of the clipboard into the buffer, replacing the selected +-- text depending on `buffer.multi_paste`. -- @param buffer The global buffer. function paste(buffer) end --- --- For private communication between an application and a known lexer. --- @param buffer The global buffer. --- @param operation An operation number. --- @param data Number data. -function private_lexer_call(buffer, operation, data) end - ---- --- Retrieve the x value of the point in the window where a position is --- displayed. +-- Returns the x-coordinate in the view of position *pos*. -- @param buffer The global buffer. -- @param pos The position. -- @return number function point_x_from_position(buffer, pos) end --- --- Retrieve the y value of the point in the window where a position is --- displayed. +-- Returns the y-coordinate in the view of position *pos*. -- @param buffer The global buffer. -- @param pos The position. -- @return number function point_y_from_position(buffer, pos) end --- --- Given a valid document position, return the next position taking code page --- into account. Maximum value returned is the last position in the document. +-- Returns the position of the next character after position *pos*, taking code +-- page into account, or `buffer.length - 1`. -- @param buffer The global buffer. -- @param pos The position. function position_after(buffer, pos) end --- --- Given a valid document position, return the previous position taking code --- page into account. Returns `0` if passed `0`. +-- Returns the position of the previous character before position *pos*, taking +-- code page into account, or `0`. -- @param buffer The global buffer. -- @param pos The position. -- @return number function position_before(buffer, pos) end --- --- Retrieve the position at the start of a line. --- If line is greater than the lines in the document, returns `-1`. +-- Returns the position at the beginning of line number *line*. +-- Returns `-1` if *line* is greater than `buffer.line_count`. -- @param buffer The global buffer. -- @param line The line. -- @return number function position_from_line(buffer, line) end --- --- Find the position from a point within the window. +-- Returns the position closest to view coordinates *x* and *y*, which may be +-- in-between multi-byte characters. -- @param buffer The global buffer. --- @param x The x-coordinate in the window. --- @param y The y-coordinate in the window. +-- @param x The x-coordinate in the view. +-- @param y The y-coordinate in the view. -- @return number function position_from_point(buffer, x, y) end --- --- Returns the position from a point within the window, but return `-1` if not --- close to text. +-- Returns the position closest to view coordinates *x* and *y*, which may be +-- in-between multi-byte characters, or `-1` if the point is outside the window +-- or not close to any text. -- @param buffer The global buffer. --- @param x The x-coordinate in the window. --- @param y The y-coordinate in the window. +-- @param x The x-coordinate in the view. +-- @param y The y-coordinate in the view. -- @return number function position_from_point_close(buffer, x, y) end --- --- Redoes the next action on the undo history. +-- Redoes the next undone action. -- @param buffer The global buffer. function redo(buffer) end --- --- Register an XPM image for use in autocompletion lists. +-- Registers XPM image *xpm_data* to type number *type* for use in +-- autocompletion lists. -- @param buffer The global buffer. -- @param type Integer type to register the image with. -- @param xpm_data XPM data as is described for `buffer:marker_define_pixmap()`. function register_image(buffer, type, xpm_data) end --- --- Register an RGBA image for use in autocompletion lists. --- It has the width and height from `buffer.rgba_image_width` and --- `buffer.rgba_image_height`. +-- Registers RGBA image *pixels* to type number *type* for use in autocompletion +-- lists. +-- The dimensions for *pixels*, `buffer.rgba_image_width` and +-- `buffer.rgba_image_height`, must be already 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 The global buffer. -- @param type Integer type to register the image with. -- @param pixels RGBA data as is described for @@ -2008,75 +2118,75 @@ function register_image(buffer, type, xpm_data) end function register_rgba_image(buffer, type, pixels) end --- --- Replace the selected text with the argument text. --- The caret is positioned after the inserted text and the caret is scrolled --- into view. +-- Replaces the selected text with string *text*, scrolling the caret into view. -- @param buffer The global buffer. -- @param text The text. function replace_sel(buffer, text) end --- --- Replace the target text with the argument text. --- After replacement, the target range refers to the replacement text. --- Returns the length of the replacement text. +-- Replaces the text in the target range with string *text*, returning the +-- length of *text*. +-- The recommended way to delete text in the buffer is to set the target to the +-- text to be removed, and to call this function with an empty string. -- @param buffer The global buffer. -- @param text The text (can contain null bytes). -- @return number function replace_target(buffer, text) end --- --- Replace the target text with the argument text after `\d` processing. --- Looks for `\d` where `d` is between `1` and `9` and replaces these with the --- strings matched in the last search operation which were surrounded by `\(` --- and `\)`. Returns the length of the replacement text including any change --- caused by processing the `\d` patterns. +-- Replaces the text in the target range with string *text* after replacing any +-- "\d" sequences, where `d` is a number in the range of `1` to `9`, with the +-- tag match values from the regular expression or the entire match for "\0", +-- returning the length of the replacement text. -- @param buffer The global buffer. -- @param text The text (can contain null bytes). -- @return number function replace_target_re(buffer, text) end --- --- Set the main selection to the next selection. +-- Sets the next additional selection to be the main selection. -- @param buffer The global buffer. function rotate_selection(buffer) end --- --- Ensure the caret is visible. +-- Scrolls the current position into view based on the policies set with +-- `buffer:set_x_caret_policy()` and `buffer:set_y_caret_policy()`. -- @param buffer The global buffer. +-- @see set_x_caret_policy +-- @see set_y_caret_policy function scroll_caret(buffer) end --- --- Scroll to end of document. +-- Scroll to the end of the buffer without moving the caret. -- @param buffer The global buffer. function scroll_to_end(buffer) end --- --- Scroll to start of document. +-- Scroll to the beginning of the buffer without moving the caret. -- @param buffer The global buffer. function scroll_to_start(buffer) end --- --- Sets the current caret position to be the search anchor. --- Always call this before calling either of `buffer:search_next()` or --- `buffer:search_prev()`. +-- Sets the current position to anchor subsequent searches with +-- `buffer:search_next()` and `buffer:search_prev()`. -- @param buffer The global buffer. function search_anchor(buffer) end --- --- Search for a counted string in the target and set the target to the found --- range. --- Returns length of range or `-1` for failure in which case target is not --- moved. +-- Searches for the first occurrence of string *text* in the target range +-- bounded by `buffer.target_start` and `buffer.target_end` using search flags +-- `buffer.search_flags` and, if found, sets the new target range to that +-- occurrence, returning its position or `-1` otherwise. -- @param buffer The global buffer. -- @param text The text (can contain null bytes). -- @return number function search_in_target(buffer, text) end --- --- Find some text starting at the search anchor. --- The return value is `-1` if nothing is found, otherwise the return value is --- the start position of the matching text. The selection is updated to show the --- matched text, but is not scrolled into view. +-- Searches for and selects the first occurrence of string *text* starting at +-- the search anchor using search flags *flags*, returning the position of the +-- occurrence or `-1`. +-- Selected text is not scrolled into view. -- @param buffer The global buffer. -- @param flags Search flags. See `buffer.search_flags`. -- @param text The text. @@ -2085,10 +2195,9 @@ function search_in_target(buffer, text) end function search_next(buffer, flags, text) end --- --- Find some text starting at the search anchor and moving backwards. --- The return value is `-1` if nothing is found, otherwise the return value is --- the start position of the matching text. The selection is updated to show the --- matched text, but is not scrolled into view. +-- Searches for and selects the last occurrence of string *text* before the +-- search anchor using search flags *flags*, returning the position of the +-- occurrence or `-1`. -- @param buffer The global buffer. -- @param flags Search flags. See `buffer.search_flags`. -- @param text The text. @@ -2097,75 +2206,75 @@ function search_next(buffer, flags, text) end function search_prev(buffer, flags, text) end --- --- Select all the text in the document. --- The current position is not scrolled into view. +-- Selects all of the text in the buffer without scrolling the view. -- @param buffer The global buffer. function select_all(buffer) end --- --- Duplicate the selection. --- If selection empty duplicate the line containing the caret. +-- Duplicates the selected text or the current line. -- @param buffer The global buffer. function selection_duplicate(buffer) end --- --- Reset the set of characters for whitespace and word characters to the --- defaults. --- This sets whitespace to space, tab and other characters with codes less than --- 0x20, with word characters set to alphanumeric and '_'. +-- Resets the set of whitespace and word characters to their default characters. -- @param buffer The global buffer. +-- @see whitespace_chars +-- @see word_chars function set_chars_default(buffer) end --- --- Set caret to a position, while removing any existing selection. --- The caret is not scrolled into view. +-- Sets the current position to position *pos* without scrolling the view, +-- removing any selections. -- @param buffer The buffer -- @param pos The position to move to. function set_empty_selection(buffer, pos) end --- --- Set the colors used as a chequerboard pattern in the fold margin. +-- Overrides the default color of the fold margin with *color*, in "0xBBGGRR" +-- format, if *use_setting* is `true`. -- @param buffer The global buffer. -- @param use_setting Enable color change. -- @param color A color in "0xBBGGRR" format. function set_fold_margin_colour(buffer, use_setting, color) end --- --- Set the colors used as a checkerboard pattern in the fold margin. +-- Overrides the default highlight color of the fold margin with *color*, in +-- "0xBBGGRR" format, if *use_setting* is `true`. -- @param buffer The global buffer. -- @param use_setting Enable color change. -- @param color A color in "0xBBGGRR" format. function set_fold_margin_hi_colour(buffer, use_setting, color) end --- --- Set a back color for active hotspots. +-- Overrides the default background color of active hotspots with *color*, in +-- "0xBBGGRR" format, if *use_setting* is `true`. -- @param buffer The global buffer. -- @param use_setting Enable the color change. -- @param color A color in "0xBBGGRR" format. function set_hotspot_active_back(buffer, use_setting, color) end --- --- Set a fore color for active hotspots. +-- Overrides the default foreground color of active hotspots with *color*, in +-- "0xBBGGRR" format, if *use_setting* is `true`. -- @param buffer The global buffer. -- @param use_setting Enable the color change. -- @param color A color in "0xBBGGRR" format. function set_hotspot_active_fore(buffer, use_setting, color) end --- --- Set the length of the utf8 argument for calling `buffer:encoded_from_utf8()`. +-- Sets the length of *string* in `buffer:encoded_from_utf8()` to *bytes*. -- @param buffer The global buffer. -- @param bytes Bytes or `-1` for measuring to first null byte. function set_length_for_encode(buffer, bytes) end --- --- Remember the current position in the undo history as the position at which --- the document was saved. +-- Tells Scintilla the buffer has no unsaved changes. -- @param buffer The global buffer. function set_save_point(buffer) end --- --- Select a range of text. --- The caret is scrolled into view after this operation. +-- Selects the range of text from *start_pos* to *end_pos* in the buffer, +-- scrolling the selected text into view. -- @param buffer The global buffer. -- @param start_pos Start position. If negative, it means the end of the -- document. @@ -2174,45 +2283,48 @@ function set_save_point(buffer) end function set_sel(buffer, start_pos, end_pos) end --- --- Set the background color of the main and additional selections and whether to --- use this setting. +-- Overrides the default background color of all selected text with *color*, in +-- "0xBBGGRR" format, if *use_setting* is `true`. -- @param buffer The global buffer. -- @param use_setting Enable color change. -- @param color A color in "0xBBGGRR" format. function set_sel_back(buffer, use_setting, color) end --- --- Set the foreground color of the main and additional selections and whether --- to use this setting. +-- Overrides the default foreground color of all selected text with *color*, in +-- "0xBBGGRR" format, if *use_setting* is `true`. -- @param buffer The global buffer. -- @param use_setting Enable color change. -- @param color A color in "0xBBGGRR" format. function set_sel_fore(buffer, use_setting, color) end --- --- Set a simple selection from anchor to caret. +-- Selects the range of text from *anchor* to *caret* in the buffer, removing +-- all other selections. -- @param buffer The global buffer. -- @param caret The caret. -- @param anchor The anchor. function set_selection(buffer, caret, anchor) end --- --- Change style from current styling position for length characters to a style --- and move the current styling position to after this newly styled segment. +-- Sets the style of the next *length* characters, from the current styling +-- position, to style number *style*, in the range from `0` to `255`, and +-- increments the styling position by *length*. -- @param buffer The global buffer. -- @param length The length to style. -- @param style The style number to set. function set_styling(buffer, length, style) end --- --- Replace the contents of the document with the argument text. +-- Replaces all of the text in the buffer with string *text*. -- @param buffer The global buffer. -- @param text The text. function set_text(buffer, text) end --- --- Set the way the display area is determined when a particular line is to be --- moved to by `buffer:goto_line()`, etc. +-- Sets the visible policy bit-mask *visible_policy* for displaying lines using +-- `buffer:ensure_visible_enforce_policy()` to *visible_slop* number of lines +-- from the bottom of the view. -- It is similar in operation to `buffer:set_y_caret_policy()`. -- @param buffer The global buffer. -- @param visible_policy A combination of `_SCINTILLA.constants.VISIBLE_SLOP` @@ -2221,15 +2333,16 @@ function set_text(buffer, text) end function set_visible_policy(buffer, visible_policy, visible_slop) end --- --- Set the background color of all whitespace and whether to use this setting. +-- Overrides the background color of whitespace with *color*, in "0xBBGGRR" +-- format, if *use_setting* is `true`. -- @param buffer The global buffer. -- @param use_setting Enable color change. -- @param color A color in "0xBBGGRR" format. function set_whitespace_back(buffer, use_setting, color) end --- --- Set the foreground color of all whitespace and whether to use this setting. --- @param buffer The global buffer. +-- Overrides the foreground color of whitespace with *color*, in "0xBBGGRR" +-- format, if *use_setting* is `true`. -- @param use_setting Enable color change. -- @param color A color in "0xBBGGRR" format. function set_whitespace_fore(buffer, use_setting, color) end @@ -2256,8 +2369,8 @@ function set_x_caret_policy(buffer, caret_policy, caret_slop) end function set_y_caret_policy(buffer, caret_policy, caret_slop) end --- --- Make a range of lines visible. --- This has no effect on fold levels or fold flags. `start_line` can not be +-- Shows the range of lines from line number *start_line* to *end_line*. +-- This has no effect on fold levels or fold flags and the first line cannot be -- hidden. -- @param buffer The global buffer. -- @param start_line The start line. @@ -2265,88 +2378,81 @@ function set_y_caret_policy(buffer, caret_policy, caret_slop) end function show_lines(buffer, start_line, end_line) end --- --- Start notifying the container of all key presses and commands. --- @param buffer The global buffer. -function start_record(buffer) end - ---- --- Set the current styling position to pos and the styling mask to mask. --- The styling mask can be used to protect some bits in each styling byte from --- modification. +-- Begin styling at position *position* with the 8-bit styling bit-mask *mask* +-- that determines which style bits can be set with `buffer:set_styling()`. -- @param buffer The global buffer. -- @param position The styling position. -- @param mask The bit mask of the style bytes that can be set. +-- @usage buffer:start_styling(0, 0xFF) function start_styling(buffer, position, mask) end --- --- Stop notifying the container of all key presses and commands. --- @param buffer The global buffer. -function stop_record(buffer) end - ---- --- Move caret to bottom of page, or one page down if already at bottom of page. +-- Moves the caret to the bottom of the page, or if already there, one page +-- down. -- @param buffer The global buffer. function stuttered_page_down(buffer) end --- --- Move caret to bottom of page, or one page down if already at bottom of page, --- extending selection to new caret position. +-- Like `buffer:stuttered_page_down()`, but extends the selection to the new +-- position. -- @param buffer The global buffer. function stuttered_page_down_extend(buffer) end --- --- Move caret to top of page, or one page up if already at top of page. +-- Moves the caret to the top of the page, or if already there, one page up. -- @param buffer The global buffer. function stuttered_page_up(buffer) end --- --- Move caret to top of page, or one page up if already at top of page, --- extending selection to new caret position. +-- Like `buffer:stuttered_page_up()`, but extends the selection to the new +-- position. -- @param buffer The global buffer. function stuttered_page_up_extend(buffer) end --- --- Clear all the styles and make equivalent to the global default style. +-- Sets all styles to have the same properties as +-- `_SCINTILLA.constants.STYLE_DEFAULT`. -- @param buffer The global buffer. function style_clear_all(buffer) end --- --- Reset the default style to its state at startup. +-- Resets `_SCINTILLA.constants.STYLE_DEFAULT` to its initial state. -- @param buffer The global buffer. function style_reset_default(buffer) end --- --- Swap that caret and anchor of the main selection. +-- Swaps the anchor and caret positions of the main selection. -- @param buffer The global buffer. function swap_main_anchor_caret(buffer) end --- --- If selection is empty or all on one line replace the selection with a tab --- character, or if more than one line selected, indent the lines. +-- Indents the selected lines, replaces the selected text on a line with a Tab +-- character ("\t"), or inserts a Tab character at the current position. -- @param buffer The global buffer. function tab(buffer) end --- --- Returns the target converted to UTF8. +-- Returns the result of the text in the target range converted from the +-- buffer's code page into UTF-8. -- @param buffer The global buffer. function target_as_utf8(buffer) end --- --- Make the target range start and end be the same as the selection range start --- and end. +-- Sets the beginning and end positions of the target range to be the beginning +-- and end positions of the main selection. -- @param buffer The global buffer. function target_from_selection(buffer) end --- --- Retrieve the height of a particular line of text in pixels. +-- Returns the height in pixels of line number *line*. -- @param buffer The global buffer. -- @param line The line number. -- @return number function text_height(buffer, line) end --- --- Measure the pixel width of some text in a particular style. --- Does not handle tab or control characters. +-- Returns the width in pixels of string *text* styled with style number +-- *style_num*, in the range of `0` to `255`. -- @param buffer The global buffer. -- @param style_num The style number between `0` and `255`. -- @param text The text. @@ -2354,36 +2460,37 @@ function text_height(buffer, line) end function text_width(buffer, style_num, text) end --- --- Switch between sticky and non-sticky: meant to be bound to a key. --- See `buffer.caret_sticky`. +-- Cycles between caret sticky option settings +-- `_SCINTILLA.constants.SC_CARETSTICKY_ON`, +-- `_SCINTILLA.constants.SC_CARETSTICKY_WHITESPACE`, and +-- `_SCINTILLA.constants.SC_CARETSTICKY_OFF`. -- @param buffer The global buffer. +-- @see caret_sticky function toggle_caret_sticky(buffer) end --- --- Switch a header line between expanded and contracted. +-- Toggles the fold state of a fold header line between expanded, where all +-- of its child lines are displayed, and contracted, where all of its child +-- lines are hidden. -- @param buffer The global buffer. -- @param line The line number. function toggle_fold(buffer, line) end --- --- Undo one action in the undo history. +-- Undoes the most recent action. -- @param buffer The global buffer. function undo(buffer) end --- --- Transform the selection to upper case. +-- Converts the selected text to upper case letters. -- @param buffer The global buffer. function upper_case(buffer) end --- --- Sets whether a pop up menu is displayed automatically when the user presses --- the wrong mouse button. --- @param buffer The global buffer. --- @param allow_popup Allow popup menu. -function use_pop_up(buffer, allow_popup) end - ---- --- Display a list of strings and send notification when user chooses one. +-- Displays a list from *item_list*, a sorted string whose items are delimited +-- by `buffer.auto_c_separator` characters, using the list identifier number +-- *list_type* which is greater than zero and sent in a `USER_LIST_SELECTION` +-- event after selecting an item. -- @param buffer The global buffer. -- @param list_type A list identifier number greater than zero. -- @param item_list List of words separated by separator characters (initially @@ -2392,63 +2499,65 @@ function use_pop_up(buffer, allow_popup) end function user_list_show(buffer, list_type, item_list) end --- --- Move caret to before first visible character on line. --- If already there move to first character on line. +-- Moves the caret to the first visible character on the current line, or if +-- already there, to the beginning of the current line. -- @param buffer The global buffer. function vc_home(buffer) end --- --- Move caret to before first visible character on display line. --- If already there move to first character on display line. +-- Moves the caret to the first visible character on the current wrapped line, +-- or if already there, to the beginning of the current wrapped line. -- @param buffer The global buffer. function vc_home_display(buffer) end --- --- Like `buffer:vc_home_display()` but extending selection to new caret +-- Like `buffer:vc_home_display()`, but extends the selection to the new -- position. -- @param buffer The global buffer. function vc_home_display_extend(buffer) end --- --- Like `buffer:vc_home()` but extending selection to new caret position. +-- Like `buffer:vc_home()`, but extends the selection to the new position. -- @param buffer The global buffer. function vc_home_extend(buffer) end --- --- Move caret to before first visible character on line. --- If already there move to first character on line. In either case, extend --- rectangular selection to new caret position. +-- Like `buffer:vc_home()`, but extends the rectangular selection to the new +-- position. -- @param buffer The global buffer. function vc_home_rect_extend(buffer) end --- --- Move caret to before first visible character on display line when word-wrap --- is enabled. --- If already there, go to first character on display line. +-- Moves the caret to the first visible character on the wrapped line, or if +-- already there, to the beginning of the actual line. -- @param buffer The global buffer. function vc_home_wrap(buffer) end --- --- Like `buffer:vc_home_wrap()` but extending selection to new caret position. +-- Like `buffer:vc_home_wrap()`, but extends the selection to the new position. -- @param buffer The global buffer. function vc_home_wrap_extend(buffer) end --- --- Center current line in window. +-- Centers current line in the view. -- @param buffer The global buffer. function vertical_centre_caret(buffer) end --- --- Find the display line of a document line taking hidden lines into account. --- If there is folding and line is outside the range of lines in the document, --- the return value is `-1`. +-- 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 The global buffer. -- @param line The line number. -- @return number function visible_from_doc_line(buffer, line) end --- --- Get position of end of word. +-- Returns the position of the end of the word at position *pos*. +-- `buffer.word_chars` contains word characters. If *pos* has a non-word +-- character to its right and *only_word_chars* is `false`, returns the position +-- of the first word character. -- @param buffer The global buffer. -- @param pos The position. -- @param only_word_chars If `true`, stops searching at the first non-word @@ -2459,71 +2568,87 @@ function visible_from_doc_line(buffer, line) end function word_end_position(buffer, pos, only_word_chars) end --- --- Move caret left one word. +-- Moves the caret left one word. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_left(buffer) end --- --- Move caret left one word, position cursor at end of word. +-- Moves the caret left one word, positioning the current position at the end of +-- the previous word. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_left_end(buffer) end --- --- Move caret left one word, position cursor at end of word, extending selection --- to new caret position. +-- Like `buffer:word_left_end()`, but extends the selection to the new position. -- @param buffer The global buffer. function word_left_end_extend(buffer) end --- --- Move caret left one word extending selection to new caret position. +-- Moves the caret left one word, extending the selection to the new position. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_left_extend(buffer) end --- --- Move to the previous change in capitalisation or underscores. +-- Moves to the previous underscore or change in capitalization within the +-- current word. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_part_left(buffer) end --- --- Move to the previous change in capitalisation or underscores extending --- selection to new caret position. +-- Moves to the previous underscore or change in capitalization within the +-- current word, extending the selection to the new position. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_part_left_extend(buffer) end --- --- Move to the next change in capitalisation or underscores. +-- Moves to the next underscore or change in capitalization within the current +-- word. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_part_right(buffer) end --- --- Move to the next change in capitalisation or underscores extending selection --- to new caret position. +-- Moves to the next underscore or change in capitalization within the current +-- word, extending the selection to the new position. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_part_right_extend(buffer) end --- --- Move caret right one word. +-- Moves the caret right one word. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_right(buffer) end --- --- Move caret right one word, position cursor at end of word. +-- Moves the caret right one word, positioning the cursor at the end of the +-- current word. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_right_end(buffer) end --- --- Move caret right one word, position cursor at end of word, extending --- selection to new caret position. +-- Like `buffer:word_right_end()`, but extends the selection to the new +-- position. -- @param buffer The global buffer. function word_right_end_extend(buffer) end --- --- Move caret right one word extending selection to new caret position. +-- Moves the caret right one word, extending the selection to the new position. +-- `buffer.word_chars` contains word characters. -- @param buffer The global buffer. function word_right_extend(buffer) end --- --- Get position of start of word. +-- Returns the position of the beginning of the word at position *pos*. +-- `buffer.word_chars` contains word characters. If *pos* has a non-word +-- character to its left and *only_word_chars* is `false`, returns the position +-- of the last word character. -- @param buffer The global buffer. -- @param pos The position. -- @param only_word_chars If `true`, stops searching at the first non-word @@ -2534,58 +2659,56 @@ function word_right_extend(buffer) end function word_start_position(buffer, pos, only_word_chars) end --- --- Returns the number of display lines needed to wrap a document line. +-- Returns the number of wrapped lines needed to display line number *line*. -- @param buffer The global buffer. -- @param line The line number. -- @return number function wrap_count(buffer, line) end --- --- Magnify the displayed text by increasing the sizes by 1 point if the current --- zoom factor is less than 20 points. +-- Increases the size of all fonts by one point, up to 20. -- @param buffer The global buffer. function zoom_in(buffer) end --- --- Make the displayed text smaller by decreasing the sizes by 1 point if the --- current zoom factor is greater than -10 points. +-- Decreases the size of all fonts by one point, down to -10. -- @param buffer The global buffer. function zoom_out(buffer) end -- External functions. --- --- Checks whether the given buffer is the global one. --- If not, throws an error indicating so. It is necessary to call this at the --- top of all buffer functions to avoid unexpected behavior since most buffer --- functions operate on `_G.buffer`, which is not necessarily the given one. +-- Ensures the buffer is the global one, `_G.buffer`, throwing an error +-- otherwise. +-- This function must be called in all buffer functions because only the global +-- buffer can be worked with. -- @param buffer The buffer to check. -- @see _G._G.buffer function check_global(buffer) end --- --- Deletes the current buffer. --- WARNING: this function should NOT be called via scripts. Use `buffer:close()` --- instead, which prompts for confirmation if necessary. Emits a +-- Deletes the buffer. +-- **Do not call this function.** Call `buffer:close()` instead. Emits a -- `BUFFER_DELETED` event. -- @param buffer The global buffer. -- @see events.BUFFER_DELETED function delete(buffer) end --- --- Gets a range of text from the current buffer. +-- Returns the range of text from *start_pos* to *end_pos* in the buffer. -- @param buffer The global buffer. -- @param start_pos The beginning position of the range of text to get. -- @param end_pos The end position of the range of text to get. function text_range(buffer, start_pos, end_pos) end --- --- Reloads the file in a given buffer. +-- Reloads the file in the buffer. -- @param buffer The global buffer. function reload(buffer) end --- --- Sets the encoding for the buffer, converting its contents in the process. +-- Sets the encoding for the buffer to *encoding*, converting its contents from +-- the old encoding to the new one. -- @param buffer The global buffer. -- @param encoding The encoding to set. Valid encodings are ones that GNU iconv -- accepts. @@ -2593,14 +2716,14 @@ function reload(buffer) end function set_encoding(buffer, encoding) end --- --- Saves the current buffer to a file. +-- Saves the buffer to the file. -- Emits `FILE_BEFORE_SAVE` and `FILE_AFTER_SAVE` events. -- @param buffer The global buffer. -- @see _G.events function save(buffer) end --- --- Saves the current buffer to a file different than its filename property. +-- Saves the buffer to the *utf8_filename* or user-specified filename. -- Emits a `FILE_SAVED_AS` event. -- @param buffer The global buffer. -- @param utf8_filename The new filepath to save the buffer to. Must be UTF-8 @@ -2609,46 +2732,50 @@ function save(buffer) end function save_as(buffer, utf8_filename) end --- --- Closes the current buffer. +-- Closes the buffer, prompting the user to continue if there are unsaved +-- changes, and returns `true` if the buffer was closed. -- @param buffer The global buffer. --- If the buffer is dirty, the user is prompted to continue. The buffer is not --- saved automatically. It must be done manually. -- @return `true` if the buffer was closed; `nil` otherwise. function close(buffer) end --- --- Replacement for `buffer.lexer_language =`. --- Sets a `buffer._lexer` field so it can be restored without querying the --- mime-types tables. Also if the user manually sets the lexer, it should be --- restored. --- Loads the language-specific module if it exists. --- This function is added by `_M.textadept.mime_types`. +-- Sets the name of the lexer used by the buffer to *lang*, loading its +-- language-specific module if the module exists. -- @param buffer The global buffer. -- @param lang The string language to set. -- @usage buffer.set_lexer(buffer, 'language_name') function set_lexer(buffer, lang) end --- --- Replacement for `buffer.lexer_language`. +-- Returns the name of the lexer used by the buffer, or the name of the lexer at +-- the current position in a multiple-language lexer if *current* is `true`. -- @param buffer The global buffer. -- @param current Whether to get the lexer at the current caret position in -- multi-language lexers. The default is `false` and returns the parent lexer. function get_lexer(buffer, current) end --- --- Returns the name of the style associated with a style number. +-- Returns the name of style number *style_num*, in the range of `0` to `255`. -- @param buffer The global buffer. -- @param style_num A style number from `0` to `255`. -- @see buffer.style_at function get_style_name(buffer, style_num) end -- Unused Fields. +-- * status +-- * mouse_down_captures +-- * focus -- * use_palette +-- * font_quality +-- * keys_unicode -- * doc_pointer -- * mod_event_mask -- * paste_convert_endings +-- * direct_function +-- * direct_pointer -- * character_pointer -- * get_range_pointer +-- * field gap_position -- * identifier -- * key_words -- * technology @@ -2662,6 +2789,9 @@ function get_style_name(buffer, style_num) end -- * find_text -- * format_range -- * null +-- * use_pop_up +-- * start_record +-- * stop_record -- * create_document -- * add_ref_document -- * release_document @@ -2679,3 +2809,4 @@ function get_style_name(buffer, style_num) end -- * describe_property -- * describe_key_word_sets -- * create_loader +-- * private_lexer_call |