Repository navigation
feat: striped lister rows (#225) and repaired translated catalogs - #227
Conversation
The .ct files were generated in 2015 from the 1997 binary catalogs with the string IDs counted wrongly after every gap in the numbering, so a few hundred entries per language held another string's text or English. They are rebuilt by string ID from the original catalogs on Aminet (Opus 5.65 for every language, the 5.8x update for Spanish). Later fixes in the .ct files are kept. Translations whose % codes, '|' button count or length no longer fit the current string are left out. - French uses names instead of MSG_UNKNOWN_<id>, and the second copy of the French directory (other Unicode form) is gone. - catalogs/Makefile builds the ViewFont, Lister Format and Path Format catalogs that have a translation and skips missing ones. - ftp.cd: "Disable Stayin' Alive Pings" keeps its ID (1346) instead of moving 114 strings by one; multi-line strings use continuations and the comment after MSG_SEND_NOOP moved to its own line, so FlexCat accepts the file.
Name mode listers can draw every second row with another background colour. Environment > Lister Display has a Striped Rows check box (env_flags bit 7) and Lister Colours an Alternate Rows item (ENVCOL_STRIPE, stripe_col[2] in the old env_pad_16 bytes, CONFIG_VERSION_18). Only its background pen is used, on unselected file and directory rows at odd list positions, so the stripes stay with their entries when the list scrolls. The default is a light grey custom colour with white as the no-free-pen fallback; the pen is held only while striping is on. Older environments load with striping off. - lister_display_dir() passed swapped window line numbers for lines scrolled in at the top or bottom; the stripes, the edit cursor and the keyboard selector arrow use those numbers. - ARexx 'dopus set/query pens' take 'tooltips' and 'stripes', and saved themes store both. - configopus.cd numbered the background picture strings from 23039, the IDs of the clock codes; they start at 5056 again, as in string_data.h. - Two source-text tests no longer pin the current environment version.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d1e58a9534
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
A theme replays 'dopus set pens' with pen numbers only, and setting a pen clears that element's custom colour, so applying a theme turned the default light grey stripes white.
|
@codex review |
|
Codex Review: Didn't find any major issues. Breezy! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
Summary
Name mode listers can now draw every second row in another background colour, and the translated catalogs show the right text again. Since 2015 a few hundred entries per language had held another string's translation or English.
Issue
Fixes #225
Changes
Striped rows
env_flagsbit 7 andstripe_col[2], which reuses the oldenv_pad_16bytes, so theCFG_ENVRlayout does not change. Environments older thanCONFIG_VERSION_18load with striping off.0xBBBBBB). On a screen with no free pen, white is used. A lister holds the stripe pen only while striping is on.lister_display_dir()passed swapped window line numbers for rows scrolled in at the top or bottom. Stripes made this visible: after scrolling down one line, the last two rows had the same colour. The edit cursor and the keyboard selector arrow compare against the same numbers, so they are fixed as well.dopus set pensanddopus query pensaccepttooltipsandstripes. Saved themes leave both out: a theme stores pen numbers only, and applying it would turn the default grey stripes white.Catalogs
.ctfiles were made in 2015 from the 1997 binary catalogs, but the string IDs were counted wrongly after every gap in the numbering. Entries after a gap got the text of IDs 1, 2, 3 and so on, for example "_Ok" for "Set source _archive bit". They are now rebuilt by string ID from the original catalogs on Aminet: Opus 5.65 for every language, and the 5.8x update for Spanish..ctfiles are kept. A translation is left out, so Opus shows English, when its%codes,|button count or length no longer match the current string.MSG_UNKNOWN_<id>. The duplicatefrançaisdirectory (same name in another Unicode form) is removed.configopus.cdgave the background picture strings IDs 23039 onward, which the clock codes also use.ftp.cdput "Disable Stayin' Alive Pings" in the middle of the numbering, which moved 114 FTP strings by one ID. Both files now give the IDs thatstring_data.handftp.stringsuse.ftp.cdalso had multi-line strings without continuations and a comment after an ID, and FlexCat rejected the file.catalogs/Makefilebuilds the ViewFont, Lister Format and Path Format catalogs where a translation exists and skips them where none does.Affected platforms
os3)os3-68000)os4)mos)i386-aros)x86_64-aros)aarch64-aros)Verification
dopus5.library, the program andconfigopus.modulegive the same set of warnings as master.SYS:Cin a name mode lister:0xBBBBBBand the normal background.dopus set/query penswithtooltipsandstripeswas built but not run in the emulator..ctfiles compile with FlexCat against their.cdfiles with no errors. Each compiled catalog was parsed back: all 16466 strings sit at the intended ID with the intended text.source/*/testspass. Two assertions that pinnedCONFIG_VERSION_17as the current version were removed.Checklist
ChangeLogupdated with a[dopus5 next]entry.documents/DOpus5.guideupdated and@$VERbumped if user-visiblebehaviour changed.
DOpusM2_ARexx.guideis updated as well.*_REVISIONinsource/Include/dopus/version.hbumped ifa versioned binary changed. Deferred to the release, as in the other
[dopus5 next]entries.