youtube-legend-cli 0.4.0

Non-interactive Rust CLI that downloads YouTube subtitles through third-party providers, using a native Unix stdin/stdout interface.
//! Hebrew catalogue. Compiled only with the `i18n-rtl` feature.
//!
//! Note that the interface locale is the modern `he` tag. The legacy
//! ISO 639-1 code `iw` that `YouTube` still uses for subtitle tracks is
//! handled separately in [`crate::cli::LanguageArg`]; it never reaches
//! this catalogue.

use super::Message;

/// Render `msg` in Hebrew.
pub(super) fn text(msg: Message) -> &'static str {
    match msg {
        Message::ErrInvalidUsage => "שימוש לא תקין",
        Message::ErrInvalidInput => "קלט לא תקין",
        Message::ErrStdinEmpty => "הקלט הסטנדרטי ריק",
        Message::ErrInvalidUrl => "כתובת לא תקינה",
        Message::ErrNoSubtitle => "אין כתוביות",
        Message::ErrProviderUnavailable => "הספקים אינם זמינים",
        Message::ErrRateLimited => "הגבלת קצב מצד הספק (HTTP 429)",
        Message::ErrTimeout => "תם הזמן",
        Message::ErrIo => "שגיאת קלט/פלט",
        Message::ErrHttp => "שגיאת HTTP",
        Message::ErrUrlParse => "שגיאה בניתוח הכתובת",
        Message::ErrSerde => "שגיאת סריאליזציה",
        Message::ErrCrypto => "שגיאת הצפנה",
        Message::ErrSubtitleTooLarge => "הכתוביות חורגות מהמגבלה",
        Message::ErrInternal => "שגיאה פנימית",
        Message::ErrPlayerResponseMissing => "תגובת הנגן חסרה",
        Message::ErrPlayerResponseTooLarge => "תגובת הנגן גדולה מדי",
        Message::ErrCaptionTrackNotFound => "רצועת הכתוביות לא נמצאה",
        Message::ErrCaptionsAsrOnly => "רק כתוביות שנוצרו אוטומטית, ואף אחת מהן אינה ניתנת להבאה",
        Message::ErrPlayabilityStatusDenied => "ההשמעה נדחתה בשל מצב הסרטון",
        Message::ErrLanguageParse => "שגיאה בניתוח השפה",
        Message::ErrSignatureDecipherFailed => "פענוח החתימה נכשל",
        Message::ErrTimedtextUpstream => "שגיאת שירות timedtext",
        Message::ErrProviderProtocol => "שגיאת פרוטוקול של הספק",
        Message::ErrBrowserNotFound => "‏Chromium/Chrome לא נמצא",
        Message::ErrConfig => "שגיאת תצורה",
        Message::ErrCaptchaChallengeFrom => "אתגר קפצ'ה מאת",
        Message::ErrCaptchaHumanRequired => "נדרשת פעולה אנושית",
        Message::UnitBytes => "בייטים",
        Message::WordExceeds => "חורג מ־",
        Message::WordAvailable => "זמינות",

        Message::ReasonPrivateOrAgeRestricted => "הסרטון פרטי או מוגבל בגיל (HTTP 403)",
        Message::ReasonNotFound => "הסרטון לא נמצא (HTTP 404)",
        Message::ReasonGone => "הסרטון הוסר בידי היוצר (HTTP 410)",
        Message::ReasonUnavailableForLegalReasons => "הסרטון אינו זמין מסיבות משפטיות (HTTP 451)",
        Message::ReasonNotPublished => "לא פורסמו כתוביות לסרטון הזה",
        Message::ReasonLanguageUnavailable => "השפה המבוקשת אינה זמינה",

        Message::UsageBatchWithUrl => "‏--batch לא ניתן לשילוב עם כתובת מיקומית",
        Message::UsageNoUrl => {
            "לא סופקה כתובת; העבירו כתובת מיקומית, השתמשו בצינור בקלט הסטנדרטי או השתמשו ב־--batch"
        }
        Message::UsageUrlTooLong => "הכתובת חורגת מ־2048 תווים",
        Message::UsageQuietWithVerbose => "‏--quiet לא ניתן לשילוב עם --verbose",
        Message::UsageTimeoutZero => "‏--timeout חייב להיות גדול מאפס",
        Message::UsageCacheTtlZero => "‏--cache-ttl חייב להיות גדול מאפס",
        Message::UsageDryRunWithBatch => "‏--dry-run לא ניתן לשילוב עם --batch",

        Message::ConfigCouldNotRead => "לא ניתן לקרוא את קובץ התצורה",
        Message::ConfigNotValidToml => "אינו TOML תקין",
        Message::ConfigUnknownKey => "תצורה: מפתח לא מוכר",
        Message::ConfigKeyPrefix => "תצורה: המפתח",
        Message::ConfigWrongType => "מסוג שגוי, הסוג הצפוי",
        Message::ConfigInvalidFormat => "תצורה: ערך format לא תקין (txt, srt או vtt)",
        Message::ConfigInvalidProvider => {
            "תצורה: ערך provider לא תקין (הריצו --help לערכים הקבילים)"
        }
        Message::ConfigInvalidLogLevel => {
            "תצורה: ערך log_level לא תקין (error, warn, info, debug או trace)"
        }
        Message::ConfigInvalidLogFormat => "תצורה: ערך log_format לא תקין (text או json)",
        Message::ConfigInvalidColor => "תצורה: ערך color לא תקין (auto, always או never)",
        Message::ConfigInvalidUiLang => "תצורה: ערך ui_lang לא תקין עבור בנייה זו",

        Message::LangInvalidTag => "אינו תג שפה BCP 47 תקין",
        Message::LangUnsupportedUi => "שפת הממשק אינה נכללת בבנייה זו",

        Message::ErrTracingInit => "אתחול המעקב נכשל",
        Message::ConfigDirUnavailable => "לא ניתן לקבוע את תיקיית התצורה של הפלטפורמה",
        Message::ConfigKeyNotSet => "אינו מוגדר; נעשה שימוש בברירת המחדל המהודרת",
        Message::ConfigKeyIsSecret => {
            "הוא סוד; העבירו --from-stdin, מכיוון ש-argv גלוי בטבלת התהליכים לכל משתמש במארח"
        }
        Message::ConfigSetNeedsValue => "דורש ערך, או --from-stdin",
        Message::ConfigKeySetNeedsYes => {
            "מוגדר כעת; העבירו את --yes הגלובלי לפני פקודת המשנה `config` כדי להסירו"
        }
        Message::ConfigUnknownKeyHint => "הריצו `config list-keys` כדי לראות את המרשם",
        Message::ConfigExpectsInteger => "מצפה למספר שלם",
        Message::ConfigExpectsBoolean => "מצפה לערך בוליאני, אך התקבל",
    }
}