The forms of this verb
Box · Boxed
Basic examples (2)
Softanza
? StzStringQ("CAIRO").BoxedXT([ :EachChar = TRUE, :AllCorners = :Round ])Output
╭───┬───┬───┬───┬───╮ │ C │ A │ I │ R │ O │ ╰───┴───┴───┴───┴───╯
run on 2026-10-02 04:23 inside the library at commit 0e72e2e2c; taken from 91_boxedxt_each_char_round.ring(opens in a new tab)
Softanza
# one box
? StzStringQ("SOFTANZA").BoxedXT([])
# eight cells
? StzStringQ("SOFTANZA").BoxedXT([ :EachChar = TRUE ])Output
┌──────────┐ │ SOFTANZA │ └──────────┘ ┌───┬───┬───┬───┬───┬───┬───┬───┐ │ S │ O │ F │ T │ A │ N │ Z │ A │ └───┴───┴───┴───┴───┴───┴───┴───┘
run on 2026-10-02 04:24 inside the library at commit 0e72e2e2c; taken from 754_boxedxt.ring(opens in a new tab)
Scope (2)
Softanza
cExp = "╭─────────────────────┐" + NL +
"│ SOFTANZA IS AWSOME! │" + NL +
"└─────────────────────╯"
# round-rect-round-rect, clockwise
? StzStringQ("SOFTANZA IS AWSOME!").BoxedXT([
:Line = :Solid,
:AllCorners = :Round,
:Corners = [ :Round, :Rectangular, :Round, :Rectangular ],
:TextAdjustedTo = :Center
])Output
╭─────────────────────┐ │ SOFTANZA IS AWSOME! │ └─────────────────────╯
run on 2026-10-02 04:24 inside the library at commit 0e72e2e2c; taken from 749_boxedxt.ring(opens in a new tab)
Softanza
cTop = "╭────────────────────╮"
cBot = "╰────────────────────╯"
# centered
? StzStringQ("PARIS").BoxedXT([ :AllCorners = :Round, :Width = 20, :TextAdjustedTo = :Center ])
# left
? StzStringQ("PARIS").BoxedXT([ :AllCorners = :Round, :Width = 20, :TextAdjustedTo = :Left ])
# right
? StzStringQ("PARIS").BoxedXT([ :AllCorners = :Round, :Width = 20, :TextAdjustedTo = :Right ])
# justified
? StzStringQ("PARIS").BoxedXT([ :AllCorners = :Round, :Width = 20, :TextAdjustedTo = :Justified ])Output
╭────────────────────╮ │ PARIS │ ╰────────────────────╯ ╭────────────────────╮ │ PARIS │ ╰────────────────────╯ ╭────────────────────╮ │ PARIS │ ╰────────────────────╯ ╭────────────────────╮ │ P A R I S │ ╰────────────────────╯
run on 2026-10-02 04:24 inside the library at commit 0e72e2e2c; taken from 753_boxedxt.ring(opens in a new tab)
The extensions of this method
Each extension, and whether it exists for this method; an extension that exists combines with the others (FindSTCS).
Extension
Exists
What it adds · The names
Q
no
does what the method does, then returns the object, so the call can be chained
QQ
no
chains on the next, more specific type of object (the Q ladder)
QQQ
no
chains on the most specific type of object (the Q ladder)
QRT
no
returns the result as an object of the requested type
CS
no
takes a case-sensitivity flag
ST
no
takes the position to start from (StartingAt)
IB
no
takes bounds that are included (IncludingBounds)
XT
yes
the extended form: more parameters than the base method · BoxedXT
XTT
no
yet another extension: a further extended form, after XT
Z
no
includes the position in what it returns
ZZ
no
returns positions as sections, [start, end]
W
no
selects by a condition
WF
no
selects by a condition, with the expressive keywords (@NextItem, @PreviousItem...)
D
no
takes a direction, forward or backward (Directional)
F
no
takes a function (the condition or the update is given as a function); the forms document also uses F for the future form, which defers the action
Many
no
works on a collection of items instead of one (the plural form)
Except
no
takes exceptions, what to leave out (the exceptional form)
U
no
returns the result without duplication
Every example is a test file of the library, run inside the library for this page; only those whose output kept every promise their file wrote are shown.

