1553 lines
65 KiB
JSON
1553 lines
65 KiB
JSON
{
|
|
"app": {
|
|
"title": "Plezy"
|
|
},
|
|
"auth": {
|
|
"signInWithPlex": "Sign in with Plex",
|
|
"showQRCode": "Show QR Code",
|
|
"authenticate": "Authenticate",
|
|
"authenticationTimeout": "Authentication timed out. Please try again.",
|
|
"scanQRToSignIn": "Scan this QR code to sign in",
|
|
"waitingForAuth": "Waiting for authentication...\nSign in from your browser.",
|
|
"useBrowser": "Use browser",
|
|
"or": "or",
|
|
"connectToJellyfin": "Connect to Jellyfin",
|
|
"useQuickConnect": "Use Quick Connect",
|
|
"quickConnectInstructions": "Open Quick Connect in Jellyfin and enter this code.",
|
|
"quickConnectWaiting": "Waiting for approval…",
|
|
"quickConnectCancel": "Cancel",
|
|
"quickConnectExpired": "Quick Connect expired. Try again."
|
|
},
|
|
"common": {
|
|
"cancel": "Cancel",
|
|
"save": "Save",
|
|
"close": "Close",
|
|
"clear": "Clear",
|
|
"reset": "Reset",
|
|
"later": "Later",
|
|
"submit": "Submit",
|
|
"confirm": "Confirm",
|
|
"retry": "Retry",
|
|
"logout": "Logout",
|
|
"unknown": "Unknown",
|
|
"refresh": "Refresh",
|
|
"yes": "Yes",
|
|
"no": "No",
|
|
"delete": "Delete",
|
|
"edit": "Edit",
|
|
"shuffle": "Shuffle",
|
|
"addTo": "Add to...",
|
|
"createNew": "Create new",
|
|
"connect": "Connect",
|
|
"disconnect": "Disconnect",
|
|
"play": "Play",
|
|
"pause": "Pause",
|
|
"resume": "Resume",
|
|
"error": "Error",
|
|
"search": "Search",
|
|
"home": "Home",
|
|
"back": "Back",
|
|
"settings": "Settings",
|
|
"mute": "Mute",
|
|
"ok": "OK",
|
|
"off": "Off",
|
|
"seasonNumber": "Season ${number}",
|
|
"episodeNumberTitle": "Episode ${number} - ${title}",
|
|
"chapterNumber": "Chapter ${number}",
|
|
"reconnect": "Reconnect",
|
|
"viewAll": "View All",
|
|
"checkingNetwork": "Checking network...",
|
|
"loadingServers": "Loading servers...",
|
|
"connectingToServers": "Connecting to servers...",
|
|
"startingOfflineMode": "Starting offline mode...",
|
|
"loading": "Loading...",
|
|
"fullscreen": "Fullscreen",
|
|
"exitFullscreen": "Exit fullscreen",
|
|
"pressBackAgainToExit": "Press back again to exit"
|
|
},
|
|
"screens": {
|
|
"licenses": "Licenses",
|
|
"switchProfile": "Switch Profile",
|
|
"subtitleStyling": "Subtitle Styling",
|
|
"mpvConfig": "mpv.conf",
|
|
"logs": "Logs"
|
|
},
|
|
"update": {
|
|
"available": "Update Available",
|
|
"versionAvailable": "Version ${version} is available",
|
|
"currentVersion": "Current: ${version}",
|
|
"skipVersion": "Skip This Version",
|
|
"viewRelease": "View Release",
|
|
"latestVersion": "You are on the latest version",
|
|
"checkFailed": "Failed to check for updates"
|
|
},
|
|
"settings": {
|
|
"title": "Settings",
|
|
"supportDeveloper": "Support Plezy",
|
|
"supportDeveloperDescription": "Donate via Liberapay to fund development",
|
|
"language": "Language",
|
|
"theme": "Theme",
|
|
"appearance": "Appearance",
|
|
"videoPlayback": "Video Playback",
|
|
"videoPlaybackDescription": "Configure playback behavior",
|
|
"advanced": "Advanced",
|
|
"episodePosterMode": "Episode Poster Style",
|
|
"seriesPoster": "Series Poster",
|
|
"seasonPoster": "Season Poster",
|
|
"episodeThumbnail": "Thumbnail",
|
|
"showHeroSectionDescription": "Display featured content carousel on home screen",
|
|
"secondsLabel": "Seconds",
|
|
"minutesLabel": "Minutes",
|
|
"secondsShort": "s",
|
|
"minutesShort": "m",
|
|
"durationHint": "Enter duration (${min}-${max})",
|
|
"systemTheme": "System",
|
|
"lightTheme": "Light",
|
|
"darkTheme": "Dark",
|
|
"oledTheme": "OLED",
|
|
"libraryDensity": "Library Density",
|
|
"compact": "Compact",
|
|
"comfortable": "Comfortable",
|
|
"viewMode": "View Mode",
|
|
"gridView": "Grid",
|
|
"listView": "List",
|
|
"showHeroSection": "Show Hero Section",
|
|
"continueWatchingAction": "Continue Watching Action",
|
|
"continueWatchingPlay": "Play",
|
|
"continueWatchingDetails": "Open Details",
|
|
"episodeAction": "Episode Action",
|
|
"episodePlay": "Play",
|
|
"episodeDetails": "Open Details",
|
|
"useGlobalHubs": "Use Home Layout",
|
|
"useGlobalHubsDescription": "Show unified home hubs. Otherwise use library recommendations.",
|
|
"showServerNameOnHubs": "Show Server Name on Hubs",
|
|
"showServerNameOnHubsDescription": "Always show server names in hub titles.",
|
|
"groupLibrariesByServer": "Group Libraries by Server",
|
|
"groupLibrariesByServerDescription": "Group sidebar libraries under each media server.",
|
|
"alwaysKeepSidebarOpen": "Always Keep Sidebar Open",
|
|
"alwaysKeepSidebarOpenDescription": "Sidebar stays expanded and content area adjusts to fit",
|
|
"showUnwatchedCount": "Show Unwatched Count",
|
|
"showUnwatchedCountDescription": "Display unwatched episode count on shows and seasons",
|
|
"showEpisodeNumberOnCards": "Show Episode Number on Cards",
|
|
"showEpisodeNumberOnCardsDescription": "Show season and episode number on episode cards",
|
|
"showSeasonPostersOnTabs": "Show Season Posters on Tabs",
|
|
"showSeasonPostersOnTabsDescription": "Show each season's poster above its tab",
|
|
"tvFullCardLayout": "Full TV Cards",
|
|
"tvFullCardLayoutDescription": "Use image-only TV cards with actor names overlaid",
|
|
"focusGlow": "Focus Glow",
|
|
"focusGlowDescription": "Draw a soft glow around the focused card",
|
|
"visualEffects": "Visual Effects",
|
|
"visualEffectsAuto": "Auto",
|
|
"visualEffectsAutoDescription": "Reduce effects automatically on low-power devices",
|
|
"visualEffectsFull": "Full",
|
|
"visualEffectsReduced": "Reduced",
|
|
"visualEffectsReducedDescription": "Fewer animations and lower-resolution artwork",
|
|
"hideSpoilers": "Hide Spoilers for Unwatched Episodes",
|
|
"hideSpoilersDescription": "Blur thumbnails and descriptions for unwatched episodes",
|
|
"playerBackend": "Player Backend",
|
|
"exoPlayer": "ExoPlayer",
|
|
"mpv": "mpv",
|
|
"hardwareDecoding": "Hardware Decoding",
|
|
"hardwareDecodingDescription": "Use hardware acceleration when available",
|
|
"bufferSize": "Buffer Size",
|
|
"bufferSizeMB": "${size}MB",
|
|
"bufferSizeAuto": "Auto (Recommended)",
|
|
"bufferSizeWarning": "${heap}MB memory available. A ${size}MB buffer may affect playback.",
|
|
"defaultQualityTitle": "Default Quality",
|
|
"musicQualityTitle": "Music Quality",
|
|
"subtitleStyling": "Subtitle Styling",
|
|
"subtitleStylingDescription": "Customize subtitle appearance",
|
|
"smallSkipDuration": "Small Skip Duration",
|
|
"largeSkipDuration": "Large Skip Duration",
|
|
"rewindOnResume": "Rewind on Resume",
|
|
"secondsUnit": "${seconds} seconds",
|
|
"defaultSleepTimer": "Default Sleep Timer",
|
|
"minutesUnit": "${minutes} minutes",
|
|
"rememberTrackSelections": "Remember track selections per show/movie",
|
|
"rememberTrackSelectionsDescription": "Remember audio and subtitle choices per title",
|
|
"showChapterMarkersOnTimeline": "Show chapter markers on seek bar",
|
|
"showChapterMarkersOnTimelineDescription": "Segment the seek bar at chapter boundaries",
|
|
"clickVideoTogglesPlayback": "Click on video to toggle play/pause",
|
|
"clickVideoTogglesPlaybackDescription": "Click video to play/pause instead of showing controls.",
|
|
"videoPlayerControls": "Video Player Controls",
|
|
"keyboardShortcuts": "Keyboard Shortcuts",
|
|
"keyboardShortcutsDescription": "Customize keyboard shortcuts",
|
|
"videoPlayerNavigation": "Video Player Navigation",
|
|
"videoPlayerNavigationDescription": "Use arrow keys to navigate video player controls",
|
|
"watchTogetherRelay": "Watch Together Relay",
|
|
"watchTogetherRelayDescription": "Set a custom relay. Everyone must use the same server.",
|
|
"watchTogetherRelayHint": "https://my-relay.example.com",
|
|
"crashReporting": "Crash Reporting",
|
|
"crashReportingDescription": "Send crash reports to help improve the app",
|
|
"debugLogging": "Debug Logging",
|
|
"debugLoggingDescription": "Enable detailed logging for troubleshooting",
|
|
"viewLogs": "View Logs",
|
|
"viewLogsDescription": "View application logs",
|
|
"clearCache": "Clear Cache",
|
|
"clearCacheDescription": "Clear cached images and data. Content may load slower.",
|
|
"clearCacheSuccess": "Cache cleared successfully",
|
|
"resetSettings": "Reset Settings",
|
|
"resetSettingsDescription": "Restore default settings. This can't be undone.",
|
|
"resetSettingsSuccess": "Settings reset successfully",
|
|
"backup": "Backup",
|
|
"exportSettings": "Export Settings",
|
|
"exportSettingsDescription": "Save your preferences to a file",
|
|
"exportSettingsSuccess": "Settings exported",
|
|
"exportSettingsFailed": "Could not export settings",
|
|
"importSettings": "Import Settings",
|
|
"importSettingsDescription": "Restore preferences from a file",
|
|
"importSettingsConfirm": "This will replace your current settings. Continue?",
|
|
"importSettingsSuccess": "Settings imported",
|
|
"importSettingsFailed": "Could not import settings",
|
|
"importSettingsInvalidFile": "This file isn't a valid Plezy settings export",
|
|
"importSettingsNoUser": "Sign in before importing settings",
|
|
"shortcutsReset": "Shortcuts reset to defaults",
|
|
"about": "About",
|
|
"aboutDescription": "App information and licenses",
|
|
"updates": "Updates",
|
|
"updateAvailable": "Update Available",
|
|
"checkForUpdates": "Check for Updates",
|
|
"autoCheckUpdatesOnStartup": "Automatically check for updates on startup",
|
|
"autoCheckUpdatesOnStartupDescription": "Notify when an update is available at launch",
|
|
"validationErrorEnterNumber": "Please enter a valid number",
|
|
"validationErrorDuration": "Duration must be between ${min} and ${max} ${unit}",
|
|
"shortcutAlreadyAssigned": "Shortcut already assigned to ${action}",
|
|
"shortcutUpdated": "Shortcut updated for ${action}",
|
|
"autoSkip": "Auto Skip",
|
|
"autoSkipIntro": "Auto Skip Intro",
|
|
"autoSkipIntroDescription": "Automatically skip intro markers after a few seconds",
|
|
"autoSkipCredits": "Auto Skip Credits",
|
|
"autoSkipCreditsDescription": "Automatically skip credits and play next episode",
|
|
"forceSkipMarkerFallback": "Force Fallback Markers",
|
|
"forceSkipMarkerFallbackDescription": "Use chapter title patterns even when Plex has markers",
|
|
"autoSkipDelay": "Auto Skip Delay",
|
|
"autoSkipDelayDescription": "Wait ${seconds} seconds before auto-skipping",
|
|
"introPattern": "Intro Marker Pattern",
|
|
"introPatternDescription": "Regex pattern to match intro markers in chapter titles",
|
|
"creditsPattern": "Credits Marker Pattern",
|
|
"creditsPatternDescription": "Regex pattern to match credits markers in chapter titles",
|
|
"invalidRegex": "Invalid regular expression",
|
|
"downloads": "Downloads",
|
|
"downloadLocationDescription": "Choose where to store downloaded content",
|
|
"downloadLocationDefault": "Default (App Storage)",
|
|
"downloadLocationCustom": "Custom Location",
|
|
"selectFolder": "Select Folder",
|
|
"resetToDefault": "Reset to Default",
|
|
"currentPath": "Current: ${path}",
|
|
"downloadLocationChanged": "Download location changed",
|
|
"downloadLocationReset": "Download location reset to default",
|
|
"downloadLocationInvalid": "Selected folder is not writable",
|
|
"downloadLocationSelectError": "Failed to select folder",
|
|
"downloadOnWifiOnly": "Download on WiFi only",
|
|
"downloadOnWifiOnlyDescription": "Prevent downloads when on cellular data",
|
|
"autoRemoveWatchedDownloads": "Auto-remove watched downloads",
|
|
"autoRemoveWatchedDownloadsDescription": "Delete watched downloads automatically",
|
|
"cellularDownloadBlocked": "Downloads are blocked on cellular. Use WiFi or change the setting.",
|
|
"maxVolume": "Maximum Volume",
|
|
"maxVolumeDescription": "Allow volume boost above 100% for quiet media",
|
|
"maxVolumePercent": "${percent}%",
|
|
"discordRichPresence": "Discord Rich Presence",
|
|
"discordRichPresenceDescription": "Show what you're watching on Discord",
|
|
"services": "Services",
|
|
"servicesDescription": "Connect Trakt, MyAnimeList, Seerr, and more",
|
|
"manageLibrariesDescription": "Reorder and hide libraries",
|
|
"companionRemoteServer": "Companion Remote Server",
|
|
"companionRemoteServerDescription": "Allow mobile devices on your network to control this app",
|
|
"autoPip": "Auto Picture-in-Picture",
|
|
"autoPipDescription": "Enter picture-in-picture when leaving during playback",
|
|
"matchContentFrameRate": "Match Content Frame Rate",
|
|
"matchContentFrameRateDescription": "Match display refresh rate to video content",
|
|
"matchRefreshRate": "Match Refresh Rate",
|
|
"matchRefreshRateDescription": "Match display refresh rate in fullscreen",
|
|
"matchDynamicRange": "Match Dynamic Range",
|
|
"matchDynamicRangeDescription": "Switch HDR on for HDR content, then back to SDR",
|
|
"displaySwitchDelay": "Display Switch Delay",
|
|
"tunneledPlayback": "Tunneled Playback",
|
|
"tunneledPlaybackDescription": "Use video tunneling. Disable if HDR playback shows black video.",
|
|
"audioPassthrough": "Audio Passthrough",
|
|
"audioPassthroughDescription": "Send Dolby/DTS audio to your receiver or TV without re-encoding, preserving surround sound. Turn off if you have no sound.",
|
|
"audioPassthroughDescriptionAppleTv": "Use Apple's native Dolby decoder for Dolby Digital Plus, including Atmos. DTS and TrueHD still play as multichannel PCM. Turn off if you have no sound.",
|
|
"audioDownmix": "Downmix to Stereo",
|
|
"audioDownmixDescription": "Mix surround audio down to two channels for stereo speakers or headphones",
|
|
"downmixCenterBoost": "Center Channel Boost",
|
|
"downmixCenterBoostValue": "${db} dB",
|
|
"downmixCenterBoostLabel": "Boost (dB)",
|
|
"downmixCenterBoostShort": "dB",
|
|
"audioDownmixNormalize": "Normalize Volume on Downmix",
|
|
"audioDownmixNormalizeDescription": "Lower the mix to prevent clipping. Turn off to keep the original volume (may distort loud scenes).",
|
|
"atmosDiagnostics": "Atmos Output Test",
|
|
"atmosDiagnosticsDescription": "Diagnose Dolby Atmos output by playing test signals through the system player",
|
|
"atmosTestHlsAtmos": "Apple Atmos stream",
|
|
"atmosTestHlsAtmosDescription": "Known-good Dolby Atmos stream. The receiver should show Dolby Atmos.",
|
|
"atmosTestHlsControl": "Apple surround stream",
|
|
"atmosTestHlsControlDescription": "Non-Atmos control stream. The receiver should show surround without Atmos.",
|
|
"atmosTestRawStream": "Raw EAC3 stream",
|
|
"atmosTestRawStreamDescription": "Streams the test file exactly like in-player Atmos playback. Needs the test file URL.",
|
|
"atmosTestRawFile": "Raw EAC3 file",
|
|
"atmosTestRawFileDescription": "Plays the test file with a known length. Needs the test file URL.",
|
|
"atmosTestStop": "Stop test",
|
|
"atmosTestUrl": "Test file URL",
|
|
"atmosTestUrlDescription": "HTTP URL of a raw .ec3 Dolby Atmos file (e.g. extracted with ffmpeg)",
|
|
"atmosTestUrlMissing": "Set the test file URL first",
|
|
"atmosTestStatus": "Status",
|
|
"dvConversionMode": "Dolby Vision Conversion",
|
|
"dvConversionModeDescription": "Choose how ExoPlayer handles Dolby Vision Profile 7 files.",
|
|
"dvConversionAuto": "Auto",
|
|
"dvConversionNative": "Native / Disabled",
|
|
"dvConversionDv81": "P7 → P8.1",
|
|
"dvConversionHevcStrip": "P7 → HEVC",
|
|
"dvConversionAutoDescription": "Use device capability detection and normal fallback behavior",
|
|
"dvConversionNativeDescription": "Force native DV7 and suppress DV conversion retry",
|
|
"dvConversionDv81Description": "Force inline RPU conversion to Dolby Vision profile 8.1",
|
|
"dvConversionHevcStripDescription": "Strip Dolby Vision RPU/EL layers and present plain HEVC",
|
|
"requireProfileSelectionOnOpen": "Ask for profile on app open",
|
|
"requireProfileSelectionOnOpenDescription": "Show profile selection every time the app is opened",
|
|
"forceTvMode": "Force TV mode",
|
|
"forceTvModeDescription": "Force TV layout. For devices that don't auto-detect. Requires restart.",
|
|
"startInFullscreen": "Start in fullscreen",
|
|
"startInFullscreenDescription": "Open Plezy in fullscreen mode at launch",
|
|
"exitFullscreenOnPlayerClose": "Exit fullscreen on player close",
|
|
"exitFullscreenOnPlayerCloseDescription": "Automatically exit fullscreen when closing the video player",
|
|
"autoHidePerformanceOverlay": "Auto-Hide Performance Overlay",
|
|
"autoHidePerformanceOverlayDescription": "Fade the performance overlay with the playback controls",
|
|
"showNavBarLabels": "Show Navigation Bar Labels",
|
|
"showNavBarLabelsDescription": "Display text labels under navigation bar icons",
|
|
"startupSection": "Startup Section",
|
|
"liveTvDefaultFavorites": "Default to Favorite Channels",
|
|
"liveTvDefaultFavoritesDescription": "Show only favorite channels when opening Live TV",
|
|
"display": "Display",
|
|
"homeScreen": "Home Screen",
|
|
"navigation": "Navigation",
|
|
"window": "Window",
|
|
"content": "Content",
|
|
"player": "Player",
|
|
"subtitlesAndConfig": "Subtitles & Configuration",
|
|
"seekAndTiming": "Seek & Timing",
|
|
"behavior": "Behavior"
|
|
},
|
|
"search": {
|
|
"hint": "Search movies, shows, music...",
|
|
"tryDifferentTerm": "Try a different search term",
|
|
"searchYourMedia": "Search your media",
|
|
"enterTitleActorOrKeyword": "Enter a title, actor, or keyword"
|
|
},
|
|
"hotkeys": {
|
|
"setShortcutFor": "Set Shortcut for ${actionName}",
|
|
"clearShortcut": "Clear shortcut",
|
|
"noShortcutSet": "No shortcut set",
|
|
"currentShortcut": "Current shortcut:",
|
|
"pressToRecord": "Select to record a shortcut",
|
|
"recordingShortcut": "Press the shortcut now",
|
|
"actions": {
|
|
"playPause": "Play/Pause",
|
|
"volumeUp": "Volume Up",
|
|
"volumeDown": "Volume Down",
|
|
"seekForward": "Seek Forward (${seconds}s)",
|
|
"seekBackward": "Seek Backward (${seconds}s)",
|
|
"fullscreenToggle": "Toggle Fullscreen",
|
|
"muteToggle": "Toggle Mute",
|
|
"subtitleToggle": "Toggle Subtitles",
|
|
"audioTrackNext": "Next Audio Track",
|
|
"subtitleTrackNext": "Next Subtitle Track",
|
|
"chapterNext": "Next Chapter",
|
|
"chapterPrevious": "Previous Chapter",
|
|
"episodeNext": "Next Episode",
|
|
"episodePrevious": "Previous Episode",
|
|
"speedIncrease": "Increase Speed",
|
|
"speedDecrease": "Decrease Speed",
|
|
"speedReset": "Reset Speed",
|
|
"zoomIn": "Zoom In",
|
|
"zoomOut": "Zoom Out",
|
|
"zoomReset": "Reset Zoom",
|
|
"subSeekNext": "Seek to Next Subtitle",
|
|
"subSeekPrev": "Seek to Previous Subtitle",
|
|
"shaderToggle": "Toggle Shaders",
|
|
"skipMarker": "Skip Intro/Credits",
|
|
"screenshot": "Take Screenshot"
|
|
}
|
|
},
|
|
"fileInfo": {
|
|
"title": "File Info",
|
|
"video": "Video",
|
|
"audio": "Audio",
|
|
"file": "File",
|
|
"advanced": "Advanced",
|
|
"codec": "Codec",
|
|
"resolution": "Resolution",
|
|
"bitrate": "Bitrate",
|
|
"frameRate": "Frame Rate",
|
|
"aspectRatio": "Aspect Ratio",
|
|
"profile": "Profile",
|
|
"bitDepth": "Bit Depth",
|
|
"colorSpace": "Color Space",
|
|
"colorRange": "Color Range",
|
|
"colorPrimaries": "Color Primaries",
|
|
"chromaSubsampling": "Chroma Subsampling",
|
|
"channels": "Channels",
|
|
"subtitles": "Subtitles",
|
|
"overallBitrate": "Overall Bitrate",
|
|
"path": "Path",
|
|
"size": "Size",
|
|
"container": "Container",
|
|
"duration": "Duration",
|
|
"optimizedForStreaming": "Optimized for Streaming",
|
|
"has64bitOffsets": "64-bit Offsets"
|
|
},
|
|
"mediaMenu": {
|
|
"markAsWatched": "Mark as Watched",
|
|
"markAsUnwatched": "Mark as Unwatched",
|
|
"removeFromContinueWatching": "Remove from Continue Watching",
|
|
"viewDetails": "View details",
|
|
"goToSeries": "Go to series",
|
|
"shufflePlay": "Shuffle Play",
|
|
"shuffleNotAvailableOffline": "Shuffle not available offline",
|
|
"fileInfo": "File Info",
|
|
"deleteFromServer": "Delete from server",
|
|
"confirmDelete": "Delete this media and its files from your server?",
|
|
"deleteMultipleWarning": "This includes all episodes and their files.",
|
|
"mediaDeletedSuccessfully": "Media item deleted successfully",
|
|
"mediaFailedToDelete": "Failed to delete media item",
|
|
"rate": "Rate",
|
|
"playFromBeginning": "Play from Beginning",
|
|
"playVersion": "Play Version..."
|
|
},
|
|
"rateSheet": {
|
|
"title": "Rate",
|
|
"server": "Server",
|
|
"favorite": "Favorite",
|
|
"favorited": "Favorited",
|
|
"saved": "Saved",
|
|
"notAvailable": "No match found",
|
|
"noConnectedServices": "Connect a service in Settings to rate there."
|
|
},
|
|
"accessibility": {
|
|
"mediaCardMovie": "${title}, movie",
|
|
"mediaCardShow": "${title}, TV show",
|
|
"mediaCardEpisode": "${title}, ${episodeInfo}",
|
|
"mediaCardSeason": "${title}, ${seasonInfo}",
|
|
"mediaCardWatched": "watched",
|
|
"mediaCardPartiallyWatched": "${percent} percent watched",
|
|
"mediaCardUnwatched": "unwatched",
|
|
"tapToPlay": "Tap to play",
|
|
"decrease": "Decrease",
|
|
"increase": "Increase",
|
|
"decreaseValue": "Decrease ${label}",
|
|
"increaseValue": "Increase ${label}",
|
|
"hue": "Hue",
|
|
"saturation": "Saturation",
|
|
"brightness": "Brightness",
|
|
"hexColor": "Hex color",
|
|
"expandText": "Expand text",
|
|
"collapseText": "Collapse text"
|
|
},
|
|
"tooltips": {
|
|
"shufflePlay": "Shuffle play",
|
|
"playTrailer": "Play trailer",
|
|
"markAsWatched": "Mark as watched",
|
|
"markAsUnwatched": "Mark as unwatched"
|
|
},
|
|
"videoControls": {
|
|
"audioLabel": "Audio",
|
|
"subtitlesLabel": "Subtitles",
|
|
"resetToZero": "Reset to 0ms",
|
|
"addTime": "+${amount}${unit}",
|
|
"minusTime": "-${amount}${unit}",
|
|
"playsLater": "${label} plays later",
|
|
"playsEarlier": "${label} plays earlier",
|
|
"noOffset": "No offset",
|
|
"letterbox": "Letterbox",
|
|
"fillScreen": "Fill screen",
|
|
"stretch": "Stretch",
|
|
"lockRotation": "Lock rotation",
|
|
"unlockRotation": "Unlock rotation",
|
|
"timerActive": "Timer Active",
|
|
"playbackWillPauseIn": "Playback will pause in ${duration}",
|
|
"sleepTimerEndOfVideo": "End of current video",
|
|
"sleepTimerStopAtHeader": "Stop at",
|
|
"sleepTimerDurationHeader": "Timer",
|
|
"playbackWillPauseAtEnd": "Playback will pause at the end of this video",
|
|
"stillWatching": "Still watching?",
|
|
"pausingIn": "Pausing in ${seconds}s",
|
|
"continueWatching": "Continue",
|
|
"autoPlayNext": "Auto-Play Next",
|
|
"playNext": "Play Next",
|
|
"playButton": "Play",
|
|
"pauseButton": "Pause",
|
|
"seekBackwardButton": "Seek backward ${seconds} seconds",
|
|
"seekForwardButton": "Seek forward ${seconds} seconds",
|
|
"previousButton": "Previous episode",
|
|
"nextButton": "Next episode",
|
|
"previousChapterButton": "Previous chapter",
|
|
"nextChapterButton": "Next chapter",
|
|
"muteButton": "Mute",
|
|
"unmuteButton": "Unmute",
|
|
"settingsButton": "Playback Settings",
|
|
"tracksButton": "Audio & Subtitles",
|
|
"chaptersButton": "Chapters",
|
|
"versionQualityButton": "Version & Quality",
|
|
"versionColumnHeader": "Version",
|
|
"qualityColumnHeader": "Quality",
|
|
"qualityOriginal": "Original",
|
|
"qualityPresetLabel": "${resolution}p ${bitrate} Mbps",
|
|
"transcodeUnavailableFallback": "Transcoding unavailable — playing original quality",
|
|
"pipButton": "Picture-in-Picture mode",
|
|
"aspectRatioButton": "Aspect ratio",
|
|
"ambientLighting": "Ambient lighting",
|
|
"fullscreenButton": "Enter fullscreen",
|
|
"exitFullscreenButton": "Exit fullscreen",
|
|
"alwaysOnTopButton": "Always on top",
|
|
"rotationLockButton": "Rotation lock",
|
|
"lockScreen": "Lock screen",
|
|
"screenLockButton": "Screen lock",
|
|
"longPressToUnlock": "Long press to unlock",
|
|
"timelineSlider": "Video timeline",
|
|
"volumeSlider": "Volume level",
|
|
"endsAt": "Ends at ${time}",
|
|
"pipActive": "Playing in Picture-in-Picture",
|
|
"pipFailed": "Picture-in-picture failed to start",
|
|
"screenshotSaved": "Screenshot saved",
|
|
"zoomPercent": "Zoom ${percent}%",
|
|
"pipErrors": {
|
|
"androidVersion": "Requires Android 8.0 or newer",
|
|
"iosVersion": "Requires iOS 15.0 or newer",
|
|
"permissionDisabled": "Picture-in-picture is disabled. Enable it in system settings.",
|
|
"notSupported": "Device doesn't support picture-in-picture mode",
|
|
"voSwitchFailed": "Failed to switch video output for picture-in-picture",
|
|
"failed": "Picture-in-picture failed to start",
|
|
"unknown": "An error occurred: ${error}"
|
|
},
|
|
"chapters": "Chapters",
|
|
"noChaptersAvailable": "No chapters available",
|
|
"queue": "Queue",
|
|
"noQueueItems": "No items in queue",
|
|
"searchSubtitles": "Search Subtitles",
|
|
"language": "Language",
|
|
"noSubtitlesFound": "No subtitles found",
|
|
"downloadedSubtitle": "Downloaded",
|
|
"noSubtitlesAvailable": "No subtitles available",
|
|
"noAudioTracksAvailable": "No audio tracks available",
|
|
"noTracksAvailable": "No tracks available",
|
|
"subtitleDownloaded": "Subtitle downloaded",
|
|
"subtitleDownloadFailed": "Failed to download subtitle",
|
|
"searchLanguages": "Search languages..."
|
|
},
|
|
"userStatus": {},
|
|
"messages": {
|
|
"markedAsWatched": "Marked as watched",
|
|
"markedAsUnwatched": "Marked as unwatched",
|
|
"markedAsWatchedOffline": "Marked as watched (will sync when online)",
|
|
"markedAsUnwatchedOffline": "Marked as unwatched (will sync when online)",
|
|
"autoRemovedWatchedDownload": "Auto-removed: ${title}",
|
|
"removedFromContinueWatching": "Removed from Continue Watching",
|
|
"errorLoading": "Error: ${error}",
|
|
"streamInterrupted": "The stream was interrupted. Press play or seek to retry.",
|
|
"liveStreamInterrupted": "The live stream was interrupted. Press play to retry.",
|
|
"fileInfoNotAvailable": "File information not available",
|
|
"errorLoadingFileInfo": "Error loading file info: ${error}",
|
|
"errorLoadingSeries": "Error loading series",
|
|
"musicNotSupported": "Music playback is not yet supported",
|
|
"noDescriptionAvailable": "No description available",
|
|
"noProfilesAvailable": "No profiles available",
|
|
"contactAdminForProfiles": "Contact your server administrator to add profiles",
|
|
"unableToDetermineLibrarySection": "Unable to determine library section for this item",
|
|
"logsCleared": "Logs cleared",
|
|
"logsCopied": "Logs copied to clipboard",
|
|
"noLogsAvailable": "No logs available",
|
|
"libraryScanning": "Scanning \"${title}\"...",
|
|
"libraryScanStarted": "Library scan started for \"${title}\"",
|
|
"libraryScanFailed": "Failed to scan library: ${error}",
|
|
"metadataRefreshing": "Refreshing metadata for \"${title}\"...",
|
|
"metadataRefreshStarted": "Metadata refresh started for \"${title}\"",
|
|
"metadataRefreshFailed": "Failed to refresh metadata: ${error}",
|
|
"logoutConfirm": "Are you sure you want to logout?",
|
|
"noSeasonsFound": "No seasons found",
|
|
"seasonsLoadFailed": "Couldn't load seasons",
|
|
"noEpisodesFound": "No episodes found in first season",
|
|
"noEpisodesFoundGeneral": "No episodes found",
|
|
"episodesLoadFailed": "Couldn't load episodes",
|
|
"noResultsFound": "No results found",
|
|
"sleepTimerSet": "Sleep timer set for ${label}",
|
|
"noItemsAvailable": "No items available",
|
|
"failedToCreatePlayQueueNoItems": "Failed to create play queue - no items",
|
|
"failedPlayback": "Failed to ${action}: ${error}",
|
|
"switchingToCompatiblePlayer": "Switching to compatible player...",
|
|
"serverLimitTitle": "Playback failed",
|
|
"serverLimitBody": "Server error (HTTP 500). A bandwidth/transcoding limit likely rejected this session. Ask the owner to adjust it.",
|
|
"logsUploaded": "Logs uploaded",
|
|
"logsUploadFailed": "Failed to upload logs",
|
|
"logId": "Log ID"
|
|
},
|
|
"subtitlingStyling": {
|
|
"text": "Text",
|
|
"border": "Border",
|
|
"background": "Background",
|
|
"fontSize": "Font Size",
|
|
"textColor": "Text Color",
|
|
"borderSize": "Border Size",
|
|
"borderColor": "Border Color",
|
|
"backgroundOpacity": "Background Opacity",
|
|
"backgroundColor": "Background Color",
|
|
"position": "Position",
|
|
"assOverride": "ASS Override",
|
|
"bold": "Bold",
|
|
"italic": "Italic",
|
|
"renderResolution": "Render Resolution",
|
|
"renderResolutionScreen": "Screen resolution",
|
|
"renderResolutionVideo": "Video resolution"
|
|
},
|
|
"mpvConfig": {
|
|
"title": "mpv.conf",
|
|
"description": "Advanced video player settings",
|
|
"presets": "Presets",
|
|
"noPresets": "No saved presets",
|
|
"saveAsPreset": "Save as Preset...",
|
|
"presetName": "Preset Name",
|
|
"presetNameHint": "Enter a name for this preset",
|
|
"loadPreset": "Load",
|
|
"deletePreset": "Delete",
|
|
"presetSaved": "Preset saved",
|
|
"presetLoaded": "Preset loaded",
|
|
"presetDeleted": "Preset deleted",
|
|
"confirmDeletePreset": "Are you sure you want to delete this preset?",
|
|
"configPlaceholder": "gpu-api=vulkan\nhwdec=auto\n# comment"
|
|
},
|
|
"dialog": {
|
|
"confirmAction": "Confirm Action"
|
|
},
|
|
"profiles": {
|
|
"addPlezyProfile": "Add Plezy profile",
|
|
"switchingProfile": "Switching profile…",
|
|
"deleteThisProfileTitle": "Delete this profile?",
|
|
"deleteThisProfileMessage": "Remove ${displayName}. Connections aren't affected.",
|
|
"active": "Active",
|
|
"manage": "Manage",
|
|
"delete": "Delete",
|
|
"signOut": "Sign out",
|
|
"signOutPlexTitle": "Sign out of Plex?",
|
|
"signOutPlexMessage": "Remove ${displayName} and all Plex Home users? Sign back in anytime.",
|
|
"signedOutPlex": "Signed out of Plex.",
|
|
"signOutFailed": "Sign out failed.",
|
|
"sectionTitle": "Profiles",
|
|
"summarySingle": "Add profiles to mix managed users and local identities",
|
|
"summaryMultipleWithActive": "${count} profiles · active: ${activeName}",
|
|
"summaryMultiple": "${count} profiles",
|
|
"removeConnectionTitle": "Remove connection?",
|
|
"removeConnectionMessage": "Remove ${displayName}'s access to ${connectionLabel}. Other profiles keep it.",
|
|
"deleteProfileTitle": "Delete profile?",
|
|
"deleteProfileMessage": "Remove ${displayName} and its connections. Servers stay available.",
|
|
"profileNameLabel": "Profile name",
|
|
"pinProtectionLabel": "PIN protection",
|
|
"pinManagedByPlex": "PIN managed by Plex. Edit on plex.tv.",
|
|
"noPinSetEditOnPlex": "No PIN set. To require one, edit the home user on plex.tv.",
|
|
"setPin": "Set PIN",
|
|
"setPinTitle": "Set PIN",
|
|
"confirmPinTitle": "Confirm PIN",
|
|
"pinSet": "PIN set",
|
|
"changePin": "Change",
|
|
"removePin": "Remove",
|
|
"connectionsLabel": "Connections",
|
|
"add": "Add",
|
|
"deleteProfileButton": "Delete profile",
|
|
"noConnectionsHint": "No connections — add one to use this profile.",
|
|
"noConnections": "No connections",
|
|
"plexHomeAccount": "Plex Home account",
|
|
"connectionDefault": "Default",
|
|
"connectionAs": "as ${displayName}",
|
|
"makeDefault": "Make default",
|
|
"removeConnection": "Remove",
|
|
"profileRenamed": "Profile renamed.",
|
|
"borrowAddTo": "Add to ${displayName}",
|
|
"borrowExplain": "Borrow another profile's connection. PIN-protected profiles require a PIN.",
|
|
"borrowEmpty": "Nothing to borrow yet.",
|
|
"borrowEmptySubtitle": "Connect Plex or Jellyfin to another profile first.",
|
|
"borrowFromProfile": "From ${displayName}",
|
|
"borrowConnectionBorrowed": "Connection borrowed.",
|
|
"borrowFailed": "Failed to borrow connection.",
|
|
"incorrectPin": "Incorrect PIN.",
|
|
"incorrectPinTryAgain": "Incorrect PIN. Please try again.",
|
|
"sourceProfileMissingParentAccount": "Source profile is missing its parent account.",
|
|
"failedToLoadHomeUsers": "Could not load your Plex Home users. Check your connection and try again.",
|
|
"failedToVerifyPin": "Failed to verify PIN.",
|
|
"newProfile": "New profile",
|
|
"profileNameHint": "e.g. Guests, Kids, Family Room",
|
|
"pinProtectionOptional": "PIN protection (optional)",
|
|
"pinExplain": "4-digit PIN required to switch profiles.",
|
|
"continueButton": "Continue",
|
|
"pinsDontMatch": "PINs don't match"
|
|
},
|
|
"connections": {
|
|
"sectionTitle": "Connections",
|
|
"addConnection": "Add connection",
|
|
"addConnectionSubtitleNoProfile": "Sign in with Plex or connect a Jellyfin server",
|
|
"addConnectionSubtitleScoped": "Add to ${displayName}: Plex, Jellyfin, or another profile connection",
|
|
"sessionExpiredOne": "Session expired for ${name}",
|
|
"sessionExpiredMany": "Session expired for ${count} servers",
|
|
"signInAgain": "Sign in again",
|
|
"editJellyfinTitle": "Edit Jellyfin connection",
|
|
"editJellyfinIntro": "Add or remove URLs for ${serverName}. Plezy will use the reachable URL with the lowest latency."
|
|
},
|
|
"discover": {
|
|
"title": "Discover",
|
|
"noContentAvailable": "No content available",
|
|
"addMediaToLibraries": "Add some media to your libraries",
|
|
"continueWatching": "Continue Watching",
|
|
"continueWatchingIn": "Continue Watching in ${library}",
|
|
"nextUp": "Next Up",
|
|
"nextUpIn": "Next Up in ${library}",
|
|
"recentlyAdded": "Recently Added",
|
|
"recentlyAddedIn": "Recently Added in ${library}",
|
|
"latestAlbumsIn": "Latest Albums in ${library}",
|
|
"recentlyPlayedIn": "Recently Played in ${library}",
|
|
"mostPlayedIn": "Most Played in ${library}",
|
|
"playEpisode": "S${season}E${episode}",
|
|
"overview": "Overview",
|
|
"cast": "Cast",
|
|
"extras": "Trailers & Extras",
|
|
"studio": "Studio",
|
|
"rating": "Rating",
|
|
"movie": "Movie",
|
|
"tvShow": "TV Show",
|
|
"minutesLeft": "${minutes} min left",
|
|
"moreLikeThis": "More Like This"
|
|
},
|
|
"errors": {
|
|
"searchFailed": "Search failed: ${error}",
|
|
"connectionTimeout": "Connection timeout while loading ${context}",
|
|
"connectionFailed": "Unable to connect to media server",
|
|
"failedToLoad": "Failed to load ${context}: ${error}",
|
|
"noClientAvailable": "No client available",
|
|
"pleaseEnterToken": "Please enter a token",
|
|
"invalidToken": "Invalid token",
|
|
"failedToVerifyToken": "Failed to verify token: ${error}",
|
|
"failedToSwitchProfile": "Failed to switch to ${displayName}",
|
|
"failedToDeleteProfile": "Failed to delete ${displayName}",
|
|
"failedToRate": "Couldn't update rating"
|
|
},
|
|
"libraries": {
|
|
"title": "Libraries",
|
|
"fallbackTitle": "Library",
|
|
"scanLibraryFiles": "Scan Library Files",
|
|
"scanLibrary": "Scan Library",
|
|
"analyze": "Analyze",
|
|
"analyzeLibrary": "Analyze Library",
|
|
"refreshMetadata": "Refresh Metadata",
|
|
"emptyTrash": "Empty Trash",
|
|
"emptyingTrash": "Emptying trash for \"${title}\"...",
|
|
"trashEmptied": "Trash emptied for \"${title}\"",
|
|
"failedToEmptyTrash": "Failed to empty trash: ${error}",
|
|
"analyzing": "Analyzing \"${title}\"...",
|
|
"analysisStarted": "Analysis started for \"${title}\"",
|
|
"failedToAnalyze": "Failed to analyze library: ${error}",
|
|
"noLibrariesFound": "No libraries found",
|
|
"allLibrariesHidden": "All libraries are hidden",
|
|
"hiddenLibrariesCount": "Hidden libraries (${count})",
|
|
"thisLibraryIsEmpty": "This library is empty",
|
|
"noItemsMatchFilters": "No items match the active filters",
|
|
"resetFilters": "Reset filters",
|
|
"all": "All",
|
|
"clearAll": "Clear All",
|
|
"scanLibraryConfirm": "Are you sure you want to scan \"${title}\"?",
|
|
"analyzeLibraryConfirm": "Are you sure you want to analyze \"${title}\"?",
|
|
"refreshMetadataConfirm": "Are you sure you want to refresh metadata for \"${title}\"?",
|
|
"emptyTrashConfirm": "Are you sure you want to empty trash for \"${title}\"?",
|
|
"manageLibraries": "Manage Libraries",
|
|
"sort": "Sort",
|
|
"sortBy": "Sort By",
|
|
"filters": "Filters",
|
|
"confirmActionMessage": "Are you sure you want to perform this action?",
|
|
"showLibrary": "Show library",
|
|
"hideLibrary": "Hide library",
|
|
"libraryOptions": "Library options",
|
|
"content": "library content",
|
|
"selectLibrary": "Select library",
|
|
"filtersWithCount": "Filters (${count})",
|
|
"noRecommendations": "No recommendations available",
|
|
"noCollections": "No collections in this library",
|
|
"noFoldersFound": "No folders found",
|
|
"folders": "folders",
|
|
"tabs": {
|
|
"recommended": "Recommended",
|
|
"browse": "Browse",
|
|
"collections": "Collections",
|
|
"playlists": "Playlists"
|
|
},
|
|
"groupings": {
|
|
"title": "Grouping",
|
|
"all": "All",
|
|
"movies": "Movies",
|
|
"shows": "TV Shows",
|
|
"seasons": "Seasons",
|
|
"episodes": "Episodes",
|
|
"artists": "Artists",
|
|
"albums": "Albums",
|
|
"tracks": "Tracks",
|
|
"folders": "Folders"
|
|
},
|
|
"filterCategories": {
|
|
"genre": "Genre",
|
|
"year": "Year",
|
|
"contentRating": "Content Rating",
|
|
"tag": "Tag",
|
|
"unwatched": "Unwatched",
|
|
"favorites": "Favorites"
|
|
},
|
|
"sortLabels": {
|
|
"title": "Title",
|
|
"dateAdded": "Date Added",
|
|
"releaseDate": "Release Date",
|
|
"rating": "Rating",
|
|
"communityRating": "Community Rating",
|
|
"criticRating": "Critic Rating",
|
|
"userRating": "User Rating",
|
|
"datePlayed": "Date Played",
|
|
"playCount": "Play Count",
|
|
"productionYear": "Production Year",
|
|
"runtime": "Runtime",
|
|
"officialRating": "Official Rating",
|
|
"premiereDate": "Premiere Date",
|
|
"startDate": "Start Date",
|
|
"airTime": "Air Time",
|
|
"studio": "Studio",
|
|
"random": "Random",
|
|
"dateShared": "Date Shared",
|
|
"latestEpisodeAirDate": "Latest Episode Air Date",
|
|
"lastEpisodeDateAdded": "Last Episode Date Added"
|
|
}
|
|
},
|
|
"about": {
|
|
"title": "About",
|
|
"openSourceLicenses": "Open Source Licenses",
|
|
"versionLabel": "Version ${version}",
|
|
"appDescription": "A beautiful Plex and Jellyfin client for Flutter",
|
|
"viewLicensesDescription": "View licenses of third-party libraries"
|
|
},
|
|
"serverSelection": {
|
|
"noServersFoundForAccount": "No servers found for ${username} (${email})",
|
|
"failedToLoadServers": "Failed to load servers: ${error}"
|
|
},
|
|
"hubDetail": {
|
|
"title": "Title",
|
|
"releaseYear": "Release Year",
|
|
"dateAdded": "Date Added",
|
|
"rating": "Rating",
|
|
"noItemsFound": "No items found"
|
|
},
|
|
"logs": {
|
|
"clearLogs": "Clear Logs",
|
|
"copyLogs": "Copy Logs",
|
|
"uploadLogs": "Upload Logs"
|
|
},
|
|
"licenses": {
|
|
"relatedPackages": "Related Packages",
|
|
"license": "License",
|
|
"licenseNumber": "License ${number}",
|
|
"licensesCount": "${count} licenses"
|
|
},
|
|
"navigation": {
|
|
"libraries": "Libraries",
|
|
"downloads": "Downloads",
|
|
"liveTv": "Live TV",
|
|
"explore": "Explore"
|
|
},
|
|
"explore": {
|
|
"title": "Explore",
|
|
"selectSource": "Select source",
|
|
"rows": {
|
|
"watchlist": "Watchlist",
|
|
"recommendedMovies": "Recommended Movies",
|
|
"recommendedShows": "Recommended Shows",
|
|
"trendingMovies": "Trending Movies",
|
|
"trendingShows": "Trending Shows",
|
|
"popularMovies": "Popular Movies",
|
|
"popularShows": "Popular Shows",
|
|
"suggestedAnime": "Suggested Anime",
|
|
"airingAnime": "Top Airing Anime",
|
|
"popularAnime": "Most Popular Anime",
|
|
"trending": "Trending",
|
|
"upcomingMovies": "Upcoming Movies",
|
|
"upcomingShows": "Upcoming Shows"
|
|
},
|
|
"status": {
|
|
"airing": "Airing",
|
|
"ended": "Ended",
|
|
"canceled": "Canceled",
|
|
"upcoming": "Upcoming"
|
|
},
|
|
"episodeCount": {
|
|
"one": "${n} episode",
|
|
"other": "${n} episodes"
|
|
},
|
|
"cast": "Cast",
|
|
"characters": "Characters",
|
|
"addToWatchlist": "Add to Watchlist",
|
|
"removeFromWatchlist": "Remove from Watchlist",
|
|
"watchlistUpdateFailed": "Couldn't update watchlist",
|
|
"notInLibrary": "Not in your library",
|
|
"inTheseLibraries": "In these libraries",
|
|
"checkingLibrary": "Checking your library...",
|
|
"emptyTitle": "Nothing here yet",
|
|
"emptyMessage": "Rows from ${source} will appear here once they have content.",
|
|
"searchHint": "Search ${source}",
|
|
"searchEmpty": "No results for \"${query}\"",
|
|
"searchPrompt": "Search for movies and shows on ${source}.",
|
|
"searchFailed": "Search failed. Check your connection and try again."
|
|
},
|
|
"liveTv": {
|
|
"title": "Live TV",
|
|
"guide": "Guide",
|
|
"noChannels": "No channels available",
|
|
"noDvr": "No DVR configured on any server",
|
|
"serverUnavailable": "Live TV server is not available.",
|
|
"serverNotConnected": "Live TV server is not connected.",
|
|
"noPrograms": "No program data available",
|
|
"liveStreamFailed": "Live stream failed",
|
|
"unknownProgram": "Unknown Program",
|
|
"unknownHub": "Unknown",
|
|
"unknownError": "Unknown error",
|
|
"channelNumber": "Channel ${number}",
|
|
"unknownChannel": "Unknown channel",
|
|
"live": "LIVE",
|
|
"reloadGuide": "Reload Guide",
|
|
"now": "Now",
|
|
"today": "Today",
|
|
"tomorrow": "Tomorrow",
|
|
"midnight": "Midnight",
|
|
"overnight": "Overnight",
|
|
"morning": "Morning",
|
|
"daytime": "Daytime",
|
|
"evening": "Evening",
|
|
"lateNight": "Late Night",
|
|
"whatsOn": "What's On",
|
|
"watchChannel": "Watch Channel",
|
|
"favorites": "Favorites",
|
|
"reorderFavorites": "Reorder Favorites",
|
|
"favoritesLoadFailed": "Could not load favorites. Check your connection and try again.",
|
|
"joinSession": "Join Session in Progress",
|
|
"watchFromStart": "Watch from start (${minutes} min ago)",
|
|
"watchLive": "Watch Live",
|
|
"goToLive": "Go to Live",
|
|
"record": "Record",
|
|
"recordEpisode": "Record Episode",
|
|
"recordSeries": "Record Series",
|
|
"recordOptions": "Record Options",
|
|
"saveTo": "Save to",
|
|
"recordings": "Recordings",
|
|
"scheduledRecordings": "Scheduled",
|
|
"recordingRules": "Recording Rules",
|
|
"noScheduledRecordings": "Nothing scheduled to record",
|
|
"manageRecording": "Manage recording",
|
|
"cancelRecording": "Cancel recording",
|
|
"cancelRecordingTitle": "Cancel this recording?",
|
|
"cancelRecordingMessage": "${title} will no longer be recorded.",
|
|
"deleteRule": "Delete rule",
|
|
"deleteRuleTitle": "Delete recording rule?",
|
|
"deleteRuleMessage": "Future episodes of ${title} will not be recorded.",
|
|
"recordingScheduled": "Recording scheduled",
|
|
"alreadyScheduled": "This program is already scheduled",
|
|
"dvrAdminRequired": "DVR settings require an admin account",
|
|
"recordingFailed": "Couldn't schedule recording",
|
|
"recordingTargetMissing": "Couldn't determine recording library",
|
|
"recordNotAvailable": "Recording not available for this program",
|
|
"recordingCancelled": "Recording cancelled",
|
|
"recordingRuleDeleted": "Recording rule deleted",
|
|
"processRecordingRules": "Re-evaluate rules",
|
|
"recordingInProgress": "Recording now",
|
|
"recordingsCount": "${count} scheduled",
|
|
"editRule": "Edit rule",
|
|
"editRuleAction": "Edit",
|
|
"recordingRuleUpdated": "Recording rule updated",
|
|
"guideReloadRequested": "Guide refresh requested",
|
|
"rulesProcessRequested": "Rule re-evaluation requested",
|
|
"recordShow": "Record show"
|
|
},
|
|
"collections": {
|
|
"title": "Collections",
|
|
"collection": "Collection",
|
|
"empty": "Collection is empty",
|
|
"deleteCollection": "Delete Collection",
|
|
"deleteConfirm": "Delete \"${title}\"? This can't be undone.",
|
|
"deleted": "Collection deleted",
|
|
"deleteFailed": "Failed to delete collection",
|
|
"deleteFailedWithError": "Failed to delete collection: ${error}",
|
|
"failedToLoadItems": "Failed to load collection items: ${error}",
|
|
"selectCollection": "Select Collection",
|
|
"collectionName": "Collection Name",
|
|
"enterCollectionName": "Enter collection name",
|
|
"addedToCollection": "Added to collection",
|
|
"errorAddingToCollection": "Failed to add to collection",
|
|
"created": "Collection created",
|
|
"removeFromCollection": "Remove from collection",
|
|
"removeFromCollectionConfirm": "Remove \"${title}\" from this collection?",
|
|
"removedFromCollection": "Removed from collection",
|
|
"removeFromCollectionFailed": "Failed to remove from collection",
|
|
"removeFromCollectionError": "Error removing from collection: ${error}",
|
|
"searchCollections": "Search collections..."
|
|
},
|
|
"playlists": {
|
|
"title": "Playlists",
|
|
"playlist": "Playlist",
|
|
"noPlaylists": "No playlists found",
|
|
"create": "Create Playlist",
|
|
"playlistName": "Playlist Name",
|
|
"enterPlaylistName": "Enter playlist name",
|
|
"delete": "Delete Playlist",
|
|
"removeItem": "Remove from Playlist",
|
|
"smartPlaylist": "Smart Playlist",
|
|
"itemCount": "${count} items",
|
|
"oneItem": "1 item",
|
|
"emptyPlaylist": "This playlist is empty",
|
|
"deleteConfirm": "Delete Playlist?",
|
|
"deleteMessage": "Are you sure you want to delete \"${name}\"?",
|
|
"created": "Playlist created",
|
|
"deleted": "Playlist deleted",
|
|
"itemAdded": "Added to playlist",
|
|
"itemRemoved": "Removed from playlist",
|
|
"selectPlaylist": "Select Playlist",
|
|
"searchPlaylists": "Search playlists...",
|
|
"errorCreating": "Failed to create playlist",
|
|
"errorDeleting": "Failed to delete playlist",
|
|
"errorLoading": "Failed to load playlists",
|
|
"errorAdding": "Failed to add to playlist",
|
|
"errorReordering": "Failed to reorder playlist item",
|
|
"errorRemoving": "Failed to remove from playlist"
|
|
},
|
|
"music": {
|
|
"goToAlbum": "Go to album",
|
|
"goToArtist": "Go to artist",
|
|
"instantMix": "Instant Mix",
|
|
"playNext": "Play next",
|
|
"addToQueue": "Add to queue",
|
|
"discNumber": "Disc ${n}",
|
|
"trackCount": {
|
|
"one": "${n} track",
|
|
"other": "${n} tracks"
|
|
},
|
|
"nowPlaying": "Now Playing",
|
|
"playingFrom": "Playing from ${title}",
|
|
"queue": "Queue",
|
|
"clearQueue": "Clear queue",
|
|
"lyrics": "Lyrics",
|
|
"noLyrics": "No lyrics available",
|
|
"sleepTimer": "Sleep timer",
|
|
"sleepTimerEndOfTrack": "End of track",
|
|
"sleepTimerMinutes": "${n} minutes",
|
|
"stopPlayback": "Stop playback",
|
|
"previousTrack": "Previous track",
|
|
"nextTrack": "Next track",
|
|
"repeat": "Repeat",
|
|
"repeatAll": "Repeat all",
|
|
"repeatOne": "Repeat one"
|
|
},
|
|
"watchTogether": {
|
|
"title": "Watch Together",
|
|
"description": "Watch content in sync with friends and family",
|
|
"createSession": "Create Session",
|
|
"creating": "Creating...",
|
|
"joinSession": "Join Session",
|
|
"joining": "Joining...",
|
|
"controlMode": "Control Mode",
|
|
"controlModeQuestion": "Who can control playback?",
|
|
"hostOnly": "Host Only",
|
|
"anyone": "Anyone",
|
|
"hostingSession": "Hosting Session",
|
|
"inSession": "In Session",
|
|
"sessionCode": "Session Code",
|
|
"openSessionControls": "Open Watch Together session controls",
|
|
"copySessionCode": "Copy session code",
|
|
"hostControlsPlayback": "Host controls playback",
|
|
"anyoneCanControl": "Anyone can control playback",
|
|
"hostControls": "Host controls",
|
|
"anyoneControls": "Anyone controls",
|
|
"participants": "Participants",
|
|
"host": "Host",
|
|
"hostBadge": "HOST",
|
|
"youAreHost": "You are the host",
|
|
"watchingWithOthers": "Watching with others",
|
|
"endSession": "End Session",
|
|
"leaveSession": "Leave Session",
|
|
"endSessionQuestion": "End Session?",
|
|
"leaveSessionQuestion": "Leave Session?",
|
|
"endSessionConfirm": "This will end the session for all participants.",
|
|
"leaveSessionConfirm": "You will be removed from the session.",
|
|
"endSessionConfirmOverlay": "This will end the watch session for all participants.",
|
|
"leaveSessionConfirmOverlay": "You will be disconnected from the watch session.",
|
|
"end": "End",
|
|
"leave": "Leave",
|
|
"syncing": "Syncing...",
|
|
"joinWatchSession": "Join Watch Session",
|
|
"enterCodeHint": "Enter 5-character code",
|
|
"pasteFromClipboard": "Paste from clipboard",
|
|
"pleaseEnterCode": "Please enter a session code",
|
|
"codeMustBe5Chars": "Session code must be 5 characters",
|
|
"joinInstructions": "Enter the host's session code to join.",
|
|
"failedToCreate": "Failed to create session",
|
|
"failedToJoin": "Failed to join session",
|
|
"sessionCodeCopied": "Session code copied to clipboard",
|
|
"relayUnreachable": "Relay server unreachable. ISP blocking may prevent Watch Together.",
|
|
"reconnectingToHost": "Reconnecting to host...",
|
|
"currentPlayback": "Current Playback",
|
|
"joinCurrentPlayback": "Join Current Playback",
|
|
"joinCurrentPlaybackDescription": "Jump back into what the host is currently watching",
|
|
"failedToOpenCurrentPlayback": "Failed to open current playback",
|
|
"participantJoined": "${name} joined",
|
|
"participantLeft": "${name} left",
|
|
"participantPaused": "${name} paused",
|
|
"participantResumed": "${name} resumed",
|
|
"participantSeeked": "${name} seeked",
|
|
"participantBuffering": "${name} is buffering",
|
|
"participantNeedsUpdate": "${name} is on an older app version — sync unavailable",
|
|
"resumingWithout": "Resuming without ${name}",
|
|
"waitingForParticipants": "Waiting for others to load...",
|
|
"waitingForName": "Waiting for ${name}...",
|
|
"recentRooms": "Recent Rooms",
|
|
"renameRoom": "Rename Room",
|
|
"removeRoom": "Remove",
|
|
"guestSwitchUnavailable": "Couldn't switch — server unavailable for sync",
|
|
"guestSwitchFailed": "Couldn't switch — content not found on this server"
|
|
},
|
|
"downloads": {
|
|
"title": "Downloads",
|
|
"manage": "Manage",
|
|
"tvShows": "TV Shows",
|
|
"movies": "Movies",
|
|
"music": "Music",
|
|
"tracksQueued": "${count} tracks queued for download",
|
|
"noDownloads": "No downloads yet",
|
|
"noDownloadsDescription": "Downloaded content will appear here for offline viewing",
|
|
"downloadNow": "Download",
|
|
"deleteDownload": "Delete download",
|
|
"retryDownload": "Retry download",
|
|
"downloadQueued": "Download queued",
|
|
"downloadResumed": "Download resumed",
|
|
"serverErrorBitrate": "Server error: file may exceed the remote bitrate limit",
|
|
"episodesQueued": "${count} episodes queued for download",
|
|
"downloadDeleted": "Download deleted",
|
|
"deleteConfirm": "Delete \"${title}\" from this device?",
|
|
"cancelledDownloadTitle": "Cancelled Download",
|
|
"cancelledDownloadMessage": "This download was cancelled. What would you like to do?",
|
|
"allEpisodesAlreadyDownloaded": "All episodes already downloaded",
|
|
"resumeDownload": "Resume download",
|
|
"cancelledDownload": "Cancelled download",
|
|
"syncingFile": "${file} (syncing ${status})",
|
|
"downloadedFileClickToComplete": "Downloaded ${file} - Click to complete",
|
|
"partialDownloadClickToComplete": "Partially downloaded - Click to complete",
|
|
"deleting": "Deleting...",
|
|
"deletingWithProgress": "Deleting ${title}... (${current} of ${total})",
|
|
"queuedTooltip": "Queued",
|
|
"queuedFilesTooltip": "Queued ${files}",
|
|
"downloadingTooltip": "Downloading...",
|
|
"downloadingFilesTooltip": "Downloading ${files}",
|
|
"noDownloadsTree": "No downloads",
|
|
"pauseAll": "Pause all",
|
|
"resumeAll": "Resume all",
|
|
"deleteAll": "Delete all",
|
|
"selectVersion": "Select Version",
|
|
"allEpisodes": "All episodes",
|
|
"unwatchedOnly": "Unwatched only",
|
|
"nextNUnwatched": "Next ${count} unwatched",
|
|
"customAmount": "Custom amount...",
|
|
"includeSpecials": "Include Specials",
|
|
"howManyEpisodes": "How many episodes?",
|
|
"invalidEpisodeCount": "Enter a valid episode count.",
|
|
"keepSynced": "Keep synced",
|
|
"downloadOnce": "Download once",
|
|
"keepNUnwatched": "Keep ${count} unwatched",
|
|
"editSyncRule": "Edit sync rule",
|
|
"removeSyncRule": "Remove sync rule",
|
|
"removeSyncRuleConfirm": "Stop syncing \"${title}\"? Downloaded episodes will be kept.",
|
|
"syncRuleCreated": "Sync rule created — keeping ${count} unwatched episodes",
|
|
"syncRuleUpdated": "Sync rule updated",
|
|
"syncRuleRemoved": "Sync rule removed",
|
|
"syncedNewEpisodes": "Synced ${count} new episodes for ${title}",
|
|
"activeSyncRules": "Sync rules",
|
|
"noSyncRules": "No sync rules",
|
|
"manageSyncRule": "Manage sync",
|
|
"editEpisodeCount": "Episode count",
|
|
"editSyncFilter": "Sync filter",
|
|
"syncAllItems": "Syncing all items",
|
|
"syncUnwatchedItems": "Syncing unwatched items",
|
|
"syncRuleServerContext": "Server: ${server} • ${status}",
|
|
"syncRuleAvailable": "Available",
|
|
"syncRuleOffline": "Offline",
|
|
"syncRuleSignInRequired": "Sign in required",
|
|
"syncRuleNotAvailableForProfile": "Not available for current profile",
|
|
"syncRuleUnknownServer": "Unknown server",
|
|
"syncRuleListCreated": "Sync rule created"
|
|
},
|
|
"shaders": {
|
|
"title": "Shaders",
|
|
"noShaderDescription": "No video enhancement",
|
|
"nvscalerDescription": "NVIDIA image scaling for sharper video",
|
|
"artcnnVariantNeutral": "Neutral",
|
|
"artcnnVariantDenoise": "Denoise",
|
|
"artcnnVariantDenoiseSharpen": "Denoise + Sharpen",
|
|
"qualityFast": "Fast",
|
|
"qualityHQ": "High Quality",
|
|
"mode": "Mode",
|
|
"importShader": "Import Shader",
|
|
"customShaderDescription": "Custom GLSL shader",
|
|
"shaderImported": "Shader imported",
|
|
"shaderImportFailed": "Failed to import shader",
|
|
"deleteShader": "Delete Shader",
|
|
"deleteShaderConfirm": "Delete \"${name}\"?"
|
|
},
|
|
"companionRemote": {
|
|
"title": "Companion Remote",
|
|
"connectedTo": "Connected to ${name}",
|
|
"unknownDevice": "Unknown Device",
|
|
"session": {
|
|
"startingServer": "Starting remote server...",
|
|
"hostAddress": "Host Address",
|
|
"connected": "Connected",
|
|
"serverRunning": "Remote server active",
|
|
"serverStopped": "Remote server stopped",
|
|
"serverRunningDescription": "Mobile devices on your network can connect to this app",
|
|
"serverStoppedDescription": "Start the server to allow mobile devices to connect",
|
|
"usePhoneToControl": "Use your mobile device to control this app",
|
|
"startServer": "Start Server",
|
|
"stopServer": "Stop Server",
|
|
"minimize": "Minimize"
|
|
},
|
|
"pairing": {
|
|
"discoveryDescription": "Plezy devices with the same Plex account appear here",
|
|
"hostAddressHint": "192.168.1.100:48632",
|
|
"connecting": "Connecting...",
|
|
"searchingForDevices": "Looking for devices...",
|
|
"noDevicesFound": "No devices found on your network",
|
|
"noDevicesHint": "Open Plezy on desktop and use the same WiFi",
|
|
"availableDevices": "Available Devices",
|
|
"manualConnection": "Manual Connection",
|
|
"cryptoInitFailed": "Couldn't start secure connection. Sign in to Plex first.",
|
|
"validationHostRequired": "Please enter host address",
|
|
"validationHostFormat": "Format must be IP:port (e.g., 192.168.1.100:48632)",
|
|
"connectionTimedOut": "Connection timed out. Use the same network on both devices.",
|
|
"sessionNotFound": "Device not found. Make sure Plezy is running on the host.",
|
|
"authFailed": "Authentication failed. Both devices need the same Plex account.",
|
|
"failedToConnect": "Failed to connect: ${error}"
|
|
},
|
|
"remote": {
|
|
"disconnectConfirm": "Do you want to disconnect from the remote session?",
|
|
"reconnecting": "Reconnecting...",
|
|
"attemptOf": "Attempt ${current} of 5",
|
|
"retryNow": "Retry Now",
|
|
"tabRemote": "Remote",
|
|
"tabPlay": "Play",
|
|
"tabMore": "More",
|
|
"menu": "Menu",
|
|
"tabNavigation": "Tab Navigation",
|
|
"tabDiscover": "Discover",
|
|
"tabLibraries": "Libraries",
|
|
"tabSearch": "Search",
|
|
"tabDownloads": "Downloads",
|
|
"tabSettings": "Settings",
|
|
"previous": "Previous",
|
|
"playPause": "Play/Pause",
|
|
"next": "Next",
|
|
"seekBack": "Seek Back",
|
|
"stop": "Stop",
|
|
"seekForward": "Seek Fwd",
|
|
"volume": "Volume",
|
|
"volumeDown": "Down",
|
|
"volumeUp": "Up",
|
|
"fullscreen": "Fullscreen",
|
|
"subtitles": "Subtitles",
|
|
"audio": "Audio",
|
|
"searchHint": "Search on desktop..."
|
|
},
|
|
"errors": {
|
|
"noNetworkInterface": "No network interface found",
|
|
"authenticationFailed": "Authentication failed",
|
|
"serverStartFailed": "Failed to start remote server: ${error}",
|
|
"commandFailed": "Failed to send remote command: ${error}",
|
|
"joinTimedOut": "Timed out joining session",
|
|
"failedToConnectAnyAddress": "Failed to connect to any address",
|
|
"connectionLostAfterAttempts": "Connection lost after ${attempts} attempts",
|
|
"connectionLost": "Connection lost"
|
|
}
|
|
},
|
|
"videoSettings": {
|
|
"playbackSpeed": "Playback Speed",
|
|
"zoom": "Zoom",
|
|
"sleepTimer": "Sleep Timer",
|
|
"audioSync": "Audio Sync",
|
|
"subtitleSync": "Subtitle Sync",
|
|
"hdr": "HDR",
|
|
"audioOutput": "Audio Output",
|
|
"performanceOverlay": "Performance Overlay",
|
|
"audioPassthrough": "Audio Passthrough",
|
|
"audioNormalization": "Normalize Loudness",
|
|
"audioDownmix": "Downmix to Stereo"
|
|
},
|
|
"performanceOverlay": {
|
|
"color": "Color",
|
|
"performance": "Performance",
|
|
"buffer": "Buffer",
|
|
"app": "App",
|
|
"decoder": "Decoder",
|
|
"rawDecoder": "Raw Decoder",
|
|
"tunneling": "Tunneling",
|
|
"aspect": "Aspect",
|
|
"rotation": "Rotation",
|
|
"dvSource": "DV Source",
|
|
"dvPath": "DV Path",
|
|
"p7Conversion": "P7 Conv",
|
|
"sampleRate": "Sample Rate",
|
|
"pixelFormat": "Pixel Fmt",
|
|
"hwFormat": "HW Fmt",
|
|
"matrix": "Matrix",
|
|
"primaries": "Primaries",
|
|
"transfer": "Transfer",
|
|
"renderFps": "Render FPS",
|
|
"displayFps": "Display FPS",
|
|
"avSync": "A/V Sync",
|
|
"dropped": "Dropped",
|
|
"dvRpus": "DV RPUs",
|
|
"dvRpuAverage": "DV RPU Avg",
|
|
"dvSampleAverage": "DV Sample Avg",
|
|
"maxLuma": "Max Luma",
|
|
"minLuma": "Min Luma",
|
|
"maxCll": "MaxCLL",
|
|
"maxFall": "MaxFALL",
|
|
"cacheUsed": "Cache Used",
|
|
"cacheLimit": "Cache Limit",
|
|
"speed": "Speed",
|
|
"player": "Player",
|
|
"memory": "Memory",
|
|
"uiFps": "UI FPS"
|
|
},
|
|
"externalPlayer": {
|
|
"title": "External Player",
|
|
"useExternalPlayer": "Use External Player",
|
|
"useExternalPlayerDescription": "Open videos in another app",
|
|
"selectPlayer": "Select Player",
|
|
"customPlayers": "Custom Players",
|
|
"systemDefault": "System Default",
|
|
"addCustomPlayer": "Add Custom Player",
|
|
"playerName": "Player Name",
|
|
"playerNameHint": "My Player",
|
|
"playerCommand": "Command",
|
|
"playerPackage": "Package Name",
|
|
"playerUrlScheme": "URL Scheme",
|
|
"off": "Off",
|
|
"launchFailed": "Failed to open external player",
|
|
"appNotInstalled": "${name} is not installed",
|
|
"playInExternalPlayer": "Play in External Player"
|
|
},
|
|
"metadataEdit": {
|
|
"editMetadata": "Edit...",
|
|
"screenTitle": "Edit Metadata",
|
|
"basicInfo": "Basic Info",
|
|
"artwork": "Artwork",
|
|
"advancedSettings": "Advanced Settings",
|
|
"title": "Title",
|
|
"sortTitle": "Sort Title",
|
|
"originalTitle": "Original Title",
|
|
"releaseDate": "Release Date",
|
|
"contentRating": "Content Rating",
|
|
"studio": "Studio",
|
|
"tagline": "Tagline",
|
|
"summary": "Summary",
|
|
"poster": "Poster",
|
|
"background": "Background",
|
|
"logo": "Logo",
|
|
"squareArt": "Square Art",
|
|
"selectPoster": "Select Poster",
|
|
"selectBackground": "Select Background",
|
|
"selectLogo": "Select Logo",
|
|
"selectSquareArt": "Select Square Art",
|
|
"fromUrl": "From URL",
|
|
"uploadFile": "Upload File",
|
|
"enterImageUrl": "Enter image URL",
|
|
"imageUrl": "Image URL",
|
|
"metadataUpdated": "Metadata updated",
|
|
"metadataUpdateFailed": "Failed to update metadata",
|
|
"artworkUpdated": "Artwork updated",
|
|
"artworkUpdateFailed": "Failed to update artwork",
|
|
"noArtworkAvailable": "No artwork available",
|
|
"artworkOption": "Artwork option ${index}",
|
|
"selectedArtworkOption": "Artwork option ${index}, selected",
|
|
"notSet": "Not set",
|
|
"libraryDefault": "Library default",
|
|
"accountDefault": "Account default",
|
|
"seriesDefault": "Series default",
|
|
"episodeSorting": "Episode Sorting",
|
|
"oldestFirst": "Oldest first",
|
|
"newestFirst": "Newest first",
|
|
"keep": "Keep",
|
|
"allEpisodes": "All episodes",
|
|
"latestEpisodes": "${count} latest episodes",
|
|
"latestEpisode": "Latest episode",
|
|
"episodesAddedPastDays": "Episodes added in the past ${count} days",
|
|
"deleteAfterPlaying": "Delete Episodes After Playing",
|
|
"never": "Never",
|
|
"afterADay": "After a day",
|
|
"afterAWeek": "After a week",
|
|
"afterAMonth": "After a month",
|
|
"onNextRefresh": "On next refresh",
|
|
"seasons": "Seasons",
|
|
"show": "Show",
|
|
"hide": "Hide",
|
|
"episodeOrdering": "Episode Ordering",
|
|
"tmdbAiring": "The Movie Database (Aired)",
|
|
"tvdbAiring": "TheTVDB (Aired)",
|
|
"tvdbAbsolute": "TheTVDB (Absolute)",
|
|
"metadataLanguage": "Metadata Language",
|
|
"useOriginalTitle": "Use Original Title",
|
|
"preferredAudioLanguage": "Preferred Audio Language",
|
|
"preferredSubtitleLanguage": "Preferred Subtitle Language",
|
|
"subtitleMode": "Auto-Select Subtitle Mode",
|
|
"manuallySelected": "Manually selected",
|
|
"shownWithForeignAudio": "Shown with foreign audio",
|
|
"alwaysEnabled": "Always enabled",
|
|
"tags": "Tags",
|
|
"addTag": "Add tag",
|
|
"genre": "Genre",
|
|
"director": "Director",
|
|
"writer": "Writer",
|
|
"producer": "Producer",
|
|
"country": "Country",
|
|
"collection": "Collection",
|
|
"label": "Label",
|
|
"style": "Style",
|
|
"mood": "Mood"
|
|
},
|
|
"matchScreen": {
|
|
"match": "Match...",
|
|
"fixMatch": "Fix Match...",
|
|
"unmatch": "Unmatch",
|
|
"unmatchConfirm": "Clear this match? Plex treats it as unmatched until rematched.",
|
|
"unmatchSuccess": "Item unmatched",
|
|
"unmatchFailed": "Failed to unmatch item",
|
|
"matchApplied": "Match applied",
|
|
"matchFailed": "Failed to apply match",
|
|
"titleHint": "Title",
|
|
"yearHint": "Year",
|
|
"search": "Search",
|
|
"noMatchesFound": "No matches found"
|
|
},
|
|
"serverTasks": {
|
|
"title": "Server Tasks",
|
|
"failedToLoad": "Failed to load tasks",
|
|
"noTasks": "No tasks running"
|
|
},
|
|
"trakt": {
|
|
"title": "Trakt",
|
|
"connected": "Connected",
|
|
"connectedAs": "Connected as @${username}",
|
|
"disconnectConfirm": "Disconnect Trakt account?",
|
|
"disconnectConfirmBody": "Plezy will stop sending events to Trakt. You can reconnect any time.",
|
|
"scrobble": "Real-time scrobbling",
|
|
"scrobbleDescription": "Send play, pause, and stop events to Trakt during playback.",
|
|
"watchedSync": "Sync watched status",
|
|
"watchedSyncDescription": "When you mark items watched in Plezy, mark them on Trakt."
|
|
},
|
|
"seerr": {
|
|
"title": "Seerr",
|
|
"connectTitle": "Connect Seerr",
|
|
"serverUrl": "Server URL",
|
|
"serverUrlHelper": "The address of your Seerr instance",
|
|
"checkServer": "Continue",
|
|
"signInWithJellyfin": "Sign in with Jellyfin",
|
|
"signInWithEmby": "Sign in with Emby",
|
|
"signInWithLocal": "Use a local account",
|
|
"email": "Email",
|
|
"noSignInMethods": "This Seerr instance offers no sign-in method Plezy supports.",
|
|
"instance": "Instance",
|
|
"disconnectConfirm": "Disconnect Seerr?",
|
|
"disconnectConfirmBody": "Plezy will forget this Seerr instance. Reconnect any time.",
|
|
"request": "Request",
|
|
"request4k": "Request in 4K",
|
|
"seasons": "Seasons",
|
|
"allSeasons": "All seasons",
|
|
"advancedOptions": "Advanced",
|
|
"destinationServer": "Destination server",
|
|
"qualityProfile": "Quality profile",
|
|
"rootFolder": "Root folder",
|
|
"languageProfile": "Language profile",
|
|
"requestSubmitted": "Request submitted",
|
|
"requestFailed": "Request failed: ${error}",
|
|
"requestsLoadFailed": "Couldn't load request options",
|
|
"nothingToRequest": "Everything is already available or requested.",
|
|
"statusAvailable": "Available",
|
|
"statusPartiallyAvailable": "Partially available",
|
|
"statusRequested": "Requested",
|
|
"statusProcessing": "Processing"
|
|
},
|
|
"services": {
|
|
"title": "Services",
|
|
"hubSubtitle": "Sync watch progress and request new titles.",
|
|
"notConnected": "Not connected",
|
|
"connectedAs": "Connected as @${username}",
|
|
"scrobble": "Track progress automatically",
|
|
"scrobbleDescription": "Update your list when you finish an episode or movie.",
|
|
"disconnectConfirm": "Disconnect ${service}?",
|
|
"disconnectConfirmBody": "Plezy will stop updating ${service}. Reconnect any time.",
|
|
"connectFailed": "Couldn't connect to ${service}. Try again.",
|
|
"names": {
|
|
"mal": "MyAnimeList",
|
|
"anilist": "AniList",
|
|
"simkl": "Simkl",
|
|
"seerr": "Seerr"
|
|
},
|
|
"deviceCode": {
|
|
"title": "Activate Plezy on ${service}",
|
|
"body": "Visit ${url} and enter this code:",
|
|
"openToActivate": "Open ${service} to activate",
|
|
"copyCode": "Copy activation code",
|
|
"waitingForAuthorization": "Waiting for authorization…",
|
|
"codeCopied": "Code copied"
|
|
},
|
|
"oauthProxy": {
|
|
"title": "Sign in to ${service}",
|
|
"body": "Scan this QR code or open the URL on any device.",
|
|
"openToSignIn": "Open ${service} to sign in",
|
|
"copyUrl": "Copy sign-in URL",
|
|
"urlCopied": "URL copied"
|
|
},
|
|
"libraryFilter": {
|
|
"title": "Library filter",
|
|
"subtitleAllSyncing": "Syncing all libraries",
|
|
"subtitleNoneSyncing": "Nothing syncing",
|
|
"subtitleBlocked": "${count} blocked",
|
|
"subtitleAllowed": "${count} allowed",
|
|
"mode": "Filter mode",
|
|
"modeBlacklist": "Blacklist",
|
|
"modeWhitelist": "Whitelist",
|
|
"modeHintBlacklist": "Sync every library except the ones checked below.",
|
|
"modeHintWhitelist": "Sync only the libraries checked below.",
|
|
"libraries": "Libraries",
|
|
"noLibraries": "No libraries available"
|
|
}
|
|
},
|
|
"addServer": {
|
|
"addJellyfinTitle": "Add Jellyfin server",
|
|
"serverUrls": "Server URLs",
|
|
"serverUrlsHelper": "Multiple URLs allowed, separated by commas.",
|
|
"findServer": "Find server",
|
|
"searchingLocalServers": "Looking for local Jellyfin servers...",
|
|
"localServers": "Local Jellyfin servers",
|
|
"username": "Username",
|
|
"password": "Password",
|
|
"signIn": "Sign in",
|
|
"change": "Change",
|
|
"required": "Required",
|
|
"couldNotReachServer": "Could not reach the server: ${error}",
|
|
"signInFailed": "Sign-in failed: ${error}",
|
|
"quickConnectFailed": "Quick Connect failed: ${error}",
|
|
"addPlexTitle": "Sign in with Plex",
|
|
"pinExpired": "PIN expired before sign-in. Please try again.",
|
|
"failedToRegisterAccount": "Failed to register account: ${error}",
|
|
"enterJellyfinUrlError": "Enter your Jellyfin server URL",
|
|
"addConnectionTitle": "Add connection",
|
|
"addConnectionTitleScoped": "Add to ${name}",
|
|
"signInWithPlexCard": "Sign in with Plex",
|
|
"signInWithPlexCardSubtitle": "Authorize this device. Shared servers are added.",
|
|
"signInWithPlexCardSubtitleScoped": "Authorize a Plex account. Home users become profiles.",
|
|
"connectToJellyfinCard": "Connect to Jellyfin",
|
|
"connectToJellyfinCardSubtitle": "Enter your server URL, username, and password.",
|
|
"connectToJellyfinCardSubtitleScoped": "Sign in to a Jellyfin server. Binds to ${name}.",
|
|
"borrowFromAnotherProfile": "Borrow from another profile",
|
|
"borrowFromAnotherProfileSubtitle": "Reuse another profile's connection. PIN-protected profiles require a PIN."
|
|
}
|
|
}
|