Skip to content

887 standardise variants - #995

Open
abrudz wants to merge 32 commits into
Dyalog:mainfrom
abrudz:887-standardise-variants
Open

887 standardise variants#995
abrudz wants to merge 32 commits into
Dyalog:mainfrom
abrudz:887-standardise-variants

Conversation

@abrudz

@abrudz abrudz commented Aug 11, 2026

Copy link
Copy Markdown
Member

Fixes #887 and #717

Note that ⎕CSV's page renders strangely due to it containing <h1>s.This will be fixed separately.

abrudz added 24 commits August 10, 2026 18:07
Introduce a Variant Options overview table, give each option its own
Variant Option: <name> subsection with the relevant examples, and write
the option names as code rather than bold. Part of Dyalog#887.
Give ⎕DT a Variant Options overview table, and correct the heading
levels on ⎕FSTIE and ⎕FTIE so Variant Options is a level-2 heading and
the single Mode option is a Variant Option: Mode subsection. Write option
names as code rather than bold. Part of Dyalog#887.
The model page still had them in bold; the standard is code. Part of Dyalog#887.
Place it above Automatic Tie Number Allocation. Part of Dyalog#887.
Break up the Examples section: conversion examples move under Time
Numbers and Timestamps, formatting examples under Formatting Patterns,
parsing examples under Pattern-matching Rules, and the language and
dictionary examples under their variant-option subsections (splitting
the mixed blocks by whether they use the dictionary). Validation gets
its own Validating Datetimes section. Repair the variant-option
cross-references. Part of Dyalog#887.
Use Examples for a single block, and Example: <text> for consecutive
examples that illustrate different things, per the style guide. Part
of Dyalog#887.
Move the timestamp-reliability note to an Information admonition after
the property table, and the UTF-8 encoding note to a Warning admonition
after the wildcard-matching description. Lift the general examples above
Variant Options, merge the split wildcard example fences, and place the
touch example under the Wildcard option. Part of Dyalog#887.
Add a short introduction to the section, and link 'to be validated' in
the argument description to it. Part of Dyalog#887.
Show that ⊃¯1 ⎕DT 'Z' returns UTC in ⎕TS-form. Part of Dyalog#887.
Give each a Variant Options section with a Variant Option: <name>
subsection, write the option names as code rather than bold, and
replace the shaded default markers with (default). Part of Dyalog#887.
Give each a Variant Options section with a Variant Option: <name>
subsection. Move ⎕NPUT's line-separator examples under NEOL, add the
missing Variant Options parent heading on ⎕NS and ⎕VSET, and correct
⎕NS Case 2 to a third-level heading to match Case 1. Part of Dyalog#887.
Add a Variant Options overview table to each, convert the per-option
headings to Variant Option: <name> subsections, write option names as
code, and replace the shaded default markers. On ⎕NCOPY and ⎕NMOVE,
move the ProgressCallback subsection up beside the other options and
give the example groups standard headings. Part of Dyalog#887.
Give each a Variant Options section with an overview table and Variant
Option: <name> subsections, and write the option names as code. Correct
the ⎕FCHK principal-option spelling, drop its shading legend, promote
its left-argument section, and remove a duplicated bullet list. Part
of Dyalog#887.
Retitle File Properties as Variant Options and present the file-property
options and the numeric principal option as tables. Part of Dyalog#887.
Turn the Options section into a Variant Options section with an overview
table (including the left-argument names and defaults) and Variant
Option: <name> subsections, write the option names as code, and correct
the Conversion to XML heading level. Part of Dyalog#887.
Add a Variant Options overview table, rename the per-option headings to
Variant Option: <name> and update the cross-references to them, and
correct the TimeOut heading spelling. Part of Dyalog#887.
Capitalise both Variant Options headings, write the option names as code
in the import and export tables and in prose, and mark Invert as the
principal option. Part of Dyalog#887.
⎕SHELL: the option is Timeout, not TimeOut; link 8373⌶ as code; give the
first example a plain Example heading noting it is Windows only; turn the
Env plain-text Example introducer into an Example heading; and under Shell
move the defaults above a single Examples heading that introduces each
block. ⎕FIX: InjectReferences defaults to InClasses. ⎕FCREATE: take the
property defaults from fprops. ⎕FCOPY: note that properties are inherited
from the source. Part of Dyalog#887.
Rename the Value column to Valid Values and add a Default column to its
right across every variant-options overview table, moving the default
value out of the values cell. Correct the ⎕FIX FixWithErrors and
AllowLateBinding defaults to 1. Part of Dyalog#887.
⎕NINFO and ⎕DT: drop the Default column (which read badly against the
merged value cells) and mark the default inline as plain (Default),
keeping the Valid Values heading. ⎕FCOPY: drop the Default column, since
properties are inherited from the source. ⎕NCOPY and ⎕NMOVE: give
ProgressCallback a default of none and describe its value as the name of
a callback function. ⎕NCOPY: move the Wildcard 0 examples above Variant
Options and the Wildcard 1 examples into the Wildcard subsection. Part
of Dyalog#887.
Collapse each pair of scenario headings into a single Examples heading
(the general one before Variant Options, and one under Variant Option:
Wildcard), and turn the bulleted scenario descriptions into intro
paragraphs before their examples. Part of Dyalog#887.
Match ⎕NCOPY: move the Wildcard 0 examples above Variant Options and the
Wildcard 1 examples into the Wildcard subsection, collapse each pair of
scenario headings into a single Examples heading, and turn the bulleted
scenario descriptions into intro paragraphs. Part of Dyalog#887.
Join each example's consecutive session blocks into a single fenced
block. Part of Dyalog#887.
@abrudz
abrudz requested a review from FionaDyalog August 11, 2026 05:28

