aboutsummaryrefslogtreecommitdiffstats
path: root/youtube/i18n_strings.py
diff options
context:
space:
mode:
Diffstat (limited to 'youtube/i18n_strings.py')
-rw-r--r--youtube/i18n_strings.py112
1 files changed, 112 insertions, 0 deletions
diff --git a/youtube/i18n_strings.py b/youtube/i18n_strings.py
new file mode 100644
index 0000000..47a13a3
--- /dev/null
+++ b/youtube/i18n_strings.py
@@ -0,0 +1,112 @@
+#!/usr/bin/env python3
+"""
+Centralized i18n strings for yt-local
+
+This file contains static strings that need to be translated but are used
+dynamically in templates or generated content. By importing this module,
+these strings get extracted by babel for translation.
+"""
+
+from flask_babel import lazy_gettext as _l
+
+# Settings categories
+CATEGORY_NETWORK = _l('Network')
+CATEGORY_PLAYBACK = _l('Playback')
+CATEGORY_INTERFACE = _l('Interface')
+
+# Common setting labels
+ROUTE_TOR = _l('Route Tor')
+DEFAULT_SUBTITLES_MODE = _l('Default subtitles mode')
+AV1_CODEC_RANKING = _l('AV1 Codec Ranking')
+VP8_VP9_CODEC_RANKING = _l('VP8/VP9 Codec Ranking')
+H264_CODEC_RANKING = _l('H.264 Codec Ranking')
+USE_INTEGRATED_SOURCES = _l('Use integrated sources')
+ROUTE_IMAGES = _l('Route images')
+ENABLE_COMMENTS_JS = _l('Enable comments.js')
+ENABLE_SPONSORBLOCK = _l('Enable SponsorBlock')
+ENABLE_EMBED_PAGE = _l('Enable embed page')
+
+# Setting names (auto-generated from setting keys)
+RELATED_VIDEOS_MODE = _l('Related videos mode')
+COMMENTS_MODE = _l('Comments mode')
+ENABLE_COMMENT_AVATARS = _l('Enable comment avatars')
+DEFAULT_COMMENT_SORTING = _l('Default comment sorting')
+THEATER_MODE = _l('Theater mode')
+AUTOPLAY_VIDEOS = _l('Autoplay videos')
+DEFAULT_RESOLUTION = _l('Default resolution')
+USE_VIDEO_PLAYER = _l('Use video player')
+USE_VIDEO_DOWNLOAD = _l('Use video download')
+PROXY_IMAGES = _l('Proxy images')
+THEME = _l('Theme')
+FONT = _l('Font')
+LANGUAGE = _l('Language')
+EMBED_PAGE_MODE = _l('Embed page mode')
+
+# Common option values
+OFF = _l('Off')
+ON = _l('On')
+DISABLED = _l('Disabled')
+ENABLED = _l('Enabled')
+ALWAYS_SHOWN = _l('Always shown')
+SHOWN_BY_CLICKING_BUTTON = _l('Shown by clicking button')
+NATIVE = _l('Native')
+NATIVE_WITH_HOTKEYS = _l('Native with hotkeys')
+PLYR = _l('Plyr')
+
+# Theme options
+LIGHT = _l('Light')
+GRAY = _l('Gray')
+DARK = _l('Dark')
+
+# Font options
+BROWSER_DEFAULT = _l('Browser default')
+LIBERATION_SERIF = _l('Liberation Serif')
+ARIAL = _l('Arial')
+VERDANA = _l('Verdana')
+TAHOMA = _l('Tahoma')
+
+# Search and filter options
+SORT_BY = _l('Sort by')
+RELEVANCE = _l('Relevance')
+UPLOAD_DATE = _l('Upload date')
+VIEW_COUNT = _l('View count')
+RATING = _l('Rating')
+
+# Time filters
+ANY = _l('Any')
+LAST_HOUR = _l('Last hour')
+TODAY = _l('Today')
+THIS_WEEK = _l('This week')
+THIS_MONTH = _l('This month')
+THIS_YEAR = _l('This year')
+
+# Content types
+TYPE = _l('Type')
+VIDEO = _l('Video')
+CHANNEL = _l('Channel')
+PLAYLIST = _l('Playlist')
+MOVIE = _l('Movie')
+SHOW = _l('Show')
+
+# Duration filters
+DURATION = _l('Duration')
+SHORT_DURATION = _l('Short (< 4 minutes)')
+LONG_DURATION = _l('Long (> 20 minutes)')
+
+# Actions
+SEARCH = _l('Search')
+DOWNLOAD = _l('Download')
+SUBSCRIBE = _l('Subscribe')
+UNSUBSCRIBE = _l('Unsubscribe')
+IMPORT = _l('Import')
+EXPORT = _l('Export')
+SAVE = _l('Save')
+CHECK = _l('Check')
+MUTE = _l('Mute')
+UNMUTE = _l('Unmute')
+
+# Common UI elements
+OPTIONS = _l('Options')
+SETTINGS = _l('Settings')
+ERROR = _l('Error')
+LOADING = _l('loading...')