From 00ddc247328ab2fabd5de8f461a581b91a74d3a8 Mon Sep 17 00:00:00 2001 From: HanYaodong Date: Mon, 26 Feb 2024 14:22:46 +0800 Subject: [PATCH] Add locale back --- crowdin.yml | 3 - public/_locales/en/en.messages.json | 1701 +++++++++++++++++++++++++++ public/_locales/en/messages.json | 1223 +++++++++++++++++++ public/_locales/zh_CN/messages.json | 1223 +++++++++++++++++++ 4 files changed, 4147 insertions(+), 3 deletions(-) delete mode 100644 crowdin.yml create mode 100644 public/_locales/en/en.messages.json create mode 100644 public/_locales/en/messages.json create mode 100644 public/_locales/zh_CN/messages.json diff --git a/crowdin.yml b/crowdin.yml deleted file mode 100644 index 83ddc656..00000000 --- a/crowdin.yml +++ /dev/null @@ -1,3 +0,0 @@ -files: - - source: /public/_locales/en/* - translation: /public/_locales/%two_letters_code%/%original_file_name% diff --git a/public/_locales/en/en.messages.json b/public/_locales/en/en.messages.json new file mode 100644 index 00000000..eb7c4d46 --- /dev/null +++ b/public/_locales/en/en.messages.json @@ -0,0 +1,1701 @@ +{ + "fullName": { + "message": "SponsorBlock for YouTube - Skip Sponsorships", + "description": "Name of the extension." + }, + "Description": { + "message": "Skip sponsorships, subscription begging and more on YouTube videos. Report sponsors on videos you watch to save others' time.", + "description": "Description of the extension." + }, + "400": { + "message": "Server said this request was invalid" + }, + "409": { + "message": "This has already been submitted before" + }, + "channelWhitelisted": { + "message": "Channel Whitelisted!" + }, + "Segment": { + "message": "segment" + }, + "Segments": { + "message": "segments" + }, + "SegmentsCap": { + "message": "Segments" + }, + "Chapters": { + "message": "Chapters" + }, + "renderAsChapters": { + "message": "Render segments as chapters", + "description": "Refers to drawing segments on the YouTube seek bar as split up chapters, similar to the existing chapter system" + }, + "showSegmentNameInChapterBar": { + "message": "Show Current Segment Beside Video Time" + }, + "upvoteButtonInfo": { + "message": "Upvote this submission" + }, + "reportButtonTitle": { + "message": "Report" + }, + "reportButtonInfo": { + "message": "Report this submission as incorrect." + }, + "Dismiss": { + "message": "Dismiss" + }, + "Loading": { + "message": "Loading..." + }, + "Hide": { + "message": "Never Show" + }, + "hitGoBack": { + "message": "Hit unskip to get to where you came from." + }, + "unskip": { + "message": "Unskip" + }, + "reskip": { + "message": "Reskip" + }, + "unmute": { + "message": "Unmute" + }, + "paused": { + "message": "Paused" + }, + "manualPaused": { + "message": "Timer Stopped" + }, + "confirmMSG": { + "message": "To edit or delete individual values, click the info button or open the extension popup by clicking the extension icon in the top right corner." + }, + "clearThis": { + "message": "Are you sure you want to clear this?\n\n" + }, + "Unknown": { + "message": "There was an error submitting your sponsor times, please try again later." + }, + "sponsorFound": { + "message": "This video has segments in the database!" + }, + "sponsor404": { + "message": "No segments found" + }, + "sponsorStart": { + "message": "Start Segment Now" + }, + "sponsorEnd": { + "message": "End Segment Now" + }, + "sponsorCancel": { + "message": "Cancel Creating Segment" + }, + "noVideoID": { + "message": "No YouTube video found.\nIf this is incorrect, refresh the tab." + }, + "refreshSegments": { + "message": "Refresh segments" + }, + "success": { + "message": "Success!" + }, + "voted": { + "message": "Voted!" + }, + "serverDown": { + "message": "It seems the server is down. Contact the dev immediately." + }, + "connectionError": { + "message": "A connection error has occurred. Error code: " + }, + "segmentsStillLoading": { + "message": "Segments still loading..." + }, + "clearTimes": { + "message": "Clear Segments" + }, + "openPopup": { + "message": "Open SponsorBlock Popup" + }, + "closePopup": { + "message": "Close Popup" + }, + "closeIcon": { + "message": "Close Icon" + }, + "OpenSubmissionMenu": { + "message": "Open Submission Menu" + }, + "sortSegments": { + "message": "Sort Segments" + }, + "submitCheck": { + "message": "Are you sure you want to submit this?" + }, + "whitelistChannel": { + "message": "Whitelist channel" + }, + "removeFromWhitelist": { + "message": "Remove channel from whitelist" + }, + "voteOnTime": { + "message": "Vote On A Segment" + }, + "Submissions": { + "message": "Submissions" + }, + "savedPeopleFrom": { + "message": "You've saved people from " + }, + "viewLeaderboard": { + "message": "Leaderboard" + }, + "recordTimesDescription": { + "message": "Submit" + }, + "submissionEditHint": { + "message": "Section editing will appear after you click submit", + "description": "Appears in the popup to inform them that editing has been moved to the video player." + }, + "popupHint": { + "message": "Hint: You can setup keybinds for submitting in the options" + }, + "clearTimesButton": { + "message": "Clear Times" + }, + "Username": { + "message": "Username" + }, + "setUsername": { + "message": "Set Username" + }, + "copyPublicID": { + "message": "Copy Public UserID" + }, + "copySegmentID": { + "message": "Copy Segment ID" + }, + "hideThis": { + "message": "Hide this" + }, + "Options": { + "message": "Options" + }, + "showButtons": { + "message": "Show Buttons On YouTube Player" + }, + "hideButtons": { + "message": "Hide Buttons On YouTube Player" + }, + "hideButtonsDescription": { + "message": "This hides the buttons that appear on the YouTube player to submit skip segments." + }, + "showSkipButton": { + "message": "Keep Skip To Highlight Button On Player" + }, + "showInfoButton": { + "message": "Show Info Button On YouTube Player" + }, + "hideInfoButton": { + "message": "Hide Info Button On YouTube Player" + }, + "autoHideInfoButton": { + "message": "Auto-hide Info Button" + }, + "hideDeleteButton": { + "message": "Hide Delete Button On YouTube Player" + }, + "showDeleteButton": { + "message": "Show Delete Button On YouTube Player" + }, + "enableViewTracking": { + "message": "Enable Skip Count Tracking" + }, + "whatViewTracking": { + "message": "This feature tracks which segments you have skipped to let users know how much their submission has helped others and used as a metric along with upvotes to ensure that spam doesn't get into the database. The extension sends a message to the server each time you skip a segment. Hopefully most people don't change this setting so that the view numbers are accurate. :)" + }, + "enableViewTrackingInPrivate": { + "message": "Enable Skip Count Tracking In Private/Incognito tabs" + }, + "enableTrackDownvotes": { + "message": "Store segment downvotes" + }, + "whatTrackDownvotes": { + "message": "Any segments you downvote will remain hidden even after refreshing" + }, + "trackDownvotesWarning": { + "message": "Warning: Disabling this will delete all previously stored downvotes" + }, + "enableQueryByHashPrefix": { + "message": "Query By Hash Prefix" + }, + "whatQueryByHashPrefix": { + "message": "Instead of requesting segments from the server using the videoID, the first 4 characters of the hash of the videoID are sent. This server will send back data for all videos with similar hashes." + }, + "enableRefetchWhenNotFound": { + "message": "Refetch Segments On New Videos" + }, + "whatRefetchWhenNotFound": { + "message": "If the video is new, and there are no segments found, it will keep refetching every few minutes while you watch." + }, + "enableShowCategoryWithoutPermission": { + "message": "Show categories in submission menu even without submission permission" + }, + "whatShowCategoryWithoutPermission": { + "message": "Some categories require permission to submit due to minimum reputation requirements" + }, + "showNotice": { + "message": "Show Notice Again" + }, + "showSkipNotice": { + "message": "Show Notice After A Segment Is Skipped" + }, + "showCategoryGuidelines": { + "message": "Show Category Help" + }, + "noticeVisibilityMode0": { + "message": "Full Size Skip Notices" + }, + "noticeVisibilityMode1": { + "message": "Small Skip Notices for Auto Skip" + }, + "noticeVisibilityMode2": { + "message": "All Small Skip Notices" + }, + "noticeVisibilityMode3": { + "message": "Faded Skip Notices for Auto Skip" + }, + "noticeVisibilityMode4": { + "message": "All Faded Skip Notices" + }, + "longDescription": { + "message": "SponsorBlock lets you skip over sponsors, intros, outros, subscription reminders, and other annoying parts of YouTube videos. SponsorBlock is a crowdsourced browser extension that lets anyone submit the start and end times of sponsored segments and other segments of YouTube videos. Once one person submits this information, everyone else with this extension will skip right over the sponsored segment. You can also skip over non music sections of music videos.", + "description": "Full description of the extension on the store pages." + }, + "website": { + "message": "Website", + "description": "Used on Firefox Store Page" + }, + "sourceCode": { + "message": "Source Code", + "description": "Used on Firefox Store Page" + }, + "noticeUpdate": { + "message": "The notice has been upgraded!", + "description": "The first line of the message displayed after the notice was upgraded." + }, + "noticeUpdate2": { + "message": "If you still don't like it, hit the never show button.", + "description": "The second line of the message displayed after the notice was upgraded." + }, + "setSkipShortcut": { + "message": "Skip segment", + "description": "Keybind label" + }, + "setStartSponsorShortcut": { + "message": "Start/stop segment", + "description": "Keybind label" + }, + "setOpenSubmissionMenuKeybind": { + "message": "Open submission menu", + "description": "Keybind label" + }, + "setSubmitKeybind": { + "message": "Submit segments", + "description": "Keybind label" + }, + "setPreviewKeybind": { + "message": "Preview segment", + "description": "Keybind label" + }, + "setCloseSkipNoticeKeybind": { + "message": "Close skip notice", + "description": "Keybind label" + }, + "nextChapterKeybind": { + "message": "Next chapter", + "description": "Keybind label" + }, + "previousChapterKeybind": { + "message": "Previous chapter", + "description": "Keybind label" + }, + "keybindDescription": { + "message": "Select a key by typing it and choose any modifier keys you wish to use." + }, + "0": { + "message": "Connection Timeout. Check your internet connection. If your internet is working, the server is probably overloaded or down." + }, + "disableSkipping": { + "message": "Skipping is enabled" + }, + "enableSkipping": { + "message": "Skipping is disabled" + }, + "yourWork": { + "message": "Your Work", + "description": "Used to describe the section that will show you the statistics from your submissions." + }, + "502": { + "message": "The server seems to be overloaded. Try again in a few seconds." + }, + "errorCode": { + "message": "Error Code: " + }, + "skip": { + "message": "Skip" + }, + "mute": { + "message": "Mute" + }, + "full": { + "message": "Full Video", + "description": "Used for the name of the option to label an entire video as sponsor or self promotion." + }, + "skip_category": { + "message": "Skip {0}?" + }, + "mute_category": { + "message": "Mute {0}?" + }, + "skip_to_category": { + "message": "Skip to {0}?", + "description": "Used for skipping to things (Skip to Highlight)" + }, + "skipped": { + "message": "{0} Skipped", + "description": "Example: Sponsor Skipped" + }, + "muted": { + "message": "{0} Muted", + "description": "Example: Sponsor Muted" + }, + "skipped_to_category": { + "message": "Skipped to {0}", + "description": "Used for skipping to things (Skipped to Highlight)" + }, + "disableAutoSkip": { + "message": "Disable Auto Skip" + }, + "enableAutoSkip": { + "message": "Enable Auto Skip" + }, + "audioNotification": { + "message": "Audio Notification On Skip" + }, + "audioNotificationDescription": { + "message": "Audio notification on skip will play a sound whenever a segment is skipped. If disabled (or auto skip is disabled), no sound will be played." + }, + "showTimeWithSkips": { + "message": "Show Time With Skips Removed" + }, + "showTimeWithSkipsDescription": { + "message": "This time appears in brackets next to the current time on below the Seek Bar. This shows the total video duration minus any segments. This includes segments marked as only \"Show In Seek Bar\"." + }, + "youHaveSkipped": { + "message": "You've skipped " + }, + "minLower": { + "message": "minute" + }, + "minsLower": { + "message": "minutes" + }, + "hourLower": { + "message": "hour" + }, + "hoursLower": { + "message": "hours" + }, + "youHaveSavedTime": { + "message": "You've saved people", + "description": "You've saved people from 887,362 segments (236d 15h 5.3 minutes of their lives)." + }, + "youHaveSavedTimeEnd": { + "message": " of their lives", + "description": "You've saved people from 887,362 segments (236d 15h 5.3 minutes of their lives)." + }, + "statusReminder": { + "message": "Check status.sponsor.ajay.app for server status." + }, + "changeUserID": { + "message": "Import/Export Your Private UserID" + }, + "whatChangeUserID": { + "message": "This should be kept private. This is like a password and should not be shared with anyone. If someone has this, they can impersonate you. If you are looking for your public userID, click the clipboard icon in the popup." + }, + "setUserID": { + "message": "Set Private UserID" + }, + "userIDChangeWarning": { + "message": "Warning: Changing the Private UserID is permanent. Are you sure you would like to do this? Make sure to backup your old one just in case." + }, + "createdBy": { + "message": "Created By" + }, + "supportOtherSites": { + "message": "Support 3rd Party YouTube-Sites" + }, + "supportOtherSitesDescription": { + "message": "Support third party YouTube clients. To enable support, you must accept the extra permissions.", + "description": "This replaces the 'supports Invidious' option because it now works on other YouTube sites such as Cloudtube" + }, + "supportedSites": { + "message": "Supported Sites: " + }, + "optionsInfo": { + "message": "Enable Invidious support, disable auto skip, hide buttons and more." + }, + "addInvidiousInstance": { + "message": "Add 3rd-Party Client Instance" + }, + "addInvidiousInstanceDescription": { + "message": "Add a custom instance. This must be formatted with JUST the domain. Example: invidious.ajay.app" + }, + "add": { + "message": "Add" + }, + "addInvidiousInstanceError": { + "message": "This is an invalid domain. This should JUST include the domain part. Example: invidious.ajay.app" + }, + "resetInvidiousInstance": { + "message": "Reset Invidious Instance List" + }, + "resetInvidiousInstanceAlert": { + "message": "You are about to reset the Invidious instance list" + }, + "currentInstances": { + "message": "Current Instances:" + }, + "minDuration": { + "message": "Minimum duration (seconds):" + }, + "minDurationDescription": { + "message": "Segments shorter than the set value will not be skipped or show in the player." + }, + "enableManualSkipOnFullVideo": { + "message": "Use manual skip when a full video label exists" + }, + "whatManualSkipOnFullVideo": { + "message": "For people who want to watch the video uninterrupted if it is fully sponsored or self promotion." + }, + "skipNoticeDuration": { + "message": "Skip notice duration (seconds):" + }, + "skipNoticeDurationDescription": { + "message": "The skip notice will stay on screen for at least this many seconds. For manual skipping, it may be visible for longer." + }, + "shortCheck": { + "message": "The following submission is shorter than your minimum duration option. This could mean that this is already submitted, and just being ignored due to this option. Are you sure you would like to submit?" + }, + "liveOrPremiere": { + "message": "Submitting on an active livestream or premiere is not allowed. Please wait until it finishes, then refresh the page and verify that the segments are still valid." + }, + "showUploadButton": { + "message": "Show Upload Button" + }, + "customServerAddress": { + "message": "SponsorBlock Server Address" + }, + "customServerAddressDescription": { + "message": "The address SponsorBlock uses to make calls to the server.\nUnless you have your own server instance, this should not be changed." + }, + "dataFetchingServerAddress": { + "message": "Data Fetching Server Address" + }, + "dataFetchingServerAddressDescription": { + "message": "The address used to make calls to the data fetching server.\nUnless you have your own server instance, this should not be changed." + }, + "thumbnailCacheServerAddress": { + "message": "Thumbnail Cache Server Address" + }, + "save": { + "message": "Save" + }, + "reset": { + "message": "Reset" + }, + "customAddressError": { + "message": "This address is not in the right form. Make sure you have http:// or https:// at the beginning and no trailing slashes." + }, + "areYouSureReset": { + "message": "Are you sure you would like to reset this?" + }, + "exportOptions": { + "message": "Import/Export All Options" + }, + "exportOtherData": { + "message": "Import/Export All Other Data" + }, + "exportOptionsCopy": { + "message": "Edit/copy" + }, + "exportOptionsDownload": { + "message": "Save to file" + }, + "exportOptionsUpload": { + "message": "Load from file" + }, + "whatExportOptions": { + "message": "This is your entire configuration in JSON. This includes your Private UserID, so be sure to share this wisely." + }, + "setOptions": { + "message": "Set Options" + }, + "exportOptionsWarning": { + "message": "Warning: Changing the options is permanent and can break your install. Are you sure you would like to do this? Make sure to backup your old one just in case." + }, + "incorrectlyFormattedOptions": { + "message": "This JSON is not formatted correctly. Your options have not been changed." + }, + "confirmNoticeTitle": { + "message": "Submit Segment" + }, + "submit": { + "message": "Submit" + }, + "cancel": { + "message": "Cancel" + }, + "delete": { + "message": "Delete" + }, + "preview": { + "message": "Preview" + }, + "unsubmitted": { + "message": "Unsubmitted" + }, + "inspect": { + "message": "Inspect" + }, + "edit": { + "message": "Edit" + }, + "copyDebugInformation": { + "message": "Copy Debug Information To Clipboard" + }, + "copyDebugInformationFailed": { + "message": "Failed to write to clipboard" + }, + "copyDebugInformationOptions": { + "message": "Copies information to the clipboard to be provided to a developer when raising a bug / when a developer requests it. Sensitive information such as your user ID, whitelisted channels, and custom server address have been removed. However it does contain information such as your useragent, browser, operating system, and extension version number. " + }, + "copyDebugInformationComplete": { + "message": "The debug information has been copied to the clip board. Feel free to remove any information you would rather not share. Save this in a text file or paste into the bug report." + }, + "keyAlreadyUsed": { + "message": "This shortcut is bound to another action. Please select a different one." + }, + "to": { + "message": "to", + "description": "Used between segments. Example: 1:20 to 1:30" + }, + "CopiedExclamation": { + "message": "Copied!", + "description": "Used after something has been copied to the clipboard. Example: 'Copied!'" + }, + "generic_guideline1": { + "message": "Include segue transitions" + }, + "generic_guideline2": { + "message": "Plays as if nothing was skipped" + }, + "category_sponsor": { + "message": "Sponsor" + }, + "category_sponsor_description": { + "message": "Paid promotion, paid referrals and direct advertisements. Not for self-promotion or free shoutouts to causes/creators/websites/products they like." + }, + "category_sponsor_guideline1": { + "message": "Paid promotions" + }, + "category_sponsor_guideline2": { + "message": "Not for donations or custom merch" + }, + "category_selfpromo": { + "message": "Unpaid/Self Promotion" + }, + "category_selfpromo_description": { + "message": "Similar to \"sponsor\" except for unpaid or self promotion. This includes sections about merchandise, donations, or information about who they collaborated with." + }, + "category_selfpromo_guideline1": { + "message": "Donations, memberships and custom merch" + }, + "category_selfpromo_guideline2": { + "message": "Free shoutouts that don't add to the video" + }, + "category_selfpromo_guideline3": { + "message": "Not for corporate designed products and merch" + }, + "category_exclusive_access": { + "message": "Exclusive Access" + }, + "category_exclusive_access_description": { + "message": "Only for labeling entire videos. Used when a video showcases a product, service or location that they've received free or subsidized access to." + }, + "category_exclusive_access_pill": { + "message": "This video showcases a product, service or location that they've received free or subsidized access to", + "description": "Short description for this category" + }, + "category_exclusive_access_guideline1": { + "message": "Entire video showcases something with free or subsidized access" + }, + "category_interaction": { + "message": "Interaction Reminder (Subscribe)" + }, + "category_interaction_description": { + "message": "When there is a short reminder to like, subscribe or follow them in the middle of content. If it is long or about something specific, it should be under self promotion instead." + }, + "category_interaction_guideline1": { + "message": "Short reminders to like, subscribe or follow" + }, + "category_interaction_guideline2": { + "message": "Includes indirect reminders to comment" + }, + "category_interaction_guideline3": { + "message": "Not for general promotion, only calls to action" + }, + "category_interaction_short": { + "message": "Interaction Reminder" + }, + "category_intro": { + "message": "Intermission/Intro Animation" + }, + "category_intro_description": { + "message": "An interval without actual content. Could be a pause, static frame, repeating animation. This should not be used for transitions containing information." + }, + "category_intro_short": { + "message": "Intermission" + }, + "category_intro_guideline1": { + "message": "Interval without actual content" + }, + "category_intro_guideline2": { + "message": "Not for transitions with information" + }, + "category_outro": { + "message": "Endcards/Credits" + }, + "category_outro_description": { + "message": "Credits or when the YouTube endcards appear. Not for conclusions with information." + }, + "category_outro_guideline1": { + "message": "Don't include content, even if endcards are on screen" + }, + "category_preview": { + "message": "Preview/Recap/Hook", + "description": "https://en.wikipedia.org/wiki/Narrative_hook" + }, + "category_preview_description": { + "message": "Collection of clips that show what is coming up in in this video or other videos in a series where all information is repeated later in the video." + }, + "category_preview_guideline1": { + "message": "Clips that appear later, or in a future video" + }, + "category_preview_guideline2": { + "message": "Recap of a previous video" + }, + "category_preview_guideline3": { + "message": "Not for sections that add additional content" + }, + "category_filler": { + "message": "Filler Tangent/Jokes" + }, + "category_filler_description": { + "message": "Tangential scenes added only for filler or humor that are not required to understand the main content of the video. This should not include segments providing context or background details. This is a very aggressive category meant for when you aren't in the mood for \"fun\"." + }, + "category_filler_short": { + "message": "Filler" + }, + "category_filler_guideline1": { + "message": "Tangential scenes only for filler or humor" + }, + "category_filler_guideline2": { + "message": "Distractions, bloopers, replays" + }, + "category_filler_guideline3": { + "message": "Not for scenes required to understand the topic" + }, + "category_music_offtopic": { + "message": "Music: Non-Music Section" + }, + "category_music_offtopic_description": { + "message": "Only for use in music videos. This only should be used for sections of music videos that aren't already covered by another category." + }, + "category_music_offtopic_short": { + "message": "Non-Music" + }, + "category_music_offtopic_guideline1": { + "message": "Sections not in official releases" + }, + "category_music_offtopic_guideline2": { + "message": "Non-music in a live performance" + }, + "category_poi_highlight": { + "message": "Highlight" + }, + "category_poi_highlight_description": { + "message": "The part of the video that most people are looking for. Similar to \"Video starts at x\" comments." + }, + "category_poi_highlight_guideline1": { + "message": "Section most people are looking for" + }, + "category_poi_highlight_guideline2": { + "message": "Can skip context" + }, + "category_poi_highlight_guideline3": { + "message": "Can skip to the title or thumbnail" + }, + "category_livestream_messages": { + "message": "Livestream: Donation/Message Readings" + }, + "category_livestream_messages_short": { + "message": "Message Reading" + }, + "autoSkip": { + "message": "Auto Skip" + }, + "manualSkip": { + "message": "Manual Skip" + }, + "showOverlay": { + "message": "Show In Seek Bar" + }, + "disable": { + "message": "Disable" + }, + "autoSkip_POI": { + "message": "Auto skip to the start" + }, + "manualSkip_POI": { + "message": "Ask when video loads" + }, + "showOverlay_POI": { + "message": "Show In Seek Bar" + }, + "showOverlay_full": { + "message": "Show Label" + }, + "showOverlay_chapter": { + "message": "Show Chapters" + }, + "autoSkipOnMusicVideos": { + "message": "Auto skip all segments when there is a non-music segment" + }, + "muteSegments": { + "message": "Allow segments that mute audio instead of skip" + }, + "fullVideoSegments": { + "message": "Show an icon when a video is entirely an advertisement", + "description": "Referring to the category pill that is now shown on videos that are entirely sponsor or entirely selfpromo" + }, + "fullVideoLabelsOnThumbnails": { + "message": "Show labels on video thumbnails as well", + "description": "Referring to the category pill that is shown on videos that are entirely sponsor or entirely selfpromo on recommended videos, in searches or on the homepage." + }, + "previewColor": { + "message": "Unsubmitted Color", + "description": "Referring to submissions that have not been sent to the server yet." + }, + "seekBarColor": { + "message": "Seek Bar Color" + }, + "category": { + "message": "Category" + }, + "skipOption": { + "message": "Skip Option", + "description": "Used on the options page to describe the ways to skip the segment (auto skip, manual, etc.)" + }, + "enableTestingServer": { + "message": "Enable Beta Testing Server" + }, + "whatEnableTestingServer": { + "message": "Your submissions and votes WILL NOT COUNT towards the main server. Only use this for testing." + }, + "testingServerWarning": { + "message": "All submissions and votes WILL NOT COUNT towards the main server while connecting to the test server. Make sure to disable this when you want to make real submissions." + }, + "bracketNow": { + "message": "(Now)" + }, + "moreCategories": { + "message": "More Categories" + }, + "chooseACategory": { + "message": "Choose a Category" + }, + "enableThisCategoryFirst": { + "message": "To submit segments with the category of \"{0}\", you must enable it in the options. You will be redirected to the options now.", + "description": "Used when submitting segments to only let them select a certain category if they have it enabled in the options." + }, + "poiOnlyOneSegment": { + "message": "Warning: This type of segment can have a maximum of one active at a time. Submitting multiple will cause a random one to be shown." + }, + "youMustSelectACategory": { + "message": "You must select a category for all segments you are submitting!" + }, + "bracketStart": { + "message": "(Start)" + }, + "bracketEnd": { + "message": "(End)" + }, + "End": { + "message": "End", + "description": "Button that skips to the end of a segment" + }, + "hiddenDueToDownvote": { + "message": "hidden: downvote" + }, + "hiddenDueToDuration": { + "message": "hidden: too short" + }, + "manuallyHidden": { + "message": "manually hidden" + }, + "channelDataNotFound": { + "description": "This error appears in an alert when they try to whitelist a channel and the extension is unable to determine what channel they are looking at.", + "message": "Channel ID is not loaded yet. If you are using an embedded video, try using the YouTube homepage instead. This could also be caused by changes in the YouTube layout, if you think so, make a comment here:" + }, + "invidiousPermissionRefresh": { + "message": "The browser has revoked the permission needed to function on Invidious and other 3rd-party sites. Please click the button below to reactivate this permission." + }, + "acceptPermission": { + "message": "Accept permission" + }, + "permissionRequestSuccess": { + "message": "Permission request succeeded!" + }, + "permissionRequestFailed": { + "message": "Permission request failed, did you click deny?" + }, + "adblockerIssueWhitelist": { + "message": "If you are unable to resolve this, then disable the setting 'Force Channel Check Before Skipping', as SponsorBlock is unable to retrieve the channel information for this video" + }, + "forceChannelCheck": { + "message": "Force Channel Check Before Skipping" + }, + "whatForceChannelCheck": { + "message": "By default, it will skip segments right away before it even knows what the channel is. By default, some segments at the start of the video might be skipped on whitelisted channels. Enabling this option will prevent this but making all skipping have a slight delay as getting the channelID can take some time. This delay might be unnoticeable if you have fast internet." + }, + "forceChannelCheckPopup": { + "message": "Consider Enabling \"Force Channel Check Before Skipping\"" + }, + "downvoteDescription": { + "message": "Incorrect/Wrong Timing" + }, + "incorrectVote": { + "message": "Incorrect" + }, + "harmfulVote": { + "message": "Harmful", + "description": "Used for chapter segments when the text is harmful/offensive to remove it faster" + }, + "incorrectCategory": { + "message": "Change Category" + }, + "nonMusicCategoryOnMusic": { + "message": "This video is categorized as music. Are you sure this has a sponsor? If this is actually a \"Non-Music segment\", open up the extension options and enable this category. Then, you can submit this segment as \"Non-Music\" instead of sponsor. Please read the guidelines if you are confused." + }, + "multipleSegments": { + "message": "Multiple Segments" + }, + "guidelines": { + "message": "Guidelines" + }, + "readTheGuidelines": { + "message": "Read The Guidelines!!", + "description": "Show the first time they submit or if they are \"high risk\"" + }, + "categoryUpdate1": { + "message": "Categories are here!" + }, + "categoryUpdate2": { + "message": "Open the options to skip intros, outros, merch, etc." + }, + "help": { + "message": "Help" + }, + "GotIt": { + "message": "Got it", + "description": "Used as the button to dismiss a tooltip" + }, + "fullVideoTooltipWarning": { + "message": "This segment is large. If the whole video is about one topic, then change from \"Skip\" to \"Full Video\". See the guidelines for more information." + }, + "categoryPillTitleText": { + "message": "This entire video is labeled as this category and is too tightly integrated to be able to separate" + }, + "chapterNameTooltipWarning": { + "message": "One of your chapter names is similar to a category. You should use categories when possible instead." + }, + "experiementOptOut": { + "message": "Opt-out of all future experiments", + "description": "This is used in a popup about a new experiment to get a list of unlisted videos to back up since all unlisted videos uploaded before 2017 will be set to private." + }, + "hideForever": { + "message": "Hide forever" + }, + "warningChatInfo": { + "message": "We noticed you were making some common mistakes. We very much appreciate your work so far, but we strive towards perfection here, so even very small mistakes matter :)" + }, + "questionButton": { + "message": "I have a question" + }, + "askAQuestion": { + "message": "Ask a question" + }, + "warningConfirmButton": { + "message": "I understand the reason" + }, + "warningError": { + "message": "Error when trying to acknowledge warning:" + }, + "deArrowMessageRecieved": { + "message": "You've received a tip from a moderator" + }, + "Donate": { + "message": "Donate" + }, + "considerDonating": { + "message": "Help fund development" + }, + "hideDonationLink": { + "message": "Hide Donation Link" + }, + "darkModeOptionsPage": { + "message": "Dark Mode On Options Page" + }, + "helpPageThanksForInstalling": { + "message": "Thanks for installing SponsorBlock." + }, + "helpPageReviewOptions": { + "message": "Please review the options below" + }, + "helpPageFeatureDisclaimer": { + "message": "Many features are disabled by default. If you want to skip intros, outros, use Invidious, etc., enable them below. You can also hide/show UI elements." + }, + "helpPageHowSkippingWorks": { + "message": "How skipping works" + }, + "helpPageHowSkippingWorks1": { + "message": "Video segments will automatically be skipped if they are found in the database. You can open the popup by clicking the extension icon to get a preview of what they are." + }, + "helpPageHowSkippingWorks2": { + "message": "Whenever you skip a segment, you will get notice. If the timing seems wrong vote down by clicking downvote! You can also vote in the popup." + }, + "Submitting": { + "message": "Submitting" + }, + "helpPageSubmitting1": { + "message": "Submitting can either be done in the popup by hitting the \"Segment Starts Now\" button or in the video player with the buttons on the player." + }, + "helpPageSubmitting2": { + "message": "Clicking the play button indicates the start of a segment and clicking the stop icon indicates the end. You can prepare multiple sponsors before hitting submit. Clicking the upload button will submit. Clicking the garbage can will delete." + }, + "Editing": { + "message": "Editing" + }, + "helpPageEditing1": { + "message": "If you messed up, you can edit or delete your segments after clicking the up arrow button." + }, + "helpPageTooSlow": { + "message": "This is too slow" + }, + "helpPageTooSlow1": { + "message": "There are hotkeys if you want to use them. Press the semicolon key to indicate the start/end of a sponsor segment and click the apostrophe to submit. These can be changed in the options. If you don't use QWERTY, you should probably change the keybinding." + }, + "helpPageCopyOfDatabase": { + "message": "Can I get a copy of the Database? What happens if you disappear?" + }, + "helpPageCopyOfDatabase1": { + "message": "The database is public and available at" + }, + "helpPageCopyOfDatabase2": { + "message": "The source code is freely available. So, even if something happens to me, your submissions are not lost." + }, + "helpPageNews": { + "message": "News and how it is made" + }, + "helpPageSourceCode": { + "message": "Where can I get the source code?" + }, + "Credits": { + "message": "Credits" + }, + "LearnMore": { + "message": "Learn More" + }, + "FullDetails": { + "message": "Full Details" + }, + "CopyDownvoteButtonInfo": { + "message": "Downvotes and creates a local copy for you to resubmit" + }, + "OpenCategoryWikiPage": { + "message": "Open this category's wiki page." + }, + "CopyAndDownvote": { + "message": "Copy and downvote" + }, + "ContinueVoting": { + "message": "Continue Voting" + }, + "ChangeCategoryTooltip": { + "message": "This will instantly apply to your segments" + }, + "downvote": { + "message": "Downvote" + }, + "upvote": { + "message": "Upvote" + }, + "hideSegment": { + "message": "Hide segment" + }, + "skipSegment": { + "message": "Skip segment" + }, + "playChapter": { + "message": "Play chapter" + }, + "SponsorTimeEditScrollNewFeature": { + "message": "Use your mousewheel while hovering over the edit box to quickly adjust the time. Combinations of the ctrl or shift key can be used to fine tune the changes." + }, + "categoryPillNewFeature": { + "message": "New! See when a video is entirely sponsored or self-promotion" + }, + "yearAbbreviation": { + "message": "y", + "description": "100y" + }, + "dayAbbreviation": { + "message": "d", + "description": "100d" + }, + "hourAbbreviation": { + "message": "h", + "description": "100h" + }, + "optionsTabBehavior": { + "message": "Behavior", + "description": "Appears in Options as a tab header for options related to categories and skipping behavior. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabInterface": { + "message": "Interface", + "description": "Appears in Options as a tab header for options related to GUI and sounds. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabKeyBinds": { + "message": "Keyboard shortcuts", + "description": "Appears in Options as a tab header for keybinds. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabBackup": { + "message": "Backup/Restore", + "description": "Appears in Options as a tab header for options related to saving/restoring your settings. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabAdvanced": { + "message": "Miscellaneous", + "description": "Appears in Options as a tab header for advanced/niche options. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "noticeVisibilityLabel": { + "message": "Skip notice appearance", + "description": "Option label" + }, + "unbind": { + "message": "Unbind", + "description": "Unbind keyboard shortcut" + }, + "notSet": { + "message": "Not set" + }, + "change": { + "message": "Change" + }, + "youtubeKeybindWarning": { + "message": "This is a built-in YouTube shortcut. Are you sure you want to use it?" + }, + "betaServerWarning": { + "message": "BETA Server is enabled!" + }, + "openOptionsPage": { + "message": "Open options page" + }, + "resetToDefault": { + "message": "Reset settings to default" + }, + "confirmResetToDefault": { + "message": "Are you sure you want to reset all settings to their default values? This cannot be undone." + }, + "exportSegments": { + "message": "Export segments" + }, + "importSegments": { + "message": "Import segments" + }, + "Import": { + "message": "Import", + "description": "Button to initiate importing segments. Appears under the textbox where they paste in the data" + }, + "redeemSuccess": { + "message": "Redeem Successful!" + }, + "redeemFailed": { + "message": "License key is invalid" + }, + "hideUpsells": { + "message": "Hide options not available without extra payment" + }, + "hideNewFeatureUpdates": { + "message": "Hide prompts about new features" + }, + "chooseACountry": { + "message": "Choose a country" + }, + "noDiscount": { + "message": "You do not qualify for a discount" + }, + "discountLink": { + "message": "Discount Link (See the pink price)" + }, + "selectYourCountry": { + "message": "Select your country" + }, + "cantAfford": { + "message": "If you can't afford to purchase a license, click {here} to see if you are eligible for a discount", + "description": "Keep the curly braces. The word 'here' should be translated as well." + }, + "patreonSignIn": { + "message": "Sign in with Patreon" + }, + "redeem": { + "message": "Redeem" + }, + "joinOnPatreon": { + "message": "Subscribe on Patreon" + }, + "oneTimePurchase": { + "message": "One Time Purchase" + }, + "enterLicenseKey": { + "message": "Enter License Key" + }, + "unsubmittedSegmentCounts": { + "message": "You currently have {0} on {1}", + "description": "Example: You currently have 12 unsubmitted segments on 5 videos" + }, + "unsubmittedSegmentCountsZero": { + "message": "You currently have no unsubmitted segments", + "description": "Replaces 'unsubmittedSegmentCounts' string when there are no unsubmitted segments" + }, + "unsubmittedSegmentsSingular": { + "message": "unsubmitted segment", + "description": "Example: You currently have 1 *unsubmitted segment* on 1 video" + }, + "unsubmittedSegmentsPlural": { + "message": "unsubmitted segments", + "description": "Example: You currently have 12 *unsubmitted segments* on 5 videos" + }, + "videosSingular": { + "message": "video", + "description": "Example: You currently have 3 unsubmitted segments on 1 *video*" + }, + "videosPlural": { + "message": "videos", + "description": "Example: You currently have 12 unsubmitted segments on 5 *videos*" + }, + "clearUnsubmittedSegments": { + "message": "Clear all segments", + "description": "Label for a button in settings" + }, + "clearUnsubmittedSegmentsConfirm": { + "message": "Are you sure you want to clear all your unsubmitted segments?", + "description": "Confirmation message for the Clear unsubmitted segments button" + }, + "showUnsubmittedSegments": { + "message": "Show segments", + "description": "Show/hide button for the unsubmitted segments list" + }, + "hideUnsubmittedSegments": { + "message": "Hide segments", + "description": "Show/hide button for the unsubmitted segments list" + }, + "videoID": { + "message": "Video ID", + "description": "Header of the unsubmitted segments list" + }, + "segmentCount": { + "message": "Segment Count", + "description": "Header of the unsubmitted segments list" + }, + "actions": { + "message": "Actions", + "description": "Header of the unsubmitted segments list" + }, + "exportSegmentsAsURL": { + "message": "Share as URL" + }, + "segmentFetchFailureWarning": { + "message": "Warning: The server hasn't responded with segments yet. There might actually be segments on this video already submitted but you just haven't received them due to issues with the server." + }, + "allowScrollingToEdit": { + "message": "Allow Scrolling To Edit Times" + }, + "NoticeTimeAfterSkip": { + "message": "{seconds}s", + "description": "This is used on the popup to show how much time left. It will look like \"5s\". The word {seconds} will be replaced, so keep it here. Translations should only change the \"s\"" + }, + "deArrowFullName": { + "message": "DeArrow - Better Titles and Thumbnails on YouTube", + "description": "Name of the Clickbait extension. The name refers to removing arrows from thumbnails" + }, + "deArrowDescription": { + "message": "Crowdsourcing titles and thumbnails to be descriptive and not sensational", + "description": "Description of the Clickbait extension." + }, + "chooseDescriptive": { + "message": "Choose the most descriptive" + }, + "Original": { + "message": "Original" + }, + "OriginalTitle": { + "message": "Original Title" + }, + "CurrentTime": { + "message": "Current Time" + }, + "resetCustomTitle": { + "message": "Reset Title Back To Original Text" + }, + "resetIcon": { + "message": "Reset Icon" + }, + "TypeYourOwnTitleHere": { + "message": "Type your own title here" + }, + "VideoNotReady": { + "message": "Video not ready" + }, + "FailedToRender": { + "message": "Failed to render", + "description": "Thumbnail preview failed to render" + }, + "CanvasMissing": { + "message": "Canvas missing", + "description": "Canvas is the name of an HTML element used to draw thumbnails onto" + }, + "ExceptionWhileRendering": { + "message": "Exception while rendering", + "description": "Displayed if there is a general error when trying to render the thumbnail" + }, + "FailedToLoad": { + "message": "Failed to load", + "description": "Thumbnail failed to load" + }, + "titleFormatting": { + "message": "Title Format" + }, + "Disabled": { + "message": "Disabled" + }, + "CapitalizeWords": { + "message": "Capitalize Words" + }, + "TitleCase": { + "message": "Title Case" + }, + "SentenceCase": { + "message": "Sentence Case" + }, + "LowerCase": { + "message": "Lower Case" + }, + "FirstLetterUppercase": { + "message": "First Letter Uppercase" + }, + "shouldCleanEmojis": { + "message": "Remove Emojis" + }, + "onlyTitleCaseInEnglish": { + "message": "Capitalize Words for Non-English Titles" + }, + "onlyTitleCaseInEnglishDescription": { + "message": "Language detection is not perfect and detects some English titles as non-English." + }, + "thumbnailFallbackOption": { + "message": "When No Submitted Thumbnail Exists" + }, + "whatThumbnailFallbackOption": { + "message": "When selecting a random time, it will use SponsorBlock data to ensure a time in a promotional segment is not selected.", + "description": "Describing the option for the crowdsourced thumbnail system if no thumbnail has been submitted. It can use a random time instead." + }, + "RandomTime": { + "message": "Show a screenshot from a random time" + }, + "TheOriginalThumbnail": { + "message": "Show the original thumbnail" + }, + "showABlankBox": { + "message": "Show a blank box" + }, + "AutoGenerated": { + "message": "Show a thumbnail auto-generated by YouTube", + "description": "A DeArrow fallback method that will use the YouTube auto-generated thumbnails instead of a randomly selected time or the original thumbnail" + }, + "Start": { + "message": "Start" + }, + "Middle": { + "message": "Middle" + }, + "keepUnsubmitted": { + "message": "Store Submitted Votes" + }, + "showLiveCover": { + "message": "Show Channel Avatar on Upcoming Videos", + "description": "It replaces the thumbnail and happens when a DeArrow user selects random thumbnails when no submission exists." + }, + "ignoreAbThumbnails": { + "message": "Never Use A/B Tested Thumbnails" + }, + "ignoreAbThumbnailsDescription": { + "message": "Channels can setup tests on their videos where YouTube will show different thumbnails to each person. This option will always use the first thumbnail to maintain consistency." + }, + "abThumbnailsWarning": { + "message": "Warning: This video currently has a thumbnail A/B test running. This means that the thumbnail may change often. You probably should not vote for the original thumbnail due to this risk." + }, + "whatKeepUnsubmitted": { + "message": "Keep submitted votes after voting to show the titles and thumbnails you chose instead of the top voted one on the server." + }, + "keepUnsubmittedInPrivate": { + "message": "Store Submitted Votes From Private Tabs" + }, + "useThumbnailGenerationService": { + "message": "Use Thumbnail Generation Service" + }, + "titleMaxLines": { + "message": "Maximum Lines for Title" + }, + "titleMaxLinesDescription": { + "message": "Video titles will be spread over this many lines in suggestions." + }, + "onAllPages": { + "message": "On All Pages", + "description": "Setting for when the server-side thumbnail generator should be used for the thumbnail replacement feature." + }, + "onAllPagesExceptVideo": { + "message": "On All Pages Except Video Pages", + "description": "Setting for when the server-side thumbnail generator should be used for the thumbnail replacement feature." + }, + "Never": { + "message": "Never" + }, + "thumbnailGeneratorDescription1": { + "message": "The thumbnail generation service significantly speeds up thumbnail generation by sending an anonymous request with the videoID to a remote server. The thumbnail will then either be generated, or pulled from a cache if it has already been generated." + }, + "thumbnailGeneratorDescription2": { + "message": "If used on video pages, this could potentially leak unlisted videoIDs to this server. Setting this to \"On All Pages Except Video Pages\" will avoid this problem. Another option is to host your own thumbnail generation service." + }, + "thumbnailGeneratorDescription3": { + "message": "If use of the thumbnail generation service is disabled, all requests will use a k-anonymity query system, which makes it harder for the server to predict which videos were fetched, and a slower local thumbnail generation service will be used.", + "description": "https://en.wikipedia.org/wiki/K-anonymity is a system used to anonymise requests." + }, + "thumbnailGeneratorSourceCode": { + "message": "Thumbnail Generation Service Source Code" + }, + "moreAboutKAnonymity": { + "message": "More about K-Anonymity", + "description": "https://en.wikipedia.org/wiki/K-anonymity is a system used to anonymise requests." + }, + "alwaysShowShowOriginalButton": { + "message": "Always Display The \"Show Original\" Button" + }, + "whatAlwaysShowShowOriginalButton": { + "message": "If you want to always know if a title/thumbnail has changed, enable this." + }, + "showOriginalOnHover": { + "message": "Show Original Details on Hover" + }, + "showIconForFormattedTitles": { + "message": "Display \"Show Original\" Button for Auto-Formatted Titles" + }, + "fetchTimeout": { + "message": "Data Fetch Timeout (ms)" + }, + "fetchTimeoutDescription": { + "message": "Show original titles and thumbnails if the server doesn't respond in this much time." + }, + "renderTimeout": { + "message": "Thumbnail Render Timeout (ms)" + }, + "renderTimeoutDescription": { + "message": "Show original thumbnails if it cannot generate a thumbnail in this much time." + }, + "startLocalRenderTimeout": { + "message": "Start Local Thumbnail Generation Timeout (ms)", + "description": "If the server takes this long to generate a thumbnail, it start trying to generate one locally." + }, + "startLocalRenderTimeoutDescription": { + "message": "If the server takes this long to generate a thumbnail, start trying to generate one locally." + }, + "Enable": { + "message": "Enable" + }, + "Titles": { + "message": "Titles", + "description": "Referring to titles of YouTube videos" + }, + "Thumbnails": { + "message": "Thumbnails", + "description": "Referring to thumbnails of YouTube videos" + }, + "Error": { + "message": "Error" + }, + "ShowOriginal": { + "message": "Show Original Details" + }, + "ShowModified": { + "message": "Show Modified Details" + }, + "FillerWarning": { + "message": "Warning: This is an incredibly aggressive category. You most likely will have to unskip stuff, or disable it sometimes. Be warned that many videos have over 50% or more of the video skipped! However, remember that there are still specific guidelines to follow when submitting.", + "description": "Warning that appears when enabling the filler tangent category" + }, + "chatboxDescription": { + "message": "Join on Discord or Matrix to stay in this chat permanently", + "description": "Appears on the top of the integrated chatbox" + }, + "showGuidelineHelp": { + "message": "Show Guideline Help", + "description": "Setting to show a summary of the guidelines on the submission page" + }, + "tip1": { + "message": "Avoid exaggerated facial expressions", + "description": "Referring to the thumbnail of a video" + }, + "tip2": { + "message": "Think big picture, don't just answer the original title's question", + "description": "This is a tip about submitting a new DeArrow replacement title. If the original title is an attention grabbing title, the DeArrow title shouldn't just be an answer to that. It instead should be based on the contents of the video." + }, + "tip3": { + "message": "Avoid describing reactions to the video (\"shocking\")", + "description": "Referring to the title of a YouTube video. Shocking being when something is described as shocking" + }, + "tip4": { + "message": "Provide enough information to make an informed choice before clicking" + }, + "tip5": { + "message": "Capitalize it like a sentence", + "description": "Tip about submitting titles to DeArrow" + }, + "dearrowHelpSponsorBlockImported": { + "message": "Note: Your SponsorBlock settings have been automatically imported!" + }, + "howItWorks": { + "message": "How it works" + }, + "discordPromotion": { + "message": "Come contribute, make some suggestions and help out on {discord} or on {matrix}" + }, + "deArrowDonationText": { + "message": "If you like what I've done so far, and want to help me with money, here's a link" + }, + "termsAgreement": { + "message": "By using this extension, you agree to the {privacy-policy} and {terms}" + }, + "privacyPolicy": { + "message": "Privacy Policy" + }, + "termsOfUse": { + "message": "Terms of Use" + }, + "openSourceLicenses": { + "message": "Open Source Licenses" + }, + "defaultToOriginals": { + "message": "Default To Original Video Information" + }, + "whatDefaultToOriginals": { + "message": "Show the original title and thumbnail by default, but have a button that appears on hover to see the custom titles and thumbnails." + }, + "replaceTitles": { + "message": "Replace Titles" + }, + "replaceThumbnails": { + "message": "Replace Thumbnails" + }, + "useCrowdsourcedTitles": { + "message": "Use Crowdsourced Titles" + }, + "whatUseCrowdsourcedTitles": { + "message": "If disabled, it will format titles but not use community submitted titles", + "description": "Description under the \"Use Crowdsourced Titles\" option" + }, + "areYouSureDeleteConfig": { + "message": "Are you sure you would like to delete this configuration?", + "description": "Appears when deleting a configuration for channel-based settings" + }, + "NewConfiguration": { + "message": "New Configuration" + }, + "DeleteConfiguration": { + "message": "Delete Configuration" + }, + "ChannelAllowlist": { + "message": "Channel Allowlist" + }, + "ConfigurationName": { + "message": "Configuration Name" + }, + "ChannelListInstructions": { + "message": "Enter any channels you want to apply this configuration to in the box below, separated by new lines. Both Channel IDs and display names are supported. @ Usernames are not supported. You can get channel IDs from clicking the share button on the channel's about page. To get to the about page, click on the channel description that appears below their channel name on their channel page.", + "description": "Instructions for the channel allowlist feature in DeArrow to configure settings for specific channels" + }, + "NoConfigurationsSetup": { + "message": "No configurations setup yet. Click the button at the top to add a new configuration.", + "description": "Appears when there are no channel configurations setup yet on the channel allow list page" + }, + "DeArrowPromotionMessage": { + "message": "Stop clickbait by replacing titles and thumbnails with more accurate ones" + }, + "DeArrowPromotionMessage2": { + "message": "Tired of clickbait? Check out my new extension for improving titles and thumbnails" + }, + "DeArrowPromotionMessage3": { + "message": "Also check out DeArrow", + "description": "DeArrow is the name of the extension" + }, + "DeArrowTitleReplacementSuggestion": { + "message": "Don't like this title? If you prefer the title below, consider checking out the title replacement feature in DeArrow.", + "description": "A title will be displayed below this to demonstrate what the alternative title would be." + }, + "RandomThumbnailExplanation": { + "message": "This thumbnail is chosen from a random timestamp because there isn't a submission on this video yet", + "description": "A description during on boarding to explain the random thumbnail setting" + }, + "RandomThumbnailAndAutoFormattedExplanation": { + "message": "This thumbnail is chosen from a random timestamp and the title is auto-formatted because there isn't a submission on this video yet", + "description": "A description during on boarding to explain the random thumbnail and autoformatting setting" + }, + "YouCanChangeThisDefaultBelow": { + "message": "You can change this default below", + "description": "Appears in onboarding below explanation of random thumbnail and autoformatting" + }, + "dearrowStatsMessage": { + "message": "{titles} titles and {thumbnails} thumbnails have been replaced since you installed this extension", + "description": "Appears on the DeArrow popup to show how many titles and thumbnails have been replaced since install" + }, + "dearrowStatsMessageTitlePart": { + "message": "{titles} title ", + "description": "Title singular part of message. Appears on the DeArrow popup to show how many titles and thumbnails have been replaced since install" + }, + "dearrowStatsMessageTitlesPart": { + "message": "{titles} titles ", + "description": "Title plural part of message. Appears on the DeArrow popup to show how many titles and thumbnails have been replaced since install" + }, + "dearrowStatsMessageThumbnailPart": { + "message": "and {thumbnails} thumbnail", + "description": "Thumbnail singular part of message. Appears on the DeArrow popup to show how many titles and thumbnails have been replaced since install" + }, + "dearrowStatsMessageThumbnailsPart": { + "message": "and {thumbnails} thumbnails", + "description": "Thumbnail plural part of message. Appears on the DeArrow popup to show how many titles and thumbnails have been replaced since install" + }, + "dearrowStatsMessage2": { + "message": "{titleAndThumbnailMessage} have been replaced since you installed this extension", + "description": "{titleAndThumbnailMessage} will become '{titles} titles and {thumbnails} thumbnails' from the other messages. It can be moved to a different part of the message if needed. Appears on the DeArrow popup to show how many titles and thumbnails have been replaced since install" + }, + "countReplacements": { + "message": "Count Title and Thumbnail Replacements" + }, + "countReplacementsDescription": { + "message": "Used to give you statistics in the popup.", + "description": "On options page describing the setting for counting how many times titles and thumbnails have been replaced in DeArrow" + }, + "YtNeuterMessage": { + "message": "Add a filterlist to block surveys, merch shelves, and other promotional page elements using yt-neuter" + }, + "requiresUblock": { + "message": "Requires uBlock Origin" + }, + "videoIDWrongWhenSubmittingError": { + "message": "Something has gone wrong with the videoID detection. Please try refreshing before submitting to ensure it gets submitted for the correct video. If this is happening a lot, please send a report of this along with the other extensions or userscripts you have installed through GitHub, Discord or Matrix." + }, + "dearrowLogoCredit": { + "message": "Logo based on Twemoji licensed under CC-BY 4.0" + }, + "zoomToFillUnsupported": { + "message": "SponsorBlock is not compatible with the extension \"Zoom to Fill\". There are many alternatives you can use instead that will work properly." + }, + "freeTrialStarted": { + "message": "Your free trial has successfully started. Visit YouTube to test it out" + }, + "freeTrialEnded": { + "message": "Your free trial is over" + }, + "freeTrialPrompt": { + "message": "If you want to test it out for an hour, you can start a free trial with the button below." + }, + "startFreeTrial": { + "message": "Start free trial" + }, + "youCannotVoteDuringTrial": { + "message": "You cannot vote during the free trial", + "description": "Refers to voting for DeArrow titles and thumbnails" + }, + "freeAccessRequested": { + "message": "You are successfully registered for free access. You will be notified when free access is granted." + }, + "freeAccessComplete": { + "message": "Congrats! You now have free access to DeArrow" + }, + "DeArrowNotActivated": { + "message": "DeArrow is not activated" + }, + "ActivateDeArrow": { + "message": "Activate DeArrow" + }, + "DeArrowIsActivated": { + "message": "DeArrow has been successfully activated" + }, + "Close": { + "message": "Close" + }, + "ViewLicenseKey": { + "message": "View License Key" + }, + "SharingIsCaring": { + "message": "Sharing is caring" + }, + "cleanPopup": { + "message": "Hide Clutter in Segment List Popup" + }, + "syncDisabledWarning": { + "message": "Warning: Extension storage has been disabled in your browser. Settings will not be saved if you try saving them." + }, + "syncDisabledWarningDeArrow": { + "message": "DeArrow will not function without storage." + }, + "syncDisabledFirefoxSuggestions": { + "message": "You can enable it by going to about:config and setting the value of \"webextensions.storage.sync.enabled\" to true." + }, + "storageFull": { + "message": "Extension storage is full. Please delete some unsubmitted segments in the options." + }, + "previewSegmentRequired": { + "message": "Please preview your segments before submitting. You can do this by clicking the preview button or using the following shortcut:", + "description": "Appears when trying to submit a segment without previewing it first. After the colon, the shortcut will appear" + }, + "actAsVip": { + "message": "Act as VIP", + "description": "Toggle switch for VIP (SponsorBlock moderators) to be able to make vote actions without using their powers." + } +} \ No newline at end of file diff --git a/public/_locales/en/messages.json b/public/_locales/en/messages.json new file mode 100644 index 00000000..9040f87f --- /dev/null +++ b/public/_locales/en/messages.json @@ -0,0 +1,1223 @@ +{ + "fullName": { + "message": "哔哩哔哩广告跳过助手", + "description": "Name of the extension." + }, + "Description": { + "message": "恰饭?桌子都给你掀了(/= _ =)/~┴┴ 跳过B站视频中的赞助广告、订阅提醒等片段。标记视频中的赞助广告来节约大家的时间。", + "description": "Description of the extension." + }, + "400": { + "message": "此请求无效" + }, + "409": { + "message": "已经提交过了" + }, + "channelWhitelisted": { + "message": "UP主已加入白名单!" + }, + "Segment": { + "message": "片段" + }, + "Segments": { + "message": "片段" + }, + "SegmentsCap": { + "message": "片段" + }, + "Chapters": { + "message": "章节" + }, + "showSegmentNameInChapterBar": { + "message": "在视频时间旁显示当前片段" + }, + "upvoteButtonInfo": { + "message": "为这个片段点赞" + }, + "reportButtonTitle": { + "message": "反馈" + }, + "reportButtonInfo": { + "message": "反馈此片段错误。" + }, + "Dismiss": { + "message": "忽略" + }, + "Loading": { + "message": "加载中..." + }, + "Hide": { + "message": "不再显示" + }, + "hitGoBack": { + "message": "点击取消跳过以回到您原来的样子。" + }, + "unskip": { + "message": "取消跳过" + }, + "reskip": { + "message": "继续跳过" + }, + "unmute": { + "message": "取消静音" + }, + "paused": { + "message": "已暂停" + }, + "manualPaused": { + "message": "计时器已停止" + }, + "confirmMSG": { + "message": "要编辑或删除个别值,请点击信息按钮,或点击右上角的扩展图标打开扩展弹窗。" + }, + "clearThis": { + "message": "您确定要清空它吗?\n\n" + }, + "Unknown": { + "message": "提交您的赞助商广告时间时出错。请稍后再试。" + }, + "sponsorFound": { + "message": "此视频在数据库中有可跳过片段!" + }, + "sponsor404": { + "message": "未找到可跳片段" + }, + "sponsorStart": { + "message": "片段现在开始" + }, + "sponsorEnd": { + "message": "片段现在结束" + }, + "sponsorCancel": { + "message": "取消创建片段" + }, + "noVideoID": { + "message": "未找到哔哩哔哩视频。\n如果识别错误,请刷新此页面。" + }, + "refreshSegments": { + "message": "刷新片段" + }, + "success": { + "message": "成功 !" + }, + "voted": { + "message": "已投票!" + }, + "serverDown": { + "message": "服务器似乎已宕机 (/゚Д゚)/" + }, + "connectionError": { + "message": "连接错误。错误代码: " + }, + "segmentsStillLoading": { + "message": "片段仍在加载中..." + }, + "clearTimes": { + "message": "清除片段" + }, + "openPopup": { + "message": "打开 SponsorBlock 弹窗" + }, + "closePopup": { + "message": "关闭弹窗" + }, + "closeIcon": { + "message": "关闭图标" + }, + "OpenSubmissionMenu": { + "message": "打开提交菜单" + }, + "sortSegments": { + "message": "排序片段" + }, + "submitCheck": { + "message": "您确定要提交它吗?" + }, + "whitelistChannel": { + "message": "将UP主列入白名单" + }, + "removeFromWhitelist": { + "message": "将UP主移出白名单" + }, + "voteOnTime": { + "message": "对片段投票" + }, + "Submissions": { + "message": "提交数" + }, + "savedPeopleFrom": { + "message": "您为大家节省了 " + }, + "viewLeaderboard": { + "message": "排行榜" + }, + "recordTimesDescription": { + "message": "提交" + }, + "submissionEditHint": { + "message": "片段编辑将在您单击提交后显示", + "description": "Appears in the popup to inform them that editing has been moved to the video player." + }, + "popupHint": { + "message": "提示:您可以在选项中为提交动作绑定按键" + }, + "clearTimesButton": { + "message": "清除时间" + }, + "Username": { + "message": "用户名" + }, + "setUsername": { + "message": "设定用户名" + }, + "copyPublicID": { + "message": "复制公开的用户ID" + }, + "copySegmentID": { + "message": "复制片段 ID" + }, + "hideThis": { + "message": "隐藏" + }, + "Options": { + "message": "选项" + }, + "showButtons": { + "message": "在播放器上显示信息按钮" + }, + "hideButtons": { + "message": "在播放器上隐藏按钮" + }, + "hideButtonsDescription": { + "message": "隐藏在播放器控制栏提交片段的按钮" + }, + "showSkipButton": { + "message": "播放器显示跳至精华片段按钮" + }, + "showInfoButton": { + "message": "在播放器上显示信息按钮" + }, + "hideInfoButton": { + "message": "在播放器上隐藏信息按钮" + }, + "autoHideInfoButton": { + "message": "自动隐藏信息按钮" + }, + "hideDeleteButton": { + "message": "在播放器上隐藏删除按钮" + }, + "showDeleteButton": { + "message": "在播放器上显示删除按钮" + }, + "enableViewTracking": { + "message": "启用跳过次数统计跟踪" + }, + "whatViewTracking": { + "message": "此功能追踪您跳过了哪些片段,让用户知道他们提交的片段帮助了多少人。同时点赞会作为依据,确保垃圾信息不会污染数据库。在您每次跳过片段时,我们都会向服务器发送一条消息。希望大家开启此项设置,以便得到更准确的统计数据。:)" + }, + "enableViewTrackingInPrivate": { + "message": "在无痕模式中启用跳过计数跟踪" + }, + "enableTrackDownvotes": { + "message": "保存差评片段" + }, + "whatTrackDownvotes": { + "message": "保存被你差评的片段,即使在刷新后也会保持隐藏" + }, + "trackDownvotesWarning": { + "message": "警告:禁用此功能将删除所有先前保存的差评" + }, + "enableQueryByHashPrefix": { + "message": "按哈希前缀查询" + }, + "whatQueryByHashPrefix": { + "message": "使用视频 ID 哈希值的前 4 个字符而非整个视频 ID 向服务器查询片段。服务器将返回所有具有类似哈希值的视频数据。" + }, + "enableRefetchWhenNotFound": { + "message": "新视频重复获取片段" + }, + "whatRefetchWhenNotFound": { + "message": "如果新视频中没有发现可跳片段,将每隔几分钟再次尝试获取片段信息。" + }, + "enableShowCategoryWithoutPermission": { + "message": "在提交菜单中显示类别,即使没有提交权限" + }, + "whatShowCategoryWithoutPermission": { + "message": "一些类别由于有最低权限要求,需要得到许可才能提交" + }, + "showNotice": { + "message": "重新显示跳过通知" + }, + "showSkipNotice": { + "message": "在跳过片段后显示通知" + }, + "showCategoryGuidelines": { + "message": "显示类别帮助" + }, + "noticeVisibilityMode0": { + "message": "全尺寸的跳过通知" + }, + "noticeVisibilityMode1": { + "message": "缩小自动跳过的提醒" + }, + "noticeVisibilityMode2": { + "message": "缩小所有的跳过提醒" + }, + "noticeVisibilityMode3": { + "message": "减弱自动跳过的提醒" + }, + "noticeVisibilityMode4": { + "message": "减弱所有的跳过提醒" + }, + "longDescription": { + "message": "哔哩哔哩广告跳过助手可帮您跳过B站视频中的恰饭广告、开场结尾、三连提醒和其他烦人片段。广告助手是一个众包的浏览器扩展,任何人可以提交B站视频中的广告和其他片段的开始和结束时间。如果有一人提交了信息,其他所有使用此扩展的人都能直接跳过广告片段。您也可以跳过音乐视频中的非音乐部分。", + "description": "Full description of the extension on the store pages." + }, + "website": { + "message": "网站", + "description": "Used on Firefox Store Page" + }, + "sourceCode": { + "message": "源代码", + "description": "Used on Firefox Store Page" + }, + "noticeUpdate": { + "message": "通知已升级!", + "description": "The first line of the message displayed after the notice was upgraded." + }, + "noticeUpdate2": { + "message": "如果您依然不喜欢它,请按下不再显示按钮。", + "description": "The second line of the message displayed after the notice was upgraded." + }, + "setSkipShortcut": { + "message": "跳过片段", + "description": "Keybind label" + }, + "setStartSponsorShortcut": { + "message": "片段开始/停止", + "description": "Keybind label" + }, + "setOpenSubmissionMenuKeybind": { + "message": "打开提交菜单", + "description": "Keybind label" + }, + "setSubmitKeybind": { + "message": "提交片段", + "description": "Keybind label" + }, + "setPreviewKeybind": { + "message": "预览片段", + "description": "Keybind label" + }, + "setCloseSkipNoticeKeybind": { + "message": "关闭跳过通知", + "description": "Keybind label" + }, + "nextFrameKeybind": { + "message": "视频下一帧", + "description": "Keybind label" + }, + "previousFrameKeybind": { + "message": "视频前一帧", + "description": "Keybind label" + }, + "keybindDescription": { + "message": "请按下想绑定的按键。如果您想使用组合快捷键,请勾选左侧的选项。" + }, + "0": { + "message": "连接超时。请检查您的网络连接。如果您的网络运行正常,则可能是服务器过载或宕机。" + }, + "disableSkipping": { + "message": "已开启跳过" + }, + "enableSkipping": { + "message": "已关闭跳过" + }, + "yourWork": { + "message": "您的提交", + "description": "Used to describe the section that will show you the statistics from your submissions." + }, + "502": { + "message": "服务器似乎已过载。请稍后再试。" + }, + "errorCode": { + "message": "错误代码: " + }, + "skip": { + "message": "跳过" + }, + "mute": { + "message": "静音" + }, + "full": { + "message": "整个视频", + "description": "Used for the name of the option to label an entire video as sponsor or self promotion." + }, + "skip_category": { + "message": "跳过{0}?" + }, + "mute_category": { + "message": "要静音 {0} 吗?" + }, + "skip_to_category": { + "message": "要跳到 {0} 吗?", + "description": "Used for skipping to things (Skip to Highlight)" + }, + "skipped": { + "message": "{0} 已跳过", + "description": "Example: Sponsor Skipped" + }, + "muted": { + "message": "{0} 已静音", + "description": "Example: Sponsor Muted" + }, + "skipped_to_category": { + "message": "已跳至 {0}", + "description": "Used for skipping to things (Skipped to Highlight)" + }, + "disableAutoSkip": { + "message": "禁用自动跳过" + }, + "enableAutoSkip": { + "message": "启用自动跳过" + }, + "audioNotification": { + "message": "跳过时音频通知" + }, + "audioNotificationDescription": { + "message": "在跳过片段时播放声音。如果禁用(或禁用自动跳过),则不会播放声音。" + }, + "showTimeWithSkips": { + "message": "显示减去可跳片段后的时间" + }, + "showTimeWithSkipsDescription": { + "message": "此时间位于进度条下方的当前时间旁边,用括号框住。 显示的是视频减去所有可跳片段后的时间,可跳片段包括标记为“在进度条中显示”的片段。" + }, + "youHaveSkipped": { + "message": "您已跳过 " + }, + "minLower": { + "message": "分钟" + }, + "minsLower": { + "message": "分钟" + }, + "hourLower": { + "message": "小时" + }, + "hoursLower": { + "message": "小时" + }, + "youHaveSavedTime": { + "message": "您为大家节省了", + "description": "You've saved people from 887,362 segments (236d 15h 5.3 minutes of their lives)." + }, + "youHaveSavedTimeEnd": { + "message": " 的生命", + "description": "You've saved people from 887,362 segments (236d 15h 5.3 minutes of their lives)." + }, + "statusReminder": { + "message": "在 status.sponsor.ajay.app 检查服务器状态。" + }, + "changeUserID": { + "message": "导入/导出您的私人用户ID" + }, + "whatChangeUserID": { + "message": "私人ID应该被保密。如果他人获得了你的私人ID,他就可以冒充您。如果您想找公开用户ID,请点击弹出窗口中的剪贴板图标。" + }, + "setUserID": { + "message": "设置私人用户ID" + }, + "userIDChangeWarning": { + "message": "警告:更改私人用户ID是永久性的。您确定要这么做吗?请务必备份您的旧私人ID以防万一。" + }, + "createdBy": { + "message": "创建者" + }, + "minDuration": { + "message": "最小持续时间(秒):" + }, + "minDurationDescription": { + "message": "短于设定值的片段将不会被跳过或显示在播放器中。" + }, + "enableManualSkipOnFullVideo": { + "message": "当整个视频都被标记为广告时使用手动跳过" + }, + "whatManualSkipOnFullVideo": { + "message": "如果你想看软广视频时不跳过中间的内容,而是观看完整视频,可以启用软广手动跳过" + }, + "skipNoticeDuration": { + "message": "跳过提醒持续时间(秒):" + }, + "skipNoticeDurationDescription": { + "message": "跳过提醒将显示至少这么多秒。手动跳过的提醒可能会显示更久。" + }, + "shortCheck": { + "message": "以下的提交短于您的最小持续时间选项。这代表它们可能已经被提交,只是由于该选项被忽略了。您确定要提交吗?" + }, + "liveOrPremiere": { + "message": "无法在进行中的直播或首播提交片段。请等待直播结束后刷新页面并确认片段仍然有效,再次提交。" + }, + "showUploadButton": { + "message": "显示上传按钮" + }, + "customServerAddress": { + "message": "广告助手服务器地址" + }, + "customServerAddressDescription": { + "message": "广告跳过助手的服务器地址。\n不建议更改,除非您有自己的服务器。" + }, + "dataFetchingServerAddress": { + "message": "数据获取服务器地址" + }, + "dataFetchingServerAddressDescription": { + "message": "用于联系数据获取服务器的地址。\n不建议更改,除非您有自己的服务器。" + }, + "thumbnailCacheServerAddress": { + "message": "缩略图缓存服务器地址" + }, + "save": { + "message": "保存" + }, + "reset": { + "message": "重置" + }, + "customAddressError": { + "message": "此地址格式不正确。请确保开头有 http:// 或 https:// ,结尾没有斜杠 / 。" + }, + "areYouSureReset": { + "message": "您确定要重置吗?" + }, + "exportOptions": { + "message": "导入/导出所有选项" + }, + "exportOtherData": { + "message": "导入/导出所有其他数据" + }, + "exportOptionsCopy": { + "message": "编辑/复制" + }, + "exportOptionsDownload": { + "message": "保存到文件" + }, + "exportOptionsUpload": { + "message": "从文件加载" + }, + "whatExportOptions": { + "message": "这是您所有设置的 JSON 格式。它包含了您的私人用户 ID ,所以您一定要谨慎的保管它。" + }, + "setOptions": { + "message": "设定选项" + }, + "exportOptionsWarning": { + "message": "警告:更改选项是永久性的且可能破坏您安装的东西。您确定要这么做吗?请确保已备份旧文件以防万一。" + }, + "incorrectlyFormattedOptions": { + "message": "此 JSON 格式不正确。您的选项尚未更改。" + }, + "confirmNoticeTitle": { + "message": "提交片段" + }, + "submit": { + "message": "提交" + }, + "cancel": { + "message": "取消" + }, + "delete": { + "message": "删除" + }, + "preview": { + "message": "预览" + }, + "unsubmitted": { + "message": "未提交" + }, + "inspect": { + "message": "检查" + }, + "edit": { + "message": "编辑" + }, + "copyDebugInformation": { + "message": "复制调试信息到剪贴板" + }, + "copyDebugInformationFailed": { + "message": "复制到剪贴板失败" + }, + "copyDebugInformationOptions": { + "message": "复制信息到剪贴板,在提交错误时提供给开发者。 敏感信息如:您的用户ID、UP主白名单和自定义服务器地址等已被删除。然而,它仍然包含诸如您的useragent ,浏览器,操作系统和插件版本号等信息。 " + }, + "copyDebugInformationComplete": { + "message": "调试信息已复制到剪切板中。 您可以随意移除任何您不想分享的信息。请将其另存为 .txt 文件或粘贴到错误报告中。" + }, + "keyAlreadyUsed": { + "message": "此快捷键已绑定到另一个动作。请选择其他快捷键。" + }, + "to": { + "message": "到", + "description": "Used between segments. Example: 1:20 to 1:30" + }, + "CopiedExclamation": { + "message": "复制成功!", + "description": "Used after something has been copied to the clipboard. Example: 'Copied!'" + }, + "generic_guideline1": { + "message": "包括衔接转场" + }, + "generic_guideline2": { + "message": "装成没有跳过内容一样播放" + }, + "category_sponsor": { + "message": "恰饭广告" + }, + "category_sponsor_description": { + "message": "付费推广、付费推荐和直接广告。不是自我推广或免费提及他们喜欢的事物/创作者/网站/产品。" + }, + "category_sponsor_guideline1": { + "message": "付费推广" + }, + "category_sponsor_guideline2": { + "message": "捐款或自制周边不属于此项" + }, + "category_selfpromo": { + "message": "无偿推广/自我推广" + }, + "category_selfpromo_description": { + "message": "类似于 “恰饭广告” ,但无报酬或是自我推广。包括有关商品、捐赠的部分或合作者的信息。" + }, + "category_selfpromo_guideline1": { + "message": "捐赠、会员和自制周边" + }, + "category_selfpromo_guideline2": { + "message": "与视频无关的免费推广" + }, + "category_selfpromo_guideline3": { + "message": "不是公司设计的产品和周边" + }, + "category_exclusive_access": { + "message": "独家限定" + }, + "category_exclusive_access_description": { + "message": "仅用于标记整个视频。当视频展示了免费或被帮助以获得产品、服务或访问地点时使用。" + }, + "category_exclusive_access_pill": { + "message": "此视频展示了免费或被帮助以获得产品、服务或访问地点", + "description": "Short description for this category" + }, + "category_exclusive_access_guideline1": { + "message": "整个视频都在展示免费/受助以获得和访问的事物" + }, + "category_interaction": { + "message": "三连提醒(订阅)" + }, + "category_interaction_description": { + "message": "视频中间简短提醒观众来一键三连或关注。 如果片段较长,或是有具体内容,则应分类为自我推广。" + }, + "category_interaction_guideline1": { + "message": "短暂提醒要点赞、投币或关注" + }, + "category_interaction_guideline2": { + "message": "包括间接提醒评论和弹幕" + }, + "category_interaction_guideline3": { + "message": "" + }, + "category_interaction_short": { + "message": "三连提醒" + }, + "category_intro": { + "message": "过场/开场动画" + }, + "category_intro_description": { + "message": "没有实际内容的间隔片段。可以是暂停、静态帧或重复动画。不适用于包含内容的过场。" + }, + "category_intro_short": { + "message": "过场" + }, + "category_intro_guideline1": { + "message": "无实际内容的片段" + }, + "category_intro_guideline2": { + "message": "不包括含有内容的转场" + }, + "category_outro": { + "message": "结束画面/结尾致谢" + }, + "category_outro_description": { + "message": "致谢画面或片尾画面。不应用于包含内容的结尾。" + }, + "category_outro_guideline1": { + "message": "不应包含内容,即使致谢或片尾已经出现。" + }, + "category_preview": { + "message": "回顾/概要", + "description": "https://en.wikipedia.org/wiki/Narrative_hook" + }, + "category_preview_description": { + "message": "展示此视频或同系列后续视频将出现的画面集锦,所有内容都将在之后再次出现。" + }, + "category_preview_guideline1": { + "message": "视频中稍后会出现或未来视频会出现的片段" + }, + "category_preview_guideline2": { + "message": "往期视频的回顾总结" + }, + "category_preview_guideline3": { + "message": "不含有新内容" + }, + "category_filler": { + "message": "离题的闲聊/笑话" + }, + "category_filler_description": { + "message": "离题片段标签仅在出现不需要理解视频主要内容的拖时间/无关笑话片段时使用。此标签不能包含有意义的内容或背景细节。这是非常激进的类别,代表您没有心情娱乐。" + }, + "category_filler_short": { + "message": "离题" + }, + "category_filler_guideline1": { + "message": "拖时间/无意义笑话等离题片段" + }, + "category_filler_guideline2": { + "message": "分心、花絮、重播" + }, + "category_filler_guideline3": { + "message": "不需要理解主题的片段" + }, + "category_music_offtopic": { + "message": "音乐:非音乐部分" + }, + "category_music_offtopic_description": { + "message": "仅用于音乐视频。此分类只能用于音乐视频中未包括于其他分类的部分。" + }, + "category_music_offtopic_short": { + "message": "非音乐" + }, + "category_music_offtopic_guideline1": { + "message": "不在官方版本中的部分" + }, + "category_music_offtopic_guideline2": { + "message": "现场表演中的非音乐片段" + }, + "category_poi_highlight": { + "message": "精彩时刻" + }, + "category_poi_highlight_description": { + "message": "大部分人都在寻找的视频片段。类似于“封面在12:34”的评论。" + }, + "category_poi_highlight_guideline1": { + "message": "大部分人想看的片段" + }, + "category_poi_highlight_guideline2": { + "message": "可以帮助略过之前的内容" + }, + "category_poi_highlight_guideline3": { + "message": "可以跳到标题或封面" + }, + "category_livestream_messages": { + "message": "直播:捐赠/消息阅读" + }, + "category_livestream_messages_short": { + "message": "阅读消息" + }, + "autoSkip": { + "message": "自动跳过" + }, + "manualSkip": { + "message": "手动跳过" + }, + "showOverlay": { + "message": "在进度条中显示" + }, + "disable": { + "message": "禁用" + }, + "autoSkip_POI": { + "message": "跳至开始位置" + }, + "manualSkip_POI": { + "message": "视频加载时询问" + }, + "showOverlay_POI": { + "message": "在进度条中显示" + }, + "showOverlay_full": { + "message": "显示标签" + }, + "showOverlay_chapter": { + "message": "显示章节" + }, + "autoSkipOnMusicVideos": { + "message": "自动跳过所有音乐视频中的非音乐片段" + }, + "muteSegments": { + "message": "允许静音的片段而不是跳过" + }, + "fullVideoSegments": { + "message": "当整个视频都是广告时显示图标", + "description": "Referring to the category pill that is now shown on videos that are entirely sponsor or entirely selfpromo" + }, + "fullVideoLabelsOnThumbnails": { + "message": "在视频缩略图上也显示标签", + "description": "Referring to the category pill that is shown on videos that are entirely sponsor or entirely selfpromo on recommended videos, in searches or on the homepage." + }, + "previewColor": { + "message": "未提交颜色", + "description": "Referring to submissions that have not been sent to the server yet." + }, + "seekBarColor": { + "message": "进度条颜色" + }, + "category": { + "message": "类别" + }, + "skipOption": { + "message": "跳过选项", + "description": "Used on the options page to describe the ways to skip the segment (auto skip, manual, etc.)" + }, + "enableTestingServer": { + "message": "启用Beta测试服务器" + }, + "whatEnableTestingServer": { + "message": "您的提交和投票将不会计入主服务器。它只被用于测试。" + }, + "testingServerWarning": { + "message": "当连接到测试服务器时,所有的提交和投票将不会计入主服务器。当您想要进行真实提交时,请确保禁用了此选项。" + }, + "bracketNow": { + "message": "(现在)" + }, + "moreCategories": { + "message": "更多类别" + }, + "chooseACategory": { + "message": "选择类别" + }, + "enableThisCategoryFirst": { + "message": "要提交“{0}”类别的片段,您必须在选项中启用此类别。现在将重定向到选项。", + "description": "Used when submitting segments to only let them select a certain category if they have it enabled in the options." + }, + "poiOnlyOneSegment": { + "message": "警告:此类型的片段一次最多只能使用一个。提交多个片段将随机显示。" + }, + "youMustSelectACategory": { + "message": "您必须为所有您要提交的片段选择类别!" + }, + "bracketStart": { + "message": "(开始)" + }, + "bracketEnd": { + "message": "(结束)" + }, + "End": { + "message": "结束", + "description": "Button that skips to the end of a segment" + }, + "hiddenDueToDownvote": { + "message": "隐藏:差评" + }, + "hiddenDueToDuration": { + "message": "隐藏:过短" + }, + "manuallyHidden": { + "message": "手动隐藏" + }, + "channelDataNotFound": { + "message": "未检测到UP主ID。如果您正在使用嵌入式视频播放器,请到Bilibili网站观看。也可能是B站更改了页面布局,如果您认为是此问题,请在此评论:", + "description": "This error appears in an alert when they try to whitelist a channel and the extension is unable to determine what channel they are looking at." + }, + "invidiousPermissionRefresh": { + "message": "浏览器已撤销在 Invidious 及其他第三方网站运行所需的权限。请点击下方按钮重新激活权限。" + }, + "acceptPermission": { + "message": "接受权限" + }, + "permissionRequestSuccess": { + "message": "权限请求成功!" + }, + "permissionRequestFailed": { + "message": "权限请求失败,您是否点击拒绝?" + }, + "adblockerIssueWhitelist": { + "message": "如果您无法解决这个问题,请禁用“跳过前强制进行频道检查”选项,因为 SponsorBlock 无法获得此视频的频道信息" + }, + "forceChannelCheck": { + "message": "跳过前强制进行频道检查" + }, + "whatForceChannelCheck": { + "message": "默认情况下,即使还未检测出当前是什么频道,也会立即跳过片段。即使在白名单中的频道,一些在开头的片段也可能被跳过。启用此选项将防止这种情况,但所有的跳过将会产生轻微的延迟,因为获取频道 ID 需要一点时间。如果您的网速很快,那延迟可能非常短。" + }, + "forceChannelCheckPopup": { + "message": "请考虑启用“跳过前强制进行频道检查”" + }, + "downvoteDescription": { + "message": "不正确/错误的时间" + }, + "incorrectVote": { + "message": "不正确" + }, + "harmfulVote": { + "message": "有害的", + "description": "Used for chapter segments when the text is harmful/offensive to remove it faster" + }, + "incorrectCategory": { + "message": "更改类别" + }, + "nonMusicCategoryOnMusic": { + "message": "此视频的分类为音乐。 您确定其中包含赞助商广告吗?如果这是“非音乐片段”,请打开扩展选项并启用此类别。 之后,您可以以“非音乐”而不是赞助商广告类别提交此片段。如果您不太明白,请阅读指南。" + }, + "multipleSegments": { + "message": "多个片段" + }, + "guidelines": { + "message": "指南" + }, + "readTheGuidelines": { + "message": "阅读指南!!", + "description": "Show the first time they submit or if they are \"high risk\"" + }, + "categoryUpdate1": { + "message": "类别在这里!" + }, + "categoryUpdate2": { + "message": "开启选项以跳过开头、结尾和商业等内容。" + }, + "help": { + "message": "帮助" + }, + "GotIt": { + "message": "明白了", + "description": "Used as the button to dismiss a tooltip" + }, + "fullVideoTooltipWarning": { + "message": "片段过长。如果整个视频都是关于同一个主题,请将“跳过”改成“整个视频”标签。查看指南了解详情。" + }, + "categoryPillTitleText": { + "message": "整个视频都被标记为此分类且内容过于紧凑,无法分开。" + }, + "chapterNameTooltipWarning": { + "message": "提交的章节名称与现有类别名称相似。如果已经存在分类,您应该优先使用它。" + }, + "experiementOptOut": { + "message": "关闭所有实验性功能", + "description": "This is used in a popup about a new experiment to get a list of unlisted videos to back up since all unlisted videos uploaded before 2017 will be set to private." + }, + "hideForever": { + "message": "永远隐藏" + }, + "warningChatInfo": { + "message": "我们注意到你犯了一些常见错误。我们非常赞赏你迄今所做的工作,但我们努力追求完美,所以即使是非常小的错误,也需要重视:)" + }, + "questionButton": { + "message": "我有疑问" + }, + "askAQuestion": { + "message": "提问" + }, + "warningConfirmButton": { + "message": "我理解原因" + }, + "warningError": { + "message": "尝试确认警告时发生错误:" + }, + "deArrowMessageRecieved": { + "message": "您收到了来自版主的提示" + }, + "Donate": { + "message": "捐赠" + }, + "considerDonating": { + "message": "资助开发" + }, + "hideDonationLink": { + "message": "隐藏捐赠链接" + }, + "darkModeOptionsPage": { + "message": "深色模式选项页面" + }, + "helpPageThanksForInstalling": { + "message": "感谢安装 SponsorBlock。" + }, + "helpPageReviewOptions": { + "message": "请查看下面的选项" + }, + "helpPageFeatureDisclaimer": { + "message": "许多功能默认禁用。如果您想跳过开头、结尾或使用 Invidious 等,请在下方开启。您也可以显示/隐藏界面内容。" + }, + "helpPageHowSkippingWorks": { + "message": "跳过是如何运作的" + }, + "helpPageHowSkippingWorks1": { + "message": "视频片段如果在数据库中存在将被自动跳过。您可以点击插件图标打开弹窗查看预览。" + }, + "helpPageHowSkippingWorks2": { + "message": "当跳过片段时,您会收到提醒。如果时间不对,请点击差评!您也可以在插件弹窗中投票。" + }, + "Submitting": { + "message": "提交中" + }, + "helpPageSubmitting1": { + "message": "您可以使用插件弹窗中的“片段现在开始”按钮或播放器中的按钮提交片段。" + }, + "helpPageSubmitting2": { + "message": "点击播放按钮标记片段开始,点击停止按钮标记片段结束。您可以一次提交多个片段。点击上传按钮会提交片段。点击垃圾桶按钮会删除片段。" + }, + "Editing": { + "message": "正在编辑" + }, + "helpPageEditing1": { + "message": "如果您选错了,您可以点击左侧箭头按钮编辑或删除您的片段。" + }, + "helpPageTooSlow": { + "message": "太慢了" + }, + "helpPageTooSlow1": { + "message": "常用功能支持快捷键。按下分号键“;”标记赞助商广告片段开始和结束,按下撇号“ ’ ”提交。可以在选项中更改按键。如果您使用的不是QWERTY序列键盘,您可能需要更改键位绑定。" + }, + "helpPageCopyOfDatabase": { + "message": "我可以下载数据库吗?如果你人没了会怎样?" + }, + "helpPageCopyOfDatabase1": { + "message": "数据库是公开的,在此访问:" + }, + "helpPageCopyOfDatabase2": { + "message": "源代码是免费公开的。所以即使我出了什么事,你的提交也不会丢失。" + }, + "helpPageNews": { + "message": "新闻和更新记录" + }, + "helpPageSourceCode": { + "message": "在哪里可以获得源代码?" + }, + "Credits": { + "message": "鸣谢" + }, + "LearnMore": { + "message": "了解详情" + }, + "FullDetails": { + "message": "全部细节" + }, + "CopyDownvoteButtonInfo": { + "message": "差评并创建本地副本供您再次提交" + }, + "OpenCategoryWikiPage": { + "message": "打开此类别的百科页面。" + }, + "CopyAndDownvote": { + "message": "复制并差评" + }, + "ContinueVoting": { + "message": "继续投票" + }, + "ChangeCategoryTooltip": { + "message": "这会立即应用到您所有的片段" + }, + "downvote": { + "message": "差评" + }, + "upvote": { + "message": "点赞" + }, + "hideSegment": { + "message": "隐藏片段" + }, + "skipSegment": { + "message": "跳过片段" + }, + "playChapter": { + "message": "播放章节" + }, + "SponsorTimeEditScrollNewFeature": { + "message": "将鼠标悬停在编辑框上,操作鼠标滚轮可以快速调整时间。包含 Ctrl 和 Shift 的组合快捷键可以微调时间。" + }, + "categoryPillNewFeature": { + "message": "新功能!知道视频是否完全是赞助广告或自我推广" + }, + "yearAbbreviation": { + "message": "年", + "description": "100y" + }, + "dayAbbreviation": { + "message": "天", + "description": "100d" + }, + "hourAbbreviation": { + "message": "小时", + "description": "100h" + }, + "optionsTabBehavior": { + "message": "行为", + "description": "Appears in Options as a tab header for options related to categories and skipping behavior. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabInterface": { + "message": "界面", + "description": "Appears in Options as a tab header for options related to GUI and sounds. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabKeyBinds": { + "message": "快捷键", + "description": "Appears in Options as a tab header for keybinds. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabBackup": { + "message": "备份/恢复", + "description": "Appears in Options as a tab header for options related to saving/restoring your settings. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabAdvanced": { + "message": "其他", + "description": "Appears in Options as a tab header for advanced/niche options. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "noticeVisibilityLabel": { + "message": "跳过提醒外观", + "description": "Option label" + }, + "unbind": { + "message": "解除绑定", + "description": "Unbind keyboard shortcut" + }, + "notSet": { + "message": "未设置" + }, + "change": { + "message": "更改" + }, + "youtubeKeybindWarning": { + "message": "这是 Youtube 内置的快捷方式。您确定要使用吗?" + }, + "betaServerWarning": { + "message": "测试服务器已启用!" + }, + "openOptionsPage": { + "message": "打开选项页面" + }, + "resetToDefault": { + "message": "重置所有设置" + }, + "confirmResetToDefault": { + "message": "您确定要将所有设置重置为默认值吗?此操作无法撤销。" + }, + "exportSegments": { + "message": "导出片段" + }, + "importSegments": { + "message": "导入片段" + }, + "Import": { + "message": "导入", + "description": "Button to initiate importing segments. Appears under the textbox where they paste in the data" + }, + "redeemSuccess": { + "message": "兑换成功!" + }, + "redeemFailed": { + "message": "注册码无效" + }, + "hideUpsells": { + "message": "隐藏需要额外付费才能使用的选项" + }, + "hideNewFeatureUpdates": { + "message": "隐藏新功能提示" + }, + "redeem": { + "message": "兑换" + }, + "enterLicenseKey": { + "message": "输入注册码" + }, + "unsubmittedSegmentCounts": { + "message": "您在 {1} 中有 {0}", + "description": "Example: You currently have 12 unsubmitted segments on 5 videos" + }, + "unsubmittedSegmentCountsZero": { + "message": "您目前没有未提交的片段", + "description": "Replaces 'unsubmittedSegmentCounts' string when there are no unsubmitted segments" + }, + "unsubmittedSegmentsSingular": { + "message": "未提交的片段", + "description": "Example: You currently have 1 *unsubmitted segment* on 1 video" + }, + "unsubmittedSegmentsPlural": { + "message": "未提交的片段", + "description": "Example: You currently have 12 *unsubmitted segments* on 5 videos" + }, + "videosSingular": { + "message": "视频", + "description": "Example: You currently have 3 unsubmitted segments on 1 *video*" + }, + "videosPlural": { + "message": "视频", + "description": "Example: You currently have 12 unsubmitted segments on 5 *videos*" + }, + "clearUnsubmittedSegments": { + "message": "清除所有片段", + "description": "Label for a button in settings" + }, + "clearUnsubmittedSegmentsConfirm": { + "message": "您确定要清除所有未提交的片段吗?", + "description": "Confirmation message for the Clear unsubmitted segments button" + }, + "showUnsubmittedSegments": { + "message": "显示片段", + "description": "Show/hide button for the unsubmitted segments list" + }, + "hideUnsubmittedSegments": { + "message": "隐藏片段", + "description": "Show/hide button for the unsubmitted segments list" + }, + "videoID": { + "message": "视频ID", + "description": "Header of the unsubmitted segments list" + }, + "segmentCount": { + "message": "片段数", + "description": "Header of the unsubmitted segments list" + }, + "actions": { + "message": "操作", + "description": "Header of the unsubmitted segments list" + }, + "exportSegmentsAsURL": { + "message": "分享链接" + }, + "segmentFetchFailureWarning": { + "message": "警告:服务器未响应。片段可能已提交,只是由于服务器问题您未收到回应。" + }, + "allowScrollingToEdit": { + "message": "允许滚动编辑时间" + }, + "NoticeTimeAfterSkip": { + "message": "{seconds}秒", + "description": "This is used on the popup to show how much time left. It will look like \"5s\". The word {seconds} will be replaced, so keep it here. Translations should only change the \"s\"" + }, + "FillerWarning": { + "message": "Warning: This is an incredibly aggressive category. You most likely will have to unskip stuff, or disable it sometimes. Be warned that many videos have over 50% or more of the video skipped! However, remember that there are still specific guidelines to follow when submitting.", + "description": "Warning that appears when enabling the filler tangent category" + }, + "YtNeuterMessage": { + "message": "Add a filterlist to block surveys, merch shelves, and other promotional page elements using yt-neuter" + }, + "requiresUblock": { + "message": "需要 uBlock Origin" + }, + "zoomToFillUnsupported": { + "message": "SponsorBlock is not compatible with the extension \"Zoom to Fill\". There are many alternatives you can use instead that will work properly." + }, + "cleanPopup": { + "message": "Hide Clutter in Segment List Popup" + }, + "syncDisabledWarning": { + "message": "Warning: Extension storage has been disabled in your browser. Settings will not be saved if you try saving them." + }, + "syncDisabledWarningDeArrow": { + "message": "DeArrow will not function without storage." + }, + "syncDisabledFirefoxSuggestions": { + "message": "You can enable it by going to about:config and setting the value of \"webextensions.storage.sync.enabled\" to true." + }, + "storageFull": { + "message": "Extension storage is full. Please delete some unsubmitted segments in the options." + }, + "previewSegmentRequired": { + "message": "Please preview your segments before submitting. You can do this by clicking the preview button or using the following shortcut:", + "description": "Appears when trying to submit a segment without previewing it first. After the colon, the shortcut will appear" + } +} \ No newline at end of file diff --git a/public/_locales/zh_CN/messages.json b/public/_locales/zh_CN/messages.json new file mode 100644 index 00000000..9040f87f --- /dev/null +++ b/public/_locales/zh_CN/messages.json @@ -0,0 +1,1223 @@ +{ + "fullName": { + "message": "哔哩哔哩广告跳过助手", + "description": "Name of the extension." + }, + "Description": { + "message": "恰饭?桌子都给你掀了(/= _ =)/~┴┴ 跳过B站视频中的赞助广告、订阅提醒等片段。标记视频中的赞助广告来节约大家的时间。", + "description": "Description of the extension." + }, + "400": { + "message": "此请求无效" + }, + "409": { + "message": "已经提交过了" + }, + "channelWhitelisted": { + "message": "UP主已加入白名单!" + }, + "Segment": { + "message": "片段" + }, + "Segments": { + "message": "片段" + }, + "SegmentsCap": { + "message": "片段" + }, + "Chapters": { + "message": "章节" + }, + "showSegmentNameInChapterBar": { + "message": "在视频时间旁显示当前片段" + }, + "upvoteButtonInfo": { + "message": "为这个片段点赞" + }, + "reportButtonTitle": { + "message": "反馈" + }, + "reportButtonInfo": { + "message": "反馈此片段错误。" + }, + "Dismiss": { + "message": "忽略" + }, + "Loading": { + "message": "加载中..." + }, + "Hide": { + "message": "不再显示" + }, + "hitGoBack": { + "message": "点击取消跳过以回到您原来的样子。" + }, + "unskip": { + "message": "取消跳过" + }, + "reskip": { + "message": "继续跳过" + }, + "unmute": { + "message": "取消静音" + }, + "paused": { + "message": "已暂停" + }, + "manualPaused": { + "message": "计时器已停止" + }, + "confirmMSG": { + "message": "要编辑或删除个别值,请点击信息按钮,或点击右上角的扩展图标打开扩展弹窗。" + }, + "clearThis": { + "message": "您确定要清空它吗?\n\n" + }, + "Unknown": { + "message": "提交您的赞助商广告时间时出错。请稍后再试。" + }, + "sponsorFound": { + "message": "此视频在数据库中有可跳过片段!" + }, + "sponsor404": { + "message": "未找到可跳片段" + }, + "sponsorStart": { + "message": "片段现在开始" + }, + "sponsorEnd": { + "message": "片段现在结束" + }, + "sponsorCancel": { + "message": "取消创建片段" + }, + "noVideoID": { + "message": "未找到哔哩哔哩视频。\n如果识别错误,请刷新此页面。" + }, + "refreshSegments": { + "message": "刷新片段" + }, + "success": { + "message": "成功 !" + }, + "voted": { + "message": "已投票!" + }, + "serverDown": { + "message": "服务器似乎已宕机 (/゚Д゚)/" + }, + "connectionError": { + "message": "连接错误。错误代码: " + }, + "segmentsStillLoading": { + "message": "片段仍在加载中..." + }, + "clearTimes": { + "message": "清除片段" + }, + "openPopup": { + "message": "打开 SponsorBlock 弹窗" + }, + "closePopup": { + "message": "关闭弹窗" + }, + "closeIcon": { + "message": "关闭图标" + }, + "OpenSubmissionMenu": { + "message": "打开提交菜单" + }, + "sortSegments": { + "message": "排序片段" + }, + "submitCheck": { + "message": "您确定要提交它吗?" + }, + "whitelistChannel": { + "message": "将UP主列入白名单" + }, + "removeFromWhitelist": { + "message": "将UP主移出白名单" + }, + "voteOnTime": { + "message": "对片段投票" + }, + "Submissions": { + "message": "提交数" + }, + "savedPeopleFrom": { + "message": "您为大家节省了 " + }, + "viewLeaderboard": { + "message": "排行榜" + }, + "recordTimesDescription": { + "message": "提交" + }, + "submissionEditHint": { + "message": "片段编辑将在您单击提交后显示", + "description": "Appears in the popup to inform them that editing has been moved to the video player." + }, + "popupHint": { + "message": "提示:您可以在选项中为提交动作绑定按键" + }, + "clearTimesButton": { + "message": "清除时间" + }, + "Username": { + "message": "用户名" + }, + "setUsername": { + "message": "设定用户名" + }, + "copyPublicID": { + "message": "复制公开的用户ID" + }, + "copySegmentID": { + "message": "复制片段 ID" + }, + "hideThis": { + "message": "隐藏" + }, + "Options": { + "message": "选项" + }, + "showButtons": { + "message": "在播放器上显示信息按钮" + }, + "hideButtons": { + "message": "在播放器上隐藏按钮" + }, + "hideButtonsDescription": { + "message": "隐藏在播放器控制栏提交片段的按钮" + }, + "showSkipButton": { + "message": "播放器显示跳至精华片段按钮" + }, + "showInfoButton": { + "message": "在播放器上显示信息按钮" + }, + "hideInfoButton": { + "message": "在播放器上隐藏信息按钮" + }, + "autoHideInfoButton": { + "message": "自动隐藏信息按钮" + }, + "hideDeleteButton": { + "message": "在播放器上隐藏删除按钮" + }, + "showDeleteButton": { + "message": "在播放器上显示删除按钮" + }, + "enableViewTracking": { + "message": "启用跳过次数统计跟踪" + }, + "whatViewTracking": { + "message": "此功能追踪您跳过了哪些片段,让用户知道他们提交的片段帮助了多少人。同时点赞会作为依据,确保垃圾信息不会污染数据库。在您每次跳过片段时,我们都会向服务器发送一条消息。希望大家开启此项设置,以便得到更准确的统计数据。:)" + }, + "enableViewTrackingInPrivate": { + "message": "在无痕模式中启用跳过计数跟踪" + }, + "enableTrackDownvotes": { + "message": "保存差评片段" + }, + "whatTrackDownvotes": { + "message": "保存被你差评的片段,即使在刷新后也会保持隐藏" + }, + "trackDownvotesWarning": { + "message": "警告:禁用此功能将删除所有先前保存的差评" + }, + "enableQueryByHashPrefix": { + "message": "按哈希前缀查询" + }, + "whatQueryByHashPrefix": { + "message": "使用视频 ID 哈希值的前 4 个字符而非整个视频 ID 向服务器查询片段。服务器将返回所有具有类似哈希值的视频数据。" + }, + "enableRefetchWhenNotFound": { + "message": "新视频重复获取片段" + }, + "whatRefetchWhenNotFound": { + "message": "如果新视频中没有发现可跳片段,将每隔几分钟再次尝试获取片段信息。" + }, + "enableShowCategoryWithoutPermission": { + "message": "在提交菜单中显示类别,即使没有提交权限" + }, + "whatShowCategoryWithoutPermission": { + "message": "一些类别由于有最低权限要求,需要得到许可才能提交" + }, + "showNotice": { + "message": "重新显示跳过通知" + }, + "showSkipNotice": { + "message": "在跳过片段后显示通知" + }, + "showCategoryGuidelines": { + "message": "显示类别帮助" + }, + "noticeVisibilityMode0": { + "message": "全尺寸的跳过通知" + }, + "noticeVisibilityMode1": { + "message": "缩小自动跳过的提醒" + }, + "noticeVisibilityMode2": { + "message": "缩小所有的跳过提醒" + }, + "noticeVisibilityMode3": { + "message": "减弱自动跳过的提醒" + }, + "noticeVisibilityMode4": { + "message": "减弱所有的跳过提醒" + }, + "longDescription": { + "message": "哔哩哔哩广告跳过助手可帮您跳过B站视频中的恰饭广告、开场结尾、三连提醒和其他烦人片段。广告助手是一个众包的浏览器扩展,任何人可以提交B站视频中的广告和其他片段的开始和结束时间。如果有一人提交了信息,其他所有使用此扩展的人都能直接跳过广告片段。您也可以跳过音乐视频中的非音乐部分。", + "description": "Full description of the extension on the store pages." + }, + "website": { + "message": "网站", + "description": "Used on Firefox Store Page" + }, + "sourceCode": { + "message": "源代码", + "description": "Used on Firefox Store Page" + }, + "noticeUpdate": { + "message": "通知已升级!", + "description": "The first line of the message displayed after the notice was upgraded." + }, + "noticeUpdate2": { + "message": "如果您依然不喜欢它,请按下不再显示按钮。", + "description": "The second line of the message displayed after the notice was upgraded." + }, + "setSkipShortcut": { + "message": "跳过片段", + "description": "Keybind label" + }, + "setStartSponsorShortcut": { + "message": "片段开始/停止", + "description": "Keybind label" + }, + "setOpenSubmissionMenuKeybind": { + "message": "打开提交菜单", + "description": "Keybind label" + }, + "setSubmitKeybind": { + "message": "提交片段", + "description": "Keybind label" + }, + "setPreviewKeybind": { + "message": "预览片段", + "description": "Keybind label" + }, + "setCloseSkipNoticeKeybind": { + "message": "关闭跳过通知", + "description": "Keybind label" + }, + "nextFrameKeybind": { + "message": "视频下一帧", + "description": "Keybind label" + }, + "previousFrameKeybind": { + "message": "视频前一帧", + "description": "Keybind label" + }, + "keybindDescription": { + "message": "请按下想绑定的按键。如果您想使用组合快捷键,请勾选左侧的选项。" + }, + "0": { + "message": "连接超时。请检查您的网络连接。如果您的网络运行正常,则可能是服务器过载或宕机。" + }, + "disableSkipping": { + "message": "已开启跳过" + }, + "enableSkipping": { + "message": "已关闭跳过" + }, + "yourWork": { + "message": "您的提交", + "description": "Used to describe the section that will show you the statistics from your submissions." + }, + "502": { + "message": "服务器似乎已过载。请稍后再试。" + }, + "errorCode": { + "message": "错误代码: " + }, + "skip": { + "message": "跳过" + }, + "mute": { + "message": "静音" + }, + "full": { + "message": "整个视频", + "description": "Used for the name of the option to label an entire video as sponsor or self promotion." + }, + "skip_category": { + "message": "跳过{0}?" + }, + "mute_category": { + "message": "要静音 {0} 吗?" + }, + "skip_to_category": { + "message": "要跳到 {0} 吗?", + "description": "Used for skipping to things (Skip to Highlight)" + }, + "skipped": { + "message": "{0} 已跳过", + "description": "Example: Sponsor Skipped" + }, + "muted": { + "message": "{0} 已静音", + "description": "Example: Sponsor Muted" + }, + "skipped_to_category": { + "message": "已跳至 {0}", + "description": "Used for skipping to things (Skipped to Highlight)" + }, + "disableAutoSkip": { + "message": "禁用自动跳过" + }, + "enableAutoSkip": { + "message": "启用自动跳过" + }, + "audioNotification": { + "message": "跳过时音频通知" + }, + "audioNotificationDescription": { + "message": "在跳过片段时播放声音。如果禁用(或禁用自动跳过),则不会播放声音。" + }, + "showTimeWithSkips": { + "message": "显示减去可跳片段后的时间" + }, + "showTimeWithSkipsDescription": { + "message": "此时间位于进度条下方的当前时间旁边,用括号框住。 显示的是视频减去所有可跳片段后的时间,可跳片段包括标记为“在进度条中显示”的片段。" + }, + "youHaveSkipped": { + "message": "您已跳过 " + }, + "minLower": { + "message": "分钟" + }, + "minsLower": { + "message": "分钟" + }, + "hourLower": { + "message": "小时" + }, + "hoursLower": { + "message": "小时" + }, + "youHaveSavedTime": { + "message": "您为大家节省了", + "description": "You've saved people from 887,362 segments (236d 15h 5.3 minutes of their lives)." + }, + "youHaveSavedTimeEnd": { + "message": " 的生命", + "description": "You've saved people from 887,362 segments (236d 15h 5.3 minutes of their lives)." + }, + "statusReminder": { + "message": "在 status.sponsor.ajay.app 检查服务器状态。" + }, + "changeUserID": { + "message": "导入/导出您的私人用户ID" + }, + "whatChangeUserID": { + "message": "私人ID应该被保密。如果他人获得了你的私人ID,他就可以冒充您。如果您想找公开用户ID,请点击弹出窗口中的剪贴板图标。" + }, + "setUserID": { + "message": "设置私人用户ID" + }, + "userIDChangeWarning": { + "message": "警告:更改私人用户ID是永久性的。您确定要这么做吗?请务必备份您的旧私人ID以防万一。" + }, + "createdBy": { + "message": "创建者" + }, + "minDuration": { + "message": "最小持续时间(秒):" + }, + "minDurationDescription": { + "message": "短于设定值的片段将不会被跳过或显示在播放器中。" + }, + "enableManualSkipOnFullVideo": { + "message": "当整个视频都被标记为广告时使用手动跳过" + }, + "whatManualSkipOnFullVideo": { + "message": "如果你想看软广视频时不跳过中间的内容,而是观看完整视频,可以启用软广手动跳过" + }, + "skipNoticeDuration": { + "message": "跳过提醒持续时间(秒):" + }, + "skipNoticeDurationDescription": { + "message": "跳过提醒将显示至少这么多秒。手动跳过的提醒可能会显示更久。" + }, + "shortCheck": { + "message": "以下的提交短于您的最小持续时间选项。这代表它们可能已经被提交,只是由于该选项被忽略了。您确定要提交吗?" + }, + "liveOrPremiere": { + "message": "无法在进行中的直播或首播提交片段。请等待直播结束后刷新页面并确认片段仍然有效,再次提交。" + }, + "showUploadButton": { + "message": "显示上传按钮" + }, + "customServerAddress": { + "message": "广告助手服务器地址" + }, + "customServerAddressDescription": { + "message": "广告跳过助手的服务器地址。\n不建议更改,除非您有自己的服务器。" + }, + "dataFetchingServerAddress": { + "message": "数据获取服务器地址" + }, + "dataFetchingServerAddressDescription": { + "message": "用于联系数据获取服务器的地址。\n不建议更改,除非您有自己的服务器。" + }, + "thumbnailCacheServerAddress": { + "message": "缩略图缓存服务器地址" + }, + "save": { + "message": "保存" + }, + "reset": { + "message": "重置" + }, + "customAddressError": { + "message": "此地址格式不正确。请确保开头有 http:// 或 https:// ,结尾没有斜杠 / 。" + }, + "areYouSureReset": { + "message": "您确定要重置吗?" + }, + "exportOptions": { + "message": "导入/导出所有选项" + }, + "exportOtherData": { + "message": "导入/导出所有其他数据" + }, + "exportOptionsCopy": { + "message": "编辑/复制" + }, + "exportOptionsDownload": { + "message": "保存到文件" + }, + "exportOptionsUpload": { + "message": "从文件加载" + }, + "whatExportOptions": { + "message": "这是您所有设置的 JSON 格式。它包含了您的私人用户 ID ,所以您一定要谨慎的保管它。" + }, + "setOptions": { + "message": "设定选项" + }, + "exportOptionsWarning": { + "message": "警告:更改选项是永久性的且可能破坏您安装的东西。您确定要这么做吗?请确保已备份旧文件以防万一。" + }, + "incorrectlyFormattedOptions": { + "message": "此 JSON 格式不正确。您的选项尚未更改。" + }, + "confirmNoticeTitle": { + "message": "提交片段" + }, + "submit": { + "message": "提交" + }, + "cancel": { + "message": "取消" + }, + "delete": { + "message": "删除" + }, + "preview": { + "message": "预览" + }, + "unsubmitted": { + "message": "未提交" + }, + "inspect": { + "message": "检查" + }, + "edit": { + "message": "编辑" + }, + "copyDebugInformation": { + "message": "复制调试信息到剪贴板" + }, + "copyDebugInformationFailed": { + "message": "复制到剪贴板失败" + }, + "copyDebugInformationOptions": { + "message": "复制信息到剪贴板,在提交错误时提供给开发者。 敏感信息如:您的用户ID、UP主白名单和自定义服务器地址等已被删除。然而,它仍然包含诸如您的useragent ,浏览器,操作系统和插件版本号等信息。 " + }, + "copyDebugInformationComplete": { + "message": "调试信息已复制到剪切板中。 您可以随意移除任何您不想分享的信息。请将其另存为 .txt 文件或粘贴到错误报告中。" + }, + "keyAlreadyUsed": { + "message": "此快捷键已绑定到另一个动作。请选择其他快捷键。" + }, + "to": { + "message": "到", + "description": "Used between segments. Example: 1:20 to 1:30" + }, + "CopiedExclamation": { + "message": "复制成功!", + "description": "Used after something has been copied to the clipboard. Example: 'Copied!'" + }, + "generic_guideline1": { + "message": "包括衔接转场" + }, + "generic_guideline2": { + "message": "装成没有跳过内容一样播放" + }, + "category_sponsor": { + "message": "恰饭广告" + }, + "category_sponsor_description": { + "message": "付费推广、付费推荐和直接广告。不是自我推广或免费提及他们喜欢的事物/创作者/网站/产品。" + }, + "category_sponsor_guideline1": { + "message": "付费推广" + }, + "category_sponsor_guideline2": { + "message": "捐款或自制周边不属于此项" + }, + "category_selfpromo": { + "message": "无偿推广/自我推广" + }, + "category_selfpromo_description": { + "message": "类似于 “恰饭广告” ,但无报酬或是自我推广。包括有关商品、捐赠的部分或合作者的信息。" + }, + "category_selfpromo_guideline1": { + "message": "捐赠、会员和自制周边" + }, + "category_selfpromo_guideline2": { + "message": "与视频无关的免费推广" + }, + "category_selfpromo_guideline3": { + "message": "不是公司设计的产品和周边" + }, + "category_exclusive_access": { + "message": "独家限定" + }, + "category_exclusive_access_description": { + "message": "仅用于标记整个视频。当视频展示了免费或被帮助以获得产品、服务或访问地点时使用。" + }, + "category_exclusive_access_pill": { + "message": "此视频展示了免费或被帮助以获得产品、服务或访问地点", + "description": "Short description for this category" + }, + "category_exclusive_access_guideline1": { + "message": "整个视频都在展示免费/受助以获得和访问的事物" + }, + "category_interaction": { + "message": "三连提醒(订阅)" + }, + "category_interaction_description": { + "message": "视频中间简短提醒观众来一键三连或关注。 如果片段较长,或是有具体内容,则应分类为自我推广。" + }, + "category_interaction_guideline1": { + "message": "短暂提醒要点赞、投币或关注" + }, + "category_interaction_guideline2": { + "message": "包括间接提醒评论和弹幕" + }, + "category_interaction_guideline3": { + "message": "" + }, + "category_interaction_short": { + "message": "三连提醒" + }, + "category_intro": { + "message": "过场/开场动画" + }, + "category_intro_description": { + "message": "没有实际内容的间隔片段。可以是暂停、静态帧或重复动画。不适用于包含内容的过场。" + }, + "category_intro_short": { + "message": "过场" + }, + "category_intro_guideline1": { + "message": "无实际内容的片段" + }, + "category_intro_guideline2": { + "message": "不包括含有内容的转场" + }, + "category_outro": { + "message": "结束画面/结尾致谢" + }, + "category_outro_description": { + "message": "致谢画面或片尾画面。不应用于包含内容的结尾。" + }, + "category_outro_guideline1": { + "message": "不应包含内容,即使致谢或片尾已经出现。" + }, + "category_preview": { + "message": "回顾/概要", + "description": "https://en.wikipedia.org/wiki/Narrative_hook" + }, + "category_preview_description": { + "message": "展示此视频或同系列后续视频将出现的画面集锦,所有内容都将在之后再次出现。" + }, + "category_preview_guideline1": { + "message": "视频中稍后会出现或未来视频会出现的片段" + }, + "category_preview_guideline2": { + "message": "往期视频的回顾总结" + }, + "category_preview_guideline3": { + "message": "不含有新内容" + }, + "category_filler": { + "message": "离题的闲聊/笑话" + }, + "category_filler_description": { + "message": "离题片段标签仅在出现不需要理解视频主要内容的拖时间/无关笑话片段时使用。此标签不能包含有意义的内容或背景细节。这是非常激进的类别,代表您没有心情娱乐。" + }, + "category_filler_short": { + "message": "离题" + }, + "category_filler_guideline1": { + "message": "拖时间/无意义笑话等离题片段" + }, + "category_filler_guideline2": { + "message": "分心、花絮、重播" + }, + "category_filler_guideline3": { + "message": "不需要理解主题的片段" + }, + "category_music_offtopic": { + "message": "音乐:非音乐部分" + }, + "category_music_offtopic_description": { + "message": "仅用于音乐视频。此分类只能用于音乐视频中未包括于其他分类的部分。" + }, + "category_music_offtopic_short": { + "message": "非音乐" + }, + "category_music_offtopic_guideline1": { + "message": "不在官方版本中的部分" + }, + "category_music_offtopic_guideline2": { + "message": "现场表演中的非音乐片段" + }, + "category_poi_highlight": { + "message": "精彩时刻" + }, + "category_poi_highlight_description": { + "message": "大部分人都在寻找的视频片段。类似于“封面在12:34”的评论。" + }, + "category_poi_highlight_guideline1": { + "message": "大部分人想看的片段" + }, + "category_poi_highlight_guideline2": { + "message": "可以帮助略过之前的内容" + }, + "category_poi_highlight_guideline3": { + "message": "可以跳到标题或封面" + }, + "category_livestream_messages": { + "message": "直播:捐赠/消息阅读" + }, + "category_livestream_messages_short": { + "message": "阅读消息" + }, + "autoSkip": { + "message": "自动跳过" + }, + "manualSkip": { + "message": "手动跳过" + }, + "showOverlay": { + "message": "在进度条中显示" + }, + "disable": { + "message": "禁用" + }, + "autoSkip_POI": { + "message": "跳至开始位置" + }, + "manualSkip_POI": { + "message": "视频加载时询问" + }, + "showOverlay_POI": { + "message": "在进度条中显示" + }, + "showOverlay_full": { + "message": "显示标签" + }, + "showOverlay_chapter": { + "message": "显示章节" + }, + "autoSkipOnMusicVideos": { + "message": "自动跳过所有音乐视频中的非音乐片段" + }, + "muteSegments": { + "message": "允许静音的片段而不是跳过" + }, + "fullVideoSegments": { + "message": "当整个视频都是广告时显示图标", + "description": "Referring to the category pill that is now shown on videos that are entirely sponsor or entirely selfpromo" + }, + "fullVideoLabelsOnThumbnails": { + "message": "在视频缩略图上也显示标签", + "description": "Referring to the category pill that is shown on videos that are entirely sponsor or entirely selfpromo on recommended videos, in searches or on the homepage." + }, + "previewColor": { + "message": "未提交颜色", + "description": "Referring to submissions that have not been sent to the server yet." + }, + "seekBarColor": { + "message": "进度条颜色" + }, + "category": { + "message": "类别" + }, + "skipOption": { + "message": "跳过选项", + "description": "Used on the options page to describe the ways to skip the segment (auto skip, manual, etc.)" + }, + "enableTestingServer": { + "message": "启用Beta测试服务器" + }, + "whatEnableTestingServer": { + "message": "您的提交和投票将不会计入主服务器。它只被用于测试。" + }, + "testingServerWarning": { + "message": "当连接到测试服务器时,所有的提交和投票将不会计入主服务器。当您想要进行真实提交时,请确保禁用了此选项。" + }, + "bracketNow": { + "message": "(现在)" + }, + "moreCategories": { + "message": "更多类别" + }, + "chooseACategory": { + "message": "选择类别" + }, + "enableThisCategoryFirst": { + "message": "要提交“{0}”类别的片段,您必须在选项中启用此类别。现在将重定向到选项。", + "description": "Used when submitting segments to only let them select a certain category if they have it enabled in the options." + }, + "poiOnlyOneSegment": { + "message": "警告:此类型的片段一次最多只能使用一个。提交多个片段将随机显示。" + }, + "youMustSelectACategory": { + "message": "您必须为所有您要提交的片段选择类别!" + }, + "bracketStart": { + "message": "(开始)" + }, + "bracketEnd": { + "message": "(结束)" + }, + "End": { + "message": "结束", + "description": "Button that skips to the end of a segment" + }, + "hiddenDueToDownvote": { + "message": "隐藏:差评" + }, + "hiddenDueToDuration": { + "message": "隐藏:过短" + }, + "manuallyHidden": { + "message": "手动隐藏" + }, + "channelDataNotFound": { + "message": "未检测到UP主ID。如果您正在使用嵌入式视频播放器,请到Bilibili网站观看。也可能是B站更改了页面布局,如果您认为是此问题,请在此评论:", + "description": "This error appears in an alert when they try to whitelist a channel and the extension is unable to determine what channel they are looking at." + }, + "invidiousPermissionRefresh": { + "message": "浏览器已撤销在 Invidious 及其他第三方网站运行所需的权限。请点击下方按钮重新激活权限。" + }, + "acceptPermission": { + "message": "接受权限" + }, + "permissionRequestSuccess": { + "message": "权限请求成功!" + }, + "permissionRequestFailed": { + "message": "权限请求失败,您是否点击拒绝?" + }, + "adblockerIssueWhitelist": { + "message": "如果您无法解决这个问题,请禁用“跳过前强制进行频道检查”选项,因为 SponsorBlock 无法获得此视频的频道信息" + }, + "forceChannelCheck": { + "message": "跳过前强制进行频道检查" + }, + "whatForceChannelCheck": { + "message": "默认情况下,即使还未检测出当前是什么频道,也会立即跳过片段。即使在白名单中的频道,一些在开头的片段也可能被跳过。启用此选项将防止这种情况,但所有的跳过将会产生轻微的延迟,因为获取频道 ID 需要一点时间。如果您的网速很快,那延迟可能非常短。" + }, + "forceChannelCheckPopup": { + "message": "请考虑启用“跳过前强制进行频道检查”" + }, + "downvoteDescription": { + "message": "不正确/错误的时间" + }, + "incorrectVote": { + "message": "不正确" + }, + "harmfulVote": { + "message": "有害的", + "description": "Used for chapter segments when the text is harmful/offensive to remove it faster" + }, + "incorrectCategory": { + "message": "更改类别" + }, + "nonMusicCategoryOnMusic": { + "message": "此视频的分类为音乐。 您确定其中包含赞助商广告吗?如果这是“非音乐片段”,请打开扩展选项并启用此类别。 之后,您可以以“非音乐”而不是赞助商广告类别提交此片段。如果您不太明白,请阅读指南。" + }, + "multipleSegments": { + "message": "多个片段" + }, + "guidelines": { + "message": "指南" + }, + "readTheGuidelines": { + "message": "阅读指南!!", + "description": "Show the first time they submit or if they are \"high risk\"" + }, + "categoryUpdate1": { + "message": "类别在这里!" + }, + "categoryUpdate2": { + "message": "开启选项以跳过开头、结尾和商业等内容。" + }, + "help": { + "message": "帮助" + }, + "GotIt": { + "message": "明白了", + "description": "Used as the button to dismiss a tooltip" + }, + "fullVideoTooltipWarning": { + "message": "片段过长。如果整个视频都是关于同一个主题,请将“跳过”改成“整个视频”标签。查看指南了解详情。" + }, + "categoryPillTitleText": { + "message": "整个视频都被标记为此分类且内容过于紧凑,无法分开。" + }, + "chapterNameTooltipWarning": { + "message": "提交的章节名称与现有类别名称相似。如果已经存在分类,您应该优先使用它。" + }, + "experiementOptOut": { + "message": "关闭所有实验性功能", + "description": "This is used in a popup about a new experiment to get a list of unlisted videos to back up since all unlisted videos uploaded before 2017 will be set to private." + }, + "hideForever": { + "message": "永远隐藏" + }, + "warningChatInfo": { + "message": "我们注意到你犯了一些常见错误。我们非常赞赏你迄今所做的工作,但我们努力追求完美,所以即使是非常小的错误,也需要重视:)" + }, + "questionButton": { + "message": "我有疑问" + }, + "askAQuestion": { + "message": "提问" + }, + "warningConfirmButton": { + "message": "我理解原因" + }, + "warningError": { + "message": "尝试确认警告时发生错误:" + }, + "deArrowMessageRecieved": { + "message": "您收到了来自版主的提示" + }, + "Donate": { + "message": "捐赠" + }, + "considerDonating": { + "message": "资助开发" + }, + "hideDonationLink": { + "message": "隐藏捐赠链接" + }, + "darkModeOptionsPage": { + "message": "深色模式选项页面" + }, + "helpPageThanksForInstalling": { + "message": "感谢安装 SponsorBlock。" + }, + "helpPageReviewOptions": { + "message": "请查看下面的选项" + }, + "helpPageFeatureDisclaimer": { + "message": "许多功能默认禁用。如果您想跳过开头、结尾或使用 Invidious 等,请在下方开启。您也可以显示/隐藏界面内容。" + }, + "helpPageHowSkippingWorks": { + "message": "跳过是如何运作的" + }, + "helpPageHowSkippingWorks1": { + "message": "视频片段如果在数据库中存在将被自动跳过。您可以点击插件图标打开弹窗查看预览。" + }, + "helpPageHowSkippingWorks2": { + "message": "当跳过片段时,您会收到提醒。如果时间不对,请点击差评!您也可以在插件弹窗中投票。" + }, + "Submitting": { + "message": "提交中" + }, + "helpPageSubmitting1": { + "message": "您可以使用插件弹窗中的“片段现在开始”按钮或播放器中的按钮提交片段。" + }, + "helpPageSubmitting2": { + "message": "点击播放按钮标记片段开始,点击停止按钮标记片段结束。您可以一次提交多个片段。点击上传按钮会提交片段。点击垃圾桶按钮会删除片段。" + }, + "Editing": { + "message": "正在编辑" + }, + "helpPageEditing1": { + "message": "如果您选错了,您可以点击左侧箭头按钮编辑或删除您的片段。" + }, + "helpPageTooSlow": { + "message": "太慢了" + }, + "helpPageTooSlow1": { + "message": "常用功能支持快捷键。按下分号键“;”标记赞助商广告片段开始和结束,按下撇号“ ’ ”提交。可以在选项中更改按键。如果您使用的不是QWERTY序列键盘,您可能需要更改键位绑定。" + }, + "helpPageCopyOfDatabase": { + "message": "我可以下载数据库吗?如果你人没了会怎样?" + }, + "helpPageCopyOfDatabase1": { + "message": "数据库是公开的,在此访问:" + }, + "helpPageCopyOfDatabase2": { + "message": "源代码是免费公开的。所以即使我出了什么事,你的提交也不会丢失。" + }, + "helpPageNews": { + "message": "新闻和更新记录" + }, + "helpPageSourceCode": { + "message": "在哪里可以获得源代码?" + }, + "Credits": { + "message": "鸣谢" + }, + "LearnMore": { + "message": "了解详情" + }, + "FullDetails": { + "message": "全部细节" + }, + "CopyDownvoteButtonInfo": { + "message": "差评并创建本地副本供您再次提交" + }, + "OpenCategoryWikiPage": { + "message": "打开此类别的百科页面。" + }, + "CopyAndDownvote": { + "message": "复制并差评" + }, + "ContinueVoting": { + "message": "继续投票" + }, + "ChangeCategoryTooltip": { + "message": "这会立即应用到您所有的片段" + }, + "downvote": { + "message": "差评" + }, + "upvote": { + "message": "点赞" + }, + "hideSegment": { + "message": "隐藏片段" + }, + "skipSegment": { + "message": "跳过片段" + }, + "playChapter": { + "message": "播放章节" + }, + "SponsorTimeEditScrollNewFeature": { + "message": "将鼠标悬停在编辑框上,操作鼠标滚轮可以快速调整时间。包含 Ctrl 和 Shift 的组合快捷键可以微调时间。" + }, + "categoryPillNewFeature": { + "message": "新功能!知道视频是否完全是赞助广告或自我推广" + }, + "yearAbbreviation": { + "message": "年", + "description": "100y" + }, + "dayAbbreviation": { + "message": "天", + "description": "100d" + }, + "hourAbbreviation": { + "message": "小时", + "description": "100h" + }, + "optionsTabBehavior": { + "message": "行为", + "description": "Appears in Options as a tab header for options related to categories and skipping behavior. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabInterface": { + "message": "界面", + "description": "Appears in Options as a tab header for options related to GUI and sounds. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabKeyBinds": { + "message": "快捷键", + "description": "Appears in Options as a tab header for keybinds. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabBackup": { + "message": "备份/恢复", + "description": "Appears in Options as a tab header for options related to saving/restoring your settings. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "optionsTabAdvanced": { + "message": "其他", + "description": "Appears in Options as a tab header for advanced/niche options. To fit inside the button, it should not be longer than ~20-25 characters (depending on their width)." + }, + "noticeVisibilityLabel": { + "message": "跳过提醒外观", + "description": "Option label" + }, + "unbind": { + "message": "解除绑定", + "description": "Unbind keyboard shortcut" + }, + "notSet": { + "message": "未设置" + }, + "change": { + "message": "更改" + }, + "youtubeKeybindWarning": { + "message": "这是 Youtube 内置的快捷方式。您确定要使用吗?" + }, + "betaServerWarning": { + "message": "测试服务器已启用!" + }, + "openOptionsPage": { + "message": "打开选项页面" + }, + "resetToDefault": { + "message": "重置所有设置" + }, + "confirmResetToDefault": { + "message": "您确定要将所有设置重置为默认值吗?此操作无法撤销。" + }, + "exportSegments": { + "message": "导出片段" + }, + "importSegments": { + "message": "导入片段" + }, + "Import": { + "message": "导入", + "description": "Button to initiate importing segments. Appears under the textbox where they paste in the data" + }, + "redeemSuccess": { + "message": "兑换成功!" + }, + "redeemFailed": { + "message": "注册码无效" + }, + "hideUpsells": { + "message": "隐藏需要额外付费才能使用的选项" + }, + "hideNewFeatureUpdates": { + "message": "隐藏新功能提示" + }, + "redeem": { + "message": "兑换" + }, + "enterLicenseKey": { + "message": "输入注册码" + }, + "unsubmittedSegmentCounts": { + "message": "您在 {1} 中有 {0}", + "description": "Example: You currently have 12 unsubmitted segments on 5 videos" + }, + "unsubmittedSegmentCountsZero": { + "message": "您目前没有未提交的片段", + "description": "Replaces 'unsubmittedSegmentCounts' string when there are no unsubmitted segments" + }, + "unsubmittedSegmentsSingular": { + "message": "未提交的片段", + "description": "Example: You currently have 1 *unsubmitted segment* on 1 video" + }, + "unsubmittedSegmentsPlural": { + "message": "未提交的片段", + "description": "Example: You currently have 12 *unsubmitted segments* on 5 videos" + }, + "videosSingular": { + "message": "视频", + "description": "Example: You currently have 3 unsubmitted segments on 1 *video*" + }, + "videosPlural": { + "message": "视频", + "description": "Example: You currently have 12 unsubmitted segments on 5 *videos*" + }, + "clearUnsubmittedSegments": { + "message": "清除所有片段", + "description": "Label for a button in settings" + }, + "clearUnsubmittedSegmentsConfirm": { + "message": "您确定要清除所有未提交的片段吗?", + "description": "Confirmation message for the Clear unsubmitted segments button" + }, + "showUnsubmittedSegments": { + "message": "显示片段", + "description": "Show/hide button for the unsubmitted segments list" + }, + "hideUnsubmittedSegments": { + "message": "隐藏片段", + "description": "Show/hide button for the unsubmitted segments list" + }, + "videoID": { + "message": "视频ID", + "description": "Header of the unsubmitted segments list" + }, + "segmentCount": { + "message": "片段数", + "description": "Header of the unsubmitted segments list" + }, + "actions": { + "message": "操作", + "description": "Header of the unsubmitted segments list" + }, + "exportSegmentsAsURL": { + "message": "分享链接" + }, + "segmentFetchFailureWarning": { + "message": "警告:服务器未响应。片段可能已提交,只是由于服务器问题您未收到回应。" + }, + "allowScrollingToEdit": { + "message": "允许滚动编辑时间" + }, + "NoticeTimeAfterSkip": { + "message": "{seconds}秒", + "description": "This is used on the popup to show how much time left. It will look like \"5s\". The word {seconds} will be replaced, so keep it here. Translations should only change the \"s\"" + }, + "FillerWarning": { + "message": "Warning: This is an incredibly aggressive category. You most likely will have to unskip stuff, or disable it sometimes. Be warned that many videos have over 50% or more of the video skipped! However, remember that there are still specific guidelines to follow when submitting.", + "description": "Warning that appears when enabling the filler tangent category" + }, + "YtNeuterMessage": { + "message": "Add a filterlist to block surveys, merch shelves, and other promotional page elements using yt-neuter" + }, + "requiresUblock": { + "message": "需要 uBlock Origin" + }, + "zoomToFillUnsupported": { + "message": "SponsorBlock is not compatible with the extension \"Zoom to Fill\". There are many alternatives you can use instead that will work properly." + }, + "cleanPopup": { + "message": "Hide Clutter in Segment List Popup" + }, + "syncDisabledWarning": { + "message": "Warning: Extension storage has been disabled in your browser. Settings will not be saved if you try saving them." + }, + "syncDisabledWarningDeArrow": { + "message": "DeArrow will not function without storage." + }, + "syncDisabledFirefoxSuggestions": { + "message": "You can enable it by going to about:config and setting the value of \"webextensions.storage.sync.enabled\" to true." + }, + "storageFull": { + "message": "Extension storage is full. Please delete some unsubmitted segments in the options." + }, + "previewSegmentRequired": { + "message": "Please preview your segments before submitting. You can do this by clicking the preview button or using the following shortcut:", + "description": "Appears when trying to submit a segment without previewing it first. After the colon, the shortcut will appear" + } +} \ No newline at end of file