Skip to content

chore: Implement short translation keys#162

Merged
jbrooksuk merged 19 commits intocachethq:mainfrom
danjohnson95:globalisation
Jan 2, 2025
Merged

chore: Implement short translation keys#162
jbrooksuk merged 19 commits intocachethq:mainfrom
danjohnson95:globalisation

Conversation

@danjohnson95
Copy link
Contributor

@danjohnson95 danjohnson95 commented Jan 2, 2025

This PR adds translation keys for every string in the application, and does so in a consistent short-keys format.

All strings live inside the cachet namespace, and so are accessed like __('cachet::incident.new_button').

I've separated out the translation keys roughly by the feature (or "resource") that they relate to. For example any strings related to "Incidents" belong in the incidents.php file.

I've created a predictable naming structure for some of the common page designs, so the table headers used on resource list pages are in cachet::incident.list.headers.

I've tried to keep this change as small as possible, so this PR doesn't contain the functionality to switch to different locales, but I'm happy to do that as a separate change.

If you're happy with this change, I've got some further tooling I can implement to keep the codebase clean - ie tests to ensure we're only using keys that exist, and linting rules to enforce consistencies in translation files.

@jbrooksuk
Copy link
Member

Woah, huge thanks @danjohnson95 for undertaking this mammoth task! 🙏

I'm going to merge this in now and I'd love for future work to provide the tooling you mentioned.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants