Back to API Reference
Class

ListModifier

Renders list markers (bullets or numbers) for text items with automatic indentation.

Remarks

Parameter: optional level:number for numbered lists. Without parameter, renders a bullet. Features: - Supports nested lists with configurable indentation per level - Bullet markers are customizable per nesting level - Ordered lists support decimal, alphabetic, and Roman numeral styles - Automatically handles RTL text direction
public ListMarkerPlacement MarkerPlacement{ get; set }

How the marker is placed relative to the content. Inside (default) renders the marker inline at the start of the line; each nested item is indented by its own ancestors' marker widths, so a nested marker lines up with its parent's content regardless of unrelated siblings — matches Google Docs, MS Word, and Discord. Outside reserves a fixed content column derived from the widest marker in the list, so all items have content aligned at the same column regardless of marker width.

public IReadOnlyList<string> BulletMarkers{ get }

Bullet marker glyphs indexed by nesting level (level 0 first). When a list item nests deeper than the configured length, the last entry is reused.

public IReadOnlyList<OrderedMarkerStyle> OrderedStyles{ get }

Numbering styles indexed by nesting level (level 0 first). When a list item nests deeper than the configured length, the last entry is reused.

public void SetBulletMarkers(IEnumerable<string> markers)

Replaces the bullet-marker glyphs for every nesting level. Null or empty input is rejected (a list must have at least one entry, used for every level).

public void SetOrderedStyles(IEnumerable<OrderedMarkerStyle> styles)

Replaces the per-level numbering styles for ordered lists.

protected override void OnEnable()
protected override void OnDisable()
protected override void OnDestroy()
protected override void OnApply()

See Also