diff --git a/app/astro.config.mjs b/app/astro.config.mjs index c8cd18f8..eec2d5f2 100644 --- a/app/astro.config.mjs +++ b/app/astro.config.mjs @@ -3,7 +3,7 @@ import { defineConfig } from "astro/config"; export default defineConfig({ i18n: { - locales: ["en", "ru", "tr", "it", "ko", "es", "pt", "fr", "vi", "sv", "de", "hu", "zh-CN"], + locales: ["en", "ru", "tr", "it", "ko", "es", "pt", "fr", "vi", "sv", "de", "hu", "zh-CN", "he"], defaultLocale: "en", }, }); diff --git a/app/public/icons/flags/he.svg b/app/public/icons/flags/he.svg new file mode 100644 index 00000000..5cf32415 --- /dev/null +++ b/app/public/icons/flags/he.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/src/assets/js/appinstall.js b/app/src/assets/js/appinstall.js index f9d00fe3..858c7444 100644 --- a/app/src/assets/js/appinstall.js +++ b/app/src/assets/js/appinstall.js @@ -1,3 +1,7 @@ +// Runtime strings, rendered into the page by MainPage.astro +const i18n = JSON.parse(document.getElementById("i18n-runtime")?.textContent || "{}"); +const tr = (key, fallback) => i18n[key] || fallback; + function appsInstallChocolatey() { // List of apps const appListChocolatey = [ @@ -274,7 +278,8 @@ function appsInstallChocolatey() { const manualList = document.getElementById("manualList"); if (window.manualURLs.length > 0) { - manualList.innerHTML = "Manual packages added: " + window.manualURLs.join(" | "); + manualList.innerHTML = + tr("install.manualAdded", "Manual packages added: ") + window.manualURLs.join(" | "); } } @@ -562,7 +567,8 @@ function appsInstallWinget() { const manualList = document.getElementById("manualList"); if (window.manualURLs.length > 0) { - manualList.innerHTML = "Manual packages added: " + window.manualURLs.join(" | "); + manualList.innerHTML = + tr("install.manualAdded", "Manual packages added: ") + window.manualURLs.join(" | "); } } @@ -593,7 +599,7 @@ addButton.addEventListener("click", () => { if (manualInput) { if (!isValidManualId(manualInput)) { const manualList = document.getElementById("manualList"); - manualList.innerHTML = "Please enter a valid package ID."; + manualList.innerHTML = tr("install.invalidId", "Please enter a valid package ID."); return; } window.manualURLs.push(manualInput); diff --git a/app/src/assets/js/main.js b/app/src/assets/js/main.js index 52085e7e..43dce082 100644 --- a/app/src/assets/js/main.js +++ b/app/src/assets/js/main.js @@ -10,6 +10,12 @@ import { relaunch } from "@tauri-apps/plugin-process"; import { openUrl } from "@tauri-apps/plugin-opener"; import { getMatches } from "@tauri-apps/plugin-cli"; +// Runtime strings, rendered into the page by MainPage.astro +const i18n = JSON.parse(document.getElementById("i18n-runtime")?.textContent || "{}"); +const tr = (key, fallback) => i18n[key] || fallback; +// Sidebar slides in from the right in RTL layouts +const rtlSuffix = document.documentElement.dir === "rtl" ? "-rtl" : ""; + async function loadConfig() { const matches = await getMatches(); if (matches.args.import) { @@ -89,12 +95,15 @@ async function loadLocale() { async function alertForUpdates() { let updateAsk; - updateAsk = await ask("An update is available. Do you want to update?", { - title: "Update Available", - kind: "info", - okLabel: "Go to GitHub", - cancelLabel: "Later", - }); + updateAsk = await ask( + tr("dialog.update.message", "An update is available. Do you want to update?"), + { + title: tr("dialog.update.title", "Update Available"), + kind: "info", + okLabel: tr("dialog.update.github", "Go to GitHub"), + cancelLabel: tr("dialog.update.later", "Later"), + }, + ); if (updateAsk === true) { await openUrl("https://github.com/flick9000/winscript/releases/latest"); @@ -108,12 +117,15 @@ async function checkForUpdates() { try { const update = await check(); - let updateAsk = await ask("An update is available. Do you want to update?", { - title: "Update Available", - kind: "info", - okLabel: "Update", - cancelLabel: "Later", - }); + let updateAsk = await ask( + tr("dialog.update.message", "An update is available. Do you want to update?"), + { + title: tr("dialog.update.title", "Update Available"), + kind: "info", + okLabel: tr("dialog.update.update", "Update"), + cancelLabel: tr("dialog.update.later", "Later"), + }, + ); if (updateAsk === true) { await update.downloadAndInstall(); @@ -232,12 +244,12 @@ document.querySelector(".nav-icon").addEventListener("click", () => { if (!navbar.classList.contains("responsive")) { navbar.classList.add("responsive"); content.classList.add("responsive"); - navbar.style.animation = "slide-in 0.3s ease forwards"; + navbar.style.animation = `slide-in${rtlSuffix} 0.3s ease forwards`; paragraphs.forEach((p) => { p.style.display = "none"; }); } else { - navbar.style.animation = "slide-out 0.3s ease forwards"; + navbar.style.animation = `slide-out${rtlSuffix} 0.3s ease forwards`; content.classList.remove("responsive"); paragraphs.forEach((p) => { p.style.display = "block"; @@ -401,9 +413,12 @@ onedriveCheckbox.addEventListener("click", async (e) => { if (!onedriveChanging) { const onedriveAsk = await ask( - "Uninstalling OneDrive will delete all of your OneDrive files, make sure to backup if you wish to proceed. Do you want to continue?", + tr( + "dialog.onedrive.message", + "Uninstalling OneDrive will delete all of your OneDrive files, make sure to backup if you wish to proceed. Do you want to continue?", + ), { - title: "Uninstall OneDrive", + title: tr("dialog.onedrive.title", "Uninstall OneDrive"), type: "question", }, ); @@ -535,9 +550,12 @@ document.querySelectorAll(".checkbox-wrapper").forEach((wrapper) => { // Run Button document.getElementById("runBtn").addEventListener("click", async function () { if (!restoreCheckbox.checked) { - let restoreAsk = await ask("Do you want to create a restore point?", { - title: "Restore Point", - }); + let restoreAsk = await ask( + tr("dialog.restore.message", "Do you want to create a restore point?"), + { + title: tr("dialog.restore.title", "Restore Point"), + }, + ); if (restoreAsk === true) { document.querySelector(".restore-container").style.display = "block"; diff --git a/app/src/assets/styles/style.css b/app/src/assets/styles/style.css index bcc7c448..364d2e0d 100644 --- a/app/src/assets/styles/style.css +++ b/app/src/assets/styles/style.css @@ -436,3 +436,113 @@ input:checked + .slider:before { display: block !important; } } + +/* Right-to-left languages (Hebrew): mirror the whole layout */ +@keyframes slide-in-rtl { + from { + transform: translateX(150%); + } + to { + transform: translateX(0); + } +} + +@keyframes slide-out-rtl { + from { + transform: translateX(0); + } + to { + transform: translateX(150%); + } +} + +html[dir="rtl"] .titlebar { + padding-left: 0; + padding-right: 12px; +} + +html[dir="rtl"] .titlebar button.close:hover { + box-shadow: + 0px -5px 0px 0px #c42b1c, + -5px 0px 0px 0px #c42b1c; +} + +html[dir="rtl"] .sidebar { + right: 0; + margin-left: 0; + margin-right: 1rem; +} + +html[dir="rtl"] .sidebar-entry { + border-left: none; + border-right: 4px solid transparent; +} + +html[dir="rtl"] .content { + margin-left: 1rem !important; + margin-right: 342px !important; +} + +html[dir="rtl"] .content-entry .chevron { + margin-right: 0; + margin-left: 8px; +} + +html[dir="rtl"] details > div.content-entry { + padding-left: 12px; + padding-right: 48px; +} + +html[dir="rtl"] .indicator { + margin-left: 0; + margin-right: 1rem; +} + +html[dir="rtl"] .slider:before { + left: auto; + right: 4px; +} + +html[dir="rtl"] input:checked + .slider:before { + transform: translateX(-20px); +} + +html[dir="rtl"] .custom-select .selected-value { + margin-right: 0; + margin-left: 1rem; +} + +html[dir="rtl"] .custom-select .chevron { + right: auto; + left: 0; + margin-left: 0; +} + +html[dir="rtl"] #manualList { + margin-left: 0; + margin-right: 4px; +} + +/* Code and package IDs stay left-to-right */ +html[dir="rtl"] .mockup-code, +html[dir="rtl"] #manualInput { + direction: ltr; +} + +@media screen and (max-width: 800px) { + html[dir="rtl"] .content { + margin-left: 1rem !important; + margin-right: 1.5rem !important; + transition: margin-right 0.3s ease; + } + + html[dir="rtl"] .content.responsive { + margin-right: 342px !important; + } +} + +@media (min-width: 800px) { + html[dir="rtl"] .sidebar { + animation-name: slide-in-rtl; + } +} diff --git a/app/src/components/MainPage.astro b/app/src/components/MainPage.astro index 80b87011..d6bf2c24 100644 --- a/app/src/components/MainPage.astro +++ b/app/src/components/MainPage.astro @@ -18,6 +18,9 @@ interface Props { locale?: string; } const { t, locale } = Astro.props; +const runtimeStrings = Object.fromEntries( + Object.entries(t).filter(([key]) => key.startsWith("dialog.") || key.startsWith("install.")), +); const packageManagers = [ { value: "chocolatey", label: "Chocolatey" }, { value: "winget", label: "Winget" }, @@ -115,10 +118,18 @@ const languages = [ translator: "tyrael-z", translatorUrl: "https://github.com/tyrael-z", }, + { + name: "עברית", + code: "he", + flagCode: "1f1ee-1f1f1", + translator: "yossi-computers", + translatorUrl: "https://github.com/yossi-computers", + }, ]; --- + diff --git a/app/src/components/Sidebar.astro b/app/src/components/Sidebar.astro index 29ed9c7f..15054334 100644 --- a/app/src/components/Sidebar.astro +++ b/app/src/components/Sidebar.astro @@ -8,7 +8,7 @@ const { t } = Astro.props; - + WinScript github.com/flick9000 diff --git a/app/src/i18n/locales/en.json b/app/src/i18n/locales/en.json index 9bf3abe1..7040b83f 100644 --- a/app/src/i18n/locales/en.json +++ b/app/src/i18n/locales/en.json @@ -273,5 +273,16 @@ "common.on": "On", "common.off": "Off", "common.open": "Open", - "common.none": "None (Clear Selection)" + "common.none": "None (Clear Selection)", + "install.manualAdded": "Manual packages added: ", + "install.invalidId": "Please enter a valid package ID.", + "dialog.update.title": "Update Available", + "dialog.update.message": "An update is available. Do you want to update?", + "dialog.update.update": "Update", + "dialog.update.github": "Go to GitHub", + "dialog.update.later": "Later", + "dialog.onedrive.title": "Uninstall OneDrive", + "dialog.onedrive.message": "Uninstalling OneDrive will delete all of your OneDrive files, make sure to backup if you wish to proceed. Do you want to continue?", + "dialog.restore.title": "Restore Point", + "dialog.restore.message": "Do you want to create a restore point?" } diff --git a/app/src/i18n/locales/he.json b/app/src/i18n/locales/he.json new file mode 100644 index 00000000..1be02a21 --- /dev/null +++ b/app/src/i18n/locales/he.json @@ -0,0 +1,288 @@ +{ + "nav.tools": "כלים", + "nav.debloat": "הסרת עודפים", + "nav.privacy": "פרטיות", + "nav.telemetry": "טלמטריה", + "nav.gaming": "משחקים", + "nav.performance": "ביצועים", + "nav.miscellaneous": "שונות", + "nav.install": "עיון באפליקציות", + "nav.script": "הרצת סקריפט", + "nav.script.download": "הורדת סקריפט", + "sidebar.uncheckAll": "ביטול כל הסימונים", + "sidebar.import": "ייבוא", + "sidebar.export": "ייצוא", + "tools.shortcuts.title": "קיצורי דרך", + "tools.shortcuts.desc": "קיצורי דרך להגדרות וכלים שונים של המערכת.", + "tools.shortcuts.windowsSettings": "הגדרות Windows", + "tools.shortcuts.deviceManager": "מנהל ההתקנים", + "tools.shortcuts.controlPanel": "לוח הבקרה", + "tools.shortcuts.virtualMemory": "זיכרון וירטואלי", + "tools.shortcuts.visualEffects": "אפקטים חזותיים", + "tools.shortcuts.msConfig": "MSConfig", + "tools.cleanup.title": "ניקוי", + "tools.cleanup.desc": "פינוי שטח דיסק על ידי ניקוי קבצים זמניים.", + "tools.cleanup.cleanmgr": "הפעלת ניקוי הדיסק", + "tools.cleanup.cleantemp": "ניקוי קבצים זמניים", + "tools.cleanup.emptyrecycle": "ריקון סל המחזור", + "tools.repair.title": "תיקון", + "tools.repair.desc": "בדיקת תקינות קבצי המערכת ותיקון קבצים פגומים.", + "tools.repair.dism": "DISM (כלי לתחזוקת תמונת המערכת)", + "tools.repair.sfc": "SFC (בודק קבצי המערכת)", + "tools.restorepoint.title": "יצירת נקודת שחזור", + "tools.restorepoint.desc": "יוצר נקודת שחזור לפני החלת השינויים.", + "tools.browserhistory.title": "מחיקת היסטוריית הדפדפן", + "tools.browserhistory.desc": "מוחק את ההיסטוריה של Chrome, Edge, Brave ו-Firefox.", + "tools.resetnetwork.title": "איפוס רשת", + "tools.resetnetwork.desc": "מנקה את מטמון ה-DNS ומחדש את כתובת ה-IP.", + "tools.installmas.title": "הרצת MAS", + "tools.installmas.desc": "מריץ את Microsoft Activation Scripts.", + "debloat.apps.title": "אפליקציות Windows", + "debloat.apps.desc": "הסרת אפליקציות מותקנות מראש.", + "debloat.apps.thirdparty": "הסרת אפליקציות צד שלישי", + "debloat.apps.thirdparty.desc": "מסיר אפליקציות צד שלישי כמו Shazam, Spotify וכו'.", + "debloat.apps.msapps": "הסרת אפליקציות Microsoft", + "debloat.apps.msapps.desc": "מסיר אפליקציות מותקנות מראש כמו Solitaire, People וכו'.", + "debloat.apps.extensions": "הסרת הרחבות", + "debloat.apps.extensions.desc": "מסיר הרחבות מותקנות מראש כמו HEVC, VP9 וכו'.", + "debloat.apps.xbox": "הסרת Xbox", + "debloat.apps.xbox.desc": "מסיר את אפליקציות ורכיבי Xbox המותקנים מראש.", + "debloat.features.title": "תכונות Windows", + "debloat.features.desc": "השבתת תכונות מותקנות מראש.", + "debloat.features.consumer": "השבתת תכונות צרכן", + "debloat.features.consumer.desc": "משבית התקנה אוטומטית של אפליקציות מחנות Windows.", + "debloat.features.hyperv": "השבתת Hyper-V", + "debloat.features.hyperv.desc": "מכונות וירטואליות עלולות להפסיק לעבוד לאחר השבתת תכונה זו.", + "debloat.features.iexplorer": "השבתת Internet Explorer", + "debloat.features.faxscan": "השבתת פקס וסריקה", + "debloat.features.mediaplayer": "השבתת Media Player", + "debloat.ai.title": "בינה מלאכותית ב-Windows", + "debloat.ai.desc": "הסרת תכונות הבינה המלאכותית מ-Windows.", + "debloat.ai.hideai": "הסתרת כפתור Copilot בסייר הקבצים", + "debloat.ai.aiappxpackages": "הסרת חבילות AI", + "debloat.ai.copilot": "הסרת Copilot", + "debloat.ai.recall": "הסרת Recall", + "debloat.ai.notepadrewrite": "השבתת AI בפנקס הרשימות", + "debloat.ai.aifiles": "הסרת קבצי AI", + "debloat.microsoftstore.title": "הסרת Microsoft Store", + "debloat.microsoftstore.desc": "לא תוכל יותר לנהל אפליקציות דרך Microsoft Store.", + "debloat.msstoreupdates.title": "השבתת עדכוני אפליקציות אוטומטיים", + "debloat.msstoreupdates.desc": "עוצר עדכונים אוטומטיים של אפליקציות Microsoft Store.", + "debloat.onedrive.title": "הסרת OneDrive", + "debloat.onedrive.desc": "הקפד לגבות את הקבצים שלך לפני ההסרה.", + "debloat.debloatedge.title": "ניקוי עודפים ב-Edge", + "debloat.debloatedge.desc": "משבית תוכנות מיותרות, טלמטריה ותכונות פרסומיות ב-Edge.", + "debloat.edge.title": "הסרת Edge", + "debloat.edge.desc": "מסיר את דפדפן Edge Chromium.", + "debloat.debloatbrave.title": "ניקוי עודפים ב-Brave", + "debloat.debloatbrave.desc": "משבית את Brave Rewards, ה-AI וארנק הקריפטו.", + "debloat.widgets.title": "הסרת ווידג'טים", + "debloat.widgets.desc": "מסיר את חבילת Web Experience.", + "debloat.taskbarwidgets.title": "הסרת ווידג'טים משורת המשימות", + "debloat.taskbarwidgets.desc": "משבית ווידג'טים בשורת המשימות כמו תצוגת משימות, מזג אוויר וכו'.", + "privacy.appaccess.title": "השבתת גישת אפליקציות", + "privacy.appaccess.desc": "הגבלת הגישה של אפליקציות לנתונים, לקבצים ולמערכת.", + "privacy.updatepause.title": "הארכת מגבלת ההשהיה של Windows Update", + "privacy.updatepause.desc": "מאריך את מגבלת ההשהיה של Windows Update ל-20 שנה.", + "privacy.wpbt.title": "השבתת Windows Platform Binary Table", + "privacy.wpbt.desc": "WPBT מאפשר ליצרן המחשב להתקין ולהריץ תוכנות ללא הסכמת המשתמש.", + "privacy.bitlocker.title": "השבתת הצפנת כוננים BitLocker", + "privacy.bitlocker.desc": "משבית את ההצפנה האוטומטית של כוננים ב-BitLocker.", + "privacy.cloudsync.title": "השבתת סנכרון ענן", + "privacy.cloudsync.desc": "משבית סנכרון בענן של הגדרות, ערכות נושא וסיסמאות.", + "privacy.activityfeed.title": "השבתת היסטוריית הפעילות", + "privacy.activityfeed.desc": "משבית את עדכון הפעילות ואת היסטוריית ציר הזמן.", + "privacy.notificationtray.title": "השבתת מגש ההודעות", + "privacy.notificationtray.desc": "משבית את מרכז ההודעות בשורת המשימות.", + "privacy.automap.title": "השבתת הורדת מפות אוטומטית", + "privacy.automap.desc": "משבית הורדה ועדכון אוטומטיים של מפות לא מקוונות.", + "privacy.default0user.title": "הסרת המשתמש 'default0'", + "privacy.default0user.desc": "מסיר את המשתמש default0 שנוצר בשלב ההתקנה הראשונית (OOBE).", + "privacy.lockscreencamera.title": "השבתת המצלמה במסך הנעילה", + "privacy.lockscreencamera.desc": "משבית את הגישה למצלמה ממסך הנעילה.", + "privacy.biometrics.title": "השבתת זיהוי ביומטרי", + "privacy.biometrics.desc": "משבית זיהוי ביומטרי, פוגע ב-Windows Hello ובטביעת אצבע.", + "privacy.appaccess.location": "השבתת גישת אפליקציות למיקום", + "privacy.appaccess.camera": "השבתת גישת אפליקציות למצלמה", + "privacy.appaccess.microphone": "השבתת גישת אפליקציות למיקרופון", + "privacy.appaccess.filesystem": "השבתת גישת אפליקציות למערכת הקבצים", + "privacy.appaccess.accountinfo": "השבתת גישת אפליקציות לפרטי החשבון", + "privacy.appaccess.contacts": "השבתת גישת אפליקציות לאנשי הקשר שלך", + "privacy.appaccess.callhistory": "השבתת גישת אפליקציות להיסטוריית השיחות שלך", + "privacy.appaccess.messages": "השבתת גישת אפליקציות להודעות שלך", + "privacy.appaccess.notifications": "השבתת גישת אפליקציות להתראות", + "privacy.appaccess.email": "השבתת גישת אפליקציות לדואר אלקטרוני", + "privacy.appaccess.tasks": "השבתת גישת אפליקציות למשימות", + "privacy.appaccess.diagnostic": "השבתת גישת אפליקציות לנתוני אבחון", + "privacy.appaccess.voiceactivation": "השבתת גישת אפליקציות להפעלה קולית", + "privacy.appaccess.phone": "השבתת גישת אפליקציות לטלפון", + "privacy.appaccess.trusted": "השבתת גישת אפליקציות למכשירים מהימנים", + "privacy.appaccess.calendar": "השבתת גישת אפליקציות ללוח השנה", + "privacy.appaccess.motion": "השבתת גישת אפליקציות לנתוני תנועה", + "privacy.appaccess.radios": "השבתת גישת אפליקציות לרכיבי רדיו", + "privacy.appaccess.recordings": "השבתת גישת אפליקציות להקלטות", + "privacy.appaccess.screenshot": "השבתת גישת אפליקציות למסגרות צילומי מסך", + "privacy.appaccess.ai": "השבתת גישת אפליקציות ליצירה באמצעות AI", + "telemetry.telemetry.title": "השבתת טלמטריה", + "telemetry.telemetry.desc": "בחר אילו נתונים יישלחו ל-Microsoft.", + "telemetry.windows": "השבתת הטלמטריה של Windows", + "telemetry.windowsupdate": "השבתת הטלמטריה של Windows Update", + "telemetry.windowssearch": "השבתת הטלמטריה של חיפוש Windows", + "telemetry.office": "השבתת הטלמטריה של Office", + "telemetry.appexperience": "השבתת איסוף נתוני חוויית אפליקציות", + "telemetry.feedback": "השבתת איסוף נתוני משוב", + "telemetry.handwriting": "השבתת איסוף נתוני כתב יד", + "telemetry.windowsdrm": "השבתת הגישה לאינטרנט של Windows DRM", + "telemetry.cloudspeech": "השבתת זיהוי דיבור מבוסס ענן", + "telemetry.ads": "השבתת פרסומות מותאמות אישית", + "telemetry.3rdparty.title": "השבתת טלמטריה של צד שלישי", + "telemetry.3rdparty.desc": "בחר אילו נתונים יישלחו לתוכנות צד שלישי.", + "telemetry.adobetelemetry": "חסימת רשת Adobe", + "telemetry.nvidiatelemetry": "השבתת הטלמטריה של Nvidia", + "telemetry.vscodetelemetry": "השבתת הטלמטריה של VS Code", + "telemetry.mediatelemetry": "השבתת הטלמטריה של Media Player", + "telemetry.powershelltelemetry": "השבתת הטלמטריה של PowerShell", + "telemetry.ccleanertelemetry": "השבתת הטלמטריה של CCleaner", + "telemetry.googleupdates": "השבתת עדכוני הרקע של Google", + "telemetry.adobeupdates": "השבתת עדכוני הרקע של Adobe", + "telemetry.update.title": "ניהול עדכוני Windows", + "telemetry.update.desc": "דחייה, השבתה או איפוס של עדכוני Windows.", + "telemetry.defaultupdates": "הגדרות ברירת מחדל", + "telemetry.securityupdate": "עדכוני אבטחה בלבד", + "telemetry.disableupdate": "השבתת עדכונים", + "telemetry.updatesettings.title": "הגדרת Windows Update", + "telemetry.updatesettings.desc": "הגדרת האפשרויות של Windows Update.", + "telemetry.deliveryoptimization.title": "השבתת אופטימיזציית מסירה", + "telemetry.deliveryoptimization.desc": "מונע מ-Windows לשלוח חלקים מעדכונים שכבר הורדו למכשירים אחרים באינטרנט.", + "telemetry.meteredconnection.title": "השבתת עדכונים בחיבורים מוגבלים", + "telemetry.meteredconnection.desc": "מונע מ-Windows להוריד עדכונים בחיבורים עם מגבלת נתונים.", + "telemetry.driverupdates.title": "השבתת עדכוני מנהלי התקנים", + "telemetry.driverupdates.desc": "מונע מ-Windows להוריד ולהתקין באופן אוטומטי עדכונים למנהלי התקני חומרה.", + "performance.dns.googledns": "Google DNS", + "performance.dns.cloudflaredns": "Cloudflare DNS", + "performance.dns.quad9dns": "Quad9 DNS", + "performance.dns.opendns": "OpenDNS", + "performance.dns.adguardns": "AdGuard DNS", + "performance.powerplan.balanced": "מאוזן", + "performance.powerplan.highperformance": "ביצועים גבוהים", + "performance.powerplan.ultimateperformance": "ביצועים מרביים", + "gaming.fullscreenoptimizations.title": "השבתת אופטימיזציות למסך מלא", + "gaming.windowedoptimizations.title": "השבתת אופטימיזציות למשחקים בחלון", + "gaming.mouseacc.title": "השבתת האצת העכבר", + "gaming.gamemode.title": "השבתת מצב משחק", + "gaming.gamebar.title": "השבתת Game Bar", + "gaming.captures.title": "השבתת הקלטות מסך", + "performance.dns.title": "הגדרת DNS", + "performance.powerplan.title": "בחירת תוכנית צריכת חשמל", + "performance.manualservices.title": "הגדרת שירותים להפעלה ידנית", + "performance.manualservices.desc": "מפעיל שירותים רק כשיש בהם צורך.", + "performance.transparency.title": "השבתת השקיפות של Windows", + "performance.transparency.desc": "משבית אפקטי שקיפות, עשוי לשפר את ביצועי המערכת.", + "performance.hags.title": "השבתת HAGS", + "performance.hags.desc": "משבית תזמון GPU מואץ חומרה.", + "performance.ipv6.title": "העדפת IPv4", + "performance.ipv6.desc": "מעדיף IPv4 על פני IPv6, עשוי לשפר את זמן התגובה.", + "performance.mousedelay.title": "השבתת השהיית העכבר", + "performance.mousedelay.desc": "מבטל את ההשהיה של 400ms בהצגת תפריטים ובריחוף.", + "performance.limitdefender.title": "הגבלת השימוש במעבד של Defender", + "performance.limitdefender.desc": "מגביל את השימוש המרבי של Defender במעבד ל-25%.", + "performance.coreisolation.title": "השבתת בידוד ליבה", + "performance.coreisolation.desc": "עשוי לשפר ביצועים על חשבון האבטחה.", + "performance.disableprefetch.title": "השבתת SysMain", + "performance.disableprefetch.desc": "משבית טעינה מוקדמת (Prefetch), עשוי לשפר ביצועים על חשבון זמן הפעלת אפליקציות.", + "performance.storagesense.title": "השבתת Storage Sense", + "performance.storagesense.desc": "משבית את Storage Sense ועוצר ניקוי דיסק אוטומטי.", + "performance.wsearch.title": "השבתת החיפוש", + "performance.wsearch.desc": "משבית את חיפוש Windows ואת יצירת האינדקס של הכוננים.", + "performance.faststartup.title": "השבתת אתחול מהיר", + "performance.faststartup.desc": "משבית את האתחול המהיר, עשוי לפתור בעיות אתחול ועדכונים.", + "performance.disablehibernation.title": "השבתת מצב שינה עמוקה", + "performance.disablehibernation.desc": "לא מומלץ במחשבים ניידים.", + "misc.classicmenu.title": "תפריט לחיצה ימנית קלאסי", + "misc.classicmenu.desc": "משחזר את תפריט ההקשר של Windows 10 ב-Windows 11.", + "misc.mpo.title": "השבתת Multiplane Overlay (MPO)", + "misc.mpo.desc": "משבית את MPO, עשוי לעזור בבעיות הבהוב מסך וקריסות.", + "misc.endtask.title": "הוספת 'סיום משימה' לתפריט ההקשר", + "misc.recentapps.title": "הסתרת אפליקציות שנוספו לאחרונה", + "misc.homegallery.title": "הסרת 'בית' ו'גלריה' מסייר הקבצים", + "misc.taskbarleft.title": "הזזת סמלי שורת המשימות לשמאל", + "misc.utctime.title": "הגדרת שעון החומרה ל-UTC", + "misc.numlockstartup.title": "השבתת Num Lock באתחול", + "misc.darkmode.title": "הפעלת מצב כהה", + "misc.filextensions.title": "הצגת סיומות קבצים", + "misc.hiddenfiles.title": "הצגת קבצים מוסתרים", + "misc.stickykeys.title": "השבתת מקשים דביקים", + "misc.snapflyout.title": "השבתת פריסות הצמדה", + "misc.detailedbsod.title": "הפעלת מסך כחול מפורט", + "misc.verboselogon.title": "הפעלת הודעות כניסה מפורטות", + "install.search": "חיפוש אפליקציה", + "install.manualInput": "הזן מזהה חבילה", + "install.addApp": "הוספת אפליקציה", + "install.packageManager": "מנהל חבילות", + "install.update.title": "עדכון האפליקציות המותקנות", + "install.update.btn": "עדכון", + "install.drivers": "מנהלי התקנים", + "install.browsers": "דפדפנים", + "install.compression": "דחיסה", + "install.gaming": "משחקים", + "install.utilities": "כלי עזר", + "install.protools": "כלים מקצועיים", + "install.microsoft": "כלי Microsoft", + "install.multimedia": "מולטימדיה", + "install.communication": "תקשורת", + "install.imaging": "תמונות", + "install.documents": "מסמכים", + "install.security": "אבטחה", + "install.developers": "למפתחים", + "install.no.winget": "לא זמין ב-Winget.", + "install.no.choco": "לא זמין ב-Chocolatey.", + "script.download.title": "הורדת סקריפט", + "script.download.btn": "הורדה", + "script.run.title": "הרצת סקריפט", + "script.run.btn": "הרצה", + "script.copy.title": "העתקה ללוח", + "script.copy.btn": "העתקה", + "script.presets.title": "הגדרות מוכנות", + "script.presets.important": "חשוב", + "script.presets.important.desc": "עבור על [כל] הסקריפטים אחד אחד לפני ההרצה.", + "script.presets.table": "טבלה", + "script.presets.table.desc": "כאן תוכל למצוא טבלה המשווה בין ההגדרות המוכנות.", + "script.presets.select": "בחירה", + "script.presets.select.desc": "בחירת הגדרה מוכנה תדרוס את ההגדרות הנוכחיות שלך.", + "script.presets.basic.title": "הגדרה בסיסית", + "script.presets.basic.desc": "מומלץ, איזון טוב בין פרטיות/ביצועים לבין פונקציונליות.", + "script.presets.strict.title": "הגדרה מחמירה", + "script.presets.strict.desc": "דגש חזק על פרטיות וביצועים, משבית כמה תכונות לא חיוניות.", + "script.presets.extreme.title": "הגדרה קיצונית", + "script.presets.extreme.desc": "לא מומלץ, פוגע בחלק מהתכונות. השתמש רק אם אתה יודע מה אתה עושה.", + "script.autounattend.title": "יצירת קובץ Autounattend", + "script.autounattend.btn": "יצירה", + "script.apply": "החלה", + "nav.localizations": "שפות", + "localizations.title": "שפות", + "localizations.desc": "בחר את השפה המועדפת עליך לממשק.", + "localizations.translatedBy": "תורגם על ידי", + "localizations.useLanguage": "החלפת שפה", + "supportdialog.title": "תמיכה ב-WinScript", + "supportdialog.desc": "אם WinScript עזרה לך, שקול לתמוך בפרויקט. אפשר לסמן כוכב למאגר ב-GitHub, לשתף אותו עם אחרים או לתרום כדי לממן את המשך הפיתוח.", + "supportdialog.desc2": "התמיכה שלך עוזרת לשמור על WinScript חינמית, בקוד פתוח ומשתפרת כל הזמן.", + "supportdialog.dontask": "אל תשאל שוב", + "supportdialog.coffee": "קנה לי קפה", + "supportdialog.star": "כוכב ב-GitHub", + "supportdialog.exit": "יציאה", + "common.on": "פועל", + "common.off": "כבוי", + "common.open": "פתיחה", + "common.none": "ללא (ניקוי הבחירה)", + "install.manualAdded": "חבילות שנוספו ידנית: ", + "install.invalidId": "נא להזין מזהה חבילה תקין.", + "dialog.update.title": "עדכון זמין", + "dialog.update.message": "קיים עדכון זמין. האם לעדכן?", + "dialog.update.update": "עדכון", + "dialog.update.github": "מעבר ל-GitHub", + "dialog.update.later": "אחר כך", + "dialog.onedrive.title": "הסרת OneDrive", + "dialog.onedrive.message": "הסרת OneDrive תמחק את כל קבצי ה-OneDrive שלך, הקפד לגבות אותם אם ברצונך להמשיך. האם להמשיך?", + "dialog.restore.title": "נקודת שחזור", + "dialog.restore.message": "האם ליצור נקודת שחזור?" +} diff --git a/app/src/layouts/Layout.astro b/app/src/layouts/Layout.astro index e2276321..7fe1c5a9 100644 --- a/app/src/layouts/Layout.astro +++ b/app/src/layouts/Layout.astro @@ -8,7 +8,7 @@ const { locale = "en" } = Astro.props; --- - +
github.com/flick9000