Fixed: Added Various Missing Translations

cleanup en.json of unused translates

Fixes #1397

Closes Sonarr PR # 4791 'Fixed: Better wording of MissingFromDisk'
pull/1461/head
bakerboy448 3 years ago committed by ta264
parent bc3764dcda
commit 94adb4d582

@ -215,13 +215,13 @@ function HistoryDetails(props) {
switch (reason) { switch (reason) {
case 'Manual': case 'Manual':
reasonMessage = 'File was deleted by via UI'; reasonMessage = translate('FileWasDeletedByViaUI');
break; break;
case 'MissingFromDisk': case 'MissingFromDisk':
reasonMessage = 'Readarr was unable to find the file on disk so it was removed'; reasonMessage = translate('MissingFromDisk');
break; break;
case 'Upgrade': case 'Upgrade':
reasonMessage = 'File was deleted to import an upgrade'; reasonMessage = translate('FileWasDeletedByUpgrade');
break; break;
default: default:
reasonMessage = ''; reasonMessage = '';

@ -223,14 +223,14 @@ class Queue extends Component {
{ {
!isRefreshing && hasError && !isRefreshing && hasError &&
<div> <div>
Failed to load Queue {translate('FailedToLoadQueue')}
</div> </div>
} }
{ {
isAllPopulated && !hasError && !items.length && isAllPopulated && !hasError && !items.length &&
<div> <div>
Queue is empty {translate('QueueIsEmpty')}
</div> </div>
} }

@ -39,7 +39,9 @@ function AppUpdatedModalContent(props) {
<div> <div>
{ {
!update.changes && !update.changes &&
<div className={styles.maintenance}>Maintenance release</div> <div className={styles.maintenance}>
{translate('MaintenanceRelease')}
</div>
} }
{ {

@ -77,7 +77,7 @@ class DeleteBookModalContent extends Component {
type={inputTypes.CHECK} type={inputTypes.CHECK}
name="deleteFiles" name="deleteFiles"
value={deleteFiles} value={deleteFiles}
helpText={'Delete book files'} helpText={translate('DeleteFilesHelpText')}
kind={kinds.DANGER} kind={kinds.DANGER}
isDisabled={files.length === 0} isDisabled={files.length === 0}
onChange={this.onDeleteFilesChange} onChange={this.onDeleteFilesChange}

@ -8,6 +8,7 @@ import ModalContent from 'Components/Modal/ModalContent';
import ModalFooter from 'Components/Modal/ModalFooter'; import ModalFooter from 'Components/Modal/ModalFooter';
import ModalHeader from 'Components/Modal/ModalHeader'; import ModalHeader from 'Components/Modal/ModalHeader';
import { inputTypes } from 'Helpers/Props'; import { inputTypes } from 'Helpers/Props';
import translate from 'Utilities/String/translate';
import FilterBuilderRow from './FilterBuilderRow'; import FilterBuilderRow from './FilterBuilderRow';
import styles from './FilterBuilderModalContent.css'; import styles from './FilterBuilderModalContent.css';
@ -165,7 +166,9 @@ class FilterBuilderModalContent extends Component {
</div> </div>
</div> </div>
<div className={styles.label}>Filters</div> <div className={styles.label}>
{translate('Filters')}
</div>
<div className={styles.rows}> <div className={styles.rows}>
{ {

@ -167,7 +167,9 @@ class AddNewItem extends Component {
{ {
!isFetching && !error && !items.length && !!term && !isFetching && !error && !items.length && !!term &&
<div className={styles.message}> <div className={styles.message}>
<div className={styles.noResults}>Couldn't find any results for '{term}'</div> <div className={styles.noResults}>
{translate('CouldntFindAnyResultsForTerm', [term])}
</div>
<div> <div>
You can also search using the You can also search using the
<Link to="https://goodreads.com"> Goodreads ID </Link> <Link to="https://goodreads.com"> Goodreads ID </Link>
@ -179,7 +181,9 @@ class AddNewItem extends Component {
{ {
!term && !term &&
<div className={styles.message}> <div className={styles.message}>
<div className={styles.helpText}>It's easy to add a new author or book, just start typing the name of the item you want to add.</div> <div className={styles.helpText}>
{translate('ItsEasyToAddANewAuthorOrBookJustStartTypingTheNameOfTheItemYouWantToAdd')}
</div>
<div> <div>
You can also search using the You can also search using the
<Link to="https://goodreads.com"> Goodreads ID </Link> <Link to="https://goodreads.com"> Goodreads ID </Link>

@ -51,9 +51,15 @@ class RemotePathMappings extends Component {
{...otherProps} {...otherProps}
> >
<div className={styles.remotePathMappingsHeader}> <div className={styles.remotePathMappingsHeader}>
<div className={styles.host}>Host</div> <div className={styles.host}>
<div className={styles.path}>Remote Path</div> {translate('Host')}
<div className={styles.path}>Local Path</div> </div>
<div className={styles.path}>
{translate('RemotePath')}
</div>
<div className={styles.path}>
{translate('LocalPath')}
</div>
</div> </div>
<div> <div>

@ -51,8 +51,12 @@ class ImportListExclusions extends Component {
{...otherProps} {...otherProps}
> >
<div className={styles.importListExclusionsHeader}> <div className={styles.importListExclusionsHeader}>
<div className={styles.foreignId}>Foreign Id</div> <div className={styles.foreignId}>
<div className={styles.name}>Name</div> {translate('ForeignId')}
</div>
<div className={styles.name}>
{translate('Name')}
</div>
</div> </div>
<div> <div>

@ -73,10 +73,18 @@ class DelayProfiles extends Component {
{...otherProps} {...otherProps}
> >
<div className={styles.delayProfilesHeader}> <div className={styles.delayProfilesHeader}>
<div className={styles.column}>Protocol</div> <div className={styles.column}>
<div className={styles.column}>Usenet Delay</div> {translate('Protocol')}
<div className={styles.column}>Torrent Delay</div> </div>
<div className={styles.tags}>Tags</div> <div className={styles.column}>
{translate('UsenetDelay')}
</div>
<div className={styles.column}>
{translate('TorrentDelay')}
</div>
<div className={styles.tags}>
{translate('Tags')}
</div>
</div> </div>
<div className={styles.delayProfiles}> <div className={styles.delayProfiles}>

@ -25,9 +25,15 @@ class QualityDefinitions extends Component {
{...otherProps} {...otherProps}
> >
<div className={styles.header}> <div className={styles.header}>
<div className={styles.quality}>Quality</div> <div className={styles.quality}>
<div className={styles.title}>Title</div> {translate('Quality')}
<div className={styles.sizeLimit}>Size Limit</div> </div>
<div className={styles.title}>
{translate('Title')}
</div>
<div className={styles.sizeLimit}>
{translate('SizeLimit')}
</div>
{ {
advancedSettings ? advancedSettings ?
<div className={styles.kilobitsPerSecond}> <div className={styles.kilobitsPerSecond}>

@ -18,121 +18,121 @@ function Settings() {
className={styles.link} className={styles.link}
to="/settings/mediamanagement" to="/settings/mediamanagement"
> >
Media Management {translate('MediaManagement')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Naming, file management settings and root folders {translate('MediaManagementSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/profiles" to="/settings/profiles"
> >
Profiles {translate('Profiles')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Quality, Metadata, Delay, and Release profiles {translate('ProfilesSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/quality" to="/settings/quality"
> >
Quality {translate('Quality')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Quality sizes and naming {translate('QualitySettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/indexers" to="/settings/indexers"
> >
Indexers {translate('Indexers')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Indexers and indexer options {translate('IndexersSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/downloadclients" to="/settings/downloadclients"
> >
Download Clients {translate('DownloadClients')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Download clients, download handling and remote path mappings {translate('DownloadClientsSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/importlists" to="/settings/importlists"
> >
Import Lists {translate('Lists')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Import Lists {translate('ListsSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/connect" to="/settings/connect"
> >
Connect {translate('Connect')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Notifications, connections to media servers/players and custom scripts {translate('ConnectSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/metadata" to="/settings/metadata"
> >
Metadata {translate('Metadata')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Create metadata files when books are imported or author are refreshed {translate('MetadataSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/tags" to="/settings/tags"
> >
Tags {translate('Tags')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Manage author, profile, restriction, and notification tags {translate('TagsSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/general" to="/settings/general"
> >
General {translate('General')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Port, SSL, username/password, proxy, analytics and updates {translate('GeneralSettingsSummary')}
</div> </div>
<Link <Link
className={styles.link} className={styles.link}
to="/settings/ui" to="/settings/ui"
> >
UI {translate('UI')}
</Link> </Link>
<div className={styles.summary}> <div className={styles.summary}>
Calendar, date and color impaired options {translate('UISettingsSummary')}
</div> </div>
</PageContentBody> </PageContentBody>
</PageContent> </PageContent>

@ -113,9 +113,9 @@ export const defaultState = {
}, },
{ {
name: 'size', name: 'size',
label: 'Size', label: translate('Size'),
isSortable: true, isSortable: true,
isVisibile: false isVisible: false
}, },
{ {
name: 'outputPath', name: 'outputPath',
@ -454,4 +454,3 @@ export const reducers = createHandleActions({
}) })
}, defaultState, section); }, defaultState, section);

@ -199,7 +199,7 @@ class QueuedTaskRow extends Component {
</span> </span>
{ {
clientUserAgent ? clientUserAgent ?
<span className={styles.userAgent} title="User-Agent provided by the app that called the API"> <span className={styles.userAgent} title={translate('UserAgentProvidedByTheAppThatCalledTheAPI')}>
from: {clientUserAgent} from: {clientUserAgent}
</span> : </span> :
null null

@ -15,27 +15,27 @@ const columns = [
}, },
{ {
name: 'commandName', name: 'commandName',
label: 'Name', label: translate('Name'),
isVisible: true isVisible: true
}, },
{ {
name: 'queued', name: 'queued',
label: 'Queued', label: translate('Queued'),
isVisible: true isVisible: true
}, },
{ {
name: 'started', name: 'started',
label: 'Started', label: translate('Started'),
isVisible: true isVisible: true
}, },
{ {
name: 'ended', name: 'ended',
label: 'Ended', label: translate('Ended'),
isVisible: true isVisible: true
}, },
{ {
name: 'duration', name: 'duration',
label: 'Duration', label: translate('Duration'),
isVisible: true isVisible: true
}, },
{ {

@ -1,4 +1,5 @@
import moment from 'moment'; import moment from 'moment';
import translate from 'Utilities/String/translate';
import formatTime from './formatTime'; import formatTime from './formatTime';
import isToday from './isToday'; import isToday from './isToday';
import isTomorrow from './isTomorrow'; import isTomorrow from './isTomorrow';
@ -10,15 +11,15 @@ function getRelativeDay(date, includeRelativeDate) {
} }
if (isYesterday(date)) { if (isYesterday(date)) {
return 'Yesterday, '; return translate('Yesterday');
} }
if (isToday(date)) { if (isToday(date)) {
return 'Today, '; return translate('Today');
} }
if (isTomorrow(date)) { if (isTomorrow(date)) {
return 'Tomorrow, '; return translate('Tomorrow');
} }
return ''; return '';

@ -3,7 +3,6 @@
"45MinutesFourtyFive": "45 Minutes: {0}", "45MinutesFourtyFive": "45 Minutes: {0}",
"60MinutesSixty": "60 Minutes: {0}", "60MinutesSixty": "60 Minutes: {0}",
"About": "About", "About": "About",
"Absolute": "Absolute",
"Actions": "Actions", "Actions": "Actions",
"AddedAuthorSettings": "Added Author Settings", "AddedAuthorSettings": "Added Author Settings",
"AddImportListExclusionHelpText": "Prevent book from being added to Readarr by Import Lists or Author Refresh", "AddImportListExclusionHelpText": "Prevent book from being added to Readarr by Import Lists or Author Refresh",
@ -26,8 +25,6 @@
"AllowFingerprintingHelpTextWarning": "This requires Readarr to read parts of the file which will slow down scans and may cause high disk or network activity.", "AllowFingerprintingHelpTextWarning": "This requires Readarr to read parts of the file which will slow down scans and may cause high disk or network activity.",
"AlreadyInYourLibrary": "Already in your library", "AlreadyInYourLibrary": "Already in your library",
"AlternateTitles": "Alternate Titles", "AlternateTitles": "Alternate Titles",
"AlternateTitleslength1Title": "Title",
"AlternateTitleslength1Titles": "Titles",
"Analytics": "Analytics", "Analytics": "Analytics",
"AnalyticsEnabledHelpText": "Send anonymous usage and error information to Readarr's servers. This includes information on your browser, which Readarr WebUI pages you use, error reporting as well as OS and runtime version. We will use this information to prioritize features and bug fixes.", "AnalyticsEnabledHelpText": "Send anonymous usage and error information to Readarr's servers. This includes information on your browser, which Readarr WebUI pages you use, error reporting as well as OS and runtime version. We will use this information to prioritize features and bug fixes.",
"AnalyticsEnabledHelpTextWarning": "Requires restart to take effect", "AnalyticsEnabledHelpTextWarning": "Requires restart to take effect",
@ -68,18 +65,14 @@
"BlocklistRelease": "Blocklist Release", "BlocklistRelease": "Blocklist Release",
"Book": "Book", "Book": "Book",
"BookAvailableButMissing": "Book Available, but Missing", "BookAvailableButMissing": "Book Available, but Missing",
"BookDownloaded": "Book Downloaded",
"BookEditor": "Book Editor", "BookEditor": "Book Editor",
"BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (Total: {2})", "BookFileCountBookCountTotalTotalBookCountInterp": "{0} / {1} (Total: {2})",
"BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} books downloaded", "BookFileCounttotalBookCountBooksDownloadedInterp": "{0}/{1} books downloaded",
"BookFilesCountMessage": "No book files", "BookFilesCountMessage": "No book files",
"BookHasNotAired": "Book has not aired",
"BookIndex": "Book Index", "BookIndex": "Book Index",
"BookIsDownloading": "Book is downloading", "BookIsDownloading": "Book is downloading",
"BookIsDownloadingInterp": "Book is downloading - {0}% {1}", "BookIsDownloadingInterp": "Book is downloading - {0}% {1}",
"BookIsNotMonitored": "Book is not monitored",
"BookList": "Book List", "BookList": "Book List",
"BookMissingFromDisk": "Book missing from disk",
"BookMonitoring": "Book Monitoring", "BookMonitoring": "Book Monitoring",
"BookNaming": "Book Naming", "BookNaming": "Book Naming",
"Books": "Books", "Books": "Books",
@ -129,6 +122,7 @@
"Component": "Component", "Component": "Component",
"Connections": "Connections", "Connections": "Connections",
"ConnectSettings": "Connect Settings", "ConnectSettings": "Connect Settings",
"ConnectSettingsSummary": "Notifications, connections to media servers/players and custom scripts",
"ConsoleLogLevel": "Console Log Level", "ConsoleLogLevel": "Console Log Level",
"Continuing": "Continuing", "Continuing": "Continuing",
"ContinuingAllBooksDownloaded": "Continuing (All books downloaded)", "ContinuingAllBooksDownloaded": "Continuing (All books downloaded)",
@ -136,6 +130,7 @@
"ContinuingNoAdditionalBooksAreExpected": "No additional books are expected", "ContinuingNoAdditionalBooksAreExpected": "No additional books are expected",
"CopyUsingHardlinksHelpText": "Use Hardlinks when trying to copy files from torrents that are still being seeded", "CopyUsingHardlinksHelpText": "Use Hardlinks when trying to copy files from torrents that are still being seeded",
"CopyUsingHardlinksHelpTextWarning": "Occasionally, file locks may prevent renaming files that are being seeded. You may temporarily disable seeding and use Readarr's rename function as a work around.", "CopyUsingHardlinksHelpTextWarning": "Occasionally, file locks may prevent renaming files that are being seeded. You may temporarily disable seeding and use Readarr's rename function as a work around.",
"CouldntFindAnyResultsForTerm": "Couldn't find any results for '{0}'",
"Country": "Country", "Country": "Country",
"CreateEmptyAuthorFolders": "Create empty author folders", "CreateEmptyAuthorFolders": "Create empty author folders",
"CreateEmptyAuthorFoldersHelpText": "Create missing author folders during disk scan", "CreateEmptyAuthorFoldersHelpText": "Create missing author folders during disk scan",
@ -186,7 +181,7 @@
"DeleteTagMessageText": "Are you sure you want to delete the tag '{0}'?", "DeleteTagMessageText": "Are you sure you want to delete the tag '{0}'?",
"DestinationPath": "Destination Path", "DestinationPath": "Destination Path",
"DetailedProgressBar": "Detailed Progress Bar", "DetailedProgressBar": "Detailed Progress Bar",
"DetailedProgressBarHelpText": "Show text on progess bar", "DetailedProgressBarHelpText": "Show text on progress bar",
"Development": "Development", "Development": "Development",
"Disabled": "Disabled", "Disabled": "Disabled",
"DiscCount": "Disc Count", "DiscCount": "Disc Count",
@ -225,8 +220,6 @@
"Ended": "Ended", "Ended": "Ended",
"EndedAllBooksDownloaded": "Ended (All books downloaded)", "EndedAllBooksDownloaded": "Ended (All books downloaded)",
"EntityName": "Entity Name", "EntityName": "Entity Name",
"Episode": "Episode",
"EpisodeDoesNotHaveAnAbsoluteEpisodeNumber": "Episode does not have an absolute episode number",
"ErrorLoadingContents": "Error loading contents", "ErrorLoadingContents": "Error loading contents",
"ErrorLoadingPreviews": "Error loading previews", "ErrorLoadingPreviews": "Error loading previews",
"Exception": "Exception", "Exception": "Exception",
@ -236,6 +229,7 @@
"ExtraFileExtensionsHelpTexts1": "Comma separated list of extra files to import (.nfo will be imported as .nfo-orig)", "ExtraFileExtensionsHelpTexts1": "Comma separated list of extra files to import (.nfo will be imported as .nfo-orig)",
"ExtraFileExtensionsHelpTexts2": "Examples: \".sub, .nfo\" or \"sub,nfo\"", "ExtraFileExtensionsHelpTexts2": "Examples: \".sub, .nfo\" or \"sub,nfo\"",
"FailedDownloadHandling": "Failed Download Handling", "FailedDownloadHandling": "Failed Download Handling",
"FailedToLoadQueue": "Failed to load Queue",
"FileDateHelpText": "Change file date on import/rescan", "FileDateHelpText": "Change file date on import/rescan",
"FileDetails": "File Details", "FileDetails": "File Details",
"FileManagement": "File Management", "FileManagement": "File Management",
@ -243,9 +237,12 @@
"FileNames": "File Names", "FileNames": "File Names",
"Files": "Files", "Files": "Files",
"FilesTotal": "Files ({0})", "FilesTotal": "Files ({0})",
"FileWasDeletedByUpgrade": "File was deleted to import an upgrade",
"FileWasDeletedByViaUI": "File was deleted via the UI",
"FilterAnalyticsEvents": "Filter Analytics Events", "FilterAnalyticsEvents": "Filter Analytics Events",
"FilterAuthor": "Filter Author", "FilterAuthor": "Filter Author",
"FilterPlaceHolder": "Filter Book", "FilterPlaceHolder": "Filter Book",
"Filters": "Filters",
"FilterSentryEventsHelpText": "Filter known user error events from being sent as Analytics", "FilterSentryEventsHelpText": "Filter known user error events from being sent as Analytics",
"FirstBook": "First Book", "FirstBook": "First Book",
"FirstDayOfWeek": "First Day of Week", "FirstDayOfWeek": "First Day of Week",
@ -260,6 +257,7 @@
"FutureDays": "Future Days", "FutureDays": "Future Days",
"FutureDaysHelpText": "Days for iCal feed to look into the future", "FutureDaysHelpText": "Days for iCal feed to look into the future",
"GeneralSettings": "General Settings", "GeneralSettings": "General Settings",
"GeneralSettingsSummary": "Port, SSL, username/password, proxy, analytics and updates",
"Global": "Global", "Global": "Global",
"GoToAuthorListing": "Go to author listing", "GoToAuthorListing": "Go to author listing",
"GoToInterp": "Go to {0}", "GoToInterp": "Go to {0}",
@ -311,6 +309,7 @@
"IndexerPriority": "Indexer Priority", "IndexerPriority": "Indexer Priority",
"Indexers": "Indexers", "Indexers": "Indexers",
"IndexerSettings": "Indexer Settings", "IndexerSettings": "Indexer Settings",
"IndexersSettingsSummary": "Download clients, download handling and remote path mappings",
"Interval": "Interval", "Interval": "Interval",
"ISBN": "ISBN", "ISBN": "ISBN",
"IsCalibreLibraryHelpText": "Use Calibre Content Server to manipulate library", "IsCalibreLibraryHelpText": "Use Calibre Content Server to manipulate library",
@ -326,12 +325,14 @@
"IsShowingMonitoredMonitorSelected": "Monitor Selected", "IsShowingMonitoredMonitorSelected": "Monitor Selected",
"IsShowingMonitoredUnmonitorSelected": "Unmonitor Selected", "IsShowingMonitoredUnmonitorSelected": "Unmonitor Selected",
"IsTagUsedCannotBeDeletedWhileInUse": "Cannot be deleted while in use", "IsTagUsedCannotBeDeletedWhileInUse": "Cannot be deleted while in use",
"ItsEasyToAddANewAuthorOrBookJustStartTypingTheNameOfTheItemYouWantToAdd": "It's easy to add a New Author or Book just start typing the name of the item you want to add",
"Label": "Label", "Label": "Label",
"Language": "Language", "Language": "Language",
"LatestBook": "Latest Book", "LatestBook": "Latest Book",
"LaunchBrowserHelpText": " Open a web browser and navigate to Readarr homepage on app start.", "LaunchBrowserHelpText": " Open a web browser and navigate to Readarr homepage on app start.",
"Level": "Level", "Level": "Level",
"LibraryHelpText": "Calibre content server library name. Leave blank for default.", "LibraryHelpText": "Calibre content server library name. Leave blank for default.",
"ListsSettingsSummary": "Import Lists",
"LoadingBookFilesFailed": "Loading book files failed", "LoadingBookFilesFailed": "Loading book files failed",
"LoadingBooksFailed": "Loading books failed", "LoadingBooksFailed": "Loading books failed",
"Local": "Local", "Local": "Local",
@ -347,7 +348,7 @@
"LogSQL": "Log SQL", "LogSQL": "Log SQL",
"LogSqlHelpText": "Log all SQL queries from Readarr", "LogSqlHelpText": "Log all SQL queries from Readarr",
"LongDateFormat": "Long Date Format", "LongDateFormat": "Long Date Format",
"MaintenanceRelease": "Maintenance release", "MaintenanceRelease": "Maintenance Release: bug fixes and other improvements. See Github Commit History for more details",
"ManualDownload": "Manual Download", "ManualDownload": "Manual Download",
"ManualImport": "Manual Import", "ManualImport": "Manual Import",
"MarkAsFailed": "Mark as Failed", "MarkAsFailed": "Mark as Failed",
@ -360,8 +361,7 @@
"Mechanism": "Mechanism", "Mechanism": "Mechanism",
"MediaInfo": "Media Info", "MediaInfo": "Media Info",
"MediaManagementSettings": "Media Management Settings", "MediaManagementSettings": "Media Management Settings",
"Medium": "Medium", "MediaManagementSettingsSummary": "Naming, file management settings and root folders",
"MediumFormat": "Medium Format",
"Message": "Message", "Message": "Message",
"MetadataConsumers": "Metadata Consumers", "MetadataConsumers": "Metadata Consumers",
"MetadataProfile": "Metadata Profile", "MetadataProfile": "Metadata Profile",
@ -369,6 +369,7 @@
"MetadataProfiles": "Metadata Profiles", "MetadataProfiles": "Metadata Profiles",
"MetadataProviderSource": "Metadata Provider Source", "MetadataProviderSource": "Metadata Provider Source",
"MetadataSettings": "Metadata Settings", "MetadataSettings": "Metadata Settings",
"MetadataSettingsSummary": "Create metadata files when books are imported or author are refreshed",
"MetadataSource": "Metadata Source", "MetadataSource": "Metadata Source",
"MetadataSourceHelpText": "Alternative Metadata Source (Leave blank for default)", "MetadataSourceHelpText": "Alternative Metadata Source (Leave blank for default)",
"MIA": "MIA", "MIA": "MIA",
@ -385,6 +386,7 @@
"MissingBooks": "Missing Books", "MissingBooks": "Missing Books",
"MissingBooksAuthorMonitored": "Missing Books (Author monitored)", "MissingBooksAuthorMonitored": "Missing Books (Author monitored)",
"MissingBooksAuthorNotMonitored": "Missing Books (Author not monitored)", "MissingBooksAuthorNotMonitored": "Missing Books (Author not monitored)",
"MissingFromDisk": "Readarr was unable to find the file on disk so the file was unlinked from the book in the database",
"Mode": "Mode", "Mode": "Mode",
"MonitorAuthor": "Monitor Author", "MonitorAuthor": "Monitor Author",
"MonitorBook": "Monitor Book", "MonitorBook": "Monitor Book",
@ -485,6 +487,7 @@
"PreviewRetag": "Preview Retag", "PreviewRetag": "Preview Retag",
"PriorityHelpText": "Indexer Priority from 1 (Highest) to 50 (Lowest). Default: 25.", "PriorityHelpText": "Indexer Priority from 1 (Highest) to 50 (Lowest). Default: 25.",
"Profiles": "Profiles", "Profiles": "Profiles",
"ProfilesSettingsSummary": "Quality, Metadata, Delay, and Release profiles",
"Progress": "Progress", "Progress": "Progress",
"Proper": "Proper", "Proper": "Proper",
"PropersAndRepacks": "Propers and Repacks", "PropersAndRepacks": "Propers and Repacks",
@ -503,7 +506,9 @@
"QualityProfileIdHelpText": "Quality Profile list items should be added with", "QualityProfileIdHelpText": "Quality Profile list items should be added with",
"QualityProfiles": "Quality Profiles", "QualityProfiles": "Quality Profiles",
"QualitySettings": "Quality Settings", "QualitySettings": "Quality Settings",
"QualitySettingsSummary": "Quality sizes and naming",
"Queue": "Queue", "Queue": "Queue",
"QueueIsEmpty": "Queue is empty",
"ReadarrSupportsAnyDownloadClientThatUsesTheNewznabStandardAsWellAsOtherDownloadClientsListedBelow": "Readarr supports any downloadClient that uses the Newznab standard, as well as other downloadClients listed below.", "ReadarrSupportsAnyDownloadClientThatUsesTheNewznabStandardAsWellAsOtherDownloadClientsListedBelow": "Readarr supports any downloadClient that uses the Newznab standard, as well as other downloadClients listed below.",
"ReadarrSupportsAnyIndexerThatUsesTheNewznabStandardAsWellAsOtherIndexersListedBelow": "Readarr supports any indexer that uses the Newznab standard, as well as other indexers listed below.", "ReadarrSupportsAnyIndexerThatUsesTheNewznabStandardAsWellAsOtherIndexersListedBelow": "Readarr supports any indexer that uses the Newznab standard, as well as other indexers listed below.",
"ReadarrSupportsMultipleListsForImportingBooksAndAuthorsIntoTheDatabase": "Readarr supports multiple lists for importing Books and Authors into the database.", "ReadarrSupportsMultipleListsForImportingBooksAndAuthorsIntoTheDatabase": "Readarr supports multiple lists for importing Books and Authors into the database.",
@ -519,6 +524,7 @@
"Redownload": "Redownload", "Redownload": "Redownload",
"Refresh": "Refresh", "Refresh": "Refresh",
"RefreshAuthor": "Refresh Author", "RefreshAuthor": "Refresh Author",
"RefreshBook": "Refresh Book",
"RefreshInformation": "Refresh information", "RefreshInformation": "Refresh information",
"RefreshInformationAndScanDisk": "Refresh information and scan disk", "RefreshInformationAndScanDisk": "Refresh information and scan disk",
"RefreshScan": "Refresh & Scan", "RefreshScan": "Refresh & Scan",
@ -574,15 +580,14 @@
"RSSSync": "RSS Sync", "RSSSync": "RSS Sync",
"RSSSyncInterval": "RSS Sync Interval", "RSSSyncInterval": "RSS Sync Interval",
"RssSyncIntervalHelpText": "Interval in minutes. Set to zero to disable (this will stop all automatic release grabbing)", "RssSyncIntervalHelpText": "Interval in minutes. Set to zero to disable (this will stop all automatic release grabbing)",
"SceneInformation": "Scene Information",
"SceneNumberHasntBeenVerifiedYet": "Scene number hasn't been verified yet",
"Scheduled": "Scheduled", "Scheduled": "Scheduled",
"Score": "Score", "Score": "Score",
"ScriptPath": "Script Path", "ScriptPath": "Script Path",
"Search": "Search", "Search": "Search",
"SearchAll": "Search All", "SearchAll": "Search All",
"SearchBook": "Search Book", "SearchBook": "Search Book",
"SearchBoxPlaceHolder": "eg. War and Peace, edition:656, work:4912783, author:128382, isbn:067003469X, asin:B00JCDK5ME", "SearchBoxPlaceHolder": "e.g. War and Peace, goodreads:656, isbn:067003469X, asin:B00JCDK5ME",
"SearchFiltered": "Search Filtered",
"SearchForAllCutoffUnmetBooks": "Search for all Cutoff Unmet books", "SearchForAllCutoffUnmetBooks": "Search for all Cutoff Unmet books",
"SearchForAllMissingBooks": "Search for all missing books", "SearchForAllMissingBooks": "Search for all missing books",
"SearchForMissing": "Search for Missing", "SearchForMissing": "Search for Missing",
@ -590,7 +595,6 @@
"SearchForNewItems": "Search for New Items", "SearchForNewItems": "Search for New Items",
"SearchMonitored": "Search Monitored", "SearchMonitored": "Search Monitored",
"SearchSelected": "Search Selected", "SearchSelected": "Search Selected",
"Season": "Season",
"Security": "Security", "Security": "Security",
"SelectAll": "Select All", "SelectAll": "Select All",
"SelectedCountAuthorsSelectedInterp": "{0} Author(s) Selected", "SelectedCountAuthorsSelectedInterp": "{0} Author(s) Selected",
@ -671,8 +675,8 @@
"TagIsNotUsedAndCanBeDeleted": "Tag is not used and can be deleted", "TagIsNotUsedAndCanBeDeleted": "Tag is not used and can be deleted",
"Tags": "Tags", "Tags": "Tags",
"TagsHelpText": "Applies to authors with at least one matching tag. Leave blank to apply to all authors", "TagsHelpText": "Applies to authors with at least one matching tag. Leave blank to apply to all authors",
"TagsSettingsSummary": "Manage author, profile, restriction, and notification tags",
"Tasks": "Tasks", "Tasks": "Tasks",
"TBA": "TBA",
"Term": "Term", "Term": "Term",
"TestAll": "Test All", "TestAll": "Test All",
"TestAllClients": "Test All Clients", "TestAllClients": "Test All Clients",
@ -687,7 +691,6 @@
"TimeFormat": "Time Format", "TimeFormat": "Time Format",
"Timeleft": "Time Left", "Timeleft": "Time Left",
"Title": "Title", "Title": "Title",
"Titles": "Titles",
"Today": "Today", "Today": "Today",
"Tomorrow": "Tomorrow", "Tomorrow": "Tomorrow",
"TooManyBooks": "Missing or too many books? Modify or create a new", "TooManyBooks": "Missing or too many books? Modify or create a new",
@ -698,13 +701,12 @@
"TotalFileSize": "Total File Size", "TotalFileSize": "Total File Size",
"TrackNumber": "Track Number", "TrackNumber": "Track Number",
"TrackTitle": "Track Title", "TrackTitle": "Track Title",
"Trigger": "Trigger",
"Type": "Type",
"UI": "UI", "UI": "UI",
"UILanguage": "UI Language", "UILanguage": "UI Language",
"UILanguageHelpText": "Language that Readarr will use for UI", "UILanguageHelpText": "Language that Readarr will use for UI",
"UILanguageHelpTextWarning": "Browser Reload Required", "UILanguageHelpTextWarning": "Browser Reload Required",
"UISettings": "UI Settings", "UISettings": "UI Settings",
"UISettingsSummary": "Calendar, date and color impaired options",
"UnableToAddANewDownloadClientPleaseTryAgain": "Unable to add a new download client, please try again.", "UnableToAddANewDownloadClientPleaseTryAgain": "Unable to add a new download client, please try again.",
"UnableToAddANewImportListExclusionPleaseTryAgain": "Unable to add a new import list exclusion, please try again.", "UnableToAddANewImportListExclusionPleaseTryAgain": "Unable to add a new import list exclusion, please try again.",
"UnableToAddANewIndexerPleaseTryAgain": "Unable to add a new indexer, please try again.", "UnableToAddANewIndexerPleaseTryAgain": "Unable to add a new indexer, please try again.",
@ -752,7 +754,7 @@
"UpdateMechanismHelpText": "Use Readarr's built-in updater or a script", "UpdateMechanismHelpText": "Use Readarr's built-in updater or a script",
"Updates": "Updates", "Updates": "Updates",
"UpdateScriptPathHelpText": "Path to a custom script that takes an extracted update package and handle the remainder of the update process", "UpdateScriptPathHelpText": "Path to a custom script that takes an extracted update package and handle the remainder of the update process",
"UpdateSelected": "Updated selected", "UpdateSelected": "Update selected",
"UpdatingIsDisabledInsideADockerContainerUpdateTheContainerImageInstead": "Updating is disabled inside a docker container. Update the container image instead.", "UpdatingIsDisabledInsideADockerContainerUpdateTheContainerImageInstead": "Updating is disabled inside a docker container. Update the container image instead.",
"UpgradeAllowedHelpText": "If disabled qualities will not be upgraded", "UpgradeAllowedHelpText": "If disabled qualities will not be upgraded",
"Uptime": "Uptime", "Uptime": "Uptime",
@ -765,6 +767,7 @@
"UsenetDelay": "Usenet Delay", "UsenetDelay": "Usenet Delay",
"UsenetDelayHelpText": "Delay in minutes to wait before grabbing a release from Usenet", "UsenetDelayHelpText": "Delay in minutes to wait before grabbing a release from Usenet",
"UseProxy": "Use Proxy", "UseProxy": "Use Proxy",
"UserAgentProvidedByTheAppThatCalledTheAPI": "User-Agent provided by the app that called the API",
"Username": "Username", "Username": "Username",
"UsernameHelpText": "Calibre content server username", "UsernameHelpText": "Calibre content server username",
"UseSSL": "Use SSL", "UseSSL": "Use SSL",
@ -785,5 +788,6 @@
"WriteTagsNo": "Never", "WriteTagsNo": "Never",
"WriteTagsSync": "All files; keep in sync with Goodreads", "WriteTagsSync": "All files; keep in sync with Goodreads",
"Year": "Year", "Year": "Year",
"YesCancel": "Yes, Cancel" "YesCancel": "Yes, Cancel",
"Yesterday": "Yesterday"
} }
Loading…
Cancel
Save