mirror of
https://codeberg.org/forgejo/forgejo
synced 2024-11-25 19:26:09 +01:00
[I18N] Improve English strings & consistency
This commit is contained in:
parent
d29e9374c7
commit
2e76e4fb33
|
@ -28,10 +28,10 @@ licenses = Licenses
|
|||
return_to_gitea = Return to Forgejo
|
||||
|
||||
username = Username
|
||||
email = Email Address
|
||||
email = Email address
|
||||
password = Password
|
||||
access_token = Access Token
|
||||
re_type = Confirm Password
|
||||
access_token = Access token
|
||||
re_type = Confirm password
|
||||
captcha = CAPTCHA
|
||||
twofa = Two-Factor Authentication
|
||||
twofa_scratch = Two-Factor Scratch Code
|
||||
|
@ -61,7 +61,6 @@ new_fork = New Repository Fork
|
|||
new_org = New Organization
|
||||
new_project = New Project
|
||||
new_project_column = New Column
|
||||
manage_org = Manage Organizations
|
||||
admin_panel = Site Administration
|
||||
account_settings = Account Settings
|
||||
settings = Settings
|
||||
|
@ -124,7 +123,7 @@ pin = Pin
|
|||
unpin = Unpin
|
||||
|
||||
artifacts = Artifacts
|
||||
confirm_delete_artifact = Are you sure you want to delete the artifact '%s' ?
|
||||
confirm_delete_artifact = Are you sure you want to delete the artifact "%s" ?
|
||||
|
||||
archived = Archived
|
||||
|
||||
|
@ -182,6 +181,7 @@ missing_csrf = Bad Request: no CSRF token present
|
|||
invalid_csrf = Bad Request: invalid CSRF token
|
||||
not_found = The target couldn't be found.
|
||||
network_error = Network error
|
||||
server_internal = Internal Server Error
|
||||
|
||||
[startpage]
|
||||
app_desc = A painless, self-hosted Git service
|
||||
|
@ -279,13 +279,13 @@ admin_password = Password
|
|||
confirm_password = Confirm Password
|
||||
admin_email = Email Address
|
||||
install_btn_confirm = Install Forgejo
|
||||
test_git_failed = Could not test 'git' command: %v
|
||||
sqlite3_not_available = This Forgejo version does not support SQLite3. Please download the official binary version from %s (not the 'gobuild' version).
|
||||
test_git_failed = Could not test "git" command: %v
|
||||
sqlite3_not_available = This Forgejo version does not support SQLite3. Please download the official binary version from %s (not the "gobuild" version).
|
||||
invalid_db_setting = The database settings are invalid: %v
|
||||
invalid_db_table = The database table "%s" is invalid: %v
|
||||
invalid_repo_path = The repository root path is invalid: %v
|
||||
invalid_app_data_path = The app data path is invalid: %v
|
||||
run_user_not_match = The 'run as' username is not the current username: %s -> %s
|
||||
run_user_not_match = The "run as" username is not the current username: %s -> %s
|
||||
internal_token_failed = Failed to generate internal token: %v
|
||||
secret_key_failed = Failed to generate secret key: %v
|
||||
save_config_failed = Failed to save configuration: %v
|
||||
|
@ -300,7 +300,7 @@ default_enable_timetracking = Enable Time Tracking by Default
|
|||
default_enable_timetracking_popup = Enable time tracking for new repositories by default.
|
||||
allow_dots_in_usernames = Allow users to use dots in their usernames. Doesn't affect existing accounts.
|
||||
no_reply_address = Hidden Email Domain
|
||||
no_reply_address_helper = Domain name for users with a hidden email address. For example, the username 'joe' will be logged in Git as 'joe@noreply.example.org' if the hidden email domain is set to 'noreply.example.org'.
|
||||
no_reply_address_helper = Domain name for users with a hidden email address. For example, the username "joe" will be logged in Git as "joe@noreply.example.org" if the hidden email domain is set to "noreply.example.org".
|
||||
password_algorithm = Password Hash Algorithm
|
||||
invalid_password_algorithm = Invalid password hash algorithm
|
||||
password_algorithm_helper = Set the password hashing algorithm. Algorithms have differing requirements and strength. The argon2 algorithm is rather secure but uses a lot of memory and may be inappropriate for small systems.
|
||||
|
@ -310,7 +310,7 @@ env_config_keys = Environment Configuration
|
|||
env_config_keys_prompt = The following environment variables will also be applied to your configuration file:
|
||||
|
||||
[home]
|
||||
uname_holder = Username or Email Address
|
||||
uname_holder = Username or Email address
|
||||
password_holder = Password
|
||||
switch_dashboard_context = Switch Dashboard Context
|
||||
my_repos = Repositories
|
||||
|
@ -365,7 +365,7 @@ social_register_helper_msg = Already have an account? Link it now!
|
|||
disable_register_prompt = Registration is disabled. Please contact your site administrator.
|
||||
disable_register_mail = Email confirmation for registration is disabled.
|
||||
manual_activation_only = Contact your site administrator to complete activation.
|
||||
remember_me = Remember This Device
|
||||
remember_me = Remember this device
|
||||
remember_me.compromised = The login token is not valid anymore which may indicate a compromised account. Please check your account for unusual activities.
|
||||
forgot_password_title= Forgot Password
|
||||
forgot_password = Forgot password?
|
||||
|
@ -534,8 +534,8 @@ SSPISeparatorReplacement = Separator
|
|||
SSPIDefaultLanguage = Default Language
|
||||
|
||||
require_error = ` cannot be empty.`
|
||||
alpha_dash_error = ` should contain only alphanumeric, dash ('-') and underscore ('_') characters.`
|
||||
alpha_dash_dot_error = ` should contain only alphanumeric, dash ('-'), underscore ('_') and dot ('.') characters.`
|
||||
alpha_dash_error = ` should contain only alphanumeric, dash ("-") and underscore ("_") characters.`
|
||||
alpha_dash_dot_error = ` should contain only alphanumeric, dash ("-"), underscore ("_") and dot (".") characters.`
|
||||
git_ref_name_error = ` must be a well-formed Git reference name.`
|
||||
size_error = ` must be size %s.`
|
||||
min_size_error = ` must contain at least %s characters.`
|
||||
|
@ -545,8 +545,8 @@ 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_no_dots = ` can only contain alphanumeric chars ('0-9','a-z','A-Z'), dash ('-') and underscore ('_'). It cannot begin or end with non-alphanumeric chars, and consecutive non-alphanumeric chars are also forbidden.`
|
||||
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_no_dots = ` can only contain alphanumeric chars ("0-9","a-z","A-Z"), dash ("-") and underscore ("_"). It cannot begin or end with non-alphanumeric chars, and consecutive non-alphanumeric chars are also forbidden.`
|
||||
invalid_group_team_map_error = ` mapping is invalid: %s`
|
||||
unknown_error = Unknown error:
|
||||
captcha_incorrect = The CAPTCHA code is incorrect.
|
||||
|
@ -582,7 +582,7 @@ enterred_invalid_owner_name = The new owner name is not valid.
|
|||
enterred_invalid_password = The password you entered is incorrect.
|
||||
user_not_exist = The user does not exist.
|
||||
team_not_exist = The team does not exist.
|
||||
last_org_owner = You cannot remove the last user from the 'owners' team. There must be at least one owner for an organization.
|
||||
last_org_owner = You cannot remove the last user from the "owners" team. There must be at least one owner for an organization.
|
||||
cannot_add_org_to_team = An organization cannot be added as a team member.
|
||||
duplicate_invite_to_team = The user was already invited as a team member.
|
||||
organization_leave_success = You have successfully left the organization %s.
|
||||
|
@ -647,7 +647,7 @@ avatar = Avatar
|
|||
ssh_gpg_keys = SSH / GPG Keys
|
||||
social = Social Accounts
|
||||
applications = Applications
|
||||
orgs = Manage Organizations
|
||||
orgs = Manage organizations
|
||||
repos = Repositories
|
||||
delete = Delete Account
|
||||
twofa = Two-Factor Authentication (TOTP)
|
||||
|
@ -657,7 +657,7 @@ uid = UID
|
|||
webauthn = Two-Factor Authentication (Security Keys)
|
||||
blocked_users = Blocked Users
|
||||
|
||||
public_profile = Public Profile
|
||||
public_profile = Public profile
|
||||
biography_placeholder = Tell us a little bit about yourself! (You can use Markdown)
|
||||
location_placeholder = Share your approximate location with others
|
||||
profile_desc = Control how your profile is shown to other users. Your primary email address will be used for notifications, password recovery and web-based Git operations.
|
||||
|
@ -703,7 +703,7 @@ keep_activity_private_popup = Makes the activity visible only for you and the ad
|
|||
|
||||
lookup_avatar_by_mail = Look Up Avatar by Email Address
|
||||
federated_avatar_lookup = Federated Avatar Lookup
|
||||
enable_custom_avatar = Use Custom Avatar
|
||||
enable_custom_avatar = Use custom avatar
|
||||
choose_new_avatar = Choose new avatar
|
||||
update_avatar = Update Avatar
|
||||
delete_current_avatar = Delete Current Avatar
|
||||
|
@ -751,13 +751,13 @@ add_email_confirmation_sent = A confirmation email has been sent to "%s". Please
|
|||
add_email_success = The new email address has been added.
|
||||
email_preference_set_success = Email preference has been set successfully.
|
||||
add_openid_success = The new OpenID address has been added.
|
||||
keep_email_private = Hide Email Address
|
||||
keep_email_private = Hide email address
|
||||
keep_email_private_popup = This will hide your email address from your profile, as well as when you make a pull request or edit a file using the web interface. Pushed commits will not be modified. Use %s in commits to associate them with your account.
|
||||
openid_desc = OpenID lets you delegate authentication to an external provider.
|
||||
|
||||
manage_ssh_keys = Manage SSH Keys
|
||||
manage_ssh_keys = Manage SSH keys
|
||||
manage_ssh_principals = Manage SSH Certificate Principals
|
||||
manage_gpg_keys = Manage GPG Keys
|
||||
manage_gpg_keys = Manage GPG keys
|
||||
add_key = Add Key
|
||||
ssh_desc = These public SSH keys are associated with your account. The corresponding private keys allow full access to your repositories. SSH keys that have been verified can be used to verify SSH-signed Git commits.
|
||||
principal_desc = These SSH certificate principals are associated with your account and allow full access to your repositories.
|
||||
|
@ -766,8 +766,8 @@ ssh_helper = <strong>Need help?</strong> Have a look at the guide to <a href="%s
|
|||
gpg_helper = <strong>Need help?</strong> Have a look at the guide <a href="%s">about GPG</a>.
|
||||
add_new_key = Add SSH Key
|
||||
add_new_gpg_key = Add GPG Key
|
||||
key_content_ssh_placeholder = Begins with 'ssh-ed25519', 'ssh-rsa', 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384', 'ecdsa-sha2-nistp521', 'sk-ecdsa-sha2-nistp256@openssh.com', or 'sk-ssh-ed25519@openssh.com'
|
||||
key_content_gpg_placeholder = Begins with '-----BEGIN PGP PUBLIC KEY BLOCK-----'
|
||||
key_content_ssh_placeholder = Begins with "ssh-ed25519", "ssh-rsa", "ecdsa-sha2-nistp256", "ecdsa-sha2-nistp384", "ecdsa-sha2-nistp521", "sk-ecdsa-sha2-nistp256@openssh.com", or "sk-ssh-ed25519@openssh.com"
|
||||
key_content_gpg_placeholder = Begins with "-----BEGIN PGP PUBLIC KEY BLOCK-----"
|
||||
add_new_principal = Add Principal
|
||||
ssh_key_been_used = This SSH key has already been added to the server.
|
||||
ssh_key_name_used = An SSH key with same name already exists on your account.
|
||||
|
@ -785,7 +785,7 @@ gpg_token = Token
|
|||
gpg_token_help = You can generate a signature using:
|
||||
gpg_token_code = echo "%s" | gpg -a --default-key %s --detach-sig
|
||||
gpg_token_signature = Armored GPG signature
|
||||
key_signature_gpg_placeholder = Begins with '-----BEGIN PGP SIGNATURE-----'
|
||||
key_signature_gpg_placeholder = Begins with "-----BEGIN PGP SIGNATURE-----"
|
||||
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.
|
||||
|
@ -795,11 +795,11 @@ ssh_token_required = You must provide a signature for the below token
|
|||
ssh_token = Token
|
||||
ssh_token_help = You can generate a signature using:
|
||||
ssh_token_signature = Armored SSH signature
|
||||
key_signature_ssh_placeholder = Begins with '-----BEGIN SSH SIGNATURE-----'
|
||||
key_signature_ssh_placeholder = Begins with "-----BEGIN SSH SIGNATURE-----"
|
||||
verify_ssh_key_success = SSH key "%s" has been verified.
|
||||
subkeys = Subkeys
|
||||
key_id = Key ID
|
||||
key_name = Key Name
|
||||
key_name = Key name
|
||||
key_content = Content
|
||||
principal_content = Content
|
||||
add_key_success = The SSH key "%s" has been added.
|
||||
|
@ -835,10 +835,10 @@ social_desc = These social accounts can be used to sign in to your account. Make
|
|||
unbind = Unlink
|
||||
unbind_success = The social account has been removed successfully.
|
||||
|
||||
manage_access_token = Manage Access Tokens
|
||||
generate_new_token = Generate New Token
|
||||
manage_access_token = Manage access tokens
|
||||
generate_new_token = Generate new token
|
||||
tokens_desc = These tokens grant access to your account using the Forgejo API.
|
||||
token_name = Token Name
|
||||
token_name = Token name
|
||||
generate_token = Generate Token
|
||||
generate_token_success = Your new token has been generated. Copy it now as it will not be shown again.
|
||||
generate_token_name_duplicate = <strong>%s</strong> has been used as an application name already. Please use a new one.
|
||||
|
@ -859,17 +859,17 @@ access_token_desc = Selected token permissions limit authorization only to the c
|
|||
at_least_one_permission = You must select at least one permission to create a token
|
||||
permissions_list = Permissions:
|
||||
|
||||
manage_oauth2_applications = Manage OAuth2 Applications
|
||||
manage_oauth2_applications = Manage OAuth2 applications
|
||||
edit_oauth2_application = Edit OAuth2 Application
|
||||
oauth2_applications_desc = OAuth2 applications enables your third-party application to securely authenticate users at this Forgejo instance.
|
||||
remove_oauth2_application = Remove OAuth2 Application
|
||||
remove_oauth2_application_desc = Removing an OAuth2 application will revoke access to all signed access tokens. Continue?
|
||||
remove_oauth2_application_success = The application has been deleted.
|
||||
create_oauth2_application = Create a new OAuth2 Application
|
||||
create_oauth2_application = Create a new OAuth2 application
|
||||
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_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_redirect_uris = Redirect URIs. Please use a new line for every URI.
|
||||
save_application = Save
|
||||
|
@ -883,7 +883,7 @@ oauth2_application_create_description = OAuth2 applications gives your third-par
|
|||
oauth2_application_remove_description = Removing an OAuth2 application will prevent it from accessing authorized user accounts on this instance. Continue?
|
||||
oauth2_application_locked = Forgejo 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 = Authorized OAuth2 applications
|
||||
authorized_oauth2_applications_description = You have granted access to your personal Forgejo account to these third party applications. Please revoke access for applications that are no longer in use.
|
||||
revoke_key = Revoke
|
||||
revoke_oauth2_grant = Revoke Access
|
||||
|
@ -968,7 +968,7 @@ admin.flags_replaced = Repository flags replaced
|
|||
new_repo_helper = A repository contains all project files, including revision history. Already hosting one elsewhere? <a href="%s">Migrate repository.</a>
|
||||
owner = Owner
|
||||
owner_helper = Some organizations may not show up in the dropdown due to a maximum repository count limit.
|
||||
repo_name = Repository Name
|
||||
repo_name = Repository name
|
||||
repo_name_helper = Good repository names use short, memorable and unique keywords.
|
||||
repo_size = Repository Size
|
||||
template = Template
|
||||
|
@ -1024,7 +1024,7 @@ default_branch_label = default
|
|||
default_branch_helper = The default branch is the base branch for pull requests and code commits.
|
||||
mirror_prune = Prune
|
||||
mirror_prune_desc = Remove obsolete remote-tracking references
|
||||
mirror_interval = Mirror Interval (valid time units are 'h', 'm', 's'). 0 to disable periodic sync. (Minimum interval: %s)
|
||||
mirror_interval = Mirror Interval (valid time units are "h", "m", "s"). 0 to disable periodic sync. (Minimum interval: %s)
|
||||
mirror_interval_invalid = The mirror interval is not valid.
|
||||
mirror_sync = synced
|
||||
mirror_sync_on_commit = Sync when commits are pushed
|
||||
|
@ -1101,7 +1101,7 @@ form.name_reserved = The repository name "%s" is reserved.
|
|||
form.name_pattern_not_allowed = The pattern "%s" is not allowed in a repository name.
|
||||
|
||||
need_auth = Authorization
|
||||
migrate_options = Migration Options
|
||||
migrate_options = Migration options
|
||||
migrate_service = Migration Service
|
||||
migrate_options_mirror_helper = This repository will be a mirror
|
||||
migrate_options_lfs = Migrate LFS files
|
||||
|
@ -1109,7 +1109,7 @@ migrate_options_lfs_endpoint.label = LFS Endpoint
|
|||
migrate_options_lfs_endpoint.description = Migration will attempt to use your Git remote to <a target="_blank" rel="noopener noreferrer" href="%s">determine the LFS server</a>. 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_items = Migration Items
|
||||
migrate_items = Migration items
|
||||
migrate_items_wiki = Wiki
|
||||
migrate_items_milestones = Milestones
|
||||
migrate_items_labels = Labels
|
||||
|
@ -1118,8 +1118,8 @@ migrate_items_pullrequests = Pull Requests
|
|||
migrate_items_merge_requests = Merge Requests
|
||||
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.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 with comma separated here to make migrating faster because of GitHub API rate limit. WARN: Abusing this feature may violate the service provider's policy and lead to account blocking.
|
||||
migrate.clone_local_path = or a local server path
|
||||
migrate.permission_denied = You are not allowed to import local repositories.
|
||||
|
@ -1223,8 +1223,8 @@ escape_control_characters = Escape
|
|||
unescape_control_characters = Unescape
|
||||
file_copy_permalink = Copy Permalink
|
||||
view_git_blame = View Git Blame
|
||||
video_not_supported_in_browser = Your browser does not support the HTML5 'video' tag.
|
||||
audio_not_supported_in_browser = Your browser does not support the HTML5 'audio' tag.
|
||||
video_not_supported_in_browser = Your browser does not support the HTML5 "video" tag.
|
||||
audio_not_supported_in_browser = Your browser does not support the HTML5 "audio" tag.
|
||||
stored_lfs = Stored with Git LFS
|
||||
symbolic_link = Symbolic link
|
||||
executable_file = Executable File
|
||||
|
@ -1260,12 +1260,12 @@ 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.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.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
|
||||
editor.commit_signed_changes = Commit Signed Changes
|
||||
editor.commit_changes = Commit Changes
|
||||
editor.add_tmpl = Add '<filename>'
|
||||
editor.add_tmpl = Add "<filename>"
|
||||
editor.add = Add %s
|
||||
editor.update = Update %s
|
||||
editor.delete = Delete %s
|
||||
|
@ -1383,7 +1383,7 @@ projects.column.set_default_desc = Set this column as default for uncategorized
|
|||
projects.column.unset_default = Unset Default
|
||||
projects.column.unset_default_desc = Unset this column as default
|
||||
projects.column.delete = Delete Column
|
||||
projects.column.deletion_desc = Deleting a project column moves all related issues to 'Uncategorized'. Continue?
|
||||
projects.column.deletion_desc = Deleting a project column moves all related issues to "Uncategorized". Continue?
|
||||
projects.column.color = Color
|
||||
projects.open = Open
|
||||
projects.close = Close
|
||||
|
@ -1432,7 +1432,7 @@ issues.new_label_placeholder = Label name
|
|||
issues.new_label_desc_placeholder = Description
|
||||
issues.create_label = Create Label
|
||||
issues.label_templates.title = Load a predefined set of labels
|
||||
issues.label_templates.info = No labels exist yet. Create a label with 'New Label' or use a predefined label set:
|
||||
issues.label_templates.info = No labels exist yet. Create a label with "New Label" or use a predefined label set:
|
||||
issues.label_templates.helper = Select a label set
|
||||
issues.label_templates.use = Use Label Set
|
||||
issues.label_templates.fail_to_load_file = Failed to load label template file "%s": %v
|
||||
|
@ -1606,7 +1606,7 @@ issues.lock_no_reason = locked and limited conversation to collaborators %s
|
|||
issues.unlock_comment = unlocked this conversation %s
|
||||
issues.lock_confirm = Lock
|
||||
issues.unlock_confirm = Unlock
|
||||
issues.lock.notice_1 = - Other users can’t add new comments to this issue.
|
||||
issues.lock.notice_1 = - Other users can't add new comments to this issue.
|
||||
issues.lock.notice_2 = - You and other collaborators with access to this repository can still leave comments that others can see.
|
||||
issues.lock.notice_3 = - You can always unlock this issue again in the future.
|
||||
issues.unlock.notice_1 = - Everyone would be able to comment on this issue once more.
|
||||
|
@ -1640,7 +1640,7 @@ issues.add_time_sum_to_small = No time was entered.
|
|||
issues.time_spent_total = Total Time Spent
|
||||
issues.time_spent_from_all_authors = `Total Time Spent: %s`
|
||||
issues.due_date = Due Date
|
||||
issues.invalid_due_date_format = Due date format must be 'yyyy-mm-dd'.
|
||||
issues.invalid_due_date_format = Due date format must be "yyyy-mm-dd".
|
||||
issues.error_modifying_due_date = Failed to modify the due date.
|
||||
issues.error_removing_due_date = Failed to remove the due date.
|
||||
issues.push_commit_1 = added %d commit %s
|
||||
|
@ -1657,7 +1657,7 @@ issues.due_date_added = added the due date %s %s
|
|||
issues.due_date_modified = modified the due date from %[2]s to %[1]s %[3]s
|
||||
issues.due_date_remove = removed the due date %s %s
|
||||
issues.due_date_overdue = Overdue
|
||||
issues.due_date_invalid = The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.
|
||||
issues.due_date_invalid = The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
|
||||
issues.dependency.title = Dependencies
|
||||
issues.dependency.issue_no_dependencies = No dependencies set.
|
||||
issues.dependency.pr_no_dependencies = No dependencies set.
|
||||
|
@ -1693,7 +1693,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).
|
||||
|
@ -1897,7 +1897,7 @@ milestones.title = Title
|
|||
milestones.desc = Description
|
||||
milestones.due_date = Due Date (optional)
|
||||
milestones.clear = Clear
|
||||
milestones.invalid_due_date_format = Due date format must be 'yyyy-mm-dd'.
|
||||
milestones.invalid_due_date_format = Due date format must be "yyyy-mm-dd".
|
||||
milestones.create_success = The milestone "%s" has been created.
|
||||
milestones.edit = Edit Milestone
|
||||
milestones.edit_subheader = Milestones organize issues and track progress.
|
||||
|
@ -1956,7 +1956,7 @@ wiki.page_already_exists = A wiki page with the same name already exists.
|
|||
wiki.reserved_page = The wiki page name "%s" is reserved.
|
||||
wiki.pages = Pages
|
||||
wiki.last_updated = Last updated %s
|
||||
wiki.page_name_desc = Enter a name for this Wiki page. Some special names are: 'Home', '_Sidebar' and '_Footer'.
|
||||
wiki.page_name_desc = Enter a name for this Wiki page. Some special names are: "Home", "_Sidebar" and "_Footer".
|
||||
wiki.original_git_entry_tooltip = View original Git file instead of using friendly link.
|
||||
|
||||
activity = Activity
|
||||
|
@ -2132,7 +2132,7 @@ settings.actions_desc = Enable Repository Actions
|
|||
settings.admin_settings = Administrator Settings
|
||||
settings.admin_enable_health_check = Enable Repository Health Checks (git fsck)
|
||||
settings.admin_code_indexer = Code Indexer
|
||||
settings.admin_stats_indexer = Code Statistics Indexer
|
||||
settings.admin_stats_indexer = Code statistics indexer
|
||||
settings.admin_indexer_commit_sha = Last Indexed SHA
|
||||
settings.admin_indexer_unindexed = Unindexed
|
||||
settings.reindex_button = Add to Reindex Queue
|
||||
|
@ -2159,6 +2159,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.enter_repo_name = Enter the owner and repository name exactly as shown:
|
||||
settings.confirmation_string = Confirmation string
|
||||
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_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.
|
||||
|
@ -2361,7 +2362,7 @@ settings.protected_branch.delete_rule = Delete Rule
|
|||
settings.protected_branch_can_push = Allow push?
|
||||
settings.protected_branch_can_push_yes = You can push
|
||||
settings.protected_branch_can_push_no = You cannot push
|
||||
settings.branch_protection = Branch Protection Rules for Branch '<b>%s</b>'
|
||||
settings.branch_protection = Branch Protection Rules for Branch "<b>%s</b>"
|
||||
settings.protect_this_branch = Enable Branch Protection
|
||||
settings.protect_this_branch_desc = Prevents deletion and restricts Git pushing and merging to the branch.
|
||||
settings.protect_disable_push = Disable Push
|
||||
|
@ -2404,10 +2405,10 @@ settings.require_signed_commits_desc = Reject pushes to this branch if they are
|
|||
settings.protect_branch_name_pattern = Protected Branch Name Pattern
|
||||
settings.protect_branch_name_pattern_desc = Protected branch name patterns. See <a href="https://github.com/gobwas/glob">the documentation</a> for pattern syntax. Examples: main, release/**
|
||||
settings.protect_patterns = Patterns
|
||||
settings.protect_protected_file_patterns = Protected file patterns (separated using semicolon ';'):
|
||||
settings.protect_protected_file_patterns_desc = Protected files are not allowed to be changed directly even if user has rights to add, edit, or delete files in this branch. Multiple patterns can be separated using semicolon (';'). See <a href='https://pkg.go.dev/github.com/gobwas/glob#Compile'>github.com/gobwas/glob</a> documentation for pattern syntax. Examples: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
|
||||
settings.protect_unprotected_file_patterns = Unprotected file patterns (separated using semicolon ';'):
|
||||
settings.protect_unprotected_file_patterns_desc = Unprotected files that are allowed to be changed directly if user has write access, bypassing push restriction. Multiple patterns can be separated using semicolon (';'). See <a href='https://pkg.go.dev/github.com/gobwas/glob#Compile'>github.com/gobwas/glob</a> documentation for pattern syntax. Examples: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
|
||||
settings.protect_protected_file_patterns = Protected file patterns (separated using semicolon ";"):
|
||||
settings.protect_protected_file_patterns_desc = Protected files are not allowed to be changed directly even if user has rights to add, edit, or delete files in this branch. Multiple patterns can be separated using semicolon (";"). See <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> documentation for pattern syntax. Examples: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
|
||||
settings.protect_unprotected_file_patterns = Unprotected file patterns (separated using semicolon ";"):
|
||||
settings.protect_unprotected_file_patterns_desc = Unprotected files that are allowed to be changed directly if user has write access, bypassing push restriction. Multiple patterns can be separated using semicolon (";"). See <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> documentation for pattern syntax. Examples: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
|
||||
settings.add_protected_branch = Enable protection
|
||||
settings.delete_protected_branch = Disable protection
|
||||
settings.update_protect_branch_success = Branch protection for rule "%s" has been updated.
|
||||
|
@ -2468,7 +2469,7 @@ settings.lfs_findcommits=Find commits
|
|||
settings.lfs_lfs_file_no_commits=No Commits found for this LFS file
|
||||
settings.lfs_noattribute=This path does not have the lockable attribute in the default branch
|
||||
settings.lfs_delete=Delete LFS file with OID %s
|
||||
settings.lfs_delete_warning=Deleting an LFS file may cause 'object does not exist' errors on checkout. Are you sure?
|
||||
settings.lfs_delete_warning=Deleting an LFS file may cause "object does not exist" errors on checkout. Are you sure?
|
||||
settings.lfs_findpointerfiles=Find pointer files
|
||||
settings.lfs_locks=Locks
|
||||
settings.lfs_invalid_locking_path=Invalid path: %s
|
||||
|
@ -2644,7 +2645,7 @@ tag.create_success = Tag "%s" has been created.
|
|||
topic.manage_topics = Manage Topics
|
||||
topic.done = Done
|
||||
topic.count_prompt = You cannot select more than 25 topics
|
||||
topic.format_prompt = Topics must start with a letter or number, can include dashes ('-') and dots ('.'), can be up to 35 characters long. Letters must be lowercase.
|
||||
topic.format_prompt = Topics must start with a letter or number, can include dashes ("-") and dots ("."), can be up to 35 characters long. Letters must be lowercase.
|
||||
|
||||
find_file.go_to_file = Go to file
|
||||
find_file.no_matching = No matching file found
|
||||
|
@ -2834,7 +2835,7 @@ dashboard.delete_repo_archives.started = Delete all repository archives task sta
|
|||
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_generated_repository_avatars = Delete generated repository avatars
|
||||
dashboard.sync_repo_branches = Sync missed branches from git data to databases
|
||||
dashboard.sync_repo_branches = Sync missed branches from git data to database
|
||||
dashboard.sync_repo_tags = Sync tags from git data to database
|
||||
dashboard.update_mirrors = Update Mirrors
|
||||
dashboard.repo_health_check = Health check all repositories
|
||||
|
@ -2843,9 +2844,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 Forgejo SSH keys.
|
||||
dashboard.resync_all_sshprincipals = Update the '.ssh/authorized_principals' file with Forgejo 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 Forgejo SSH keys.
|
||||
dashboard.resync_all_sshprincipals = Update the ".ssh/authorized_principals" file with Forgejo 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 = Cleanup hook_task table
|
||||
|
@ -3038,7 +3039,7 @@ auths.search_page_size = Page Size
|
|||
auths.filter = User Filter
|
||||
auths.admin_filter = Admin Filter
|
||||
auths.restricted_filter = Restricted Filter
|
||||
auths.restricted_filter_helper = Leave empty to not set any users as restricted. Use an asterisk ('*') to set all users that do not match Admin Filter as restricted.
|
||||
auths.restricted_filter_helper = Leave empty to not set any users as restricted. Use an asterisk ("*") to set all users that do not match Admin Filter as restricted.
|
||||
auths.verify_group_membership = Verify group membership in LDAP (leave the filter empty to skip)
|
||||
auths.group_search_base = Group Search Base DN
|
||||
auths.group_attribute_list_users = Group Attribute Containing List Of Users
|
||||
|
@ -3051,7 +3052,7 @@ auths.smtp_auth = SMTP Authentication Type
|
|||
auths.smtphost = SMTP Host
|
||||
auths.smtpport = SMTP Port
|
||||
auths.allowed_domains = Allowed Domains
|
||||
auths.allowed_domains_helper = Leave empty to allow all domains. Separate multiple domains with a comma (',').
|
||||
auths.allowed_domains_helper = Leave empty to allow all domains. Separate multiple domains with a comma (",").
|
||||
auths.skip_tls_verify = Skip TLS Verify
|
||||
auths.force_smtps = Force SMTPS
|
||||
auths.force_smtps_helper = SMTPS is always used on port 465. Set this to force SMTPS on other ports. (Otherwise STARTTLS will be used on other ports if it is supported by the host.)
|
||||
|
@ -3098,7 +3099,7 @@ 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:
|
||||
auths.tip.oauth2_provider = OAuth2 Provider
|
||||
auths.tip.bitbucket = Register a new OAuth consumer on https://bitbucket.org/account/user/<your username>/oauth-consumers/new and add the permission 'Account' - 'Read'
|
||||
auths.tip.bitbucket = Register a new OAuth consumer on https://bitbucket.org/account/user/<your username>/oauth-consumers/new 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.dropbox = Create a new application at https://www.dropbox.com/developers/apps
|
||||
auths.tip.facebook = Register a new application at https://developers.facebook.com/apps and add the product "Facebook Login"
|
||||
|
@ -3153,7 +3154,7 @@ config.ssh_port = Port
|
|||
config.ssh_listen_port = Listen Port
|
||||
config.ssh_root_path = Root Path
|
||||
config.ssh_key_test_path = Key Test Path
|
||||
config.ssh_keygen_path = Keygen ('ssh-keygen') Path
|
||||
config.ssh_keygen_path = Keygen ("ssh-keygen") Path
|
||||
config.ssh_minimum_key_size_check = Minimum Key Size Check
|
||||
config.ssh_minimum_key_sizes = Minimum Key Sizes
|
||||
|
||||
|
@ -3532,7 +3533,7 @@ settings.delete.description = Deleting a package is permanent and cannot be undo
|
|||
settings.delete.notice = You are about to delete %s (%s). This operation is irreversible, are you sure?
|
||||
settings.delete.success = The package has been deleted.
|
||||
settings.delete.error = Failed to delete the package.
|
||||
owner.settings.cargo.title = Cargo Registry Index
|
||||
owner.settings.cargo.title = Cargo registry index
|
||||
owner.settings.cargo.initialize = Initialize Index
|
||||
owner.settings.cargo.initialize.description = A special index Git repository is needed to use the Cargo registry. Using this option will (re-)create the repository and configure it automatically.
|
||||
owner.settings.cargo.initialize.error = Failed to initialize Cargo index: %v
|
||||
|
@ -3541,7 +3542,7 @@ owner.settings.cargo.rebuild = Rebuild Index
|
|||
owner.settings.cargo.rebuild.description = Rebuilding can be useful if the index is not synchronized with the stored Cargo packages.
|
||||
owner.settings.cargo.rebuild.error = Failed to rebuild Cargo index: %v
|
||||
owner.settings.cargo.rebuild.success = The Cargo index was successfully rebuild.
|
||||
owner.settings.cleanuprules.title = Manage Cleanup Rules
|
||||
owner.settings.cleanuprules.title = Manage cleanup rules
|
||||
owner.settings.cleanuprules.add = Add Cleanup Rule
|
||||
owner.settings.cleanuprules.edit = Edit Cleanup Rule
|
||||
owner.settings.cleanuprules.none = There are no cleanup rules yet.
|
||||
|
@ -3561,7 +3562,7 @@ owner.settings.cleanuprules.remove.days = Remove versions older than
|
|||
owner.settings.cleanuprules.remove.pattern = Remove versions matching
|
||||
owner.settings.cleanuprules.success.update = Cleanup rule has been updated.
|
||||
owner.settings.cleanuprules.success.delete = Cleanup rule has been deleted.
|
||||
owner.settings.chef.title = Chef Registry
|
||||
owner.settings.chef.title = Chef registry
|
||||
owner.settings.chef.keypair = Generate key pair
|
||||
owner.settings.chef.keypair.description = A key pair is necessary to authenticate to the Chef registry. If you have generated a key pair before, generating a new key pair will discard the old key pair.
|
||||
|
||||
|
@ -3649,9 +3650,9 @@ runs.no_runs = The workflow has no runs yet.
|
|||
runs.empty_commit_message = (empty commit message)
|
||||
|
||||
workflow.disable = Disable Workflow
|
||||
workflow.disable_success = Workflow '%s' disabled successfully.
|
||||
workflow.disable_success = Workflow "%s" disabled successfully.
|
||||
workflow.enable = Enable Workflow
|
||||
workflow.enable_success = Workflow '%s' enabled successfully.
|
||||
workflow.enable_success = Workflow "%s" enabled successfully.
|
||||
workflow.disabled = Workflow is disabled.
|
||||
|
||||
need_approval_desc = Need approval to run workflows for fork pull request.
|
||||
|
|
|
@ -73,7 +73,7 @@
|
|||
</label>
|
||||
</div>
|
||||
<div class="required field">
|
||||
<label for="repo_name_to_delete">{{ctx.Locale.Tr "repo.repo_name"}}</label>
|
||||
<label for="repo_name_to_delete">{{ctx.Locale.Tr "repo.settings.confirmation_string"}}</label>
|
||||
<input id="repo_name_to_delete" name="repo_name" required>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -539,7 +539,7 @@
|
|||
</label>
|
||||
</div>
|
||||
<div class="required field">
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.repo_name"}}</label>
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.settings.confirmation_string"}}</label>
|
||||
<input id="repo_name" name="repo_name" required maxlength="100">
|
||||
</div>
|
||||
|
||||
|
@ -570,7 +570,7 @@
|
|||
</label>
|
||||
</div>
|
||||
<div class="required field">
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.repo_name"}}</label>
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.settings.confirmation_string"}}</label>
|
||||
<input id="repo_name" name="repo_name" required>
|
||||
</div>
|
||||
|
||||
|
@ -602,7 +602,7 @@
|
|||
</label>
|
||||
</div>
|
||||
<div class="required field">
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.repo_name"}}</label>
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.settings.confirmation_string"}}</label>
|
||||
<input id="repo_name" name="repo_name" required>
|
||||
</div>
|
||||
<div class="required field">
|
||||
|
@ -640,7 +640,7 @@
|
|||
</label>
|
||||
</div>
|
||||
<div class="required field">
|
||||
<label for="repo_name_to_delete">{{ctx.Locale.Tr "repo.repo_name"}}</label>
|
||||
<label for="repo_name_to_delete">{{ctx.Locale.Tr "repo.settings.confirmation_string"}}</label>
|
||||
<input id="repo_name_to_delete" name="repo_name" required>
|
||||
</div>
|
||||
|
||||
|
@ -672,7 +672,7 @@
|
|||
</label>
|
||||
</div>
|
||||
<div class="required field">
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.repo_name"}}</label>
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.settings.confirmation_string"}}</label>
|
||||
<input id="repo_name" name="repo_name" required>
|
||||
</div>
|
||||
|
||||
|
@ -705,7 +705,7 @@
|
|||
</label>
|
||||
</div>
|
||||
<div class="required field">
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.repo_name"}}</label>
|
||||
<label for="repo_name">{{ctx.Locale.Tr "repo.settings.confirmation_string"}}</label>
|
||||
<input id="repo_name" name="repo_name" required>
|
||||
</div>
|
||||
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<html lang="{{ctx.Locale.Lang}}" data-theme="{{ThemeName .SignedUser}}">
|
||||
<head>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Internal Server Error - {{AppName}}</title>
|
||||
<title>{{ctx.Locale.Tr "error.server_internal"}} - {{AppName}}</title>
|
||||
<link rel="icon" href="{{AssetUrlPrefix}}/img/favicon.svg" type="image/svg+xml">
|
||||
<link rel="alternate icon" href="{{AssetUrlPrefix}}/img/favicon.png" type="image/png">
|
||||
{{template "base/head_style" .}}
|
||||
|
@ -35,7 +35,7 @@
|
|||
</div>
|
||||
<div class="ui container center">
|
||||
<h1 class="gt-mt-5 error-code">500</h1>
|
||||
<p>Internal Server Error</p>
|
||||
<p>{{ctx.Locale.Tr "error.server_internal"}}</p>
|
||||
</div>
|
||||
<div class="divider"></div>
|
||||
<div class="ui container gt-my-5">
|
||||
|
|
|
@ -125,5 +125,5 @@ func TestXSSReviewDismissed(t *testing.T) {
|
|||
htmlDoc := NewHTMLParser(t, resp.Body)
|
||||
|
||||
htmlDoc.AssertElement(t, "script.evil", false)
|
||||
assert.Contains(t, htmlDoc.Find("#issuecomment-1000 .dismissed-message").Text(), `dismissed Otto <script class='evil'>alert('Oh no!')</script>’s review`)
|
||||
assert.Contains(t, htmlDoc.Find("#issuecomment-1000 .dismissed-message").Text(), `dismissed Otto <script class='evil'>alert('Oh no!')</script>'s review`)
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue