Commit graph

179 commits

Author SHA1 Message Date
0ko
c400a3fac7 chore(i18n): May 2026 maintenence (#12718)
* remove two unused strings I identified while doing other things
* update two strings per request of @mahlzahn while avoiding a whole separate PR for this
* move 126 strings to JSON, some are remapped with a better structure
    * previous migration: forgejo/forgejo!12280

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/12718
Reviewed-by: Robert Wolff <mahlzahn@posteo.de>
2026-05-25 10:59:49 +02:00
0ko
f05ff7ec5b chore(i18n): move 89 strings to JSON (#12280)
Previous similar PR: https://codeberg.org/forgejo/forgejo/pulls/11879.

Moved strings from INI to JSON. Some directly, some with keys updated to be consistent. The latter was done carefully, making sure all usages are updated, and was tested locally.

There are more deletions than insertions because some languages also had some extra empty lines removed.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/12280
Reviewed-by: Robert Wolff <mahlzahn@posteo.de>
2026-04-27 16:07:51 +02:00
Codeberg Translate
5e5ad79d10
i18n: update of translations from Codeberg Translate
Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: AshyPinguin <ashypinguin@noreply.codeberg.org>
Co-authored-by: Benedikt Straub <benedikt-straub@web.de>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Fjuro <fjuro@noreply.codeberg.org>
Co-authored-by: Goudarz Jafari <goudarz.jafari@gmail.com>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: Lauri Lepik <laurilepik@noreply.codeberg.org>
Co-authored-by: Lzebulon <lzebulon@noreply.codeberg.org>
Co-authored-by: PatoFlamejanteTV <patoflamejantetv@noreply.codeberg.org>
Co-authored-by: SomeTr <sometr@noreply.codeberg.org>
Co-authored-by: TAGerritsen <tagerritsen@noreply.codeberg.org>
Co-authored-by: Tamil <tamil@noreply.codeberg.org>
Co-authored-by: Wuzzy <wuzzy@disroot.org>
Co-authored-by: arifpedia <arifpedia@gmail.com>
Co-authored-by: artnay <artnay@noreply.codeberg.org>
Co-authored-by: augustd <augustd@noreply.codeberg.org>
Co-authored-by: fserrador <fserrador@noreply.codeberg.org>
Co-authored-by: gallegonovato <gallegonovato@noreply.codeberg.org>
Co-authored-by: mahlzahn <mahlzahn@posteo.de>
Co-authored-by: rdeavila <rdeavila@noreply.codeberg.org>
Co-authored-by: universish <universish@noreply.codeberg.org>
Co-authored-by: vmtj <vmtj@noreply.codeberg.org>
Co-authored-by: xtex <xtexchooser@duck.com>
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ca/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/cs/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/de/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/es/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/et/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/fr/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/id/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/mk/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/nds/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/nl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ru/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ta/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/tr/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/uk/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/es/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/et/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fa/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fi/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fr/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/id/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/mk/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/nl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ru/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ta/
Translation: Forgejo/forgejo
Translation: Forgejo/forgejo-next
2026-04-27 11:17:47 +00:00
0ko
fd489b6963 chore(i18n): migrate strings to json, unhardcode one, improve plurals (#11879)
* migrate 17 strings related to repository migrations from INI to JSON
    * changed templates to get rid of unhelpful prefix `repo`
* migrate 4 strings related to counters
    * also changed templates to get rid of `repo`, but it had to be done anyway to use `TrPluralString`
* Unhardcode the header on migraiton type selector page, which I haven't noticed in https://codeberg.org/forgejo/forgejo/pulls/6795 or in two other PRs I did on this template since

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/11879
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
Reviewed-by: Beowulf <beowulf@beocode.eu>
2026-04-03 14:11:48 +02:00
0ko
b085be779c i18n(*): migrate 92 strings to json (#11325)
Previous migration: https://codeberg.org/forgejo/forgejo/pulls/10979

The white holes in between the red diff lines of the INI files aren't a migration bug: they are orphan strings that weren't cleaned up yet from those files.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/11325
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2026-02-16 17:38:56 +01:00
0ko
1978afdb65 i18n(*): migrate ini section [packages] to json (#10979)
The following strings were skipped because they will need a separate template update for plurals:
```ini
[packages]
owner.settings.cleanuprules.keep.count.1
owner.settings.cleanuprules.keep.count.n
```

Repro command:
```sh
python remap.py --config --write \
	--insertion-mode s+p \
	--remap [packages]title:packages.title \
	--remap [packages]empty:packages.empty \
	--remap [packages]empty.documentation:packages.empty.documentation \
	--remap [packages]empty.repo:packages.empty.repo \
	--remap [packages]registry.documentation:packages.registry.documentation \
	--remap [packages]filter.type:packages.filter.type \
	--remap [packages]filter.type.all:packages.filter.type.all \
	--remap [packages]filter.no_result:packages.filter.no_result \
	--remap [packages]filter.container.tagged:packages.filter.container.tagged \
	--remap [packages]filter.container.untagged:packages.filter.container.untagged \
	--remap [packages]published_by:packages.published_by \
	--remap [packages]published_by_in:packages.published_by_in \
	--remap [packages]installation:packages.installation \
	--remap [packages]about:packages.about \
	--remap [packages]requirements:packages.requirements \
	--remap [packages]dependencies:packages.dependencies \
	--remap [packages]keywords:packages.keywords \
	--remap [packages]details:packages.details \
	--remap [packages]details.author:packages.details.author \
	--remap [packages]details.project_site:packages.details.project_site \
	--remap [packages]details.repository_site:packages.details.repository_site \
	--remap [packages]details.documentation_site:packages.details.documentation_site \
	--remap [packages]details.license:packages.details.license \
	--remap [packages]assets:packages.assets \
	--remap [packages]versions:packages.versions \
	--remap [packages]versions.view_all:packages.versions.view_all \
	--remap [packages]dependency.id:packages.dependency.id \
	--remap [packages]dependency.version:packages.dependency.version \
	--remap [packages]search_in_external_registry:packages.search_in_external_registry \
	--remap [packages]alpine.registry:packages.alpine.registry \
	--remap [packages]alpine.registry.key:packages.alpine.registry.key \
	--remap [packages]alpine.registry.info:packages.alpine.registry.info \
	--remap [packages]alpine.install:packages.alpine.install \
	--remap [packages]alpine.repository:packages.alpine.repository \
	--remap [packages]alpine.repository.branches:packages.alpine.repository.branches \
	--remap [packages]alpine.repository.repositories:packages.alpine.repository.repositories \
	--remap [packages]alpine.repository.architectures:packages.alpine.repository.architectures \
	--remap [packages]arch.pacman.helper.gpg:packages.arch.pacman.helper.gpg \
	--remap [packages]arch.pacman.repo.multi:packages.arch.pacman.repo.multi \
	--remap [packages]arch.pacman.repo.multi.item:packages.arch.pacman.repo.multi.item \
	--remap [packages]arch.pacman.conf:packages.arch.pacman.conf \
	--remap [packages]arch.pacman.sync:packages.arch.pacman.sync \
	--remap [packages]arch.version.properties:packages.arch.version.properties \
	--remap [packages]arch.version.description:packages.arch.version.description \
	--remap [packages]arch.version.provides:packages.arch.version.provides \
	--remap [packages]arch.version.groups:packages.arch.version.groups \
	--remap [packages]arch.version.depends:packages.arch.version.depends \
	--remap [packages]arch.version.optdepends:packages.arch.version.optdepends \
	--remap [packages]arch.version.makedepends:packages.arch.version.makedepends \
	--remap [packages]arch.version.checkdepends:packages.arch.version.checkdepends \
	--remap [packages]arch.version.conflicts:packages.arch.version.conflicts \
	--remap [packages]arch.version.replaces:packages.arch.version.replaces \
	--remap [packages]arch.version.backup:packages.arch.version.backup \
	--remap [packages]cargo.registry:packages.cargo.registry \
	--remap [packages]cargo.install:packages.cargo.install \
	--remap [packages]chef.registry:packages.chef.registry \
	--remap [packages]chef.install:packages.chef.install \
	--remap [packages]composer.registry:packages.composer.registry \
	--remap [packages]composer.install:packages.composer.install \
	--remap [packages]composer.dependencies:packages.composer.dependencies \
	--remap [packages]composer.dependencies.development:packages.composer.dependencies.development \
	--remap [packages]conan.registry:packages.conan.registry \
	--remap [packages]conan.install:packages.conan.install \
	--remap [packages]conda.registry:packages.conda.registry \
	--remap [packages]conda.install:packages.conda.install \
	--remap [packages]container.images.title:packages.container.images.title \
	--remap [packages]container.details.type:packages.container.details.type \
	--remap [packages]container.details.platform:packages.container.details.platform \
	--remap [packages]container.pull:packages.container.pull \
	--remap [packages]container.digest:packages.container.digest \
	--remap [packages]container.multi_arch:packages.container.multi_arch \
	--remap [packages]container.layers:packages.container.layers \
	--remap [packages]container.labels:packages.container.labels \
	--remap [packages]container.labels.key:packages.container.labels.key \
	--remap [packages]container.labels.value:packages.container.labels.value \
	--remap [packages]cran.registry:packages.cran.registry \
	--remap [packages]cran.install:packages.cran.install \
	--remap [packages]debian.registry:packages.debian.registry \
	--remap [packages]debian.registry.info:packages.debian.registry.info \
	--remap [packages]debian.install:packages.debian.install \
	--remap [packages]debian.repository:packages.debian.repository \
	--remap [packages]debian.repository.distributions:packages.debian.repository.distributions \
	--remap [packages]debian.repository.components:packages.debian.repository.components \
	--remap [packages]debian.repository.architectures:packages.debian.repository.architectures \
	--remap [packages]generic.download:packages.generic.download \
	--remap [packages]go.install:packages.go.install \
	--remap [packages]helm.registry:packages.helm.registry \
	--remap [packages]helm.install:packages.helm.install \
	--remap [packages]maven.registry:packages.maven.registry \
	--remap [packages]maven.install:packages.maven.install \
	--remap [packages]maven.install2:packages.maven.install2 \
	--remap [packages]maven.download:packages.maven.download \
	--remap [packages]nuget.registry:packages.nuget.registry \
	--remap [packages]nuget.install:packages.nuget.install \
	--remap [packages]nuget.dependency.framework:packages.nuget.dependency.framework \
	--remap [packages]npm.registry:packages.npm.registry \
	--remap [packages]npm.install:packages.npm.install \
	--remap [packages]npm.install2:packages.npm.install2 \
	--remap [packages]npm.dependencies:packages.npm.dependencies \
	--remap [packages]npm.dependencies.development:packages.npm.dependencies.development \
	--remap [packages]npm.dependencies.bundle:packages.npm.dependencies.bundle \
	--remap [packages]npm.dependencies.peer:packages.npm.dependencies.peer \
	--remap [packages]npm.dependencies.optional:packages.npm.dependencies.optional \
	--remap [packages]npm.details.tag:packages.npm.details.tag \
	--remap [packages]pub.install:packages.pub.install \
	--remap [packages]pypi.requires:packages.pypi.requires \
	--remap [packages]pypi.install:packages.pypi.install \
	--remap [packages]rpm.registry:packages.rpm.registry \
	--remap [packages]rpm.distros.redhat:packages.rpm.distros.redhat \
	--remap [packages]rpm.distros.suse:packages.rpm.distros.suse \
	--remap [packages]rpm.install:packages.rpm.install \
	--remap [packages]rpm.repository:packages.rpm.repository \
	--remap [packages]rpm.repository.architectures:packages.rpm.repository.architectures \
	--remap [packages]rpm.repository.multiple_groups:packages.rpm.repository.multiple_groups \
	--remap [packages]alt.registry:packages.alt.registry \
	--remap [packages]alt.registry.install:packages.alt.registry.install \
	--remap [packages]alt.install:packages.alt.install \
	--remap [packages]alt.setup:packages.alt.setup \
	--remap [packages]alt.repository:packages.alt.repository \
	--remap [packages]alt.repository.architectures:packages.alt.repository.architectures \
	--remap [packages]alt.repository.multiple_groups:packages.alt.repository.multiple_groups \
	--remap [packages]rubygems.install:packages.rubygems.install \
	--remap [packages]rubygems.install2:packages.rubygems.install2 \
	--remap [packages]rubygems.dependencies.runtime:packages.rubygems.dependencies.runtime \
	--remap [packages]rubygems.dependencies.development:packages.rubygems.dependencies.development \
	--remap [packages]rubygems.required.ruby:packages.rubygems.required.ruby \
	--remap [packages]rubygems.required.rubygems:packages.rubygems.required.rubygems \
	--remap [packages]swift.registry:packages.swift.registry \
	--remap [packages]swift.install:packages.swift.install \
	--remap [packages]swift.install2:packages.swift.install2 \
	--remap [packages]vagrant.install:packages.vagrant.install \
	--remap [packages]settings.link:packages.settings.link \
	--remap [packages]settings.link.description:packages.settings.link.description \
	--remap [packages]settings.link.select:packages.settings.link.select \
	--remap [packages]settings.link.button:packages.settings.link.button \
	--remap [packages]settings.link.success:packages.settings.link.success \
	--remap [packages]settings.link.error:packages.settings.link.error \
	--remap [packages]settings.delete:packages.settings.delete \
	--remap [packages]settings.delete.description:packages.settings.delete.description \
	--remap [packages]settings.delete.notice:packages.settings.delete.notice \
	--remap [packages]settings.delete.success:packages.settings.delete.success \
	--remap [packages]settings.delete.error:packages.settings.delete.error \
	--remap [packages]owner.settings.cargo.title:packages.owner.settings.cargo.title \
	--remap [packages]owner.settings.cargo.initialize:packages.owner.settings.cargo.initialize \
	--remap [packages]owner.settings.cargo.initialize.description:packages.owner.settings.cargo.initialize.description \
	--remap [packages]owner.settings.cargo.initialize.error:packages.owner.settings.cargo.initialize.error \
	--remap [packages]owner.settings.cargo.initialize.success:packages.owner.settings.cargo.initialize.success \
	--remap [packages]owner.settings.cargo.rebuild:packages.owner.settings.cargo.rebuild \
	--remap [packages]owner.settings.cargo.rebuild.description:packages.owner.settings.cargo.rebuild.description \
	--remap [packages]owner.settings.cargo.rebuild.error:packages.owner.settings.cargo.rebuild.error \
	--remap [packages]owner.settings.cargo.rebuild.success:packages.owner.settings.cargo.rebuild.success \
	--remap [packages]owner.settings.cargo.rebuild.no_index:packages.owner.settings.cargo.rebuild.no_index \
	--remap [packages]owner.settings.cleanuprules.title:packages.owner.settings.cleanuprules.title \
	--remap [packages]owner.settings.cleanuprules.add:packages.owner.settings.cleanuprules.add \
	--remap [packages]owner.settings.cleanuprules.edit:packages.owner.settings.cleanuprules.edit \
	--remap [packages]owner.settings.cleanuprules.none:packages.owner.settings.cleanuprules.none \
	--remap [packages]owner.settings.cleanuprules.preview:packages.owner.settings.cleanuprules.preview \
	--remap [packages]owner.settings.cleanuprules.preview.overview:packages.owner.settings.cleanuprules.preview.overview \
	--remap [packages]owner.settings.cleanuprules.preview.none:packages.owner.settings.cleanuprules.preview.none \
	--remap [packages]owner.settings.cleanuprules.pattern_full_match:packages.owner.settings.cleanuprules.pattern_full_match \
	--remap [packages]owner.settings.cleanuprules.keep.title:packages.owner.settings.cleanuprules.keep.title \
	--remap [packages]owner.settings.cleanuprules.keep.count:packages.owner.settings.cleanuprules.keep.count \
	--remap [packages]owner.settings.cleanuprules.keep.pattern:packages.owner.settings.cleanuprules.keep.pattern \
	--remap [packages]owner.settings.cleanuprules.keep.pattern.container:packages.owner.settings.cleanuprules.keep.pattern.container \
	--remap [packages]owner.settings.cleanuprules.remove.title:packages.owner.settings.cleanuprules.remove.title \
	--remap [packages]owner.settings.cleanuprules.remove.days:packages.owner.settings.cleanuprules.remove.days \
	--remap [packages]owner.settings.cleanuprules.remove.pattern:packages.owner.settings.cleanuprules.remove.pattern \
	--remap [packages]owner.settings.cleanuprules.success.update:packages.owner.settings.cleanuprules.success.update \
	--remap [packages]owner.settings.cleanuprules.success.delete:packages.owner.settings.cleanuprules.success.delete \
	--remap [packages]owner.settings.chef.title:packages.owner.settings.chef.title \
	--remap [packages]owner.settings.chef.keypair:packages.owner.settings.chef.keypair \
	--remap [packages]owner.settings.chef.keypair.description:packages.owner.settings.chef.keypair.description
```

In en-US the strings were manually moved lower in the file, before the `actions` section. Weblate proposes strings sequentially to translators, and would be really awkward to start a translation with `packages`.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/10979
Reviewed-by: Michael Kriese <michael.kriese@gmx.de>
2026-01-22 11:42:52 +01:00
Codeberg Translate
959e4cf138
i18n: update of translations from Codeberg Translate
Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Benedikt Straub <benedikt-straub@web.de>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Edgarsons <edgarsons@noreply.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: Juno Takano <jutty@noreply.codeberg.org>
Co-authored-by: Kropotkin <kropotkin@noreply.codeberg.org>
Co-authored-by: Lzebulon <lzebulon@noreply.codeberg.org>
Co-authored-by: Priit Jõerüüt <jrtcdbrg@noreply.codeberg.org>
Co-authored-by: SomeTr <sometr@noreply.codeberg.org>
Co-authored-by: Vyxie <kitakita@disroot.org>
Co-authored-by: Wuzzy <wuzzy@disroot.org>
Co-authored-by: Yushu <yushu@noreply.codeberg.org>
Co-authored-by: anorprogrammer <anorprogrammer@noreply.codeberg.org>
Co-authored-by: artnay <artnay@noreply.codeberg.org>
Co-authored-by: bespinas <bespinas@noreply.codeberg.org>
Co-authored-by: futsuuu <futsuuu@noreply.codeberg.org>
Co-authored-by: justbispo <justbispo@noreply.codeberg.org>
Co-authored-by: luthkur <luthkur@noreply.codeberg.org>
Co-authored-by: nitromelon <nitromelon@noreply.codeberg.org>
Co-authored-by: rchk <rchk@noreply.codeberg.org>
Co-authored-by: tace16 <tace16@noreply.codeberg.org>
Co-authored-by: xtex <xtexchooser@duck.com>
Co-authored-by: γλωσσολαλιά <glossolalia@noreply.codeberg.org>
Co-authored-by: Кнⷫѧⷷ̈зⷮьⷬ Кропоткинъ <kropotkin@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/be/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/cs/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/de/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/el/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/eo/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/et/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/fi/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/fil/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/fr/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/isv/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/la/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/lv/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/nds/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/nl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/pl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/pt_PT/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ru/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ta/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/tt/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/uk/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/uz/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/be/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ca/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/et/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fi/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fil/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/id/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/isv/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ja/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/la/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/pl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ru/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/sv/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/vi/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/zh_Hans/
Translation: Forgejo/forgejo
Translation: Forgejo/forgejo-next
2025-11-28 05:41:40 +00:00
0ko
16e66254c6 chore(i18n): move some plural strings to json (#9463)
* move two strings to json so they have good culture aware plurals
* move formatting tags out of the strings
* simplify keys
* add basic testing

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/9463
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2025-09-29 09:27:50 +02:00
0ko
3f58c4de33 chore(i18n): clean up orphans (#9011)
Orphan strings are the ones left in non-en locale files after being removed from `en-US`. Weblate removes them automatically from JSONs but not from INIs.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/9011
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2025-08-24 10:55:02 +02:00
Codeberg Translate
dc6626453a
i18n: update of translations from Codeberg Translate
Co-authored-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Atul_Eterno <atul_eterno@noreply.codeberg.org>
Co-authored-by: Benedikt Straub <benedikt-straub@web.de>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-authored-by: Dirk <dirk@noreply.codeberg.org>
Co-authored-by: Edgarsons <edgarsons@noreply.codeberg.org>
Co-authored-by: Fjuro <git@alius.cz>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: Juno Takano <jutty@noreply.codeberg.org>
Co-authored-by: Laxystem <the@laxla.quest>
Co-authored-by: Miguel P.L <miguel_pl@noreply.codeberg.org>
Co-authored-by: Salif Mehmed <mail@salif.eu>
Co-authored-by: SomeTr <sometr@noreply.codeberg.org>
Co-authored-by: aivot-on <aivot-on@noreply.codeberg.org>
Co-authored-by: earl-warren <earl-warren@noreply.codeberg.org>
Co-authored-by: kne <kne@noreply.codeberg.org>
Co-authored-by: oster5 <oster5@noreply.codeberg.org>
Co-authored-by: readevalprintloop <readevalprintloop@noreply.codeberg.org>
Co-authored-by: tacaly <frederick@tacaly.com>
Co-authored-by: volkan <volkan@noreply.codeberg.org>
Co-authored-by: xtex <xtexchooser@duck.com>
Co-authored-by: yurtpage <yurtpage@noreply.codeberg.org>
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ar/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/be/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/bn/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ca/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/cs/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/da/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/de/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/es/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/fi/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/hu/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/id/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ja/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ko/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/lv/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/nds/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/nl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/pt_BR/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/ru/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/sr_SP/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/tr/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/uk/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/vi/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo-next/zh_Hant_HK/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ar/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/bg/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ca/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/cs/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/da/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/de/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/el/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/eo/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/es/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/et/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fa/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fi/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fil/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/fr/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ga/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/gl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/he/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/hu/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/id/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/is/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/it/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ja/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ko/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/lt/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ml/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/nds/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/pl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ro/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/ru/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/si/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/sk/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/sl/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/sv/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/tr/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/uk/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/zh_Hans/
Translate-URL: https://translate.codeberg.org/projects/forgejo/forgejo/zh_Hant/
Translation: Forgejo/forgejo
Translation: Forgejo/forgejo-next
2025-07-11 05:58:02 +00:00
Antonin Delpeuch
f5cbb9604d fix(ui): visually distinguish the branch name in action description (#8418)
## Checklist

### Tests

I don't think this deserves a test.

### 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.

### What does it fix

In the dashboard, when someone deletes a branch, the message
that is displayed doesn't distinguish the branch name from the rest
of the message visually. Because that's user-provided content, I find
it odd, as it blends in with the system-generated message.

For consistency with other messages (such as the one obtained when
renaming a repository), I propose to show the branch name in monospaced
font via the `<code></code>` markup.

I didn't update the other languages by fear of interfering with Weblate but
I would be happy to update the other languages accordingly if you wish so.

I didn't add any tests because I don't think it's necessary for such a small change.

#### Before
![image](/attachments/f158626e-fa58-4559-81b7-dd99045e1a33)
#### After
![image](/attachments/f12fe539-5c9a-4d13-a912-414591b8726d)
#### Renaming a repository (unchanged, just for reference)
![image](/attachments/a2366afb-6e24-4ad7-a41d-1c0ac6f04725)

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8418
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Antonin Delpeuch <antonin@delpeuch.eu>
Co-committed-by: Antonin Delpeuch <antonin@delpeuch.eu>
2025-07-06 14:26:20 +02:00
Codeberg Translate
414199fc66 i18n: update of translations from Codeberg Translate (#8238)
Translations update from [Codeberg Translate](https://translate.codeberg.org) for [Forgejo/forgejo](https://translate.codeberg.org/projects/forgejo/forgejo/).

It also includes following components:

* [Forgejo/forgejo-next](https://translate.codeberg.org/projects/forgejo/forgejo-next/)

Current translation status:

![Weblate translation status](https://translate.codeberg.org/widget/forgejo/forgejo/horizontal-auto.svg)

<!--start release-notes-assistant-->

## Release notes
<!--URL:https://codeberg.org/forgejo/forgejo-->
- Localization
  - [PR](https://codeberg.org/forgejo/forgejo/pulls/8238): <!--number 8238 --><!--line 0 --><!--description aTE4bjogdXBkYXRlIG9mIHRyYW5zbGF0aW9ucyBmcm9tIENvZGViZXJnIFRyYW5zbGF0ZQ==-->i18n: update of translations from Codeberg Translate<!--description-->
<!--end release-notes-assistant-->

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8238
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: Robert Wolff <mahlzahn@posteo.de>
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@codeberg.org>
Co-committed-by: Codeberg Translate <translate@codeberg.org>
2025-06-26 10:44:26 +02:00
0ko
7296f11288 i18n: translation updates from Gitea (#6958)
These are translations originally contributed to Gitea and picked from it's repo at fc1b383da9/options/locale.

Because commits in Gitea are missing attribtuion, it is not possible to credit translators in this commit. But you might have luck finding them in Gitea project on Crowdin: https://crowdin.com/project/gitea.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6958
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2025-02-16 09:38:39 +00:00
0ko
ac6f9ea17d i18n: avoid storing i18n linter exceptions for <filename> (#6237)
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6237
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-12-11 16:38:42 +00:00
Earl Warren
d0cb9326f5
chore(i18): cleanup locales
git clone https://codeberg.org/0ko/forgejo-snippets
At 4f82f2392532eb093a19ec6a40c8ce0491bcf30e
python3 ../forgejo-snippets/scripts/i18n-migrator/migrator.py -aow .
2024-12-05 07:59:14 +01:00
Gusted
dfe3ffc581 feat: harden localization against malicious HTML (#5703)
- Add a new script that proccess the localization files and verify that
they only contain HTML according to our strictly defined rules.
- This should make adding malicious HTML near-impossible.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/5703
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-committed-by: Gusted <postmaster@gusted.xyz>
2024-10-30 15:59:48 +00:00
Gergely Nagy
d3417688d6 Remove URLs from translations, part two
Followup to gitea#31950, replacing URLs in translations with
placeholders, for all languages

Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-09-12 17:33:30 +05:00
Gergely Nagy
b6b5d47dca Remove HTML tags from create branch and tag translations
This is a followup to gitea#31973, and removes the HTML tags for the
rest of the languages too.

Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu>
2024-09-12 17:29:52 +05:00
Codeberg Translate
a9d32b588a i18n: update of translations from Weblate (#4451)
Translations update from [Weblate](https://translate.codeberg.org) for [Forgejo/forgejo](https://translate.codeberg.org/projects/forgejo/forgejo/).

Current translation status:

![Weblate translation status](https://translate.codeberg.org/widget/forgejo/forgejo/horizontal-auto.svg)

Co-authored-by: Wuzzy <Wuzzy@users.noreply.translate.codeberg.org>
Co-authored-by: earl-warren <earl-warren@users.noreply.translate.codeberg.org>
Co-authored-by: 0ko <0ko@users.noreply.translate.codeberg.org>
Co-authored-by: manolosd <manolosd@users.noreply.translate.codeberg.org>
Co-authored-by: Nifou <Nifou@users.noreply.translate.codeberg.org>
Co-authored-by: kdh8219 <kdh8219@monamo.dev>
Co-authored-by: Kita Ikuyo <searinminecraft@courvix.com>
Co-authored-by: Anonymous <anonymous@users.noreply.translate.codeberg.org>
Co-authored-by: Fjuro <fjuro@alius.cz>
Co-authored-by: ch0ccyra1n <ch0ccyra1n@users.noreply.translate.codeberg.org>
Co-authored-by: mahlzahn <mahlzahn@users.noreply.translate.codeberg.org>
Co-authored-by: emansije <emansije@users.noreply.translate.codeberg.org>
Co-authored-by: Gusted <postmaster@gusted.xyz>
Co-authored-by: Xinayder <Xinayder@users.noreply.translate.codeberg.org>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4451
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Codeberg Translate <translate@noreply.codeberg.org>
Co-committed-by: Codeberg Translate <translate@noreply.codeberg.org>
2024-07-18 05:14:01 +00:00
Léana 江
3561cc710b [I18N] Injected updated time in translation string (#3837)
Hello,

It is more idiomatic to put the date/time before the action in Mandarin (in this context). To achieve this, instead of having the time following the string that's passed to the translating function, I added it as a parameter so that one can reference it and reorder the sentence for better translatability.

Only Traditional Chinese has been changed at the time of opening this PR, as this is more of a proof of concept and I would like to have feedbacks on whether this is a good solution or is there a better alternative.

Thank you and have a nice day :)

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3837
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: 0ko <0ko@noreply.codeberg.org>
Co-authored-by: Léana 江 <leana.jiang+git@icloud.com>
Co-committed-by: Léana 江 <leana.jiang+git@icloud.com>
2024-05-20 18:47:35 +00:00
0ko
e4e84a7ecf Improve translatability of "Transfer ownership" (#3739)
This text can have different forms in other languages depending on context.

The commit also contains a change to .editorconfig to prevent EoF changes when mass-replacing strings, as that causes unintentional merge conflicts with Weblate.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/3739
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
2024-05-13 18:22:16 +00:00
0ko
df2a83ed20
[I18N] Provide plural support for followers/following in user profiles 2024-04-05 06:53:22 +02:00
0ko
39b53ef56f Provide plural support for issue participants 2024-03-29 19:07:02 +05:00
0ko
debeedfe42
Add plural support for PR subtitles 2024-03-22 07:11:24 +01:00
0ko
ec5c68da4f [I18N] Use separate keys for tabs on login screen 2024-03-13 21:03:09 +05:00
GiteaBot
0f793ef6b9
[skip ci] Updated translations via Crowdin
(cherry picked from commit 2bd999a28b472f2909f6856740cdc712eb0ad136)

Conflicts:
	options/locale/locale_fr-FR.ini
	options/locale/locale_ja-JP.ini
	options/locale/locale_pt-PT.ini
	options/locale/locale_ru-RU.ini
	options/locale/locale_zh-CN.ini
        removal of
         runs.no_workflows.quick_start=
         runs.no_workflows.documentation=
2024-02-26 22:30:25 +01:00
0ko
e5b5585ee2 Fixes & Improvements for English locale 2024-02-22 22:33:22 +05:00
Codeberg Translate
e71cdd05d8 [I18N] Translations update from Weblate (#2316)
Translations update from [Weblate](https://translate.codeberg.org) for [Forgejo/forgejo](https://translate.codeberg.org/projects/forgejo/forgejo/).

Current translation status:

![Weblate translation status](https://translate.codeberg.org/widget/forgejo/forgejo/horizontal-auto.svg)

Co-authored-by: Mormegil <mormegil@centrum.cz>
Co-authored-by: nightm4re <matthiasf.wilke@yahoo.de>
Co-authored-by: fnetX <otto@codeberg.org>
Co-authored-by: 0que <0que@users.noreply.translate.codeberg.org>
Co-authored-by: kikocorreoso <kachine@protonmail.com>
Co-authored-by: earl-warren <contact@earl-warren.org>
Co-authored-by: bart <bart@bartmathijssen.com>
Co-authored-by: tranzystorekk <tranzystorek.io@protonmail.com>
Co-authored-by: Xinayder <me+codeberg@aoalmeida.com>
Co-authored-by: rmorettibr <rafael.moretti@protonmail.com>
Co-authored-by: Werenter <abelokopytov149@gmail.com>
Co-authored-by: dobrvlskyi <dobrovolskyi@peremozhemo.org>
Co-authored-by: ika <ika@thewizardbay.cc>
Co-authored-by: noureddin <noureddin@protonmail.com>
Co-authored-by: esensar <dev@ensarsarajcic.com>
Co-authored-by: mondstern <mondstern@monocles.de>
Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/2316
Co-authored-by: Codeberg Translate <translate@noreply.codeberg.org>
Co-committed-by: Codeberg Translate <translate@noreply.codeberg.org>
2024-02-09 12:43:51 +00:00
Earl Warren
34d21f6bc2
[I18N] add [common] as first line
To keep weblate happy as it would otherwise be duplicating the content
to all sections.

See https://github.com/WeblateOrg/weblate/issues/10831 for more information.

(cherry picked from commit 5ffc10a00e)
(cherry picked from commit 96d10e793b)
2024-02-05 15:10:55 +01:00
Earl Warren
20b5ca1e6c
[I18n] Forgejo translations
(cherry picked from commit 31378c71ef)

Conflicts:
	options/locale/locale_sk-SK.ini
	s/Gitea/Forgejo/

[I18n] Forgejo translations (squash) forgejo-branding

(cherry picked from commit c29b72ce6d)

[I18n] Forgejo translations (squash) forgejo-dependency

(cherry picked from commit 8c87dd7236)

[I18n] Forgejo translations (squash) russian from weblate

cherry-picked from https://codeberg.org/Werenter/forgejo-translation

(cherry picked from commit 7fec29809b)
(cherry picked from commit 1e3c6af5fe)

Conflicts:
	options/locale/locale_en-US.ini
	https://codeberg.org/forgejo/forgejo/pulls/2295
2024-02-05 15:10:32 +01:00
GiteaBot
ff7383e83a [skip ci] Updated translations via Crowdin 2023-12-26 00:24:05 +00:00
GiteaBot
baea205675 [skip ci] Updated translations via Crowdin 2023-12-12 00:25:05 +00:00
GiteaBot
976d1760ac [skip ci] Updated translations via Crowdin 2023-10-05 00:23:21 +00:00
GiteaBot
684ab403aa [skip ci] Updated translations via Crowdin 2023-09-16 00:21:59 +00:00
GiteaBot
445dbda276 [skip ci] Updated translations via Crowdin 2023-08-18 00:21:36 +00:00
GiteaBot
447ee6620f [skip ci] Updated translations via Crowdin 2023-06-08 00:28:45 +00:00
GiteaBot
1ef43f9bfe [skip ci] Updated translations via Crowdin 2023-04-25 00:07:53 +00:00
GiteaBot
30ea09c277 [skip ci] Updated translations via Crowdin 2023-04-23 00:07:50 +00:00
GiteaBot
5fcf328a8d [skip ci] Updated translations via Crowdin 2023-04-19 00:07:39 +00:00
GiteaBot
be7cd73439 [skip ci] Updated translations via Crowdin 2023-04-17 00:07:34 +00:00
GiteaBot
4299c3b7db [skip ci] Updated translations via Crowdin 2023-04-13 00:07:24 +00:00
GiteaBot
1380b87311 [skip ci] Updated translations via Crowdin 2023-04-12 00:08:36 +00:00
GiteaBot
ce8a6be55d [skip ci] Updated translations via Crowdin 2023-04-10 00:07:14 +00:00
GiteaBot
2d2b4bdf62 [skip ci] Updated translations via Crowdin 2023-03-26 00:16:31 +00:00
GiteaBot
e37ef4d374 [skip ci] Updated translations via Crowdin 2023-03-25 00:16:30 +00:00
GiteaBot
fe8b6cbd91 [skip ci] Updated translations via Crowdin 2023-03-18 00:16:14 +00:00
GiteaBot
023521b016 [skip ci] Updated translations via Crowdin 2023-03-12 00:16:02 +00:00
GiteaBot
390d270064 [skip ci] Updated translations via Crowdin 2023-03-05 00:15:41 +00:00
GiteaBot
067b0c2664 [skip ci] Updated translations via Crowdin 2023-02-28 00:15:54 +00:00
Lunny Xiao
b9a9b8e469
Revert "[skip ci] Updated translations via Crowdin" (#23167) 2023-02-27 08:58:38 +08:00