From b70d0cdc0736935aa83ec7f75381029b9717de75 Mon Sep 17 00:00:00 2001 From: Yasunobu <42543015+P4suta@users.noreply.github.com> Date: Mon, 24 Aug 2026 22:20:47 +0900 Subject: [PATCH] docs(census): say what the two new tab helpers are actually for MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both doc comments described an earlier draft of these variants, in which the pair under test was set inside the structure. It is not: the pair stands at the structure's two edges and the note's own text is `note`'s letters, so `halved` exists for the tab sign -- which that list does not carry and which a note sets at its own size like any other character it holds -- and the bracketless `warichu` span exists because the shape is asking about the structure rather than about §3.4.2's brackets. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01N8KNy2ejPqy81P2hVcRUjs --- engines/ocaml/probe/census.ml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/engines/ocaml/probe/census.ml b/engines/ocaml/probe/census.ml index a577abf..72abd9e 100644 --- a/engines/ocaml/probe/census.ml +++ b/engines/ocaml/probe/census.ml @@ -1617,9 +1617,10 @@ let warichu_close () : piece = warichu_bracket 2 (** One occurrence set at the size §3.4.2 gives a note, whatever else it is. - A census that varies the pair {i inside} a warichu or a furawake cannot pick its - characters from a fixed list the way {!note} does -- the pair is the subject -- so - the size is applied to the pair's own representatives instead. *) + {!note} builds a note's text out of a fixed list of letters, and a tab sign is not + on it. A sign standing inside such a structure is a character of the note like any + other and is set at the note's own size, so it is halved here rather than listed + there. *) let halved (one : piece) : piece = { one with piece_size = Some (em / 2, em / 2); piece_advance = Some (em / 2) } @@ -1676,8 +1677,9 @@ let ornament (kind : string) (first : int) (last : int) (annotation : piece list (** A warichu with no brackets around it: §3.4.2's note is the run's own text, and the two cl-28 and cl-29 occurrences are characters of the main line the caller - gives a role to. A census that varies the pair inside the structure wants the - structure and not the brackets. *) + gives a role to. A census that puts a tab sign inside the structure is asking about + the structure, and the `constructs` census already varies a pair against the + brackets. *) let warichu (first : int) (last : int) : span = { span_default with span_kind = "warichu"; span_first = first; span_last = last }