<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sisudoc-spine-samples/markup/pod-samples/pod/live-manual/media/text, branch main</title>
<subtitle>SiSU spine markup samples</subtitle>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine-samples/'/>
<entry>
<title>live-manual: mend ja and pl translations alignment</title>
<updated>2026-09-22T22:25:09+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-09-19T03:48:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine-samples/commit/?id=e860bf22268bd8c478aa8c682862cbc6dda0de73'/>
<id>e860bf22268bd8c478aa8c682862cbc6dda0de73</id>
<content type='text'>
mend the ja and pl translations that broke ocn alignment

The languages of a document share their object numbering, and two of
live-manual's did not.

ja/project_git.ssi.po had msgstr " " against msgid "Or,". One space.
po4a emits it, a line of one space is not an object, and the entry
serves two places, so Japanese was two objects short of English and
everything below was renumbered. An empty msgstr is the value gettext
already has for this: untranslated, the English comes back, the object
survives and the gap is visible so that somebody translates it.

pl/user_overview.ssi.po had msgstr "2~ Wcięcia" against a paragraph.
That string is a heading belonging to another file, project_coding-
style.ssi.po, where it sits against its right msgid: a paste into the
wrong entry. So Polish had a heading where every other language has a
paragraph, and the paragraph's translation never existed. Emptied for
the same reason; the heading translation stays where it belongs.

The generated .ssi files are edited to match, po4a not being available
here. Not guessed: "Or," appears untranslated in ro and pt_BR, and the
paragraph appears untranslated in de, it, pt_BR and ro byte identically
in all four, so the wrapping is po4a's own.

msgfmt --check passes on both catalogues, and the lint that named
these two reports no errors at all now.

(assisted by Claude-Code)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
mend the ja and pl translations that broke ocn alignment

The languages of a document share their object numbering, and two of
live-manual's did not.

ja/project_git.ssi.po had msgstr " " against msgid "Or,". One space.
po4a emits it, a line of one space is not an object, and the entry
serves two places, so Japanese was two objects short of English and
everything below was renumbered. An empty msgstr is the value gettext
already has for this: untranslated, the English comes back, the object
survives and the gap is visible so that somebody translates it.

pl/user_overview.ssi.po had msgstr "2~ Wcięcia" against a paragraph.
That string is a heading belonging to another file, project_coding-
style.ssi.po, where it sits against its right msgid: a paste into the
wrong entry. So Polish had a heading where every other language has a
paragraph, and the paragraph's translation never existed. Emptied for
the same reason; the heading translation stays where it belongs.

The generated .ssi files are edited to match, po4a not being available
here. Not guessed: "Or," appears untranslated in ro and pt_BR, and the
paragraph appears untranslated in de, it, pt_BR and ro byte identically
in all four, so the wrapping is po4a's own.

msgfmt --check passes on both catalogues, and the lint that named
these two reports no errors at all now.

(assisted by Claude-Code)
</pre>
</div>
</content>
</entry>
<entry>
<title>live-manual: regenerate catalogues, mend headers</title>
<updated>2026-09-22T22:14:21+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2026-09-18T17:07:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine-samples/commit/?id=9e2ddc2fae4e9f48f860e1cd3479b7a09fa8c5a6'/>
<id>9e2ddc2fae4e9f48f860e1cd3479b7a09fa8c5a6</id>
<content type='text'>
The catalogues dated from 2015 and the document header had moved on:
from the bespoke sisu form to spine's yaml. Regenerating brings them up
to the English as it stands and puts them in step with the header for
the first time.

The body came through untouched. Only the nine live-manual.ssm files
changed, and po4a discarded nothing.

Five entries per language, the same five in all nine, had gone fuzzy:
the header blocks. The reason is visible in the fuzzy entries
themselves, which record the old string as a single line, creator:
"...", where the header now wants a block with an indented author:.
Those five are mended rather than dropped. Two carried translation and
were reshaped into the yaml the header uses; three were never
translatable content at all, being a version marker, an iso date, and a
make block of regexes, and now take the source, so that a regeneration
stops offering them for translation.

What this revealed: the translated headers were correct spine yaml
carrying translated text, while their catalogues held the old form. So
they were not produced by po4a at all, but maintained by hand after the
yaml change, and the two have been out of step ever since. Nothing said
so until something regenerated.

Three languages gain a licence in their own language. de, pt_BR and ro
each had one in the catalogue and an English one in the header, because
the header was written before the catalogue said otherwise.

Two corrections while reshaping: es carried a doubled space in the
project name that the hand-kept header did not, and pl had translated
the copyright holder where the rule took the source. Both follow the
catalogue now, which is authoritative.

The copyright line follows the English in dropping its "Copyright
(C)" prefix. Every catalogue passes msgfmt --check.

(assisted by Claude-Code)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The catalogues dated from 2015 and the document header had moved on:
from the bespoke sisu form to spine's yaml. Regenerating brings them up
to the English as it stands and puts them in step with the header for
the first time.

The body came through untouched. Only the nine live-manual.ssm files
changed, and po4a discarded nothing.

Five entries per language, the same five in all nine, had gone fuzzy:
the header blocks. The reason is visible in the fuzzy entries
themselves, which record the old string as a single line, creator:
"...", where the header now wants a block with an indented author:.
Those five are mended rather than dropped. Two carried translation and
were reshaped into the yaml the header uses; three were never
translatable content at all, being a version marker, an iso date, and a
make block of regexes, and now take the source, so that a regeneration
stops offering them for translation.

What this revealed: the translated headers were correct spine yaml
carrying translated text, while their catalogues held the old form. So
they were not produced by po4a at all, but maintained by hand after the
yaml change, and the two have been out of step ever since. Nothing said
so until something regenerated.

Three languages gain a licence in their own language. de, pt_BR and ro
each had one in the catalogue and an English one in the header, because
the header was written before the catalogue said otherwise.

Two corrections while reshaping: es carried a doubled space in the
project name that the hand-kept header did not, and pl had translated
the copyright holder where the rule took the source. Both follow the
catalogue now, which is authoritative.

The copyright line follows the English in dropping its "Copyright
(C)" prefix. Every catalogue passes msgfmt --check.

(assisted by Claude-Code)
</pre>
</div>
</content>
</entry>
<entry>
<title>samples pod dir now markup/pod-samples/pod</title>
<updated>2025-10-31T15:10:22+00:00</updated>
<author>
<name>Ralph Amissah</name>
<email>ralph.amissah@gmail.com</email>
</author>
<published>2025-10-10T03:03:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.sisudoc.org/sisudoc-spine-samples/commit/?id=d76c753ee05929fb53220141f1c8c11f31887466'/>
<id>d76c753ee05929fb53220141f1c8c11f31887466</id>
<content type='text'>
- markup/pod-samples/pod from markup/pod
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- markup/pod-samples/pod from markup/pod
</pre>
</div>
</content>
</entry>
</feed>
