Complete reference of Multics Compose 10.0e commands mapped to Lingenic Compose. This document preserves the historical record of the original system and shows how Lingenic Compose continues and completes its vision.
Status:
same — same in both systems
renamed — renamed in Lingenic
obsolete — was already obsolete in Multics code
superseded — superseded in Lingenic (use variable or other approach)
stub — never implemented in Multics, now complete in Lingenic
Tabs and spaces can pad data for visual alignment in source — doesn't affect rendered width
Short
Multics Command
Status
Lingenic Compose
tbd
.table-define
superseded
use .begin-table
tbc
.table-column
superseded
use | delimiter
tbo
.table-on
superseded
use .begin-table
tbf
.table-off
superseded
use .end-table
Table Vertical Alignment
Short
Multics Command
Status
Lingenic Compose
vat
.vertical-align-top
stub
.vertical-align-top (implemented)
vac
.vertical-align-center
stub
.vertical-align-center (implemented)
vab
.vertical-align-bottom
stub
.vertical-align-bottom (implemented)
vaj
.vertical-align-justified
stub
.vertical-align-justified (implemented)
Text Titles and Captions
Titles and captions are single-line commands. Long text wraps when rendered.
.title Chapter One: Introduction
.caption Figure 1: System Architecture
Short
Multics Command
Status
Lingenic Compose
btt
.begin-text-title
superseded
use .title
ett
.end-text-title
superseded
use .title
btc
.begin-text-caption
superseded
use .caption
etc
.end-text-caption
superseded
use .caption
thl
.text-header-line
superseded
use .title
ttl
.text-title-line
superseded
use .title
tcl
.text-caption-line
superseded
use .caption
tlc
.title-line-caption
superseded
use .caption
tlh
.title-line-header
superseded
use .title
stl
.split-title-line
superseded
use .title
Character Translation
Character substitution using pattern syntax.
.translate from {a} to {b} .* global mode — all subsequent text
.translate my_text from {a} to {b} .* translate variable
.translate-off .* turn off global mode
Short
Multics Command
Status
Lingenic Compose
trn
.translate
renamed
.translate [var] from {x} to {y}
trf
.translate-formatted
superseded
use .translate
tre
.translate-exceptions
stub
not needed
new
.translate-off
Underscoring
Short
Multics Command
Status
Lingenic Compose
uso
.underscore-on
same
.underscore-on
usf
.underscore-off
same
.underscore-off
Undenting
Short
Multics Command
Status
Lingenic Compose
un
.undent
same
.undent
unb
.undent-both
same
.undent-both
unh
.undent-hanging
same
.undent-hanging
unl
.undent-left
same
.undent-left
unn
.undent-nobreak
same
.undent-nobreak
unr
.undent-right
same
.undent-right
Vertical Margins
Short
Multics Command
Status
Lingenic Compose
vma
.vertical-margin-all
same
.vertical-margin-all
vmb
.vertical-margin-bottom
same
.vertical-margin-bottom
vmf
.vertical-margin-footer
same
.vertical-margin-footer
vmh
.vertical-margin-header
same
.vertical-margin-header
vmt
.vertical-margin-top
same
.vertical-margin-top
Widow Control
Short
Multics Command
Status
Lingenic Compose
wi
.widow
same
.widow
wif
.widow-footnote
same
.widow-footnote
wit
.widow-text
same
.widow-text
I/O Commands
Short
Multics Command
Status
Lingenic Compose
rd
.read
same
.read
ty
.type
same
.type
wa
.wait
same
.wait
wrf
.write-formatted
stub
.write-formatted (implemented)
wrt
.write-text
same
.write-text
wro
.write-order
stub
obsolete
new
.begin-read / .end-read (pattern input)
new
.begin-type / .end-type (output block)
Device and Miscellaneous
Short
Multics Command
Status
Lingenic Compose
dc
.device-control
renamed
.device-control device("") — raw control codes
new
.invoke-tool(tool, arguments) — external tool
new
.request(api, parameters) — API/service call
du
.defer-until
same
.defer-until
dm
.dump
stub
not needed
eq
.equation-count
same
.equation-count
er
.error
same
.error
ex
.execute
same
.execute
gm
.galley-mode
same
.galley-mode
te
.test
same
.test
Index Entries
Short
Multics Command
Status
Lingenic Compose
hi
.hit
same
.hit
hif
.hit-file
stub
.hit-file (implemented)
Rules
Short
Multics Command
Status
Lingenic Compose
hr
.horizontal-rule
same
.horizontal-rule
vr
.vertical-rule
same
.vertical-rule
Text Wrap (Runaround)
Short
Multics Command
Status
Lingenic Compose
ral
.runaround-left
stub
position=left wrap attribute
rar
.runaround-right
stub
position=right wrap attribute
rac
.runaround-centered
stub
Not implemented
Lingenic Extensions
New commands not present in Multics Compose:
Lists
Command
Description
.begin-list [numbered|bulleted|definition]
Begin list
.end-list
End list
.list-item
List item
.list-term term
Definition term
.list-definition
Definition text
.list-style style
Set marker style
Floats
Command
Description
.begin-figure [label] [position]
Begin figure
.end-figure
End figure
.begin-table-float [label] [position]
Begin floating table
.end-table-float
End floating table
.caption text
Figure/table caption
.caption-position above|below
Caption placement
.clear left|right|both
Clear floats
Cross-References
Command
Description
.label name
Create reference target
.refer(name)
Reference by number
.refer(name, page)
Reference with page
.counter name [start]
Define counter
.counter-style name style
Set counter format
Notes
Command
Description
.begin-endnote
Begin endnote
.end-endnote
End endnote
.endnotes-chapter
Collect per chapter
.endnotes-document
Collect at document end
.insert-endnotes
Output endnotes
.begin-sidenote
Begin sidenote
.end-sidenote
End sidenote
.sidenote-position left|right|outside|inside
Margin placement
Bibliography
Citations use @key inline. Style determines format (author-date, footnote, endnote, etc.).
.set-citation-style author-date
According to @smith2020, the results were significant.
See also @jones2019:42-50 for discussion.
.bibliography
The source is monospace-aligned and readable — exactly as it should be. For antique calligraphic rendering, embed LaTeX.
Typography
Command
Description
.tracking [value]
Letter spacing
.kerning on|off
Pair kerning
.drop-cap [lines]
Drop capital
.hanging-punctuation on|off
Hanging punctuation
.optical-alignment on|off
Optical margins
Parallel Text
For bilingual editions, synoptic texts, code with commentary.
Command
Description
.begin-parallel [columns]
Begin parallel text (default: 2 columns)
.end-parallel
End parallel text
.next-parallel-column
Switch to next column (syncs automatically)
.parallel-column [n]
Jump to specific column
.parallel-gutter [value]
Space between columns
.begin-parallel 2
Nel mezzo del cammin di nostra vita
mi ritrovai per una selva oscura,
ché la diritta via era smarrita.
.next-parallel-column
Midway upon the journey of our life
I found myself within a forest dark,
For the straightforward pathway had been lost.
.end-parallel
Ruby Text
Command
Description
.ruby base "annotation"
Ruby annotation
.annotate(base, "reading")
Inline ruby annotation
.ruby-position above|below|right
Annotation position
.ruby-size [ratio]
Annotation size
Accessibility
Command
Description
.insert-graphic "path" alt="text"
Image with alt text
.language code
Set language
.abbreviation SHORT "expansion"
Define abbreviation
Built-in Variables
Any identifier containing an underscore is a variable. The underscore can appear anywhere: prefix (_count), infix (page_number), or suffix (total_). Lingenic uses verbose two-word names.
Variable Typography
Typography distinguishes variable types:
Type
Typography
Example
String
Regular text
author_name, document_title
Numeric
Unicode italic
𝑥, 𝑦, 𝑟, 𝑛
Unicode italic for numeric variables avoids collision with domain functions (sin, cos, log, max) which use regular ASCII.
.if page_number > 1
.header-left current_file
.header-right "Page " page_number
.footer-center current_date
This is page page_number of page_count.
Page State
Multics
Lingenic
Description
pageno
page_number
Current page number
next_pageno
page_next
Next page number
pagecount
page_count
Total pages processed
pagelines
page_lines
Lines on current page
page_length
page_length
Page length in lines
linesleft
lines_remaining
Lines remaining on page
frontpage
page_recto
Whether on front page (recto)
Margins & Spacing
Multics
Lingenic
Description
top_margin
margin_top
Top margin
bottom_margin
margin_bottom
Bottom margin
left_indent
indent_left
Left indent
right_indent
indent_right
Right indent
left_undent
undent_left
Left undent (outdent)
right_undent
undent_right
Right undent
header_margin
margin_header
Header margin
footer_margin
margin_footer
Footer margin
head_space
header_space
Space after header
linespace
line_space
Line spacing
measure
line_measure
Current line measure (width)
Text State
Multics
Lingenic
Description
text_depth
text_depth
Current text depth
text_lineno
text_line
Current line in text
text_width
text_width
Current text width
align_mode
mode_align
Current alignment mode
fill_mode
mode_fill
Fill mode (on/off)
keep_mode
mode_keep
Keep mode (on/off)
Typography
Multics
Lingenic
Description
fontname
font_name
Current font name
pointsize
point_size
Current point size
Block Context
Multics
Lingenic
Description
block_index
block_index
Current block index
block_name
block_name
Current block name
Device
Multics
Lingenic
Description
devclass
device_class
Device class
devname
device_name
Device name
File & Input
Multics
Lingenic
Description
calling_file_name
current_file
Name of current file
callers_lineno
caller_line
Line number in caller
line_input
input_line
Current input line
userinput
user_input
User input value
Special
Multics
Lingenic
Description
dot_addltr
output_address
Current output position
equation_mode
mode_equation
Equation mode (on/off)
art_mode
mode_artwork
Artwork mode (on/off)
trans
mode_translate
Translation mode
symbol_delimiter
delimiter_symbol
Symbol delimiter character
title_delimiter
delimiter_title
Title delimiter character
Template Arguments
Multics
Lingenic
Description
Arg
current_argument
Current argument
ArgCount
argument_count
Number of arguments
Arg1, Arg2, ...
argument_1, argument_2, ...
Arguments by position
Lingenic Additions
Variable
Description
current_date
Current date
current_time
Current time
source_file
Current source file path
source_line
Current line in source
chapter_number
Current chapter number
section_number
Current section number
figure_number
Current figure number
table_number
Current table number
equation_number
Current equation number
footnote_number
Current footnote number
endnote_number
Current endnote number
current_language
Current language code
Summary
Multics Compose 10.0e defined approximately 158 long-form commands. Lingenic Compose:
Preserves the majority unchanged
Renames commands for clarity and consistency
Completes stub commands that were never implemented
Supersedes obsolete syntax with unified naming
Extends with ~80 new commands for modern document needs
Short forms are provided for editor abbreviation expansion — documents always store canonical verbose forms.