@FionaDyalog FionaDyalog left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have started the review but only looked at quadCSV so far. Please check all the pages for occurrences of variant options that are not identified as such and ensure that they are also in code font, then let me know to re-review this page and review the others.

Comment thread language-reference-guide/docs/system-functions/csv.md Outdated
Comment thread language-reference-guide/docs/system-functions/csv.md
Comment thread language-reference-guide/docs/system-functions/csv.md Outdated
Comment thread language-reference-guide/docs/system-functions/csv.md Outdated
Comment thread language-reference-guide/docs/system-functions/csv.md Outdated
Comment thread language-reference-guide/docs/system-functions/csv.md Outdated
Comment thread language-reference-guide/docs/system-functions/csv.md Outdated
Comment thread language-reference-guide/docs/system-functions/csv.md
Comment thread language-reference-guide/docs/system-functions/csv.md Outdated
abrudz added 3 commits August 11, 2026 08:25
- Headings in title case (Access Code, Other Markup, File Handling,
  Pattern-Matching Rules, Two-Digit Years, and the ⎕CSV option heading).
- Variant option names in code font throughout, including in the
  Variant Option: <name> headings and remaining prose and table mentions.
- Give each overview table a caption Table: Variant options for `⎕XYZ`
  with a matching anchor, and reference it from the intro.
- Replace may with can or might per the style guide.

Part of Dyalog#887.
Write mentions of the _variant_ operator in italic lower case on ⎕FCHK
and ⎕XML, and use the plural Variant Options: heading where several
options are described together on ⎕CSV. Part of Dyalog#887.
Separate a leading If ... clause from its consequence with a comma
(notably before then), and set off a trailing even if clause with a
comma, matching Fiona's edits. Part of Dyalog#887.
@abrudz
abrudz requested a review from FionaDyalog August 11, 2026 08:38
abrudz added 2 commits August 11, 2026 13:36
Note that ⎕ED called from the Session returns a null result immediately,
and scope the returns-only-when-all-windows-are-closed behaviour to the
defined-function or operator case. This mirrors PR Dyalog#805 so the shared
⎕ED paragraphs are identical on both branches and the two PRs do not
conflict.
Describe conversion as including textual representations, since text is
just another representation rather than a separate operation. Add a
warning that arithmetic on DECF time numbers while ⎕FR is 645 can lose
precision or signal DOMAIN ERROR, and to set ⎕FR to 1287 first. Part
of Dyalog#887.
abrudz added 2 commits August 11, 2026 15:23
Remove a duplicate, unreferenced negative-numbers footnote, and point
the Timestamps table's Decimal encoded row at the decimal-encoding
footnote (it wrongly referenced the unrelated ticks-per-day footnote).
No duplicate or dangling footnotes remain.
@abrudz

abrudz commented Aug 12, 2026

Copy link
Copy Markdown
Member Author

@abrudz When merging this, immediately open this PR!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

System functions: Standardise references to variants

2 participants