From 9c9eaca58143ade2606c6de8bd8bb2d42937e894 Mon Sep 17 00:00:00 2001 From: Dominik Rubo Date: Fri, 18 Jul 2025 00:44:10 +0200 Subject: [PATCH 1/8] Grammar - Corrections of tense, number, part of speech and other grammatical aspects - Revert errors introduced in b861d86f --- options/locale/locale_en-US.ini | 64 ++++++++++++++++----------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index c1a3d37037fe3..2e21e67d847cd 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -481,7 +481,7 @@ authorize_application_description = If you grant access, it will be able to acce authorize_application_with_scopes = With scopes: %s authorize_title = Authorize "%s" to access your account? authorization_failed = Authorization failed -authorization_failed_desc = The authorization failed because we detected an invalid request. Please contact the maintainer of the app you have tried to authorize. +authorization_failed_desc = The authorization failed because we detected an invalid request. Please contact the maintainer of the app you tried to authorize. sspi_auth_failed = SSPI authentication failed password_pwned = The password you chose is on a list of stolen passwords previously exposed in public data breaches. Please try again with a different password and consider changing this password elsewhere too. password_pwned_err = Could not complete request to HaveIBeenPwned @@ -702,7 +702,7 @@ block.info_3 = send you notifications by @mentioning your username block.info_4 = inviting you as a collaborator to their repositories block.info_5 = starring, forking or watching on repositories block.info_6 = opening and commenting on issues or pull requests -block.info_7 = reacting on your comments in issues or pull requests +block.info_7 = reacting to your comments in issues or pull requests block.user_to_block = User to block block.note = Note block.note.title = Optional note: @@ -855,7 +855,7 @@ gpg_key_matched_identities_long=The embedded identities in this key match the fo gpg_key_verified=Verified Key gpg_key_verified_long=Key has been verified with a token and can be used to verify commits matching any activated email addresses for this user in addition to any matched identities for this key. gpg_key_verify=Verify -gpg_invalid_token_signature = The provided GPG key, signature and token do not match or token is out-of-date. +gpg_invalid_token_signature = The provided GPG key, signature and token do not match or the token is out-of-date. gpg_token_required = You must provide a signature for the below token gpg_token = Token gpg_token_help = You can generate a signature using: @@ -865,7 +865,7 @@ verify_gpg_key_success = GPG key "%s" has been verified. ssh_key_verified=Verified Key ssh_key_verified_long=Key has been verified with a token and can be used to verify commits matching any activated email addresses for this user. ssh_key_verify=Verify -ssh_invalid_token_signature = The provided SSH key, signature or token do not match or token is out-of-date. +ssh_invalid_token_signature = The provided SSH key, signature or token do not match or the token is out-of-date. ssh_token_required = You must provide a signature for the below token ssh_token = Token ssh_token_help = You can generate a signature using: @@ -886,7 +886,7 @@ gpg_key_deletion = Remove GPG Key ssh_principal_deletion = Remove SSH Certificate Principal ssh_key_deletion_desc = Removing an SSH key revokes its access to your account. Continue? gpg_key_deletion_desc = Removing a GPG key un-verifies commits signed by it. Continue? -ssh_principal_deletion_desc = Removing a SSH Certificate Principal revokes its access to your account. Continue? +ssh_principal_deletion_desc = Removing an SSH Certificate Principal revokes its access to your account. Continue? ssh_key_deletion_success = The SSH key has been removed. gpg_key_deletion_success = The GPG key has been removed. ssh_principal_deletion_success = The principal has been removed. @@ -976,7 +976,7 @@ twofa_not_enrolled = Your account is not currently enrolled in two-factor authen twofa_disable = Disable Two-Factor Authentication twofa_scratch_token_regenerate = Regenerate Single-Use Recovery Key twofa_scratch_token_regenerated = Your single-use recovery key is now %s. Store it in a safe place, as it will not be shown again. -twofa_enroll = Enroll into Two-Factor Authentication +twofa_enroll = Enroll in Two-Factor Authentication twofa_disable_note = You can disable two-factor authentication if needed. twofa_disable_desc = Disabling two-factor authentication will make your account less secure. Continue? regenerate_scratch_token_desc = If you misplaced your recovery key or have already used it to sign in, you can reset it here. @@ -1164,8 +1164,8 @@ template.issue_labels = Issue Labels template.one_item = Must select at least one template item template.invalid = Must select a template repository -archive.title = This repo is archived. You can view files and clone it. You cannot open issues, pull requests or push a commit. -archive.title_date = This repository has been archived on %s. You can view files and clone it. You cannot open issues, pull requests or push a commit. +archive.title = This repo is archived. You can view files and clone it. You cannot open issues or pull requests or push a commit. +archive.title_date = This repository has been archived on %s. You can view files and clone it. You cannot open issues or pull requests or push a commit. archive.issue.nocomment = This repo is archived. You cannot comment on issues. archive.pull.nocomment = This repo is archived. You cannot comment on pull requests. @@ -1829,7 +1829,7 @@ issues.review.requested = Review pending issues.review.rejected = Changes requested issues.review.stale = Updated since approval issues.review.unofficial = Uncounted approval -issues.assignee.error = Not all assignees was added due to an unexpected error. +issues.assignee.error = Not all assignees were added due to an unexpected error. issues.reference_issue.body = Body issues.content_history.deleted = deleted issues.content_history.edited = edited @@ -2159,7 +2159,7 @@ settings.public_access = Public Access settings.public_access_desc = Configure public visitor's access permissions to override the defaults of this repository. settings.public_access.docs.not_set = Not Set: no extra public access permission. The visitor's permission follows the repository's visibility and member permissions. settings.public_access.docs.anonymous_read = Anonymous Read: users who are not logged in can access the unit with read permission. -settings.public_access.docs.everyone_read = Everyone Read: all logged-in users can access the unit with read permission. Read permission of issues/pull-requests units also means users can create new issues/pull-requests. +settings.public_access.docs.everyone_read = Everyone Read: all logged-in users can access the unit with read permission. Read permission of issue/pull-request units also means users can create new issues/pull requests. settings.public_access.docs.everyone_write = Everyone Write: all logged-in users have write permission to the unit. Only Wiki unit supports this permission. settings.collaboration = Collaborators settings.collaboration.admin = Administrator @@ -2274,7 +2274,7 @@ settings.transfer_abort_invalid = You cannot cancel a non existent repository tr settings.transfer_abort_success = The repository transfer to %s was successfully canceled. settings.transfer_desc = Transfer this repository to a user or to an organization for which you have administrator rights. settings.transfer_form_title = Enter the repository name as confirmation: -settings.transfer_in_progress = There is currently an ongoing transfer. Please cancel it if you will like to transfer this repository to another user. +settings.transfer_in_progress = There is currently an ongoing transfer. Please cancel it if you would like to transfer this repository to another user. settings.transfer_notices_1 = - You will lose access to the repository if you transfer it to an individual user. settings.transfer_notices_2 = - You will keep access to the repository if you transfer it to an organization that you (co-)own. settings.transfer_notices_3 = - If the repository is private and is transferred to an individual user, this action makes sure that the user does have at least read permission (and changes permissions if necessary). @@ -2326,8 +2326,8 @@ settings.team_not_in_organization = The team is not in the same organization as settings.teams = Teams settings.add_team = Add Team settings.add_team_duplicate = Team already has the repository -settings.add_team_success = The team now have access to the repository. -settings.change_team_permission_tip = Team's permission is set on the team setting page and can't be changed per repository +settings.add_team_success = The team now has access to the repository. +settings.change_team_permission_tip = Team's permission is set on the team settings page and can't be changed per repository settings.delete_team_tip = This team has access to all repositories and can't be removed settings.remove_team_success = The team's access to the repository has been removed. settings.add_webhook = Add Webhook @@ -2772,7 +2772,7 @@ branch.new_branch_from = Create new branch from "%s" branch.renamed = Branch %s was renamed to %s. branch.rename_default_or_protected_branch_error = Only admins can rename default or protected branches. branch.rename_protected_branch_failed = This branch is protected by glob-based protection rules. -branch.commits_divergence_from = Commits divergence: %[1]d behind and %[2]d ahead of %[3]s +branch.commits_divergence_from = Commit divergence: %[1]d behind and %[2]d ahead of %[3]s branch.commits_no_divergence = The same as branch %[1]s tag.create_tag = Create tag %s @@ -2853,7 +2853,7 @@ settings.update_setting_success = Organization settings have been updated. settings.rename = Rename Organization settings.rename_desc = Changing the organization name will also change your organization's URL and free the old name. -settings.rename_success = Organization %[1]s have been renamed to %[2]s successfully. +settings.rename_success = Organization %[1]s has been renamed to %[2]s successfully. settings.rename_no_change = Organization name is no change. settings.rename_new_org_name = New Organization Name settings.rename_failed = Rename Organization failed because of internal error @@ -3261,7 +3261,7 @@ auths.oauth2_map_group_to_team = Map claimed groups to Organization teams. (Opti auths.oauth2_map_group_to_team_removal = Remove users from synchronized teams if user does not belong to corresponding group. auths.enable_auto_register = Enable Auto Registration auths.sspi_auto_create_users = Automatically create users -auths.sspi_auto_create_users_helper = Allow SSPI auth method to automatically create new accounts for users that login for the first time +auths.sspi_auto_create_users_helper = Allow SSPI auth method to automatically create new accounts for users that log in for the first time auths.sspi_auto_activate_users = Automatically activate users auths.sspi_auto_activate_users_helper = Allow SSPI auth method to automatically activate new users auths.sspi_strip_domain_names = Remove domain names from usernames @@ -3269,7 +3269,7 @@ auths.sspi_strip_domain_names_helper = If checked, domain names will be removed auths.sspi_separator_replacement = Separator to use instead of \, / and @ auths.sspi_separator_replacement_helper = The character to use to replace the separators of down-level logon names (eg. the \ in "DOMAIN\user") and user principal names (eg. the @ in "user@example.org"). auths.sspi_default_language = Default user language -auths.sspi_default_language_helper = Default language for users automatically created by SSPI auth method. Leave empty if you prefer language to be automatically detected. +auths.sspi_default_language_helper = Default language for users automatically created by SSPI auth method. Leave empty if you prefer the language to be automatically detected. auths.tips = Tips auths.tips.oauth2.general = OAuth2 Authentication auths.tips.oauth2.general.tip = When registering a new OAuth2 authentication, the callback/redirect URL should be: @@ -3500,7 +3500,7 @@ notices.delete_success = The system notices have been deleted. self_check.no_problem_found = No problem found yet. self_check.startup_warnings = Startup warnings: self_check.database_collation_mismatch = Expect database to use collation: %s -self_check.database_collation_case_insensitive = Database is using a collation %s, which is an insensitive collation. Although Gitea could work with it, there might be some rare cases which don't work as expected. +self_check.database_collation_case_insensitive = Database is using collation %s, which is an insensitive collation. Although Gitea could work with it, there might be some rare cases which don't work as expected. self_check.database_inconsistent_collation_columns = Database is using collation %s, but these columns are using mismatched collations. It might cause some unexpected problems. self_check.database_fix_mysql = For MySQL/MariaDB users, you could use the "gitea doctor convert" command to fix the collation problems, or you could also fix the problem by "ALTER ... COLLATE ..." SQLs manually. self_check.database_fix_mssql = For MSSQL users, you could only fix the problem by "ALTER ... COLLATE ..." SQLs manually at the moment. @@ -3627,7 +3627,7 @@ versions.view_all = View all dependency.id = ID dependency.version = Version search_in_external_registry = Search in %s -alpine.registry = Setup this registry by adding the url in your /etc/apk/repositories file: +alpine.registry = Set up this registry by adding the url in your /etc/apk/repositories file: alpine.registry.key = Download the registry public RSA key into the /etc/apk/keys/ folder to verify the index signature: alpine.registry.info = Choose $branch and $repository from the list below. alpine.install = To install the package, run the following command: @@ -3640,18 +3640,18 @@ arch.install = Sync package with pacman: arch.repository = Repository Info arch.repository.repositories = Repositories arch.repository.architectures = Architectures -cargo.registry = Setup this registry in the Cargo configuration file (for example ~/.cargo/config.toml): +cargo.registry = Set up this registry in the Cargo configuration file (for example ~/.cargo/config.toml): cargo.install = To install the package using Cargo, run the following command: -chef.registry = Setup this registry in your ~/.chef/config.rb file: +chef.registry = Set up this registry in your ~/.chef/config.rb file: chef.install = To install the package, run the following command: -composer.registry = Setup this registry in your ~/.composer/config.json file: +composer.registry = Set up this registry in your ~/.composer/config.json file: composer.install = To install the package using Composer, run the following command: composer.dependencies = Dependencies composer.dependencies.development = Development Dependencies conan.details.repository = Repository -conan.registry = Setup this registry from the command line: +conan.registry = Set up this registry from the command line: conan.install = To install the package using Conan, run the following command: -conda.registry = Setup this registry as a Conda repository in your .condarc file: +conda.registry = Set up this registry as a Conda repository in your .condarc file: conda.install = To install the package using Conda, run the following command: container.details.type = Image Type container.details.platform = Platform @@ -3663,9 +3663,9 @@ container.layers = Image Layers container.labels = Labels container.labels.key = Key container.labels.value = Value -cran.registry = Setup this registry in your Rprofile.site file: +cran.registry = Set up this registry in your Rprofile.site file: cran.install = To install the package, run the following command: -debian.registry = Setup this registry from the command line: +debian.registry = Set up this registry from the command line: debian.registry.info = Choose $distribution and $component from the list below. debian.install = To install the package, run the following command: debian.repository = Repository Info @@ -3674,16 +3674,16 @@ debian.repository.components = Components debian.repository.architectures = Architectures generic.download = Download package from the command line: go.install = Install the package from the command line: -helm.registry = Setup this registry from the command line: +helm.registry = Set up this registry from the command line: helm.install = To install the package, run the following command: -maven.registry = Setup this registry in your project pom.xml file: +maven.registry = Set up this registry in your project pom.xml file: maven.install = To use the package include the following in the dependencies block in the pom.xml file: maven.install2 = Run via command line: maven.download = To download the dependency, run via command line: -nuget.registry = Setup this registry from the command line: +nuget.registry = Set up this registry from the command line: nuget.install = To install the package using NuGet, run the following command: nuget.dependency.framework = Target Framework -npm.registry = Setup this registry in your project .npmrc file: +npm.registry = Set up this registry in your project .npmrc file: npm.install = To install the package using npm, run the following command: npm.install2 = or add it to the package.json file: npm.dependencies = Dependencies @@ -3695,7 +3695,7 @@ npm.details.tag = Tag pub.install = To install the package using Dart, run the following command: pypi.requires = Requires Python pypi.install = To install the package using pip, run the following command: -rpm.registry = Setup this registry from the command line: +rpm.registry = Set up this registry from the command line: rpm.distros.redhat = on RedHat based distributions rpm.distros.suse = on SUSE based distributions rpm.install = To install the package, run the following command: @@ -3708,7 +3708,7 @@ rubygems.dependencies.runtime = Runtime Dependencies rubygems.dependencies.development = Development Dependencies rubygems.required.ruby = Requires Ruby version rubygems.required.rubygems = Requires RubyGem version -swift.registry = Setup this registry from the command line: +swift.registry = Set up this registry from the command line: swift.install = Add the package in your Package.swift file: swift.install2 = and run the following command: vagrant.install = To add a Vagrant box, run the following command: From 93a984ea93cc8cb8457663c792882e76bb45e870 Mon Sep 17 00:00:00 2001 From: Dominik Rubo Date: Fri, 18 Jul 2025 01:08:49 +0200 Subject: [PATCH 2/8] Punctuation - Use ellipsis consistently, replacing those instances where separate dot characters were used. Lead ellipsis with non-breaking space. In quoted code, separate dots are left in place, as ease of typing and identifying characters takes precedence over typography there. - Use periods instead of commas to separate sentences - Add commas where they aid parsing of a sentence - Add periods after sentences where neighboring sentences in the UI have one - Remove them where neighboring sentences in the UI don't have one - Use en dash instead of hyphen in range specifier - Use em dash instead of hyphen to separate summaries - Use apostrophe instead of quotation mark in possessives - Un-parenthesize where parentheses are not needed - Punctuate "e.g." --- options/locale/locale_en-US.ini | 198 +++++++++++++++---------------- tests/integration/editor_test.go | 2 +- 2 files changed, 100 insertions(+), 100 deletions(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index 2e21e67d847cd..a0bd4e1ca6c07 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -18,8 +18,8 @@ language = Language notifications = Notifications active_stopwatch = Active Time Tracker tracked_time_summary = Summary of tracked time based on filters of issue list -create_new = Create… -user_profile_and_more = Profile and Settings… +create_new = Create … +user_profile_and_more = Profile and Settings … signed_in_as = Signed in as enable_javascript = This website requires JavaScript. toc = Table of Contents @@ -39,12 +39,12 @@ passcode = Passcode webauthn_insert_key = Insert your security key webauthn_sign_in = Press the button on your security key. If your security key has no button, re-insert it. -webauthn_press_button = Please press the button on your security key… +webauthn_press_button = Please press the button on your security key … webauthn_use_twofa = Use a two-factor code from your phone webauthn_error = Could not read your security key. webauthn_unsupported_browser = Your browser does not currently support WebAuthn. webauthn_error_unknown = An unknown error occurred. Please retry. -webauthn_error_insecure = WebAuthn only supports secure connections. For testing over HTTP, you can use the origin "localhost" or "127.0.0.1" +webauthn_error_insecure = WebAuthn only supports secure connections. For testing over HTTP, you can use the origin "localhost" or "127.0.0.1". webauthn_error_unable_to_process = The server could not process your request. webauthn_error_duplicated = The security key is not permitted for this request. Please make sure that the key is not already registered. webauthn_error_empty = You must set a name for this key. @@ -112,7 +112,7 @@ copy_type_unsupported = This file type cannot be copied write = Write preview = Preview -loading = Loading… +loading = Loading … files = Files error = Error @@ -168,7 +168,7 @@ no_results_found = No results found. internal_error_skipped = Internal error occurred but is skipped: %s [search] -search = Search... +search = Search … type_tooltip = Search type fuzzy = Fuzzy fuzzy_tooltip = Include results that closely match the search term @@ -178,23 +178,23 @@ regexp = Regexp regexp_tooltip = Include only results that match the regexp search term exact = Exact exact_tooltip = Include only results that match the exact search term -repo_kind = Search repos... -user_kind = Search users... -org_kind = Search orgs... -team_kind = Search teams... -code_kind = Search code... +repo_kind = Search repos … +user_kind = Search users … +org_kind = Search orgs … +team_kind = Search teams … +code_kind = Search code … code_search_unavailable = Code search is currently not available. Please contact the site administrator. code_search_by_git_grep = Current code search results are provided by "git grep". There might be better results if site administrator enables Repository Indexer. -package_kind = Search packages... -project_kind = Search projects... -branch_kind = Search branches... -tag_kind = Search tags... +package_kind = Search packages … +project_kind = Search projects … +branch_kind = Search branches … +tag_kind = Search tags … tag_tooltip = Search for matching tags. Use '%' to match any sequence of numbers. -commit_kind = Search commits... -runner_kind = Search runners... +commit_kind = Search commits … +runner_kind = Search runners … no_results = No matching results found. -issue_kind = Search issues... -pull_kind = Search pulls... +issue_kind = Search issues … +pull_kind = Search pulls … keyword_search_unavailable = Searching by keyword is currently not available. Please contact the site administrator. [aria] @@ -230,8 +230,8 @@ buttons.enable_monospace_font = Enable monospace font buttons.disable_monospace_font = Disable monospace font [filter] -string.asc = A - Z -string.desc = Z - A +string.asc = A–Z +string.desc = Z–A [error] occurred = An error occurred @@ -252,7 +252,7 @@ license_desc = Go get [install] install = Installation -installing_desc = Installing now, please wait... +installing_desc = Installing now, please wait … title = Initial Configuration docker_helper = If you run Gitea inside Docker, please read the documentation before changing any settings. require_db_desc = Gitea requires MySQL, PostgreSQL, MSSQL, SQLite3 or TiDB (MySQL protocol). @@ -269,15 +269,15 @@ path = Path sqlite_helper = File path for the SQLite3 database.
Enter an absolute path if you run Gitea as a service. reinstall_error = You are trying to install into an existing Gitea database reinstall_confirm_message = Re-installing with an existing Gitea database can cause multiple problems. In most cases, you should use your existing "app.ini" to run Gitea. If you know what you are doing, confirm the following: -reinstall_confirm_check_1 = The data encrypted by the SECRET_KEY in app.ini may be lost: users may not be able to log in with 2FA/OTP & mirrors may not function correctly. By checking this box you confirm that the current app.ini file contains the correct the SECRET_KEY. -reinstall_confirm_check_2 = The repositories and settings may need to be re-synchronized. By checking this box you confirm that you will resynchronize the hooks for the repositories and authorized_keys file manually. You confirm that you will ensure that repository and mirror settings are correct. +reinstall_confirm_check_1 = The data encrypted by the SECRET_KEY in app.ini may be lost: users may not be able to log in with 2FA/OTP & mirrors may not function correctly. By checking this box, you confirm that the current app.ini file contains the correct the SECRET_KEY. +reinstall_confirm_check_2 = The repositories and settings may need to be re-synchronized. By checking this box, you confirm that you will resynchronize the hooks for the repositories and authorized_keys file manually. You confirm that you will ensure that repository and mirror settings are correct. reinstall_confirm_check_3 = You confirm that you are absolutely sure that this Gitea is running with the correct app.ini location and that you are sure that you have to re-install. You confirm that you acknowledge the above risks. err_empty_db_path = The SQLite3 database path cannot be empty. no_admin_and_disable_registration = You cannot disable user self-registration without creating an administrator account. err_empty_admin_password = The administrator password cannot be empty. err_empty_admin_email = The administrator email cannot be empty. -err_admin_name_is_reserved = Administrator Username is invalid, username is reserved -err_admin_name_pattern_not_allowed = Administrator username is invalid, the username matches a reserved pattern +err_admin_name_is_reserved = Administrator username is invalid. Username is reserved. +err_admin_name_pattern_not_allowed = Administrator username is invalid. The username matches a reserved pattern. err_admin_name_is_invalid = Administrator Username is invalid general_title = General Settings @@ -371,7 +371,7 @@ uname_holder = Username or Email Address password_holder = Password switch_dashboard_context = Switch Dashboard Context my_repos = Repositories -show_more_repos = Show more repositories… +show_more_repos = Show more repositories … collaborative_repos = Collaborative Repositories my_orgs = My Organizations my_mirrors = My Mirrors @@ -431,7 +431,7 @@ reset_password_mail_sent_prompt = A confirmation email has been sent to %s%s). If you haven't received a confirmation email or need to resend a new one, please click on the button below. change_unconfirmed_mail_address = If your registration email address is incorrect, you can change it here and resend a new confirmation email. @@ -521,8 +521,8 @@ issue_assigned.issue = @%[1]s assigned you to issue %[2]s in repository %[3]s. issue.x_mentioned_you = @%s mentioned you: issue.action.force_push = %[1]s force-pushed the %[2]s from %[3]s to %[4]s. -issue.action.push_1 = @%[1]s pushed %[3]d commit to %[2]s -issue.action.push_n = @%[1]s pushed %[3]d commits to %[2]s +issue.action.push_1 = @%[1]s pushed %[3]d commit to %[2]s. +issue.action.push_n = @%[1]s pushed %[3]d commits to %[2]s. issue.action.close = @%[1]s closed #%[2]d. issue.action.reopen = @%[1]s reopened #%[2]d. issue.action.merge = @%[1]s merged #%[2]d into %[3]s. @@ -545,7 +545,7 @@ release.download.targz = Source Code (TAR.GZ) repo.transfer.subject_to = %s would like to transfer "%s" to %s repo.transfer.subject_to_you = %s would like to transfer "%s" to you repo.transfer.to_you = you -repo.transfer.body = To accept or reject it visit %s or just ignore it. +repo.transfer.body = To accept or reject it, visit %s or just ignore it. repo.collaborator.added.subject = %s added you to %s repo.collaborator.added.text = You have been added as a collaborator of repository: @@ -647,14 +647,14 @@ invalid_ssh_key = Cannot verify your SSH key: %s invalid_gpg_key = Cannot verify your GPG key: %s invalid_ssh_principal = Invalid principal: %s must_use_public_key = The key you provided is a private key. Please do not upload your private key anywhere. Use your public key instead. -unable_verify_ssh_key = "Cannot verify the SSH key, double-check it for mistakes." +unable_verify_ssh_key = "Cannot verify the SSH key. Double-check it for mistakes." auth_failed = Authentication failed: %v -still_own_repo = "Your account owns one or more repositories, delete or transfer them first." -still_has_org = "Your account is a member of one or more organizations, leave them first." -still_own_packages = "Your account owns one or more packages, delete them first." -org_still_own_repo = "This organization still owns one or more repositories, delete or transfer them first." -org_still_own_packages = "This organization still owns one or more packages, delete them first." +still_own_repo = "Your account owns one or more repositories. Delete or transfer them first." +still_has_org = "Your account is a member of one or more organizations. Leave them first." +still_own_packages = "Your account owns one or more packages. Delete them first." +org_still_own_repo = "This organization still owns one or more repositories. Delete or transfer them first." +org_still_own_packages = "This organization still owns one or more packages. Delete them first." target_branch_not_exist = Target branch does not exist. target_ref_not_exist = Target ref does not exist %s @@ -662,7 +662,7 @@ target_ref_not_exist = Target ref does not exist %s admin_cannot_delete_self = You cannot delete yourself when you are an admin. Please remove your admin privileges first. [user] -change_avatar = Change your avatar… +change_avatar = Change your avatar … joined_on = Joined on %s repositories = Repositories activity = Public Activity @@ -753,7 +753,7 @@ cancel = Cancel language = Language ui = Theme hidden_comment_types = Hidden comment types -hidden_comment_types_description = Comment types checked here will not be shown inside issue pages. Checking "Label" for example removes all "{user} added/removed {label}" comments. +hidden_comment_types_description = Comment types checked here will not be shown inside issue pages. Checking "Label", for example, removes all "{user} added/removed {label}" comments. hidden_comment_types.ref_tooltip = Comments where this issue was referenced from another issue/commit/… hidden_comment_types.issue_ref_tooltip = Comments where the user changes the branch/tag associated with the issue comment_type_group_reference = Reference @@ -809,7 +809,7 @@ requires_activation = Requires activation primary_email = Make Primary activate_email = Send Activation activations_pending = Activations Pending -can_not_add_email_activations_pending = There is a pending activation, try again in a few minutes if you want to add a new email. +can_not_add_email_activations_pending = There is a pending activation. Try again in a few minutes if you want to add a new email. delete_email = Remove email_deletion = Remove Email Address email_deletion_desc = This email address and related information will be removed from your account. Git commits by this email address will remain unchanged. Continue? @@ -855,7 +855,7 @@ gpg_key_matched_identities_long=The embedded identities in this key match the fo gpg_key_verified=Verified Key gpg_key_verified_long=Key has been verified with a token and can be used to verify commits matching any activated email addresses for this user in addition to any matched identities for this key. gpg_key_verify=Verify -gpg_invalid_token_signature = The provided GPG key, signature and token do not match or the token is out-of-date. +gpg_invalid_token_signature = The provided GPG key, signature and token do not match, or the token is out-of-date. gpg_token_required = You must provide a signature for the below token gpg_token = Token gpg_token_help = You can generate a signature using: @@ -865,7 +865,7 @@ verify_gpg_key_success = GPG key "%s" has been verified. ssh_key_verified=Verified Key ssh_key_verified_long=Key has been verified with a token and can be used to verify commits matching any activated email addresses for this user. ssh_key_verify=Verify -ssh_invalid_token_signature = The provided SSH key, signature or token do not match or the token is out-of-date. +ssh_invalid_token_signature = The provided SSH key, signature or token do not match, or the token is out-of-date. ssh_token_required = You must provide a signature for the below token ssh_token = Token ssh_token_help = You can generate a signature using: @@ -948,7 +948,7 @@ create_oauth2_application_button = Create Application create_oauth2_application_success = You have successfully created a new OAuth2 application. update_oauth2_application_success = You have successfully updated the OAuth2 application. oauth2_application_name = Application Name -oauth2_confidential_client = Confidential Client. Select for apps that keep the secret confidential, such as web apps. Do not select for native apps including desktop and mobile apps. +oauth2_confidential_client = Confidential Client. Select for apps that keep the secret confidential, such as web apps. Do not select for native apps, including desktop and mobile apps. oauth2_skip_secondary_authorization = Skip authorization for public clients after granting access once. May pose a security risk. oauth2_redirect_uris = Redirect URIs. Please use a new line for every URI. save_application = Save @@ -992,7 +992,7 @@ webauthn_desc = Security keys are hardware devices containing cryptographic keys webauthn_register_key = Add Security Key webauthn_nickname = Nickname webauthn_delete_key = Remove Security Key -webauthn_delete_key_desc = If you remove a security key you can no longer sign in with it. Continue? +webauthn_delete_key_desc = If you remove a security key, you can no longer sign in with it. Continue? webauthn_key_loss_warning = If you lose your security keys, you will lose access to your account. webauthn_alternative_tip = You may want to configure an additional authentication method. @@ -1122,7 +1122,7 @@ stars = Stars reactions_more = and %d more unit_disabled = The site administrator has disabled this repository section. language_other = Other -adopt_search = Enter username to search for unadopted repositories... (leave blank to find all) +adopt_search = Enter username to search for unadopted repositories … (leave blank to find all) adopt_preexisting_label = Adopt Files adopt_preexisting = Adopt pre-existing files adopt_preexisting_content = Create repository from %s @@ -1182,7 +1182,7 @@ migrate_options_lfs = Migrate LFS files migrate_options_lfs_endpoint.label = LFS Endpoint migrate_options_lfs_endpoint.description = Migration will attempt to use your Git remote to determine the LFS server. You can also specify a custom endpoint if the repository LFS data is stored somewhere else. migrate_options_lfs_endpoint.description.local = A local server path is supported too. -migrate_options_lfs_endpoint.placeholder = If left blank, the endpoint will be derived from the clone URL +migrate_options_lfs_endpoint.placeholder = If left blank, the endpoint will be derived from the clone URL. migrate_items = Migration Items migrate_items_wiki = Wiki migrate_items_milestones = Milestones @@ -1194,10 +1194,10 @@ migrate_items_releases = Releases migrate_repo = Migrate Repository migrate.clone_address = Migrate / Clone From URL migrate.clone_address_desc = The HTTP(S) or Git 'clone' URL of an existing repository -migrate.github_token_desc = You can put one or more tokens here separated by commas to make migrating faster by circumventing the GitHub API rate limit. WARNING: Abusing this feature may violate the service provider's policy and may lead to getting your account(s) blocked. +migrate.github_token_desc = You can put one or more tokens here, separated by commas, to make migrating faster by circumventing the GitHub API rate limit. WARNING: Abusing this feature may violate the service provider's policy and may lead to getting your account(s) blocked. migrate.clone_local_path = or a local server path migrate.permission_denied = You are not allowed to import local repositories. -migrate.permission_denied_blocked = You cannot import from disallowed hosts, please ask the admin to check ALLOWED_DOMAINS/ALLOW_LOCALNETWORKS/BLOCKED_DOMAINS settings. +migrate.permission_denied_blocked = You cannot import from disallowed hosts. Please ask the admin to check ALLOWED_DOMAINS/ALLOW_LOCALNETWORKS/BLOCKED_DOMAINS settings. migrate.invalid_local_path = "The local path is invalid. It doesn't exist or is not a directory." migrate.invalid_lfs_endpoint = The LFS endpoint is not valid. migrate.failed = Migration failed: %v @@ -1205,7 +1205,7 @@ migrate.migrate_items_options = Access Token is required to migrate additional i migrated_from = Migrated from %[2]s migrated_from_fake = Migrated From %[1]s migrate.migrate = Migrate From %s -migrate.migrating = Migrating from %s ... +migrate.migrating = Migrating from %s … migrate.migrating_failed = Migrating from %s failed. migrate.migrating_failed.error = Failed to migrate: %s migrate.migrating_failed_no_addr = Migration failed. @@ -1345,7 +1345,7 @@ editor.fork_before_edit = You must fork this repository to make or propose chang editor.delete_this_file = Delete File editor.must_have_write_access = You must have write access to make or propose changes to this file. editor.file_delete_success = File "%s" has been deleted. -editor.name_your_file = Name your file… +editor.name_your_file = Name your file … editor.filename_help = Add a directory by typing its name followed by a slash ('/'). Remove a directory by typing backspace at the beginning of the input field. editor.or = or editor.cancel_lower = Cancel @@ -1359,14 +1359,14 @@ editor.patch = Apply Patch editor.patching = Patching: editor.fail_to_apply_patch = Unable to apply patch editor.new_patch = New Patch -editor.commit_message_desc = Add an optional extended description… +editor.commit_message_desc = Add an optional extended description … editor.signoff_desc = Add a Signed-off-by trailer by the committer at the end of the commit log message. editor.commit_directly_to_this_branch = Commit directly to the %s branch. editor.create_new_branch = Create a new branch for this commit and start a pull request. editor.create_new_branch_np = Create a new branch for this commit. editor.propose_file_change = Propose file change editor.new_branch_name = Name the new branch for this commit -editor.new_branch_name_desc = New branch name… +editor.new_branch_name_desc = New branch name … editor.cancel = Cancel editor.filename_cannot_be_empty = The filename cannot be empty. editor.filename_is_invalid = The filename is invalid: "%s". @@ -1375,12 +1375,12 @@ editor.invalid_commit_email = The email for the commit is invalid. editor.branch_does_not_exist = Branch "%s" does not exist in this repository. editor.branch_already_exists = Branch "%s" already exists in this repository. editor.directory_is_a_file = Directory name "%s" is already used as a filename in this repository. -editor.file_is_a_symlink = `"%s" is a symbolic link. Symbolic links cannot be edited in the web editor` +editor.file_is_a_symlink = `"%s" is a symbolic link. Symbolic links cannot be edited in the web editor.` editor.filename_is_a_directory = Filename "%s" is already used as a directory name in this repository. editor.file_modifying_no_longer_exists = The file being modified, "%s", no longer exists in this repository. editor.file_changed_while_editing = The file contents have changed since you started editing. Click here to see them or Commit Changes again to overwrite them. editor.file_already_exists = A file named "%s" already exists in this repository. -editor.commit_id_not_matching = The Commit ID does not match the ID when you began editing. Commit into a patch branch and then merge. +editor.commit_id_not_matching = The Commit ID does not match the ID when you began editing. Commit into a patch branch and then merge. editor.push_out_of_date = The push appears to be out of date. editor.commit_empty_file_header = Commit an empty file editor.commit_empty_file_text = The file you're about to commit is empty. Proceed? @@ -1388,7 +1388,7 @@ editor.no_changes_to_show = There are no changes to show. editor.push_rejected_no_message = The change was rejected by the server without a message. Please check Git Hooks. editor.push_rejected = The change was rejected by the server. Please check Git Hooks. editor.push_rejected_summary = Full Rejection Message: -editor.add_subdir = Add a directory… +editor.add_subdir = Add a directory … editor.unable_to_upload_files = Failed to upload files to "%s" with error: %v editor.upload_file_is_locked = File "%s" is locked by %s. editor.upload_files_to_dir = Upload files to "%s" @@ -1406,7 +1406,7 @@ editor.fork_create_description = You cannot edit this repository directly. Inste editor.fork_edit_description = You cannot edit this repository directly. The changes will be written to your fork %s, so you can create a pull request. editor.fork_not_editable = You have forked this repository but your fork is not editable. editor.fork_failed_to_push_branch = Failed to push branch %s to your repository. -editor.fork_branch_exists = Branch "%s" already exists in your fork, please choose a new branch name. +editor.fork_branch_exists = Branch "%s" already exists in your fork. Please choose a new branch name. commits.desc = Browse source code change history. commits.commits = Commits @@ -1508,7 +1508,7 @@ issues.new.clear_assignees = Clear assignees issues.new.no_assignees = No Assignees issues.new.no_reviewers = No Reviewers issues.new.blocked_user = Cannot create issue because you are blocked by the repository owner. -issues.edit.already_changed = Unable to save changes to the issue. It appears the content has already been changed by another user. Please refresh the page and try editing again to avoid overwriting their changes +issues.edit.already_changed = Unable to save changes to the issue. It appears the content has already been changed by another user. Please refresh the page and try editing again to avoid overwriting their changes. issues.edit.blocked_user = Cannot edit content because you are blocked by the poster or repository owner. issues.choose.get_started = Get Started issues.choose.open_external_link = Open @@ -1770,7 +1770,7 @@ issues.dependency.pr_no_dependencies = No dependencies set. issues.dependency.no_permission_1 = "You do not have permission to read %d dependency" issues.dependency.no_permission_n = "You do not have permission to read %d dependencies" issues.dependency.no_permission.can_remove = "You do not have permission to read this dependency but can remove this dependency" -issues.dependency.add = Add dependency… +issues.dependency.add = Add dependency … issues.dependency.cancel = Cancel issues.dependency.remove = Remove issues.dependency.remove_info = Remove this dependency @@ -1799,7 +1799,7 @@ issues.review.self.approval = You cannot approve your own pull request. issues.review.self.rejection = You cannot request changes on your own pull request. issues.review.approve = "approved these changes %s" issues.review.comment = "reviewed %s" -issues.review.dismissed = "dismissed %s’s review %s" +issues.review.dismissed = "dismissed %s's review %s" issues.review.dismissed_label = Dismissed issues.review.left_comment = left a comment issues.review.content.empty = You need to leave a comment indicating the requested change(s). @@ -1829,7 +1829,7 @@ issues.review.requested = Review pending issues.review.rejected = Changes requested issues.review.stale = Updated since approval issues.review.unofficial = Uncounted approval -issues.assignee.error = Not all assignees were added due to an unexpected error. +issues.assignee.error = Not all assignees were added, due to an unexpected error. issues.reference_issue.body = Body issues.content_history.deleted = deleted issues.content_history.edited = edited @@ -1846,7 +1846,7 @@ pulls.desc = Enable pull requests and code reviews. pulls.new = New Pull Request pulls.new.blocked_user = Cannot create pull request because you are blocked by the repository owner. pulls.new.must_collaborator = You must be a collaborator to create pull request. -pulls.edit.already_changed = Unable to save changes to the pull request. It appears the content has already been changed by another user. Please refresh the page and try editing again to avoid overwriting their changes +pulls.edit.already_changed = Unable to save changes to the pull request. It appears the content has already been changed by another user. Please refresh the page and try editing again to avoid overwriting their changes. pulls.view = View Pull Request pulls.compare_changes = New Pull Request pulls.allow_edits_from_maintainers = Allow edits from maintainers @@ -1867,7 +1867,7 @@ pulls.show_all_commits = Show all commits pulls.show_changes_since_your_last_review = Show changes since your last review pulls.showing_only_single_commit = Showing only changes of commit %[1]s pulls.showing_specified_commit_range = Showing only changes between %[1]s..%[2]s -pulls.select_commit_hold_shift_for_range = Select commit. Hold shift + click to select a range +pulls.select_commit_hold_shift_for_range = Select commit. Hold shift + click to select a range. pulls.review_only_possible_for_full_diff = Review is only possible when viewing the full diff pulls.filter_changes_by_commit = Filter by commit pulls.nothing_to_compare = These branches are equal. There is no need to create a pull request. @@ -1896,7 +1896,7 @@ pulls.add_prefix = Add %s prefix pulls.remove_prefix = Remove %s prefix pulls.data_broken = This pull request is broken due to missing fork information. pulls.files_conflicted = This pull request has changes conflicting with the target branch. -pulls.is_checking = Checking for merge conflicts ... +pulls.is_checking = Checking for merge conflicts … pulls.is_ancestor = "This branch is already included in the target branch. There is nothing to merge." pulls.is_empty = "The changes on this branch are already on the target branch. This will be an empty commit." pulls.required_status_check_failed = Some required checks were not successful. @@ -1925,11 +1925,11 @@ pulls.wrong_commit_id = "commit id must be a commit id on the target branch" pulls.no_merge_desc = This pull request cannot be merged because all repository merge options are disabled. pulls.no_merge_helper = Enable merge options in the repository settings or merge the pull request manually. pulls.no_merge_wip = This pull request cannot be merged because it is marked as being a work in progress. -pulls.no_merge_not_ready = This pull request is not ready to be merged, check review status and status checks. +pulls.no_merge_not_ready = This pull request is not ready to be merged. Check review status and status checks. pulls.no_merge_access = You are not authorized to merge this pull request. pulls.merge_pull_request = Create merge commit -pulls.rebase_merge_pull_request = Rebase then fast-forward -pulls.rebase_merge_commit_pull_request = Rebase then create merge commit +pulls.rebase_merge_pull_request = Rebase, then fast-forward +pulls.rebase_merge_commit_pull_request = Rebase, then create merge commit pulls.squash_merge_pull_request = Create squash commit pulls.fast_forward_only_merge_pull_request = Fast-forward only pulls.merge_manually = Manually merged @@ -1937,17 +1937,17 @@ pulls.merge_commit_id = The merge commit ID pulls.require_signed_wont_sign = The branch requires signed commits but this merge will not be signed pulls.invalid_merge_option = You cannot use this merge option for this pull request. -pulls.merge_conflict = Merge Failed: There was a conflict whilst merging. Hint: Try a different strategy +pulls.merge_conflict = Merge Failed: There was a conflict whilst merging. Hint: Try a different strategy. pulls.merge_conflict_summary = Error Message -pulls.rebase_conflict = Merge Failed: There was a conflict whilst rebasing commit: %[1]s. Hint: Try a different strategy +pulls.rebase_conflict = Merge Failed: There was a conflict whilst rebasing commit: %[1]s. Hint: Try a different strategy. pulls.rebase_conflict_summary = Error Message -pulls.unrelated_histories = Merge Failed: The merge head and base do not share a common history. Hint: Try a different strategy +pulls.unrelated_histories = Merge Failed: The merge head and base do not share a common history. Hint: Try a different strategy. pulls.merge_out_of_date = Merge Failed: Whilst generating the merge, the base was updated. Hint: Try again. pulls.head_out_of_date = Merge Failed: Whilst generating the merge, the head was updated. Hint: Try again. -pulls.has_merged = Failed: The pull request has been merged, you cannot merge again or change the target branch. +pulls.has_merged = Failed: The pull request has been merged. You cannot merge again or change the target branch. pulls.push_rejected = Push Failed: The push was rejected. Review the Git Hooks for this repository. pulls.push_rejected_summary = Full Rejection Message -pulls.push_rejected_no_message = Push Failed: The push was rejected but there was no remote message. Review the Git Hooks for this repository +pulls.push_rejected_no_message = Push Failed: The push was rejected but there was no remote message. Review the Git Hooks for this repository. pulls.open_unmerged_pull_exists = `You cannot perform a reopen operation because there is a pending pull request (#%d) with identical properties.` pulls.status_checking = Some checks are pending pulls.status_checks_success = All checks were successful @@ -1973,7 +1973,7 @@ pulls.cmd_instruction_merge_title = Merge pulls.cmd_instruction_merge_desc = Merge the changes and update on Gitea. pulls.cmd_instruction_merge_warning = Warning: This operation cannot merge pull request because "autodetect manual merge" is not enabled. pulls.clear_merge_message = Clear merge message -pulls.clear_merge_message_hint = Clearing the merge message will only remove the commit message content and keep generated git trailers such as "Co-Authored-By …". +pulls.clear_merge_message_hint = Clearing the merge message will only remove the commit message content and keep generated git trailers such as "Co-Authored-By …". pulls.auto_merge_button_when_succeed = (When checks succeed) pulls.auto_merge_when_succeed = Auto merge when all checks succeed @@ -2153,7 +2153,7 @@ contributors.contribution_type.additions = Additions contributors.contribution_type.deletions = Deletions settings = Settings -settings.desc = Settings is where you can manage the settings for the repository +settings.desc = Settings is where you can manage the settings for the repository. settings.options = Repository settings.public_access = Public Access settings.public_access_desc = Configure public visitor's access permissions to override the defaults of this repository. @@ -2289,13 +2289,13 @@ settings.trust_model.default = Default Trust Model settings.trust_model.default.desc= Use the default repository trust model for this installation. settings.trust_model.collaborator = Collaborator settings.trust_model.collaborator.long = Collaborator: Trust signatures by collaborators -settings.trust_model.collaborator.desc = Valid signatures by collaborators of this repository will be marked "trusted" - (whether they match the committer or not). Otherwise, valid signatures will be marked "untrusted" if the signature matches the committer and "unmatched" if not. +settings.trust_model.collaborator.desc = Valid signatures by collaborators of this repository will be marked "trusted", whether they match the committer or not. Otherwise, valid signatures will be marked "untrusted" if the signature matches the committer and "unmatched" if not. settings.trust_model.committer = Committer -settings.trust_model.committer.long = Committer: Trust signatures that match committers (This matches GitHub and will force Gitea signed commits to have Gitea as the committer) -settings.trust_model.committer.desc = Valid signatures will only be marked "trusted" if they match the committer, otherwise they will be marked "unmatched". This forces Gitea to be the committer on signed commits with the actual committer marked as Co-authored-by: and Co-committed-by: trailer in the commit. The default Gitea key must match a User in the database. +settings.trust_model.committer.long = Committer: Trust signatures that match committers. This matches GitHub and will force Gitea signed commits to have Gitea as the committer. +settings.trust_model.committer.desc = Valid signatures will only be marked "trusted" if they match the committer, otherwise they will be marked "unmatched". This forces Gitea to be the committer on signed commits, with the actual committer marked as Co-authored-by: and Co-committed-by: trailer in the commit. The default Gitea key must match a User in the database. settings.trust_model.collaboratorcommitter = Collaborator+Committer settings.trust_model.collaboratorcommitter.long = Collaborator+Committer: Trust signatures by collaborators which match the committer -settings.trust_model.collaboratorcommitter.desc = Valid signatures by collaborators of this repository will be marked "trusted" if they match the committer. Otherwise, valid signatures will be marked "untrusted" if the signature matches the committer and "unmatched" otherwise. This will force Gitea to be marked as the committer on signed commits with the actual committer marked as Co-Authored-By: and Co-Committed-By: trailer in the commit. The default Gitea key must match a User in the database. +settings.trust_model.collaboratorcommitter.desc = Valid signatures by collaborators of this repository will be marked "trusted" if they match the committer. Otherwise, valid signatures will be marked "untrusted" if the signature matches the committer and "unmatched" otherwise. This will force Gitea to be marked as the committer on signed commits, with the actual committer marked as Co-Authored-By: and Co-Committed-By: trailer in the commit. The default Gitea key must match a User in the database. settings.wiki_delete = Delete Wiki Data settings.wiki_delete_desc = Deleting repository wiki data is permanent and cannot be undone. settings.wiki_delete_notices_1 = - This will permanently delete and disable the repository wiki for %s. @@ -2304,7 +2304,7 @@ settings.wiki_deletion_success = The repository wiki data has been deleted. settings.delete = Delete This Repository settings.delete_desc = Deleting a repository is permanent and cannot be undone. settings.delete_notices_1 = - This operation CANNOT be undone. -settings.delete_notices_2 = - This operation will permanently delete the %s repository including code, issues, comments, wiki data and collaborator settings. +settings.delete_notices_2 = - This operation will permanently delete the %s repository, including code, issues, comments, wiki data and collaborator settings. settings.delete_notices_fork_1 = - Forks of this repository will become independent after deletion. settings.deletion_success = The repository has been deleted. settings.update_settings_success = The repository settings have been updated. @@ -2366,7 +2366,7 @@ settings.discord_icon_url = Icon URL settings.event_desc = Trigger On: settings.event_push_only = Push Events settings.event_send_everything = All Events -settings.event_choose = Custom Events… +settings.event_choose = Custom Events … settings.event_header_repository = Repository Events settings.event_create = Create settings.event_create_desc = Branch or tag created. @@ -2547,7 +2547,7 @@ settings.block_admin_merge_override_desc = Administrators must follow branch pro settings.default_branch_desc = Select a default repository branch for pull requests and code commits: settings.merge_style_desc = Merge Styles settings.default_merge_style_desc = Default Merge Style -settings.choose_branch = Choose a branch… +settings.choose_branch = Choose a branch … settings.no_protected_branch = There are no protected branches. settings.edit_protected_branch = Edit settings.protected_branch_required_rule_name = Required rule name @@ -2610,11 +2610,11 @@ settings.lfs_invalid_locking_path=Invalid path: %s settings.lfs_invalid_lock_directory=Cannot lock directory: %s settings.lfs_lock_already_exists=Lock already exists: %s settings.lfs_lock=Lock -settings.lfs_lock_path=Filepath to lock... +settings.lfs_lock_path=Filepath to lock … settings.lfs_locks_no_locks=No Locks settings.lfs_lock_file_no_exist=Locked file does not exist in default branch settings.lfs_force_unlock=Force Unlock -settings.lfs_pointers.found=Found %d blob pointer(s) - %d associated, %d unassociated (%d missing from store) +settings.lfs_pointers.found=Found %d blob pointer(s) — %d associated, %d unassociated (%d missing from store) settings.lfs_pointers.sha=Blob SHA settings.lfs_pointers.oid=OID settings.lfs_pointers.inRepo=In Repo @@ -2797,9 +2797,9 @@ error.csv.invalid_field_count = Can't render this file because it has a wrong nu error.broken_git_hook = Git hooks of this repository seem to be broken. Please follow the documentation to fix them, then push some commits to refresh the status. [graphs] -component_loading = Loading %s... +component_loading = Loading %s … component_loading_failed = Could not load %s -component_loading_info = This might take a bit… +component_loading_info = This might take a bit … component_failed_to_load = An unexpected error happened. code_frequency.what = code frequency contributors.what = contributions @@ -2866,7 +2866,7 @@ settings.delete_account = Delete This Organization settings.delete_prompt = The organization will be permanently removed. This CANNOT be undone! settings.name_confirm = Enter the organization name as confirmation: settings.delete_notices_1 = This operation CANNOT be undone. -settings.delete_notices_2 = This operation will permanently delete all the repositories of %s including code, issues, comments, wiki data and collaborator settings. +settings.delete_notices_2 = This operation will permanently delete all the repositories of %s, including code, issues, comments, wiki data and collaborator settings. settings.delete_notices_3 = This operation will permanently delete all the packages of %s. settings.delete_notices_4 = This operation will permanently delete all the projects of %s. settings.confirm_delete_account = Confirm Deletion @@ -2927,7 +2927,7 @@ teams.remove_all_repos_title = Remove all team repositories teams.remove_all_repos_desc = This will remove all repositories from the team. teams.add_all_repos_title = Add all repositories teams.add_all_repos_desc = This will add all the organization's repositories to the team. -teams.add_nonexistent_repo = "The repository you're trying to add doesn't exist, please create it first." +teams.add_nonexistent_repo = "The repository you're trying to add doesn't exist. Please create it first." teams.add_duplicate_users = User is already a team member. teams.repos.none = No repositories could be accessed by this team. teams.members.none = No members on this team. @@ -3015,9 +3015,9 @@ dashboard.archive_cleanup = Delete old repository archives dashboard.deleted_branches_cleanup = Clean-up deleted branches dashboard.update_migration_poster_id = Update migration poster IDs dashboard.git_gc_repos = Garbage collect all repositories -dashboard.resync_all_sshkeys = Update the '.ssh/authorized_keys' file with Gitea SSH keys. -dashboard.resync_all_sshprincipals = Update the '.ssh/authorized_principals' file with Gitea SSH principals. -dashboard.resync_all_hooks = Resynchronize pre-receive, update and post-receive hooks of all repositories. +dashboard.resync_all_sshkeys = Update the '.ssh/authorized_keys' file with Gitea SSH keys +dashboard.resync_all_sshprincipals = Update the '.ssh/authorized_principals' file with Gitea SSH principals +dashboard.resync_all_hooks = Resynchronize pre-receive, update and post-receive hooks of all repositories dashboard.reinit_missing_repos = Reinitialize all missing Git repositories for which records exist dashboard.sync_external_users = Synchronize external user data dashboard.cleanup_hook_task_table = Clean up hook_task table @@ -3107,7 +3107,7 @@ users.still_own_repo = This user still owns one or more repositories. Delete or users.still_has_org = This user is a member of an organization. Remove the user from any organizations first. users.purge = Purge User users.purge_help = Forcibly delete user and any repositories, organizations, and packages owned by the user. All comments will be deleted too. -users.still_own_packages = This user still owns one or more packages, delete these packages first. +users.still_own_packages = This user still owns one or more packages. Delete these packages first. users.deletion_success = The user account has been deleted. users.reset_2fa = Reset 2FA users.list_status_filter.menu_text = Filter @@ -3253,11 +3253,11 @@ auths.oauth2_required_claim_name_helper = Set this name to restrict login from t auths.oauth2_required_claim_value = Required Claim Value auths.oauth2_required_claim_value_helper = Set this value to restrict login from this source to users with a claim with this name and value auths.oauth2_group_claim_name = Claim name providing group names for this source. (Optional) -auths.oauth2_full_name_claim_name = Full Name Claim Name. (Optional, if set, the user's full name will always be synchronized with this claim) +auths.oauth2_full_name_claim_name = Full Name Claim Name. (Optional; if set, the user's full name will always be synchronized with this claim) auths.oauth2_ssh_public_key_claim_name = SSH Public Key Claim Name -auths.oauth2_admin_group = Group Claim value for administrator users. (Optional - requires claim name above) -auths.oauth2_restricted_group = Group Claim value for restricted users. (Optional - requires claim name above) -auths.oauth2_map_group_to_team = Map claimed groups to Organization teams. (Optional - requires claim name above) +auths.oauth2_admin_group = Group Claim value for administrator users. (Optional — requires claim name above) +auths.oauth2_restricted_group = Group Claim value for restricted users. (Optional — requires claim name above) +auths.oauth2_map_group_to_team = Map claimed groups to Organization teams. (Optional — requires claim name above) auths.oauth2_map_group_to_team_removal = Remove users from synchronized teams if user does not belong to corresponding group. auths.enable_auto_register = Enable Auto Registration auths.sspi_auto_create_users = Automatically create users @@ -3265,9 +3265,9 @@ auths.sspi_auto_create_users_helper = Allow SSPI auth method to automatically cr auths.sspi_auto_activate_users = Automatically activate users auths.sspi_auto_activate_users_helper = Allow SSPI auth method to automatically activate new users auths.sspi_strip_domain_names = Remove domain names from usernames -auths.sspi_strip_domain_names_helper = If checked, domain names will be removed from logon names (eg. "DOMAIN\user" and "user@example.org" both will become just "user"). +auths.sspi_strip_domain_names_helper = If checked, domain names will be removed from logon names (e.g. "DOMAIN\user" and "user@example.org" both will become just "user"). auths.sspi_separator_replacement = Separator to use instead of \, / and @ -auths.sspi_separator_replacement_helper = The character to use to replace the separators of down-level logon names (eg. the \ in "DOMAIN\user") and user principal names (eg. the @ in "user@example.org"). +auths.sspi_separator_replacement_helper = The character to use to replace the separators of down-level logon names (e.g. the \ in "DOMAIN\user") and user principal names (e.g. the @ in "user@example.org"). auths.sspi_default_language = Default user language auths.sspi_default_language_helper = Default language for users automatically created by SSPI auth method. Leave empty if you prefer the language to be automatically detected. auths.tips = Tips @@ -3587,8 +3587,8 @@ error.no_committer_account = No account linked to committer's email address error.no_gpg_keys_found = "No known key found for this signature in database" error.not_signed_commit = "Not a signed commit" error.failed_retrieval_gpg_keys = "Failed to retrieve any key attached to the committer's account" -error.probable_bad_signature = "WARNING! Although there is a key with this ID in the database it does not verify this commit! This commit is SUSPICIOUS." -error.probable_bad_default_signature = "WARNING! Although the default key has this ID it does not verify this commit! This commit is SUSPICIOUS." +error.probable_bad_signature = "WARNING! Although there is a key with this ID in the database, it does not verify this commit! This commit is SUSPICIOUS." +error.probable_bad_default_signature = "WARNING! Although the default key has this ID, it does not verify this commit! This commit is SUSPICIOUS." [units] unit = Unit @@ -3677,7 +3677,7 @@ go.install = Install the package from the command line: helm.registry = Set up this registry from the command line: helm.install = To install the package, run the following command: maven.registry = Set up this registry in your project pom.xml file: -maven.install = To use the package include the following in the dependencies block in the pom.xml file: +maven.install = To use the package, include the following in the dependencies block in the pom.xml file: maven.install2 = Run via command line: maven.download = To download the dependency, run via command line: nuget.registry = Set up this registry from the command line: diff --git a/tests/integration/editor_test.go b/tests/integration/editor_test.go index ac47ed0094f2d..ac1fb2abff0e0 100644 --- a/tests/integration/editor_test.go +++ b/tests/integration/editor_test.go @@ -415,7 +415,7 @@ func testForkToEditFile(t *testing.T, session *TestSession, user, owner, repo, b req = NewRequestWithValues(t, "POST", fmt.Sprintf("/%s/%s-1/_edit/%s/%s?from_base_branch=%s", user, repo, branch, filePath, branch), editRequestForm) resp = session.MakeRequest(t, req, http.StatusBadRequest) respJSON := test.ParseJSONError(resp.Body.Bytes()) - assert.Equal(t, `Branch "master" already exists in your fork, please choose a new branch name.`, respJSON.ErrorMessage) + assert.Equal(t, `Branch "master" already exists in your fork. Please choose a new branch name.`, respJSON.ErrorMessage) // change a file in the forked repo (should succeed) newBranchName := htmlDoc.GetInputValueByName("new_branch_name") From 17179630d3a3364fadd377e464f4de5a0aa45aef Mon Sep 17 00:00:00 2001 From: Dominik Rubo Date: Fri, 18 Jul 2025 22:45:09 +0200 Subject: [PATCH 3/8] Spelling - Capitalization - Hyphenation - American English spelling variant - Consistent spelling of "username", "color blindness", "resynchronize" - Spell out "and" in sentences, replacing ampersand and plus sign - Fix other misspelled words --- options/locale/locale_en-US.ini | 64 ++++++++++++++++----------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index a0bd4e1ca6c07..fcc8af244dcd0 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -269,8 +269,8 @@ path = Path sqlite_helper = File path for the SQLite3 database.
Enter an absolute path if you run Gitea as a service. reinstall_error = You are trying to install into an existing Gitea database reinstall_confirm_message = Re-installing with an existing Gitea database can cause multiple problems. In most cases, you should use your existing "app.ini" to run Gitea. If you know what you are doing, confirm the following: -reinstall_confirm_check_1 = The data encrypted by the SECRET_KEY in app.ini may be lost: users may not be able to log in with 2FA/OTP & mirrors may not function correctly. By checking this box, you confirm that the current app.ini file contains the correct the SECRET_KEY. -reinstall_confirm_check_2 = The repositories and settings may need to be re-synchronized. By checking this box, you confirm that you will resynchronize the hooks for the repositories and authorized_keys file manually. You confirm that you will ensure that repository and mirror settings are correct. +reinstall_confirm_check_1 = The data encrypted by the SECRET_KEY in app.ini may be lost: users may not be able to log in with 2FA/OTP and mirrors may not function correctly. By checking this box, you confirm that the current app.ini file contains the correct the SECRET_KEY. +reinstall_confirm_check_2 = The repositories and settings may need to be resynchronized. By checking this box, you confirm that you will resynchronize the hooks for the repositories and authorized_keys file manually. You confirm that you will ensure that repository and mirror settings are correct. reinstall_confirm_check_3 = You confirm that you are absolutely sure that this Gitea is running with the correct app.ini location and that you are sure that you have to re-install. You confirm that you acknowledge the above risks. err_empty_db_path = The SQLite3 database path cannot be empty. no_admin_and_disable_registration = You cannot disable user self-registration without creating an administrator account. @@ -278,7 +278,7 @@ err_empty_admin_password = The administrator password cannot be empty. err_empty_admin_email = The administrator email cannot be empty. err_admin_name_is_reserved = Administrator username is invalid. Username is reserved. err_admin_name_pattern_not_allowed = Administrator username is invalid. The username matches a reserved pattern. -err_admin_name_is_invalid = Administrator Username is invalid +err_admin_name_is_invalid = Administrator username is invalid general_title = General Settings app_name = Site Title @@ -294,7 +294,7 @@ domain_helper = Domain or host address for the server. ssh_port = SSH Server Port ssh_port_helper = Port number your SSH server listens on. Leave empty to disable. http_port = Gitea HTTP Listen Port -http_port_helper = Port number the Giteas web server will listen on. +http_port_helper = Port number the Gitea web server will listen on. app_url = Gitea Base URL app_url_helper = Base address for HTTP(S) clone URLs and email notifications. log_root_path = Log Path @@ -430,7 +430,7 @@ allow_password_change = Require user to change password (recommended) reset_password_mail_sent_prompt = A confirmation email has been sent to %s. Please check your inbox within the next %s to complete the account recovery process. active_your_account = Activate Your Account account_activated = Account has been activated -prohibit_login = Sign In Prohibited +prohibit_login = Sign-In Prohibited prohibit_login_desc = Your account is prohibited from signing in. Please contact your site administrator. resent_limit_prompt = You have already requested an activation email recently. Please wait 3 minutes and try again. has_unconfirmed_mail = Hi %s, you have an unconfirmed email address (%s). If you haven't received a confirmation email or need to resend a new one, please click on the button below. @@ -452,7 +452,7 @@ use_scratch_code = Use a scratch code twofa_scratch_used = You have used your scratch code. You have been redirected to the two-factor settings page so you may remove your device enrollment or generate a new scratch code. twofa_passcode_incorrect = Your passcode is incorrect. If you misplaced your device, use your scratch code to sign in. twofa_scratch_token_incorrect = Your scratch code is incorrect. -twofa_required = You must set up Two-Factor Authentication to get access to repositories, or try to log in again. +twofa_required = You must set up two-factor authentication to get access to repositories, or try to log in again. login_userpass = Sign In login_openid = OpenID oauth_signup_tab = Register New Account @@ -477,7 +477,7 @@ email_domain_blacklisted = You cannot register with your email address. authorize_application = Authorize Application authorize_redirect_notice = You will be redirected to %s if you authorize this application. authorize_application_created_by = This application was created by %s. -authorize_application_description = If you grant access, it will be able to access and write to all your account information, including private repos and organisations. +authorize_application_description = If you grant access, it will be able to access and write to all your account information, including private repos and organizations. authorize_application_with_scopes = With scopes: %s authorize_title = Authorize "%s" to access your account? authorization_failed = Authorization failed @@ -612,11 +612,11 @@ username_has_not_been_changed = Username has not been changed repo_name_been_taken = The repository name is already used. repository_force_private = Force Private is enabled: private repositories cannot be made public. repository_files_already_exist = Files already exist for this repository. Contact the system administrator. -repository_files_already_exist.adopt = Files already exist for this repository and can only be Adopted. +repository_files_already_exist.adopt = Files already exist for this repository and can only be adopted. repository_files_already_exist.delete = Files already exist for this repository. You must delete them. repository_files_already_exist.adopt_or_delete = Files already exist for this repository. Either adopt them or delete them. visit_rate_limit = Remote visit addressed rate limitation. -2fa_auth_required = Remote visit required two factors authentication. +2fa_auth_required = Remote visit required two-factor authentication. org_name_been_taken = The organization name is already taken. team_name_been_taken = The team name is already taken. team_no_units_error = Allow access to at least one repository section. @@ -685,7 +685,7 @@ settings = User Settings form.name_reserved = The username "%s" is reserved. form.name_pattern_not_allowed = The pattern "%s" is not allowed in a username. -form.name_chars_not_allowed = User name "%s" contains invalid characters. +form.name_chars_not_allowed = Username "%s" contains invalid characters. block.block = Block block.block.user = Block user @@ -801,8 +801,8 @@ manage_themes = Select default theme manage_openid = Manage OpenID Addresses email_desc = Your primary email address will be used for notifications, password recovery and, provided that it is not hidden, web-based Git operations. theme_desc = This will be your default theme across the site. -theme_colorblindness_help = Colorblindness Theme Support -theme_colorblindness_prompt = Gitea just gets some themes with basic colorblindness support, which only have a few colors defined. The work is still in progress. More improvements could be done by defining more colors in the theme CSS files. +theme_colorblindness_help = Color blindness Theme Support +theme_colorblindness_prompt = Gitea just gets some themes with basic color blindness support, which only have a few colors defined. The work is still in progress. More improvements could be done by defining more colors in the theme CSS files. primary = Primary activated = Activated requires_activation = Requires activation @@ -963,10 +963,10 @@ oauth2_application_remove_description = Removing an OAuth2 application will prev oauth2_application_locked = Gitea pre-registers some OAuth2 applications on startup if enabled in config. To prevent unexpected behavior, these can neither be edited nor removed. Please refer to the OAuth2 documentation for more information. authorized_oauth2_applications = Authorized OAuth2 Applications -authorized_oauth2_applications_description = You have granted access to your personal Gitea account to these third party applications. Please revoke access for applications you no longer need. +authorized_oauth2_applications_description = You have granted access to your personal Gitea account to these third-party applications. Please revoke access for applications you no longer need. revoke_key = Revoke revoke_oauth2_grant = Revoke Access -revoke_oauth2_grant_description = Revoking access for this third party application will prevent this application from accessing your data. Are you sure? +revoke_oauth2_grant_description = Revoking access for this third-party application will prevent this application from accessing your data. Are you sure? revoke_oauth2_grant_success = Access revoked successfully. twofa_desc = To protect your account against password theft, you can use a smartphone or another device for receiving time-based one-time passwords ("TOTP"). @@ -1109,7 +1109,7 @@ mirror_address_protocol_invalid = The provided URL is invalid. Only http(s):// o mirror_lfs = Large File Storage (LFS) mirror_lfs_desc = Activate mirroring of LFS data. mirror_lfs_endpoint = LFS Endpoint -mirror_lfs_endpoint_desc = Sync will attempt to use the clone url to determine the LFS server. You can also specify a custom endpoint if the repository LFS data is stored somewhere else. +mirror_lfs_endpoint_desc = Sync will attempt to use the clone URL to determine the LFS server. You can also specify a custom endpoint if the repository LFS data is stored somewhere else. mirror_last_synced = Last Synchronized mirror_password_placeholder = (Unchanged) mirror_password_blank_placeholder = (Unset) @@ -1273,7 +1273,7 @@ projects = Projects packages = Packages actions = Actions labels = Labels -org_labels_desc = Organization level labels that can be used with all repositories under this organization +org_labels_desc = Organization-level labels that can be used with all repositories under this organization org_labels_desc_manage = manage milestone = Milestone @@ -1867,7 +1867,7 @@ pulls.show_all_commits = Show all commits pulls.show_changes_since_your_last_review = Show changes since your last review pulls.showing_only_single_commit = Showing only changes of commit %[1]s pulls.showing_specified_commit_range = Showing only changes between %[1]s..%[2]s -pulls.select_commit_hold_shift_for_range = Select commit. Hold shift + click to select a range. +pulls.select_commit_hold_shift_for_range = Select commit. Hold Shift and click to select a range. pulls.review_only_possible_for_full_diff = Review is only possible when viewing the full diff pulls.filter_changes_by_commit = Filter by commit pulls.nothing_to_compare = These branches are equal. There is no need to create a pull request. @@ -1920,7 +1920,7 @@ pulls.reject_count_1 = "%d change request" pulls.reject_count_n = "%d change requests" pulls.waiting_count_1 = "%d waiting review" pulls.waiting_count_n = "%d waiting reviews" -pulls.wrong_commit_id = "commit id must be a commit id on the target branch" +pulls.wrong_commit_id = "commit ID must be a commit ID on the target branch" pulls.no_merge_desc = This pull request cannot be merged because all repository merge options are disabled. pulls.no_merge_helper = Enable merge options in the repository settings or merge the pull request manually. @@ -2039,7 +2039,7 @@ signing.wont_sign.nokey = There is no key available to sign this commit. signing.wont_sign.never = Commits are never signed. signing.wont_sign.always = Commits are always signed. signing.wont_sign.pubkey = The commit will not be signed because you do not have a public key associated with your account. -signing.wont_sign.twofa = You must have two factor authentication enabled to have commits signed. +signing.wont_sign.twofa = You must have two-factor authentication enabled to have commits signed. signing.wont_sign.parentsigned = The commit will not be signed as the parent commit is not signed. signing.wont_sign.basesigned = The merge will not be signed as the base commit is not signed. signing.wont_sign.headsigned = The merge will not be signed as the head commit is not signed. @@ -2252,7 +2252,7 @@ settings.admin_indexer_commit_sha = Last Indexed SHA settings.admin_indexer_unindexed = Unindexed settings.reindex_button = Add to Reindex Queue settings.reindex_requested=Reindex Requested -settings.admin_enable_close_issues_via_commit_in_any_branch = Close an issue via a commit made in a non default branch +settings.admin_enable_close_issues_via_commit_in_any_branch = Close an issue via a commit made in a non-default branch settings.danger_zone = Danger Zone settings.new_owner_has_same_repo = The new owner already has a repository with same name. Please choose another name. settings.convert = Convert to Regular Repository @@ -2292,10 +2292,10 @@ settings.trust_model.collaborator.long = Collaborator: Trust signatures by colla settings.trust_model.collaborator.desc = Valid signatures by collaborators of this repository will be marked "trusted", whether they match the committer or not. Otherwise, valid signatures will be marked "untrusted" if the signature matches the committer and "unmatched" if not. settings.trust_model.committer = Committer settings.trust_model.committer.long = Committer: Trust signatures that match committers. This matches GitHub and will force Gitea signed commits to have Gitea as the committer. -settings.trust_model.committer.desc = Valid signatures will only be marked "trusted" if they match the committer, otherwise they will be marked "unmatched". This forces Gitea to be the committer on signed commits, with the actual committer marked as Co-authored-by: and Co-committed-by: trailer in the commit. The default Gitea key must match a User in the database. +settings.trust_model.committer.desc = Valid signatures will only be marked "trusted" if they match the committer, otherwise they will be marked "unmatched". This forces Gitea to be the committer on signed commits, with the actual committer marked as Co-authored-by: and Co-committed-by: trailer in the commit. The default Gitea key must match a user in the database. settings.trust_model.collaboratorcommitter = Collaborator+Committer settings.trust_model.collaboratorcommitter.long = Collaborator+Committer: Trust signatures by collaborators which match the committer -settings.trust_model.collaboratorcommitter.desc = Valid signatures by collaborators of this repository will be marked "trusted" if they match the committer. Otherwise, valid signatures will be marked "untrusted" if the signature matches the committer and "unmatched" otherwise. This will force Gitea to be marked as the committer on signed commits, with the actual committer marked as Co-Authored-By: and Co-Committed-By: trailer in the commit. The default Gitea key must match a User in the database. +settings.trust_model.collaboratorcommitter.desc = Valid signatures by collaborators of this repository will be marked "trusted" if they match the committer. Otherwise, valid signatures will be marked "untrusted" if the signature matches the committer and "unmatched" otherwise. This will force Gitea to be marked as the committer on signed commits, with the actual committer marked as Co-Authored-By: and Co-Committed-By: trailer in the commit. The default Gitea key must match a user in the database. settings.wiki_delete = Delete Wiki Data settings.wiki_delete_desc = Deleting repository wiki data is permanent and cannot be undone. settings.wiki_delete_notices_1 = - This will permanently delete and disable the repository wiki for %s. @@ -2592,7 +2592,7 @@ settings.archive.tagsettings_unavailable = Tag settings are not available if the settings.archive.mirrors_unavailable = Mirrors are not available if the repo is archived. settings.unarchive.button = Unarchive repo settings.unarchive.header = Unarchive this repo -settings.unarchive.text = Unarchiving the repo will restore its ability to receive commits and pushes, as well as new issues and pull-requests. +settings.unarchive.text = Unarchiving the repo will restore its ability to receive commits and pushes, as well as new issues and pull requests. settings.unarchive.success = The repo was successfully unarchived. settings.unarchive.error = An error occurred while trying to unarchive the repo. See the log for more details. settings.update_avatar_success = The repository avatar has been updated. @@ -3012,9 +3012,9 @@ dashboard.update_mirrors = Update Mirrors dashboard.repo_health_check = Health check all repositories dashboard.check_repo_stats = Check all repository statistics dashboard.archive_cleanup = Delete old repository archives -dashboard.deleted_branches_cleanup = Clean-up deleted branches +dashboard.deleted_branches_cleanup = Clean up deleted branches dashboard.update_migration_poster_id = Update migration poster IDs -dashboard.git_gc_repos = Garbage collect all repositories +dashboard.git_gc_repos = Garbage-collect all repositories dashboard.resync_all_sshkeys = Update the '.ssh/authorized_keys' file with Gitea SSH keys dashboard.resync_all_sshprincipals = Update the '.ssh/authorized_principals' file with Gitea SSH principals dashboard.resync_all_hooks = Resynchronize pre-receive, update and post-receive hooks of all repositories @@ -3056,7 +3056,7 @@ dashboard.delete_old_actions = Delete all old activities from database dashboard.delete_old_actions.started = Delete all old activities from database started. dashboard.update_checker = Update checker dashboard.delete_old_system_notices = Delete all old system notices from database -dashboard.gc_lfs = Garbage collect LFS meta objects +dashboard.gc_lfs = Garbage-collect LFS meta objects dashboard.stop_zombie_tasks = Stop actions zombie tasks dashboard.stop_endless_tasks = Stop actions endless tasks dashboard.cancel_abandoned_jobs = Cancel actions abandoned jobs @@ -3080,7 +3080,7 @@ users.2fa = 2FA users.repos = Repos users.created = Created users.last_login = Last Sign-In -users.never_login = Never Signed-In +users.never_login = Never Signed In users.send_register_notify = Send User Registration Notification users.new_success = The user account "%s" has been created. users.edit = Edit @@ -3129,8 +3129,8 @@ emails.primary = Primary emails.activated = Activated emails.filter_sort.email = Email emails.filter_sort.email_reverse = Email (reverse) -emails.filter_sort.name = User Name -emails.filter_sort.name_reverse = User Name (reverse) +emails.filter_sort.name = Username +emails.filter_sort.name_reverse = Username (reverse) emails.updated = Email updated emails.not_updated = Failed to update the requested email address: %v emails.duplicate_active = This email address is already active for a different user. @@ -3139,7 +3139,7 @@ emails.change_email_text = Are you sure you want to update this email address? emails.delete = Delete Email emails.delete_desc = Are you sure you want to delete this email address? emails.deletion_success = The email address has been deleted. -emails.delete_primary_email_error = You can not delete the primary email. +emails.delete_primary_email_error = You cannot delete the primary email. orgs.org_manage_panel = Organization Management orgs.name = Name @@ -3474,7 +3474,7 @@ monitor.queue.numberinqueue = Number in Queue monitor.queue.review_add = Review / Add Workers monitor.queue.settings.title = Pool Settings monitor.queue.settings.desc = Pools dynamically grow in response to their worker queue blocking. -monitor.queue.settings.maxnumberworkers = Max Number of workers +monitor.queue.settings.maxnumberworkers = Max number of workers monitor.queue.settings.maxnumberworkers.placeholder = Currently %[1]d monitor.queue.settings.maxnumberworkers.error = Max number of workers must be a number monitor.queue.settings.submit = Update Settings @@ -3627,7 +3627,7 @@ versions.view_all = View all dependency.id = ID dependency.version = Version search_in_external_registry = Search in %s -alpine.registry = Set up this registry by adding the url in your /etc/apk/repositories file: +alpine.registry = Set up this registry by adding the URL in your /etc/apk/repositories file: alpine.registry.key = Download the registry public RSA key into the /etc/apk/keys/ folder to verify the index signature: alpine.registry.info = Choose $branch and $repository from the list below. alpine.install = To install the package, run the following command: From ebcf03149e53299432883de354743bd4fea2cf06 Mon Sep 17 00:00:00 2001 From: Dominik Rubo Date: Fri, 18 Jul 2025 22:54:21 +0200 Subject: [PATCH 4/8] Phrasing - Use "email address" consistently. Distinguish from "email" as a message for clarity. - Expand "pulls" to "pull requests" - Remove redundant sentence - Spell out "characters" - Change prepositions in some phrases for more idiomatic ones - Clarify sorting field being a range, not a boolean - Insert omitted words where they aid in parsing a sentence - Replace "refused" with "declined" which has less emotional weight - Replace "whilst" with the more commonly used "while" - Replace wordy expression: "currently" instead of "at this time" - Other replacements for more natural or common phrasing --- options/locale/locale_en-US.ini | 84 ++++++++++++++++----------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index fcc8af244dcd0..ca09f3f114a6e 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -194,7 +194,7 @@ commit_kind = Search commits … runner_kind = Search runners … no_results = No matching results found. issue_kind = Search issues … -pull_kind = Search pulls … +pull_kind = Search pull requests … keyword_search_unavailable = Searching by keyword is currently not available. Please contact the site administrator. [aria] @@ -275,7 +275,7 @@ reinstall_confirm_check_3 = You confirm that you are absolutely sure that this G err_empty_db_path = The SQLite3 database path cannot be empty. no_admin_and_disable_registration = You cannot disable user self-registration without creating an administrator account. err_empty_admin_password = The administrator password cannot be empty. -err_empty_admin_email = The administrator email cannot be empty. +err_empty_admin_email = The administrator email address cannot be empty. err_admin_name_is_reserved = Administrator username is invalid. Username is reserved. err_admin_name_pattern_not_allowed = Administrator username is invalid. The username matches a reserved pattern. err_admin_name_is_invalid = Administrator username is invalid @@ -471,8 +471,8 @@ openid_connect_desc = The chosen OpenID URI is unknown. Associate it with a new openid_register_title = Create new account openid_register_desc = The chosen OpenID URI is unknown. Associate it with a new account here. openid_signin_desc = Enter your OpenID URI. For example: alice.openid.example.org or https://openid.example.org/alice. -disable_forgot_password_mail = Account recovery is disabled because no email is set up. Please contact your site administrator. -disable_forgot_password_mail_admin = Account recovery is only available when email is set up. Please set up email to enable account recovery. +disable_forgot_password_mail = Account recovery is disabled because no email address is set up. Please contact your site administrator. +disable_forgot_password_mail_admin = Account recovery is only available when email address is set up. email_domain_blacklisted = You cannot register with your email address. authorize_application = Authorize Application authorize_redirect_notice = You will be redirected to %s if you authorize this application. @@ -597,7 +597,7 @@ url_error = `"%s" is not a valid URL.` include_error = ` must contain substring "%s".` glob_pattern_error = ` glob pattern is invalid: %s.` regex_pattern_error = ` regex pattern is invalid: %s.` -username_error = ` can only contain alphanumeric chars ('0-9','a-z','A-Z'), dash ('-'), underscore ('_') and dot ('.'). It cannot begin or end with non-alphanumeric chars, and consecutive non-alphanumeric chars are also forbidden.` +username_error = ` can only contain alphanumeric characters ('0-9','a-z','A-Z'), dash ('-'), underscore ('_') and dot ('.'). It cannot begin or end with non-alphanumeric characters, and consecutive non-alphanumeric characters are also forbidden.` invalid_group_team_map_error = ` mapping is invalid: %s` unknown_error = Unknown error: captcha_incorrect = The CAPTCHA code is incorrect. @@ -622,7 +622,7 @@ team_name_been_taken = The team name is already taken. team_no_units_error = Allow access to at least one repository section. email_been_used = The email address is already used. email_invalid = The email address is invalid. -email_domain_is_not_allowed = The domain of user email %s conflicts with EMAIL_DOMAIN_ALLOWLIST or EMAIL_DOMAIN_BLOCKLIST. Please ensure your operation is expected. +email_domain_is_not_allowed = The domain of user email address %s conflicts with EMAIL_DOMAIN_ALLOWLIST or EMAIL_DOMAIN_BLOCKLIST. Please ensure your operation is expected. openid_been_used = The OpenID address "%s" is already used. username_password_incorrect = Username or password is incorrect. password_complexity = Password does not pass complexity requirements: @@ -753,7 +753,7 @@ cancel = Cancel language = Language ui = Theme hidden_comment_types = Hidden comment types -hidden_comment_types_description = Comment types checked here will not be shown inside issue pages. Checking "Label", for example, removes all "{user} added/removed {label}" comments. +hidden_comment_types_description = Comment types checked here will not be shown on issue pages. Checking "Label", for example, removes all "{user} added/removed {label}" comments. hidden_comment_types.ref_tooltip = Comments where this issue was referenced from another issue/commit/… hidden_comment_types.issue_ref_tooltip = Comments where the user changes the branch/tag associated with the issue comment_type_group_reference = Reference @@ -802,14 +802,14 @@ manage_openid = Manage OpenID Addresses email_desc = Your primary email address will be used for notifications, password recovery and, provided that it is not hidden, web-based Git operations. theme_desc = This will be your default theme across the site. theme_colorblindness_help = Color blindness Theme Support -theme_colorblindness_prompt = Gitea just gets some themes with basic color blindness support, which only have a few colors defined. The work is still in progress. More improvements could be done by defining more colors in the theme CSS files. +theme_colorblindness_prompt = Gitea only has a few themes with basic color blindness support, which only have a few colors defined. The work is still in progress. More improvements could be made by defining more colors in the theme CSS files. primary = Primary activated = Activated requires_activation = Requires activation primary_email = Make Primary activate_email = Send Activation activations_pending = Activations Pending -can_not_add_email_activations_pending = There is a pending activation. Try again in a few minutes if you want to add a new email. +can_not_add_email_activations_pending = There is a pending activation. Try again in a few minutes if you want to add a new email address. delete_email = Remove email_deletion = Remove Email Address email_deletion_desc = This email address and related information will be removed from your account. Git commits by this email address will remain unchanged. Continue? @@ -1254,7 +1254,7 @@ clone_this_repo = Clone this repository cite_this_repo = Cite this repository create_new_repo_command = Creating a new repository on the command line push_exist_repo = Pushing an existing repository from the command line -empty_message = This repository does not contain any content. +empty_message = This repository does not have any content. broken_message = The Git data underlying this repository cannot be read. Contact the administrator of this instance or delete this repository. no_branch = This repository doesn't have any branches. @@ -1370,8 +1370,8 @@ editor.new_branch_name_desc = New branch name … editor.cancel = Cancel editor.filename_cannot_be_empty = The filename cannot be empty. editor.filename_is_invalid = The filename is invalid: "%s". -editor.commit_email = Commit email -editor.invalid_commit_email = The email for the commit is invalid. +editor.commit_email = Commit email address +editor.invalid_commit_email = The email address for the commit is invalid. editor.branch_does_not_exist = Branch "%s" does not exist in this repository. editor.branch_already_exists = Branch "%s" already exists in this repository. editor.directory_is_a_file = Directory name "%s" is already used as a filename in this repository. @@ -1580,7 +1580,7 @@ issues.filter_type.reviewed_by_you = Reviewed by you issues.filter_sort = Sort issues.filter_sort.latest = Newest issues.filter_sort.oldest = Oldest -issues.filter_sort.recentupdate = Recently updated +issues.filter_sort.recentupdate = Most recently updated issues.filter_sort.leastupdate = Least recently updated issues.filter_sort.mostcomment = Most commented issues.filter_sort.leastcomment = Least commented @@ -1780,9 +1780,9 @@ issues.dependency.pr_closing_blockedby = Closing this pull request is blocked by issues.dependency.issue_closing_blockedby = Closing this issue is blocked by the following issues issues.dependency.issue_close_blocks = This issue blocks closing of the following issues issues.dependency.pr_close_blocks = This pull request blocks closing of the following issues -issues.dependency.issue_close_blocked = You need to close all issues blocking this issue before you can close it. +issues.dependency.issue_close_blocked = You need to close all issues that are blocking this issue before you can close it. issues.dependency.issue_batch_close_blocked = "Cannot batch close issues that you choose, because issue #%d still has open dependencies" -issues.dependency.pr_close_blocked = You need to close all issues blocking this pull request before you can merge it. +issues.dependency.pr_close_blocked = You need to close all issues that are blocking this pull request before you can merge it. issues.dependency.blocks_short = Blocks issues.dependency.blocked_by_short = Depends on issues.dependency.remove_header = Remove Dependency @@ -1793,7 +1793,7 @@ issues.dependency.add_error_same_issue = You cannot make an issue depend on itse issues.dependency.add_error_dep_issue_not_exist = Dependent issue does not exist. issues.dependency.add_error_dep_not_exist = Dependency does not exist. issues.dependency.add_error_dep_exists = Dependency already exists. -issues.dependency.add_error_cannot_create_circular = You cannot create a dependency with two issues blocking each other. +issues.dependency.add_error_cannot_create_circular = You cannot create a dependency with two issues that block each other. issues.dependency.add_error_dep_not_same_repo = Both issues must be in the same repository. issues.review.self.approval = You cannot approve your own pull request. issues.review.self.rejection = You cannot request changes on your own pull request. @@ -1807,7 +1807,7 @@ issues.review.reject = "requested changes %s" issues.review.wait = "was requested for review %s" issues.review.add_review_request = "requested review from %s %s" issues.review.remove_review_request = "removed review request for %s %s" -issues.review.remove_review_request_self = "refused to review %s" +issues.review.remove_review_request_self = "declined to review %s" issues.review.pending = Pending issues.review.pending.tooltip = This comment is not currently visible to other users. To submit your pending comments, select "%s" -> "%s/%s/%s" at the top of the page. issues.review.review = Review @@ -1937,13 +1937,13 @@ pulls.merge_commit_id = The merge commit ID pulls.require_signed_wont_sign = The branch requires signed commits but this merge will not be signed pulls.invalid_merge_option = You cannot use this merge option for this pull request. -pulls.merge_conflict = Merge Failed: There was a conflict whilst merging. Hint: Try a different strategy. +pulls.merge_conflict = Merge Failed: There was a conflict while merging. Hint: Try a different strategy. pulls.merge_conflict_summary = Error Message -pulls.rebase_conflict = Merge Failed: There was a conflict whilst rebasing commit: %[1]s. Hint: Try a different strategy. +pulls.rebase_conflict = Merge Failed: There was a conflict while rebasing commit: %[1]s. Hint: Try a different strategy. pulls.rebase_conflict_summary = Error Message pulls.unrelated_histories = Merge Failed: The merge head and base do not share a common history. Hint: Try a different strategy. -pulls.merge_out_of_date = Merge Failed: Whilst generating the merge, the base was updated. Hint: Try again. -pulls.head_out_of_date = Merge Failed: Whilst generating the merge, the head was updated. Hint: Try again. +pulls.merge_out_of_date = Merge Failed: While generating the merge, the base was updated. Hint: Try again. +pulls.head_out_of_date = Merge Failed: While generating the merge, the head was updated. Hint: Try again. pulls.has_merged = Failed: The pull request has been merged. You cannot merge again or change the target branch. pulls.push_rejected = Push Failed: The push was rejected. Review the Git Hooks for this repository. pulls.push_rejected_summary = Full Rejection Message @@ -2177,7 +2177,7 @@ settings.mirror_settings.docs.disabled_pull_mirror.instructions = Set up your pr settings.mirror_settings.docs.disabled_push_mirror.instructions = Set up your project to automatically pull commits, tags and branches from another repository. settings.mirror_settings.docs.disabled_push_mirror.pull_mirror_warning = Right now, this can only be done in the "New Migration" menu. For more information, please consult: settings.mirror_settings.docs.disabled_push_mirror.info = Push mirrors have been disabled by your site administrator. -settings.mirror_settings.docs.no_new_mirrors = Your repository is mirroring changes to or from another repository. Please keep in mind that you can't create any new mirrors at this time. +settings.mirror_settings.docs.no_new_mirrors = Your repository is mirroring changes to or from another repository. Please keep in mind that you currently can't create any new mirrors. settings.mirror_settings.docs.can_still_use = Although you can't modify existing mirrors or create new ones, you may still use your existing mirror. settings.mirror_settings.docs.pull_mirror_instructions = To set up a pull mirror, please consult: settings.mirror_settings.docs.more_information_if_disabled = You can find out more about push and pull mirrors here: @@ -2291,7 +2291,7 @@ settings.trust_model.collaborator = Collaborator settings.trust_model.collaborator.long = Collaborator: Trust signatures by collaborators settings.trust_model.collaborator.desc = Valid signatures by collaborators of this repository will be marked "trusted", whether they match the committer or not. Otherwise, valid signatures will be marked "untrusted" if the signature matches the committer and "unmatched" if not. settings.trust_model.committer = Committer -settings.trust_model.committer.long = Committer: Trust signatures that match committers. This matches GitHub and will force Gitea signed commits to have Gitea as the committer. +settings.trust_model.committer.long = Committer: Trust signatures that match committers. This matches GitHub's behavior and will force commits signed by Gitea to have Gitea as the committer. settings.trust_model.committer.desc = Valid signatures will only be marked "trusted" if they match the committer, otherwise they will be marked "unmatched". This forces Gitea to be the committer on signed commits, with the actual committer marked as Co-authored-by: and Co-committed-by: trailer in the commit. The default Gitea key must match a user in the database. settings.trust_model.collaboratorcommitter = Collaborator+Committer settings.trust_model.collaboratorcommitter.long = Collaborator+Committer: Trust signatures by collaborators which match the committer @@ -2836,7 +2836,7 @@ form.create_org_not_allowed = You are not allowed to create an organization. settings = Settings settings.options = Organization settings.full_name = Full Name -settings.email = Contact Email +settings.email = Contact Email Address settings.website = Website settings.location = Location settings.permission = Permissions @@ -2854,9 +2854,9 @@ settings.update_setting_success = Organization settings have been updated. settings.rename = Rename Organization settings.rename_desc = Changing the organization name will also change your organization's URL and free the old name. settings.rename_success = Organization %[1]s has been renamed to %[2]s successfully. -settings.rename_no_change = Organization name is no change. +settings.rename_no_change = Organization name is not changed. settings.rename_new_org_name = New Organization Name -settings.rename_failed = Rename Organization failed because of internal error +settings.rename_failed = Renaming organization failed because of an internal error settings.rename_notices_1 = This operation CANNOT be undone. settings.rename_notices_2 = The old name will redirect until it is claimed. @@ -2870,7 +2870,7 @@ settings.delete_notices_2 = This operation will permanently delete all the packages of %s. settings.delete_notices_4 = This operation will permanently delete all the projects of %s. settings.confirm_delete_account = Confirm Deletion -settings.delete_failed = Delete Organization failed due to an internal error +settings.delete_failed = Deleting organization failed due to an internal error settings.delete_successful = Organization %s has been deleted successfully. settings.hooks_desc = Add webhooks which will be triggered for all repositories under this organization. @@ -2968,7 +2968,7 @@ repositories = Repositories hooks = Webhooks integrations = Integrations authentication = Authentication Sources -emails = User Emails +emails = User Email Addresses config = Configuration config_summary = Summary config_settings = Settings @@ -3000,11 +3000,11 @@ dashboard.cron.cancelled=Cron: %[1]s canceled: %[3]s dashboard.cron.error=Error in Cron: %s: %[3]s dashboard.cron.finished=Cron: %[1]s has finished dashboard.delete_inactive_accounts = Delete all unactivated accounts -dashboard.delete_inactive_accounts.started = Delete all unactivated accounts task started. +dashboard.delete_inactive_accounts.started = Task to delete all unactivated accounts started dashboard.delete_repo_archives = "Delete all repositories' archives (ZIP, TAR.GZ, etc..)" -dashboard.delete_repo_archives.started = Delete all repository archives task started. +dashboard.delete_repo_archives.started = Task to delete all repository archives started dashboard.delete_missing_repos = Delete all repositories missing their Git files -dashboard.delete_missing_repos.started = Delete all repositories missing their Git files task started. +dashboard.delete_missing_repos.started = Task to delete all repositories missing their Git files started dashboard.delete_generated_repository_avatars = Delete generated repository avatars dashboard.sync_repo_branches = Sync missed branches from git data to databases dashboard.sync_repo_tags = Sync tags from git data to database @@ -3053,7 +3053,7 @@ dashboard.total_gc_pause = Total GC Pause dashboard.last_gc_pause = Last GC Pause dashboard.gc_times = GC Times dashboard.delete_old_actions = Delete all old activities from database -dashboard.delete_old_actions.started = Delete all old activities from database started. +dashboard.delete_old_actions.started = Deletion of all old activities from database started dashboard.update_checker = Update checker dashboard.delete_old_system_notices = Delete all old system notices from database dashboard.gc_lfs = Garbage-collect LFS meta objects @@ -3127,11 +3127,11 @@ users.details = User Details emails.email_manage_panel = User Email Management emails.primary = Primary emails.activated = Activated -emails.filter_sort.email = Email -emails.filter_sort.email_reverse = Email (reverse) +emails.filter_sort.email = Email address +emails.filter_sort.email_reverse = Email address (reverse) emails.filter_sort.name = Username emails.filter_sort.name_reverse = Username (reverse) -emails.updated = Email updated +emails.updated = Email address updated emails.not_updated = Failed to update the requested email address: %v emails.duplicate_active = This email address is already active for a different user. emails.change_email_header = Update Email Properties @@ -3139,7 +3139,7 @@ emails.change_email_text = Are you sure you want to update this email address? emails.delete = Delete Email emails.delete_desc = Are you sure you want to delete this email address? emails.deletion_success = The email address has been deleted. -emails.delete_primary_email_error = You cannot delete the primary email. +emails.delete_primary_email_error = You cannot delete the primary email address. orgs.org_manage_panel = Organization Management orgs.name = Name @@ -3275,7 +3275,7 @@ auths.tips.oauth2.general = OAuth2 Authentication auths.tips.oauth2.general.tip = When registering a new OAuth2 authentication, the callback/redirect URL should be: auths.tip.oauth2_provider = OAuth2 Provider auths.tip.bitbucket = Register a new OAuth consumer on %s and add the permission 'Account' - 'Read' -auths.tip.nextcloud = Register a new OAuth consumer on your instance using the following menu "Settings -> Security -> OAuth 2.0 client" +auths.tip.nextcloud = Register a new OAuth consumer on your instance by selecting "Settings -> Security -> OAuth 2.0 client" in the menu auths.tip.dropbox = Create a new application at %s auths.tip.facebook = Register a new application at %s and add the product "Facebook Login" auths.tip.github = Register a new OAuth application on %s @@ -3385,7 +3385,7 @@ config.mailer_sendmail_path = Sendmail Path config.mailer_sendmail_args = Extra Arguments to Sendmail config.mailer_sendmail_timeout = Sendmail Timeout config.mailer_use_dummy = Dummy -config.test_email_placeholder = Email (e.g. test@example.com) +config.test_email_placeholder = Email Address (e.g. test@example.com) config.send_test_mail = Send Testing Email config.send_test_mail_submit = Send config.test_mail_failed = Failed to send a testing email to "%s": %v @@ -3500,10 +3500,10 @@ notices.delete_success = The system notices have been deleted. self_check.no_problem_found = No problem found yet. self_check.startup_warnings = Startup warnings: self_check.database_collation_mismatch = Expect database to use collation: %s -self_check.database_collation_case_insensitive = Database is using collation %s, which is an insensitive collation. Although Gitea could work with it, there might be some rare cases which don't work as expected. -self_check.database_inconsistent_collation_columns = Database is using collation %s, but these columns are using mismatched collations. It might cause some unexpected problems. -self_check.database_fix_mysql = For MySQL/MariaDB users, you could use the "gitea doctor convert" command to fix the collation problems, or you could also fix the problem by "ALTER ... COLLATE ..." SQLs manually. -self_check.database_fix_mssql = For MSSQL users, you could only fix the problem by "ALTER ... COLLATE ..." SQLs manually at the moment. +self_check.database_collation_case_insensitive = Database is using collation %s, which is a case-insensitive collation. Although Gitea could work with it, there might be some rare cases which don't work as expected. +self_check.database_inconsistent_collation_columns = Database is using collation %s, but these columns are using mismatched collations. This might cause some unexpected problems. +self_check.database_fix_mysql = For MySQL/MariaDB users, you could use the "gitea doctor convert" command to fix the collation problems, or you could also fix the problem manually with "ALTER ... COLLATE ..." SQL queries. +self_check.database_fix_mssql = For MSSQL users, you could only fix the problem manually with "ALTER ... COLLATE ..." SQL queries at the moment. self_check.location_origin_mismatch = Current URL (%[1]s) doesn't match the URL seen by Gitea (%[2]s). If you are using a reverse proxy, please make sure the "Host" and "X-Forwarded-Proto" headers are set correctly. [action] From dfa2719d12b8701f0b21d3ede9a15ff46834aced Mon Sep 17 00:00:00 2001 From: Dominik Rubo Date: Sun, 20 Jul 2025 11:37:04 +0000 Subject: [PATCH 5/8] Update options/locale/locale_en-US.ini Co-authored-by: delvh Signed-off-by: Dominik Rubo --- options/locale/locale_en-US.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index ca09f3f114a6e..11bbcdd5fc370 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -472,7 +472,7 @@ openid_register_title = Create new account openid_register_desc = The chosen OpenID URI is unknown. Associate it with a new account here. openid_signin_desc = Enter your OpenID URI. For example: alice.openid.example.org or https://openid.example.org/alice. disable_forgot_password_mail = Account recovery is disabled because no email address is set up. Please contact your site administrator. -disable_forgot_password_mail_admin = Account recovery is only available when email address is set up. +disable_forgot_password_mail_admin = Account recovery is only available when an email address is set up. email_domain_blacklisted = You cannot register with your email address. authorize_application = Authorize Application authorize_redirect_notice = You will be redirected to %s if you authorize this application. From 8d2eba5b658b7633d75123f978e98c5a32132fa0 Mon Sep 17 00:00:00 2001 From: Dominik Rubo Date: Mon, 21 Jul 2025 13:02:18 +0200 Subject: [PATCH 6/8] Remove spaces before ellipses --- options/locale/locale_en-US.ini | 70 ++++++++++++++++----------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index 11bbcdd5fc370..918d9763bf9f6 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -18,8 +18,8 @@ language = Language notifications = Notifications active_stopwatch = Active Time Tracker tracked_time_summary = Summary of tracked time based on filters of issue list -create_new = Create … -user_profile_and_more = Profile and Settings … +create_new = Create… +user_profile_and_more = Profile and Settings… signed_in_as = Signed in as enable_javascript = This website requires JavaScript. toc = Table of Contents @@ -39,7 +39,7 @@ passcode = Passcode webauthn_insert_key = Insert your security key webauthn_sign_in = Press the button on your security key. If your security key has no button, re-insert it. -webauthn_press_button = Please press the button on your security key … +webauthn_press_button = Please press the button on your security key… webauthn_use_twofa = Use a two-factor code from your phone webauthn_error = Could not read your security key. webauthn_unsupported_browser = Your browser does not currently support WebAuthn. @@ -112,7 +112,7 @@ copy_type_unsupported = This file type cannot be copied write = Write preview = Preview -loading = Loading … +loading = Loading… files = Files error = Error @@ -168,7 +168,7 @@ no_results_found = No results found. internal_error_skipped = Internal error occurred but is skipped: %s [search] -search = Search … +search = Search… type_tooltip = Search type fuzzy = Fuzzy fuzzy_tooltip = Include results that closely match the search term @@ -178,23 +178,23 @@ regexp = Regexp regexp_tooltip = Include only results that match the regexp search term exact = Exact exact_tooltip = Include only results that match the exact search term -repo_kind = Search repos … -user_kind = Search users … -org_kind = Search orgs … -team_kind = Search teams … -code_kind = Search code … +repo_kind = Search repos… +user_kind = Search users… +org_kind = Search orgs… +team_kind = Search teams… +code_kind = Search code… code_search_unavailable = Code search is currently not available. Please contact the site administrator. code_search_by_git_grep = Current code search results are provided by "git grep". There might be better results if site administrator enables Repository Indexer. -package_kind = Search packages … -project_kind = Search projects … -branch_kind = Search branches … -tag_kind = Search tags … +package_kind = Search packages… +project_kind = Search projects… +branch_kind = Search branches… +tag_kind = Search tags… tag_tooltip = Search for matching tags. Use '%' to match any sequence of numbers. -commit_kind = Search commits … -runner_kind = Search runners … +commit_kind = Search commits… +runner_kind = Search runners… no_results = No matching results found. -issue_kind = Search issues … -pull_kind = Search pull requests … +issue_kind = Search issues… +pull_kind = Search pull requests… keyword_search_unavailable = Searching by keyword is currently not available. Please contact the site administrator. [aria] @@ -252,7 +252,7 @@ license_desc = Go get [install] install = Installation -installing_desc = Installing now, please wait … +installing_desc = Installing now, please wait… title = Initial Configuration docker_helper = If you run Gitea inside Docker, please read the documentation before changing any settings. require_db_desc = Gitea requires MySQL, PostgreSQL, MSSQL, SQLite3 or TiDB (MySQL protocol). @@ -371,7 +371,7 @@ uname_holder = Username or Email Address password_holder = Password switch_dashboard_context = Switch Dashboard Context my_repos = Repositories -show_more_repos = Show more repositories … +show_more_repos = Show more repositories… collaborative_repos = Collaborative Repositories my_orgs = My Organizations my_mirrors = My Mirrors @@ -662,7 +662,7 @@ target_ref_not_exist = Target ref does not exist %s admin_cannot_delete_self = You cannot delete yourself when you are an admin. Please remove your admin privileges first. [user] -change_avatar = Change your avatar … +change_avatar = Change your avatar… joined_on = Joined on %s repositories = Repositories activity = Public Activity @@ -1122,7 +1122,7 @@ stars = Stars reactions_more = and %d more unit_disabled = The site administrator has disabled this repository section. language_other = Other -adopt_search = Enter username to search for unadopted repositories … (leave blank to find all) +adopt_search = Enter username to search for unadopted repositories… (leave blank to find all) adopt_preexisting_label = Adopt Files adopt_preexisting = Adopt pre-existing files adopt_preexisting_content = Create repository from %s @@ -1205,7 +1205,7 @@ migrate.migrate_items_options = Access Token is required to migrate additional i migrated_from = Migrated from %[2]s migrated_from_fake = Migrated From %[1]s migrate.migrate = Migrate From %s -migrate.migrating = Migrating from %s … +migrate.migrating = Migrating from %s… migrate.migrating_failed = Migrating from %s failed. migrate.migrating_failed.error = Failed to migrate: %s migrate.migrating_failed_no_addr = Migration failed. @@ -1345,7 +1345,7 @@ editor.fork_before_edit = You must fork this repository to make or propose chang editor.delete_this_file = Delete File editor.must_have_write_access = You must have write access to make or propose changes to this file. editor.file_delete_success = File "%s" has been deleted. -editor.name_your_file = Name your file … +editor.name_your_file = Name your file… editor.filename_help = Add a directory by typing its name followed by a slash ('/'). Remove a directory by typing backspace at the beginning of the input field. editor.or = or editor.cancel_lower = Cancel @@ -1359,14 +1359,14 @@ editor.patch = Apply Patch editor.patching = Patching: editor.fail_to_apply_patch = Unable to apply patch editor.new_patch = New Patch -editor.commit_message_desc = Add an optional extended description … +editor.commit_message_desc = Add an optional extended description… editor.signoff_desc = Add a Signed-off-by trailer by the committer at the end of the commit log message. editor.commit_directly_to_this_branch = Commit directly to the %s branch. editor.create_new_branch = Create a new branch for this commit and start a pull request. editor.create_new_branch_np = Create a new branch for this commit. editor.propose_file_change = Propose file change editor.new_branch_name = Name the new branch for this commit -editor.new_branch_name_desc = New branch name … +editor.new_branch_name_desc = New branch name… editor.cancel = Cancel editor.filename_cannot_be_empty = The filename cannot be empty. editor.filename_is_invalid = The filename is invalid: "%s". @@ -1388,7 +1388,7 @@ editor.no_changes_to_show = There are no changes to show. editor.push_rejected_no_message = The change was rejected by the server without a message. Please check Git Hooks. editor.push_rejected = The change was rejected by the server. Please check Git Hooks. editor.push_rejected_summary = Full Rejection Message: -editor.add_subdir = Add a directory … +editor.add_subdir = Add a directory… editor.unable_to_upload_files = Failed to upload files to "%s" with error: %v editor.upload_file_is_locked = File "%s" is locked by %s. editor.upload_files_to_dir = Upload files to "%s" @@ -1770,7 +1770,7 @@ issues.dependency.pr_no_dependencies = No dependencies set. issues.dependency.no_permission_1 = "You do not have permission to read %d dependency" issues.dependency.no_permission_n = "You do not have permission to read %d dependencies" issues.dependency.no_permission.can_remove = "You do not have permission to read this dependency but can remove this dependency" -issues.dependency.add = Add dependency … +issues.dependency.add = Add dependency… issues.dependency.cancel = Cancel issues.dependency.remove = Remove issues.dependency.remove_info = Remove this dependency @@ -1896,7 +1896,7 @@ pulls.add_prefix = Add %s prefix pulls.remove_prefix = Remove %s prefix pulls.data_broken = This pull request is broken due to missing fork information. pulls.files_conflicted = This pull request has changes conflicting with the target branch. -pulls.is_checking = Checking for merge conflicts … +pulls.is_checking = Checking for merge conflicts… pulls.is_ancestor = "This branch is already included in the target branch. There is nothing to merge." pulls.is_empty = "The changes on this branch are already on the target branch. This will be an empty commit." pulls.required_status_check_failed = Some required checks were not successful. @@ -1973,7 +1973,7 @@ pulls.cmd_instruction_merge_title = Merge pulls.cmd_instruction_merge_desc = Merge the changes and update on Gitea. pulls.cmd_instruction_merge_warning = Warning: This operation cannot merge pull request because "autodetect manual merge" is not enabled. pulls.clear_merge_message = Clear merge message -pulls.clear_merge_message_hint = Clearing the merge message will only remove the commit message content and keep generated git trailers such as "Co-Authored-By …". +pulls.clear_merge_message_hint = Clearing the merge message will only remove the commit message content and keep generated git trailers such as "Co-Authored-By…". pulls.auto_merge_button_when_succeed = (When checks succeed) pulls.auto_merge_when_succeed = Auto merge when all checks succeed @@ -2366,7 +2366,7 @@ settings.discord_icon_url = Icon URL settings.event_desc = Trigger On: settings.event_push_only = Push Events settings.event_send_everything = All Events -settings.event_choose = Custom Events … +settings.event_choose = Custom Events… settings.event_header_repository = Repository Events settings.event_create = Create settings.event_create_desc = Branch or tag created. @@ -2547,7 +2547,7 @@ settings.block_admin_merge_override_desc = Administrators must follow branch pro settings.default_branch_desc = Select a default repository branch for pull requests and code commits: settings.merge_style_desc = Merge Styles settings.default_merge_style_desc = Default Merge Style -settings.choose_branch = Choose a branch … +settings.choose_branch = Choose a branch… settings.no_protected_branch = There are no protected branches. settings.edit_protected_branch = Edit settings.protected_branch_required_rule_name = Required rule name @@ -2610,7 +2610,7 @@ settings.lfs_invalid_locking_path=Invalid path: %s settings.lfs_invalid_lock_directory=Cannot lock directory: %s settings.lfs_lock_already_exists=Lock already exists: %s settings.lfs_lock=Lock -settings.lfs_lock_path=Filepath to lock … +settings.lfs_lock_path=Filepath to lock… settings.lfs_locks_no_locks=No Locks settings.lfs_lock_file_no_exist=Locked file does not exist in default branch settings.lfs_force_unlock=Force Unlock @@ -2797,9 +2797,9 @@ error.csv.invalid_field_count = Can't render this file because it has a wrong nu error.broken_git_hook = Git hooks of this repository seem to be broken. Please follow the documentation to fix them, then push some commits to refresh the status. [graphs] -component_loading = Loading %s … +component_loading = Loading %s… component_loading_failed = Could not load %s -component_loading_info = This might take a bit … +component_loading_info = This might take a bit… component_failed_to_load = An unexpected error happened. code_frequency.what = code frequency contributors.what = contributions From 8788350fad32aead3e5e2ce3e48088f142c40724 Mon Sep 17 00:00:00 2001 From: Dominik Rubo Date: Tue, 22 Jul 2025 17:31:29 +0000 Subject: [PATCH 7/8] Update options/locale/locale_en-US.ini Co-authored-by: delvh Signed-off-by: Dominik Rubo --- options/locale/locale_en-US.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index 918d9763bf9f6..d8748fb42a5cb 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -521,7 +521,7 @@ issue_assigned.issue = @%[1]s assigned you to issue %[2]s in repository %[3]s. issue.x_mentioned_you = @%s mentioned you: issue.action.force_push = %[1]s force-pushed the %[2]s from %[3]s to %[4]s. -issue.action.push_1 = @%[1]s pushed %[3]d commit to %[2]s. +issue.action.push_1 = @%[1]s pushed %[3]d commit to %[2]s issue.action.push_n = @%[1]s pushed %[3]d commits to %[2]s. issue.action.close = @%[1]s closed #%[2]d. issue.action.reopen = @%[1]s reopened #%[2]d. From a5f726a86d5db07293ad8fc1df9425bf706cf775 Mon Sep 17 00:00:00 2001 From: Dominik Rubo Date: Tue, 22 Jul 2025 17:31:41 +0000 Subject: [PATCH 8/8] Update options/locale/locale_en-US.ini Co-authored-by: delvh Signed-off-by: Dominik Rubo --- options/locale/locale_en-US.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index d8748fb42a5cb..65ba4e9cd3fc5 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -522,7 +522,7 @@ issue_assigned.issue = @%[1]s assigned you to issue %[2]s in repository %[3]s. issue.x_mentioned_you = @%s mentioned you: issue.action.force_push = %[1]s force-pushed the %[2]s from %[3]s to %[4]s. issue.action.push_1 = @%[1]s pushed %[3]d commit to %[2]s -issue.action.push_n = @%[1]s pushed %[3]d commits to %[2]s. +issue.action.push_n = @%[1]s pushed %[3]d commits to %[2]s issue.action.close = @%[1]s closed #%[2]d. issue.action.reopen = @%[1]s reopened #%[2]d. issue.action.merge = @%[1]s merged #%[2]d into %[3]s.