Skip to content

cherrypick: epic/i18n-url-scheme to staging#729

Merged
darcywong00 merged 108 commits into
stagingfrom
cherrypick/i18n-url-scheme-to-staging
May 11, 2026
Merged

cherrypick: epic/i18n-url-scheme to staging#729
darcywong00 merged 108 commits into
stagingfrom
cherrypick/i18n-url-scheme-to-staging

Conversation

@darcywong00
Copy link
Copy Markdown
Contributor

For testing #696 on keyman-staging.com

test-bot: skip

mcdurdin and others added 30 commits March 23, 2026 09:41
fix: paths for contributors script 🌋
Co-authored-by: Marc Durdin <marc@durdin.net>
Co-authored-by: Marc Durdin <marc@durdin.net>
Co-authored-by: Marc Durdin <marc@durdin.net>
fix: Convert some absolute paths to relative 🌋
darcywong00 and others added 19 commits May 3, 2026 12:39
…heme--a19s28-1

chore: merge master to epic/i18n-url-scheme mid Sprint A19S28 🌋
Remove the `/` from a path if it refers to a file, and add a `/` if the
path refers to a folder (implicit index.md/index.php).

Clean up keyboard search which had some assumptions about not including
the `/` but that doesn't make sense with this pattern.

Test-bot: skip
fix: handle redirects for paths and files with terminating slashes 🌋
Co-authored-by: Marc Durdin <marc@durdin.net>
…rl-a19s28-2

chore: merge master to epic/i18n-url-scheme for Sprint A19S28 (part 2) 🌋
refactor: Update globe button to modify `lang` in URL paths 🌋
feat: localize JS keyboard search 🌋
* also remove stray blc_mjs file
* Use first component of URL path to determine current locale
* Add PHP `Locale::pageLocale()` to retrieve the current locale
* Add JS `I18n.pageLocale()` to retrieve the current locale
* Redirect to /en/... if an unsupported locale is found (in head.php)
* Remove `lang` parameter from embedded keyboard search
* Remove `lang` parameter from rewrite rules
* Rename `Locale::definePageLocale()` to `Locale::definePageScope()` to clarify
  purpose of the function
* Remove lang property from session; we may want to track lang in the future so
  we remember for top-level redirects
* And fix the embed access in search.mjs (#720)

TODO: Once this change lands, we'll need to rebuild the lang parameter into the
`/go/<platform>/download-keyboards` rewrite rules and redirect to the correct
locale that way.

Fixes: #720
Test-bot: skip
test: cleanup skip of downloads/releases/ 🌋
feat: use page URL path to find current locale 🌋
chore: tidy up language check in menu globe button 🌋
@darcywong00 darcywong00 added this to the A19S29 milestone May 8, 2026
@darcywong00 darcywong00 requested a review from mcdurdin May 8, 2026 10:11
@keymanapp-test-bot
Copy link
Copy Markdown

User Test Results

Test specification and instructions

User tests are not required

@darcywong00 darcywong00 marked this pull request as ready for review May 11, 2026 00:38
@darcywong00
Copy link
Copy Markdown
Contributor Author

Merging to staging to test on keyman-staging.com

@darcywong00 darcywong00 merged commit e3d3197 into staging May 11, 2026
6 checks passed
@darcywong00 darcywong00 deleted the cherrypick/i18n-url-scheme-to-staging branch May 11, 2026 00:39
@github-project-automation github-project-automation Bot moved this from Todo to Done in Keyman May 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants