docs: normalize page titles and sidebar to sentence case (#3819)#4329
docs: normalize page titles and sidebar to sentence case (#3819)#4329mvanhorn wants to merge 3 commits intobeeware:mainfrom
Conversation
Issue beeware#3819 noted that some page titles and sidebar entries were title case ('Release History', 'Success Stories', 'Topic Guides', etc.) while others were already first-word-only capitalized. Per the maintainers' chosen approach in the issue thread ("all titles should be first-word- only capitalized"), normalize the offenders so the sidebar and the underlying pages agree. Pages updated: about/releases.md : Release History -> Release history about/success.md : Success Stories -> Success stories about/roadmap.md : Toga's Road Map -> Toga's road map topics/data-sources.md : Data Sources -> Data sources topics/index.md : Topic Guides -> Topic guides topics/debugging.md: Debugging Your App -> Debugging your app Sidebar (SUMMARY.md): - 'How-to Guides' -> 'How-to guides' - 'Internal How-to guides' -> 'Internal how-to guides' - 'Success Stories', 'Release History', 'Toga's Road Map' updated to match their pages index.md homepage card 'Topic Guides' also updated to match. Scope deliberately limited to H1 page titles and the sidebar to keep this PR easy to review. The companion task in beeware#3819 - replacing sentence-like tutorial titles ('Let's draw on a canvas!', etc.) with descriptive titles - is left for a follow-up because it requires opinionated rewrites rather than mechanical case changes. Closes beeware#3819
HalfWhitt
left a comment
There was a problem hiding this comment.
Hey there, thank you for tackling this.
As a general rule, it's fine for a PR to solve only a (well-scoped) portion of an issue. However, putting "Closes ###" or "Fixes ###" in the top post automatically links the PR and the issue such that merging the PR entirely closes the issue.
Second of all... this is not a particularly vast problem. Incremental progress is generally a virtue, but so far, this is only changing twelve lines. I'd really prefer if you take a stab at the tutorial titles as well — and while it wasn't specifically part of the initial issue, now that you point it out, it would be good to do a sweep for headings below H1 level as well. Would you mind trying that?
|
One additional detail: when you've used Claude to create this PR, it has removed the PR template that we require on all pull requests. That template has some details that we need contributors to acknowledge. You may need to re-create this PR (or update the PR description) to include that content. |
|
Thanks for the catch - I've updated the PR description to include the checklist template. Apologies for the miss. Let me know if there's anything else you'd like me to adjust. |
Following review feedback, expand the normalization beyond page titles to all sub-section headings throughout docs/en. Proper nouns (Toga, Qt, Travertino, Pack, CSS, TreeSource, ValueSource, etc.) are preserved. Affected: - 'Backward Incompatible Changes' -> 'Backward incompatible changes' (10x in releases) - 'Improved Documentation' -> 'Improved documentation' - 'Code of Conduct' -> 'Code of conduct' - 'Accessor Columns', 'Custom Columns', 'Custom List Sources' - 'Future Plans', 'Implementation Details' - 'Activities and Intents', 'Debugging Widget Layout' - 'Writing Files', 'Writing a Widget', 'Widgets with Multiple Backends' - 'Implementing Missing Widgets', 'Implementing a New Backend', 'Implementing New Interfaces', 'Other Backend-Dependent Objects' - 'Example: A Qt Dial' -> 'Example: A Qt dial' No internal anchor links reference these headings, so the change is heading-only with no link breakage.
|
@HalfWhitt thanks for the review.
Let me know if I missed any spots. |
HalfWhitt
left a comment
There was a problem hiding this comment.
- Updated PR description:
Closes->Refsso merge keeps Inconsistent title case in docs #3819 open for the remaining work.
I'm sorry if I wasn't clear... what I was trying to say was that a) you shouldn't close a ticket if you're not doing all of it, but simultaneously b) I would like you to in fact do all of it, if possible (hence the tutorial titles and subheadings). Therefore, now that you're going for that, it can stay "closes".
- Tutorial titles (
Your first Toga app/A slightly less toy example/ etc.) are already sentence-case - no edits needed there.
Well, yes, they are, but as you quoted at the top of this PR (emphasis added):
The maintainers' chosen approach in the issue thread:
"All titles should be first-word-only capitalized, and the tutorial's sentence-like titles should be replaced with 'real' titles."
So, for instance, "You put the box inside another box…" would be better titled something like "Managing layout".
Additionally, the links to them from the overall tutorial page don't capitalize the first word, either.
- Pushed 32b5088 with the H2-H4 sweep: ~16 headings normalized across 10 files (
Backward incompatible changesx10,Future plans,Implementation details,Writing files,Implementing a new backend, etc). Proper nouns (Toga, Qt, Travertino, Pack, CSS, TreeSource, ValueSource) preserved. No internal anchor links pointed at the renamed headings.
Excellent, thank you 👍
Addresses @HalfWhitt's scope expansion on beeware#3819: the issue thread asked for both first-word-only capitalization AND sentence-like tutorial titles to be replaced with real titles. - tutorial-0.md: "Your first Toga app" -> "A basic app" - tutorial-1.md: "A slightly less toy example" -> "Capturing user input" - tutorial-2.md: "You put the box inside another box..." -> "Managing layout" - tutorial-3.md: "Let's build a browser!" -> "Building a browser" - tutorial-4.md: "Let's draw on a canvas!" -> "Drawing on a canvas" Also updates the tutorial index page headings to match the renamed titles with proper first-word capitalization, and extends the change note in changes/3819.doc.md.
|
@HalfWhitt got it - thanks for clarifying. Pushed 928d3d3:
|
Issue #3819 documented that the docs sidebar and page titles were a mix of title case (e.g.
Release History,Success Stories,Topic Guides) and sentence case. The maintainers' chosen approach in the issue thread:This PR does the full sweep: H1 titles, the matching sidebar entries, H2-H4 sub-headings, and tutorial page renames from sentence-like titles to descriptive short titles.
Pages updated
docs/en/about/releases.mdRelease HistoryRelease historydocs/en/about/success.mdSuccess StoriesSuccess storiesdocs/en/about/roadmap.mdToga's Road MapToga's road mapdocs/en/topics/data-sources.mdData SourcesData sourcesdocs/en/topics/index.mdTopic GuidesTopic guidesdocs/en/topics/debugging.mdDebugging Your AppDebugging your appTutorial titles renamed
docs/en/tutorial/tutorial-0.mdYour first Toga appA basic appdocs/en/tutorial/tutorial-1.mdA slightly less toy exampleCapturing user inputdocs/en/tutorial/tutorial-2.mdYou put the box inside another box...Managing layoutdocs/en/tutorial/tutorial-3.mdLet's build a browser!Building a browserdocs/en/tutorial/tutorial-4.mdLet's draw on a canvas!Drawing on a canvasdocs/en/tutorial/index.mdsub-headings updated to match the renamed tutorials with first-word-only capitalization.Sidebar (
docs/en/SUMMARY.md)How-to Guides->How-to guidesInternal How-to guides->Internal how-to guidesSuccess Stories,Release History,Toga's Road Mapupdated to match their pagesSub-H1 sweep (H2-H4)
~16 sub-headings normalized across 10 files (
Backward incompatible changesx10,Future plans,Implementation details,Writing files,Implementing a new backend, etc). Proper nouns preserved (Toga, Qt, Travertino, Pack, CSS, TreeSource, ValueSource). No internal anchor links pointed at the renamed headings.Other
docs/en/index.mdhad a## [Topic Guides](...)card on the homepage; updated to match.changes/3819.doc.mdper the towncrier convention.Closes #3819
This contribution was developed with AI assistance (Claude Code).
PR Checklist: