UNPKG

i18ntk

Version:

i18n Tool Kit - Zero-dependency internationalization toolkit for setup, scanning, analysis, validation, auto translation, fixing, reporting, and runtime translation loading.

872 lines 172 kB
{ "meta": { "version": "4.7.0", "updated": "2026-07-07", "lang": "he" }, "common": { "welcome": "קַבָּלַת פָּנִים", "hello": "שלום", "goodbye": "להתראות", "yes": "כֵּן", "no": "לֹא", "save": "לְהַצִיל", "cancel": "לְבַטֵל", "delete": "לִמְחוֹק", "edit": "לַעֲרוֹך", "loading": "טְעִינָה...", "offlineTitle": "אתה במצב לא מקוון", "offlineMessage": "אנא בדוק את חיבור האינטרנט שלך", "tryReconnect": "נסה להתחבר מחדש", "logout": "התנתק", "login": "כְּנִיסָה לַמַעֲרֶכֶת", "amount": "סְכוּם", "success": "הַצלָחָה", "error": "שְׁגִיאָה", "warning": "אַזהָרָה", "info": "מידע:", "debug": "לְנַפּוֹת", "progress": "הִתקַדְמוּת:", "remaining": "נוֹתָר:", "total": "סַך הַכֹּל:", "completed": "7. הושלם בהצלחה!", "missing": "חָסֵר", "partial": "חֶלקִי", "sameAsSource": "זהה למקור:", "formatMismatch": "אי התאמה של פורמט:", "typeMismatch": "אי התאמה של סוג:", "structureMismatch": "אי התאמה של מבנה:", "invalidOption": "אפשרות לא חוקית", "separator": "==================================================", "initializationFailed": "❌ האתחול נכשל: {error}", "stackTrace": "עקבות מחסנית: {stack}", "pressEnterToContinue": "הקש Enter כדי להמשיך...", "pressEnterToReturn": "הקש Enter כדי לחזור לתפריט הראשי...", "stepCompleted": "שלב '{stepName}' הושלם.", "stepFailed": "שלב '{stepName}' נכשל.", "runningStep": "שלב ריצה: {stepName}", "command": "פְּקוּדָה: {command}", "startingWorkflow": "מתחיל זרימת עבודה...", "workflowCompleted": "זרימת העבודה הושלמה.", "checkReports": "בדוק דוחות לפרטים.", "errorExecutingCommand": "שגיאה בביצוע הפקודה: {error}", "genericError": "❌ שגיאה: {error}", "errors": { "errors": "שגיאות:", "genericError": "❌ שגיאה: {error}", "initializationFailed": "❌ האתחול נכשל: {error}", "initializationCancelled": "❌ אתחול בוטל על ידי המשתמש.", "translationKeyNotFound": "מפתח תרגום לא נמצא: {key}", "sourceDirectoryNotFound": "ספריית המקור לא נמצאה: {directory}", "configLoadingFailed": "טעינת התצורה נכשלה", "invalidSourceDirectory": "ספריית מקור לא חוקית: {directory}", "securityViolation": "זוהתה הפרת אבטחה", "authenticationFailed": "האימות נכשל", "sourceEqualsI18nWarn": "⚠️ sourceDir שווה ל-i18nDir ({sourceDir}). נופל בחזרה ל {fallback} לסריקת מקור." }, "errorGeneratingStatusSummary": "שגיאה ביצירת סיכום מצב: {error}", "errorRunningDebugTool": "שגיאה בהפעלת כלי ניפוי באגים '{displayName}': {error}", "errorReadingDebugLogs": "שגיאה בקריאת יומני ניפוי באגים: {error}", "errorAnalyzingLogFile": "שגיאה בניתוח קובץ היומן: {error}", "errorAnalyzingTranslationKeys": "שגיאה בניתוח מפתחות תרגום: {error}", "errorAnalyzingTranslationCompleteness": "שגיאה בניתוח שלמות התרגום: {error}", "analyzingTranslationCompleteness": "מנתח את שלמות התרגום בכל השפות...", "i18nDirectoryNotFound": "⚠️ ספריית i18n לא נמצאה: {i18nDir}", "translationCompletenessAnalysisFailed": "⚠️ ניתוח שלמות התרגום נכשל: {error}", "failedToAnalyzeLanguage": "❌ ניתוח השפה נכשל {language}: {error}", "errorReadingI18nDirectory": "❌ שגיאה בקריאת ספריית i18n:", "languageCompletenessTitle": "📈 שלמות התרגום לפי שפה", "errorAnalyzingTranslationFormat": "שגיאה בניתוח פורמט התרגום: {error}", "errorAnalyzingTranslationType": "שגיאה בניתוח סוג התרגום: {error}", "errorAnalyzingTranslationStructure": "שגיאה בניתוח מבנה התרגום: {error}", "errorAnalyzingTranslationFormatMismatch": "שגיאה בניתוח אי התאמה של פורמט התרגום: {error}", "errorAnalyzingTranslationTypeMismatch": "שגיאה בניתוח אי התאמה של סוג התרגום: {error}", "errorAnalyzingTranslationStructureMismatch": "שגיאה בניתוח אי התאמה של מבנה התרגום: {error}", "errorAnalyzingTranslationSameAsSource": "שגיאה בניתוח התרגום זהה למקור: {error}", "title": "סטָטוּס", "nextStep1": "1. בדוק את ניתוח השימוש:", "nextStep2": "2. אמת תרגומים:", "nextStep3": "3. נתח את השלמות:", "nextStep4": "4. השלם תרגומים חסרים:", "nextStep5": "5. הפק דוח סיכום:", "nextStep6": "6. סקור וסיים תרגומים:", "generating": "יוצר דוח סיכום...", "review": "בודק תרגומים...", "finalizing": "מסיים תרגומים...", "finalized": "הסתיים בהצלחה!", "warnings": "אזהרות:", "completedKeys": "מפתחות שהושלמו:", "missingKeys": "מפתחות חסרים:", "partialKeys": "מפתחות חלקיים:", "home": "בַּיִת", "settings": "הגדרות", "startingSettings": "🎛️ התחלת הגדרות CLI...", "confirm": "לְאַשֵׁר", "errorExiting": "שגיאה בעת יציאה." }, "errors": { "invalidOption": "❌ אפשרות לא חוקית: {option}. אנא נסה שוב.", "readlineClosed": "זרם הקלט סגור; פועל במצב לא אינטראקטיבי.", "noPackageJson": "לא נמצא package.json. לא ניתן לזהות אוטומטית את המסגרת של i18n.", "noI18nDir": "לא נמצאה ספריית i18n בשורש הפרויקט.", "noI18nConfig": "לא נמצא קובץ תצורה של i18n בשורש הפרויקט.", "errorReadingDebugLogs": "שגיאה בקריאת יומני ניפוי באגים: {error}" }, "scanner": { "help_message": "I18n Text Scanner שימוש: node i18ntk-scanner.js [אפשרויות] אפשרויות: --source-dir <dir> ספריית מקור לסריקה (ברירת מחדל: ./src) --פלט <file> קובץ פלט עבור תוצאות סריקה (ברירת מחדל: ./i18ntk-scanner-report.json) --framework <name> מסגרת למיקוד (תגובה, נוף, זוויתי, וניל) --דפוסים <patterns> דפוסי ביטוי רגולרי מותאמים אישית (מופרדים בפסיק) --include-tests כלול קובצי בדיקה בסריקה --exclude-dirs <dirs> Directories to exclude (comma-separated) --help Show this help Examples: node i18ntk-scanner.js --source-dir=./src --framework=react node i18ntk-scanner.js --patterns 'console.log\\((.*?)\\)' --include-tests node i18ntk-scanner.js --output=./scan-results.json", "help_options": { "source_dir": "ספריית מקור לסריקה לאיתור בעיות i18n", "output_dir": "ספרייה לדוחות סריקה ותוצאות", "framework": "מסגרת יעד (תגובה, מבט, זוויתי, וניל)", "patterns": "דפוסי ביטוי רגולרי מותאמים אישית לזיהוי טקסט", "exclude": "דפוסי קבצים שלא ייכללו בסריקה", "output_report": "הפק דוח סריקה מפורט", "min_length": "אורך טקסט מינימלי שיש לקחת בחשבון לתרגום", "max_length": "אורך טקסט מרבי שיש לקחת בחשבון לתרגום", "include_tests": "כלול קבצי בדיקה בתהליך הסריקה" }, "starting": "🔍 הפעלת סורק טקסט למסגרת: {framework}", "sourceDirectory": "📁 סריקת ספרייה: {sourceDir}", "frameworkDetected": "🎯 מסגרת שזוהתה: {framework}", "scanningFiles": "📊 סריקה {fileCount} קבצים...", "foundTexts": "📝 נמצא {textCount} טקסטים הדורשים תרגום", "generatingReport": "📊 יצירת דוח מפורט...", "reportSaved": "💾 דוח הסריקה נשמר ב: {reportPath}", "noTextsFound": "✅ לא נמצאו טקסטים באנגלית מקודדים", "scanComplete": "🎉 הסריקה הושלמה בהצלחה!", "analysisTitle": "🔍 ניתוח סריקת תרגום", "fileSummary": "📄 {file}: {count} נמצאו טקסטים", "textLocation": "📍 קו {line}: {text}", "foundText": "נמצא {count} מופעי טקסט מקודדים פוטנציאליים", "context": "📝 הקשר: {context}", "severity": "⚠️ חומרה: {severity}", "recommendation": "💡 המלצה: {recommendation}", "welcome": { "title": "🎯 ברוכים הבאים לסורק הטקסט!", "description": "כלי זה סורק את קוד המקור שלך לאיתור טקסט באנגלית מקודד קשה שעשוי לדרוש תרגום." }, "frameworkPrompt": { "title": "🎯 בחר מסגרת", "available": "מסגרות זמינות: react, vue, angular, vanilla", "description": "הזן את סוג המסגרת (או הקש Enter לזיהוי אוטומטי):", "input": "מִסגֶרֶת:" }, "directoryPrompt": { "title": "📁 בחר ספריית מקור", "current": "ספרייה נוכחית: {dir}", "description": "הזן את הספרייה לסריקה (או הקש Enter עבור הנוכחי):", "input": "מַדרִיך:" }, "options": { "includeTests": "האם לכלול קבצי בדיקה?", "excludeDirs": "ספריות להחרגה (מופרדות בפסיקים):", "customPatterns": "דפוסים מותאמים אישית לסריקה עבורם (רגקס):" }, "reportGenerated": "דוח סריקה שנוצר: {path}" }, "fixer": { "help_message": "I18n Translation Fixer Usage: node i18ntk-fixer.js [options] Options: --source-dir <dir> Source directory to scan (default: ./locales) --languages <langs> Comma separated list of languages to fix --markers <markers> סמנים מופרדים בפסיקים שיש להתייחס אליהם כבלתי מתורגמים --ללא גיבוי דלג על יצירת גיבוי אוטומטית --עזרה הצג עזרה זו דוגמאות: node i18ntk-fixer.js --languages ​​de,fr node i18ntk-fixer.js --source-dir=./locales --markers NOT_TRANSLATED node i18ntk-fixer.jsk ---no-fixer.js.", "starting": "🚀 התחלת תיקון תרגום לשפות: {languages}", "sourceDirectory": "📁 ספריית מקורות: {sourceDir}", "sourceLanguage": "🔤 שפת מקור: {sourceLanguage}", "markers": "🏷️ סמנים לתיקון: {markers}", "scanningLanguage": "📊 סריקה {language}...", "noLanguages": "❌ לא צוינו שפות לתיקון.", "allComplete": "🎉 כל התרגומים כבר הושלמו!", "fullReportSaved": "📊 הדוח המלא נשמר ב: {reportPath}", "reviewReport": "אנא עיין בדוח לפני שתמשיך.", "backupCreated": "💾 הגיבוי נוצר בהצלחה.", "applyingFixes": "🔄 יישום תיקונים...", "fixingComplete": "✅ תיקון התרגום הושלם!", "operationCancelled": "❌ הפעולה בוטלה על ידי המשתמש.", "analysisTitle": "🔍 ניתוח תיקון תרגום", "analysisSeparator": "==================================================", "totalIssues": "סה\"כ בעיות שנמצאו: {totalIssues}", "missingTranslations": "תרגומים חסרים: {missing}", "placeholderTranslations": "תרגומי מציין מקום: {placeholder}", "noIssues": "✅ לא נמצאו בעיות. כל התרגומים הושלמו.", "detailedIssues": "📋 DETAILED ISSUES:", "detailedSeparator": "--------------------------------------------------", "filePath": "📄 {file} → {path}", "missingKey": "❌ חסר: {source} → {new}", "placeholderKey": "⚠️ מחזיק מקום: \"{target}\" → \"{new}\"", "moreIssues": "... ו {count} בעיות נוספות. בדוק את קובץ הדוח לקבלת פרטים מלאים.", "confirmationTitle": "🤔 האם אתה רוצה להמשיך עם התיקונים האלה?", "confirmationOptions": "אפשרויות:", "optionYes": "y - כן, החל את כל התיקונים", "optionNo": "n - לא, בטל את הפעולה", "optionShow": "s - הצג בעיות מפורטות", "choicePrompt": "בחירתך (שנה/נ):", "nonInteractiveMode": "⚡ זוהה מצב לא אינטראקטיבי - החלת תיקונים אוטומטית...", "reportGenerated": "📊 דוח תיקון שנוצר: {path}", "summary": "תקציר המתקן:", "welcome": { "title": "🎯 ברוכים הבאים לתיקון התרגום!", "description": "כלי זה יעזור לך לתקן תרגומים מקולקלים ומצייני מיקום בקבצי האזור שלך." }, "markerPrompt": { "title": "🏷️ הגדר סמני מיקום", "description": "הזן את הסמנים שמציינים טקסט לא תורגם (מופרד בפסיק):", "currentDefaults": "סמני ברירת מחדל: {markers}", "input": "סמנים (או הקש Enter לברירות מחדל):" }, "languagePrompt": { "title": "🌍 בחר שפות לתיקון", "available": "שפות זמינות: {languages}", "description": "הזן שפות לתיקון (מופרדות בפסיק) או הקש Enter עבור כולם:", "input": "שפות:", "noLanguages": "לא נמצאו שפות לתיקון." }, "directoryPrompt": { "title": "📁 בחר ספרייה", "current": "ספרייה נוכחית: {dir}", "description": "הזן את הספרייה המכילה את קובצי המקום שלך (או הקש Enter עבור הנוכחי):", "input": "מַדרִיך:" }, "backupLocation": "מיקום גיבוי: {dir}", "completed": "התיקון הושלם.", "creatingBackup": "יצירת גיבוי ב {dir}...", "dryRunMode": "מצב ריצה יבשה: {mode}", "error": "התיקון נכשל: {error}", "fixing": "קְבִיעָה {language}...", "foundLanguages": "נמצא {count} שפות: {languages}", "languageFixed": "{language}: קבוע {fixed} מפתח(ים), דילג {skipped}.", "running": "מפעיל את מתקן התרגום...", "totalFixed": "סה\"כ קבוע: {count}" }, "autorun": { "stepAnalyzeTranslations": "ניתוח תרגומים", "stepCompletedWithIcon": "✅ הושלם: {stepName}", "stepValidateTranslations": "אימות תרגומים", "stepRunning": "▶️ שלב {stepNumber}/{totalSteps}: {stepName}", "separator": "==================================================", "stepFailed": "❌ נכשל: {stepName}", "errorLabel": "שְׁגִיאָה", "autoRunScriptTitle": "🧪 זרימת עבודה אוטומטית", "usageTitle": "נוֹהָג", "runAllSteps": "הפעלה: node i18ntk-autorun.js", "configureSettingsFirst": "Config: i18ntk-config.json או דגלי CLI", "runSpecificSteps": "השתמש ב--steps=1,3 או ב--list כדי להציג את השלבים", "showHelp": "--עזרה למידע נוסף", "examplesTitle": "דוגמאות", "configExample": "node i18ntk-autorun.js --ui-language=zh", "stepsExample1": "node i18ntk-autorun.js --steps=analyze,validate", "stepsExample2": "node i18ntk-autorun.js --list", "customSettingsConfiguration": "הגדרות הפעלה אוטומטית מותאמות אישית", "availableSteps": "שלבים זמינים", "startingAutoRunWorkflow": "🚀 התחלת זרימת עבודה של הפעלה אוטומטית...", "workflowIncludesSteps": "זרימת העבודה כוללת {count} שלבים:", "missingRequiredFile": "חסר קובץ נדרש: {file}", "workflowStopped": "זרימת העבודה נעצרה עקב כשל.", "workflowCompleted": "🎉 תהליך העבודה הושלם!", "successfulSteps": "צעדים מוצלחים: {count}", "failedSteps": "שלבים שנכשלו: {count}", "stepInitializeProject": "אתחול הפרויקט", "stepCheckUsage": "בדוק שימוש במפתח", "stepGenerateSummary": "הפקת דוח סיכום", "runInitializationFirst": "אנא הפעל את האתחול תחילה.", "initializationCheckPassed": "בדיקת האתחול עברה.", "runningStep": "שלב ריצה: {stepName}", "commandLabel": "פְּקוּדָה: {command}", "stepCompletedWithTime": "שלב '{stepName}' הושלם ב {duration}גְבֶרֶת.", "stepCompleted": "שלב '{stepName}' הושלם.", "stepFailedWithError": "שלב '{stepName}' נכשל עם שגיאה: {error}", "requiredStepFailed": "השלב הנדרש נכשל. עצירת זרימת העבודה.", "optionalStepFailed": "שלב אופציונלי נכשל. המשך זרימת עבודה.", "stepRequired": "(דָרוּשׁ)", "stepOptional": "(אופציונלי)", "startingExecution": "מתחיל בביצוע...", "pressEnterToContinue": "הקש Enter כדי להמשיך...", "runningSelectedSteps": "מפעיל שלבים נבחרים...", "invalidStepNumber": "מספר צעד לא חוקי: {stepNum}", "executionReport": "דוח ביצוע:", "requiredFailedSteps": "השלבים הנדרשים נכשלו: {count}", "stepDetails": "פרטי שלב:", "reportSavedTo": "הדוח נשמר ב: {path}", "overallStatusSuccess": "SUCCESS", "overallStatusFailed": "FAILED", "overallStatus": "סטטוס כללי: {status}", "pressEnterForDefaults": "הקש Enter כדי להשתמש בהגדרות ברירת המחדל עבור כל הנחיה.", "sourceDirPrompt": "הזן את ספריית המקור (ברירת מחדל: {default}):", "sourceLangPrompt": "הזן שפת מקור (ברירת מחדל: {default}):", "targetLangsPrompt": "הזן שפות יעד (מופרדות בפסיקים, ברירת מחדל: {default}):", "translationMarkerPrompt": "הזן סמן תרגום (ברירת מחדל: {default}):", "outputDirPrompt": "היכנס לספריית פלט עבור דוחות (ברירת מחדל: {default}):", "settingsUpdatedSuccessfully": "ההגדרות עודכנו בהצלחה!", "errorConfiguringSettings": "שגיאה בהגדרת הגדרות: {error}", "configurationComplete": "התצורה הושלמה.", "runAutoRunCommand": "כעת תוכל להפעיל את פקודת ההפעלה האוטומטית.", "configurationFailed": "התצורה נכשלה: {error}", "noValidStepNumbers": "לא סופקו מספרי צעדים חוקיים.", "autoRunFailed": "ההפעלה האוטומטית נכשלה: {error}", "stepCompleteTranslations": "תרגומים מלאים", "stepAnalyzeSizing": "ניתוח גודל", "stepCompletedIcon": "✅", "stepRunningWithNumber": "[{stepNumber}/{totalSteps}] שלב '{stepName}'רץ...", "stepFailedIcon": "❌", "translationLoadWarning": "אזהרה: לא ניתן היה לטעון {lang} תרגומים", "configReadError": "שגיאה בקריאה {file}" }, "analyze": { "help_message": "I18n Translation Analyzer שימוש: node i18ntk-analyze.js [אפשרויות] אפשרויות: --source-dir <dir> ספריית מקור לסריקה (ברירת מחדל: ./src) --i18n-dir <dir> ספריית I18n (ברירת מחדל: ./src/locales) --output-report צור דוח מפורט --output-dir <dir> ספריית פלט עבור דוחות (ברירת מחדל: ./reports) --help הצג עזרה זו דוגמאות: node i18ntk-analyze.js --output-report node i18ntk-analyze.js --source-dir=./app --i18n-dir=./locales node i18ntk-analyze.js --isreport node i18ntk-analyze.", "source_directory": "📁 ספריית מקורות: {sourceDir}", "i18n_directory": "🌐 ספריית I18n: {i18nDir}", "loading_translation_files": "📋 טוען קבצי תרגום...", "sourceDirectoryLabel": "📁 ספריית מקורות: {sourceDir}", "sourceLanguageLabel": "🌍 שפת מקור: {sourceLanguage}", "strictModeLabel": "⚙️ מצב קפדני: {mode}", "found_translation_files_count": "✅ נמצא {count} קבצי תרגום", "analyzing_translations": "🔍 מנתח תרגומים...", "analysis_completed_successfully": "🎉 ניתוח הושלם בהצלחה!", "analysis_results": "📊 ANALYSIS RESULTS", "language_analysis_stats": "{language}: {translatedKeys}/{totalKeys} ({percentage}% מתורגמים)", "sample_missing_keys": "מפתחות חסרים לדוגמה:", "missing_key": "- {key}", "and_more_missing": "...ו {count} יוֹתֵר.", "sample_unused_keys": "מפתחות לדוגמא שאינם בשימוש:", "unused_key": "- {key}", "and_more_unused": "...ו {count} יוֹתֵר.", "recommendations": "📋 המלצות", "add_missing_translations": "💡 הוסף תרגומים חסרים כדי לשפר את הכיסוי.", "remove_unused_translations": "💡 הסר תרגומים שאינם בשימוש כדי לשמור על הפרויקט שלך נקי.", "next_steps": "📋 NEXT STEPS", "review_analysis_results": "1. סקור את תוצאות הניתוח במסוף או בדוח שנוצר.", "run_with_output_report": "2. הפעל עם --output-report לדוח מפורט.", "add_or_remove_translations": "3. הוסף תרגומים חסרים או הסר תרגומים שאינם בשימוש.", "rerun_analysis": "4. הפעל מחדש את הניתוח כדי לאמת שיפורים.", "analysis_summary": "📊 ANALYSIS SUMMARY", "source_files_scanned": "קבצי מקור שנסרקו: {fileCount}", "translation_files_checked": "קבצי תרגום נבדקו: {translationFileCount}", "total_keys": "סה\"כ מפתחות: {totalKeys}", "translated_keys": "מפתחות מתורגמים: {translatedKeys}", "missing_keys": "מפתחות חסרים: {missingKeys}", "unused_keys": "מפתחות לא בשימוש: {unusedKeys}", "translation_coverage": "כיסוי תרגום: {coverage}%", "analysis_passed_for_language": "✅ ניתוח עבר עבור {language}", "analysis_failed_for_language": "❌ ניתוח נכשל עבור {language} ({missingKeys} חָסֵר, {unusedKeys} לא בשימוש)", "starting": "🔍 מתחיל ניתוח תרגום...", "foundLanguages": "📋 נמצא {count} שפות לנתח: {languages}", "analyzing": "🔄 מנתח {language}...", "reportTitle": "📊 דוח ניתוח תרגום", "generated": "נוצר: {timestamp}", "status": "סטָטוּס: {translated}/{total} מפתחות ({percentage}% מתורגמים)", "filesAnalyzed": "קבצים מנותחים: {analyzed}/{total}", "keysNeedingTranslation": "מפתחות הזקוקים לתרגום: {count}", "fileBreakdown": "📋 פירוט קבצים", "error": "שְׁגִיאָה", "completed": "✅ ניתוח הושלם עבור {language}", "progress": "📊 התקדמות כללית: {translated}/{total} שפות מעובדות", "reportSaved": "הדוח נשמר: {reportPath}", "summary": "📊 ANALYSIS SUMMARY", "finished": "✅ ניתוח הושלם בהצלחה!", "statusFileMissing": "❌ חסר קובץ תרגום", "sourceKeys": "📊 מקשי מקור: {count}", "translation": "📊 תרגום: {translated}/{total} ({percentage}%)", "structure": "🗂️ מבנה: {status}", "consistent": "עִקבִי", "inconsistent": "לא עקבי", "missingKeys": "מפתחות חסרים: {count}", "extraKeys": "מפתחות נוספים: {count}", "issues": "⚠️ בעיות שנמצאו: {count}", "issueType": { "not_translated": "לא מתורגם: {count}", "empty_value": "ערכים ריקים: {count}", "partial_translation": "תרגומים חלקיים: {count}", "format_mismatch": "אי התאמה בפורמט: {count}", "type_mismatch": "אי התאמה בין סוגים: {count}", "structure_mismatch": "אי התאמה של מבנה: {count}", "same_as_source": "זהה למקור: {count}" }, "keysToTranslate": "📋 מפתחות לתרגום", "key": "מַפְתֵחַ", "english": "אַנגְלִית", "needsTranslation": "צריך תרגום", "andMoreKeys": "...ו {count} מפתחות נוספים.", "noLanguages": "⚠️ לא נמצאו שפות יעד.", "languageStats": "{language}: {percentage}% הושלמו ({translated}/{total} מפתחות)", "invalidReportFilePath": "נתיב קובץ דוח לא חוקי", "failedToWriteReportFile": "כתיבת קובץ הדוח נכשלה בצורה מאובטחת" }, "complete": { "configLoadedSuccessfully": "התצורה נטענה בהצלחה", "configLoadingFailed": "טעינת התצורה נכשלה", "sourceLanguageNotFound": "ספריית שפת המקור לא נמצאה: {sourceLanguage}", "couldNotParseTarget": "לא ניתן לנתח קובץ יעד: {file}", "couldNotParseSource": "לא ניתן לנתח את קובץ המקור: {file}", "reportGenerated": "דוח שנוצר: {path}", "generateReportPrompt": "האם תרצה להפיק דוח?", "title": "🌍 השלמת תרגום I18NTK", "separator": "============================================================", "sourceDir": "📁 ספריית מקורות: {sourceDir}", "sourceLanguage": "🌐 שפת מקור: {sourceLanguage}", "dryRunMode": "🧪 מצב ריצה יבשה - לא יבוצעו שינויים", "languages": "🌍 שפות זמינות: {languages}", "addingMissingKeys": "➕ מוסיף מפתחות חסרים לקבצי תרגום...", "processing": "🔄 עיבוד {language}...", "addedKeys": "✅ נוסף {count} מפתחות חסרים", "noChangesNeeded": "✅ אין צורך בשינויים {language}", "summaryTitle": "📊 סיכום השלמות", "totalChanges": "📝 סך השינויים: {totalChanges}", "languagesProcessed": "🌍 שפות מעובדות: {languagesProcessed}", "missingKeysAdded": "➕ נוספו מפתחות חסרים: {missingKeysAdded}", "nextStepsTitle": "📋 NEXT STEPS", "nextStep1": "1. הפעל ניתוח שימוש:", "nextStep2": "node i18ntk-usage.js --output-report", "nextStep3": "2. אמת תרגומים:", "nextStep4": "node i18ntk-validate.js", "nextStep5": "3. נתח דפוסים:", "nextStep6": "node i18ntk-analyze.js", "allKeysAvailable": "🎉 כל מפתחות התרגום זמינים כעת!", "runWithoutDryRun": "💡 הפעל ללא --- יבש-ריצה כדי להחיל שינויים", "deletingOldReport": "🗑️ מוחק דוח ישן...", "generatingFreshAnalysis": "📊 יצירת ניתוח שימוש טרי...", "couldNotGenerate": "❌ לא ניתן היה ליצור ניתוח שימוש", "reportNotFound": "📋 דוח שימוש לא נמצא. שימוש במפתחות נפוצים...", "foundMissingKeys": "📋 נמצא {count} מפתחות חסרים מניתוח השימוש", "couldNotParse": "❌ לא ניתן לנתח את דוח השימוש. שימוש במפתחות נפוצים...", "errorDuringCompletion": "❌ שגיאה במהלך ההשלמה: {error}", "fatalError": "❌ שגיאה חמורה: {error}", "configurationValidationFailed": "אימות התצורה נכשל: חסרים שדות חובה" }, "sizing": { "separator": "================================================================================", "lineSeparator": "--------------------------------------------------------------------------------", "analysisStats": "{stats}", "sourceDirectoryLabel": "📁 ספריית מקורות: {sourceDir}", "sourceLanguageLabel": "🌍 שפת מקור: {sourceLanguage}", "strictModeLabel": "⚙️ מצב קפדני: {mode}", "invalidSourceDirectoryError": "נתיב ספריית מקור לא חוקי: {sourceDir}", "sourceDirectoryNotFoundError": "ספריית המקור לא נמצאה: {sourceDir}", "invalidOutputDirectoryError": "נתיב ספריית פלט לא חוקי: {outputDir}", "invalidReportFileError": "נתיב קובץ דוח לא חוקי", "problematic_keys": "מפתחות בעייתיים: {problematicKeys}", "problematicKeysLabel": "מפתחות בעייתיים: {problematicKeys}", "long_translations": "תרגומים ארוכים: {longTranslations}", "failedToSaveReportError": "שמירת הדוח נכשלה בצורה מאובטחת", "invalidCsvFileError": "נתיב קובץ CSV לא חוקי", "failedToSaveCsvError": "שמירת דוח CSV נכשלה בצורה מאובטחת", "fatalError": "❌ ניתוח גודל נכשל: {error}", "starting_i18n_sizing_analysis": "מתחיל ניתוח גודל i18n...", "source_directory": "ספריית מקורות: {sourceDir}", "found_languages": "שפות שנמצאו: {languages}", "analyzing_file_sizes": "מנתח גדלי קבצים...", "analyzing_translation_content": "מנתח תוכן תרגום...", "generating_size_comparisons": "יוצר השוואות גודל...", "no_languages_found_for_comparison": "לא נמצאו שפות להשוואה", "sizing_analysis_results": "תוצאות ניתוח גודל I18n", "file_sizes_title": "גדלי קבצים", "file_sizes_header": "גודל שפה (KB) שורות תווים", "file_size_row": "{lang} {sizeKB} {lines} {characters}", "language_statistics_title": "סטטיסטיקת שפה", "language_stats_header": "מקשי שפה תווים אורך ממוצע אורך מרבי ריק ארוך", "language_stats_row": "{lang} {totalKeys} {totalCharacters} {averageKeyLength} {maxKeyLength} {emptyKeys} {longKeys}", "size_variations_title": "וריאציות גודל", "size_variations_header": "שפה Char Diff % Diff בעייתי", "size_variation_row": "{lang} {characterDifference} {percentageDifference}% {problematic}", "problematic_yes": "כֵּן", "problematic_no": "לֹא", "recommendations_title": "המלצות", "recommendation_item": "{index}. {recommendation}", "problematic_key_detail": "{index}. מפתח:'{key}' - וריאציות: {variations}", "generating_detailed_report": "יוצר דוח מפורט...", "keysHaveSignificantSizeVariations": "למפתחות יש שינויים משמעותיים בגודל", "longTranslationsDetected": "${lang} יש ${data.longKeys} תרגומים שאורכם יותר מ-100 תווים - שקול לפרק אותם", "longer": "ארוך יותר", "shorter": "קצר יותר", "review_translations": "שקול לסקור {lang} תרגומים - הם {percentageDifference}% {comparison} מאשר קו הבסיס", "report_saved_to": "הדוח נשמר ב: {reportPath}", "considerReviewingTranslations": "שקול לסקור ${lang} תרגומים - הם ארוכים ב-${data.percentageDifference}% מהקו הבסיסי", "csv_report_saved_to": "דוח CSV נשמר ב: {csvPath}", "human_report_saved": "דוח קריא נשמר: {reportPath}", "folder_summary_title": "סיכום תיקיה", "folder_summary_table_header": "גודל שפה (KB) מפתחות אורך ממוצע כולל תווים", "folder_summary_row": "{lang} {sizeKB} {totalKeys} {avgLength} {totalChars}", "language_comparison_title": "השוואת שפות", "language_comparison_row": "{lang}: {diff} תווים ({percent}%) {status}", "summary_stats": "📊 סיכום: {totalLanguages} שפות, {totalKeys} מקשים - דוחות שנשמרו ב {reportPath}", "detailedKeysDescription": "הצג ניתוח מפורט ברמת מפתח במסוף", "too_many_keys_warning": "⚠️ יותר מדי מקשים להצגה במסוף - בדוק את קובץ הדוח המפורט לניתוח מלא", "no_translation_files_found": "לא נמצאו קבצי תרגום", "analysis_completed": "הניתוח הושלם ב {duration}גְבֶרֶת", "analysis_failed": "הניתוח נכשל: {errorMessage}", "starting_analysis": "מתחיל ניתוח...", "found_files": "נמצא {count} קבצים", "failed_to_parse_language_error": "הניתוח נכשל {language} תרגומים: {errorMessage}", "recommendations": { "keys_have_significant_size_variations": "למפתחות יש שינויים משמעותיים בגודל", "consider_reviewing_translations": "שקול לסקור {lang} תרגומים - הם {percentageDifference}% {comparison} מאשר קו הבסיס", "long_translations_detected": "{lang} יש {longKeys} תרגומים ארוכים מ {threshold} דמויות - שקול לפרק אותן" }, "detailed_key_analysis_title": "ניתוח מפתח מפורט", "key_analysis_detail": "{lang}: {length} תווים ({status}) - {translation}", "key_analysis_header": "מַפְתֵחַ: {key}", "status_empty": "רֵיק", "status_long": "אָרוֹך", "status_ok": "בְּסֵדֶר" }, "usage": { "help_message": "I18n Usage Analyzer שימוש: node i18ntk-usage.js [options] אפשרויות: --source-dir <dir> ספריית מקור לסריקה (ברירת מחדל: ./src) --i18n-dir <dir> ספריית I18n (ברירת מחדל: ./src/locales) --output-report צור דוח מפורט --output-dir <dir> ספריית פלט עבור דוחות (ברירת מחדל: ./reports) --עזרה הצג עזרה זו דוגמאות: node i18ntk-usage.js --output-report node i18ntk-usage.js --source-dir=./app --i18n-dir=./locales node i18ntk-usage.js.=reput-output-usage.js.", "source_directory_thissourcedir": "📁 ספריית מקורות: {sourceDir}", "translationCompletenessTitle": "🌍 שלמות התרגום:", "i18n_directory_thisi18ndir": "🌐 ספריית I18n: {i18nDir}", "failed_to_parse_filename_error": "⚠️ הניתוח נכשל {fileName}: {errorMessage}", "analyzing_source_files": "🔍 מנתח קבצי מקור...", "found_files_in_source": "📂 נמצא {numFiles} קבצים בספריית המקור", "found_thisusedkeyssize_unique_": "🎯 נמצא {usedKeysSize} מפתחות משומשים ייחודיים", "total_key_usages_totalkeysfoun": "📊 סה\"כ שימושי מפתח: {totalKeysFound}", "loading_available_translation_": "📋 טוען מפתחות תרגום זמינים...", "found_thisavailablekeyssize_av": "✅ נמצא {availableKeysSize} מפתחות זמינים", "foundTranslationFiles": "✅ נמצא {count} קבצי תרגום", "errorReadingI18nDirectory": "⚠️ שגיאה בקריאת ספריית i18n: {error}", "pressEnterToReturnToMenu": "📝 הקש Enter כדי לחזור לתפריט הראשי...", "notTranslatedKeysTotal": "⚠️ מפתחות לא מתורגמים: {total}", "noSourceFilesFound": "⚠️ לא נמצאו קבצי מקור בספריית המקור.", "reviewNotTranslatedKeys": "💡 סקירת מפתחות לא מתורגמים", "analysisCompletedSuccessfully": "🎉 ניתוח הושלם בהצלחה!", "detectedSourceDirectory": "ספריית מקור שזוהתה: {sourceDir}", "detectedI18nDirectory": "זוהתה ספריית i18n: {i18nDir}", "fileInfo": "📄 {namespace}: {keys} מפתחות", "failedToAnalyzeUsage": "❌ ניתוח השימוש נכשל: {error}", "failedToAnalyzeFile": "❌ ניתוח הקובץ נכשל: {error}", "failedToExtractKeys": "❌ חילוץ המפתחות נכשל {filePath}: {error}", "analysisFailedError": "❌ ניתוח נכשל: {error}", "analyzerInitialized": "המנתח אותחל", "analyzerInitFailed": "אתחול המנתח נכשל: {error}", "argsParsed": "טיעונים מנותחים", "processedFiles": "מְעוּבָּד {processedFiles} שֶׁל {totalFiles} קבצים.", "argsParseFailed": "ניתוח ארגומנטים נכשל: {error}", "translationDiscoveryError": "שגיאת גילוי תרגום: {error}", "fileTraversalError": "שגיאה במעבר קבצים: {error}", "sourceEqualsI18nWarn": "{reason}. ניתוח שימוש לא יסרוק קבצי מקומיים כקוד מקור.", "i18nEqualsSourceWarn": "⚠️ ספריית I18n וספריית המקור זהים. זה עלול לגרום לבעיות בניתוח.", "usageAnalysisFailed": "⚠️ ניתוח השימוש נכשל: {error}", "translationFileParseError": "⚠️ שגיאת ניתוח קובץ תרגום: {error}", "translationKeysLoadError": "⚠️ שגיאת טעינת מפתחות תרגום: {error}", "languageCompletenessStats": "🌐 {language}: {translated}/{total} ({completeness}% מתורגמים)", "missingKeysCount": "⚠️ מפתחות חסרים: {count}", "analyzingTranslationCompleteness": "מנתח את שלמות התרגום...", "unusedKeysCount": "מפתחות לא בשימוש: {count}", "usedKeysCount": "מפתחות משומשים: {count}", "availableKeysCount": "מפתחות זמינים: {count}", "analysisResults": "תוצאות ניתוח:", "i18nDirectoryNotFound": "⚠️ ספריית I18n לא נמצאה. אנא בדוק את הנתיב.", "sourceDirectoryNotFound": "⚠️ ספריית המקורות לא נמצאה: {dir}", "checkUsage": { "title": "🔍 I18NTK USAGE ANALYSIS", "analyzing_source_files": "🔍 מנתח קבצי מקור...", "source_directory_thissourcedir": "📁 ספריית מקורות: {sourceDir}", "i18n_directory_thisi18ndir": "📁 ספריית i18n: {i18nDir}", "found_files_in_source": "✅ נמצא {numFiles} קבצים בספריית המקור", "no_source_files_found": "⚠️ לא נמצאו קבצי מקור בספרייה שצוינה", "processedFiles": "📊 מעובד {processedFiles} שֶׁל {totalFiles} קבצים", "failedToProcessFile": "❌ העיבוד נכשל", "found_thisusedkeyssize_unique_": "🔍 נמצא {usedKeysSize} מפתחות משומשים ייחודיים", "total_key_usages_totalkeysfoun": "📊 סה\"כ שימושי מפתח: {totalKeysFound}", "loading_available_translation_": "📂 טוען מפתחות תרגום זמינים...", "found_thisavailablekeyssize_av": "✅ נמצא {availableKeysSize} מפתחות זמינים", "message": "מנתח את השימוש במפתחות התרגום בפרויקט שלך...", "usage_analysis_results": "📊 USAGE ANALYSIS RESULTS", "source_files_scanned_thisfileu": "📁 קבצי מקור שנסרקו: {fileUsageSize}", "available_translation_keys_thi": "✅ מפתחות תרגום זמינים: {availableKeysSize}", "used_translation_keys_thisused": "🔍 השתמשו במפתחות תרגום: {usedKeysSize}", "dynamic_keys_detected_dynamick": "⚡ זוהו מפתחות דינמיים: {dynamicKeysLength}", "unused_keys_unusedkeyslength": "🗑️ מפתחות לא בשימוש: {unusedKeysLength}", "missing_keys_missingkeyslength": "❌ מפתחות חסרים: {missingKeysLength}", "translation_completeness_title": "📈 שלמות התרגום", "language_completeness_stats": "{language}: {translated}/{total} מפתחות ({percentage}%)", "n_sample_unused_keys": "🗑️ דוגמה למפתחות שאינם בשימוש (5 הראשונים):", "key": "🔑 {key}", "and_unusedkeyslength_5_more": "... ו {count} מפתחות נוספים שאינם בשימוש", "n_sample_missing_keys": "❌ מפתחות חסרים לדוגמה (5 הראשונים):", "and_missingkeyslength_5_more": "... ו {count} עוד מפתחות חסרים", "n_generating_detailed_report": "📊 יצירת דוח מפורט...", "report_saved_reportpath": "📄 דוח נשמר: {reportPath}", "n_recommendations": "💡 המלצות:", "consider_removing_unused_trans": "🗑️ שקול להסיר תרגומים שאינם בשימוש כדי להקטין את גודל החבילה", "add_missing_translation_keys_t": "➕ הוסף מפתחות תרגום חסרים כדי לשמור על עקביות", "review_dynamic_keys_manually_t": "🔍 סקור מפתחות דינמיים באופן ידני (ייתכן שהם תקפים)", "all_translation_keys_are_prope": "✅ כל מפתחות התרגום נמצאים בשימוש נכון!", "n_next_steps": "🎯 NEXT STEPS:", "2_check_the_detailed_report_fo": "2. בדוק את הדוח המפורט לגבי בעיות ספציפיות", "help_message": "I18n Usage Analyzer שימוש: node i18ntk-usage.js [options] אפשרויות: --source-dir <dir> ספריית מקור לסריקה (ברירת מחדל: ./src) --i18n-dir <dir> ספריית I18n (ברירת מחדל: ./src/locales) --output-report צור דוח מפורט --output-dir <dir> ספריית פלט עבור דוחות (ברירת מחדל: ./reports) --עזרה הצג עזרה זו דוגמאות: node i18ntk-usage.js --output-report node i18ntk-usage.js --source-dir=./app --i18n-dir=./locales node i18ntk-usage.js.=reput-output-usage.js.", "1_review_the_analysis_results": "1. סקור את תוצאות הניתוח במסוף או בדוח שנוצר.", "2_run_with_outputreport_for_de": "2. הפעל עם --output-report לדוח מפורט.", "3_remove_unused_keys_or_add_mi": "3. הסר מפתחות שאינם בשימוש או הוסף מפתחות חסרים לקוד המקור שלך.", "4_rerun_analysis_to_verify_imp": "4. הפעל מחדש את הניתוח כדי לאמת שיפורים.", "noSourceFilesFound": "לא נמצאו קבצי מקור לניתוח.", "i18nDirectoryNotFound": "ספריית I18n לא נמצאה: {i18nDir}", "noTranslationLanguagesFound": "לא נמצאו שפות תרגום.", "failedToAnalyzeFile": "ניתוח הקובץ נכשל {filePath}: {error}", "failedToAnalyzeLanguage": "ניתוח השפה נכשל {language}: {error}", "translationCompletenessAnalysisFailed": "ניתוח שלמות התרגום נכשל: {error}", "n": "\\n" }, "complete": { "configLoadedSuccessfully": "התצורה נטענה בהצלחה", "configLoadingFailed": "טעינת התצורה נכשלה", "title": "🌍 השלמת תרגום I18NTK", "separator": "============================================================", "sourceDir": "📁 ספריית מקורות: {sourceDir}", "sourceLanguage": "🌐 שפת מקור: {sourceLanguage}", "dryRunMode": "🧪 מצב ריצה יבשה - לא יבוצעו שינויים", "languages": "🌍 שפות זמינות: {languages}", "addingMissingKeys": "➕ מוסיף מפתחות חסרים לקבצי תרגום...", "processing": "🔄 עיבוד {language}...", "addedKeys": "✅ נוסף {count} מפתחות חסרים", "changeDetails": "📝 {file}: {key}", "andMore": "...ו {count} יוֹתֵר", "noChangesNeeded": "✅ אין צורך בשינויים {language}", "summaryTitle": "📊 סיכום השלמות", "totalChanges": "📝 סך השינויים: {totalChanges}", "languagesProcessed": "🌍 שפות מעובדות: {languagesProcessed}", "missingKeysAdded": "➕ נוספו מפתחות חסרים: {missingKeysAdded}", "nextStepsTitle": "📋 NEXT STEPS", "nextStep1": "1. הפעל ניתוח שימוש:", "nextStep2": "node i18ntk-usage.js --output-report", "nextStep3": "2. אמת תרגומים:", "nextStep4": "node i18ntk-validate.js", "nextStep5": "3. נתח דפוסים:", "nextStep6": "node i18ntk-analyze.js", "allKeysAvailable": "🎉 כל מפתחות התרגום זמינים כעת!", "runWithoutDryRun": "💡 הפעל ללא --- יבש-ריצה כדי להחיל שינויים", "deletingOldReport": "🗑️ מוחק דוח ישן...", "generatingFreshAnalysis": "📊 יצירת ניתוח שימוש טרי...", "couldNotGenerate": "❌ לא ניתן היה ליצור ניתוח שימוש", "reportNotFound": "📋 דוח שימוש לא נמצא. שימוש במפתחות נפוצים...", "foundMissingKeys": "📋 נמצא {count} מפתחות חסרים מניתוח השימוש", "couldNotParse": "❌ לא ניתן לנתח את דוח השימוש. שימוש במפתחות נפוצים..." }, "noTranslationLanguagesFound": "לא נמצאו שפות תרגום", "failedToAnalyzeLanguage": "נכשל בניתוח השפה", "translationCompletenessAnalysisFailed": "ניתוח שלמות התרגום נכשל", "failedToProcessFile": "עיבוד הקובץ נכשל:", "failedToSaveReport": "שמירת דוח השימוש נכשלה: {error}", "i18nDirectoryDoesNotExist": "ספריית I18n לא קיימת: {dir}", "reportSavedTo": "דוח השימוש נשמר ב: {reportPath}", "sourceDirectoryDoesNotExist": "ספריית המקור לא קיימת: {dir}", "noSourceDirectoryConfigured": "(אף אחד לא מוגדר)" }, "validate": { "help_message": "I18n Translation Validator שימוש: node i18ntk-validate.js [options] אפשרויות: --source-dir <dir> ספריית מקור לסריקה (ברירת מחדל: ./src) --i18n-dir <dir> ספריית I18n (ברירת מחדל: ./src/locales) --output-report צור דוח מפורט --output-dir <dir> ספריית פלט עבור דוחות (ברירת מחדל: ./reports) --עזרה הצג עזרה זו דוגמאות: node i18ntk-validate.js --output-report node i18ntk-validate.js --source-dir=./app --i18n-dir=./locales node i18ntk-output-analysate.js.", "title": "🔍 I18n אימות תרגום", "message": "מתחיל תהליך אימות...", "sourceDirectory": "📁 ספריית מקורות: {dir}", "sourceLanguage": "🌍 שפת מקור: {sourceLanguage}", "strictMode": "⚙️ מצב קפדני: {mode}", "noTargetLanguages": "לא הוגדרו שפות יעד; דילוג על אימות יעד. הוסף שפות באמצעות \"i18ntk init --languages=de,fr\".", "validatingLanguages": "🌍 אימות שפות: {langs}", "validatingLanguage": "🔍 שפת אימות: {lang}", "filesCount": "📄 קבצים: {count}", "keysCount": "🔑 מפתחות: {count}", "missingFilesCount": "📁 קבצים חסרים: {count}", "syntaxErrorsCount": "❌ שגיאות תחביר: {count}", "translationPercentage": "🎯 תרגום: {percentage}% ({translated}/{total} מפתחות)", "validationSummary": "📊 סיכום אימות", "validation_failed": "❌ האימות נכשל: {error}", "totalErrors": "❌ סך השגיאות: {count}", "totalWarnings": "⚠️ סה\"כ אזהרות: {count}", "errorsSection": "❌ ERRORS", "warningsSection": "⚠️ WARNINGS", "recommendationsSection": "💡 המלצות", "fixErrorsFirst": "1. תחילה תקן את כל השגיאות", "resolveMissingFilesAndSyntaxErrors": "1. פתור קבצים חסרים ושגיאות תחביר", "fixStructuralInconsistencies": "2. תקן חוסר עקביות מבניות", "completeMissingTranslations": "3. השלם תרגומים חסרים", "rerunValidation": "4. הפעל מחדש את האימות כדי לאמת תיקונים", "addressWarnings": "התייחסו לאזהרות כדי לשפר את האיכות", "reviewWarnings": "עיין באזהרות ותקן במידת הצורך", "considerRunningWithStrict": "2. שקול לרוץ עם --strict flag לצורך אימות מחמיר יותר", "allValidationsPassed": "🎉 כל האימותים עברו!", "considerRunningUsageAnalysis": "שקול להפעיל ניתוח שימוש: node i18ntk-usage.js", "deletedOldReport": "🗑️ דוח אימות ישן נמחק", "sourceDir": "📁 ספריית מקורות: {sourceDir}", "i18nDir": "🌐 ספריית I18n: {i18nDir}", "loadingTranslationFiles": "📋 טוען קבצי תרגום...", "foundTranslationFilesCount": "✅ נמצא {count} קבצי תרגום", "analyzingTranslations": "🔍 מנתח תרגומים...", "validationCompletedSuccessfully": "🎉 האימות הושלם בהצלחה!", "validationErrorsFound": "⚠️ נמצאו שגיאות אימות: {count}", "validationWarningsFound": "⚠️ אזהרות אימות נמצאו: {count}", "validationPassed": "✅ אימות עבר ללא שגיאות", "validationFailed": "האימות נכשל: {error}", "startingValidationProcess": "🔍 מתחיל תהליך אימות...", "validationProcessCompletedSuccessfully": "✅ תהליך האימות הסתיים בהצלחה", "stackTrace": "עקבות מחסנית: {stack}", "authenticationFailed": "❌ האימות נכשל. הגִישָׁה נִדחֲתָה.", "fatalValidationError": "❌ שגיאת אימות קטלנית: {error}", "configAccess": "ניגש לתצורה לצורך אימות", "configValidated": "התצורה אומתה בהצלחה", "configError": "שגיאת תצורה: {error}", "validatorInit": "אתחול אימות I18n", "validatorInitialized": "אימות I18n אותחל בהצלחה", "validatorInitError": "שגיאת אתחול המאמת: {error}", "argsParsing": "ניתוח ארגומנטים של שורת הפקודה", "argsParsed": "ארגומנטים של שורת הפקודה נותחו בהצלחה", "argsParseError": "שגיאת ניתוח ארגומנטים: {error}", "languagesScan": "סורק שפות זמינות", "languagesFound": "נמצא {count} שפות", "languagesScanError": "שגיאת סריקת שפה: {error}", "filesScan": "נמצא {count} קבצים פנימה {language}", "filesScanError": "שגיאה בסריקת קבצים: {error}", "jsonValidated": "תחביר JSON מאומת: {filePath}", "jsonValidationError": "שגיאת אימות JSON: {error}", "languageValidation": "שפה מאמתת: {language}", "languageValidationError": "שגיאת אימות שפה: {error}", "fileDeleted": "הקובץ נמחק", "runStarted": "התחלת הפעלת האימות", "runCompleted": "הפעלת האימות הושלמה בהצלחה", "runError": "הפעלת האימות נכשלה: {error}", "scriptExecution": "ביצוע סקריפט", "validationCompleted": "האימות הושלם", "validationError": "שגיאת אימות: {error}", "separator": "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━", "languageHeader": "🌐 שפה: {language}", "validationResults": "📊 תוצאות אימות", "noErrors": "✅ לא נמצאו שגיאות", "noWarnings": "✅ לא נמצאו אזהרות", "summaryHeader": "📋 OVERALL SUMMARY", "progressIndicator": "⏳ מעבד...", "completedIndicator": "✅ הושלם", "errorIndicator": "❌ שגיאה", "warningIndicator": "⚠️ אזהרה", "infoIndicator": "ℹ️ מידע", "sourceDirNotConfigured": "ספריית המקור לא הוגדרה", "sourceLanguageNotConfigured": "שפת המקור לא מוגדרת", "translationFunctionNotInitialized": "פונקציית התרגום לא אותחלה כראוי", "sourceLanguageDirectoryNotFound": "ספריית שפת המקור לא נמצאה", "specifiedLanguageNotFound": "השפה שצוינה לא נמצאה", "noJsonFilesFound": "לא נמצאו קבצי JSON בספריית המקור: {sourceDir}", "i18nDirectoryNotFound": "ספריית I18n לא נמצאה: {i18nDir}", "invalidDirectoryPaths": "זוהו נתיבים לא חוקיים של ספרייה", "invalidSampleFilePath": "נתיב קובץ לדוגמה לא חוקי", "failedToCreateSampleTranslationFile": "יצירת קובץ תרגום לדוגמה נכשלה", "invalidFilePathDetected": "זוהה נתיב קובץ לא חוקי", "failedToWriteFile": "כתיבת הקובץ נכשלה: {filePath}", "invalidSourceDirectory": "ספריית מקור לא חוקית: {sourceDir}", "invalidSourceLanguageDirectory": "ספריית שפת מקור לא חוקית: {sourceDir}" }, "adminCli": { "setupPinProtectionTitle": "🔐 הגדרת הגנת PIN של מנהל מערכת", "setupPinProtectionDescription": "זה ידרוש PIN בן 4-6 ספרות לפעולות ניהוליות.", "enablePinProtectionPrompt": "האם ברצונך להפעיל הגנת PIN של מנהל מערכת?", "setupCancelled": "ההגדרה של הגנת PIN של מנהל מערכת בוטלה.", "enterPinPrompt": "הזן PIN בן 4-6 ספרות:", "pinFormatError": "❌ PIN חייב להיות בן 4-6 ספרות. אנא נסה שוב.", "confirmPinPrompt": "אשר את ה-PIN:", "pinMismatchError": "❌ מספרי ה-PIN אינם תואמים. אנא נסה שוב.", "pinProtectionEnabledSuccess": "✅ הגנת PIN של מנהל מערכת הופעלה בהצלחה!", "pinRecoveryWarning": "⚠️ זכור את ה-PIN שלך - לא ניתן לשחזר אותו אם אובד.", "setupPinProtectionFailed": "❌ כשל בהגדרת הגנת PIN של מנהל מערכת.", "errorSettingUpPin": "❌ שגיאה בהגדרת PIN של מנהל מערכת: {message}", "authRequiredForOperation": "🔐 נדרש אימות מנהל עבור: {operation}", "invalidPinFormat": "❌ פורמט PIN לא חוקי. PIN חייב להיות בן 4-6 ספרות.", "authenticationSuccess": "✅ האימות הצליח!", "invalidPinAttemptsRemaining": "❌ PIN לא חוקי. {remaining} ניסיונות שנותרו.", "authenticationFailedAccessDenied": "❌ האימות נכשל. הגִישָׁה נִדחֲתָה.", "authenticationError": "❌ שגיאת אימות: {message}", "pinProtectionNotEnabled": "הגנת PIN של מנהל מערכת אינה מופעלת כעת.", "disablingPinProtectionTitle": "🔓 השבתת הגנת PIN של מנהל מערכת", "confirmDisablePinProtection": "האם אתה בטוח שברצונך להשבית את הגנת ה-PIN של מנהל מערכת?", "operationCancelled": "הפעולה בוטלה.", "pinProtectionDisabledSuccess": "✅ הגנת PIN של מנהל מערכת מושבתת.", "disablePinProtectionFailed": "❌ נכשל בביטול הגנת PIN של מנהל מערכת.", "errorDisablingPinProtection": "❌ שגיאה בהשבתת הגנת מנהל מערכת: {message}", "adminProtectionStatusTitle": "🔐 סטטוס הגנת מנהל מערכת", "statusEnabled": "סטטוס: ✅ מופעל", "protectionDetails": "הגנה: נדרש PIN בן 4-6 ספרות לפעולות מנהל", "lockoutDetails": "נעילה: 3 ניסיונות כושלים = נעילה של 15 דקות", "statusDisabled": "סטטוס: ❌ מושבת", "noAuthRequired": "הגנה: אין צורך באימות", "unprotectedRisk": "סיכון: הפעולות הניהוליות אינן מוגנות", "errorCheckingAdminStatus": "❌ שגיאה בבדיקת סטטוס מנהל מערכת: {message}", "authRequired": "🔐 נדרש אימות מנהל מערכת.", "invalidPin": "❌ PIN לא חוקי.", "authSuccess": "✅ האימות הצליח!", "adminPinSetupCli": "admin_pin_setup_cli", "adminAuthFailedCli": "admin_auth_failed_cli", "adminAuthDisabledCli": "admin_auth_disabled_cli", "protectedAccess": "גישה מוגנת: נדרש אימות מנהל עבור פעולות רגישות.", "enterPin": "הזן PIN של מנהל מערכת:", "accessGranted": "ניתנה גישה." }, "adminPin": { "setup_title": "🔐 הגדרת PIN של מנהל מערכת", "setup_separator": "============================================================", "setup_description": "צור PIN בן 4-6 ספרות עבור גישת מנהל להגדרות רגישות.", "required_for_title": "PIN זה יידרש עבור:", "required_for_1": "• שינוי הגדרות אבטחה", "required_for_2": "• שינוי תצורות מתקדמות", "required_for_3": "• גישה לכלי ניפוי באגים", "required_for_4": "• איפוס הגדרות", "setup_note": "💡 הערה: תראה כוכביות (*) תוך כדי הקלדה - אלו רק תווים מיסוך.", "setup_digits_only": "רק מספרים 0-9 מתקבלים כספרות PIN.", "invalid_pin_length": "❌ PIN לא חוקי. חייב להיות בן 4-6 ספרות (מספרים 0-9 בלבד).", "invalid_pin_example": "דוגמה: 1234 או 567890", "pins_do_not_match": "❌ מספרי ה-PIN אינם תואמים.", "setup_success": "✅ PIN של מנהל מערכת הוגדר בהצלחה!", "setup_warning": "⚠️ שמרו על קוד PIN זה מאובטח. לא ניתן לשחזר אותו אם אובד.", "setup_error": "❌ שגיאה בהגדרת PIN:", "session_expired": "⏰ פג תוקף הפעלת הניהול עקב חוסר פעילות.", "no_pin_set_setting_up": "⚠️ לא הוגדר PIN של מנהל מערכת. מגדיר PIN...", "no_pin_configured_access_denied": "⚠️ לא הוגדר PIN של מנהל מערכת. הגִישָׁה נִדחֲתָה.", "use_admin_settings_to_set_pin": "💡 השתמש בהגדרות הניהול כדי להגדיר תחילה PIN.", "locked_out": "🔒 גישת מנהל מערכת נעולה עקב יותר מדי ניסיונות כושלים.", "wait_before_retry": "המתן 5 דקות לפני שתנסה שוב.", "access_granted": "✅ ניתנת גישת מנהל.", "incorrect_pin": "❌ PIN שגוי. {attempts} ניסיונות שנותרו.", "verify_pin_error": "❌ שגיאה באימות ה-PIN:", "already_configured": "✅ PIN של מנהל מערכת כבר מוגדר.", "optional_setup_title": "🔐 הגדרת PIN של מנהל מערכת (אופציונלי)", "optional_setup_description": "הגנת PIN של מנהל מערכת מוסיפה אבטחה עבור פעולות רגישות כמו:", "setup_prompt": "האם ברצונך להגדיר PIN של מנהל מערכת? (י/N):", "skipping_setup": "⏭️ דילוג על הגדרת PIN של מנהל מערכת. אתה יכול להגדיר את זה מאוחר יותר בהגדרות.", "setup_prompt_error": "❌ שגיאה במהלך בקשת הגדרת ה-PIN:", "protectedAccess": "גישה מוגנת: נדרש אימות מנהל עבור פעולות רגישות.", "enterPin": "הזן PIN של מנהל מערכת:", "accessGranted": "ניתנה גישה.", "invalidPin": "❌ PIN לא חוקי. אנא נסה שוב.", "weak_pin_warning": "⚠️ אזהרה: נראה שה-PIN הזה חלש או נפוץ.", "weak_pin_suggestion": "💡 שקול להשתמש ב-PIN חזק יותר עם ספרות מגוונות.", "use_anyway_prompt": "הקלד \"כן\" כדי להשתמש בכל זאת, או הקש Enter כדי לבחור PIN אחר:", "enter_new_pin": "הזן PIN חדש של מנהל מערכת (4-6 ספרות):", "confirm_pin": "אשר את ה-PIN של מנהל המערכת:", "not_set": "לא מוגדר", "pin_display_mask": "####" }, "debug": { "title": "🔧 כלי ניפוי באגים", "separator": "============================================================", "mainDebuggerSystemDiagnostics": "1. אבחון מערכת", "_consoleTranslationsCheck": "// 2. בדיקת תרגומי מסוף", "_exportMissingKeys": "// 3. ייצוא מפתחות תרגום חסרים", "_replaceHardcodedConsole": "// 4. החלף מחרוזות מסוף מקודדות", "_consoleKeyChecker": "// 5. בודק מפתחות מסוף", "debugLogs": "2. ניפוי באגים ביומנים", "backToMainMenu": "0. חזרה לתפריט הראשי", "selectOption": "בחר כלי ניפוי באגים:", "runningDebugTool": "רִיצָה {displayName}...", "debugToolNotFound": "❌ כלי ניפוי באגים לא נמצא: {toolName}", "errorRunningDebugTool": "שגיאה בהפעלת כלי ניפוי באגים '{displayName}': {error}", "recentDebugLogs": "📄 יומני ניפוי באגים אחרונים", "noDebugLogsFound": "❌ לא נמצאו יומני ניפוי באגים.", "debugLogsDirectoryNotFound": "❌ לא נמצאה ספריית יומני ניפוי באגים.", "selectLogPrompt": "בחר קובץ יומן לצפייה (1-{count}):", "invalidChoiceSelectRange": "בחירה לא חוקית. אנא בחר מתוך המגוון הזמין.", "contentOf": "📄 תוכן של {filename}:", "pressEnterToContinue": "הקש Enter כדי להמשיך..." }, "detect_language_mismatches": { "tool_title": "🔍 כלי לזיהוי אי התאמה בשפה", "separator": "=====================================", "analyzing_file": "📄 מנתח {language}‎.json...", "error_analyzing_file": "❌ שגיאה בניתוח {filename}: {errorMessage}", "results_title": "📊 תוצאות זיהוי אי התאמה בשפה", "results_separator": "========================================", "summary_title": "📋 SUMMARY:", "total_files_analyzed": "סך הקבצים שנותחו: {totalFiles}", "files_with_mismatches": "קבצים עם אי התאמה: {filesWithMismatches}", "total_mismatches_found": "סה\"כ אי התאמה נמצאו: {totalMismatches}", "no_mismatches_found": "✅ לא נמצאו אי התאמה בשפה! נראה שכל התרגומים הם בשפות הנכונות שלהם.", "detailed_results_title": "🔍 DETAILED RESULTS:", "file_mismatch_header": "📄 {filename} ({language})", "mismatches_count": "נמצא {count}