Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Implement short translation keys #162

Merged
merged 19 commits into from
Jan 2, 2025

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.

@jbrooksuk jbrooksuk merged commit bbb411e into cachethq:main Jan 2, 2025
17 checks passed
@danjohnson95 danjohnson95 deleted the globalisation branch January 2, 2025 23:26
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