Options and Configuration
TTMSFNCMemo.Options is a TTMSFNCMemoOptions instance that controls every UI and editing behaviour. Most options map directly to Monaco Editor configuration keys and can be changed at any time.
Display options
Property
Default
Description
LineNumbers
True
Show or hide line numbers in the gutter.
GlyphMargin
False
Show the glyph margin column (required for breakpoints and bookmarks).
RenderIndentGuides
True
Show vertical indent guide lines.
RenderLineHighlight
hlNone
Highlight the current line: hlNone, hlLine, hlGutter, hlAll.
RenderLineHighlightOnlyWhenFocus
False
Restrict line highlight to when the editor has focus.
RenderWhiteSpace
rwsNone
Render whitespace characters: rwsNone, rwsBoundary, rwsSelection, rwsAll.
SelectionHighlight
True
Highlight all other occurrences of the selected text.
RoundedSelection
True
Render selections with rounded corners.
OverviewRulerLanes
3
Number of vertical lanes in the overview ruler (right edge).
OverviewRulerBorder
True
Draw a border around the overview ruler.
Editing behaviour
Property
Default
Description
ContextMenu
True
Enable or disable the right-click context menu.
DragAndDrop
True
Enable drag-and-drop of text and files.
EmptySelectionClipboard
True
Ctrl+C with no selection copies the entire current line.
Folding
True
Enable code folding.
FoldingHighlights
True
Highlight folding region start/end lines.
FormatOnPaste
False
Auto-format pasted code.
FormatOnType
False
Auto-format as you type.
MouseWheelZoom
False
Allow Ctrl+MouseWheel to zoom the font.
Links
True
Render clickable link underlines.
AutoOpenLink
True
Ctrl+click opens a link in the default browser.
BlockSelection
False
Allow Alt+drag for block/column selection.
SelectOnLineNumbers
False
Clicking a line number selects the whole line.
TabSize
4
Number of spaces per tab stop.
WordWrap
False
Wrap long lines.
WordWrapColumn
80
Wrap at this column when WordWrap is True.
WantTab (on TTMSFNCMemo)
False
When True, Tab inserts a tab character instead of moving focus.
Code features
Property
Default
Description
UseCustomCodeCompletion
False
Enable custom code-completion items.
BracketPairColorization
False
Colour-code matching bracket pairs.
CodeLens
True
Show CodeLens annotations (reference counts, etc.).
Minimap
The minimap is a bird's-eye view rendered on the right edge of the editor.
// --- Display ---
TMSFNCMemo1.Options.LineNumbers := True;
TMSFNCMemo1.Options.GlyphMargin := True; // required for breakpoints/bookmarks
TMSFNCMemo1.Options.RenderIndentGuides := True;
TMSFNCMemo1.Options.RenderLineHighlight := hlAll; // hlNone/hlLine/hlGutter/hlAll
TMSFNCMemo1.Options.RenderWhiteSpace := rwsAll; // rwsNone/rwsBoundary/rwsSelection/rwsAll
TMSFNCMemo1.Options.SelectionHighlight := True;
TMSFNCMemo1.Options.RoundedSelection := True;
TMSFNCMemo1.Options.OverviewRulerLanes := 3;
TMSFNCMemo1.Options.OverviewRulerBorder := True;
// --- Editing behaviour ---
TMSFNCMemo1.Options.ContextMenu := True;
TMSFNCMemo1.Options.DragAndDrop := True;
TMSFNCMemo1.Options.EmptySelectionClipboard := True; // Ctrl+C with no selection copies the line
TMSFNCMemo1.Options.Folding := True;
TMSFNCMemo1.Options.FoldingHighlights := True;
TMSFNCMemo1.Options.FormatOnPaste := True;
TMSFNCMemo1.Options.FormatOnType := True;
TMSFNCMemo1.Options.MouseWheelZoom := True;
TMSFNCMemo1.Options.Links := True;
TMSFNCMemo1.Options.AutoOpenLink := True;
TMSFNCMemo1.Options.BlockSelection := True;
TMSFNCMemo1.Options.TabSize := 2;
TMSFNCMemo1.Options.WordWrap := True;
TMSFNCMemo1.WantTab := True; // Tab key stays in the editor
// --- Code features ---
TMSFNCMemo1.Options.CodeLens := False;
TMSFNCMemo1.Options.UseCustomCodeCompletion := True;
TMSFNCMemo1.Options.BracketPairColorization := True;
// --- Minimap ---
TMSFNCMemo1.Options.MiniMap.Enabled := True;
TMSFNCMemo1.Options.MiniMap.Autohide := False;
TMSFNCMemo1.Options.MiniMap.MaxColumn := 120;
TMSFNCMemo1.Options.MiniMap.RenderCharacters := True;
TMSFNCMemo1.Options.MiniMap.Scale := 1;
TMSFNCMemo1.Options.MiniMap.ShowSlider := 'mouseover'; // 'always' | 'mouseover'
TMSFNCMemo1.Options.MiniMap.Side := 'right'; // 'right' | 'left'
// --- Scrollbar ---
TMSFNCMemo1.Options.Scrollbar.HandleMouseWheel := True;
TMSFNCMemo1.Options.Scrollbar.Horizontal := saAuto; // saAuto/saHidden/saVisible
TMSFNCMemo1.Options.Scrollbar.HorizontalScrollbarSize := 10;
TMSFNCMemo1.Options.Scrollbar.Vertical := saAuto;
TMSFNCMemo1.Options.Scrollbar.VerticalScrollbarSize := 10;
TMSFNCMemo1.Options.Scrollbar.ScrollByPage := False;
// --- Theme and language (on TTMSFNCMemo directly) ---
TMSFNCMemo1.Language := mlPascal;
TMSFNCMemo1.Theme := mtVisualStudio; // mtVisualStudio/mtVisualStudioDark/mtHighContrastDark/mtCustom
TMSFNCMemo1.LibraryLocation := True; // True = CDN; False = local files
TMSFNCMemo1.ReadOnly := False;
Property
Default
Description
MiniMap.Enabled
True
Show or hide the minimap.
MiniMap.Autohide
False
Hide the minimap when the mouse is not hovering.
MiniMap.MaxColumn
120
Maximum width of the minimap in characters.
MiniMap.RenderCharacters
True
Render actual characters; False renders colour blocks.
MiniMap.Scale
1
Relative font size in the minimap.
MiniMap.ShowSlider
'mouseover'
When to show the minimap slider: 'always' or 'mouseover'.
MiniMap.Side
'right'
Which side to place the minimap: 'right' or 'left'.
MiniMap.Size
'actual'
Minimap render mode: 'actual', 'fill', or 'fit'.
Property
Default
Description
Scrollbar.Horizontal
saAuto
Horizontal scrollbar visibility: saAuto, saHidden, saVisible.
Scrollbar.Vertical
saAuto
Vertical scrollbar visibility.
Scrollbar.HorizontalScrollbarSize
10
Pixel height of the horizontal scrollbar.
Scrollbar.VerticalScrollbarSize
10
Pixel width of the vertical scrollbar.
Scrollbar.HandleMouseWheel
True
Scroll on mouse-wheel events.
Scrollbar.ScrollByPage
False
Gutter-area clicks scroll by page instead of jumping to position.
Language and theme
Set directly on TTMSFNCMemo, not in Options:
TMSFNCMemo1.Language := mlPascal; // see TTMSFNCMemoLanguage for all values
TMSFNCMemo1.Theme := mtVisualStudioDark; // mtVisualStudio/mtVisualStudioDark/mtHighContrastDark/mtCustom
Over 50 languages are built in, including Pascal, TypeScript, Python, C#, JSON, Markdown, and SQL.
// Override font
TMSFNCMemo1.Font.Name := 'Fira Code';
TMSFNCMemo1.Font.Size := 13;
// Use local Monaco library files instead of CDN
TMSFNCMemo1.LibraryLocation := False;
Quick reference: full options snippet
// --- Display ---
TMSFNCMemo1.Options.LineNumbers := True;
TMSFNCMemo1.Options.GlyphMargin := True; // required for breakpoints/bookmarks
TMSFNCMemo1.Options.RenderIndentGuides := True;
TMSFNCMemo1.Options.RenderLineHighlight := hlAll; // hlNone/hlLine/hlGutter/hlAll
TMSFNCMemo1.Options.RenderWhiteSpace := rwsAll; // rwsNone/rwsBoundary/rwsSelection/rwsAll
TMSFNCMemo1.Options.SelectionHighlight := True;
TMSFNCMemo1.Options.RoundedSelection := True;
TMSFNCMemo1.Options.OverviewRulerLanes := 3;
TMSFNCMemo1.Options.OverviewRulerBorder := True;
// --- Editing behaviour ---
TMSFNCMemo1.Options.ContextMenu := True;
TMSFNCMemo1.Options.DragAndDrop := True;
TMSFNCMemo1.Options.EmptySelectionClipboard := True; // Ctrl+C with no selection copies the line
TMSFNCMemo1.Options.Folding := True;
TMSFNCMemo1.Options.FoldingHighlights := True;
TMSFNCMemo1.Options.FormatOnPaste := True;
TMSFNCMemo1.Options.FormatOnType := True;
TMSFNCMemo1.Options.MouseWheelZoom := True;
TMSFNCMemo1.Options.Links := True;
TMSFNCMemo1.Options.AutoOpenLink := True;
TMSFNCMemo1.Options.BlockSelection := True;
TMSFNCMemo1.Options.TabSize := 2;
TMSFNCMemo1.Options.WordWrap := True;
TMSFNCMemo1.WantTab := True; // Tab key stays in the editor
// --- Code features ---
TMSFNCMemo1.Options.CodeLens := False;
TMSFNCMemo1.Options.UseCustomCodeCompletion := True;
TMSFNCMemo1.Options.BracketPairColorization := True;
// --- Minimap ---
TMSFNCMemo1.Options.MiniMap.Enabled := True;
TMSFNCMemo1.Options.MiniMap.Autohide := False;
TMSFNCMemo1.Options.MiniMap.MaxColumn := 120;
TMSFNCMemo1.Options.MiniMap.RenderCharacters := True;
TMSFNCMemo1.Options.MiniMap.Scale := 1;
TMSFNCMemo1.Options.MiniMap.ShowSlider := 'mouseover'; // 'always' | 'mouseover'
TMSFNCMemo1.Options.MiniMap.Side := 'right'; // 'right' | 'left'
// --- Scrollbar ---
TMSFNCMemo1.Options.Scrollbar.HandleMouseWheel := True;
TMSFNCMemo1.Options.Scrollbar.Horizontal := saAuto; // saAuto/saHidden/saVisible
TMSFNCMemo1.Options.Scrollbar.HorizontalScrollbarSize := 10;
TMSFNCMemo1.Options.Scrollbar.Vertical := saAuto;
TMSFNCMemo1.Options.Scrollbar.VerticalScrollbarSize := 10;
TMSFNCMemo1.Options.Scrollbar.ScrollByPage := False;
// --- Theme and language (on TTMSFNCMemo directly) ---
TMSFNCMemo1.Language := mlPascal;
TMSFNCMemo1.Theme := mtVisualStudio; // mtVisualStudio/mtVisualStudioDark/mtHighContrastDark/mtCustom
TMSFNCMemo1.LibraryLocation := True; // True = CDN; False = local files
TMSFNCMemo1.ReadOnly := False;
See also