mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-05-20 19:22:40 +00:00

This is my take to fix #6078 Should also resolve #6111 As far as I can tell, Forgejo uses only a subset of the relative-time functionality, and as far as I can see, this subset can be implemented using browser built-in date conversion and arithmetic. So I wrote a JavaScript to format the relative-time element accordingly, and a Go binding to generate the translated elements. This is my first time writing Go code, and my first time coding for a large-scale server application, so please tell me if I'm doing something wrong, or if the whole approach is not acceptable. --- Screenshot: Localized times in Low German  Screenshot: The same with Forgejo in English  --- ## Checklist The [contributor guide](https://forgejo.org/docs/next/contributor/) contains information that will be helpful to first time contributors. There also are a few [conditions for merging Pull Requests in Forgejo repositories](https://codeberg.org/forgejo/governance/src/branch/main/PullRequestsAgreement.md). You are also welcome to join the [Forgejo development chatroom](https://matrix.to/#/#forgejo-development:matrix.org). ### Tests - I added test coverage for Go changes... - [x] in their respective `*_test.go` for unit tests. - [ ] in the `tests/integration` directory if it involves interactions with a live Forgejo server. - I added test coverage for JavaScript changes... - [x] in `web_src/js/*.test.js` if it can be unit tested. - [ ] in `tests/e2e/*.test.e2e.js` if it requires interactions with a live Forgejo server (see also the [developer guide for JavaScript testing](https://codeberg.org/forgejo/forgejo/src/branch/forgejo/tests/e2e/README.md#end-to-end-tests)). ### Documentation - [ ] I created a pull request [to the documentation](https://codeberg.org/forgejo/docs) to explain to Forgejo users how to use this change. - [x] I did not document these changes and I do not expect someone else to do it. ### Release notes - [x] I do not want this change to show in the release notes. - [ ] I want the title to show in the release notes with a link to this pull request. - [ ] I want the content of the `release-notes/<pull request number>.md` to be be used for the release notes instead of the title. Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6154 Reviewed-by: 0ko <0ko@noreply.codeberg.org> Reviewed-by: Michael Kriese <michael.kriese@gmx.de> Co-authored-by: Benedikt Straub <benedikt-straub@web.de> Co-committed-by: Benedikt Straub <benedikt-straub@web.de>
68 lines
3.6 KiB
JSON
68 lines
3.6 KiB
JSON
{
|
|
"home.welcome.no_activity": "No activity",
|
|
"home.welcome.activity_hint": "There is nothing in your feed yet. Your actions and activity from repositories that you watch will show up here.",
|
|
"home.explore_repos": "Explore repositories",
|
|
"home.explore_users": "Explore users",
|
|
"home.explore_orgs": "Explore organizations",
|
|
"relativetime.now": "now",
|
|
"relativetime.future": "in future",
|
|
"relativetime.mins": {
|
|
"one": "%d minute ago",
|
|
"other": "%d minutes ago"
|
|
},
|
|
"relativetime.hours": {
|
|
"one": "%d hour ago",
|
|
"other": "%d hours ago"
|
|
},
|
|
"relativetime.days": {
|
|
"one": "%d day ago",
|
|
"other": "%d days ago"
|
|
},
|
|
"relativetime.weeks": {
|
|
"one": "%d week ago",
|
|
"other": "%d weeks ago"
|
|
},
|
|
"relativetime.months": {
|
|
"one": "%d month ago",
|
|
"other": "%d months ago"
|
|
},
|
|
"relativetime.years": {
|
|
"one": "%d year ago",
|
|
"other": "%d years ago"
|
|
},
|
|
"relativetime.1day": "yesterday",
|
|
"relativetime.2days": "two days ago",
|
|
"relativetime.1week": "last week",
|
|
"relativetime.2weeks": "two weeks ago",
|
|
"relativetime.1month": "last month",
|
|
"relativetime.2months": "two months ago",
|
|
"relativetime.1year": "last year",
|
|
"relativetime.2years": "two years ago",
|
|
"repo.pulls.merged_title_desc": {
|
|
"one": "merged %[1]d commit from <code>%[2]s</code> into <code>%[3]s</code> %[4]s",
|
|
"other": "merged %[1]d commits from <code>%[2]s</code> into <code>%[3]s</code> %[4]s"
|
|
},
|
|
"repo.pulls.title_desc": {
|
|
"one": "wants to merge %[1]d commit from <code>%[2]s</code> into <code id=\"%[4]s\">%[3]s</code>",
|
|
"other": "wants to merge %[1]d commits from <code>%[2]s</code> into <code id=\"%[4]s\">%[3]s</code>"
|
|
},
|
|
"search.milestone_kind": "Search milestones…",
|
|
"incorrect_root_url": "This Forgejo instance is configured to be served on \"%s\". You are currently viewing Forgejo through a different URL, which may cause parts of the application to break. The canonical URL is controlled by Forgejo admins via the ROOT_URL setting in the app.ini.",
|
|
"themes.names.forgejo-auto": "Forgejo (follow system theme)",
|
|
"themes.names.forgejo-light": "Forgejo light",
|
|
"themes.names.forgejo-dark": "Forgejo dark",
|
|
"error.not_found.title": "Page not found",
|
|
"alert.asset_load_failed": "Failed to load asset files from {path}. Please make sure the asset files can be accessed.",
|
|
"alert.range_error": " must be a number between %[1]s and %[2]s.",
|
|
"install.invalid_lfs_path": "Unable to create the LFS root at the specified path: %[1]s",
|
|
"mail.actions.successful_run_after_failure_subject": "Workflow %[1]s recovered in repository %[2]s",
|
|
"mail.actions.not_successful_run_subject": "Workflow %[1]s failed in repository %[2]s",
|
|
"mail.actions.successful_run_after_failure": "Workflow %[1]s recovered in repository %[2]s",
|
|
"mail.actions.not_successful_run": "Workflow %[1]s failed in repository %[2]s",
|
|
"mail.actions.run_info_cur_status": "This Run's Status: %[1]s (just updated from %[2]s)",
|
|
"mail.actions.run_info_previous_status": "Previous Run's Status: %[1]s",
|
|
"mail.actions.run_info_ref": "Branch: %[1]s (%[2]s)",
|
|
"mail.actions.run_info_trigger": "Triggered because: %[1]s by: %[2]s",
|
|
"discussion.locked": "This discussion has been locked. Commenting is limited to contributors.",
|
|
"meta.last_line": "Thank you for translating Forgejo! This line isn't seen by the users but it serves other purposes in the translation management. You can place a fun fact in the translation instead of translating it."
|
|
}
|