Module beamui.core.editable

Editable text content and related data structures.

Import line

import beamui.core.editable;

Functions

NameDescription
concatDStrings(lines, delimiter) Concat strings from array using delimiter
replaceEOLsWithSpaces(source) Replace end of lines with spaces
splitDString(source, delimiter) Split dstring by delimiters
tokenCategory(t) Extracts token category, clearing subcategory

Interfaces

NameDescription
SyntaxSupport Interface for custom syntax highlight, comments toggling, smart indents, and other language dependent features for source code editors

Classes

NameDescription
EditableContent Editable multiline text
EditOperation Edit operation details for EditableContent
LineIcon Text editor line icon
SingleLineEditOperation Edit operation details for single-line editors
TextContent Text content by lines

Structs

NameDescription
LineIcons Text editor line icon list
LineRange Line content range
TabSize Represents size of tab character in spaces, in range from 1 to 16
TextLineMeasure Measure line text (tabs, spaces, and nonspace positions)
TextPosition Text content position
TextRange Text content range

Enums

NameDescription
EditAction Action performed with editable contents
EditStateMark Values for editable line state
LineIconType Types of text editor line icon marks (bookmark / breakpoint / error / ...)
TokenCategory Token category for syntax highlight.

Global variables

NameTypeDescription
EOL immutable(dchar)
SYSTEM_DEFAULT_EOL immutable(dchar[])
TOKEN_CATEGORY_MASK const(ubyte)
TOKEN_SUBCATEGORY_MASK const(ubyte)
TOKEN_UNKNOWN const(ubyte)

Aliases

NameTypeDescription
ContentChangeHandler void delegate(EditOperation, ref TextRange, ref TextRange, Object) Editable Content change listener
MarksChangeHandler void delegate(LineIcon[], LineIcon[])
TokenProp ubyte TokenCategory holder
TokenPropString ubyte[] TokenCategory string