v2.7.11: Refactor compiler routing and enhance build stability
- Add Zig compiler support for Python 3.13+ and smart conflict diagnostics - Refactor Nuitka compiler decision matrix and decouple syntax pre-checks - Enhance UPX DLL protection and expand dependency isolation rules - Fix legacy MSVC crash, Windows SDK misdetection, and folder nesting issues - Complete compiler-related i18n localization
This commit is contained in:
1 parent
fe01312814
commit
8d4282e348
21 files changed
+1231
-142
No files matched your search
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "الوضع المفصل",
|
||||
"Directory": "الدليل",
|
||||
"Discovered via scanner ({count}): {pkgs}": "تم اكتشافه عبر الماسح ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "مساحة القرص منخفضة بشكل حرج: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "انقر نقرًا مزدوجًا لتحرير مسار الهدف؛ يدعم السحب والإفلات",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "انقر نقرًا مزدوجًا لتحرير مسار الهدف؛ اسحب وأفلت مدعوم. استخدم 'حفظ الإعداد المسبق' للحفظ لإعادة الاستخدام.",
|
||||
"Download New Version": "تنزيل الإصدار الجديد",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "إخفاء وحدة التحكم (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "إخفاء إعدادات الشهادات المخصصة ▾",
|
||||
"Huawei Cloud (China)": "سحابة هواوي (الصين)",
|
||||
"Icon file not found: {path}": "ملف الأيقونة غير موجود: {path}",
|
||||
"Import Name": "اسم الاستيراد",
|
||||
"Import Preset...": "استيراد إعداد مسبق...",
|
||||
"Import name (e.g. cv2):": "اسم الاستيراد (مثل cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "فحص المفسر ناجح: لم يتم اكتشاف تعارضات backport نشطة.",
|
||||
"Interpreter:": "المفسر:",
|
||||
"Invalid syntax": "صيغة غير صالحة",
|
||||
"Isolated Environment": "بيئة معزولة",
|
||||
"Issues & Feedback": "المشكلات والملاحظات",
|
||||
"Keep Local Venv": "الاحتفاظ بالبيئة الافتراضية المحلية",
|
||||
"Later": "لاحقًا",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "موقع الإخراج",
|
||||
"Output Location:": "موقع الإخراج:",
|
||||
"Output Name:": "اسم الإخراج:",
|
||||
"Output directory not writable: {error}": "دليل الإخراج غير قابل للكتابة: {error}",
|
||||
"Package Map": "خريطة الحزم",
|
||||
"Package Mapping & Remediation": "تعيين الحزم والإصلاح",
|
||||
"Package Mappings & Rules": "تعيينات الحزم والقواعد",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "تغليف بايثون، بشكل متجدد.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "تم تثبيت Python. يرجى إعادة تشغيل QPyPack يدويًا لاحقًا.",
|
||||
"Python interpreter not found: {path}": "مفسر بايثون غير موجود: {path}",
|
||||
"QPyPack Developer": "مطور QPyPack",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack أداة مجانية ومفتوحة المصدر. إذا كانت قد حسّنت كفاءتك أو حلّت مشاكل التغليف، ففكر في شراء قهوة للمؤلف!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "ذاكرة الوصول العشوائي منخفضة بشكل حرج: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "جاهز، في انتظار البناء.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "السبب: لم يعد MinGW64 مدعومًا على Python 3.13+. يرجى التأكد من تثبيت Zig أو VS 2022.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "السبب: يتطلب Python 3.11+ Visual Studio 2022 (MSVC 14.3) مع Windows SDK.",
|
||||
"Rebuild": "إعادة البناء",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "توصية: 6+ أحرف، أحرف أبجدية رقمية، '-' و '_' فقط. تجنب المسافات أو الصينية لمنع أخطاء التوقيع.",
|
||||
"Remediate Detected Conflicts": "معالجة التعارضات المكتشفة",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "ملف المتطلبات:",
|
||||
"Reset": "إعادة تعيين",
|
||||
"Reset to Default Config": "إعادة تعيين إلى التكوين الافتراضي",
|
||||
"Resource not found: {path}": "المورد غير موجود: {path}",
|
||||
"Resources": "الموارد",
|
||||
"Restore Defaults": "استعادة الافتراضيات",
|
||||
"Save & Return": "حفظ والعودة",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "فحص المجلد بأكمله",
|
||||
"Scanning...": "جارٍ الفحص...",
|
||||
"Script and settings retained. Ready to rebuild.": "تم الاحتفاظ بالبرنامج النصي والإعدادات. جاهز لإعادة البناء.",
|
||||
"Script file is locked by cloud sync": "ملف البرنامج النصي مقفل بواسطة مزامنة السحابة",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "تم تحميل البرنامج النصي. يمكنك سحب مجلدات الأصول أو ملفات البيانات مباشرة هنا لتجميعها.",
|
||||
"Select .pfx / .p12 certificate file": "حدد ملف الشهادة .pfx / .p12",
|
||||
"Select All": "تحديد الكل",
|
||||
"Select Python Version to Download:": "حدد إصدار Python للتنزيل:",
|
||||
"Select shared directory...": "تحديد الدليل المشترك...",
|
||||
"Self-Signed Certificate (*.pfx)": "شهادة موقعة ذاتيًا (*.pfx)",
|
||||
"Shared Environment": "بيئة مشتركة",
|
||||
"Shared environment name (optional, leave empty for isolated)": "اسم البيئة المشتركة (اختياري، اتركه فارغًا للعزل)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "حجم إخراج أصغر. موصى به لـ 95% من التطبيقات القياسية.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "الحل:\n1. في إعدادات البناء، قم بالتبديل إلى محرك [PyInstaller] (موصى به).\n2. أو قم بتثبيت Visual Studio 2022 مع دعم C++.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "الحل:\n1. قم بتثبيت Visual Studio 2022 (حدد 'تطوير سطح المكتب باستخدام C++' و'Windows SDK').\n2. أو قم بتبديل المحرك إلى [PyInstaller] في إعدادات البناء.",
|
||||
"Sound Notification": "إشعار صوتي",
|
||||
"Source Directory (.qpypack_build)": "دليل المصدر (.qpypack_build)",
|
||||
"Source File Directory": "دليل ملف المصدر",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] مساحة القرص غير كافية (المتاح: {free:.1f} جيجابايت). يلزم 0.5 جيجابايت على الأقل لتهيئة بيئة البناء بأمان.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] دليل الإخراج يفتقر إلى صلاحيات الكتابة: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] يرجى تحميل ملف مصدر بايثون صالح أولاً!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] فشل الفحص المسبق:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] خطأ في تنسيق ملف الإعداد المسبق أو تلفه: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] خطأ في العملية: الأمر أو الثنائي مفقود ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] فشل نقل المنتج، قد يكون الملف مشغولاً بواسطة عملية النظام أو يفتقر إلى الصلاحيات: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] الملف الهدف مقفل أو مشفر بواسطة السحابة. يرجى فك التشفير والمحاولة مرة أخرى.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] الملف الهدف قيد التشغيل أو مشغول. يرجى إغلاق التطبيق الحالي والمحاولة مرة أخرى.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] ملف الأيقونة المحدد غير موجود: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] تعذر تنظيف البيئة الافتراضية غير الصالحة:\n المسار: {path}\n الخطأ: {error}\n\nيرجى حذف الدليل يدويًا أو إلغاء تحديد 'الاحتفاظ بالبيئة الافتراضية المحلية' وإعادة المحاولة.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] فشل البناء: إصدار مترجم C++ غير متوافق.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] متطلب مترجم Python 3.13+.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] تمت مقاطعة البناء بشكل استثنائي!\n\nاستكشاف الأخطاء الشائعة:\n1. عدم تطابق البيئة (الأكثر شيوعاً): إصدار بايثون المحدد غير متوافق مع الكود المصدري. يرجى الانتقال إلى [إعدادات البناء] للتبديل إلى إصدار بايثون الذي تستخدمه عادةً لهذا الكود.\n2. التبعيات المفقودة: انقر على 'الوضع التفصيلي' أعلاه للتحقق من ModuleNotFoundError.\n3. حظر برنامج مكافحة الفيروسات: تأكد من أن برنامج الأمان لا يحظر عملية البناء.\n\n(ملاحظة: عادةً ما يكون هذا بسبب اختلافات البيئة/الكود وليس محرك التغليف نفسه. يرجى التحقق من السجل التفصيلي للأسباب الدقيقة.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] تمت مقاطعة التجميع مع استثناءات، يرجى النقر على 'الوضع التفصيلي' أعلاه نافذة السجل لاستكشاف الأخطاء وإصلاحها.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] تمت إضافة '{name}' إلى الموارد الإضافية.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] إنشاء بيئة افتراضية...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] تنزيل متصفحات Playwright عبر المرآة: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] تقييم الذاكرة الفعلية للنظام (المتاحة: {ram:.1f} جيجابايت). تم ضبط التزامن التكيفي: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] تم العثور على بيئة MSVC + Windows SDK متوافقة، باستخدام المترجم الأصلي.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] تم العثور على بيئة Clang المحلية، مع إعطاء الأولوية لمترجم LLVM Clang.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] تم العثور على بيئة GCC/MinGW-w64 المحلية، باستخدام مترجم MinGW64.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] تم العثور على بيئة MSVC المحلية، مع إعطاء الأولوية لمترجم C++ الأصلي.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] تهيئة بيئة بناء معزولة...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] تثبيت بيئة البناء وتبعيات المشروع ({count} حزمة): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] تم تمكين الوضع الخفيف، تطبيق تحسين البايت كود (-OO) وإزالة وحدات التطوير...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] لم يتم اكتشاف MSVC 14.3+. سيستخدم Nuitka سلسلة أدوات MinGW64 أو يقوم بتنزيلها (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] لم يتم اكتشاف مترجم C محلي. سيقوم Nuitka تلقائيًا بتنزيل وإدارة مجموعة أدوات MinGW-w64 المتوافقة.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] نصيحة Nuitka: إذا طُلب منك تنزيل مترجم GCC/MinGW في البناء الأول، فيرجى التأكد من استقرار اتصال الشبكة.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] تمت إعادة تسمية البيئة الافتراضية القديمة إلى: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] إجراء فحوصات بيئية أولية...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] تم اكتشاف Playwright. تثبيت المتصفحات المدمجة (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] تم اكتشاف Python 3.13+: استخدام مترجم Zig (--zig) كخلفية C.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] تم اكتشاف Python 3.13+: استخدام مترجم Zig (--zig) كخلفية أصلية.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] مسار مترجم Python: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] حل تبعيات المشروع...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] إعادة محاولة تنزيل متصفح Playwright عبر CDN الرسمي...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] اكتمل التجميع، مسار الإخراج: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] تم تطبيق التوقيع الرقمي بنجاح!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] يحتوي الكود المصدري على أخطاء نحوية، تم إحباط التجميع:\n - الملف: {file}\n - النوع: {type}\n - السطر: السطر {line}\n - التفاصيل: {desc}\n\nنصيحة: يرجى التأكد من أن الكود المصدري يعمل محليًا قبل التعبئة.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] فشل تحليل بناء جملة الكود المصدري، تم إحباط البناء:\n - الملف: {file}\n - التفاصيل: {desc}\n\nنصيحة: هذا عادة ليس خطأ من أداة التعبئة.\nيرجى التأكد من أن [إصدار بايثون للبناء] الذي حددته يطابق الإصدار الذي استخدمته لـ [كتابة/اختبار الكود].\nاستخدام بناء جملة أحدث (مثل عامل الفظ :=، اتحادات الأنواع |، match-case) في بيئة بايثون أقدم سيؤدي إلى هذا الخطأ.\nنوصي بالانتقال إلى [إعدادات البناء] -> [المحرك] للتبديل إلى إصدار بايثون الصحيح.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] فشل تحليل بناء جملة الكود المصدري، تم إحباط البناء:\n - الملف: {file}\n - السطر: السطر {line}\n - التفاصيل: {desc}\n\nنصيحة: هذا عادة ليس خطأ من أداة التعبئة.\nيرجى التأكد من أن [إصدار بايثون للبناء] الذي اخترته يطابق الإصدار الذي استخدمته [لكتابة/اختبار الكود].\nاستخدام بناء جملة أحدث (مثل عامل الفظ :=، اتحادات الأنواع |، match-case) في بيئة بايثون أقدم سيؤدي إلى هذا الخطأ.\nنوصي بالانتقال إلى [إعدادات البناء] -> [المحرك] لتبديل إصدار بايثون الصحيح.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] تم اكتشاف وحدة 'multiprocessing'. تأكد من استدعاء 'multiprocessing.freeze_support()' تحت 'if __name__ == \"__main__\":' لمنع حلقات العمليات اللانهائية (قنابل الشوكة).",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] استثناء تحليل AST: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] انتهت مهلة الأمر (>{timeout} ثانية)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] تم اكتشاف 'requests' أو 'httpx'. يتم تضمين شهادات 'certifi' تلقائيًا لمنع أخطاء SSL.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] فشل حذف البيئة الافتراضية غير الصالحة، محاولة إعادة التسمية: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] فشل تنظيف البيئة غير الصالحة، يتم الرجوع إلى بيئة رملية مؤقتة: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] فشل تحويل الأيقونة إلى .icns، يتم البناء بدون أيقونة.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] تم حظر كتابة مورد الأيقونة (ربما مقفلة بواسطة النظام/مكافحة الفيروسات)، يتم تفعيل الحماية الاحتياطية...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] تم اكتشاف مساحة قرص منخفضة على محرك هدف البناء (المتاح: {free:.1f} جيجابايت، يُنصح بـ >= 5.0 جيجابايت). قد تنقطع عملية البناء بسبب نفاد القرص.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] تم اكتشاف مساحة قرص منخفضة: {free:.1f} جيجابايت متاحة",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] تم اكتشاف استثناء تخصيص الذاكرة (ZstdError / OOM). يتم تفعيل الحماية الاحتياطية للذاكرة: إعادة المحاولة في وضع الخيط الواحد...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] فشل تثبيت الحزمة '{pkg}'، يتم تخطيها...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] استثناء حقن رمز الإيقاف المؤقت: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] فشل تثبيت متصفح Playwright من جميع المصادر، سيستمر البناء مع المخاطرة...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] يتطلب Python 3.13+ (32 بت) Visual Studio 2022 مع Windows SDK. سيحاول البناء باستخدام البيئة الحالية.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] تراجع اكتشاف معلومات بيئة بايثون: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] تحذير قراءة requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] الدليل المشترك غير صالح، الرجوع إلى وضع البيئة المعزولة.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] الدليل المشترك يفتقر إلى أذونات الكتابة، الرجوع إلى الوضع المعزول.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] فشل التوقيع الذكي، ولكن تم الاحتفاظ بمخرجات البناء.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] فشل تثبيت بعض التبعيات، سيستمر البناء مع المخاطرة...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] فشل تثبيت الإصدارات المحددة. إزالة قيود الإصدار للمطابقة التلقائية للتوافق...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Detaillierter Modus",
|
||||
"Directory": "Verzeichnis",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Per Scanner entdeckt ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Festplattenspeicher kritisch niedrig: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "Doppelklick zum Bearbeiten des Zielpfads; Drag & Drop unterstützt",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Doppelklick zum Bearbeiten des Zielpfads; Drag & Drop unterstützt. Verwenden Sie 'Export Preset' zum Speichern für die Wiederverwendung.",
|
||||
"Download New Version": "Neue Version herunterladen",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Konsole ausblenden (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Benutzerdefinierte Zertifikatseinstellungen ausblenden ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (China)",
|
||||
"Icon file not found: {path}": "Symboldatei nicht gefunden: {path}",
|
||||
"Import Name": "Importname",
|
||||
"Import Preset...": "Preset importieren...",
|
||||
"Import name (e.g. cv2):": "Importname (z. B. cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Interpreterprüfung bestanden: Keine aktiven Backport-Konflikte erkannt.",
|
||||
"Interpreter:": "Interpreter:",
|
||||
"Invalid syntax": "Ungültige Syntax",
|
||||
"Isolated Environment": "Isolierte Umgebung",
|
||||
"Issues & Feedback": "Probleme & Feedback",
|
||||
"Keep Local Venv": "Lokale Venv behalten",
|
||||
"Later": "Später",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Ausgabeort",
|
||||
"Output Location:": "Ausgabeort:",
|
||||
"Output Name:": "Ausgabename:",
|
||||
"Output directory not writable: {error}": "Ausgabeverzeichnis nicht beschreibbar: {error}",
|
||||
"Package Map": "Paketzuordnung",
|
||||
"Package Mapping & Remediation": "Paketzuordnung & Behebung",
|
||||
"Package Mappings & Rules": "Paketzuordnungen & Regeln",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Python-Paketierung, neu gedacht.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python installiert. Bitte starten Sie QPyPack später manuell neu.",
|
||||
"Python interpreter not found: {path}": "Python-Interpreter nicht gefunden: {path}",
|
||||
"QPyPack Developer": "QPyPack Entwickler",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack ist ein kostenloses Open-Source-Tool. Wenn es Ihre Effizienz verbessert oder Verpackungsprobleme gelöst hat, erwägen Sie, dem Autor einen Kaffee zu kaufen!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM kritisch niedrig: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "Bereit, warte auf Build.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Grund: MinGW64 wird auf Python 3.13+ nicht mehr unterstützt. Bitte stellen Sie sicher, dass Zig oder VS 2022 installiert ist.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Grund: Python 3.11+ erfordert Visual Studio 2022 (MSVC 14.3) mit Windows SDK.",
|
||||
"Rebuild": "Neu erstellen",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Empfehlung: 6+ Zeichen, alphanumerisch, nur '-' und '_'. Vermeiden Sie Leerzeichen oder Chinesisch, um Signierungsfehler zu verhindern.",
|
||||
"Remediate Detected Conflicts": "Erkannte Konflikte beheben",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Anforderungen-Datei:",
|
||||
"Reset": "Zurücksetzen",
|
||||
"Reset to Default Config": "Auf Standardkonfiguration zurücksetzen",
|
||||
"Resource not found: {path}": "Ressource nicht gefunden: {path}",
|
||||
"Resources": "Ressourcen",
|
||||
"Restore Defaults": "Standardwerte wiederherstellen",
|
||||
"Save & Return": "Speichern & Zurück",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Gesamten Ordner scannen",
|
||||
"Scanning...": "Scanne...",
|
||||
"Script and settings retained. Ready to rebuild.": "Skript und Einstellungen beibehalten. Bereit zum Neuaufbau.",
|
||||
"Script file is locked by cloud sync": "Skriptdatei ist durch Cloud-Synchronisierung gesperrt",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Skript geladen. Sie können Asset-Ordner oder Datendateien direkt hierher ziehen, um sie zu bündeln.",
|
||||
"Select .pfx / .p12 certificate file": "Wählen Sie .pfx / .p12 Zertifikatsdatei",
|
||||
"Select All": "Alle auswählen",
|
||||
"Select Python Version to Download:": "Python-Version zum Herunterladen auswählen:",
|
||||
"Select shared directory...": "Gemeinsames Verzeichnis auswählen...",
|
||||
"Self-Signed Certificate (*.pfx)": "Selbstsigniertes Zertifikat (*.pfx)",
|
||||
"Shared Environment": "Gemeinsame Umgebung",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Name der gemeinsamen Umgebung (optional, für isoliert leer lassen)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Kleinere Ausgabegröße. Empfohlen für 95% der Standard-Apps.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Lösung:\n1. Wechseln Sie in den Baueinstellungen zur [PyInstaller]-Engine (empfohlen).\n2. Oder installieren Sie Visual Studio 2022 mit C++-Unterstützung.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Lösung:\n1. Installieren Sie Visual Studio 2022 (aktivieren Sie 'Desktopentwicklung mit C++' und 'Windows SDK').\n2. Oder wechseln Sie in den Baueinstellungen zur [PyInstaller]-Engine.",
|
||||
"Sound Notification": "Tonbenachrichtigung",
|
||||
"Source Directory (.qpypack_build)": "Quellverzeichnis (.qpypack_build)",
|
||||
"Source File Directory": "Quelldateiverzeichnis",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Nicht genügend Speicherplatz (Verfügbar: {free:.1f} GB). Mindestens 0,5 GB sind erforderlich, um die Build-Umgebung sicher zu initialisieren.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] Ausgabeverzeichnis hat keine Schreibberechtigung: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Bitte laden Sie zuerst eine gültige Python-Quelldatei!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Vorabprüfung fehlgeschlagen:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Preset-Dateiformatfehler oder beschädigt: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Prozessfehler: Befehl oder Binärdatei fehlt ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Produktübertragung fehlgeschlagen, Datei könnte von Systemprozess belegt sein oder Berechtigungen fehlen: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] Zieldatei ist gesperrt oder von Cloud-Laufwerk verschlüsselt. Bitte entschlüsseln und erneut versuchen.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] Zieldatei wird ausgeführt oder ist belegt. Bitte schließen Sie die vorhandene Anwendung und versuchen Sie es erneut.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] Die angegebene Symboldatei existiert nicht: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Bereinigung der ungültigen virtuellen Umgebung fehlgeschlagen:\n Pfad: {path}\n Fehler: {error}\n\nBitte löschen Sie das Verzeichnis manuell oder deaktivieren Sie 'Lokale Venv behalten' und versuchen Sie es erneut.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Build fehlgeschlagen: C++-Compiler-Version ist inkompatibel.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Python 3.13+ Compiler-Anforderung.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Build außergewöhnlich unterbrochen!\n\nHäufige Fehlerbehebung:\n1. Umgebungsinkompatibilität (häufigste Ursache): Die ausgewählte Python-Version ist mit Ihrem Quellcode nicht kompatibel. Bitte wechseln Sie in den [Build-Einstellungen] zu der Python-Version, die Sie normalerweise für diesen Code verwenden.\n2. Fehlende Abhängigkeiten: Klicken Sie oben auf 'Detaillierter Modus', um nach ModuleNotFoundError zu suchen.\n3. Antiviren-Blockierung: Stellen Sie sicher, dass Ihre Sicherheitssoftware den Build-Prozess nicht blockiert.\n\n(Hinweis: Dies wird normalerweise durch Umgebungs-/Code-Diskrepanzen verursacht, nicht durch die Verpackungs-Engine selbst. Bitte überprüfen Sie das detaillierte Protokoll für genaue Gründe.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Kompilierung mit Ausnahmen unterbrochen, bitte klicken Sie oben im Protokollfenster auf 'Detaillierter Modus' zur Fehlerbehebung.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] '{name}' zu zusätzlichen Ressourcen hinzugefügt.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Erstelle virtuelle Umgebung...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Lade Playwright-Browser über Spiegel herunter: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Bewerte physischen Systemspeicher (Verfügbar: {ram:.1f} GB). Adaptive Parallelität angepasst: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Kompatibles MSVC + Windows SDK gefunden, verwende nativen Compiler.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Lokale Clang-Umgebung gefunden, LLVM-Clang-Compiler wird priorisiert.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Lokale GCC/MinGW-w64-Umgebung gefunden, MinGW64-Compiler wird verwendet.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Lokale MSVC-Umgebung gefunden, nativer C++-Compiler wird priorisiert.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Initialisiere isolierte Build-Umgebung...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Installiere Build-Umgebung und Projektabhängigkeiten ({count} Pakete): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Lite-Modus aktiviert, wende Bytecode-Optimierung (-OO) an und entferne Entwicklungsmodule...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+ nicht erkannt. Nuitka wird die MinGW64-Toolchain verwenden/herunterladen (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Kein lokaler C-Compiler erkannt. Nuitka wird automatisch eine kompatible MinGW-w64-Toolchain herunterladen und verwalten.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Nuitka-Tipp: Wenn beim ersten Build zum Herunterladen des GCC/MinGW-Compilers aufgefordert wird, stellen Sie bitte eine stabile Netzwerkverbindung sicher.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Alte Venv umbenannt in: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Führe Vorab-Umgebungsprüfungen durch...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwright erkannt. Installiere integrierte Browser (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ erkannt: Verwende Zig-Compiler (--zig) als C-Backend.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+ erkannt: Verwende Zig-Compiler (--zig) als nativen Backend.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Python-Interpreterpfad: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Löse Projektabhängigkeiten auf...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Wiederhole Playwright-Browser-Download über offizielles CDN...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Kompilierung abgeschlossen, Ausgabepfad: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Digitale Signatur erfolgreich angewendet!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] Der Quellcode enthält Syntaxfehler, Kompilierung abgebrochen:\n - Datei: {file}\n - Typ: {type}\n - Zeile: Zeile {line}\n - Detail: {desc}\n\nTipp: Bitte stellen Sie sicher, dass der Quellcode lokal ausgeführt werden kann, bevor Sie ihn verpacken.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Parsen des Quellcodes fehlgeschlagen, Build abgebrochen:\n - Datei: {file}\n - Detail: {desc}\n\nTipp: Dies ist normalerweise kein Fehler des Paketierungstools.\nBitte stellen Sie sicher, dass die ausgewählte [Build-Python-Version] mit der Version übereinstimmt, die Sie zum [Schreiben/Testen des Codes] verwendet haben.\nDie Verwendung neuerer Syntax (z.B. Walross-Operator :=, Typ-Unionen |, match-case) in einer älteren Python-Umgebung löst diesen Fehler aus.\nWir empfehlen, in den [Baueinstellungen] -> [Engine] zur korrekten Python-Version zu wechseln.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Die Syntaxanalyse des Quellcodes ist fehlgeschlagen, Build abgebrochen:\n - Datei: {file}\n - Zeile: Zeile {line}\n - Detail: {desc}\n\nTipp: Dies ist normalerweise KEIN Fehler des Verpackungstools.\nBitte stellen Sie sicher, dass die ausgewählte [Build-Python-Version] mit der Version übereinstimmt, die Sie zum [Schreiben/Testen des Codes] verwendet haben.\nDie Verwendung neuerer Syntax (z. B. Walross-Operator :=, Typ-Unionen |, match-case) in einer älteren Python-Umgebung führt zu diesem Fehler.\nWir empfehlen, unter [Buildeinstellungen] -> [Engine] zur korrekten Python-Version zu wechseln.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] 'multiprocessing'-Modul erkannt. Stellen Sie sicher, dass 'multiprocessing.freeze_support()' unter 'if __name__ == \"__main__\":' aufgerufen wird, um Endlosschleifen (Fork-Bomben) zu verhindern.",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] AST-Analyse-Ausnahme: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Befehlszeitüberschreitung (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] 'requests' oder 'httpx' erkannt. 'certifi'-Zertifikate werden automatisch gebündelt, um SSL-Fehler zu vermeiden.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Löschen der ungültigen Venv fehlgeschlagen, versuche umzubenennen: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Fehler beim Bereinigen der ungültigen Umgebung, Rückgriff auf temporäre Sandbox: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Symbolkonvertierung in .icns fehlgeschlagen, Build ohne Symbol.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Schreiben der Symbolressource blockiert (möglicherweise durch System/Antivirus gesperrt), Fallback-Schutz wird ausgelöst...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Wenig Speicherplatz auf dem Build-Ziellaufwerk erkannt (Verfügbar: {free:.1f} GB, >= 5,0 GB empfohlen). Der Build-Prozess könnte aufgrund von Speichermangel unterbrochen werden.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Niedriger Festplattenspeicher erkannt: {free:.1f} GB verfügbar",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Speicherzuweisungsausnahme abgefangen (ZstdError / OOM). Speicherschutz-Fallback wird ausgelöst: Erneut im Einzelthread-Modus versuchen...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] Paket '{pkg}' konnte nicht installiert werden, wird übersprungen...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Ausnahme bei der Pause-Code-Injektion: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Playwright-Browserinstallation über alle Quellen fehlgeschlagen, Build wird mit Risiko fortgesetzt...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32-Bit) erfordert Visual Studio 2022 mit Windows SDK. Build wird mit der aktuellen Umgebung versucht.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Fallback der Python-Umgebungsinfo-Erkennung: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Warnung beim Lesen von requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Gemeinsames Verzeichnis ungültig, Rückfall auf isolierten Umgebungsmodus.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] Gemeinsames Verzeichnis hat keine Schreibrechte, Rückfall auf isolierten Modus.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] Intelligente Signierung fehlgeschlagen, aber Build-Ausgabe wird beibehalten.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Einige Abhängigkeiten konnten nicht installiert werden, der Build wird mit Risiko fortgesetzt...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Angegebene Versionen konnten nicht installiert werden. Versionsbeschränkungen werden für automatische Kompatibilitätsanpassung entfernt...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Modo detallado",
|
||||
"Directory": "Directorio",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Descubierto mediante escáner ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Espacio en disco críticamente bajo: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "Haga doble clic para editar la ruta de destino; se admite arrastrar y soltar",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Doble clic para editar la ruta de destino; se admite arrastrar y soltar. Use 'Exportar ajustes preestablecidos' para guardar para reutilizar.",
|
||||
"Download New Version": "Descargar nueva versión",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Ocultar consola (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Ocultar configuración de certificados personalizados ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (China)",
|
||||
"Icon file not found: {path}": "Archivo de icono no encontrado: {path}",
|
||||
"Import Name": "Nombre de importación",
|
||||
"Import Preset...": "Importar ajuste preestablecido...",
|
||||
"Import name (e.g. cv2):": "Nombre de importación (p. ej., cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Inspección del intérprete superada: no se detectaron conflictos de backport activos.",
|
||||
"Interpreter:": "Intérprete:",
|
||||
"Invalid syntax": "Sintaxis no válida",
|
||||
"Isolated Environment": "Entorno aislado",
|
||||
"Issues & Feedback": "Problemas y comentarios",
|
||||
"Keep Local Venv": "Conservar venv local",
|
||||
"Later": "Más tarde",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Ubicación de salida",
|
||||
"Output Location:": "Ubicación de salida:",
|
||||
"Output Name:": "Nombre de salida:",
|
||||
"Output directory not writable: {error}": "Directorio de salida sin permisos de escritura: {error}",
|
||||
"Package Map": "Mapa de paquetes",
|
||||
"Package Mapping & Remediation": "Mapeo y corrección de paquetes",
|
||||
"Package Mappings & Rules": "Mapeos y reglas de paquetes",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Empaquetado de Python, reinventado.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python instalado. Por favor, reinicie QPyPack manualmente más tarde.",
|
||||
"Python interpreter not found: {path}": "Intérprete de Python no encontrado: {path}",
|
||||
"QPyPack Developer": "Desarrollador de QPyPack",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack es una herramienta gratuita y de código abierto. Si ha mejorado su eficiencia o resuelto problemas de empaquetado, ¡considere invitar al autor a un café!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM críticamente baja: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "Listo, esperando la compilación.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Motivo: MinGW64 ya no es compatible con Python 3.13+. Asegúrese de que Zig o VS 2022 esté instalado.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Motivo: Python 3.11+ requiere Visual Studio 2022 (MSVC 14.3) con Windows SDK.",
|
||||
"Rebuild": "Recompilar",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Recomendación: 6+ caracteres, alfanumérico, solo '-' y '_'. Evite espacios o chino para prevenir errores de firma.",
|
||||
"Remediate Detected Conflicts": "Remediar Conflictos Detectados",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Archivo de Requisitos:",
|
||||
"Reset": "Restablecer",
|
||||
"Reset to Default Config": "Restablecer a Configuración Predeterminada",
|
||||
"Resource not found: {path}": "Recurso no encontrado: {path}",
|
||||
"Resources": "Recursos",
|
||||
"Restore Defaults": "Restaurar Predeterminados",
|
||||
"Save & Return": "Guardar y Volver",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Escanear Carpeta Completa",
|
||||
"Scanning...": "Escaneando...",
|
||||
"Script and settings retained. Ready to rebuild.": "Script y configuración conservados. Listo para recompilar.",
|
||||
"Script file is locked by cloud sync": "El archivo de script está bloqueado por la sincronización en la nube",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Script cargado. Puede arrastrar carpetas de activos o archivos de datos directamente aquí para incluirlos.",
|
||||
"Select .pfx / .p12 certificate file": "Seleccionar archivo de certificado .pfx / .p12",
|
||||
"Select All": "Seleccionar Todo",
|
||||
"Select Python Version to Download:": "Seleccionar Versión de Python para Descargar:",
|
||||
"Select shared directory...": "Seleccionar directorio compartido...",
|
||||
"Self-Signed Certificate (*.pfx)": "Certificado Autofirmado (*.pfx)",
|
||||
"Shared Environment": "Entorno compartido",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Nombre del entorno compartido (opcional, dejar vacío para aislado)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Tamaño de salida más pequeño. Recomendado para el 95% de aplicaciones estándar.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Solución:\n1. En Configuración de compilación, cambie al motor [PyInstaller] (Recomendado).\n2. O instale Visual Studio 2022 con soporte para C++.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Solución:\n1. Instale Visual Studio 2022 (marque 'Desarrollo de escritorio con C++' y 'Windows SDK').\n2. O cambie el motor a [PyInstaller] en Configuración de compilación.",
|
||||
"Sound Notification": "Notificación de Sonido",
|
||||
"Source Directory (.qpypack_build)": "Directorio de Origen (.qpypack_build)",
|
||||
"Source File Directory": "Directorio de Archivos de Origen",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Espacio en disco insuficiente (Disponible: {free:.1f} GB). Se requieren al menos 0.5 GB para inicializar de forma segura el entorno de compilación.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] El directorio de salida no tiene permisos de escritura: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] ¡Primero cargue un archivo de código fuente de Python válido!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Falló la verificación previa al vuelo:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Error en el formato del archivo de ajustes preestablecidos o archivo corrupto: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Error de proceso: falta el comando o binario ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] La transferencia del producto falló, el archivo podría estar ocupado por el proceso del sistema o carecer de permisos: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] El archivo de destino está bloqueado o cifrado por el disco en la nube. Por favor, descifre e intente de nuevo.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] El archivo de destino está en ejecución u ocupado. Por favor, cierre la aplicación existente e intente de nuevo.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] El archivo de icono especificado no existe: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] No se pudo limpiar el entorno virtual inválido:\n Ruta: {path}\n Error: {error}\n\nElimine manualmente el directorio o desmarque 'Mantener venv local' y reintente.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Falló la compilación: la versión del compilador C++ es incompatible.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Requisito del compilador para Python 3.13+.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] ¡La compilación se interrumpió excepcionalmente!\n\nSolución de problemas común:\n1. Desajuste de entorno (más común): La versión de Python seleccionada es incompatible con su código fuente. Vaya a [Configuración de compilación] para cambiar a la versión de Python que usa normalmente para este código.\n2. Dependencias faltantes: Haga clic en 'Modo detallado' arriba para verificar ModuleNotFoundError.\n3. Bloqueo de antivirus: Asegúrese de que su software de seguridad no esté bloqueando el proceso de compilación.\n\n(Nota: Esto suele deberse a discrepancias entre el entorno y el código, no al motor de empaquetado en sí. Consulte el registro detallado para conocer las razones exactas.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] La compilación se interrumpió con excepciones, haga clic en 'Modo detallado' arriba de la ventana de registro para solucionar problemas.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] Se agregó '{name}' a Recursos adicionales.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Creando entorno virtual...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Descargando navegadores de Playwright vía espejo: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Evaluando memoria física del sistema (Disponible: {ram:.1f} GB). Concurrencia adaptativa ajustada: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Se encontró un entorno compatible con MSVC + Windows SDK, usando compilador nativo.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Entorno Clang local encontrado, priorizando compilador LLVM Clang.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Entorno GCC/MinGW-w64 local encontrado, usando compilador MinGW64.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Entorno MSVC local encontrado, priorizando compilador C++ nativo.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Inicializando entorno de compilación aislado...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Instalando entorno de compilación y dependencias del proyecto ({count} paquetes): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Modo ligero habilitado, aplicando optimización de bytecode (-OO) y eliminando módulos de desarrollo...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+ no detectado. Nuitka usará/descargará la cadena de herramientas MinGW64 (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] No se detectó compilador C local. Nuitka descargará y gestionará automáticamente un kit de herramientas MinGW-w64 compatible.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Consejo de Nuitka: Si se le solicita descargar el compilador GCC/MinGW en la primera compilación, asegúrese de tener una conexión de red estable.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] El venv antiguo se renombró a: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Realizando comprobaciones previas del entorno...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwright detectado. Instalando navegadores integrados (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ detectado: Usando compilador Zig (--zig) como backend C.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+ detectado: usando compilador Zig (--zig) como backend nativo.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Ruta del intérprete de Python: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Resolviendo dependencias del proyecto...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Reintentando descarga del navegador de Playwright vía CDN oficial...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Compilación completada, ruta de salida: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] ¡Firma digital aplicada correctamente!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] El código fuente contiene errores de sintaxis, compilación abortada:\n - Archivo: {file}\n - Tipo: {type}\n - Línea: Línea {line}\n - Detalle: {desc}\n\nConsejo: Asegúrese de que el código fuente se ejecute localmente antes de empaquetar.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Falló el análisis de sintaxis del código fuente, compilación abortada:\n - Archivo: {file}\n - Detalle: {desc}\n\nConsejo: Esto generalmente NO es un fallo de la herramienta de empaquetado.\nAsegúrese de que la [Versión de Python de compilación] seleccionada coincida con la versión que usó para [Escribir/Probar el código].\nUsar sintaxis más nueva (por ejemplo, operador morsa :=, uniones de tipos |, match-case) en un entorno Python más antiguo provocará este error.\nRecomendamos ir a [Configuración de compilación] -> [Motor] para cambiar a la versión correcta de Python.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Falló el análisis de sintaxis del código fuente, compilación abortada:\n - Archivo: {file}\n - Línea: Línea {line}\n - Detalle: {desc}\n\nConsejo: Esto generalmente NO es un fallo de la herramienta de empaquetado.\nAsegúrese de que la [Versión de Python de compilación] seleccionada coincida con la versión que usó para [Escribir/Probar el código].\nEl uso de sintaxis más nueva (por ejemplo, operador morsa :=, uniones de tipos |, match-case) en un entorno Python más antiguo provocará este error.\nRecomendamos ir a [Configuración de compilación] -> [Motor] para cambiar a la versión correcta de Python.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] Módulo 'multiprocessing' detectado. Asegúrese de que 'multiprocessing.freeze_support()' se llame dentro de 'if __name__ == \"__main__\":' para evitar bucles infinitos de procesos (fork bombs).",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] Excepción de análisis AST: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Tiempo de espera del comando agotado (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] Se detectó 'requests' o 'httpx'. Se incluirán automáticamente los certificados 'certifi' para evitar errores SSL.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Falló la eliminación del venv inválido, intentando renombrar: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Falló la purga del entorno no válido, se recurre a un sandbox temporal: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Falló la conversión del icono a .icns, se compila sin icono.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Escritura de recursos de icono bloqueada (posiblemente bloqueada por el sistema/antivirus), activando protección de respaldo...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Espacio en disco bajo detectado en la unidad de destino de compilación (Disponible: {free:.1f} GB, se recomienda >= 5.0 GB). El proceso de compilación puede interrumpirse debido al agotamiento del disco.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Espacio en disco bajo detectado: {free:.1f} GB disponibles",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Excepción de asignación de memoria capturada (ZstdError / OOM). Activando protección de memoria: Reintentando en modo de un solo hilo...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] El paquete '{pkg}' no se pudo instalar, omitiendo...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Excepción de inyección de código de pausa: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] La instalación del navegador Playwright falló en todas las fuentes, la compilación continuará con riesgo...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32 bits) requiere Visual Studio 2022 con Windows SDK. La compilación intentará con el entorno actual.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Detección de información del entorno Python falló, se usa respaldo: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Advertencia al leer requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Directorio compartido inválido, volviendo al modo de entorno aislado.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] El directorio compartido carece de permisos de escritura, volviendo al modo aislado.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] La firma inteligente falló, pero se conserva el resultado de la compilación.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Algunas dependencias no se pudieron instalar, la compilación continuará con riesgo...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Las versiones especificadas no se pudieron instalar. Eliminando restricciones de versión para compatibilidad automática...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Mode détaillé",
|
||||
"Directory": "Répertoire",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Découvert via le scanner ({count}) : {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Espace disque critique : {free:.1f} Go < {min:.1f} Go",
|
||||
"Double-click to edit target path; Drag & drop supported": "Double-cliquez pour modifier le chemin cible ; glisser-déposer pris en charge",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Double-cliquez pour modifier le chemin cible ; glisser-déposer pris en charge. Utilisez 'Exporter la préréglage' pour enregistrer pour réutilisation.",
|
||||
"Download New Version": "Télécharger la nouvelle version",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Masquer la console (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Masquer les paramètres de certificat personnalisés ▾",
|
||||
"Huawei Cloud (China)": "Cloud Huawei (Chine)",
|
||||
"Icon file not found: {path}": "Fichier d'icône introuvable : {path}",
|
||||
"Import Name": "Nom d'importation",
|
||||
"Import Preset...": "Importer un préréglage...",
|
||||
"Import name (e.g. cv2):": "Nom d'importation (ex. cv2) :",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Inspection de l'interpréteur réussie : aucun conflit de rétroportage actif détecté.",
|
||||
"Interpreter:": "Interpréteur :",
|
||||
"Invalid syntax": "Syntaxe invalide",
|
||||
"Isolated Environment": "Environnement isolé",
|
||||
"Issues & Feedback": "Problèmes et commentaires",
|
||||
"Keep Local Venv": "Conserver l'environnement virtuel local",
|
||||
"Later": "Plus tard",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Emplacement de sortie",
|
||||
"Output Location:": "Emplacement de sortie :",
|
||||
"Output Name:": "Nom de sortie :",
|
||||
"Output directory not writable: {error}": "Répertoire de sortie non inscriptible : {error}",
|
||||
"Package Map": "Carte des packages",
|
||||
"Package Mapping & Remediation": "Mappage et correction des packages",
|
||||
"Package Mappings & Rules": "Mappages et règles de packages",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Empaquetage Python, réinventé.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python installé. Veuillez redémarrer QPyPack manuellement plus tard.",
|
||||
"Python interpreter not found: {path}": "Interpréteur Python introuvable : {path}",
|
||||
"QPyPack Developer": "Développeur QPyPack",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack est un outil gratuit et open-source. S'il a amélioré votre efficacité ou résolu des problèmes d'empaquetage, envisagez d'offrir un café à l'auteur !",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM critique : {free:.1f} Go < 1 Go",
|
||||
"Ready, waiting for build.": "Prêt, en attente de construction.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Raison : MinGW64 n'est plus pris en charge sur Python 3.13+. Veuillez vous assurer que Zig ou VS 2022 est installé.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Raison : Python 3.11+ nécessite Visual Studio 2022 (MSVC 14.3) avec le SDK Windows.",
|
||||
"Rebuild": "Reconstruire",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Recommandation : 6+ caractères, alphanumériques, '-' et '_' uniquement. Évitez les espaces ou le chinois pour prévenir les erreurs de signature.",
|
||||
"Remediate Detected Conflicts": "Corriger les conflits détectés",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Fichier d'exigences :",
|
||||
"Reset": "Réinitialiser",
|
||||
"Reset to Default Config": "Réinitialiser à la configuration par défaut",
|
||||
"Resource not found: {path}": "Ressource introuvable : {path}",
|
||||
"Resources": "Ressources",
|
||||
"Restore Defaults": "Restaurer les valeurs par défaut",
|
||||
"Save & Return": "Enregistrer et retourner",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Analyser tout le dossier",
|
||||
"Scanning...": "Analyse en cours...",
|
||||
"Script and settings retained. Ready to rebuild.": "Script et paramètres conservés. Prêt à reconstruire.",
|
||||
"Script file is locked by cloud sync": "Le fichier de script est verrouillé par la synchronisation cloud",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Script chargé. Vous pouvez glisser des dossiers d'actifs ou des fichiers de données directement ici pour les regrouper.",
|
||||
"Select .pfx / .p12 certificate file": "Sélectionner le fichier de certificat .pfx / .p12",
|
||||
"Select All": "Tout sélectionner",
|
||||
"Select Python Version to Download:": "Sélectionner la version de Python à télécharger :",
|
||||
"Select shared directory...": "Sélectionner le répertoire partagé...",
|
||||
"Self-Signed Certificate (*.pfx)": "Certificat auto-signé (*.pfx)",
|
||||
"Shared Environment": "Environnement partagé",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Nom de l'environnement partagé (facultatif, laisser vide pour isolé)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Taille de sortie plus petite. Recommandé pour 95% des applications standard.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Solution :\n1. Dans les paramètres de build, passez au moteur [PyInstaller] (recommandé).\n2. Ou installez Visual Studio 2022 avec le support C++.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Solution :\n1. Installez Visual Studio 2022 (cochez 'Développement Desktop en C++' et 'SDK Windows').\n2. Ou passez le moteur à [PyInstaller] dans les paramètres de build.",
|
||||
"Sound Notification": "Notification sonore",
|
||||
"Source Directory (.qpypack_build)": "Répertoire source (.qpypack_build)",
|
||||
"Source File Directory": "Répertoire du fichier source",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Espace disque insuffisant (Disponible : {free:.1f} Go). Au moins 0,5 Go est requis pour initialiser en toute sécurité l'environnement de construction.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] Le répertoire de sortie n'a pas les permissions d'écriture : {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Veuillez d'abord charger un fichier source Python valide !",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Échec de la vérification préalable :",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Erreur de format du fichier de préréglage ou fichier corrompu : {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Erreur de processus : commande ou binaire manquant ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Échec du transfert du produit, le fichier pourrait être occupé par un processus système ou manquer de permissions : {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] Le fichier cible est verrouillé ou chiffré par un lecteur cloud. Veuillez le déchiffrer et réessayer.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] Le fichier cible est en cours d'exécution ou occupé. Veuillez fermer l'application existante et réessayer.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] Le fichier d'icône spécifié n'existe pas : {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Impossible de nettoyer l'environnement virtuel invalide :\n Chemin : {path}\n Erreur : {error}\n\nVeuillez supprimer manuellement le répertoire ou décocher 'Garder le venv local' et réessayer.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Échec du build : version du compilateur C++ incompatible.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Exigence du compilateur Python 3.13+.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Construction interrompue de manière exceptionnelle !\n\nDépannage courant :\n1. Incompatibilité d'environnement (la plus courante) : La version Python sélectionnée est incompatible avec votre code source. Veuillez aller dans [Paramètres de construction] pour passer à la version Python que vous utilisez normalement pour ce code.\n2. Dépendances manquantes : Cliquez sur 'Mode détaillé' ci-dessus pour vérifier les ModuleNotFoundError.\n3. Blocage antivirus : Assurez-vous que votre logiciel de sécurité ne bloque pas le processus de construction.\n\n(Remarque : Cela est généralement causé par des écarts entre l'environnement/le code plutôt que par le moteur d'empaquetage lui-même. Veuillez consulter le journal détaillé pour connaître les raisons exactes.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Compilation interrompue avec des exceptions, veuillez cliquer sur 'Mode détaillé' au-dessus de la fenêtre de journal pour le dépannage.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] '{name}' ajouté aux ressources supplémentaires.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Création de l'environnement virtuel...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Téléchargement des navigateurs Playwright via miroir : {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Évaluation de la mémoire physique du système (Disponible : {ram:.1f} Go). Concurrence adaptative ajustée : {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Environnement MSVC + SDK Windows compatible trouvé, utilisation du compilateur natif.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Environnement Clang local trouvé, priorité au compilateur LLVM Clang.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Environnement GCC/MinGW-w64 local trouvé, utilisation du compilateur MinGW64.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Environnement MSVC local trouvé, priorité au compilateur C++ natif.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Initialisation de l'environnement de construction isolé...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Installation de l'environnement de construction et des dépendances du projet ({count} paquets) : {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Mode léger activé, application de l'optimisation du bytecode (-OO) et suppression des modules de développement...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+ non détecté. Nuitka utilisera/téléchargera la chaîne d'outils MinGW64 (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Aucun compilateur C local détecté. Nuitka téléchargera et gérera automatiquement une chaîne d'outils MinGW-w64 compatible.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Astuce Nuitka : Si vous êtes invité à télécharger le compilateur GCC/MinGW lors de la première construction, assurez-vous d'avoir une connexion réseau stable.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Ancien venv renommé en : {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Exécution des vérifications préalables de l'environnement...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwright détecté. Installation des navigateurs intégrés (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ détecté : Utilisation du compilateur Zig (--zig) comme backend C.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+ détecté : utilisation du compilateur Zig (--zig) comme backend natif.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Chemin de l'interpréteur Python : {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Résolution des dépendances du projet...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Nouvelle tentative de téléchargement du navigateur Playwright via le CDN officiel...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Compilation terminée, chemin de sortie : {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Signature numérique appliquée avec succès !",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] Le code source contient des erreurs de syntaxe, compilation interrompue :\n - Fichier : {file}\n - Type : {type}\n - Ligne : Ligne {line}\n - Détail : {desc}\n\nAstuce : Veuillez vous assurer que le code source s'exécute localement avant l'empaquetage.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] L'analyse syntaxique du code source a échoué, build interrompu :\n - Fichier : {file}\n - Détail : {desc}\n\nAstuce : Ce n'est généralement pas une faute de l'outil d'empaquetage.\nAssurez-vous que la [Version Python de build] sélectionnée correspond à celle utilisée pour [Écrire/Tester le code].\nL'utilisation d'une syntaxe plus récente (par exemple, opérateur morse :=, unions de types |, match-case) dans un environnement Python plus ancien déclenchera cette erreur.\nNous recommandons d'aller dans [Paramètres de build] -> [Moteur] pour passer à la version Python correcte.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] L'analyse syntaxique du code source a échoué, construction interrompue :\n - Fichier : {file}\n - Ligne : Ligne {line}\n - Détail : {desc}\n\nAstuce : Ce n'est généralement PAS une faute de l'outil d'empaquetage.\nVeuillez vous assurer que la [Version Python de construction] que vous avez sélectionnée correspond à celle utilisée pour [Écrire/Tester le code].\nL'utilisation d'une syntaxe plus récente (par exemple, l'opérateur morse :=, les unions de types |, match-case) dans un environnement Python plus ancien déclenchera cette erreur.\nNous recommandons d'aller dans [Paramètres de construction] -> [Moteur] pour passer à la version Python correcte.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] Module 'multiprocessing' détecté. Assurez-vous que 'multiprocessing.freeze_support()' est appelé sous 'if __name__ == \"__main__\":' pour éviter les boucles de processus infinies (bombes de fork).",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] Exception d'analyse AST : {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Délai d'attente de la commande dépassé (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] Détection de 'requests' ou 'httpx'. Regroupement automatique des certificats 'certifi' pour éviter les erreurs SSL.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Échec de la suppression du venv invalide, tentative de renommage : {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Échec de la purge de l'environnement invalide, repli sur un bac à sable temporaire : {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] La conversion de l'icône en .icns a échoué, construction sans icône.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] L'écriture de la ressource d'icône a été bloquée (peut-être verrouillée par le système/antivirus), déclenchement de la protection de repli...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Espace disque faible détecté sur le lecteur cible de construction (Disponible : {free:.1f} Go, >= 5,0 Go recommandé). Le processus de construction peut être interrompu en raison de l'épuisement du disque.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Espace disque faible détecté : {free:.1f} Go disponibles",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Exception d'allocation mémoire interceptée (ZstdError / OOM). Déclenchement du repli de protection mémoire : Nouvelle tentative en mode mono-thread...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] Le paquet '{pkg}' n'a pas pu être installé, ignoré...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Exception d'injection de code de pause : {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] L'installation du navigateur Playwright a échoué sur toutes les sources, la construction se poursuivra avec risque...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32 bits) nécessite Visual Studio 2022 avec le SDK Windows. Le build tentera avec l'environnement actuel.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Repli de détection des informations d'environnement Python : {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Avertissement de lecture de requirements.txt : {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Répertoire partagé invalide, bascule en mode environnement isolé.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] Le répertoire partagé manque de permissions d'écriture, bascule en mode isolé.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] La signature intelligente a échoué, mais la sortie de construction est conservée.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Certaines dépendances n'ont pas pu être installées, la construction se poursuivra avec un risque...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Les versions spécifiées n'ont pas pu être installées. Suppression des contraintes de version pour une compatibilité automatique...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Modalità dettagliata",
|
||||
"Directory": "Directory",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Scoperte tramite scanner ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Spazio su disco criticamente basso: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "Doppio clic per modificare il percorso di destinazione; trascinamento supportato",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Fare doppio clic per modificare il percorso di destinazione; supportato il trascinamento. Usa 'Esporta preimpostazione' per salvare per riutilizzo.",
|
||||
"Download New Version": "Scarica nuova versione",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Nascondi console (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Nascondi impostazioni certificati personalizzati ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (Cina)",
|
||||
"Icon file not found: {path}": "File icona non trovato: {path}",
|
||||
"Import Name": "Nome importazione",
|
||||
"Import Preset...": "Importa preset...",
|
||||
"Import name (e.g. cv2):": "Nome importazione (es. cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Ispezione interprete superata: nessun conflitto di backport attivo rilevato.",
|
||||
"Interpreter:": "Interprete:",
|
||||
"Invalid syntax": "Sintassi non valida",
|
||||
"Isolated Environment": "Ambiente isolato",
|
||||
"Issues & Feedback": "Problemi e feedback",
|
||||
"Keep Local Venv": "Mantieni venv locale",
|
||||
"Later": "Più tardi",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Posizione di output",
|
||||
"Output Location:": "Posizione di output:",
|
||||
"Output Name:": "Nome di output:",
|
||||
"Output directory not writable: {error}": "Directory di output non scrivibile: {error}",
|
||||
"Package Map": "Mappa dei pacchetti",
|
||||
"Package Mapping & Remediation": "Mappatura e correzione dei pacchetti",
|
||||
"Package Mappings & Rules": "Mappature e regole dei pacchetti",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Impacchettamento Python, reinventato.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python installato. Riavviare QPyPack manualmente più tardi.",
|
||||
"Python interpreter not found: {path}": "Interprete Python non trovato: {path}",
|
||||
"QPyPack Developer": "Sviluppatore QPyPack",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack è uno strumento gratuito e open-source. Se ha migliorato la tua efficienza o risolto problemi di packaging, considera di offrire un caffè all'autore!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM criticamente bassa: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "Pronto, in attesa di build.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Motivo: MinGW64 non è più supportato su Python 3.13+. Assicurati che Zig o VS 2022 sia installato.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Motivo: Python 3.11+ richiede Visual Studio 2022 (MSVC 14.3) con Windows SDK.",
|
||||
"Rebuild": "Ricompila",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Consiglio: 6+ caratteri, alfanumerici, solo '-' e '_'. Evita spazi o cinese per prevenire errori di firma.",
|
||||
"Remediate Detected Conflicts": "Rimedio ai Conflitti Rilevati",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "File dei Requisiti:",
|
||||
"Reset": "Reimposta",
|
||||
"Reset to Default Config": "Reimposta alla Configurazione Predefinita",
|
||||
"Resource not found: {path}": "Risorsa non trovata: {path}",
|
||||
"Resources": "Risorse",
|
||||
"Restore Defaults": "Ripristina Predefiniti",
|
||||
"Save & Return": "Salva e Torna",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Scansiona Intera Cartella",
|
||||
"Scanning...": "Scansione in corso...",
|
||||
"Script and settings retained. Ready to rebuild.": "Script e impostazioni mantenuti. Pronto per la ricompilazione.",
|
||||
"Script file is locked by cloud sync": "Il file script è bloccato dalla sincronizzazione cloud",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Script caricato. Puoi trascinare qui direttamente le cartelle di asset o i file di dati per includerli.",
|
||||
"Select .pfx / .p12 certificate file": "Seleziona file certificato .pfx / .p12",
|
||||
"Select All": "Seleziona Tutto",
|
||||
"Select Python Version to Download:": "Seleziona Versione Python da Scaricare:",
|
||||
"Select shared directory...": "Seleziona directory condivisa...",
|
||||
"Self-Signed Certificate (*.pfx)": "Certificato Auto-Firmato (*.pfx)",
|
||||
"Shared Environment": "Ambiente condiviso",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Nome ambiente condiviso (opzionale, lascia vuoto per isolato)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Dimensione output ridotta. Consigliato per il 95% delle app standard.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Soluzione:\n1. In Impostazioni di build, passa al motore [PyInstaller] (Consigliato).\n2. Oppure installa Visual Studio 2022 con supporto C++.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Soluzione:\n1. Installa Visual Studio 2022 (Seleziona 'Sviluppo desktop con C++' e 'Windows SDK').\n2. Oppure passa al motore [PyInstaller] in Impostazioni di build.",
|
||||
"Sound Notification": "Notifica Sonora",
|
||||
"Source Directory (.qpypack_build)": "Directory Sorgente (.qpypack_build)",
|
||||
"Source File Directory": "Directory File Sorgente",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Spazio su disco insufficiente (Disponibile: {free:.1f} GB). Sono necessari almeno 0,5 GB per inizializzare in sicurezza l'ambiente di build.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] La directory di output non ha i permessi di scrittura: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Caricare prima un file sorgente Python valido!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Controllo preliminare fallito:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Errore nel formato del file predefinito o file corrotto: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Errore di processo: comando o binario mancante ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Trasferimento del prodotto non riuscito, il file potrebbe essere occupato da un processo di sistema o mancare di permessi: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] Il file di destinazione è bloccato o crittografato dal cloud drive. Decrittografare e riprovare.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] Il file di destinazione è in esecuzione o occupato. Chiudere l'applicazione esistente e riprovare.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] Il file icona specificato non esiste: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Impossibile pulire l'ambiente virtuale non valido:\n Percorso: {path}\n Errore: {error}\n\nElimina manualmente la directory o deseleziona 'Mantieni venv locale' e riprova.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Build fallita: versione del compilatore C++ incompatibile.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Requisito compilatore Python 3.13+.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Build interrotta in modo anomalo!\n\nRisoluzione dei problemi comune:\n1. Discrepanza dell'ambiente (più comune): la versione di Python selezionata è incompatibile con il codice sorgente. Andare su [Impostazioni di build] per passare alla versione di Python normalmente utilizzata per questo codice.\n2. Dipendenze mancanti: fare clic su 'Modalità dettagliata' sopra per verificare ModuleNotFoundError.\n3. Blocco antivirus: assicurarsi che il software di sicurezza non blocchi il processo di build.\n\n(Nota: di solito è causato da discrepanze ambiente/codice piuttosto che dal motore di packaging stesso. Controllare il log dettagliato per i motivi esatti.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Compilazione interrotta con eccezioni, fare clic su 'Modalità dettagliata' sopra la finestra del log per la risoluzione dei problemi.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] Aggiunto '{name}' alle risorse aggiuntive.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Creazione ambiente virtuale...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Download dei browser Playwright tramite mirror: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Valutazione della memoria fisica di sistema (Disponibile: {ram:.1f} GB). Concorrenza adattiva regolata: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Trovato ambiente MSVC + Windows SDK compatibile, uso del compilatore nativo.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Trovato ambiente Clang locale, priorità al compilatore LLVM Clang.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Trovato ambiente GCC/MinGW-w64 locale, utilizzo del compilatore MinGW64.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Trovato ambiente MSVC locale, priorità al compilatore C++ nativo.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Inizializzazione ambiente di build isolato...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Installazione dell'ambiente di build e delle dipendenze del progetto ({count} pacchetti): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Modalità Lite attivata, applicazione ottimizzazione bytecode (-OO) e rimozione moduli di sviluppo...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+ non rilevato. Nuitka userà/scaricherà la toolchain MinGW64 (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Nessun compilatore C locale rilevato. Nuitka scaricherà e gestirà automaticamente una toolchain MinGW-w64 compatibile.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Suggerimento Nuitka: Se al primo build viene richiesto di scaricare il compilatore GCC/MinGW, assicurarsi di avere una connessione di rete stabile.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Vecchio venv rinominato in: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Esecuzione controlli ambientali preliminari...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwright rilevato. Installazione dei browser integrati (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ rilevato: utilizzo del compilatore Zig (--zig) come backend C.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+ rilevato: uso del compilatore Zig (--zig) come backend nativo.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Percorso interprete Python: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Risoluzione delle dipendenze del progetto...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Nuovo tentativo di download dei browser Playwright tramite CDN ufficiale...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Compilazione completata, percorso di output: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Firma digitale applicata con successo!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] Il codice sorgente contiene errori di sintassi, compilazione interrotta:\n - File: {file}\n - Tipo: {type}\n - Riga: Riga {line}\n - Dettaglio: {desc}\n\nSuggerimento: assicurarsi che il codice sorgente venga eseguito localmente prima dell'impacchettamento.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Analisi della sintassi del codice sorgente fallita, build interrotta:\n - File: {file}\n - Dettaglio: {desc}\n\nSuggerimento: Di solito NON è un difetto dello strumento di packaging.\nAssicurati che la [Versione Python di build] selezionata corrisponda alla versione usata per [Scrivere/Testare il codice].\nL'uso di sintassi più recente (es. operatore tricheco :=, unioni di tipi |, match-case) in un ambiente Python più vecchio attiverà questo errore.\nTi consigliamo di andare in [Impostazioni di build] -> [Motore] per passare alla versione Python corretta.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Analisi della sintassi del codice sorgente non riuscita, build interrotta:\n - File: {file}\n - Riga: Riga {line}\n - Dettaglio: {desc}\n\nSuggerimento: di solito NON è un difetto dello strumento di impacchettamento.\nAssicurarsi che la [Versione Python di build] selezionata corrisponda alla versione utilizzata per [Scrivere/Testare il codice].\nL'uso di sintassi più recente (ad esempio operatore tricheco :=, unioni di tipi |, match-case) in un ambiente Python più vecchio attiverà questo errore.\nSi consiglia di andare su [Impostazioni di build] -> [Motore] per passare alla versione Python corretta.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] Modulo 'multiprocessing' rilevato. Assicurarsi che 'multiprocessing.freeze_support()' venga chiamato sotto 'if __name__ == \"__main__\":' per prevenire cicli di processo infiniti (fork bomb).",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] Eccezione durante l'analisi AST: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Timeout del comando (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] Rilevati 'requests' o 'httpx'. Inclusione automatica dei certificati 'certifi' per prevenire errori SSL.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Impossibile eliminare il venv non valido, tentativo di rinominare: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Impossibile eliminare l'ambiente non valido, ripiego su sandbox temporanea: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Conversione dell'icona in .icns non riuscita, build senza icona.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Scrittura della risorsa icona bloccata (possibilmente bloccata dal sistema/antivirus), attivazione della protezione di fallback...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Spazio su disco insufficiente rilevato sull'unità di destinazione della build (Disponibile: {free:.1f} GB, >= 5.0 GB consigliato). Il processo di build potrebbe interrompersi a causa dell'esaurimento del disco.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Spazio su disco basso rilevato: {free:.1f} GB disponibili",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Eccezione di allocazione memoria rilevata (ZstdError / OOM). Attivazione del fallback di protezione memoria: nuovo tentativo in modalità single-thread...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] Pacchetto '{pkg}' non installato, salto...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Eccezione durante l'iniezione del codice di pausa: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Installazione del browser Playwright non riuscita da tutte le fonti, la build procederà con rischio...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32-bit) richiede Visual Studio 2022 con Windows SDK. La build tenterà con l'ambiente corrente.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Fallback rilevamento informazioni ambiente Python: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Avviso lettura requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Directory condivisa non valida, passaggio alla modalità ambiente isolato.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] La directory condivisa non ha permessi di scrittura, passaggio alla modalità isolata.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] Firma intelligente non riuscita, ma l'output della build è conservato.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Alcune dipendenze non sono riuscite a installarsi, la build procederà con rischio...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Le versioni specificate non sono riuscite a installarsi. Rimozione dei vincoli di versione per la corrispondenza automatica di compatibilità...",
|
||||
|
||||
@@ -86,6 +86,7 @@
|
||||
"Detailed Mode": "詳細モード",
|
||||
"Directory": "ディレクトリ",
|
||||
"Discovered via scanner ({count}): {pkgs}": "スキャナーで検出({count}):{pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "ディスク容量が不足しています: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "ダブルクリックでターゲットパスを編集;ドラッグ&ドロップ対応",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "ターゲットパスを編集するにはダブルクリック、ドラッグ&ドロップも対応しています。再利用するには「プリセットをエクスポート」を使用してください。",
|
||||
"Download New Version": "新しいバージョンをダウンロード",
|
||||
@@ -119,6 +120,7 @@
|
||||
"Hide Console (--noconsole)": "コンソールを非表示 (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "カスタム証明書設定を隠す ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (中国)",
|
||||
"Icon file not found: {path}": "アイコンファイルが見つかりません: {path}",
|
||||
"Import Name": "インポート名",
|
||||
"Import Preset...": "プリセットをインポート...",
|
||||
"Import name (e.g. cv2):": "インポート名(例: cv2):",
|
||||
@@ -131,6 +133,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "インタープリター検査に合格: アクティブなバックポート競合は検出されませんでした。",
|
||||
"Interpreter:": "インタープリター:",
|
||||
"Invalid syntax": "無効な構文",
|
||||
"Isolated Environment": "分離環境",
|
||||
"Issues & Feedback": "問題とフィードバック",
|
||||
"Keep Local Venv": "ローカル Venv を保持",
|
||||
"Later": "後で",
|
||||
@@ -171,6 +174,7 @@
|
||||
"Output Location": "出力場所",
|
||||
"Output Location:": "出力場所::",
|
||||
"Output Name:": "出力名::",
|
||||
"Output directory not writable: {error}": "出力ディレクトリに書き込めません: {error}",
|
||||
"Package Map": "パッケージマップ",
|
||||
"Package Mapping & Remediation": "パッケージマッピングと修復",
|
||||
"Package Mappings & Rules": "パッケージマッピングとルール",
|
||||
@@ -209,9 +213,13 @@
|
||||
"Python Packaging, Reimagined.": "Pythonパッケージング、再考。",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python がインストールされました。後で QPyPack を手動で再起動してください。",
|
||||
"Python interpreter not found: {path}": "Pythonインタープリタが見つかりません: {path}",
|
||||
"QPyPack Developer": "QPyPack 開発者",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack は無料のオープンソースツールです。効率が向上したり、パッケージングの問題が解決した場合は、作者にコーヒーを一杯ごちそうすることを検討してください!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAMが不足しています: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "準備完了、ビルド待機中。",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "理由: MinGW64はPython 3.13+ではサポートされなくなりました。ZigまたはVS 2022がインストールされていることを確認してください。",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "理由: Python 3.11+にはVisual Studio 2022(MSVC 14.3)とWindows SDKが必要です。",
|
||||
"Rebuild": "再ビルド",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "推奨: 6文字以上、英数字、'-' と '_' のみ。スペースや日本語を避けて、署名エラーを防ぎます。",
|
||||
"Remediate Detected Conflicts": "検出された競合を修正",
|
||||
@@ -220,6 +228,7 @@
|
||||
"Requirements File:": "要件ファイル:",
|
||||
"Reset": "リセット",
|
||||
"Reset to Default Config": "デフォルト設定にリセット",
|
||||
"Resource not found: {path}": "リソースが見つかりません: {path}",
|
||||
"Resources": "リソース",
|
||||
"Restore Defaults": "デフォルトに戻す",
|
||||
"Save & Return": "保存して戻る",
|
||||
@@ -227,12 +236,18 @@
|
||||
"Scan Entire Folder": "フォルダ全体をスキャン",
|
||||
"Scanning...": "スキャン中...",
|
||||
"Script and settings retained. Ready to rebuild.": "スクリプトと設定は保持されています。再ビルドの準備ができました。",
|
||||
"Script file is locked by cloud sync": "スクリプトファイルがクラウド同期によってロックされています",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "スクリプトが読み込まれました。アセットフォルダやデータファイルをここに直接ドラッグしてバンドルできます。",
|
||||
"Select .pfx / .p12 certificate file": ".pfx / .p12 証明書ファイルを選択",
|
||||
"Select All": "すべて選択",
|
||||
"Select Python Version to Download:": "ダウンロードする Python バージョンを選択:",
|
||||
"Select shared directory...": "共有ディレクトリを選択...",
|
||||
"Self-Signed Certificate (*.pfx)": "自己署名証明書 (*.pfx)",
|
||||
"Shared Environment": "共有環境",
|
||||
"Shared environment name (optional, leave empty for isolated)": "共有環境名(任意、分離の場合は空のまま)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "出力サイズが小さくなります。標準アプリの95%に推奨されます。",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "解決策:\n1. ビルド設定で[PyInstaller]エンジンに切り替えてください(推奨)。\n2. または、C++サポート付きのVisual Studio 2022をインストールしてください。",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "解決策:\n1. Visual Studio 2022をインストールしてください(「C++によるデスクトップ開発」と「Windows SDK」をチェック)。\n2. または、ビルド設定でエンジンを[PyInstaller]に切り替えてください。",
|
||||
"Sound Notification": "サウンド通知",
|
||||
"Source Directory (.qpypack_build)": "ソースディレクトリ (.qpypack_build)",
|
||||
"Source File Directory": "ソースファイルディレクトリ",
|
||||
@@ -284,6 +299,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] ディスク容量が不足しています (利用可能: {free:.1f} GB)。ビルド環境を安全に初期化するには少なくとも0.5 GB必要です。",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] 出力ディレクトリに書き込み権限がありません: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] 最初に有効なPythonソースファイルを読み込んでください!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] 事前チェックに失敗しました:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] プリセットファイルの形式エラーまたは破損: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] プロセスエラー: コマンドまたはバイナリが見つかりません ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] 製品の転送に失敗しました。ファイルがシステムプロセスによって占有されているか、権限がない可能性があります: {error}",
|
||||
@@ -294,6 +310,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] ターゲットファイルがクラウドドライブによってロックまたは暗号化されています。復号化して再試行してください。",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] ターゲットファイルが実行中または占有されています。既存のアプリケーションを閉じて再試行してください。",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] 指定されたアイコンファイルが存在しません: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] 無効な仮想環境をクリーンアップできませんでした:\n パス: {path}\n エラー: {error}\n\nディレクトリを手動で削除するか、「ローカルvenvを保持」のチェックを外して再試行してください。",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] ビルドに失敗しました: C++コンパイラのバージョンが互換性がありません。",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Python 3.13+のコンパイラ要件。",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] ビルドが例外により中断されました!\n\n一般的なトラブルシューティング:\n1. 環境の不一致 (最も一般的): 選択したPythonバージョンがソースコードと互換性がありません。[ビルド設定] に移動して、このコードで通常使用するPythonバージョンに切り替えてください。\n2. 依存関係の欠落: 上記の「詳細モード」をクリックして、ModuleNotFoundErrorを確認してください。\n3. ウイルス対策によるブロック: セキュリティソフトウェアがビルドプロセスをブロックしていないことを確認してください。\n\n(注: これは通常、パッケージングエンジン自体ではなく、環境/コードの不一致が原因です。正確な理由については詳細ログを確認してください。)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] コンパイルが例外により中断されました。ログウィンドウの上にある「詳細モード」をクリックしてトラブルシューティングしてください。",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] '{name}' を追加リソースに追加しました。",
|
||||
@@ -310,6 +329,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] 仮想環境を作成中...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] ミラーからPlaywrightブラウザをダウンロード中: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] システムの物理メモリを評価中 (利用可能: {ram:.1f} GB)。適応的並行性を調整しました: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] 互換性のあるMSVC + Windows SDK環境が見つかりました。ネイティブコンパイラを使用します。",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] ローカルのClang環境を検出しました。LLVM Clangコンパイラを優先します。",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] ローカルのGCC/MinGW-w64環境を検出しました。MinGW64コンパイラを使用します。",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] ローカルのMSVC環境を検出しました。ネイティブC++コンパイラを優先します。",
|
||||
@@ -318,11 +338,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] 分離されたビルド環境を初期化中...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] ビルド環境とプロジェクトの依存関係をインストール中 ({count} パッケージ): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] ライトモードが有効です。バイトコード最適化 (-OO) を適用し、開発モジュールを削除しています...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+が検出されませんでした。NuitkaはMinGW64ツールチェーンを使用/ダウンロードします(Python {v})。",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] ローカルのCコンパイラが検出されませんでした。Nuitkaが互換性のあるMinGW-w64ツールチェーンを自動的にダウンロードして管理します。",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Nuitkaのヒント: 初回ビルド時にGCC/MinGWコンパイラのダウンロードを求められた場合は、安定したネットワーク接続を確保してください。",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] 古いvenvは次の名前に変更されました: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] 事前環境チェックを実行中...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwrightが検出されました。組み込みブラウザをインストール中 (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ が検出されました: CバックエンドとしてZigコンパイラ (--zig) を使用します。",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+が検出されました: Zigコンパイラ(--zig)をネイティブバックエンドとして使用します。",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Pythonインタープリタのパス: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] プロジェクトの依存関係を解決中...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] 公式CDNからPlaywrightブラウザのダウンロードを再試行中...",
|
||||
@@ -341,21 +364,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] コンパイルが完了しました。出力パス: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] デジタル署名が正常に適用されました!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] ソースコードに構文エラーが含まれているため、コンパイルを中止しました:\n - ファイル: {file}\n - 種類: {type}\n - 行: {line}行目\n - 詳細: {desc}\n\nヒント: パッケージ化する前に、ソースコードがローカルで実行できることを確認してください。",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] ソースコードの構文解析に失敗しました。ビルドを中止します:\n - ファイル: {file}\n - 詳細: {desc}\n\nヒント: これは通常、パッケージングツールの欠陥ではありません。\n選択した[ビルドPythonバージョン]が、コードの[記述/テスト]に使用したバージョンと一致していることを確認してください。\n新しい構文(例: セイウチ演算子 :=、型ユニオン |、match-case)を古いPython環境で使用すると、このエラーが発生します。\n[ビルド設定] -> [エンジン]で正しいPythonバージョンに切り替えることをお勧めします。",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] ソースコードの構文解析に失敗したため、ビルドを中止しました:\n - ファイル: {file}\n - 行: {line}行目\n - 詳細: {desc}\n\nヒント: これは通常、パッケージ化ツールの欠陥ではありません。\n選択した[ビルドPythonバージョン]が、コードの[作成/テスト]に使用したバージョンと一致していることを確認してください。\n古いPython環境で新しい構文(例: セイウチ演算子 :=、型ユニオン |、match-case)を使用すると、このエラーが発生します。\n[ビルド設定] -> [エンジン]で正しいPythonバージョンに切り替えることをお勧めします。",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] 'multiprocessing'モジュールが検出されました。無限プロセスループ(フォーク爆弾)を防ぐために、'if __name__ == \"__main__\":'の下で'multiprocessing.freeze_support()'を呼び出してください。",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] AST解析例外: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] コマンドがタイムアウトしました (> {timeout}秒)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] 'requests'または'httpx'が検出されました。SSLエラーを防ぐために'certifi'証明書を自動的にバンドルしています。",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] 無効なvenvの削除に失敗しました。名前を変更しようとしています: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] 無効な環境のパージに失敗したため、一時サンドボックスにフォールバックします: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] アイコンの.icnsへの変換に失敗したため、アイコンなしでビルドします。",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] アイコンリソースの書き込みがブロックされました(システムまたはアンチウイルスによってロックされている可能性があります)。フォールバック保護をトリガーしています...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] ビルド先ドライブの空き容量が少ないです(利用可能: {free:.1f} GB、5.0 GB以上推奨)。ディスク不足によりビルドプロセスが中断される可能性があります。",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] ディスク容量が不足しています: {free:.1f} GB利用可能",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] メモリ割り当て例外をキャッチしました(ZstdError / OOM)。メモリ保護フォールバックをトリガーしています: シングルスレッドモードで再試行しています...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] パッケージ '{pkg}' のインストールに失敗したため、スキップしています...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] 一時停止コードの注入例外: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Playwrightブラウザのインストールがすべてのソースで失敗したため、リスクを伴ってビルドを続行します...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+(32ビット)にはVisual Studio 2022とWindows SDKが必要です。現在の環境でビルドを試みます。",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Python環境情報の検出フォールバック: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] requirements.txtの読み取り警告: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] 共有ディレクトリが無効なため、隔離環境モードにフォールバックします。",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] 共有ディレクトリに書き込み権限がないため、隔離モードにフォールバックします。",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] スマート署名に失敗しましたが、ビルド出力は保持されます。",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] 一部の依存関係のインストールに失敗しました。リスクを伴ってビルドを続行します...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] 指定されたバージョンのインストールに失敗しました。自動互換性マッチングのためバージョン制約を削除しています...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "상세 모드",
|
||||
"Directory": "디렉터리",
|
||||
"Discovered via scanner ({count}): {pkgs}": "스캐너를 통해 발견됨 ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "디스크 공간이 매우 부족합니다: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "대상 경로를 편집하려면 두 번 클릭하세요. 끌어서 놓기 지원됨",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "대상 경로를 편집하려면 더블클릭하세요. 드래그 앤 드롭도 지원됩니다. 재사용을 위해 '내보내기 사전 설정'을 사용하세요.",
|
||||
"Download New Version": "새 버전 다운로드",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "콘솔 숨기기 (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "사용자 지정 인증서 설정 숨기기 ▾",
|
||||
"Huawei Cloud (China)": "화웨이 클라우드 (중국)",
|
||||
"Icon file not found: {path}": "아이콘 파일을 찾을 수 없습니다: {path}",
|
||||
"Import Name": "가져오기 이름",
|
||||
"Import Preset...": "사전 설정 가져오기...",
|
||||
"Import name (e.g. cv2):": "가져오기 이름 (예: cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "인터프리터 검사 통과: 활성 백포트 충돌이 감지되지 않았습니다.",
|
||||
"Interpreter:": "인터프리터:",
|
||||
"Invalid syntax": "잘못된 구문",
|
||||
"Isolated Environment": "격리된 환경",
|
||||
"Issues & Feedback": "문제 및 피드백",
|
||||
"Keep Local Venv": "로컬 가상 환경 유지",
|
||||
"Later": "나중에",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "출력 위치",
|
||||
"Output Location:": "출력 위치:",
|
||||
"Output Name:": "출력 이름:",
|
||||
"Output directory not writable: {error}": "출력 디렉터리에 쓸 수 없습니다: {error}",
|
||||
"Package Map": "패키지 맵",
|
||||
"Package Mapping & Remediation": "패키지 매핑 및 수정",
|
||||
"Package Mappings & Rules": "패키지 매핑 및 규칙",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Python 패키징, 재창조.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python이 설치되었습니다. 나중에 QPyPack을 수동으로 다시 시작하세요.",
|
||||
"Python interpreter not found: {path}": "Python 인터프리터를 찾을 수 없습니다: {path}",
|
||||
"QPyPack Developer": "QPyPack 개발자",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack은 무료 오픈소스 도구입니다. 효율성을 높이거나 패키징 문제를 해결했다면, 작성자에게 커피 한 잔 사주는 건 어떨까요!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM이 매우 부족합니다: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "준비 완료, 빌드 대기 중.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "이유: MinGW64는 Python 3.13+에서 더 이상 지원되지 않습니다. Zig 또는 VS 2022가 설치되어 있는지 확인하세요.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "이유: Python 3.11+에는 Windows SDK가 포함된 Visual Studio 2022(MSVC 14.3)가 필요합니다.",
|
||||
"Rebuild": "다시 빌드",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "권장: 6자 이상, 영숫자, '-' 및 '_'만 사용. 공백이나 중국어를 피하여 서명 오류를 방지하세요.",
|
||||
"Remediate Detected Conflicts": "감지된 충돌 해결",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "요구 사항 파일:",
|
||||
"Reset": "초기화",
|
||||
"Reset to Default Config": "기본 구성으로 재설정",
|
||||
"Resource not found: {path}": "리소스를 찾을 수 없습니다: {path}",
|
||||
"Resources": "리소스",
|
||||
"Restore Defaults": "기본값 복원",
|
||||
"Save & Return": "저장 및 돌아가기",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "전체 폴더 스캔",
|
||||
"Scanning...": "스캔 중...",
|
||||
"Script and settings retained. Ready to rebuild.": "스크립트 및 설정이 유지되었습니다. 다시 빌드할 준비가 되었습니다.",
|
||||
"Script file is locked by cloud sync": "스크립트 파일이 클라우드 동기화에 의해 잠겨 있습니다",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "스크립트가 로드되었습니다. 에셋 폴더나 데이터 파일을 여기에 직접 끌어다 놓아 번들할 수 있습니다.",
|
||||
"Select .pfx / .p12 certificate file": ".pfx / .p12 인증서 파일 선택",
|
||||
"Select All": "모두 선택",
|
||||
"Select Python Version to Download:": "다운로드할 Python 버전 선택:",
|
||||
"Select shared directory...": "공유 디렉터리 선택...",
|
||||
"Self-Signed Certificate (*.pfx)": "자체 서명 인증서 (*.pfx)",
|
||||
"Shared Environment": "공유 환경",
|
||||
"Shared environment name (optional, leave empty for isolated)": "공유 환경 이름(선택 사항, 비워두면 격리됨)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "더 작은 출력 크기. 표준 앱의 95%에 권장됩니다.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "해결 방법:\n1. 빌드 설정에서 [PyInstaller] 엔진으로 전환하세요(권장).\n2. 또는 C++ 지원과 함께 Visual Studio 2022를 설치하세요.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "해결 방법:\n1. Visual Studio 2022를 설치하세요('C++를 사용한 데스크톱 개발' 및 'Windows SDK' 확인).\n2. 또는 빌드 설정에서 엔진을 [PyInstaller]로 전환하세요.",
|
||||
"Sound Notification": "소리 알림",
|
||||
"Source Directory (.qpypack_build)": "소스 디렉터리 (.qpypack_build)",
|
||||
"Source File Directory": "소스 파일 디렉터리",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] 디스크 공간 부족(사용 가능: {free:.1f} GB). 빌드 환경을 안전하게 초기화하려면 최소 0.5GB가 필요합니다.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] 출력 디렉터리에 쓰기 권한이 없음: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] 먼저 유효한 Python 소스 파일을 로드하세요!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] 사전 점검 실패:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] 프리셋 파일 형식 오류 또는 손상: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] 프로세스 오류: 명령 또는 바이너리 누락({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] 제품 전송 실패, 파일이 시스템 프로세스에 의해 사용 중이거나 권한이 없을 수 있습니다: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] 대상 파일이 클라우드 드라이브에 의해 잠겨 있거나 암호화되어 있습니다. 암호를 해독하고 다시 시도하세요.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] 대상 파일이 실행 중이거나 사용 중입니다. 기존 응용 프로그램을 닫고 다시 시도하세요.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] 지정된 아이콘 파일이 존재하지 않음: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] 잘못된 가상 환경을 정리할 수 없습니다:\n 경로: {path}\n 오류: {error}\n\n디렉터리를 수동으로 삭제하거나 '로컬 Venv 유지'를 선택 해제하고 다시 시도하세요.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] 빌드 실패: C++ 컴파일러 버전이 호환되지 않습니다.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Python 3.13+ 컴파일러 요구 사항.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] 빌드가 예외적으로 중단되었습니다!\n\n일반적인 문제 해결:\n1. 환경 불일치(가장 일반적): 선택한 Python 버전이 소스 코드와 호환되지 않습니다. [빌드 설정]으로 이동하여 이 코드에 일반적으로 사용하는 Python 버전으로 전환하세요.\n2. 누락된 종속성: 위의 '상세 모드'를 클릭하여 ModuleNotFoundError를 확인하세요.\n3. 바이러스 백신 차단: 보안 소프트웨어가 빌드 프로세스를 차단하지 않는지 확인하세요.\n\n(참고: 이는 일반적으로 패키징 엔진 자체보다는 환경/코드 불일치로 인해 발생합니다. 정확한 이유는 상세 로그를 확인하세요.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] 컴파일이 예외로 중단되었습니다. 문제 해결을 위해 로그 창 위의 '상세 모드'를 클릭하세요.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] '{name}'을(를) 추가 리소스에 추가했습니다.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] 가상 환경을 만드는 중...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] 미러를 통해 Playwright 브라우저를 다운로드하는 중: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] 시스템 물리 메모리를 평가하는 중 (사용 가능: {ram:.1f} GB). 적응형 동시성 조정: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] 호환되는 MSVC + Windows SDK 환경을 찾았습니다. 네이티브 컴파일러를 사용합니다.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] 로컬 Clang 환경을 찾았습니다. LLVM Clang 컴파일러를 우선 사용합니다.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] 로컬 GCC/MinGW-w64 환경을 찾았습니다. MinGW64 컴파일러를 사용합니다.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] 로컬 MSVC 환경을 찾았습니다. 네이티브 C++ 컴파일러를 우선 사용합니다.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] 격리된 빌드 환경을 초기화하는 중...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] 빌드 환경 및 프로젝트 종속성을 설치하는 중 ({count}개 패키지): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] 라이트 모드가 활성화되어 바이트코드 최적화(-OO) 및 개발 모듈 제거를 적용하는 중...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+가 감지되지 않았습니다. Nuitka는 MinGW64 툴체인을 사용/다운로드합니다(Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] 로컬 C 컴파일러가 감지되지 않았습니다. Nuitka가 호환되는 MinGW-w64 툴체인을 자동으로 다운로드하고 관리합니다.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Nuitka 팁: 첫 빌드 시 GCC/MinGW 컴파일러 다운로드가 요청되면 안정적인 네트워크 연결을 확인하세요.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] 이전 venv가 다음 이름으로 변경되었습니다: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] 사전 환경 점검을 수행하는 중...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwright가 감지되었습니다. 내장 브라우저를 설치하는 중 (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ 감지: C 백엔드로 Zig 컴파일러(--zig)를 사용합니다.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+ 감지: Zig 컴파일러(--zig)를 네이티브 백엔드로 사용합니다.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Python 인터프리터 경로: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] 프로젝트 종속성을 해결하는 중...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] 공식 CDN을 통해 Playwright 브라우저 다운로드를 재시도하는 중...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] 컴파일 완료, 출력 경로: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] 디지털 서명이 성공적으로 적용되었습니다!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] 소스 코드에 구문 오류가 있어 컴파일이 중단되었습니다:\n - 파일: {file}\n - 유형: {type}\n - 줄: {line}번째 줄\n - 세부 정보: {desc}\n\n팁: 패키징 전에 소스 코드가 로컬에서 실행되는지 확인하세요.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] 소스 코드 구문 분석에 실패하여 빌드가 중단되었습니다:\n - 파일: {file}\n - 세부 정보: {desc}\n\n팁: 이는 일반적으로 패키징 도구의 문제가 아닙니다.\n선택한 [빌드 Python 버전]이 코드를 [작성/테스트]할 때 사용한 버전과 일치하는지 확인하세요.\n이전 Python 환경에서 최신 구문(예: 바다코끼리 연산자 :=, 타입 유니온 |, match-case)을 사용하면 이 오류가 발생합니다.\n[빌드 설정] -> [엔진]으로 이동하여 올바른 Python 버전으로 전환하는 것이 좋습니다.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] 소스 코드 구문 분석에 실패하여 빌드가 중단되었습니다:\n - 파일: {file}\n - 줄: {line}번째 줄\n - 세부 정보: {desc}\n\n팁: 이는 일반적으로 패키징 도구의 문제가 아닙니다.\n선택한 [빌드 Python 버전]이 코드를 [작성/테스트]할 때 사용한 버전과 일치하는지 확인하세요.\n이전 Python 환경에서 최신 구문(예: 바다코끼리 연산자 :=, 타입 유니온 |, match-case)을 사용하면 이 오류가 발생합니다.\n[빌드 설정] -> [엔진]에서 올바른 Python 버전으로 전환하는 것을 권장합니다.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] 'multiprocessing' 모듈이 감지되었습니다. 무한 프로세스 루프(포크 폭탄)를 방지하려면 'if __name__ == \"__main__\":' 아래에서 'multiprocessing.freeze_support()'를 호출하세요.",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] AST 분석 예외: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] 명령 시간 초과(>{timeout}초)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] 'requests' 또는 'httpx'가 감지되었습니다. SSL 오류를 방지하기 위해 'certifi' 인증서를 자동으로 번들링합니다.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] 잘못된 venv를 삭제하지 못해 이름을 변경하려고 시도합니다: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] 잘못된 환경을 제거하지 못해 임시 샌드박스로 대체합니다: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] .icns 아이콘 변환에 실패하여 아이콘 없이 빌드합니다.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] 아이콘 리소스 쓰기가 차단되어(시스템/백신에 의해 잠겼을 수 있음) 대체 보호를 트리거합니다...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] 빌드 대상 드라이브의 디스크 공간이 부족합니다(사용 가능: {free:.1f} GB, 5.0 GB 이상 권장). 디스크 부족으로 빌드 프로세스가 중단될 수 있습니다.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] 낮은 디스크 공간 감지: {free:.1f} GB 사용 가능",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] 메모리 할당 예외가 발생했습니다(ZstdError / OOM). 메모리 보호 대체를 트리거합니다: 단일 스레드 모드로 재시도 중...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] 패키지 '{pkg}' 설치에 실패하여 건너뜁니다...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] 일시 중지 코드 주입 예외: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] 모든 소스에서 Playwright 브라우저 설치에 실패하여 위험을 감수하고 빌드를 진행합니다...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32비트)에는 Windows SDK가 포함된 Visual Studio 2022가 필요합니다. 현재 환경으로 빌드를 시도합니다.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Python 환경 정보 감지 대체: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] requirements.txt 읽기 경고: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] 공유 디렉터리가 유효하지 않아 격리된 환경 모드로 전환합니다.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] 공유 디렉터리에 쓰기 권한이 없어 격리된 모드로 전환합니다.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] 스마트 서명에 실패했지만 빌드 출력은 유지됩니다.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] 일부 종속성이 설치에 실패하여 위험을 감수하고 빌드를 진행합니다...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] 지정된 버전 설치에 실패했습니다. 자동 호환성 매칭을 위해 버전 제약 조건을 제거합니다...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Gedetailleerde modus",
|
||||
"Directory": "Map",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Gevonden via scanner ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Schijfruimte kritiek laag: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "Dubbelklik om doelpad te bewerken; slepen en neerzetten ondersteund",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Dubbelklik om doelpad te bewerken; Slepen en neerzetten ondersteund. Gebruik 'Exporteer Voorinstelling' om op te slaan voor hergebruik.",
|
||||
"Download New Version": "Nieuwe versie downloaden",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Console verbergen (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Aangepaste certificaatinstellingen verbergen ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (China)",
|
||||
"Icon file not found: {path}": "Pictogrambestand niet gevonden: {path}",
|
||||
"Import Name": "Importnaam",
|
||||
"Import Preset...": "Preset importeren...",
|
||||
"Import name (e.g. cv2):": "Importnaam (bijv. cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Interpreterinspectie geslaagd: geen actieve backport-conflicten gedetecteerd.",
|
||||
"Interpreter:": "Interpreter:",
|
||||
"Invalid syntax": "Ongeldige syntaxis",
|
||||
"Isolated Environment": "Geïsoleerde omgeving",
|
||||
"Issues & Feedback": "Problemen en feedback",
|
||||
"Keep Local Venv": "Lokale venv behouden",
|
||||
"Later": "Later",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Uitvoerlocatie",
|
||||
"Output Location:": "Uitvoerlocatie:",
|
||||
"Output Name:": "Uitvoernaam:",
|
||||
"Output directory not writable: {error}": "Uitvoermap niet beschrijfbaar: {error}",
|
||||
"Package Map": "Pakketkaart",
|
||||
"Package Mapping & Remediation": "Pakkettoewijzing & Herstel",
|
||||
"Package Mappings & Rules": "Pakkettoewijzingen & Regels",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Python-verpakking, opnieuw bedacht.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python geïnstalleerd. Start QPyPack later handmatig opnieuw op.",
|
||||
"Python interpreter not found: {path}": "Python-interpreter niet gevonden: {path}",
|
||||
"QPyPack Developer": "QPyPack Ontwikkelaar",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack is een gratis en open-source tool. Als het uw efficiëntie heeft verbeterd of verpakkingsproblemen heeft opgelost, overweeg dan om de auteur een koffie te kopen!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM kritiek laag: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "Klaar, wachtend op build.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Reden: MinGW64 wordt niet langer ondersteund op Python 3.13+. Zorg ervoor dat Zig of VS 2022 is geïnstalleerd.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Reden: Python 3.11+ vereist Visual Studio 2022 (MSVC 14.3) met Windows SDK.",
|
||||
"Rebuild": "Opnieuw bouwen",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Aanbeveling: 6+ tekens, alfanumeriek, alleen '-' en '_'. Vermijd spaties of Chinees om ondertekeningsfouten te voorkomen.",
|
||||
"Remediate Detected Conflicts": "Gedetecteerde conflicten verhelpen",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Vereistenbestand:",
|
||||
"Reset": "Resetten",
|
||||
"Reset to Default Config": "Reset naar standaardconfiguratie",
|
||||
"Resource not found: {path}": "Bron niet gevonden: {path}",
|
||||
"Resources": "Bronnen",
|
||||
"Restore Defaults": "Standaardwaarden herstellen",
|
||||
"Save & Return": "Opslaan en terugkeren",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Hele map scannen",
|
||||
"Scanning...": "Scannen...",
|
||||
"Script and settings retained. Ready to rebuild.": "Script en instellingen behouden. Klaar om opnieuw te bouwen.",
|
||||
"Script file is locked by cloud sync": "Scriptbestand is vergrendeld door cloud-synchronisatie",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Script geladen. U kunt assetmappen of gegevensbestanden hier direct naartoe slepen om ze te bundelen.",
|
||||
"Select .pfx / .p12 certificate file": "Selecteer .pfx / .p12 certificaatbestand",
|
||||
"Select All": "Alles selecteren",
|
||||
"Select Python Version to Download:": "Selecteer Python-versie om te downloaden:",
|
||||
"Select shared directory...": "Selecteer gedeelde map...",
|
||||
"Self-Signed Certificate (*.pfx)": "Zelfondertekend certificaat (*.pfx)",
|
||||
"Shared Environment": "Gedeelde omgeving",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Naam van gedeelde omgeving (optioneel, leeg laten voor geïsoleerd)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Kleinere uitvoergrootte. Aanbevolen voor 95% van standaardapps.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Oplossing:\n1. Schakel in Bouwinstellingen over naar de [PyInstaller]-engine (aanbevolen).\n2. Of installeer Visual Studio 2022 met C++-ondersteuning.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Oplossing:\n1. Installeer Visual Studio 2022 (vink 'Desktopontwikkeling met C++' en 'Windows SDK' aan).\n2. Of schakel de engine om naar [PyInstaller] in Bouwinstellingen.",
|
||||
"Sound Notification": "Geluidsmelding",
|
||||
"Source Directory (.qpypack_build)": "Bronmap (.qpypack_build)",
|
||||
"Source File Directory": "Bronbestandsmap",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Onvoldoende schijfruimte (Beschikbaar: {free:.1f} GB). Minimaal 0,5 GB is vereist om de buildomgeving veilig te initialiseren.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] Uitvoermap heeft geen schrijfrechten: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Laad eerst een geldig Python-bronbestand!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Pre-flight-controle mislukt:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Fout in presetbestand of bestand is beschadigd: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Procesfout: opdracht of binary ontbreekt ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Productoverdracht mislukt, bestand is mogelijk bezet door systeemproces of heeft onvoldoende rechten: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] Doelbestand is vergrendeld of versleuteld door cloudopslag. Decodeer het bestand en probeer opnieuw.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] Doelbestand wordt uitgevoerd of is bezet. Sluit de bestaande toepassing en probeer opnieuw.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] Het opgegeven pictogrambestand bestaat niet: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Kan ongeldige virtuele omgeving niet opschonen:\n Pad: {path}\n Fout: {error}\n\nVerwijder de map handmatig of schakel 'Lokale venv behouden' uit en probeer opnieuw.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Bouwen mislukt: C++-compilerversie is incompatibel.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Python 3.13+ Compilervereiste.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Build onderbroken met uitzonderingen!\n\nVeelvoorkomende probleemoplossing:\n1. Omgevingsmismatch (meest voorkomend): De geselecteerde Python-versie is incompatibel met uw broncode. Ga naar [Buildinstellingen] om over te schakelen naar de Python-versie die u normaal voor deze code gebruikt.\n2. Ontbrekende afhankelijkheden: Klik op 'Gedetailleerde modus' hierboven om te controleren op ModuleNotFoundError.\n3. Antivirusblokkering: Zorg ervoor dat uw beveiligingssoftware het buildproces niet blokkeert.\n\n(Let op: Dit wordt meestal veroorzaakt door omgevings-/codeverschillen in plaats van de verpakkingsengine zelf. Raadpleeg het gedetailleerde logboek voor exacte redenen.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Compilatie onderbroken met uitzonderingen, klik op 'Gedetailleerde modus' boven het logvenster voor probleemoplossing.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] '{name}' toegevoegd aan extra bronnen.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Virtuele omgeving maken...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Playwright-browsers downloaden via spiegel: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Systeemfysiek geheugen evalueren (Beschikbaar: {ram:.1f} GB). Adaptieve gelijktijdigheid aangepast: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Compatibele MSVC + Windows SDK-omgeving gevonden, gebruik native compiler.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Lokale Clang-omgeving gevonden, prioriteit aan LLVM Clang-compiler.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Lokale GCC/MinGW-w64-omgeving gevonden, MinGW64-compiler gebruiken.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Lokale MSVC-omgeving gevonden, prioriteit aan native C++-compiler.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Geïsoleerde buildomgeving initialiseren...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Buildomgeving en projectafhankelijkheden installeren ({count} pakketten): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Lite-modus ingeschakeld, bytecode-optimalisatie (-OO) toepassen en dev-modules strippen...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+ niet gedetecteerd. Nuitka zal MinGW64-toolchain gebruiken/downloaden (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Geen lokale C-compiler gedetecteerd. Nuitka zal automatisch een compatibele MinGW-w64-toolchain downloaden en beheren.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Nuitka-tip: Als u bij de eerste build wordt gevraagd om GCC/MinGW-compiler te downloaden, zorg dan voor een stabiele netwerkverbinding.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Oude venv hernoemd naar: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Pre-flight-omgevingscontroles uitvoeren...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwright gedetecteerd. Ingebouwde browsers installeren (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ gedetecteerd: Zig-compiler (--zig) gebruiken als C-backend.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+ gedetecteerd: Zig-compiler gebruiken (--zig) als native backend.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Python-interpreterpad: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Projectafhankelijkheden oplossen...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Playwright-browserdownload opnieuw proberen via officiële CDN...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Compilatie voltooid, uitvoerpad: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Digitale handtekening succesvol toegepast!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] Broncode bevat syntaxfouten, compilatie afgebroken:\n - Bestand: {file}\n - Type: {type}\n - Regel: Regel {line}\n - Detail: {desc}\n\nTip: Zorg ervoor dat de broncode lokaal werkt voordat u deze verpakt.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Broncode-syntaxparsing mislukt, bouwen afgebroken:\n - Bestand: {file}\n - Detail: {desc}\n\nTip: Dit is meestal GEEN fout van het verpakkingsprogramma.\nZorg ervoor dat de [Bouw Python-versie] die u selecteert overeenkomt met de versie die u gebruikte om de code te [schrijven/testen].\nHet gebruik van nieuwere syntax (bijv. walrus-operator :=, type-unies |, match-case) in een oudere Python-omgeving zal deze fout veroorzaken.\nWe raden aan om naar [Bouwinstellingen] -> [Engine] te gaan om over te schakelen naar de juiste Python-versie.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Parsen van broncodesyntax mislukt, build afgebroken:\n - Bestand: {file}\n - Regel: Regel {line}\n - Detail: {desc}\n\nTip: Dit is meestal GEEN fout van het verpakkingsprogramma.\nZorg ervoor dat de [Build Python-versie] die u selecteert overeenkomt met de versie die u gebruikte om de code te [schrijven/testen].\nHet gebruik van nieuwere syntax (bijv. walrus-operator :=, type-unies |, match-case) in een oudere Python-omgeving veroorzaakt deze fout.\nWe raden aan om naar [Build-instellingen] -> [Engine] te gaan om over te schakelen naar de juiste Python-versie.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] 'multiprocessing'-module gedetecteerd. Zorg ervoor dat 'multiprocessing.freeze_support()' wordt aangeroepen onder 'if __name__ == \"__main__\":' om oneindige processlussen (fork-bommen) te voorkomen.",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] AST-analyse-uitzondering: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Commandotime-out (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] 'requests' of 'httpx' gedetecteerd. 'certifi'-certificaten automatisch bundelen om SSL-fouten te voorkomen.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Kan ongeldige venv niet verwijderen, probeer te hernoemen: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Ongeldige omgeving niet kunnen opschonen, terugvallen op tijdelijke sandbox: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Pictogramconversie naar .icns mislukt, build zonder pictogram.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Schrijven van pictogramresource geblokkeerd (mogelijk vergrendeld door systeem/antivirus), terugvalbeveiliging activeren...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Weinig schijfruimte gedetecteerd op build-doelschijf (Beschikbaar: {free:.1f} GB, >= 5,0 GB aanbevolen). Buildproces kan worden onderbroken door schijfuitputting.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Weinig schijfruimte gedetecteerd: {free:.1f} GB beschikbaar",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Geheugentoewijzingsuitzondering opgevangen (ZstdError / OOM). Geheugenbeschermingsfallback activeren: Opnieuw proberen in single-thread-modus...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] Pakket '{pkg}' installatie mislukt, overslaan...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Uitzondering bij injectie van pauzecode: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Playwright-browserinstallatie mislukt via alle bronnen, build gaat door met risico...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32-bits) vereist Visual Studio 2022 met Windows SDK. Bouwen zal proberen met de huidige omgeving.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Fallback voor detectie van Python-omgevingsinfo: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Waarschuwing bij lezen van requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Gedeelde map ongeldig, terugvallen op geïsoleerde omgevingsmodus.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] Gedeelde map heeft geen schrijfrechten, terugvallen op geïsoleerde modus.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] Slim ondertekenen mislukt, maar build-uitvoer is behouden.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Sommige afhankelijkheden konden niet worden geïnstalleerd, de build gaat verder met risico...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Opgegeven versies konden niet worden geïnstalleerd. Versiebeperkingen worden verwijderd voor automatische compatibiliteitsmatch...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Tryb szczegółowy",
|
||||
"Directory": "Katalog",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Wykryto przez skaner ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Krytycznie mało miejsca na dysku: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "Kliknij dwukrotnie, aby edytować ścieżkę docelową; obsługiwane przeciąganie i upuszczanie",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Kliknij dwukrotnie, aby edytować ścieżkę docelową; obsługiwane jest przeciąganie i upuszczanie. Użyj 'Eksportuj ustawienia', aby zapisać do ponownego użycia.",
|
||||
"Download New Version": "Pobierz nową wersję",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Ukryj konsolę (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Ukryj ustawienia niestandardowych certyfikatów ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (Chiny)",
|
||||
"Icon file not found: {path}": "Nie znaleziono pliku ikony: {path}",
|
||||
"Import Name": "Nazwa importu",
|
||||
"Import Preset...": "Importuj preset...",
|
||||
"Import name (e.g. cv2):": "Nazwa importu (np. cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Kontrola interpretera zakończona pomyślnie: Nie wykryto aktywnych konfliktów backportów.",
|
||||
"Interpreter:": "Interpreter:",
|
||||
"Invalid syntax": "Nieprawidłowa składnia",
|
||||
"Isolated Environment": "Środowisko izolowane",
|
||||
"Issues & Feedback": "Problemy i opinie",
|
||||
"Keep Local Venv": "Zachowaj lokalne venv",
|
||||
"Later": "Później",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Lokalizacja wyjścia",
|
||||
"Output Location:": "Lokalizacja wyjścia:",
|
||||
"Output Name:": "Nazwa wyjścia:",
|
||||
"Output directory not writable: {error}": "Katalog wyjściowy nie jest zapisywalny: {error}",
|
||||
"Package Map": "Mapa pakietów",
|
||||
"Package Mapping & Remediation": "Mapowanie pakietów i naprawa",
|
||||
"Package Mappings & Rules": "Mapowania pakietów i reguły",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Pakowanie Pythona, na nowo.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python zainstalowany. Uruchom ponownie QPyPack ręcznie później.",
|
||||
"Python interpreter not found: {path}": "Nie znaleziono interpretera Pythona: {path}",
|
||||
"QPyPack Developer": "QPyPack Developer",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack to darmowe narzędzie open-source. Jeśli poprawiło Twoją wydajność lub rozwiązało problemy z pakowaniem, rozważ kupienie autorowi kawy!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "Krytycznie mało pamięci RAM: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "Gotowy, oczekiwanie na budowę.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Powód: MinGW64 nie jest już obsługiwane w Pythonie 3.13+. Upewnij się, że zainstalowano Zig lub VS 2022.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Powód: Python 3.11+ wymaga Visual Studio 2022 (MSVC 14.3) z Windows SDK.",
|
||||
"Rebuild": "Przebuduj",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Zalecenie: 6+ znaków, alfanumeryczne, tylko '-' i '_'. Unikaj spacji lub chińskich znaków, aby zapobiec błędom podpisywania.",
|
||||
"Remediate Detected Conflicts": "Napraw wykryte konflikty",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Plik wymagań:",
|
||||
"Reset": "Resetuj",
|
||||
"Reset to Default Config": "Przywróć domyślną konfigurację",
|
||||
"Resource not found: {path}": "Nie znaleziono zasobu: {path}",
|
||||
"Resources": "Zasoby",
|
||||
"Restore Defaults": "Przywróć domyślne",
|
||||
"Save & Return": "Zapisz i wróć",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Skanuj cały folder",
|
||||
"Scanning...": "Skanowanie...",
|
||||
"Script and settings retained. Ready to rebuild.": "Skrypt i ustawienia zachowane. Gotowy do przebudowy.",
|
||||
"Script file is locked by cloud sync": "Plik skryptu jest zablokowany przez synchronizację w chmurze",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Skrypt załadowany. Możesz przeciągnąć foldery zasobów lub pliki danych bezpośrednio tutaj, aby je spakować.",
|
||||
"Select .pfx / .p12 certificate file": "Wybierz plik certyfikatu .pfx / .p12",
|
||||
"Select All": "Zaznacz wszystko",
|
||||
"Select Python Version to Download:": "Wybierz wersję Pythona do pobrania:",
|
||||
"Select shared directory...": "Wybierz katalog współdzielony...",
|
||||
"Self-Signed Certificate (*.pfx)": "Certyfikat self-signed (*.pfx)",
|
||||
"Shared Environment": "Środowisko współdzielone",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Nazwa środowiska współdzielonego (opcjonalnie, pozostaw puste dla izolowanego)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Mniejszy rozmiar wyjściowy. Zalecane dla 95% standardowych aplikacji.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Rozwiązanie:\n1. W ustawieniach budowania przełącz silnik na [PyInstaller] (zalecane).\n2. Lub zainstaluj Visual Studio 2022 z obsługą C++.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Rozwiązanie:\n1. Zainstaluj Visual Studio 2022 (zaznacz 'Programowanie aplikacji klasycznych w C++' i 'Windows SDK').\n2. Lub przełącz silnik na [PyInstaller] w ustawieniach budowania.",
|
||||
"Sound Notification": "Powiadomienie dźwiękowe",
|
||||
"Source Directory (.qpypack_build)": "Katalog źródłowy (.qpypack_build)",
|
||||
"Source File Directory": "Katalog plików źródłowych",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Za mało miejsca na dysku (dostępne: {free:.1f} GB). Do bezpiecznej inicjalizacji środowiska kompilacji wymagane jest co najmniej 0,5 GB.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] Katalog wyjściowy nie ma uprawnień do zapisu: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Najpierw wczytaj prawidłowy plik źródłowy Pythona!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Kontrola wstępna nie powiodła się:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Błąd formatu pliku ustawień lub plik uszkodzony: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Błąd procesu: brak polecenia lub pliku binarnego ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Transfer produktu nie powiódł się, plik może być zajęty przez proces systemowy lub brak uprawnień: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] Plik docelowy jest zablokowany lub zaszyfrowany przez dysk w chmurze. Odszyfruj go i spróbuj ponownie.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] Plik docelowy jest uruchomiony lub zajęty. Zamknij istniejącą aplikację i spróbuj ponownie.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] Podany plik ikony nie istnieje: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Nie można usunąć nieprawidłowego środowiska wirtualnego:\n Ścieżka: {path}\n Błąd: {error}\n\nProszę ręcznie usunąć katalog lub odznaczyć 'Zachowaj lokalne venv' i spróbować ponownie.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Budowanie nie powiodło się: wersja kompilatora C++ jest niekompatybilna.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Wymagania kompilatora dla Pythona 3.13+.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Kompilacja przerwana z wyjątkiem!\n\nTypowe rozwiązywanie problemów:\n1. Niezgodność środowiska (najczęstsza): Wybrana wersja Pythona jest niezgodna z kodem źródłowym. Przejdź do [Ustawienia kompilacji], aby przełączyć się na wersję Pythona, której zwykle używasz dla tego kodu.\n2. Brakujące zależności: Kliknij 'Tryb szczegółowy' powyżej, aby sprawdzić ModuleNotFoundError.\n3. Blokada antywirusowa: Upewnij się, że oprogramowanie zabezpieczające nie blokuje procesu kompilacji.\n\n(Uwaga: Zwykle jest to spowodowane rozbieżnościami środowiska/kodu, a nie samym silnikiem pakowania. Sprawdź szczegółowy dziennik, aby poznać dokładne przyczyny.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Kompilacja przerwana z wyjątkami, kliknij 'Tryb szczegółowy' powyżej okna dziennika, aby rozwiązać problem.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] Dodano '{name}' do dodatkowych zasobów.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Tworzenie środowiska wirtualnego...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Pobieranie przeglądarek Playwright przez mirror: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Ocena fizycznej pamięci systemu (Dostępne: {ram:.1f} GB). Dostosowano współbieżność adaptacyjnie: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Wykryto kompatybilne środowisko MSVC + Windows SDK, używam natywnego kompilatora.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Znaleziono lokalne środowisko Clang, priorytet dla kompilatora LLVM Clang.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Znaleziono lokalne środowisko GCC/MinGW-w64, używanie kompilatora MinGW64.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Znaleziono lokalne środowisko MSVC, priorytet dla natywnego kompilatora C++.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Inicjalizacja izolowanego środowiska budowania...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Instalowanie środowiska budowania i zależności projektu ({count} pakietów): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Tryb Lite włączony, stosowanie optymalizacji bytecode (-OO) i usuwanie modułów deweloperskich...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] Nie wykryto MSVC 14.3+. Nuitka użyje/pobierze narzędzia MinGW64 (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Nie wykryto lokalnego kompilatora C. Nuitka automatycznie pobierze i zarządza kompatybilnym zestawem narzędzi MinGW-w64.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Wskazówka Nuitka: Jeśli przy pierwszym budowaniu pojawi się monit o pobranie kompilatora GCC/MinGW, upewnij się, że masz stabilne połączenie sieciowe.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Stare venv zostało przemianowane na: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Wykonywanie wstępnych kontroli środowiska...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Wykryto Playwright. Instalowanie wbudowanych przeglądarek (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Wykryto Python 3.13+: Używanie kompilatora Zig (--zig) jako backendu C.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Wykryto Pythona 3.13+: używam kompilatora Zig (--zig) jako natywnego backendu.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Ścieżka interpretera Pythona: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Rozwiązywanie zależności projektu...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Ponawianie pobierania przeglądarek Playwright przez oficjalne CDN...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Kompilacja zakończona, ścieżka wyjściowa: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Podpis cyfrowy zastosowany pomyślnie!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] Kod źródłowy zawiera błędy składni, kompilacja przerwana:\n - Plik: {file}\n - Typ: {type}\n - Linia: Linia {line}\n - Szczegóły: {desc}\n\nWskazówka: Upewnij się, że kod źródłowy działa lokalnie przed pakowaniem.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Analiza składni kodu źródłowego nie powiodła się, budowanie przerwane:\n - Plik: {file}\n - Szczegóły: {desc}\n\nWskazówka: To zwykle NIE jest wina narzędzia do pakowania.\nUpewnij się, że wybrana [Wersja Pythona do budowania] odpowiada wersji, której używasz do [Pisania/Testowania kodu].\nUżycie nowszej składni (np. operator morsa :=, unie typów |, match-case) w starszym środowisku Pythona spowoduje ten błąd.\nZalecamy przejście do [Ustawienia budowania] -> [Silnik], aby przełączyć na właściwą wersję Pythona.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Analiza składni kodu źródłowego nie powiodła się, budowanie przerwane:\n - Plik: {file}\n - Linia: Linia {line}\n - Szczegóły: {desc}\n\nWskazówka: To zwykle NIE jest wina narzędzia do pakowania.\nUpewnij się, że wybrana [Wersja Pythona do budowania] odpowiada wersji użytej do [Pisania/Testowania kodu].\nUżycie nowszej składni (np. operator morsa :=, unie typów |, match-case) w starszym środowisku Python spowoduje ten błąd.\nZalecamy przejście do [Ustawienia budowania] -> [Silnik], aby przełączyć się na właściwą wersję Pythona.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] Wykryto moduł 'multiprocessing'. Upewnij się, że 'multiprocessing.freeze_support()' jest wywoływane w bloku 'if __name__ == \"__main__\":', aby zapobiec nieskończonym pętlom procesów (bomby fork).",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] Wyjątek analizy AST: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Przekroczono limit czasu polecenia (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] Wykryto 'requests' lub 'httpx'. Automatyczne dołączanie certyfikatów 'certifi', aby zapobiec błędom SSL.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Nie udało się usunąć nieprawidłowego venv, próbuję zmienić nazwę: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Nie udało się oczyścić nieprawidłowego środowiska, przełączanie na tymczasowy piaskownicę: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Konwersja ikony do .icns nie powiodła się, budowanie bez ikony.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Zapis zasobu ikony zablokowany (prawdopodobnie zablokowany przez system/antywirus), uruchamianie ochrony awaryjnej...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Wykryto mało miejsca na dysku na dysku docelowym (Dostępne: {free:.1f} GB, zalecane >= 5.0 GB). Proces budowania może zostać przerwany z powodu wyczerpania dysku.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Wykryto mało miejsca na dysku: {free:.1f} GB dostępne",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Przechwycono wyjątek alokacji pamięci (ZstdError / OOM). Uruchamianie ochrony pamięci: Ponawianie w trybie jednowątkowym...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] Pakiet '{pkg}' nie został zainstalowany, pomijanie...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Wyjątek wstrzykiwania kodu pauzy: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Instalacja przeglądarki Playwright nie powiodła się we wszystkich źródłach, budowanie będzie kontynuowane z ryzykiem...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32-bit) wymaga Visual Studio 2022 z Windows SDK. Budowanie zostanie podjęte z bieżącym środowiskiem.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Wykrywanie informacji o środowisku Pythona nie powiodło się: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Ostrzeżenie podczas odczytu requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Katalog współdzielony jest nieprawidłowy, przełączam się na tryb środowiska izolowanego.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] Katalog współdzielony nie ma uprawnień do zapisu, przełączam się na tryb izolowany.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] Inteligentne podpisywanie nie powiodło się, ale plik wyjściowy został zachowany.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Niektóre zależności nie zostały zainstalowane, budowanie będzie kontynuowane z ryzykiem...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Podane wersje nie zostały zainstalowane. Usuwanie ograniczeń wersji w celu automatycznego dopasowania kompatybilności...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Modo Detalhado",
|
||||
"Directory": "Diretório",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Descoberto via scanner ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Espaço em disco criticamente baixo: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "Clique duas vezes para editar o caminho do alvo; arrastar e soltar suportado",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Clique duas vezes para editar o caminho de destino; arrastar e soltar suportado. Use 'Exportar Predefinição' para salvar para reutilização.",
|
||||
"Download New Version": "Baixar Nova Versão",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Ocultar Console (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Ocultar Configurações de Certificado Personalizado ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (China)",
|
||||
"Icon file not found: {path}": "Arquivo de ícone não encontrado: {path}",
|
||||
"Import Name": "Nome da Importação",
|
||||
"Import Preset...": "Importar Predefinição...",
|
||||
"Import name (e.g. cv2):": "Nome da importação (ex.: cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Inspeção do interpretador aprovada: Nenhum conflito de backport ativo detectado.",
|
||||
"Interpreter:": "Interpretador:",
|
||||
"Invalid syntax": "Sintaxe inválida",
|
||||
"Isolated Environment": "Ambiente Isolado",
|
||||
"Issues & Feedback": "Problemas e Feedback",
|
||||
"Keep Local Venv": "Manter Venv Local",
|
||||
"Later": "Depois",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Local de Saída",
|
||||
"Output Location:": "Local de Saída:",
|
||||
"Output Name:": "Nome de Saída:",
|
||||
"Output directory not writable: {error}": "Diretório de saída sem permissão de escrita: {error}",
|
||||
"Package Map": "Mapa de Pacotes",
|
||||
"Package Mapping & Remediation": "Mapeamento e Correção de Pacotes",
|
||||
"Package Mappings & Rules": "Mapeamentos e Regras de Pacotes",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Empacotamento Python, Reinventado.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python instalado. Reinicie o QPyPack manualmente mais tarde.",
|
||||
"Python interpreter not found: {path}": "Interpretador Python não encontrado: {path}",
|
||||
"QPyPack Developer": "Desenvolvedor QPyPack",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack é uma ferramenta gratuita e de código aberto. Se ela melhorou sua eficiência ou resolveu problemas de empacotamento, considere comprar um café para o autor!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM criticamente baixa: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "Pronto, aguardando build.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Motivo: MinGW64 não é mais suportado no Python 3.13+. Certifique-se de que Zig ou VS 2022 esteja instalado.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Motivo: Python 3.11+ requer Visual Studio 2022 (MSVC 14.3) com Windows SDK.",
|
||||
"Rebuild": "Reconstruir",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Recomendação: 6+ caracteres, alfanumérico, apenas '-' e '_'. Evite espaços ou chinês para prevenir erros de assinatura.",
|
||||
"Remediate Detected Conflicts": "Corrigir Conflitos Detectados",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Arquivo de Requisitos:",
|
||||
"Reset": "Redefinir",
|
||||
"Reset to Default Config": "Redefinir para Config Padrão",
|
||||
"Resource not found: {path}": "Recurso não encontrado: {path}",
|
||||
"Resources": "Recursos",
|
||||
"Restore Defaults": "Restaurar Padrões",
|
||||
"Save & Return": "Salvar e Voltar",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Escanear Pasta Inteira",
|
||||
"Scanning...": "Escaneando...",
|
||||
"Script and settings retained. Ready to rebuild.": "Script e configurações mantidos. Pronto para reconstruir.",
|
||||
"Script file is locked by cloud sync": "Arquivo de script bloqueado por sincronização em nuvem",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Script carregado. Você pode arrastar pastas de assets ou arquivos de dados diretamente aqui para empacotá-los.",
|
||||
"Select .pfx / .p12 certificate file": "Selecionar arquivo de certificado .pfx / .p12",
|
||||
"Select All": "Selecionar Tudo",
|
||||
"Select Python Version to Download:": "Selecione a Versão do Python para Baixar:",
|
||||
"Select shared directory...": "Selecionar diretório compartilhado...",
|
||||
"Self-Signed Certificate (*.pfx)": "Certificado Autoassinado (*.pfx)",
|
||||
"Shared Environment": "Ambiente Compartilhado",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Nome do ambiente compartilhado (opcional, deixe vazio para isolado)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Tamanho de saída menor. Recomendado para 95% dos aplicativos padrão.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Solução:\n1. Nas Configurações de Build, mude para o mecanismo [PyInstaller] (Recomendado).\n2. Ou instale o Visual Studio 2022 com suporte a C++.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Solução:\n1. Instale o Visual Studio 2022 (Marque 'Desenvolvimento para desktop com C++' e 'Windows SDK').\n2. Ou mude o mecanismo para [PyInstaller] nas Configurações de Build.",
|
||||
"Sound Notification": "Notificação Sonora",
|
||||
"Source Directory (.qpypack_build)": "Diretório de Origem (.qpypack_build)",
|
||||
"Source File Directory": "Diretório do Arquivo de Origem",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Espaço em disco insuficiente (Disponível: {free:.1f} GB). Pelo menos 0,5 GB é necessário para inicializar com segurança o ambiente de compilação.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] Diretório de saída sem permissões de gravação: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Carregue um arquivo de código-fonte Python válido primeiro!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Verificação pré-voo falhou:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Formato de arquivo de predefinição inválido ou corrompido: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Erro de processo: comando ou binário ausente ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Transferência de produto falhou, o arquivo pode estar ocupado por processo do sistema ou sem permissão: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] O arquivo de destino está bloqueado ou criptografado pelo drive em nuvem. Por favor, descriptografe e tente novamente.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] O arquivo de destino está em execução ou ocupado. Feche o aplicativo existente e tente novamente.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] O arquivo de ícone especificado não existe: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Não foi possível limpar o ambiente virtual inválido:\n Caminho: {path}\n Erro: {error}\n\nExclua manualmente o diretório ou desmarque 'Manter Venv Local' e tente novamente.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Falha no build: versão do compilador C++ incompatível.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Requisito de Compilador para Python 3.13+.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Compilação interrompida excepcionalmente!\n\nSolução de problemas comum:\n1. Incompatibilidade de Ambiente (Mais Comum): A versão do Python selecionada é incompatível com seu código-fonte. Vá para [Configurações de Compilação] para alternar para a versão do Python que você normalmente usa para este código.\n2. Dependências Ausentes: Clique em 'Modo Detalhado' acima para verificar ModuleNotFoundError.\n3. Bloqueio de Antivírus: Certifique-se de que seu software de segurança não está bloqueando o processo de compilação.\n\n(Nota: Isso geralmente é causado por discrepâncias de ambiente/código, não pelo mecanismo de empacotamento em si. Verifique o log detalhado para razões exatas.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Compilação interrompida com exceções, clique em 'Modo Detalhado' acima da janela de log para solução de problemas.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] '{name}' adicionado aos Recursos Adicionais.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Criando ambiente virtual...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Baixando navegadores Playwright via espelho: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Avaliando memória física do sistema (Disponível: {ram:.1f} GB). Concorrência adaptativa ajustada: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Ambiente MSVC + Windows SDK compatível encontrado, usando compilador nativo.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Ambiente Clang local encontrado, priorizando compilador LLVM Clang.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Ambiente GCC/MinGW-w64 local encontrado, usando compilador MinGW64.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Ambiente MSVC local encontrado, priorizando compilador C++ nativo.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Inicializando ambiente de compilação isolado...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Instalando ambiente de compilação e dependências do projeto ({count} pacotes): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Modo leve ativado, aplicando otimização de bytecode (-OO) e removendo módulos de desenvolvimento...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+ não detectado. Nuitka usará/baixará a ferramenta MinGW64 (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Nenhum compilador C local detectado. O Nuitka baixará e gerenciará automaticamente um toolchain MinGW-w64 compatível.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Dica do Nuitka: Se for solicitado o download do compilador GCC/MinGW na primeira compilação, garanta uma conexão de rede estável.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Venv antigo renomeado para: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Executando verificações de ambiente pré-voo...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwright detectado. Instalando navegadores integrados (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ detectado: Usando compilador Zig (--zig) como backend C.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+ detectado: Usando compilador Zig (--zig) como backend nativo.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Caminho do interpretador Python: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Resolvendo dependências do projeto...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Tentando novamente o download do navegador Playwright via CDN oficial...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Compilação concluída, caminho de saída: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Assinatura digital aplicada com sucesso!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] O código-fonte contém erros de sintaxe, compilação abortada:\n - Arquivo: {file}\n - Tipo: {type}\n - Linha: Linha {line}\n - Detalhe: {desc}\n\nDica: Certifique-se de que o código-fonte seja executado localmente antes de empacotar.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Falha na análise de sintaxe do código-fonte, build abortado:\n - Arquivo: {file}\n - Detalhe: {desc}\n\nDica: Isso geralmente NÃO é um defeito da ferramenta de empacotamento.\nCertifique-se de que a [Versão do Python de Build] selecionada corresponde à versão usada para [Escrever/Testar o Código].\nUsar sintaxe mais nova (ex.: operador walrus :=, uniões de tipos |, match-case) em um ambiente Python mais antigo acionará este erro.\nRecomendamos ir para [Configurações de Build] -> [Mecanismo] para mudar para a versão correta do Python.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Falha na análise de sintaxe do código-fonte, compilação abortada:\n - Arquivo: {file}\n - Linha: Linha {line}\n - Detalhe: {desc}\n\nDica: Isso geralmente NÃO é uma falha da ferramenta de empacotamento.\nCertifique-se de que a [Versão do Python de Compilação] selecionada corresponda à versão usada para [Escrever/Testar o Código].\nO uso de sintaxe mais recente (por exemplo, operador walrus :=, uniões de tipos |, match-case) em um ambiente Python mais antigo acionará este erro.\nRecomendamos ir para [Configurações de Compilação] -> [Mecanismo] para alternar para a versão correta do Python.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] Módulo 'multiprocessing' detectado. Certifique-se de que 'multiprocessing.freeze_support()' seja chamado sob 'if __name__ == \"__main__\":' para evitar loops infinitos de processos (fork bombs).",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] Exceção na análise AST: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Tempo limite do comando excedido (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] Detectado 'requests' ou 'httpx'. Agrupando automaticamente certificados 'certifi' para evitar erros SSL.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Falha ao excluir venv inválido, tentando renomear: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Falha ao limpar ambiente inválido, usando sandbox temporário: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Falha na conversão do ícone para .icns, compilando sem ícone.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Gravação do recurso de ícone bloqueada (possivelmente bloqueada pelo sistema/antivírus), acionando proteção de fallback...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Pouco espaço em disco detectado na unidade de destino da compilação (Disponível: {free:.1f} GB, >= 5.0 GB recomendado). O processo de compilação pode ser interrompido devido ao esgotamento do disco.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Espaço em disco baixo detectado: {free:.1f} GB disponíveis",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Exceção de alocação de memória capturada (ZstdError / OOM). Acionando fallback de proteção de memória: Tentando novamente em modo de thread única...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] Falha na instalação do pacote '{pkg}', ignorando...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Exceção na injeção de código de pausa: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Falha na instalação do navegador Playwright em todas as fontes, a compilação continuará com risco...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32 bits) requer Visual Studio 2022 com Windows SDK. O build tentará com o ambiente atual.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Fallback na detecção de informações do ambiente Python: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Aviso ao ler requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Diretório compartilhado inválido, voltando para o modo de ambiente isolado.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] Diretório compartilhado sem permissões de escrita, voltando para o modo isolado.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] Falha na assinatura inteligente, mas a saída da compilação é mantida.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Algumas dependências falharam ao instalar, a compilação prosseguirá com risco...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] As versões especificadas falharam ao instalar. Removendo restrições de versão para correspondência automática de compatibilidade...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Подробный режим",
|
||||
"Directory": "Каталог",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Обнаружено сканером ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Критически мало места на диске: {free:.1f}ГБ < {min:.1f}ГБ",
|
||||
"Double-click to edit target path; Drag & drop supported": "Двойной щелчок для редактирования пути цели; поддерживается перетаскивание",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Дважды щелкните, чтобы изменить целевой путь; поддерживается перетаскивание. Используйте «Экспорт пресета» для сохранения для повторного использования.",
|
||||
"Download New Version": "Скачать новую версию",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Скрыть консоль (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Скрыть настройки пользовательских сертификатов ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (Китай)",
|
||||
"Icon file not found: {path}": "Файл значка не найден: {path}",
|
||||
"Import Name": "Имя импорта",
|
||||
"Import Preset...": "Импортировать пресет...",
|
||||
"Import name (e.g. cv2):": "Имя импорта (например, cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Проверка интерпретатора пройдена: конфликтов обратного переноса не обнаружено.",
|
||||
"Interpreter:": "Интерпретатор:",
|
||||
"Invalid syntax": "Недопустимый синтаксис",
|
||||
"Isolated Environment": "Изолированная среда",
|
||||
"Issues & Feedback": "Проблемы и отзывы",
|
||||
"Keep Local Venv": "Сохранить локальную виртуальную среду",
|
||||
"Later": "Позже",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Расположение вывода",
|
||||
"Output Location:": "Расположение вывода:",
|
||||
"Output Name:": "Имя вывода:",
|
||||
"Output directory not writable: {error}": "Каталог вывода не доступен для записи: {error}",
|
||||
"Package Map": "Карта пакетов",
|
||||
"Package Mapping & Remediation": "Сопоставление пакетов и исправление",
|
||||
"Package Mappings & Rules": "Сопоставления пакетов и правила",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Упаковка Python, переосмысленная.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python установлен. Пожалуйста, перезапустите QPyPack вручную позже.",
|
||||
"Python interpreter not found: {path}": "Интерпретатор Python не найден: {path}",
|
||||
"QPyPack Developer": "Разработчик QPyPack",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack — это бесплатный инструмент с открытым исходным кодом. Если он повысил вашу эффективность или решил проблемы с упаковкой, подумайте о том, чтобы купить автору кофе!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "Критически мало ОЗУ: {free:.1f}ГБ < 1ГБ",
|
||||
"Ready, waiting for build.": "Готово, ожидание сборки.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Причина: MinGW64 больше не поддерживается в Python 3.13+. Убедитесь, что установлен Zig или VS 2022.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Причина: Python 3.11+ требует Visual Studio 2022 (MSVC 14.3) с Windows SDK.",
|
||||
"Rebuild": "Пересобрать",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Рекомендация: 6+ символов, только буквы и цифры, '-' и '_'. Избегайте пробелов или китайских символов, чтобы предотвратить ошибки подписи.",
|
||||
"Remediate Detected Conflicts": "Исправить обнаруженные конфликты",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Файл требований:",
|
||||
"Reset": "Сбросить",
|
||||
"Reset to Default Config": "Сбросить к конфигурации по умолчанию",
|
||||
"Resource not found: {path}": "Ресурс не найден: {path}",
|
||||
"Resources": "Ресурсы",
|
||||
"Restore Defaults": "Восстановить значения по умолчанию",
|
||||
"Save & Return": "Сохранить и вернуться",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Сканировать всю папку",
|
||||
"Scanning...": "Сканирование...",
|
||||
"Script and settings retained. Ready to rebuild.": "Скрипт и настройки сохранены. Готово к пересборке.",
|
||||
"Script file is locked by cloud sync": "Файл сценария заблокирован облачной синхронизацией",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Скрипт загружен. Вы можете перетащить папки с ресурсами или файлы данных прямо сюда, чтобы включить их в пакет.",
|
||||
"Select .pfx / .p12 certificate file": "Выберите файл сертификата .pfx / .p12",
|
||||
"Select All": "Выбрать все",
|
||||
"Select Python Version to Download:": "Выберите версию Python для загрузки:",
|
||||
"Select shared directory...": "Выберите общий каталог...",
|
||||
"Self-Signed Certificate (*.pfx)": "Самозаверяющий сертификат (*.pfx)",
|
||||
"Shared Environment": "Общая среда",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Имя общей среды (необязательно, оставьте пустым для изолированной)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Меньший размер вывода. Рекомендуется для 95% стандартных приложений.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Решение:\n1. В настройках сборки переключитесь на движок [PyInstaller] (рекомендуется).\n2. Или установите Visual Studio 2022 с поддержкой C++.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Решение:\n1. Установите Visual Studio 2022 (отметьте «Разработка классических приложений на C++» и «Windows SDK»).\n2. Или переключите движок на [PyInstaller] в настройках сборки.",
|
||||
"Sound Notification": "Звуковое уведомление",
|
||||
"Source Directory (.qpypack_build)": "Исходный каталог (.qpypack_build)",
|
||||
"Source File Directory": "Каталог исходных файлов",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Недостаточно места на диске (Доступно: {free:.1f} ГБ). Для безопасной инициализации среды сборки требуется не менее 0,5 ГБ.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] В каталоге вывода отсутствуют права на запись: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Сначала загрузите допустимый исходный файл Python!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Предварительная проверка не пройдена:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Ошибка формата файла предустановок или файл поврежден: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Ошибка процесса: команда или двоичный файл отсутствует ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Не удалось передать продукт, файл может быть занят системным процессом или отсутствуют разрешения: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] Целевой файл заблокирован или зашифрован облачным диском. Пожалуйста, расшифруйте и повторите попытку.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] Целевой файл запущен или занят. Пожалуйста, закройте существующее приложение и повторите попытку.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] Указанный файл значка не существует: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Не удалось очистить недействительную виртуальную среду:\n Путь: {path}\n Ошибка: {error}\n\nПожалуйста, удалите каталог вручную или снимите флажок «Сохранить локальную среду» и повторите попытку.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Сборка не удалась: версия компилятора C++ несовместима.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Требование к компилятору для Python 3.13+.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Сборка прервана с исключением!\n\nОбщие рекомендации по устранению неполадок:\n1. Несоответствие среды (наиболее распространенное): выбранная версия Python несовместима с вашим исходным кодом. Перейдите в [Настройки сборки], чтобы переключиться на версию Python, которую вы обычно используете для этого кода.\n2. Отсутствующие зависимости: нажмите «Подробный режим» выше, чтобы проверить ModuleNotFoundError.\n3. Блокировка антивирусом: убедитесь, что ваше антивирусное ПО не блокирует процесс сборки.\n\n(Примечание: Обычно это вызвано несоответствием среды/кода, а не самого механизма упаковки. Пожалуйста, проверьте подробный журнал для точных причин.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Компиляция прервана с исключениями, нажмите «Подробный режим» над окном журнала для устранения неполадок.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] Добавлено '{name}' в дополнительные ресурсы.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Создание виртуального окружения...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Загрузка браузеров Playwright через зеркало: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Оценка физической памяти системы (Доступно: {ram:.1f} ГБ). Адаптивная параллельность скорректирована: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Обнаружена совместимая среда MSVC + Windows SDK, используется собственный компилятор.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Обнаружено локальное окружение Clang, приоритет компилятору LLVM Clang.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Обнаружено локальное окружение GCC/MinGW-w64, используется компилятор MinGW64.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Обнаружено локальное окружение MSVC, приоритет нативному компилятору C++.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Инициализация изолированного окружения сборки...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Установка окружения сборки и зависимостей проекта ({count} пакетов): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Включен облегченный режим, применяется оптимизация байт-кода (-OO) и удаление dev-модулей...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+ не обнаружен. Nuitka будет использовать/загружать набор инструментов MinGW64 (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Локальный компилятор C не обнаружен. Nuitka автоматически загрузит и установит совместимый инструментарий MinGW-w64.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Совет Nuitka: Если при первой сборке появится запрос на загрузку компилятора GCC/MinGW, убедитесь в стабильном сетевом соединении.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Старая виртуальная среда переименована в: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Выполнение предварительных проверок окружения...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Обнаружен Playwright. Установка встроенных браузеров (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Обнаружен Python 3.13+: используется компилятор Zig (--zig) в качестве C-бэкенда.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Обнаружен Python 3.13+: используется компилятор Zig (--zig) в качестве собственного бэкенда.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Путь к интерпретатору Python: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Разрешение зависимостей проекта...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Повторная попытка загрузки браузеров Playwright через официальный CDN...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Компиляция завершена, путь вывода: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Цифровая подпись успешно применена!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] Исходный код содержит синтаксические ошибки, компиляция прервана:\n - Файл: {file}\n - Тип: {type}\n - Строка: строка {line}\n - Подробности: {desc}\n\nСовет. Убедитесь, что исходный код запускается локально перед упаковкой.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Не удалось выполнить синтаксический анализ исходного кода, сборка прервана:\n - Файл: {file}\n - Подробности: {desc}\n\nСовет: Обычно это не вина инструмента упаковки.\nУбедитесь, что выбранная [Версия Python для сборки] соответствует версии, которую вы использовали для [Написания/Тестирования кода].\nИспользование нового синтаксиса (например, оператора моржа :=, объединения типов |, match-case) в более старой среде Python вызовет эту ошибку.\nРекомендуем перейти в [Настройки сборки] -> [Движок], чтобы переключиться на правильную версию Python.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Не удалось выполнить синтаксический анализ исходного кода, сборка прервана:\n - Файл: {file}\n - Строка: строка {line}\n - Подробности: {desc}\n\nСовет. Обычно это НЕ ошибка инструмента упаковки.\nУбедитесь, что выбранная [Версия Python для сборки] соответствует версии, которую вы использовали для [Написания/Тестирования кода].\nИспользование нового синтаксиса (например, оператор моржа :=, объединение типов |, match-case) в более старой среде Python вызовет эту ошибку.\nРекомендуем перейти в [Настройки сборки] -> [Движок], чтобы переключиться на правильную версию Python.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] Обнаружен модуль 'multiprocessing'. Убедитесь, что 'multiprocessing.freeze_support()' вызывается внутри 'if __name__ == \"__main__\":', чтобы предотвратить бесконечные циклы процессов (форк-бомбы).",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] Исключение при анализе AST: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Тайм-аут команды (>{timeout}с)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] Обнаружены 'requests' или 'httpx'. Автоматическое включение сертификатов 'certifi' для предотвращения ошибок SSL.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Не удалось удалить недействительную виртуальную среду, попытка переименования: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Не удалось очистить недопустимое окружение, используется временная песочница: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Не удалось преобразовать значок в .icns, сборка без значка.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Запись ресурса значка заблокирована (возможно, заблокирована системой/антивирусом), запуск защитного механизма...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Обнаружено мало места на диске целевого диска (Доступно: {free:.1f} ГБ, рекомендуется >= 5.0 ГБ). Процесс сборки может прерваться из-за нехватки места.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Обнаружено мало места на диске: доступно {free:.1f} ГБ",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Перехвачено исключение выделения памяти (ZstdError / OOM). Запуск защитного механизма памяти: повторная попытка в однопоточном режиме...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] Пакет '{pkg}' не удалось установить, пропуск...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Исключение при внедрении кода паузы: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Не удалось установить браузер Playwright из всех источников, сборка продолжится с риском...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32-бит) требует Visual Studio 2022 с Windows SDK. Сборка будет выполнена с текущей средой.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Ошибка определения информации об окружении Python: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Предупреждение при чтении requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Общий каталог недействителен, переход в режим изолированной среды.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] Общий каталог не имеет прав на запись, переход в изолированный режим.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] Не удалось выполнить умную подпись, но результат сборки сохранен.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Некоторые зависимости не удалось установить, сборка будет продолжена с риском...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Указанные версии не удалось установить. Снятие ограничений версий для автоматического подбора совместимости...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "โหมดรายละเอียด",
|
||||
"Directory": "ไดเรกทอรี",
|
||||
"Discovered via scanner ({count}): {pkgs}": "ค้นพบผ่านสแกนเนอร์ ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "พื้นที่ดิสก์เหลือน้อยมาก: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "ดับเบิลคลิกเพื่อแก้ไขเส้นทางเป้าหมาย; รองรับการลากและวาง",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "ดับเบิลคลิกเพื่อแก้ไขเส้นทางเป้าหมาย; รองรับการลากและวาง ใช้ 'Export Preset' เพื่อบันทึกไว้ใช้ใหม่",
|
||||
"Download New Version": "ดาวน์โหลดเวอร์ชันใหม่",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "ซ่อนคอนโซล (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "ซ่อนการตั้งค่าใบรับรองแบบกำหนดเอง ▾",
|
||||
"Huawei Cloud (China)": "หัวเหว่ยคลาวด์ (จีน)",
|
||||
"Icon file not found: {path}": "ไม่พบไฟล์ไอคอน: {path}",
|
||||
"Import Name": "ชื่อนำเข้า",
|
||||
"Import Preset...": "นำเข้าพรีเซ็ต...",
|
||||
"Import name (e.g. cv2):": "ชื่อนำเข้า (เช่น cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "การตรวจสอบอินเทอร์พรีเตอร์ผ่าน: ไม่พบความขัดแย้งของ backport ที่ใช้งานอยู่",
|
||||
"Interpreter:": "อินเทอร์พรีเตอร์:",
|
||||
"Invalid syntax": "ไวยากรณ์ไม่ถูกต้อง",
|
||||
"Isolated Environment": "สภาพแวดล้อมแบบแยก",
|
||||
"Issues & Feedback": "ปัญหาและข้อเสนอแนะ",
|
||||
"Keep Local Venv": "เก็บ Venv ในเครื่อง",
|
||||
"Later": "ภายหลัง",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "ตำแหน่งเอาต์พุต",
|
||||
"Output Location:": "ตำแหน่งเอาต์พุต:",
|
||||
"Output Name:": "ชื่อเอาต์พุต:",
|
||||
"Output directory not writable: {error}": "ไดเรกทอรีเอาต์พุตไม่สามารถเขียนได้: {error}",
|
||||
"Package Map": "แผนที่แพ็กเกจ",
|
||||
"Package Mapping & Remediation": "การแมปแพ็กเกจและการแก้ไข",
|
||||
"Package Mappings & Rules": "การแมปแพ็กเกจและกฎ",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "การแพ็กเกจ Python ถูกจินตนาการใหม่",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "ติดตั้ง Python แล้ว กรุณารีสตาร์ท QPyPack ด้วยตนเองในภายหลัง",
|
||||
"Python interpreter not found: {path}": "ไม่พบตัวแปลภาษาไพธอน: {path}",
|
||||
"QPyPack Developer": "QPyPack นักพัฒนา",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack เป็นเครื่องมือฟรีและโอเพนซอร์ส หากมันช่วยเพิ่มประสิทธิภาพหรือแก้ปัญหาการแพ็คเกจได้ ลองพิจารณาซื้อกาแฟให้ผู้พัฒนา!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "แรมเหลือน้อยมาก: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "พร้อมแล้ว รอการสร้าง",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "เหตุผล: MinGW64 ไม่รองรับ Python 3.13+ อีกต่อไป โปรดตรวจสอบให้แน่ใจว่าติดตั้ง Zig หรือ VS 2022 แล้ว",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "เหตุผล: Python 3.11+ ต้องใช้ Visual Studio 2022 (MSVC 14.3) พร้อม Windows SDK",
|
||||
"Rebuild": "สร้างใหม่",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "คำแนะนำ: 6+ ตัวอักษร ตัวเลข และ '_' เท่านั้น หลีกเลี่ยงช่องว่างหรือภาษาจีนเพื่อป้องกันข้อผิดพลาดในการเซ็นชื่อ",
|
||||
"Remediate Detected Conflicts": "แก้ไขข้อขัดแย้งที่ตรวจพบ",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "ไฟล์ข้อกำหนด:",
|
||||
"Reset": "รีเซ็ต",
|
||||
"Reset to Default Config": "รีเซ็ตเป็นค่าคอนฟิกเริ่มต้น",
|
||||
"Resource not found: {path}": "ไม่พบทรัพยากร: {path}",
|
||||
"Resources": "ทรัพยากร",
|
||||
"Restore Defaults": "คืนค่าเริ่มต้น",
|
||||
"Save & Return": "บันทึกและกลับ",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "สแกนทั้งโฟลเดอร์",
|
||||
"Scanning...": "กำลังสแกน...",
|
||||
"Script and settings retained. Ready to rebuild.": "สคริปต์และการตั้งค่าถูกเก็บไว้ พร้อมสร้างใหม่",
|
||||
"Script file is locked by cloud sync": "ไฟล์สคริปต์ถูกล็อกโดยการซิงค์คลาวด์",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "โหลดสคริปต์แล้ว คุณสามารถลากโฟลเดอร์ทรัพยากรหรือไฟล์ข้อมูลมาที่นี่เพื่อรวมเข้าด้วยกัน",
|
||||
"Select .pfx / .p12 certificate file": "เลือกไฟล์ใบรับรอง .pfx / .p12",
|
||||
"Select All": "เลือกทั้งหมด",
|
||||
"Select Python Version to Download:": "เลือกเวอร์ชัน Python ที่จะดาวน์โหลด:",
|
||||
"Select shared directory...": "เลือกไดเรกทอรีที่ใช้ร่วมกัน...",
|
||||
"Self-Signed Certificate (*.pfx)": "ใบรับรองที่เซ็นชื่อเอง (*.pfx)",
|
||||
"Shared Environment": "สภาพแวดล้อมที่ใช้ร่วมกัน",
|
||||
"Shared environment name (optional, leave empty for isolated)": "ชื่อสภาพแวดล้อมที่ใช้ร่วมกัน (ไม่บังคับ เว้นว่างไว้สำหรับแบบแยก)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "ขนาดเอาต์พุตเล็กลง แนะนำสำหรับแอปมาตรฐาน 95%",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "วิธีแก้ไข:\n1. ในการตั้งค่าการ build ให้เปลี่ยนเป็นเอ็นจิน [PyInstaller] (แนะนำ)\n2. หรือติดตั้ง Visual Studio 2022 พร้อมการสนับสนุน C++",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "วิธีแก้ไข:\n1. ติดตั้ง Visual Studio 2022 (เลือก 'Desktop development with C++' และ 'Windows SDK')\n2. หรือเปลี่ยนเอ็นจินเป็น [PyInstaller] ในการตั้งค่าการ build",
|
||||
"Sound Notification": "การแจ้งเตือนด้วยเสียง",
|
||||
"Source Directory (.qpypack_build)": "ไดเรกทอรีต้นทาง (.qpypack_build)",
|
||||
"Source File Directory": "ไดเรกทอรีไฟล์ต้นทาง",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] พื้นที่ดิสก์ไม่เพียงพอ (มีว่าง: {free:.1f} GB) ต้องมีอย่างน้อย 0.5 GB เพื่อเริ่มต้นสภาพแวดล้อม build อย่างปลอดภัย",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] ไดเรกทอรีเอาต์พุตไม่มีสิทธิ์เขียน: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] กรุณาโหลดไฟล์ซอร์ส Python ที่ถูกต้องก่อน!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] การตรวจสอบก่อนเริ่มล้มเหลว:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] รูปแบบไฟล์ preset ผิดพลาดหรือเสียหาย: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] ข้อผิดพลาดของกระบวนการ: คำสั่งหรือไบนารีหายไป ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] การถ่ายโอนผลิตภัณฑ์ล้มเหลว ไฟล์อาจถูกครอบครองโดยกระบวนการระบบหรือขาดสิทธิ์: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] ไฟล์เป้าหมายถูกล็อกหรือเข้ารหัสโดยคลาวด์ไดรฟ์ กรุณาถอดรหัสแล้วลองอีกครั้ง",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] ไฟล์เป้าหมายกำลังทำงานหรือถูกครอบครอง กรุณาปิดแอปพลิเคชันที่มีอยู่แล้วลองอีกครั้ง",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] ไม่พบไฟล์ไอคอนที่ระบุ: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] ไม่สามารถล้างสภาพแวดล้อมเสมือนที่ไม่ถูกต้องได้:\n พาธ: {path}\n ข้อผิดพลาด: {error}\n\nโปรดลบไดเรกทอรีด้วยตนเองหรือยกเลิกการเลือก 'Keep Local Venv' แล้วลองอีกครั้ง",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] การ build ล้มเหลว: เวอร์ชันคอมไพเลอร์ C++ เข้ากันไม่ได้",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] ข้อกำหนดคอมไพเลอร์สำหรับ Python 3.13+",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] การสร้างถูกขัดจังหวะด้วยข้อยกเว้น!\n\nการแก้ไขปัญหาทั่วไป:\n1. สภาพแวดล้อมไม่ตรงกัน (พบบ่อยที่สุด): เวอร์ชัน Python ที่เลือกเข้ากันไม่ได้กับซอร์สโค้ดของคุณ กรุณาไปที่ [การตั้งค่าการสร้าง] เพื่อเปลี่ยนเป็นเวอร์ชัน Python ที่คุณใช้ปกติสำหรับโค้ดนี้\n2. Dependencies หายไป: คลิก 'โหมดรายละเอียด' ด้านบนเพื่อตรวจสอบ ModuleNotFoundError\n3. โปรแกรมป้องกันไวรัสบล็อก: ตรวจสอบให้แน่ใจว่าซอฟต์แวร์ความปลอดภัยของคุณไม่ได้บล็อกกระบวนการสร้าง\n\n(หมายเหตุ: โดยปกติเกิดจากความไม่สอดคล้องของสภาพแวดล้อม/โค้ด ไม่ใช่ตัวเครื่องมือแพ็กเกจ กรุณาตรวจสอบบันทึกโดยละเอียดสำหรับสาเหตุที่แท้จริง)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] การคอมไพล์ถูกขัดจังหวะด้วยข้อยกเว้น กรุณาคลิก 'โหมดรายละเอียด' ด้านบนหน้าต่างบันทึกเพื่อแก้ไขปัญหา",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] เพิ่ม '{name}' ลงในทรัพยากรเพิ่มเติม",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] กำลังสร้างสภาพแวดล้อมเสมือน...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] กำลังดาวน์โหลดเบราว์เซอร์ Playwright ผ่านมิเรอร์: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] กำลังประเมินหน่วยความจำกายภาพของระบบ (ว่าง: {ram:.1f} GB) ปรับความพร้อมกันแบบปรับตัว: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] พบสภาพแวดล้อม MSVC + Windows SDK ที่เข้ากันได้ ใช้คอมไพเลอร์ดั้งเดิม",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] พบสภาพแวดล้อม Clang ในเครื่อง ให้ความสำคัญกับคอมไพเลอร์ LLVM Clang",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] พบสภาพแวดล้อม GCC/MinGW-w64 ในเครื่อง ใช้คอมไพเลอร์ MinGW64",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] พบสภาพแวดล้อม MSVC ในเครื่อง ให้ความสำคัญกับคอมไพเลอร์ C++ ดั้งเดิม",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] กำลังเริ่มต้นสภาพแวดล้อมการสร้างแบบแยกส่วน...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] กำลังติดตั้งสภาพแวดล้อมการสร้างและการพึ่งพาของโปรเจกต์ ({count} แพ็กเกจ): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] เปิดใช้โหมด Lite ใช้การปรับไบต์โค้ด (-OO) และลบโมดูล dev...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] ไม่พบ MSVC 14.3+ Nuitka จะใช้/ดาวน์โหลดชุดเครื่องมือ MinGW64 (Python {v})",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] ไม่พบคอมไพเลอร์ C ในเครื่อง Nuitka จะดาวน์โหลดและจัดการชุดเครื่องมือ MinGW-w64 ที่เข้ากันได้โดยอัตโนมัติ",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] เคล็ดลับ Nuitka: หากได้รับแจ้งให้ดาวน์โหลดคอมไพเลอร์ GCC/MinGW ในการสร้างครั้งแรก โปรดตรวจสอบการเชื่อมต่อเครือข่ายที่เสถียร",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] เปลี่ยนชื่อ venv เก่าเป็น: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] กำลังตรวจสอบสภาพแวดล้อมก่อนเริ่มต้น...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] ตรวจพบ Playwright กำลังติดตั้งเบราว์เซอร์ในตัว (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] ตรวจพบ Python 3.13+: ใช้คอมไพเลอร์ Zig (--zig) เป็นแบ็กเอนด์ C",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] ตรวจพบ Python 3.13+: ใช้คอมไพเลอร์ Zig (--zig) เป็นแบ็กเอนด์ดั้งเดิม",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] พาธของอินเทอร์พรีเตอร์ Python: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] กำลังแก้ไขการพึ่งพาของโปรเจกต์...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] กำลังลองดาวน์โหลดเบราว์เซอร์ Playwright ผ่าน CDN อย่างเป็นทางการอีกครั้ง...",
|
||||
@@ -348,16 +371,21 @@
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] ข้อยกเว้นการวิเคราะห์ AST: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] คำสั่งหมดเวลา (> {timeout} วินาที)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] ตรวจพบ 'requests' หรือ 'httpx' กำลังรวมใบรับรอง 'certifi' โดยอัตโนมัติเพื่อป้องกันข้อผิดพลาด SSL",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] ลบ venv ที่ไม่ถูกต้องล้มเหลว พยายามเปลี่ยนชื่อ: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] ล้างสภาพแวดล้อมที่ไม่ถูกต้องล้มเหลว กำลังใช้แซนด์บ็อกซ์ชั่วคราว: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] การแปลงไอคอนเป็น .icns ล้มเหลว กำลังสร้างโดยไม่มีไอคอน",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] การเขียนทรัพยากรไอคอนถูกบล็อก (อาจถูกล็อกโดยระบบ/โปรแกรมป้องกันไวรัส) กำลังเรียกใช้การป้องกันแบบสำรอง...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] ตรวจพบพื้นที่ดิสก์ต่ำบนไดรฟ์เป้าหมายการสร้าง (ว่าง: {free:.1f} GB, แนะนำ >= 5.0 GB) กระบวนการสร้างอาจถูกขัดจังหวะเนื่องจากดิสก์เต็ม",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] ตรวจพบพื้นที่ดิสก์เหลือน้อย: {free:.1f} GB",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] จับข้อยกเว้นการจัดสรรหน่วยความจำ (ZstdError / OOM) กำลังเรียกใช้การป้องกันหน่วยความจำแบบสำรอง: ลองใหม่ในโหมดเธรดเดียว...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] แพ็กเกจ '{pkg}' ติดตั้งไม่สำเร็จ กำลังข้าม...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] ข้อยกเว้นการแทรกโค้ดหยุดชั่วคราว: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] การติดตั้งเบราว์เซอร์ Playwright ล้มเหลวในทุกแหล่ง กระบวนการสร้างจะดำเนินต่อไปพร้อมความเสี่ยง...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32-bit) ต้องใช้ Visual Studio 2022 พร้อม Windows SDK การ build จะพยายามด้วยสภาพแวดล้อมปัจจุบัน",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] การตรวจจับข้อมูลสภาพแวดล้อม Python สำรอง: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] คำเตือนการอ่าน requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] ไดเรกทอรีที่ใช้ร่วมกันไม่ถูกต้อง เปลี่ยนเป็นโหมดสภาพแวดล้อมแบบแยก",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] ไดเรกทอรีที่ใช้ร่วมกันไม่มีสิทธิ์เขียน เปลี่ยนเป็นโหมดแบบแยก",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] การลงนามอัจฉริยะล้มเหลว แต่ยังคงเก็บเอาต์พุตการสร้างไว้",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] การติดตั้ง dependencies บางตัวล้มเหลว การ build จะดำเนินการต่อไปโดยมีความเสี่ยง...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] การติดตั้งเวอร์ชันที่ระบุล้มเหลว กำลังลบข้อจำกัดเวอร์ชันเพื่อให้เข้ากันได้โดยอัตโนมัติ...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Ayrıntılı Mod",
|
||||
"Directory": "Dizin",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Tarayıcıyla keşfedildi ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Disk alanı kritik düzeyde düşük: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "Hedef yolu düzenlemek için çift tıklayın; Sürükle ve bırak desteklenir",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Hedef yolu düzenlemek için çift tıklayın; Sürükle ve bırak desteklenir. Yeniden kullanmak için 'Dışa Aktarma Ön Ayarı'nı kullanın.",
|
||||
"Download New Version": "Yeni Sürümü İndir",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Konsolu Gizle (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Özel Sertifika Ayarlarını Gizle ▾",
|
||||
"Huawei Cloud (China)": "Huawei Cloud (Çin)",
|
||||
"Icon file not found: {path}": "Simge dosyası bulunamadı: {path}",
|
||||
"Import Name": "Adı İçe Aktar",
|
||||
"Import Preset...": "Ön Ayarı İçe Aktar...",
|
||||
"Import name (e.g. cv2):": "Adı içe aktar (örn. cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Yorumlayıcı incelemesi geçti: Etkin geri uyumluluk çakışması tespit edilmedi.",
|
||||
"Interpreter:": "Yorumlayıcı:",
|
||||
"Invalid syntax": "Geçersiz sözdizimi",
|
||||
"Isolated Environment": "İzole Ortam",
|
||||
"Issues & Feedback": "Sorunlar ve Geri Bildirim",
|
||||
"Keep Local Venv": "Yerel Venv'i Koru",
|
||||
"Later": "Sonra",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Çıktı Konumu",
|
||||
"Output Location:": "Çıktı Konumu:",
|
||||
"Output Name:": "Çıktı Adı:",
|
||||
"Output directory not writable: {error}": "Çıktı dizinine yazılamıyor: {error}",
|
||||
"Package Map": "Paket Haritası",
|
||||
"Package Mapping & Remediation": "Paket Eşleme ve Düzeltme",
|
||||
"Package Mappings & Rules": "Paket Eşlemeleri ve Kuralları",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Python Paketleme, Yeniden Tasarlanmış.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python kuruldu. Lütfen QPyPack'i daha sonra manuel olarak yeniden başlatın.",
|
||||
"Python interpreter not found: {path}": "Python yorumlayıcısı bulunamadı: {path}",
|
||||
"QPyPack Developer": "QPyPack Geliştirici",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack ücretsiz ve açık kaynaklı bir araçtır. Verimliliğinizi artırdıysa veya paketleme sorunlarını çözdüyse, yazara bir kahve ısmarlamayı düşünün!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM kritik düzeyde düşük: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "Hazır, derleme bekleniyor.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Neden: MinGW64, Python 3.13+ üzerinde artık desteklenmiyor. Lütfen Zig veya VS 2022'nin kurulu olduğundan emin olun.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Neden: Python 3.11+, Windows SDK ile Visual Studio 2022 (MSVC 14.3) gerektirir.",
|
||||
"Rebuild": "Yeniden Derle",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Öneri: 6+ karakter, alfanümerik, yalnızca '-' ve '_'. İmza hatalarını önlemek için boşluk veya Çince karakterlerden kaçının.",
|
||||
"Remediate Detected Conflicts": "Tespit Edilen Çakışmaları Gider",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Gereksinim Dosyası:",
|
||||
"Reset": "Sıfırla",
|
||||
"Reset to Default Config": "Varsayılan Yapılandırmaya Sıfırla",
|
||||
"Resource not found: {path}": "Kaynak bulunamadı: {path}",
|
||||
"Resources": "Kaynaklar",
|
||||
"Restore Defaults": "Varsayılanları Geri Yükle",
|
||||
"Save & Return": "Kaydet ve Geri Dön",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Tüm Klasörü Tara",
|
||||
"Scanning...": "Taranıyor...",
|
||||
"Script and settings retained. Ready to rebuild.": "Betik ve ayarlar korundu. Yeniden derlemeye hazır.",
|
||||
"Script file is locked by cloud sync": "Betik dosyası bulut senkronizasyonu tarafından kilitlendi",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Betik yüklendi. Varlık klasörlerini veya veri dosyalarını doğrudan buraya sürükleyerek paketleyebilirsiniz.",
|
||||
"Select .pfx / .p12 certificate file": ".pfx / .p12 sertifika dosyası seçin",
|
||||
"Select All": "Tümünü Seç",
|
||||
"Select Python Version to Download:": "İndirilecek Python Sürümünü Seçin:",
|
||||
"Select shared directory...": "Paylaşılan dizini seç...",
|
||||
"Self-Signed Certificate (*.pfx)": "Kendi Kendine İmzalı Sertifika (*.pfx)",
|
||||
"Shared Environment": "Paylaşılan Ortam",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Paylaşılan ortam adı (isteğe bağlı, izole için boş bırakın)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Daha küçük çıktı boyutu. Standart uygulamaların %95'i için önerilir.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Çözüm:\n1. Derleme Ayarları'nda [PyInstaller] motoruna geçin (Önerilir).\n2. Veya C++ desteğiyle Visual Studio 2022 kurun.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Çözüm:\n1. Visual Studio 2022 kurun ('C++ ile masaüstü geliştirme' ve 'Windows SDK' seçeneklerini işaretleyin).\n2. Veya Derleme Ayarları'nda motoru [PyInstaller] olarak değiştirin.",
|
||||
"Sound Notification": "Ses Bildirimi",
|
||||
"Source Directory (.qpypack_build)": "Kaynak Dizini (.qpypack_build)",
|
||||
"Source File Directory": "Kaynak Dosya Dizini",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Yetersiz disk alanı (Kullanılabilir: {free:.1f} GB). Derleme ortamını güvenli bir şekilde başlatmak için en az 0,5 GB gerekir.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] Çıktı dizini yazma iznine sahip değil: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Lütfen önce geçerli bir Python kaynak dosyası yükleyin!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Ön kontrol başarısız oldu:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Ön ayar dosyası biçim hatası veya bozuk: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] İşlem hatası: komut veya ikili dosya eksik ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Ürün aktarımı başarısız oldu, dosya sistem işlemi tarafından kullanılıyor olabilir veya izin eksik olabilir: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] Hedef dosya kilitli veya bulut sürücüsü tarafından şifrelenmiş. Lütfen şifresini çözüp tekrar deneyin.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] Hedef dosya çalışıyor veya kullanılıyor. Lütfen mevcut uygulamayı kapatıp tekrar deneyin.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] Belirtilen simge dosyası mevcut değil: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Geçersiz sanal ortam temizlenemedi:\n Yol: {path}\n Hata: {error}\n\nLütfen dizini manuel olarak silin veya 'Yerel Venv'i Koru' seçeneğini işaretleyip tekrar deneyin.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Derleme başarısız: C++ derleyici sürümü uyumsuz.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Python 3.13+ Derleyici Gereksinimi.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Derleme beklenmedik bir şekilde kesildi!\n\nYaygın Sorun Giderme:\n1. Ortam Uyumsuzluğu (En Yaygın): Seçilen Python sürümü kaynak kodunuzla uyumsuz. Lütfen [Derleme Ayarları] bölümüne gidip bu kod için normalde kullandığınız Python sürümüne geçin.\n2. Eksik Bağımlılıklar: ModuleNotFoundError kontrolü için yukarıdaki 'Ayrıntılı Mod' düğmesine tıklayın.\n3. Antivirüs Engellemesi: Güvenlik yazılımınızın derleme sürecini engellemediğinden emin olun.\n\n(Not: Bu genellikle paketleme motorundan ziyade ortam/kod farklılıklarından kaynaklanır. Kesin nedenler için ayrıntılı günlüğü kontrol edin.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Derleme özel durumlarla kesildi, sorun giderme için lütfen günlük penceresinin üzerindeki 'Ayrıntılı Mod' düğmesine tıklayın.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] '{name}' Ek Kaynaklara eklendi.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Sanal ortam oluşturuluyor...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Playwright tarayıcıları aynadan indiriliyor: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Sistem fiziksel belleği değerlendiriliyor (Kullanılabilir: {ram:.1f} GB). Uyarlanabilir eşzamanlılık ayarlandı: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Uyumlu MSVC + Windows SDK ortamı bulundu, yerel derleyici kullanılıyor.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Yerel Clang ortamı bulundu, LLVM Clang derleyicisi önceliklendiriliyor.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Yerel GCC/MinGW-w64 ortamı bulundu, MinGW64 derleyicisi kullanılıyor.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Yerel MSVC ortamı bulundu, yerel C++ derleyicisi önceliklendiriliyor.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] İzole derleme ortamı başlatılıyor...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Derleme ortamı ve proje bağımlılıkları kuruluyor ({count} paket): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Hafif mod etkin, bayt kodu optimizasyonu (-OO) uygulanıyor ve geliştirici modülleri kaldırılıyor...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] MSVC 14.3+ algılanmadı. Nuitka, MinGW64 araç setini kullanacak/indirecek (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Yerel C derleyicisi algılanmadı. Nuitka otomatik olarak uyumlu bir MinGW-w64 araç zincirini indirip yönetecek.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Nuitka İpucu: İlk derlemede GCC/MinGW derleyicisini indirmeniz istenirse, lütfen istikrarlı bir ağ bağlantısı sağlayın.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Eski venv şu şekilde yeniden adlandırıldı: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Ön kontrol ortam kontrolleri yapılıyor...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Playwright algılandı. Yerleşik tarayıcılar kuruluyor (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+ algılandı: C arka ucu olarak Zig derleyicisi (--zig) kullanılıyor.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Python 3.13+ algılandı: Zig derleyicisi (--zig) yerel arka uç olarak kullanılıyor.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Python yorumlayıcı yolu: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Proje bağımlılıkları çözümleniyor...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Playwright tarayıcı indirmesi resmi CDN üzerinden yeniden deneniyor...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Derleme tamamlandı, çıktı yolu: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Dijital imza başarıyla uygulandı!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] Kaynak kod sözdizimi hataları içeriyor, derleme iptal edildi:\n - Dosya: {file}\n - Tür: {type}\n - Satır: {line}. satır\n - Ayrıntı: {desc}\n\nİpucu: Paketlemeden önce kaynak kodun yerel olarak çalıştığından emin olun.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Kaynak kod sözdizimi ayrıştırması başarısız oldu, derleme iptal edildi:\n - Dosya: {file}\n - Ayrıntı: {desc}\n\nİpucu: Bu genellikle paketleme aracının hatası değildir.\nSeçtiğiniz [Derleme Python Sürümü]'nün, kodu [Yazarken/Test Ederken] kullandığınız sürümle eşleştiğinden emin olun.\nDaha yeni sözdizimi (ör. walrus operatörü :=, tip birleşimleri |, match-case) daha eski bir Python ortamında kullanılırsa bu hata tetiklenir.\n[Derleme Ayarları] -> [Motor] bölümünden doğru Python sürümüne geçmenizi öneririz.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Kaynak kod sözdizimi ayrıştırılamadı, derleme iptal edildi:\n - Dosya: {file}\n - Satır: {line}. satır\n - Ayrıntı: {desc}\n\nİpucu: Bu genellikle paketleme aracının hatası DEĞİLDİR.\nSeçtiğiniz [Derleme Python Sürümü] ile [Kodu Yazarken/Test Ederken] kullandığınız sürümün eşleştiğinden emin olun.\nDaha yeni sözdizimi (ör. mors operatörü :=, tür birleşimleri |, match-case) kullanmak eski bir Python ortamında bu hatayı tetikler.\n[Derleme Ayarları] -> [Motor] bölümünden doğru Python sürümüne geçmenizi öneririz.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] 'multiprocessing' modülü algılandı. Sonsuz işlem döngülerini (fork bombaları) önlemek için 'multiprocessing.freeze_support()' çağrısının 'if __name__ == \"__main__\":' altında yapıldığından emin olun.",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] AST Analiz İstisnası: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Komut zaman aşımı (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] 'requests' veya 'httpx' algılandı. SSL hatalarını önlemek için 'certifi' sertifikaları otomatik olarak paketleniyor.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Geçersiz venv silinemedi, yeniden adlandırma deneniyor: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Geçersiz ortam temizlenemedi, geçici kum havuzuna düşülüyor: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Simgenin .icns'e dönüştürülmesi başarısız oldu, simge olmadan derleniyor.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Simge kaynak yazımı engellendi (sistem/antivirüs tarafından kilitlenmiş olabilir), yedek koruma tetikleniyor...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Derleme hedef sürücüsünde düşük disk alanı algılandı (Kullanılabilir: {free:.1f} GB, >= 5.0 GB önerilir). Disk tükenmesi nedeniyle derleme işlemi kesintiye uğrayabilir.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Düşük disk alanı algılandı: {free:.1f} GB kullanılabilir",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Bellek ayırma istisnası yakalandı (ZstdError / OOM). Bellek koruma yedeği tetikleniyor: Tek iş parçacıklı modda yeniden deneniyor...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] '{pkg}' paketi yüklenemedi, atlanıyor...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Duraklatma kodu enjeksiyon istisnası: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Playwright tarayıcı kurulumu tüm kaynaklarda başarısız oldu, derlemeye riskle devam edilecek...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32-bit), Windows SDK ile Visual Studio 2022 gerektirir. Derleme mevcut ortamla denenir.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Python ortam bilgisi algılama yedeği: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] requirements.txt okuma uyarısı: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Paylaşılan dizin geçersiz, izole ortam moduna geri dönülüyor.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] Paylaşılan dizin yazma izinlerine sahip değil, izole moda geri dönülüyor.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] Akıllı imzalama başarısız oldu, ancak derleme çıktısı korundu.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Bazı bağımlılıklar kurulamadı, derleme riskli olarak devam edecek...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Belirtilen sürümler kurulamadı. Otomatik uyumluluk eşleştirmesi için sürüm kısıtlamaları kaldırılıyor...",
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
"Detailed Mode": "Chế độ chi tiết",
|
||||
"Directory": "Thư mục",
|
||||
"Discovered via scanner ({count}): {pkgs}": "Được phát hiện qua máy quét ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "Dung lượng đĩa cực thấp: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "Nhấp đúp để chỉnh sửa đường dẫn mục tiêu; Hỗ trợ kéo và thả",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "Nhấp đúp để chỉnh sửa đường dẫn đích; Hỗ trợ kéo và thả. Dùng 'Xuất cấu hình' để lưu dùng lại.",
|
||||
"Download New Version": "Tải phiên bản mới",
|
||||
@@ -122,6 +123,7 @@
|
||||
"Hide Console (--noconsole)": "Ẩn Bảng Điều Khiển (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "Ẩn Cài Đặt Chứng Chỉ Tùy Chỉnh ▾",
|
||||
"Huawei Cloud (China)": "Đám Mây Huawei (Trung Quốc)",
|
||||
"Icon file not found: {path}": "Không tìm thấy tệp biểu tượng: {path}",
|
||||
"Import Name": "Tên Nhập",
|
||||
"Import Preset...": "Nhập Cấu Hình...",
|
||||
"Import name (e.g. cv2):": "Tên nhập (ví dụ: cv2):",
|
||||
@@ -134,6 +136,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "Kiểm tra thông dịch đã qua: Không phát hiện xung đột backport hoạt động.",
|
||||
"Interpreter:": "Trình Thông Dịch:",
|
||||
"Invalid syntax": "Cú pháp không hợp lệ",
|
||||
"Isolated Environment": "Môi trường cô lập",
|
||||
"Issues & Feedback": "Vấn Đề & Phản Hồi",
|
||||
"Keep Local Venv": "Giữ Venv Cục Bộ",
|
||||
"Later": "Sau",
|
||||
@@ -174,6 +177,7 @@
|
||||
"Output Location": "Vị trí đầu ra",
|
||||
"Output Location:": "Vị trí đầu ra:",
|
||||
"Output Name:": "Tên đầu ra:",
|
||||
"Output directory not writable: {error}": "Thư mục đầu ra không thể ghi: {error}",
|
||||
"Package Map": "Bản đồ gói",
|
||||
"Package Mapping & Remediation": "Ánh xạ gói & khắc phục",
|
||||
"Package Mappings & Rules": "Ánh xạ gói & quy tắc",
|
||||
@@ -212,9 +216,13 @@
|
||||
"Python Packaging, Reimagined.": "Đóng gói Python, tái định nghĩa.",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python đã được cài đặt. Vui lòng khởi động lại QPyPack theo cách thủ công sau.",
|
||||
"Python interpreter not found: {path}": "Không tìm thấy trình thông dịch Python: {path}",
|
||||
"QPyPack Developer": "QPyPack Developer",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack là công cụ mã nguồn mở miễn phí. Nếu nó đã cải thiện hiệu quả công việc hoặc giải quyết vấn đề đóng gói, hãy cân nhắc mua cho tác giả một ly cà phê!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM cực thấp: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "Sẵn sàng, chờ xây dựng.",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "Lý do: MinGW64 không còn được hỗ trợ trên Python 3.13+. Vui lòng đảm bảo Zig hoặc VS 2022 được cài đặt.",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "Lý do: Python 3.11+ yêu cầu Visual Studio 2022 (MSVC 14.3) với Windows SDK.",
|
||||
"Rebuild": "Xây dựng lại",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "Khuyến nghị: 6+ ký tự, chỉ chữ số, '-' và '_'. Tránh khoảng trắng hoặc tiếng Trung để ngăn lỗi ký.",
|
||||
"Remediate Detected Conflicts": "Khắc phục xung đột đã phát hiện",
|
||||
@@ -223,6 +231,7 @@
|
||||
"Requirements File:": "Tệp yêu cầu:",
|
||||
"Reset": "Đặt lại",
|
||||
"Reset to Default Config": "Đặt lại cấu hình mặc định",
|
||||
"Resource not found: {path}": "Không tìm thấy tài nguyên: {path}",
|
||||
"Resources": "Tài nguyên",
|
||||
"Restore Defaults": "Khôi phục mặc định",
|
||||
"Save & Return": "Lưu & Quay lại",
|
||||
@@ -230,12 +239,18 @@
|
||||
"Scan Entire Folder": "Quét toàn bộ thư mục",
|
||||
"Scanning...": "Đang quét...",
|
||||
"Script and settings retained. Ready to rebuild.": "Tập lệnh và cài đặt đã được giữ lại. Sẵn sàng xây dựng lại.",
|
||||
"Script file is locked by cloud sync": "Tệp script bị khóa bởi đồng bộ đám mây",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "Tập lệnh đã được tải. Bạn có thể kéo trực tiếp các thư mục tài sản hoặc tệp dữ liệu vào đây để đóng gói.",
|
||||
"Select .pfx / .p12 certificate file": "Chọn tệp chứng chỉ .pfx / .p12",
|
||||
"Select All": "Chọn tất cả",
|
||||
"Select Python Version to Download:": "Chọn phiên bản Python để tải xuống:",
|
||||
"Select shared directory...": "Chọn thư mục dùng chung...",
|
||||
"Self-Signed Certificate (*.pfx)": "Chứng chỉ tự ký (*.pfx)",
|
||||
"Shared Environment": "Môi trường dùng chung",
|
||||
"Shared environment name (optional, leave empty for isolated)": "Tên môi trường dùng chung (tùy chọn, để trống cho môi trường cô lập)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "Kích thước đầu ra nhỏ hơn. Khuyến nghị cho 95% ứng dụng tiêu chuẩn.",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "Giải pháp:\n1. Trong Cài đặt xây dựng, chuyển sang công cụ [PyInstaller] (Khuyến nghị).\n2. Hoặc cài đặt Visual Studio 2022 với hỗ trợ C++.",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "Giải pháp:\n1. Cài đặt Visual Studio 2022 (Chọn 'Phát triển máy tính để bàn bằng C++' và 'Windows SDK').\n2. Hoặc chuyển công cụ sang [PyInstaller] trong Cài đặt xây dựng.",
|
||||
"Sound Notification": "Thông báo âm thanh",
|
||||
"Source Directory (.qpypack_build)": "Thư mục nguồn (.qpypack_build)",
|
||||
"Source File Directory": "Thư mục tệp nguồn",
|
||||
@@ -287,6 +302,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] Không đủ dung lượng ổ đĩa (Khả dụng: {free:.1f} GB). Cần ít nhất 0.5 GB để khởi tạo môi trường xây dựng một cách an toàn.",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] Thư mục đầu ra thiếu quyền ghi: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] Vui lòng tải tệp mã nguồn Python hợp lệ trước!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] Kiểm tra trước khi chạy thất bại:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] Lỗi định dạng tệp cấu hình hoặc tệp bị hỏng: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] Lỗi tiến trình: thiếu lệnh hoặc tệp nhị phân ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] Chuyển sản phẩm thất bại, tệp có thể bị chiếm dụng bởi tiến trình hệ thống hoặc thiếu quyền: {error}",
|
||||
@@ -297,6 +313,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] Tệp đích bị khóa hoặc mã hóa bởi dịch vụ đám mây. Vui lòng giải mã và thử lại.",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] Tệp đích đang chạy hoặc bị chiếm dụng. Vui lòng đóng ứng dụng hiện tại và thử lại.",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] Tệp biểu tượng được chỉ định không tồn tại: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] Không thể dọn dẹp môi trường ảo không hợp lệ:\n Đường dẫn: {path}\n Lỗi: {error}\n\nVui lòng xóa thư mục theo cách thủ công hoặc bỏ chọn 'Giữ Venv cục bộ' và thử lại.",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] Xây dựng thất bại: Phiên bản trình biên dịch C++ không tương thích.",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Yêu cầu trình biên dịch Python 3.13+.",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] Xây dựng bị gián đoạn bất thường!\n\nKhắc phục sự cố phổ biến:\n1. Không khớp môi trường (phổ biến nhất): Phiên bản Python được chọn không tương thích với mã nguồn của bạn. Vui lòng vào [Cài đặt xây dựng] để chuyển sang phiên bản Python bạn thường dùng cho mã này.\n2. Thiếu phụ thuộc: Nhấp vào 'Chế độ chi tiết' ở trên để kiểm tra ModuleNotFoundError.\n3. Chặn bởi phần mềm diệt virus: Đảm bảo phần mềm bảo mật của bạn không chặn quá trình xây dựng.\n\n(Lưu ý: Điều này thường do sự khác biệt giữa môi trường/mã nguồn chứ không phải do công cụ đóng gói. Vui lòng kiểm tra nhật ký chi tiết để biết lý do chính xác.)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] Biên dịch bị gián đoạn với ngoại lệ, vui lòng nhấp vào 'Chế độ chi tiết' phía trên cửa sổ nhật ký để khắc phục sự cố.",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] Đã thêm '{name}' vào Tài nguyên bổ sung.",
|
||||
@@ -313,6 +332,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] Đang tạo môi trường ảo...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] Đang tải trình duyệt Playwright qua gương: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] Đang đánh giá bộ nhớ vật lý của hệ thống (Khả dụng: {ram:.1f} GB). Đã điều chỉnh độ đồng thời thích ứng: {cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] Đã tìm thấy môi trường MSVC + Windows SDK tương thích, sử dụng trình biên dịch gốc.",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] Đã tìm thấy môi trường Clang cục bộ, ưu tiên trình biên dịch LLVM Clang.",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] Đã tìm thấy môi trường GCC/MinGW-w64 cục bộ, sử dụng trình biên dịch MinGW64.",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] Đã tìm thấy môi trường MSVC cục bộ, ưu tiên trình biên dịch C++ gốc.",
|
||||
@@ -321,11 +341,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] Đang khởi tạo môi trường xây dựng cô lập...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] Đang cài đặt môi trường xây dựng và các phụ thuộc dự án ({count} gói): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] Chế độ Lite được bật, áp dụng tối ưu hóa bytecode (-OO) và loại bỏ các mô-đun dev...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] Không phát hiện MSVC 14.3+. Nuitka sẽ sử dụng/tải xuống bộ công cụ MinGW64 (Python {v}).",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] Không phát hiện trình biên dịch C cục bộ. Nuitka sẽ tự động tải xuống và quản lý bộ công cụ MinGW-w64 tương thích.",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Mẹo Nuitka: Nếu được nhắc tải xuống trình biên dịch GCC/MinGW trong lần xây dựng đầu tiên, vui lòng đảm bảo kết nối mạng ổn định.",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] Venv cũ đã được đổi tên thành: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] Đang thực hiện kiểm tra môi trường sơ bộ...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] Đã phát hiện Playwright. Đang cài đặt trình duyệt tích hợp (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Đã phát hiện Python 3.13+: Sử dụng trình biên dịch Zig (--zig) làm backend C.",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] Đã phát hiện Python 3.13+: Sử dụng trình biên dịch Zig (--zig) làm backend gốc.",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Đường dẫn trình thông dịch Python: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] Đang giải quyết các phụ thuộc dự án...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] Đang thử lại tải trình duyệt Playwright qua CDN chính thức...",
|
||||
@@ -344,21 +367,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] Biên dịch hoàn tất, đường dẫn đầu ra: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] Đã áp dụng chữ ký số thành công!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] Mã nguồn chứa lỗi cú pháp, biên dịch bị hủy:\n - Tệp: {file}\n - Loại: {type}\n - Dòng: Dòng {line}\n - Chi tiết: {desc}\n\nMẹo: Vui lòng đảm bảo mã nguồn chạy cục bộ trước khi đóng gói.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Phân tích cú pháp mã nguồn thất bại, hủy xây dựng:\n - Tệp: {file}\n - Chi tiết: {desc}\n\nMẹo: Đây thường KHÔNG phải lỗi của công cụ đóng gói.\nVui lòng đảm bảo [Phiên bản Python xây dựng] bạn chọn khớp với phiên bản bạn đã dùng để [Viết/Kiểm tra mã].\nSử dụng cú pháp mới hơn (ví dụ: toán tử walrus :=, union type |, match-case) trong môi trường Python cũ sẽ gây ra lỗi này.\nChúng tôi khuyên bạn nên đến [Cài đặt xây dựng] -> [Công cụ] để chuyển sang phiên bản Python chính xác.",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] Phân tích cú pháp mã nguồn thất bại, xây dựng bị hủy:\n - Tệp: {file}\n - Dòng: Dòng {line}\n - Chi tiết: {desc}\n\nMẹo: Đây thường KHÔNG phải lỗi của công cụ đóng gói.\nVui lòng đảm bảo [Phiên bản Python xây dựng] bạn chọn khớp với phiên bản bạn đã dùng để [Viết/Kiểm tra mã].\nSử dụng cú pháp mới hơn (ví dụ: toán tử hải mã :=, union kiểu |, match-case) trong môi trường Python cũ hơn sẽ gây ra lỗi này.\nChúng tôi khuyên bạn nên đến [Cài đặt xây dựng] -> [Công cụ] để chuyển sang phiên bản Python chính xác.",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] Đã phát hiện mô-đun 'multiprocessing'. Đảm bảo gọi 'multiprocessing.freeze_support()' trong 'if __name__ == \"__main__\":' để tránh vòng lặp tiến trình vô hạn (fork bombs).",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] Ngoại lệ phân tích AST: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] Hết thời gian chờ lệnh (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] Đã phát hiện 'requests' hoặc 'httpx'. Tự động đóng gói chứng chỉ 'certifi' để tránh lỗi SSL.",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] Không thể xóa venv không hợp lệ, đang thử đổi tên: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] Không thể xóa môi trường không hợp lệ, chuyển sang hộp cát tạm thời: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] Chuyển đổi biểu tượng sang .icns thất bại, xây dựng mà không có biểu tượng.",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] Ghi tài nguyên biểu tượng bị chặn (có thể bị hệ thống/phần mềm diệt virus khóa), kích hoạt bảo vệ dự phòng...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] Phát hiện dung lượng đĩa thấp trên ổ đĩa đích xây dựng (Khả dụng: {free:.1f} GB, khuyến nghị >= 5.0 GB). Quá trình xây dựng có thể bị gián đoạn do đĩa đầy.",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] Phát hiện dung lượng đĩa thấp: {free:.1f} GB khả dụng",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] Đã bắt được ngoại lệ cấp phát bộ nhớ (ZstdError / OOM). Kích hoạt dự phòng bảo vệ bộ nhớ: Thử lại ở chế độ đơn luồng...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] Gói '{pkg}' cài đặt thất bại, bỏ qua...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] Ngoại lệ chèn mã tạm dừng: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Cài đặt trình duyệt Playwright thất bại trên tất cả các nguồn, quá trình xây dựng sẽ tiếp tục với rủi ro...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32-bit) yêu cầu Visual Studio 2022 với Windows SDK. Bản dựng sẽ thử với môi trường hiện tại.",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Dự phòng phát hiện thông tin môi trường Python: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] Cảnh báo đọc requirements.txt: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] Thư mục dùng chung không hợp lệ, chuyển sang chế độ môi trường cô lập.",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] Thư mục dùng chung thiếu quyền ghi, chuyển sang chế độ cô lập.",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] Ký thông minh thất bại, nhưng đầu ra xây dựng được giữ lại.",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] Một số phụ thuộc cài đặt thất bại, quá trình xây dựng sẽ tiếp tục với rủi ro...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] Các phiên bản đã chỉ định cài đặt thất bại. Đang loại bỏ ràng buộc phiên bản để tự động khớp tương thích...",
|
||||
|
||||
@@ -0,0 +1,401 @@
|
||||
{
|
||||
" [Console]": "[控制台]",
|
||||
" [No Console]": "[无控制台]",
|
||||
"* Nuitka Auto-manages C Compiler": "* Nuitka 自动接管 C 编译器",
|
||||
"* Sponsorship is completely voluntary, serves as an unconditional encouragement to the open-source community, and involves no commercial commitments. Thank you for your support!": "* 赞助完全出于自愿,属于对开源社区的无偿鼓励,不涉及任何商业承诺。感谢您的支持!",
|
||||
"<b><span style='color:#16a34a;'>✔ Detected locally:</span></b><br><span style='color:#475569; font-family:Consolas;'>{path}</span><br><span style='color:#16a34a; font-size:11px;'>Ready to switch directly without re-downloading.</span>": "<b><span style='color:#16a34a;'>✔ 本地已检测到此版本:</span></b><br><span style='color:#475569; font-family:Consolas;'>{path}</span><br><span style='color:#16a34a; font-size:11px;'>可直接切换使用,无需重复下载。</span>",
|
||||
"<b>Are you sure you want to reset all preferences?</b><br><span style='color:#64748b; font-size:12px;'>All settings will be restored to default state.</span>": "<b>确定重置所有偏好设置?</b><br><span style='color:#64748b; font-size:12px;'>所有设置将恢复为默认状态。</span>",
|
||||
"<b>Found {count} virtual environment(s) for the current project:</b><br><span style='color:#64748b; font-size:11px;'>{paths}</span><br><br>Are you sure you want to delete them to free up disk space?": "<b>在当前项目下检测到 {count} 个隔离虚拟环境:</b><br><span style='color:#64748b; font-size:11px;'>{paths}</span><br><br>确定要全部清理以释放磁盘空间吗?",
|
||||
"<b>Python Environment Installed Successfully!</b><br><br>System environment variables updated. Recommended to exit and restart the software to apply changes.": "<b>Python 环境安装成功!</b><br><br>建议退出软件后重新打开以生效环境变量。",
|
||||
"<b>Python Environment Management</b><br><span style='color:#475569; font-size:12px; line-height:1.6;'>Supports switching locally detected Python environments or downloading new versions.</span>": "<b>Python 环境管理</b><br><span style='color:#475569; font-size:12px; line-height:1.6;'>支持切换本地已检测到的 Python 环境或下载新版本。</span>",
|
||||
"<b>Python Environment Required</b><br><span style='color:#475569; font-size:12px; line-height:1.6;'>Application build depends on a Python interpreter.<br>Please select a version to automatically download, install, and configure environment variables.</span>": "<b>需要 Python 编译环境</b><br><span style='color:#475569; font-size:12px; line-height:1.6;'>应用构建需要依赖 Python 解释器。<br>请选择版本以自动下载安装与配置环境变量。</span>",
|
||||
"<b>Python is not detected on your system!</b><br><br>QPyPack requires a Python environment to compile your code.<br>If you haven't installed Python, please download and install it (remember to check <b>'Add Python.exe to PATH'</b> during installation).": "<b>未在系统中检测到有效的 Python 环境</b><br><br>QPyPack 需要依赖 Python 才能编译代码。<br>如果您尚未安装,请前往官网下载安装 (提示:安装界面底部请务必勾选 <b>'Add Python.exe to PATH'</b>)。",
|
||||
"<b>Python is not detected on your system!</b><br><br>QPyPack requires a Python environment to compile your code.<br>If you haven't installed Python, please download and install it.": "<b>您的系统未检测到Python!</b><br><br>QPyPack需要Python环境来编译您的代码。<br>如果您尚未安装Python,请下载并安装。",
|
||||
"<b>Recommendation:</b> Python <b>3.11.9</b> is recommended for optimal build compatibility and engine support.": "<b>建议:</b> 推荐选择 <b>Python 3.11.9</b>,该版本具备最佳的编译兼容性与引擎支持。",
|
||||
"<div style=\"margin-bottom: 5px;\"><b>Interpreter</b></div><span style=\"color:#6b7280;\">Auto-detecting system environment and OS support matrix...</span>": "<div style=\"margin-bottom: 5px;\"><b>解释器</b></div><span style=\"color:#6b7280;\">正在自动检测系统环境与支持操作系统情况...</span>",
|
||||
"AST Scan": "AST 扫描",
|
||||
"AST scan completed, found {count} dependencies.": "AST 扫描完成,发现 {count} 个隐式依赖。",
|
||||
"AWS PyPI Mirror (US/EU)": "AWS PyPI 镜像 (美/欧)",
|
||||
"About": "关于",
|
||||
"Active backport conflicts detected ({count}): {pkgs}": "[WARN] 检测到与当前解释器冲突的模块 ({count}): {pkgs}",
|
||||
"Add Backport Rule": "添加拦截规则",
|
||||
"Add Dir": "添加目录",
|
||||
"Add File": "添加文件",
|
||||
"Add Mapping": "添加映射",
|
||||
"Additional Resources (Drag & Drop Supported)": "附加资源 (支持拖拽)",
|
||||
"Aliyun Cloud (China)": "阿里云镜像",
|
||||
"Analyze Dependencies (AST)": "分析依赖 (原生 AST)",
|
||||
"App Icon:": "应用图标:",
|
||||
"App Metadata & Presets": "元数据与预设",
|
||||
"Apple Silicon (M-Series) & Intel": "支持 Apple Silicon (M系列) 与 Intel",
|
||||
"Apple Silicon (M1/M2) & Intel": "支持 Apple Silicon (M1/M2) 与 Intel",
|
||||
"Attention: Please check the log for details.": "提示: 请检查下方日志排查详细原因。",
|
||||
"Author/Company:": "作者/公司:",
|
||||
"Auto Extract Icon": "自动提取图标",
|
||||
"Auto-applies digital signature to built app, eliminating 'Unknown Publisher' warning": "自动为生成的应用程序添加数字签名,提升系统信任度",
|
||||
"Auto-patched missing ({count}): {pkgs}": "自动补齐 ({count}): {pkgs}",
|
||||
"Auto-save Build Log": "自动保存日志",
|
||||
"Backport exclusion rules have been reset to defaults.": "废弃兼容包拦截规则已恢复默认设置。",
|
||||
"Backup PIP Index:": "备用 PIP 源:",
|
||||
"Browse": "浏览...",
|
||||
"Build Cancelled": "构建已取消",
|
||||
"Build Engine:": "构建引擎:",
|
||||
"Build Failed": "构建失败",
|
||||
"Build Settings": "构建设置",
|
||||
"Build Successful": "构建成功",
|
||||
"Build engine packages ({count}): {pkgs}": "引擎依赖 ({count}): {pkgs}",
|
||||
"CPU Cores:": "CPU 核心数:",
|
||||
"Cancel": "取消",
|
||||
"Cancel & Return": "取消并返回",
|
||||
"Cert Password:": "证书密钥密码:",
|
||||
"Certificate Subject (e.g. My Company):": "证书颁发者 (如 My Company):",
|
||||
"Certificate generated successfully!": "证书生成成功!",
|
||||
"Certificate password": "证书密钥密码",
|
||||
"Check log output below for troubleshooting.": "请查看下方日志排查问题",
|
||||
"Clean Temporary Cache After Build": "构建后清理缓存",
|
||||
"Clear All": "清空全部",
|
||||
"Clear Local Venvs": "清理虚拟环境",
|
||||
"Clear Log": "清空日志",
|
||||
"Clear Virtual Environments": "清理项目虚拟环境",
|
||||
"Click to automatically download, install Python, and configure system environment variables.": "点击后将自动下载安装 Python 并配置系统环境变量。",
|
||||
"Code Signing": "代码签名",
|
||||
"Comma separated (e.g. pandas, PyQt5)": "逗号分隔 (如 pandas, PyQt5)",
|
||||
"Comma separated (e.g. tkinter, matplotlib)": "逗号分隔 (如 tkinter, matplotlib)",
|
||||
"Commercial PFX File:": "商业证书文件 (.pfx):",
|
||||
"Compatibility Mode (Default)": "兼容模式 (默认)",
|
||||
"Compatibility depends on build environment glibc version.": "兼容性取决于当前系统的 glibc 版本",
|
||||
"Concise Log Output": "精简日志",
|
||||
"Concise Mode": "精简日志",
|
||||
"Config preset exported to: {path}": "配置预设已成功导出至: {path}",
|
||||
"Config preset imported successfully.": "配置预设已成功导入。",
|
||||
"Configure Build Settings": "构建设置",
|
||||
"Configure Manually": "手动配置路径",
|
||||
"Confirm Password:": "确认密码:",
|
||||
"Contents Directory (--contents-directory):": "内部资源目录:",
|
||||
"Copy": "复制",
|
||||
"Create": "创建",
|
||||
"Create Self-Signed Cert": "创建自签证书",
|
||||
"Custom Directory": "自定义目录",
|
||||
"Cut": "剪切",
|
||||
"Declared in requirements.txt ({count}): {pkgs}": "依赖声明 ({count}): {pkgs}",
|
||||
"Declared in requirements.txt: None": "依赖声明: 无",
|
||||
"Delete All": "一键清空",
|
||||
"Deleting...": "正在删除...",
|
||||
"Dependencies": "依赖管理",
|
||||
"Dependency Missing Warning: {pkgs} failed to install. Check log for details.": "依赖缺失警告: {pkgs} 安装失败。详情请查看日志。",
|
||||
"Description:": "描述:",
|
||||
"Desktop Application": "桌面应用程序",
|
||||
"Detailed Mode": "详细日志",
|
||||
"Directory": "目录",
|
||||
"Discovered via scanner ({count}): {pkgs}": "扫描发现 ({count}): {pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "磁盘空间严重不足: {free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "双击编辑目标路径;支持拖拽",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "双击编辑目标路径;支持拖拽。建议使用「导出预设」进行保存。",
|
||||
"Download New Version": "下载新版本",
|
||||
"Download Python": "前往下载 Python",
|
||||
"Download complete. Starting Python installation...": "下载完成,正在后台安装 Python...",
|
||||
"Downloading Python {ver}... Please wait.": "正在下载 Python {ver},请稍候...",
|
||||
"Drag & Drop Python script (.py/.pyw) here\nor Click to Browse": "拖拽 Python 脚本 (.py/.pyw) 到此\n或点击浏览",
|
||||
"Drop Python source code to start": "拖拽 Python 源码至此开始",
|
||||
"Edit Path": "编辑路径",
|
||||
"Enable Automatic Backport Isolation": "开启废弃兼容包动态隔离",
|
||||
"Enable Smart Code Signing": "开启数字签名",
|
||||
"Enable UPX Compression": "启用 UPX 压缩",
|
||||
"Engine": "构建引擎",
|
||||
"Engine & Environment": "引擎与环境",
|
||||
"Environment Analysis": "运行环境分析",
|
||||
"Environment Analysis & Remediation": "运行环境分析",
|
||||
"Error": "错误",
|
||||
"Exclude Modules:": "排除模块 (excludes):",
|
||||
"Execution Log": "执行日志",
|
||||
"Execution Mode": "执行模式",
|
||||
"Exit Now": "退出软件",
|
||||
"Export Log...": "导出日志...",
|
||||
"Export Preset...": "导出预设...",
|
||||
"Failed to generate certificate.": "生成证书失败。",
|
||||
"File": "文件",
|
||||
"Folder Mode (--onedir)": "文件夹模式 (--onedir)",
|
||||
"Full backward compatibility": "兼容旧版操作系统",
|
||||
"Generate": "生成",
|
||||
"GitHub Repository": "GitHub 仓库",
|
||||
"Global configuration has been reset.": "全局偏好配置已恢复默认。",
|
||||
"Hidden Imports:": "隐式导入 (hidden-imports):",
|
||||
"Hide Console (--noconsole)": "隐藏控制台 (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "折叠证书高级设置 ▾",
|
||||
"Huawei Cloud (China)": "华为云镜像",
|
||||
"Icon file not found: {path}": "图标文件未找到:{path}",
|
||||
"Import Name": "导入名",
|
||||
"Import Preset...": "导入预设...",
|
||||
"Import name (e.g. cv2):": "导入名 (如 cv2):",
|
||||
"Independent Developer": "独立开发者",
|
||||
"Initializing build...": "初始化构建...",
|
||||
"Inspect Interpreter Environment": "校验解释器环境",
|
||||
"Install Complete": "安装完成",
|
||||
"Install requirements.txt": "安装 requirements.txt",
|
||||
"Internal directory name for dependencies (default: _internal)": "内部依赖与资源存放目录名 (默认: _internal)",
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "[OK] 解释器环境校验通过: 未检测到冲突模块。",
|
||||
"Interpreter:": "解释器:",
|
||||
"Invalid syntax": "无效语法",
|
||||
"Isolated Environment": "独立环境",
|
||||
"Issues & Feedback": "问题与反馈",
|
||||
"Keep Local Venv": "保留当前脚本虚拟环境",
|
||||
"Later": "稍后",
|
||||
"Leave blank to auto-detect from environment variables": "留空则从环境变量自动检测",
|
||||
"Leave blank to auto-detect system default Python": "留空则自动检测系统 Python",
|
||||
"Leave blank to auto-match script name": "留空则自动匹配脚本名",
|
||||
"Leave blank to auto-search requirements.txt in current directory": "留空则自动检索当前目录 requirements.txt",
|
||||
"Legacy macOS Compatible": "兼容旧版 macOS",
|
||||
"Lite Mode (Smaller size)": "精简模式 (体积小)",
|
||||
"Loaded: {filename}": "已载入: {filename}",
|
||||
"Locally Detected Pythons": "已检测环境",
|
||||
"Lock Core Dependencies": "锁定核心依赖",
|
||||
"Log saved to: {path}": "日志已保存: {path}",
|
||||
"Manifest complete (No missing packages)": "清单完整 (无缺失包)",
|
||||
"Maximum compatibility. Recommended for apps with complex dynamic imports.": "最大兼容性。适合使用了复杂动态导入的项目。",
|
||||
"Min Python Ver": "最低内置版本",
|
||||
"Minimum Built-in Python Version (e.g. 3.4):": "最低内置 Python 版本 (如 3.4):",
|
||||
"Mirrors & Scanner": "镜像与扫描",
|
||||
"Modern Cross-Platform Python Application Packager": "现代化的跨平台 Python 应用打包工具",
|
||||
"Modern Cross-Platform Python Packaging GUI Powered by PyInstaller & Nuitka": "基于 PyInstaller 与 Nuitka 的现代化跨平台 Python 打包工具",
|
||||
"No Windows 7 Support": "不支持 Windows 7",
|
||||
"No environment conflicts detected.": "未检测到环境冲突模块。",
|
||||
"No local Python environments detected.": "未检测到本地 Python 环境",
|
||||
"No local virtual environments found to clean.": "当前项目目录下未发现可清理的虚拟环境。",
|
||||
"No log content.": "无日志内容。",
|
||||
"Nuitka Version:": "Nuitka 版本:",
|
||||
"Nuitka — Compiles source code into native C/C++ binary. Produces smaller package size, faster execution, and deep anti-decompilation protection (requires C compiler).": "Nuitka — 编译为原生 C/C++ 二进制。体积更小,执行更快,具备强抗反编译能力 (需 C 编译器)。",
|
||||
"OK": "OK",
|
||||
"OS Support Matrix:": "支持操作系统情况::",
|
||||
"Obsolete Backport Exclusion Rules": "废弃兼容包拦截规则",
|
||||
"One-Click Download & Install": "下载并自动安装",
|
||||
"One-Click Install": "一键安装 Python",
|
||||
"One-File Mode (--onefile)": "单文件模式 (--onefile)",
|
||||
"Only supported on Windows.": "仅支持在 Windows 系统下生成 .pfx 证书。",
|
||||
"Open Directory": "打开目录",
|
||||
"Open output directory or reset workspace.": "打开输出目录或重置工作区",
|
||||
"Optimization & Security": "优化与安全",
|
||||
"Output Location": "输出位置",
|
||||
"Output Location:": "保存位置:",
|
||||
"Output Name:": "输出名称:",
|
||||
"Output directory not writable: {error}": "输出目录不可写:{error}",
|
||||
"Package Map": "包名映射与规则",
|
||||
"Package Mapping & Remediation": "包名与规则",
|
||||
"Package Mappings & Rules": "包名映射与规则",
|
||||
"Package Name": "包名称",
|
||||
"Package Name (e.g. pathlib):": "包名 (如 pathlib):",
|
||||
"Package Name Mappings": "包名映射",
|
||||
"Package mappings have been reset to defaults.": "包名映射已恢复为默认设置。",
|
||||
"Packaging Mode:": "打包模式:",
|
||||
"Parsing metadata...": "解析元数据...",
|
||||
"Password cannot be empty!": "密码不能为空!",
|
||||
"Password:": "密码::",
|
||||
"Passwords do not match!": "两次输入的密码不一致!",
|
||||
"Paste": "粘贴",
|
||||
"Performance Optimization": "性能优化",
|
||||
"Platform Support Matrix:": "平台支持::",
|
||||
"Preferences": "偏好设置",
|
||||
"Preferences & System Behavior": "偏好与行为",
|
||||
"Preparing engine...": "准备引擎...",
|
||||
"Primary PIP Index:": "主 PIP 源:",
|
||||
"Project-specific. Not saved to global preferences. Use 'Export Preset' to save config.": "提示:此处资源配置仅对当前项目生效。如需长期复用,请使用「导出预设」。",
|
||||
"PyInstaller Version:": "PyInstaller 版本:",
|
||||
"PyInstaller — Bundles Python interpreter and bytecode. Fast build speed, zero configuration (no C compiler needed), and excellent compatibility.": "PyInstaller — 打包解释器与字节码。构建迅速,零配置 (无需 C 编译器),兼容性优异。",
|
||||
"PyPI Home": "PyPI 主页",
|
||||
"PyPI Official (Global Default)": "PyPI 官方源 (默认)",
|
||||
"PyPI Package Name": "PyPI 包名",
|
||||
"PyPI package name for [{imp_name}]:": "[{imp_name}] 对应 PyPI 包名:",
|
||||
"Python 3.10.11": "Python 3.10.11",
|
||||
"Python 3.11.9 (Recommended)": "Python 3.11.9 (推荐)",
|
||||
"Python 3.12.4": "Python 3.12.4",
|
||||
"Python 3.13.0": "Python 3.13.0",
|
||||
"Python 3.14.6 (Experimental)": "Python 3.14.6 (实验性)",
|
||||
"Python 3.8.10 (Win7 Support)": "Python 3.8.10 (Win7 兼容)",
|
||||
"Python 3.9.13": "Python 3.9.13",
|
||||
"Python Environment Management": "Python 环境管理",
|
||||
"Python Environment Required": "需要 Python 环境",
|
||||
"Python Packaging, Reimagined.": "重新定义 Python 应用打包体验",
|
||||
"Python TestPyPI": "TestPyPI 测试源",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python 安装完毕。请稍后手动重启 QPyPack 以生效环境变量。",
|
||||
"Python interpreter not found: {path}": "Python 解释器未找到: {path}",
|
||||
"QPyPack Developer": "QPyPack 开发者",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack 是一款免费开源工具。如果它提升了您的效率或解决了打包难题,欢迎赞助支持本开源项目。",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "内存严重不足: {free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "就绪,等待构建",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "原因:Python 3.13+ 已不再支持 MinGW64 编译器,需要 Zig (x64) 或 Visual Studio 2022。",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "原因:Python 3.11+ 使用 MSVC 时必须安装 Visual Studio 2022 (MSVC 14.3) 且勾选 Windows SDK。",
|
||||
"Rebuild": "重新构建",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "建议:6位以上,仅使用英文字母、数字、减号及下划线。避免使用中文或空格以防签名失败。",
|
||||
"Remediate Detected Conflicts": "清理环境冲突依赖",
|
||||
"Remediation completed for packages: {pkgs}": "[OK] 已成功清理以下冲突模块: {pkgs}",
|
||||
"Remove Selected": "移除选中项",
|
||||
"Requirements File:": "依赖清单 (requirements):",
|
||||
"Reset": "重置",
|
||||
"Reset to Default Config": "重置默认配置",
|
||||
"Resource not found: {path}": "资源未找到:{path}",
|
||||
"Resources": "附加资源",
|
||||
"Restore Defaults": "恢复默认",
|
||||
"Save & Return": "保存并返回",
|
||||
"Save Certificate": "保存证书",
|
||||
"Scan Entire Folder": "扫描整个文件夹",
|
||||
"Scanning...": "正在扫描...",
|
||||
"Script and settings retained. Ready to rebuild.": "已保留当前配置,就绪等待重新构建。",
|
||||
"Script file is locked by cloud sync": "脚本文件被云同步锁定",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "脚本已载入。您可将资源文件夹或文件直接拖入主区域进行捆绑打包。",
|
||||
"Select .pfx / .p12 certificate file": "请选择 .pfx / .p12 格式证书",
|
||||
"Select All": "全选",
|
||||
"Select Python Version to Download:": "选择 Python 版本::",
|
||||
"Select shared directory...": "请选择共享目录...",
|
||||
"Self-Signed Certificate (*.pfx)": "自签名证书 (*.pfx)",
|
||||
"Shared Environment": "共享环境",
|
||||
"Shared environment name (optional, leave empty for isolated)": "共享环境名 (可选, 留空则独立)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "产物体积最小。推荐 95% 的常规应用使用。",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "解决方法:\n1. 前往【构建设置】切换为 [PyInstaller] 引擎(推荐)。\n2. 或安装 Visual Studio 2022 C++ 编译套件。",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "解决方法:\n1. 安装/更新 Visual Studio 2022(勾选“使用 C++ 的桌面开发”及 Windows SDK)。\n2. 或前往【构建设置】切换为 [PyInstaller] 引擎打包。",
|
||||
"Sound Notification": "完成提示音",
|
||||
"Source Directory (.qpypack_build)": "源码同级目录 (.qpypack_build)",
|
||||
"Source File Directory": "源码同级目录",
|
||||
"Sponsor": "赞助支持",
|
||||
"Start Build": "开始构建",
|
||||
"Status: Build Cancelled": "状态: 构建已取消",
|
||||
"Status: Build Completed": "状态: 构建完成",
|
||||
"Status: Build Failed": "状态: 构建失败",
|
||||
"Status: Environment inspection ready.": "状态: 等待环境校验。",
|
||||
"Status: Loaded {filename}{mode}": "状态: 已载入 {filename}{mode}",
|
||||
"Status: Packaging ({engine}) ...": "状态: 构建中 ({engine})...",
|
||||
"Status: Parsing {filename}...": "状态: 解析 {filename}...",
|
||||
"Status: Ready": "状态: 就绪",
|
||||
"Status: Workspace Reset": "状态: 工作区已重置",
|
||||
"Stop Build": "停止构建",
|
||||
"Successfully cleaned {count} virtual environment(s), freed {size:.1f} MB disk space.": "已成功清理 {count} 个虚拟环境,共释放 {size:.1f} MB 磁盘空间。",
|
||||
"Switched to [Build Settings] -> [Engine], please set the Python path.": "已自动切换至【构建设置】->【构建引擎】,请手动指定 Python 解释器路径。",
|
||||
"Switched to local Python environment: {path}": "已成功切换至本地 Python 环境: {path}",
|
||||
"System Default ({sys_native})": "系统默认 ({sys_native})",
|
||||
"System Temp Directory": "系统 Temp 目录",
|
||||
"Target Directory:": "自定义路径:",
|
||||
"Target relative path:": "目标相对路径:",
|
||||
"Temporary Directory:": "临时目录:",
|
||||
"Tencent Cloud (China)": "腾讯云镜像",
|
||||
"Tip: Build failed in Lite Mode. You can try switching to [Compatibility Mode] in Build Settings and rebuild.": "提示: 精简模式构建失败。您可以尝试在【构建设置】中勾选 [兼容模式] 重新打包。",
|
||||
"Toggle Execution Log": "切换日志",
|
||||
"Tsinghua University (China)": "清华大学镜像",
|
||||
"UI Language:": "界面语言:",
|
||||
"UPX Path:": "UPX 路径:",
|
||||
"USTC (China)": "中科大镜像",
|
||||
"Undo": "撤销",
|
||||
"Unknown": "未知",
|
||||
"Use Custom Commercial Cert (Optional) ▸": "配置商业数字证书 (可选) ▸",
|
||||
"Use Installed Version Directly": "✔ 本地已存在,直接切换",
|
||||
"Use Selected Environment": "切换至选中环境",
|
||||
"Use Virtual Environment": "使用虚拟环境",
|
||||
"Version:": "版本:",
|
||||
"View Python": "查看 Python",
|
||||
"[ERROR] Additional resource file/directory not found: {path}": "[ERROR] 附加数据中的文件/目录不存在: {path}",
|
||||
"[ERROR] Build aborted: Insufficient disk space (NoSpaceLeft / Errno 28). Please clean up drive space (at least 5 GB free space recommended) and try again.": "[ERROR] 构建中止: 磁盘空间不足 (NoSpaceLeft / Errno 28)。建议预留至少 5GB 可用空间。",
|
||||
"[ERROR] Build completed, but the following dependencies failed to install:\n\n - {pkgs}\n\nNote: The application might raise ModuleNotFoundError at runtime.": "[ERROR] 构建完成,但以下依赖安装失败:\n\n - {pkgs}\n\n注意: 运行时程序可能会抛出 ModuleNotFoundError。",
|
||||
"[ERROR] Could not locate valid executable product in temporary build directory: {path}": "[ERROR] 临时构建目录未找到可执行产物: {path}",
|
||||
"[ERROR] Environment remediation failed: {error}": "[ERROR] 环境修复失败:{error}",
|
||||
"[ERROR] Exception occurred during AST parsing: {error}": "[ERROR] AST 解析异常: {error}",
|
||||
"[ERROR] Failed to create virtual environment. Current Python environment might be missing necessary modules or have restricted permissions.": "[ERROR] 虚拟环境创建失败。环境可能缺失模块或权限受限。",
|
||||
"[ERROR] Failed to export log file: {error}": "[ERROR] 导出日志失败: {error}",
|
||||
"[ERROR] Failed to export preset file: {error}": "[ERROR] 导出预设失败: {error}",
|
||||
"[ERROR] I/O Exception: {err_msg}": "[ERROR] I/O 异常: {err_msg}",
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] 磁盘空间不足 (可用 {free:.1f} GB)。至少需 0.5 GB 才能安全初始化环境。",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] 目标输出目录无写入权限: {error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] 请加载有效的 Python 源码!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] 预检查失败:",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] 预设文件格式错误或已损坏: {error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] 进程错误: 命令或二进制文件缺失 ({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] 构建产物转移失败,文件可能被占用或无写入权限: {error}",
|
||||
"[ERROR] Python installation failed or was cancelled.": "[ERROR] Python 安装失败或已被主动取消。",
|
||||
"[ERROR] Python interpreter is invalid or not found: {path}": "[ERROR] Python 解释器无效或未找到: {path}",
|
||||
"[ERROR] Requirements file not found: {path}": "[ERROR] 指定的依赖清单文件不存在: {path}",
|
||||
"[ERROR] System execution exception: {error}": "[ERROR] 系统执行异常: {error}",
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] 目标文件被云盘锁定或加密,请解密后重试。",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] 目标程序正在运行或被占用。请先关闭程序后再重新构建。",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] 指定的应用图标文件不存在: {path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] 无法清理失效的虚拟环境:\n 路径: {path}\n 错误: {error}\n\n请手动删除该目录,或取消勾选'保留本地虚拟环境'后重试。",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] 编译失败:C++ 编译器或 Windows SDK 版本不兼容。",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Python 3.13+ 编译器兼容性限制。",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] 构建异常中断!\n\n常见原因排查:\n1. 环境不匹配 (最常见):您选择的打包 Python 版本与您的源码不兼容。请前往【构建设置】切换为您平时开发运行该代码的 Python 版本。\n2. 依赖缺失:请点击上方切换至「详细日志」,查看是否有模块未找到 (ModuleNotFoundError)。\n3. 杀毒软件拦截:请检查是否有安全软件阻止了打包过程。\n\n(注意:这通常是环境配置与代码差异导致,并非打包引擎本身故障,请查阅详细日志获取确切原因。)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] 构建异常中断,请切换至「详细日志」排查原因。",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] 已将资源 '{name}' 自动添加至附加资源列表",
|
||||
"[INFO] Added {count} resource item(s) to Additional Resources.": "[INFO] 已将 {count} 项附加资源自动导入",
|
||||
"[INFO] Analyzing source code and project dependencies...": "[INFO] 分析源码与依赖...",
|
||||
"[INFO] Applied digital signature with timestamp ({tsa})...": "[INFO] 已通过时间戳服务器 ({tsa}) 完成数字签名与盖章...",
|
||||
"[INFO] Applying smart digital signature...": "[INFO] 正在为应用程序添加数字签名...",
|
||||
"[INFO] Auto-detected existing virtual environment '{venv}'. 'Keep Local Venv' is checked.": "[INFO] 自动检测到现有虚拟环境'{venv}'。已勾选'保留本地虚拟环境'。",
|
||||
"[INFO] Auto-shielded obsolete backport module: '{pkg}' (Built-in in Python {ver})": "[INFO] 已自动屏蔽过时的反向移植模块:'{pkg}'(Python {ver} 内置)",
|
||||
"[INFO] Build Cancelled.": "[INFO] 构建已取消。",
|
||||
"[INFO] Build log exported to: {path}": "[INFO] 日志已导出: {path}",
|
||||
"[INFO] Compilation completed, archiving built files...": "[INFO] 编译完成,归档构建产物...",
|
||||
"[INFO] Creating virtual environment ({name})...": "[INFO] 创建隔离虚拟环境 ({name})...",
|
||||
"[INFO] Creating virtual environment...": "[INFO] 创建虚拟环境...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] 通过镜像下载 Playwright 浏览器: {url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] 评估系统可用物理内存 ({ram:.1f} GB),动态调整并发数: {cores} -> {safe_jobs}...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] 检测到兼容的 MSVC 及 Windows SDK 环境,使用原生编译器。",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] 检测到本地 Clang 环境,优先使用 LLVM Clang 编译器。",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] 检测到本地 GCC/MinGW-w64 环境,优先使用 MinGW64 编译器。",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] 检测到本地 MSVC 环境,优先使用原生 C++ 编译器。",
|
||||
"[INFO] Found local Zig environment, letting Nuitka manage C backend compilation.": "[INFO] 检测到本地 Zig 环境,由 Nuitka 接管 C 后端编译。",
|
||||
"[INFO] Freeing up space, cleaning temporary build environment...": "[INFO] 清理临时构建环境...",
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] 初始化构建环境...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] 安装依赖 ({count}): {pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] 启用精简模式,应用字节码优化 (-OO) 并剔除开发环境模块...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] 未检测到 MSVC 14.3+,Nuitka 将自动下载/使用 MinGW64 工具链 (Python {v})。",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] 未检测到本地 C 编译器,Nuitka 将自动下载并管理兼容的 MinGW-w64 工具链。",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Nuitka 提示: 首次构建如需下载 GCC/MinGW,请确保网络畅通。",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] 旧虚拟环境已重命名为: {name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] 执行预构建环境检查...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] 检测到 Playwright。正在安装内置浏览器驱动...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] Python 3.13+: 使用 Zig 编译器。",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] 检测到 Python 3.13+:使用 Zig 编译器 (--zig) 作为编译后端。",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Python 路径: {path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] 解析项目依赖...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] 通过官方 CDN 重试下载 Playwright 浏览器...",
|
||||
"[INFO] Reusing existing virtual environment...": "[INFO] 复用本地已存在的虚拟环境...",
|
||||
"[INFO] Reusing existing virtual environment: {path}": "[INFO] 复用本地隔离虚拟环境: {path}",
|
||||
"[INFO] Scanning project source code via AST engine...": "[INFO] 使用原生 AST 引擎扫描依赖...",
|
||||
"[INFO] Starting {engine} engine to compile binary files...": "[INFO] 启动 {engine} 引擎编译...",
|
||||
"[INFO] Stripping icon parameters and automatically rebuilding...": "[INFO] 移除图标参数并重新构建...",
|
||||
"[INFO] Successfully installed compatible versions.": "[INFO] 已成功安装兼容版本。",
|
||||
"[INFO] Switching to backup PyPI source for retrieval: {url}": "[INFO] 切换备用 PyPI 源: {url}",
|
||||
"[INFO] Synchronizing and upgrading pip package manager...": "[INFO] 更新 pip...",
|
||||
"[INFO] Tip: Executables without commercial signatures might be falsely flagged by Windows Defender/Antivirus.": "[INFO] 提示: 未进行商业签名的可执行程序可能被安全软件误报。",
|
||||
"[INFO] Using MinGW64 compiler (--mingw64) for C backend.": "[INFO] 使用 MinGW64 编译器。",
|
||||
"[INFO] Using MinGW64 compiler.": "[INFO] 使用MinGW64编译器。",
|
||||
"[INFO] Validating output files and generating final product...": "[INFO] 校验并生成最终产物...",
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] 构建成功,输出路径: {path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] 数字签名添加成功!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] 源码语法错误,构建中止:\n - 文件: {file}\n - 类型: {type}\n - 行号: {line}\n - 详情: {desc}\n\n提示: 请确保源码可在本地运行。",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] 源代码语法解析失败,构建中止:\n - 文件:{file}\n - 详情:{desc}\n\n提示:这通常不是打包工具的故障。\n请确保您选择的 [构建 Python 版本] 与您用于 [编写/测试代码] 的版本匹配。\n在较旧的 Python 环境中使用较新的语法(例如海象运算符 :=、类型联合 |、match-case)将触发此错误。\n我们建议您前往 [构建设置] -> [引擎] 切换到正确的 Python 版本。",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] 源码语法解析失败,构建中止:\n - 文件: {file}\n - 行号: {line}\n - 详情: {desc}\n\n提示:这通常不是打包工具的故障。\n请确认您当前选择的【打包 Python 版本】与您【编写代码时的版本】是否一致。\n高版本语法(如海象运算符 :=、类型联合 |、match-case 等)在低版本 Python 中会导致此错误。\n建议前往【构建设置】->【构建引擎】切换至对应版本的 Python。",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] 检测到 multiprocessing 模块。请确保在 'if __name__ == \"__main__\":' 块内调用 'multiprocessing.freeze_support()',以防引发无限进程死机。",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] AST 分析异常: {error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] 命令超时 (>{timeout}s)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] 检测到网络请求库,自动捆绑 'certifi' 根证书以防止 SSL 异常。",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] 无法删除失效虚拟环境,尝试重命名: {error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] 清理失效环境失败,降级为临时沙箱: {error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] 图标转换为 .icns 失败,将不使用图标构建。",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] 图标资源写入被拦截 (可能受安全软件限制),触发降级机制...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] 目标磁盘空间不足 (可用: {free:.1f} GB,推荐 >= 5.0 GB)。",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] 磁盘空间不足,当前可用: {free:.1f} GB。",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] 捕获内存分配异常 (ZstdError/OOM),降级为单线程模式重试...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] 包 '{pkg}' 安装失败,已跳过...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] 注入暂停代码异常: {error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] 所有 Playwright 浏览器下载源均失败,继续构建 (有风险)...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32位) 强制需要包含 Windows SDK 的 VS2022,正在尝试当前环境...",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Python 环境信息检测降级: {error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] 读取 requirements.txt 警告: {error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] 共享目录无效,降级为独立环境模式。",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] 共享目录缺少写入权限,降级为独立环境模式。",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] 数字签名未成功,但应用产物已正常保留。",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] 部分依赖安装失败,继续构建 (有风险)。...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] 指定版本安装失败,尝试自动匹配兼容版本...",
|
||||
"[WARN] Strongly recommend checking [Virtual Environment] to maximize lite mode effect.": "[WARN] 强烈建议启用「虚拟环境」以最大化精简效果。",
|
||||
"[WARN] System Python write permission restricted. Retrying with '--user' mode...": "[WARN] 系统 Python 缺少写入权限,正在重试以 '--user' 用户模式安装...",
|
||||
"[WARN] System low memory detected (zstd memory allocation failed). Automatically retrying in single-thread low-memory mode...": "[WARN] 内存不足 (zstd 分配失败),降级为单线程模式重试...",
|
||||
"[WARN] Target project is in a Cloud Sync directory (e.g. OneDrive/Dropbox). Cloud sync may temporarily lock build files.": "[WARN] 项目位于云同步目录,可能锁定构建文件。",
|
||||
"[WARN] Timestamp server connection timed out, performing local fast signing...": "[WARN] 时间戳服务器连通超时,进行本地快速签名...",
|
||||
"[WARN] Usage of '__file__' detected. In PyInstaller One-File mode, use 'sys._MEIPASS' to reliably locate bundled resource files!": "[WARN] 侦测到 '__file__' 的使用。在 PyInstaller 单文件模式下,请使用 'sys._MEIPASS' 定位资源释放路径,以免引发文件丢失错误。",
|
||||
"\\nProgram execution completed, press Enter to exit...": "\\n程序执行完成,按回车键退出..."
|
||||
}
|
||||
@@ -87,6 +87,7 @@
|
||||
"Detailed Mode": "詳細模式",
|
||||
"Directory": "目錄",
|
||||
"Discovered via scanner ({count}): {pkgs}": "透過掃描器發現({count}):{pkgs}",
|
||||
"Disk space critically low: {free:.1f}GB < {min:.1f}GB": "磁碟空間嚴重不足:{free:.1f}GB < {min:.1f}GB",
|
||||
"Double-click to edit target path; Drag & drop supported": "雙擊以編輯目標路徑;支援拖放",
|
||||
"Double-click to edit target path; Drag & drop supported. Use 'Export Preset' to save for reuse.": "雙擊以編輯目標路徑;支援拖放。使用「匯出預設」以儲存供重複使用。",
|
||||
"Download New Version": "下載新版本",
|
||||
@@ -121,6 +122,7 @@
|
||||
"Hide Console (--noconsole)": "隱藏控制台 (--noconsole)",
|
||||
"Hide Custom Cert Settings ▾": "隱藏自訂憑證設定 ▾",
|
||||
"Huawei Cloud (China)": "華為雲(中國)",
|
||||
"Icon file not found: {path}": "找不到圖示檔案:{path}",
|
||||
"Import Name": "匯入名稱",
|
||||
"Import Preset...": "匯入預設...",
|
||||
"Import name (e.g. cv2):": "匯入名稱(例如 cv2)::",
|
||||
@@ -133,6 +135,7 @@
|
||||
"Interpreter inspection passed: No active backport conflicts detected.": "直譯器檢查通過:未偵測到活動的向後相容衝突。",
|
||||
"Interpreter:": "直譯器::",
|
||||
"Invalid syntax": "無效語法",
|
||||
"Isolated Environment": "隔離環境",
|
||||
"Issues & Feedback": "問題與回饋",
|
||||
"Keep Local Venv": "保留本機虛擬環境",
|
||||
"Later": "稍後",
|
||||
@@ -173,6 +176,7 @@
|
||||
"Output Location": "輸出位置",
|
||||
"Output Location:": "輸出位置::",
|
||||
"Output Name:": "輸出名稱::",
|
||||
"Output directory not writable: {error}": "輸出目錄無法寫入:{error}",
|
||||
"Package Map": "套件對應",
|
||||
"Package Mapping & Remediation": "套件對應與修復",
|
||||
"Package Mappings & Rules": "套件對應與規則",
|
||||
@@ -211,9 +215,13 @@
|
||||
"Python Packaging, Reimagined.": "Python 打包,重新定義。",
|
||||
"Python TestPyPI": "Python TestPyPI",
|
||||
"Python installed. Please restart QPyPack manually later.": "Python 已安裝。請稍後手動重新啟動 QPyPack。",
|
||||
"Python interpreter not found: {path}": "找不到 Python 解譯器:{path}",
|
||||
"QPyPack Developer": "QPyPack 開發者",
|
||||
"QPyPack is a free and open-source tool. If it has improved your efficiency or solved packaging problems, consider buying the author a coffee!": "QPyPack 是免費且開源的工具。如果它提升了您的效率或解決了打包問題,請考慮請作者喝杯咖啡!",
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "RAM 嚴重不足:{free:.1f}GB < 1GB",
|
||||
"Ready, waiting for build.": "就緒,等待建置。",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "原因:MinGW64 在 Python 3.13+ 上不再受支援。請確保已安裝 Zig 或 VS 2022。",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "原因:Python 3.11+ 需要 Visual Studio 2022 (MSVC 14.3) 搭配 Windows SDK。",
|
||||
"Rebuild": "重新建置",
|
||||
"Recommendation: 6+ chars, alphanumeric, '-' and '_' only. Avoid spaces or Chinese to prevent signing errors.": "建議:6 個字元以上,僅限英數字、'-' 和 '_'。避免空格或中文,以防止簽署錯誤。",
|
||||
"Remediate Detected Conflicts": "修復偵測到的衝突",
|
||||
@@ -222,6 +230,7 @@
|
||||
"Requirements File:": "需求檔案::",
|
||||
"Reset": "重設",
|
||||
"Reset to Default Config": "重設為預設設定",
|
||||
"Resource not found: {path}": "找不到資源:{path}",
|
||||
"Resources": "資源",
|
||||
"Restore Defaults": "還原預設值",
|
||||
"Save & Return": "儲存並返回",
|
||||
@@ -229,12 +238,18 @@
|
||||
"Scan Entire Folder": "掃描整個資料夾",
|
||||
"Scanning...": "掃描中...",
|
||||
"Script and settings retained. Ready to rebuild.": "腳本和設定已保留。準備重新建置。",
|
||||
"Script file is locked by cloud sync": "指令碼檔案被雲端同步鎖定",
|
||||
"Script loaded. You can drag asset folders or data files directly here to bundle them.": "腳本已載入。您可以將資產資料夾或資料檔案直接拖曳到這裡以進行捆綁。",
|
||||
"Select .pfx / .p12 certificate file": "選擇 .pfx / .p12 憑證檔案",
|
||||
"Select All": "全選",
|
||||
"Select Python Version to Download:": "選擇要下載的 Python 版本::",
|
||||
"Select shared directory...": "選擇共用目錄...",
|
||||
"Self-Signed Certificate (*.pfx)": "自簽憑證 (*.pfx)",
|
||||
"Shared Environment": "共用環境",
|
||||
"Shared environment name (optional, leave empty for isolated)": "共用環境名稱(可選,留空則為隔離)",
|
||||
"Smaller output size. Recommended for 95% of standard apps.": "較小的輸出大小。建議用於 95% 的標準應用程式。",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "解決方案:\n1. 在「建置設定」中,切換到 [PyInstaller] 引擎(建議)。\n2. 或安裝支援 C++ 的 Visual Studio 2022。",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "解決方案:\n1. 安裝 Visual Studio 2022(勾選「使用 C++ 的桌面開發」和「Windows SDK」)。\n2. 或在「建置設定」中將引擎切換為 [PyInstaller]。",
|
||||
"Sound Notification": "聲音通知",
|
||||
"Source Directory (.qpypack_build)": "來源目錄 (.qpypack_build)",
|
||||
"Source File Directory": "來源檔案目錄",
|
||||
@@ -285,6 +300,7 @@
|
||||
"[ERROR] Insufficient disk space (Available: {free:.1f} GB). At least 0.5 GB is required to safely initialize the build environment.": "[ERROR] 磁碟空間不足(可用空間:{free:.1f} GB)。安全初始化建置環境至少需要 0.5 GB。",
|
||||
"[ERROR] Output directory is missing write permissions: {error}": "[ERROR] 輸出目錄缺少寫入權限:{error}",
|
||||
"[ERROR] Please load a valid Python source file first!": "[ERROR] 請先載入有效的 Python 原始碼檔案!",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] 預檢失敗::",
|
||||
"[ERROR] Preset file format error or corrupted: {error}": "[ERROR] 預設檔格式錯誤或已損毀:{error}",
|
||||
"[ERROR] Process error: command or binary missing ({error})": "[ERROR] 處理程序錯誤:命令或二進位檔遺失({error})",
|
||||
"[ERROR] Product transfer failed, file might be occupied by system process or lack permission: {error}": "[ERROR] 產品傳輸失敗,檔案可能被系統程序占用或缺少權限:{error}",
|
||||
@@ -295,6 +311,9 @@
|
||||
"[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again.": "[ERROR] 目標檔案被雲端硬碟鎖定或加密。請解密後重試。",
|
||||
"[ERROR] Target file is running or occupied. Please close the existing application and try again.": "[ERROR] 目標檔案正在執行或占用中。請關閉現有的應用程式後重試。",
|
||||
"[ERROR] The specified icon file does not exist: {path}": "[ERROR] 指定的圖示檔案不存在:{path}",
|
||||
"[ERROR] Unable to clean up invalid virtual environment:\n Path: {path}\n Error: {error}\n\nPlease manually delete the directory or uncheck 'Keep Local Venv' and retry.": "[ERROR] 無法清理無效的虛擬環境:\n 路徑:{path}\n 錯誤:{error}\n\n請手動刪除該目錄,或取消勾選「保留本機 Venv」後重試。",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[Environment Error] 建置失敗:C++ 編譯器版本不相容。",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[Environment Error] Python 3.13+ 編譯器需求。",
|
||||
"[FAILED] Build interrupted exceptionally!\n\nCommon Troubleshooting:\n1. Environment Mismatch (Most Common): The selected Python version is incompatible with your source code. Please go to [Build Settings] to switch to the Python version you normally use for this code.\n2. Missing Dependencies: Click 'Detailed Mode' above to check for ModuleNotFoundError.\n3. Antivirus Block: Ensure your security software is not blocking the build process.\n\n(Note: This is usually caused by environment/code discrepancies rather than the packaging engine itself. Please check the detailed log for exact reasons.)": "[FAILED] 建置被異常中斷!\n\n常見疑難排解:\n1. 環境不符(最常見):選取的 Python 版本與您的原始碼不相容。請前往 [建置設定] 切換至您平常用於此程式碼的 Python 版本。\n2. 缺少相依套件:按一下上方的「詳細模式」檢查是否有 ModuleNotFoundError。\n3. 防毒軟體封鎖:請確認您的安全軟體未封鎖建置程序。\n\n(注意:這通常是由環境/程式碼差異所導致,而非打包引擎本身的問題。請檢查詳細記錄以了解確切原因。)",
|
||||
"[FAILED] Compilation interrupted with exceptions, please click 'Detailed Mode' above the log window for troubleshooting.": "[FAILED] 編譯因例外狀況中斷,請按一下記錄視窗上方的「詳細模式」進行疑難排解。",
|
||||
"[INFO] Added '{name}' to Additional Resources.": "[INFO] 已將「{name}」新增至其他資源。",
|
||||
@@ -311,6 +330,7 @@
|
||||
"[INFO] Creating virtual environment...": "[INFO] 正在建立虛擬環境...",
|
||||
"[INFO] Downloading Playwright browsers via mirror: {url}": "[INFO] 正在透過鏡像下載 Playwright 瀏覽器:{url}",
|
||||
"[INFO] Evaluating system physical memory (Available: {ram:.1f} GB). Adaptive concurrency adjusted: {cores} -> {safe_jobs} ...": "[INFO] 正在評估系統實體記憶體 (可用:{ram:.1f} GB)。已調整自適應並行數:{cores} -> {safe_jobs} ...",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] 偵測到相容的 MSVC + Windows SDK 環境,使用原生編譯器。",
|
||||
"[INFO] Found local Clang environment, prioritizing LLVM Clang compiler.": "[INFO] 偵測到本機 Clang 環境,優先使用 LLVM Clang 編譯器。",
|
||||
"[INFO] Found local GCC/MinGW-w64 environment, using MinGW64 compiler.": "[INFO] 偵測到本機 GCC/MinGW-w64 環境,使用 MinGW64 編譯器。",
|
||||
"[INFO] Found local MSVC environment, prioritizing native C++ compiler.": "[INFO] 偵測到本機 MSVC 環境,優先使用原生 C++ 編譯器。",
|
||||
@@ -319,11 +339,14 @@
|
||||
"[INFO] Initializing isolated build environment...": "[INFO] 正在初始化隔離建置環境...",
|
||||
"[INFO] Installing build environment and project dependencies ({count} packages): {pkgs}": "[INFO] 正在安裝建置環境與專案相依性 ({count} 個套件):{pkgs}",
|
||||
"[INFO] Lite mode enabled, applying bytecode optimization (-OO) and stripping dev modules...": "[INFO] 已啟用精簡模式,套用位元組碼最佳化 (-OO) 並移除開發模組...",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] 未偵測到 MSVC 14.3+。Nuitka 將使用/下載 MinGW64 工具鏈(Python {v})。",
|
||||
"[INFO] No local C compiler detected. Nuitka will automatically download and manage a compatible MinGW-w64 toolchain.": "[INFO] 未偵測到本機 C 編譯器。Nuitka 將自動下載並管理相容的 MinGW-w64 工具鏈。",
|
||||
"[INFO] Nuitka Tip: If prompted to download GCC/MinGW compiler on first build, please ensure stable network connection.": "[INFO] Nuitka 提示:若首次建置時提示下載 GCC/MinGW 編譯器,請確保網路連線穩定。",
|
||||
"[INFO] Old venv renamed to: {name}": "[INFO] 舊的虛擬環境已重新命名為:{name}",
|
||||
"[INFO] Performing pre-flight environment checks...": "[INFO] 正在執行前置環境檢查...",
|
||||
"[INFO] Playwright detected. Installing built-in browsers (PLAYWRIGHT_BROWSERS_PATH=0)...": "[INFO] 偵測到 Playwright。正在安裝內建瀏覽器 (PLAYWRIGHT_BROWSERS_PATH=0)...",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend.": "[INFO] 偵測到 Python 3.13+:使用 Zig 編譯器 (--zig) 作為 C 後端。",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] 偵測到 Python 3.13+:使用 Zig 編譯器(--zig)作為原生後端。",
|
||||
"[INFO] Python interpreter path: {path}": "[INFO] Python 解譯器路徑:{path}",
|
||||
"[INFO] Resolving project dependencies...": "[INFO] 正在解析專案相依性...",
|
||||
"[INFO] Retrying Playwright browser download via official CDN...": "[INFO] 正在透過官方 CDN 重試下載 Playwright 瀏覽器...",
|
||||
@@ -342,21 +365,27 @@
|
||||
"[SUCCESS] Compilation completed, output path: {path}": "[SUCCESS] 編譯完成,輸出路徑:{path}",
|
||||
"[SUCCESS] Digital signature applied successfully!": "[SUCCESS] 數位簽章已成功套用!",
|
||||
"[Syntax Error] Source code contains syntax errors, compilation aborted:\n - File: {file}\n - Type: {type}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: Please ensure the source code runs locally before packaging.": "[Syntax Error] 原始碼包含語法錯誤,編譯已中止:\n - 檔案:{file}\n - 類型:{type}\n - 行號:第 {line} 行\n - 詳細資訊:{desc}\n\n提示:請確保原始碼在打包前可於本機正常執行。",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] 原始碼語法解析失敗,建置已中止:\n - 檔案:{file}\n - 詳細資訊:{desc}\n\n提示:這通常不是打包工具的錯誤。\n請確保您選擇的 [建置 Python 版本] 與您用來 [撰寫/測試程式碼] 的版本相符。\n在較舊的 Python 環境中使用較新的語法(例如海象運算子 :=、型別聯集 |、match-case)會觸發此錯誤。\n我們建議前往 [建置設定] -> [引擎] 切換到正確的 Python 版本。",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Line: Line {line}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] 原始碼語法剖析失敗,建置已中止:\n - 檔案:{file}\n - 行號:第 {line} 行\n - 詳細資訊:{desc}\n\n提示:這通常不是打包工具的錯誤。\n請確保您選擇的 [建置 Python 版本] 與您 [撰寫/測試程式碼] 時使用的版本相符。\n在較舊的 Python 環境中使用較新的語法(例如海象運算子 :=、型別聯集 |、match-case)會觸發此錯誤。\n我們建議前往 [建置設定] -> [引擎] 切換至正確的 Python 版本。",
|
||||
"[WARN] 'multiprocessing' module detected. Ensure 'multiprocessing.freeze_support()' is called under 'if __name__ == \"__main__\":' to prevent infinite process loops (fork bombs).": "[WARN] 偵測到 'multiprocessing' 模組。請確保在 'if __name__ == \"__main__\":' 下呼叫 'multiprocessing.freeze_support()',以防止無限程序迴圈(fork 炸彈)。",
|
||||
"[WARN] AST Analysis Exception: {error}": "[WARN] AST 分析例外狀況:{error}",
|
||||
"[WARN] Command timeout (>{timeout}s)": "[WARN] 命令逾時(>{timeout} 秒)",
|
||||
"[WARN] Detected 'requests' or 'httpx'. Auto-bundling 'certifi' certificates to prevent SSL errors.": "[WARN] 偵測到 'requests' 或 'httpx'。自動捆綁 'certifi' 憑證以防止 SSL 錯誤。",
|
||||
"[WARN] Failed to delete invalid venv, attempting to rename: {error}": "[WARN] 刪除無效的虛擬環境失敗,嘗試重新命名:{error}",
|
||||
"[WARN] Failed to purge invalid environment, falling back to temp sandbox: {error}": "[WARN] 清除無效環境失敗,正在改用暫存沙箱:{error}",
|
||||
"[WARN] Icon conversion to .icns failed, building without icon.": "[WARN] 圖示轉換為 .icns 失敗,將在沒有圖示的情況下建置。",
|
||||
"[WARN] Icon resource writing blocked (possibly locked by system/antivirus), triggering fallback protection...": "[WARN] 圖示資源寫入被封鎖(可能被系統/防毒軟體鎖定),正在觸發後備保護...",
|
||||
"[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.": "[WARN] 建置目標磁碟機可用空間不足(可用:{free:.1f} GB,建議 >= 5.0 GB)。建置程序可能因磁碟空間耗盡而中斷。",
|
||||
"[WARN] Low disk space detected: {free:.1f} GB available": "[WARN] 偵測到磁碟空間不足:{free:.1f} GB 可用",
|
||||
"[WARN] Memory allocation exception caught (ZstdError / OOM). Triggering memory protection fallback: Retrying in single-thread mode...": "[WARN] 已捕捉記憶體配置例外狀況(ZstdError / OOM)。正在觸發記憶體保護後備:以單執行緒模式重試...",
|
||||
"[WARN] Package '{pkg}' failed to install, skipping...": "[WARN] 套件 '{pkg}' 安裝失敗,正在跳過...",
|
||||
"[WARN] Pause code injection exception: {error}": "[WARN] 暫停程式碼注入例外狀況:{error}",
|
||||
"[WARN] Playwright browser installation failed across all sources, build will proceed with risk...": "[WARN] Playwright 瀏覽器在所有來源安裝失敗,建置將在風險下繼續...",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32 位元) 需要 Visual Studio 2022 搭配 Windows SDK。將嘗試使用目前環境進行建置。",
|
||||
"[WARN] Python environment info detection fallback: {error}": "[WARN] Python 環境資訊偵測後備:{error}",
|
||||
"[WARN] Read requirements.txt warning: {error}": "[WARN] 讀取 requirements.txt 警告:{error}",
|
||||
"[WARN] Shared directory invalid, falling back to isolated environment mode.": "[WARN] 共用目錄無效,回退到隔離環境模式。",
|
||||
"[WARN] Shared directory lacks write permissions, falling back to isolated mode.": "[WARN] 共享目錄缺少寫入權限,已回退至隔離模式。",
|
||||
"[WARN] Smart signing failed, but build output is retained.": "[WARN] 智慧簽章失敗,但已保留建置輸出。",
|
||||
"[WARN] Some dependencies failed to install, build will proceed with risk...": "[WARN] 部分依賴安裝失敗,建置將在風險下繼續...",
|
||||
"[WARN] Specified versions failed to install. Stripping version constraints for automatic compatibility match...": "[WARN] 指定的版本安裝失敗。移除版本限制以自動相容匹配...",
|
||||
|
||||
+143
-72
@@ -61,7 +61,7 @@ except ImportError:
|
||||
HAS_QT_AUDIO = False
|
||||
|
||||
__app_name__ = "QPyPack"
|
||||
__version__ = "2.7.10"
|
||||
__version__ = "2.7.11"
|
||||
__author__ = "QwejayHuang"
|
||||
__company__ = "QwejayHuang"
|
||||
__description__ = "Modern Cross-Platform Python Packaging GUI Powered by PyInstaller & Nuitka"
|
||||
@@ -106,7 +106,7 @@ ZH_CN_DICT = {
|
||||
"Dependencies": "依赖管理",
|
||||
"Resources": "附加资源",
|
||||
"Optimization & Security": "优化与安全",
|
||||
"Package Map": "包名与依赖治理",
|
||||
"Package Map": "包名与依赖",
|
||||
"Execution Log": "执行日志",
|
||||
|
||||
"Loaded: {filename}": "已载入: {filename}",
|
||||
@@ -462,8 +462,8 @@ ZH_CN_DICT = {
|
||||
"Scanning...": "正在扫描...",
|
||||
"[INFO] Auto-detected existing virtual environment '{venv}'. 'Keep Local Venv' is checked.": "[INFO] 自动检测到现有虚拟环境'{venv}'。已勾选'保留本地虚拟环境'。",
|
||||
"[INFO] Using MinGW64 compiler.": "[INFO] 使用MinGW64编译器。",
|
||||
"Package Map": "包名与依赖治理",
|
||||
"Package Mapping & Remediation": "包名与依赖治理",
|
||||
"Package Map": "包名映射与规则",
|
||||
"Package Mapping & Remediation": "包名与规则",
|
||||
"Obsolete Backport Exclusion Rules": "废弃兼容包拦截规则",
|
||||
"Min Python Ver": "最低内置版本",
|
||||
"Add Backport Rule": "添加拦截规则",
|
||||
@@ -476,7 +476,7 @@ ZH_CN_DICT = {
|
||||
"Environment Analysis & Remediation": "运行环境分析",
|
||||
"Enable Automatic Backport Isolation": "开启废弃兼容包动态隔离",
|
||||
"Inspect Interpreter Environment": "校验解释器环境",
|
||||
"Remediate Detected Conflicts": "治理环境冲突模块",
|
||||
"Remediate Detected Conflicts": "清理环境冲突依赖",
|
||||
"Package Name (e.g. pathlib):": "包名 (如 pathlib):",
|
||||
"Minimum Built-in Python Version (e.g. 3.4):": "最低内置 Python 版本 (如 3.4):",
|
||||
"Status: Environment inspection ready.": "状态: 等待环境校验。",
|
||||
@@ -505,6 +505,21 @@ ZH_CN_DICT = {
|
||||
"RAM critically low: {free:.1f}GB < 1GB": "内存严重不足: {free:.1f}GB < 1GB",
|
||||
"Python interpreter not found: {path}": "Python 解释器未找到: {path}",
|
||||
"[ERROR] Pre-flight check failed:": "[ERROR] 预检查失败:",
|
||||
"[INFO] Found compatible MSVC + Windows SDK environment, using native compiler.": "[INFO] 检测到兼容的 MSVC 及 Windows SDK 环境,使用原生编译器。",
|
||||
"[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend.": "[INFO] 检测到 Python 3.13+:使用 Zig 编译器 (--zig) 作为编译后端。",
|
||||
"[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).": "[INFO] 未检测到 MSVC 14.3+,Nuitka 将自动下载/使用 MinGW64 工具链 (Python {v})。",
|
||||
"[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment.": "[WARN] Python 3.13+ (32位) 强制需要包含 Windows SDK 的 VS2022,正在尝试当前环境...",
|
||||
"[Environment Error] Build failed: C++ compiler version is incompatible.": "[环境错误] 编译失败:C++ 编译器或 Windows SDK 版本不兼容。",
|
||||
"[Environment Error] Python 3.13+ Compiler Requirement.": "[环境错误] Python 3.13+ 编译器兼容性限制。",
|
||||
"Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.": "原因:Python 3.11+ 使用 MSVC 时必须安装 Visual Studio 2022 (MSVC 14.3) 且勾选 Windows SDK。",
|
||||
"Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.": "原因:Python 3.13+ 已不再支持 MinGW64 编译器,需要 Zig (x64) 或 Visual Studio 2022。",
|
||||
"Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.": "解决方法:\n1. 安装/更新 Visual Studio 2022(勾选“使用 C++ 的桌面开发”及 Windows SDK)。\n2. 或前往【构建设置】切换为 [PyInstaller] 引擎打包。",
|
||||
"Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.": "解决方法:\n1. 前往【构建设置】切换为 [PyInstaller] 引擎(推荐)。\n2. 或安装 Visual Studio 2022 C++ 编译套件。",
|
||||
"Icon file not found: {path}": "图标文件未找到:{path}",
|
||||
"Output directory not writable: {error}": "输出目录不可写:{error}",
|
||||
"Resource not found: {path}": "资源未找到:{path}",
|
||||
"Script file is locked by cloud sync": "脚本文件被云同步锁定",
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n - File: {file}\n - Detail: {desc}\n\nTip: This is usually NOT a fault of the packaging tool.\nPlease ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\nUsing newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\nWe recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.": "[Syntax Error] 源代码语法解析失败,构建中止:\n - 文件:{file}\n - 详情:{desc}\n\n提示:这通常不是打包工具的故障。\n请确保您选择的 [构建 Python 版本] 与您用于 [编写/测试代码] 的版本匹配。\n在较旧的 Python 环境中使用较新的语法(例如海象运算符 :=、类型联合 |、match-case)将触发此错误。\n我们建议您前往 [构建设置] -> [引擎] 切换到正确的 Python 版本。",
|
||||
"Unknown": "未知"
|
||||
}
|
||||
|
||||
@@ -716,7 +731,8 @@ DEFAULT_BACKPORT_RULES = {
|
||||
"importlib-metadata": "3.8",
|
||||
"importlib-resources": "3.9",
|
||||
"zoneinfo": "3.9",
|
||||
"tomllib": "3.11"
|
||||
"tomllib": "3.11",
|
||||
"exceptiongroup": "3.11"
|
||||
}
|
||||
|
||||
MATERIAL_ICONS = {
|
||||
@@ -1877,7 +1893,9 @@ class DropArea(QFrame):
|
||||
self.retranslate_ui()
|
||||
|
||||
def retranslate_ui(self):
|
||||
pass
|
||||
if not self.current_filename:
|
||||
self.label.setText(_("Python Packaging, Reimagined."))
|
||||
self.sub_label.setText(_("Drop Python source code to start"))
|
||||
|
||||
def dragEnterEvent(self, event: QDragEnterEvent):
|
||||
if event.mimeData().hasUrls():
|
||||
@@ -3059,7 +3077,7 @@ class SettingsPanel(QWidget):
|
||||
text_vlay.addSpacing(6)
|
||||
|
||||
current_year = time.localtime().tm_year
|
||||
year_str = f"2024-{current_year}" if current_year > 2024 else "2024"
|
||||
year_str = f"2026-{current_year}" if current_year > 2026 else "2026"
|
||||
ver_lbl = QLabel(f"Version {__version__} · GPL-3.0 · Copyright © {year_str} {__author__}")
|
||||
ver_lbl.setStyleSheet("font-size: 12px; color: #8b929a; font-weight: bold;")
|
||||
ver_lbl.setAlignment(Qt.AlignmentFlag.AlignCenter)
|
||||
@@ -3580,6 +3598,7 @@ class SettingsPanel(QWidget):
|
||||
"engine": self.engine_combo.currentText(),
|
||||
"lite_mode": self.rb_lite_mode.isChecked(),
|
||||
"onefile": self.rb_onefile.isChecked(),
|
||||
"noconsole": self.noconsole_check.isChecked(),
|
||||
"contents_dir": self.contents_dir_edit.text().strip(),
|
||||
"icon": self.icon_edit.text(),
|
||||
"app_name": self.name_edit.text(),
|
||||
@@ -4032,9 +4051,12 @@ class SettingsPanel(QWidget):
|
||||
return self.parent_win.show_error_log(_("[ERROR] Target file is locked or encrypted by cloud drive. Please decrypt and try again."))
|
||||
|
||||
try:
|
||||
hidden = extract_project_imports_via_ast(Path(script_path), False)
|
||||
# 联动界面勾选的“扫描整个文件夹”状态
|
||||
scan_dir = self.pipreqs_dir_check.isChecked()
|
||||
target = Path(script_path).parent if scan_dir else Path(script_path)
|
||||
hidden = extract_project_imports_via_ast(target, scan_dir=scan_dir)
|
||||
hidden = [m for m in hidden if m not in STD_LIBS]
|
||||
self.hidden_edit.setText(','.join(hidden))
|
||||
self.hidden_edit.setText(','.join(sorted(hidden)))
|
||||
self.parent_win.show_notification(_("AST scan completed, found {count} dependencies.", count=len(hidden)))
|
||||
except Exception as e:
|
||||
self.parent_win.show_error_log(_("[ERROR] Exception occurred during AST parsing: {error}", error=str(e)))
|
||||
@@ -4716,32 +4738,35 @@ class PackingThread(QThread):
|
||||
|
||||
self.progress.emit(_("[INFO] Analyzing source code and project dependencies..."))
|
||||
script_path = Path(self.params['script_path']).resolve()
|
||||
|
||||
script_dir = script_path.parent
|
||||
system_python_exe = self.params.get('python_exe')
|
||||
|
||||
try:
|
||||
compile(script_path.read_bytes(), script_path.name, 'exec')
|
||||
except SyntaxError as e:
|
||||
err_type = type(e).__name__
|
||||
msg = _(
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n"
|
||||
" - File: {file}\n"
|
||||
" - Line: Line {line}\n"
|
||||
" - Detail: {desc}\n\n"
|
||||
"Tip: This is usually NOT a fault of the packaging tool.\n"
|
||||
"Please ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\n"
|
||||
"Using newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\n"
|
||||
"We recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.",
|
||||
file=script_path.name, type=err_type, line=e.lineno or _("Unknown"), desc=e.msg or _("Invalid syntax")
|
||||
)
|
||||
return self.build_finished.emit(False, msg, [])
|
||||
# 使用选定的目标 Python 进行语法预检,避免高低版本语法特性误杀
|
||||
if system_python_exe and os.path.exists(system_python_exe):
|
||||
try:
|
||||
kw_chk = {"capture_output": True, "text": True, "timeout": 5, "errors": "ignore"}
|
||||
if os.name == 'nt': kw_chk["creationflags"] = subprocess.CREATE_NO_WINDOW
|
||||
chk_syntax = subprocess.run([system_python_exe, "-m", "py_compile", script_path.as_posix()], **kw_chk)
|
||||
if chk_syntax.returncode != 0:
|
||||
err_desc = chk_syntax.stderr.strip() or _("Invalid syntax")
|
||||
msg = _(
|
||||
"[Syntax Error] Source code syntax parsing failed, build aborted:\n"
|
||||
" - File: {file}\n"
|
||||
" - Detail: {desc}\n\n"
|
||||
"Tip: This is usually NOT a fault of the packaging tool.\n"
|
||||
"Please ensure the [Build Python Version] you selected matches the version you used to [Write/Test the Code].\n"
|
||||
"Using newer syntax (e.g., walrus operator :=, type unions |, match-case) in an older Python environment will trigger this error.\n"
|
||||
"We recommend going to [Build Settings] -> [Engine] to switch to the correct Python version.",
|
||||
file=script_path.name, desc=err_desc
|
||||
)
|
||||
return self.build_finished.emit(False, msg, [])
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
if self._is_cancelled:
|
||||
return self.build_finished.emit(False, _("[INFO] Build Cancelled."), [])
|
||||
|
||||
self.progress.emit(_("[INFO] Performing pre-flight environment checks..."))
|
||||
|
||||
system_python_exe = self.params.get('python_exe')
|
||||
|
||||
health_issues = []
|
||||
|
||||
@@ -5227,6 +5252,13 @@ class PackingThread(QThread):
|
||||
"--upx-exclude=python3.dll",
|
||||
"--upx-exclude=vcruntime140.dll",
|
||||
"--upx-exclude=vcruntime140_1.dll",
|
||||
"--upx-exclude=ucrtbase.dll",
|
||||
"--upx-exclude=msvcp140.dll",
|
||||
"--upx-exclude=msvcp140_1.dll",
|
||||
"--upx-exclude=Qt6Core.dll",
|
||||
"--upx-exclude=Qt6Gui.dll",
|
||||
"--upx-exclude=Qt6Widgets.dll",
|
||||
"--upx-exclude=qwindows.dll"
|
||||
])
|
||||
try:
|
||||
kw = {"capture_output": True, "text": True, "timeout": 3, "errors": "ignore"}
|
||||
@@ -5279,54 +5311,75 @@ class PackingThread(QThread):
|
||||
f"--output-filename={app_name}{ext}"
|
||||
]
|
||||
|
||||
if self.params.get('auto_save_log'):
|
||||
report_file = self.temp_out_dir / f"{app_name}_nuitka_report.xml"
|
||||
cmd.append(f"--report={report_file.as_posix()}")
|
||||
|
||||
if os.name == "nt":
|
||||
has_msvc = shutil.which('cl.exe') is not None
|
||||
if not has_msvc:
|
||||
vswhere = Path(os.environ.get("ProgramFiles(x86)", "C:\\Program Files (x86)")) / "Microsoft Visual Studio/Installer/vswhere.exe"
|
||||
if vswhere.exists():
|
||||
try:
|
||||
res = subprocess.run([vswhere.as_posix(), "-latest", "-requires", "Microsoft.VisualStudio.Component.VC.Tools.x86.x64"], capture_output=True, text=True, errors="ignore", creationflags=subprocess.CREATE_NO_WINDOW)
|
||||
if res.stdout.strip(): has_msvc = True
|
||||
except: pass
|
||||
|
||||
has_clang = (shutil.which('clang.exe') is not None) or (shutil.which('clang-cl.exe') is not None)
|
||||
if not has_clang:
|
||||
llvm_paths = [
|
||||
Path(os.environ.get("ProgramFiles", "C:\\Program Files")) / "LLVM/bin/clang.exe",
|
||||
Path(os.environ.get("ProgramFiles(x86)", "C:\\Program Files (x86)")) / "LLVM/bin/clang.exe"
|
||||
]
|
||||
if any(p.exists() for p in llvm_paths):
|
||||
has_clang = True
|
||||
|
||||
py_ver_num = (3, 12)
|
||||
# 1. 精确获取打包 Python 的版本与架构位数
|
||||
py_ver_num = (3, 8)
|
||||
is_64bit = True
|
||||
try:
|
||||
kw = {"capture_output": True, "text": True, "timeout": 2, "errors": "ignore"}
|
||||
if os.name == 'nt': kw["creationflags"] = subprocess.CREATE_NO_WINDOW
|
||||
check_ver = subprocess.run([python_exe, "-c", "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')"], **kw)
|
||||
kw_v = {"capture_output": True, "text": True, "timeout": 2, "errors": "ignore"}
|
||||
if os.name == 'nt': kw_v["creationflags"] = subprocess.CREATE_NO_WINDOW
|
||||
check_ver = subprocess.run([python_exe, "-c", "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}|{sys.maxsize > 2**32}')"], **kw_v)
|
||||
ver_str = check_ver.stdout.strip()
|
||||
if ver_str:
|
||||
parts = ver_str.split('.')
|
||||
if ver_str and "|" in ver_str:
|
||||
v_part, arch_part = ver_str.split('|')
|
||||
parts = v_part.split('.')
|
||||
py_ver_num = (int(parts[0]), int(parts[1]))
|
||||
except: pass
|
||||
is_64bit = (arch_part.lower() == 'true')
|
||||
except Exception: pass
|
||||
|
||||
if has_msvc:
|
||||
# 2. 精确检测 MSVC 以及是否安装了 Windows SDK
|
||||
has_suitable_msvc = False
|
||||
has_win_sdk = False
|
||||
vswhere = Path(os.environ.get("ProgramFiles(x86)", "C:\\Program Files (x86)")) / "Microsoft Visual Studio/Installer/vswhere.exe"
|
||||
|
||||
if vswhere.exists():
|
||||
try:
|
||||
# Python 3.11+ 必须 VS 2022 (v17.0+ / MSVC 14.3+);3.8-3.10 支持 VS 2017/2019/2022
|
||||
min_vs_ver = "17.0" if py_ver_num >= (3, 11) else "15.0"
|
||||
res_vc = subprocess.run([
|
||||
vswhere.as_posix(), "-latest", "-version", min_vs_ver,
|
||||
"-requires", "Microsoft.VisualStudio.Component.VC.Tools.x86.x64"
|
||||
], capture_output=True, text=True, errors="ignore", creationflags=subprocess.CREATE_NO_WINDOW)
|
||||
if res_vc.stdout.strip():
|
||||
has_suitable_msvc = True
|
||||
except Exception: pass
|
||||
|
||||
# 修复:直接扫描标准系统 SDK 路径(防止 vswhere 检索范围局限在 VS 目录导致误判)
|
||||
sdk_paths = [
|
||||
Path(os.environ.get("ProgramFiles(x86)", "C:\\Program Files (x86)")) / "Windows Kits" / "10" / "Lib",
|
||||
Path(os.environ.get("ProgramFiles(x86)", "C:\\Program Files (x86)")) / "Windows Kits" / "11" / "Lib",
|
||||
Path(os.environ.get("ProgramFiles", "C:\\Program Files")) / "Windows Kits" / "10" / "Lib",
|
||||
Path(os.environ.get("ProgramFiles", "C:\\Program Files")) / "Windows Kits" / "11" / "Lib",
|
||||
]
|
||||
for p in sdk_paths:
|
||||
if p.exists() and any(p.iterdir()):
|
||||
has_win_sdk = True
|
||||
break
|
||||
|
||||
# 3. 全版本编译器分流矩阵
|
||||
# 规则 A: 拥有合规 MSVC 且包含 SDK -> 优先使用 MSVC
|
||||
if has_suitable_msvc and has_win_sdk:
|
||||
cmd.append("--msvc=latest")
|
||||
self.progress.emit(_("[INFO] Found local MSVC environment, prioritizing native C++ compiler."))
|
||||
elif has_clang:
|
||||
cmd.append("--clang")
|
||||
self.progress.emit(_("[INFO] Found local Clang environment, prioritizing LLVM Clang compiler."))
|
||||
elif py_ver_num >= (3, 13):
|
||||
self.progress.emit(_("[INFO] Found compatible MSVC + Windows SDK environment, using native compiler."))
|
||||
|
||||
# 规则 B: Python 3.13+ 并且是 64 位环境 -> 优先使用 Zig 编译器 (MinGW64 在 3.13+ 已废弃)
|
||||
elif py_ver_num >= (3, 13) and is_64bit:
|
||||
cmd.append("--zig")
|
||||
self.progress.emit(_("[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as C backend."))
|
||||
else:
|
||||
self.progress.emit(_("[INFO] Python 3.13+ detected: Using Zig compiler (--zig) as native backend."))
|
||||
|
||||
# 规则 C: Python 3.8 ~ 3.12 -> 使用/自动下载 MinGW64 (winlibs)
|
||||
elif py_ver_num <= (3, 12):
|
||||
cmd.append("--mingw64")
|
||||
self.progress.emit(_("[INFO] Using MinGW64 compiler."))
|
||||
if not has_suitable_msvc and py_ver_num >= (3, 11):
|
||||
self.progress.emit(_("[INFO] MSVC 14.3+ not detected. Nuitka will use/download MinGW64 toolchain (Python {v}).", v=f"{py_ver_num[0]}.{py_ver_num[1]}"))
|
||||
else:
|
||||
self.progress.emit(_("[INFO] Using MinGW64 compiler."))
|
||||
|
||||
# 规则 D: Python 3.13+ 且为 32位系统,但缺失 VS2022
|
||||
else:
|
||||
cmd.append("--msvc=latest")
|
||||
self.progress.emit(_("[WARN] Python 3.13+ (32-bit) requires Visual Studio 2022 with Windows SDK. Build will attempt with current environment."))
|
||||
|
||||
free_disk = get_free_disk_gb(script_dir.as_posix())
|
||||
if free_disk < 3.0:
|
||||
self.progress.emit(_("[WARN] Low disk space detected on build target drive (Available: {free:.1f} GB, >= 5.0 GB recommended). Build process may interrupt due to disk exhaustion.", free=free_disk))
|
||||
|
||||
@@ -5553,16 +5606,19 @@ class PackingThread(QThread):
|
||||
self.progress.emit(_("[INFO] Compilation completed, archiving built files..."))
|
||||
try:
|
||||
if src_out.resolve() != final_out.resolve():
|
||||
# 若目标路径已存在旧文件/文件夹,先安全彻底删除
|
||||
if final_out.exists():
|
||||
if final_out.is_dir():
|
||||
robust_rmtree(final_out)
|
||||
else:
|
||||
if final_out.is_dir():
|
||||
if not robust_rmtree(final_out):
|
||||
raise PermissionError("Target folder locked and cannot be removed.")
|
||||
else:
|
||||
try:
|
||||
final_out.unlink()
|
||||
except PermissionError:
|
||||
time.sleep(1)
|
||||
final_out.unlink(missing_ok=True)
|
||||
|
||||
# 确保旧产物已彻底不存在后再移动,避免 onedir 模式下将目录移入自身产生嵌套
|
||||
for _retry in range(15):
|
||||
try:
|
||||
shutil.move(src_out.as_posix(), final_out.as_posix())
|
||||
@@ -5572,7 +5628,6 @@ class PackingThread(QThread):
|
||||
else:
|
||||
raise PermissionError("File locked by Antivirus or other process.")
|
||||
except PermissionError:
|
||||
|
||||
success = False
|
||||
self.progress.emit(_("[ERROR] Target file is running or occupied. Please close the existing application and try again."))
|
||||
except Exception as e:
|
||||
@@ -6820,6 +6875,22 @@ class MainWindow(QMainWindow):
|
||||
self.drop_area.start_build_anim()
|
||||
|
||||
def on_pack_finished(self, success, msg, failed_pkgs=None):
|
||||
if not success and not (self.thread and getattr(self.thread, '_is_cancelled', False)):
|
||||
log_content = self.log_detailed.toPlainText()
|
||||
|
||||
if "MSVC 14.3 or later is required" in log_content or "scons environment variable 'CC' is not set" in log_content:
|
||||
msg = (
|
||||
_("[Environment Error] Build failed: C++ compiler version is incompatible.") + "\n\n" +
|
||||
_("Reason: Python 3.11+ requires Visual Studio 2022 (MSVC 14.3) with Windows SDK.") + "\n" +
|
||||
_("Solution:\n1. Install Visual Studio 2022 (Check 'Desktop development with C++' and 'Windows SDK').\n2. Or switch the engine to [PyInstaller] in Build Settings.")
|
||||
)
|
||||
elif "MinGW64 does not work with Python 3.13" in log_content or "ziglang" in log_content:
|
||||
msg = (
|
||||
_("[Environment Error] Python 3.13+ Compiler Requirement.") + "\n\n" +
|
||||
_("Reason: MinGW64 is no longer supported on Python 3.13+. Please ensure Zig or VS 2022 is installed.") + "\n" +
|
||||
_("Solution:\n1. In Build Settings, switch to [PyInstaller] engine (Recommended).\n2. Or install Visual Studio 2022 with C++ support.")
|
||||
)
|
||||
|
||||
if not success and self.thread and self.thread.params.get('lite_mode') and not getattr(self.thread, '_is_cancelled', False):
|
||||
msg += "\n\n" + _("Tip: Build failed in Lite Mode. You can try switching to [Compatibility Mode] in Build Settings and rebuild.")
|
||||
|
||||
|
||||
+213
-69
@@ -24,17 +24,29 @@ from PySide6.QtWidgets import (
|
||||
QFormLayout, QMessageBox, QMenu, QSpinBox
|
||||
)
|
||||
from PySide6.QtCore import Qt, QThread, Signal, QSettings
|
||||
from PySide6.QtGui import QColor, QKeySequence, QShortcut, QCloseEvent, QFont
|
||||
from PySide6.QtGui import QColor, QKeySequence, QShortcut, QCloseEvent, QFont, QGuiApplication
|
||||
|
||||
BASE_DIR = Path(__file__).parent.resolve()
|
||||
MAIN_PY = BASE_DIR / "main.py"
|
||||
LOCALES_DIR = BASE_DIR / "locales"
|
||||
|
||||
ALL_LANGS = {
|
||||
"zh_CN": "简体中文", "zh_TW": "繁體中文", "ja_JP": "日本語", "ko_KR": "한국어",
|
||||
"de_DE": "Deutsch", "fr_FR": "Français", "es_ES": "Español", "ru_RU": "Русский",
|
||||
"pt_BR": "Português (Brasil)", "it_IT": "Italiano", "nl_NL": "Nederlands",
|
||||
"pl_PL": "Polski", "tr_TR": "Türkçe", "vi_VN": "Tiếng Việt", "th_TH": "ไทย", "ar_SA": "阿拉伯语"
|
||||
"zh_CN": "简体中文",
|
||||
"zh_TW": "繁體中文",
|
||||
"ja_JP": "日本語",
|
||||
"ko_KR": "한국어",
|
||||
"de_DE": "Deutsch",
|
||||
"fr_FR": "Français",
|
||||
"es_ES": "Español",
|
||||
"ru_RU": "Русский",
|
||||
"pt_BR": "Português (Brasil)",
|
||||
"it_IT": "Italiano",
|
||||
"nl_NL": "Nederlands",
|
||||
"pl_PL": "Polski",
|
||||
"tr_TR": "Türkçe",
|
||||
"vi_VN": "Tiếng Việt",
|
||||
"th_TH": "ไทย",
|
||||
"ar_SA": "العربية (Arabic)"
|
||||
}
|
||||
|
||||
LANG_TARGET_NAMES = {
|
||||
@@ -51,9 +63,58 @@ SIMPLIFIED_ONLY = set(
|
||||
"设门见东长时电话语说读书图网页击关闭应变换转载输编辑码软复选择确认继续结构"
|
||||
"权环约风险级类项组键库释译验证签线缓进赖败强议拟统检测单显优层该络驱动盘备"
|
||||
"贴终圆锁连执务请带过还这为们么样对题问试华钱银铁简觉卖买贝员观计让记论访详"
|
||||
"间闻济脑际专业临节钟钥纸录归荐灵鲜齐团�区医压厂历县双发变叠"
|
||||
"间闻济脑际专业临节钟钥纸录归荐灵鲜齐团区医压厂历县双发变叠"
|
||||
)
|
||||
|
||||
PRESETS = {
|
||||
"DeepSeek (官方)": {
|
||||
"base_url": "https://api.deepseek.com",
|
||||
"model": "deepseek-chat"
|
||||
},
|
||||
"OpenAI (官方)": {
|
||||
"base_url": "https://api.openai.com/v1",
|
||||
"model": "gpt-4o-mini"
|
||||
},
|
||||
"硅基流动 (SiliconFlow)": {
|
||||
"base_url": "https://api.siliconflow.cn/v1",
|
||||
"model": "deepseek-ai/DeepSeek-V3"
|
||||
},
|
||||
"通义千问 (DashScope)": {
|
||||
"base_url": "https://dashscope.aliyuncs.com/compatible-mode/v1",
|
||||
"model": "qwen-plus"
|
||||
},
|
||||
"Moonshot (Kimi)": {
|
||||
"base_url": "https://api.moonshot.cn/v1",
|
||||
"model": "moonshot-v1-8k"
|
||||
},
|
||||
"Ollama (本地)": {
|
||||
"base_url": "http://localhost:11434/v1",
|
||||
"model": "qwen2.5:latest"
|
||||
},
|
||||
"自定义 (Custom)": {
|
||||
"base_url": "",
|
||||
"model": ""
|
||||
}
|
||||
}
|
||||
|
||||
def safe_get_password(service: str, username: str) -> str:
|
||||
try:
|
||||
return keyring.get_password(service, username) or ""
|
||||
except Exception:
|
||||
s = QSettings("QPyPack", "i18nFast")
|
||||
return s.value("fallback_api_key", "")
|
||||
|
||||
def safe_set_password(service: str, username: str, password: str):
|
||||
try:
|
||||
if password:
|
||||
keyring.set_password(service, username, password)
|
||||
else:
|
||||
try: keyring.delete_password(service, username)
|
||||
except Exception: pass
|
||||
except Exception:
|
||||
s = QSettings("QPyPack", "i18nFast")
|
||||
s.setValue("fallback_api_key", password)
|
||||
|
||||
def _has_han(text: str) -> bool:
|
||||
return bool(re.search(r'[\u4e00-\u9fff]', text))
|
||||
|
||||
@@ -61,12 +122,6 @@ def _has_kana(text: str) -> bool:
|
||||
return bool(re.search(r'[\u3040-\u30ff]', text))
|
||||
|
||||
def is_wrong_language(key: str, val: str, lang_code: str, zh_cn_dict: dict) -> bool:
|
||||
"""
|
||||
判断一条译文是否是错误语言(混入了中文)。
|
||||
- 非中日繁语言(阿拉伯/法/西/俄/韩...): 出现任何汉字即判错。
|
||||
- 日文/繁体: 仅当命中简体专属字符, 或与简体原文完全相同时判错。
|
||||
合法的日文汉字词(出力先/保存/環境変数等)永不误杀。
|
||||
"""
|
||||
if not val or lang_code == "zh_CN":
|
||||
return False
|
||||
|
||||
@@ -102,7 +157,7 @@ def is_technical(text: str) -> bool:
|
||||
def enforce_format(original: str, translated: str) -> str:
|
||||
if not translated: return ""
|
||||
s = str(translated).strip()
|
||||
tag = re.match(r'^(\[[A-Za-z\s]+\])', original)
|
||||
tag = re.match(r'^(\[[A-Za-z0-9_\-\s]+\])', original)
|
||||
if tag:
|
||||
s = re.sub(r'^\[.*?\]\s*', '', s).strip()
|
||||
s = f"{tag.group(1)} {s}"
|
||||
@@ -126,7 +181,7 @@ def clean_llm_json(raw: str) -> dict:
|
||||
def extract_value(v) -> str:
|
||||
if isinstance(v, str): return v.strip()
|
||||
if isinstance(v, dict):
|
||||
for k in ("translation", "translated", "target", "text"):
|
||||
for k in ("translation", "translated", "target", "text", "val", "value"):
|
||||
if k in v and isinstance(v[k], str): return v[k].strip()
|
||||
for x in v.values():
|
||||
if isinstance(x, str): return x.strip()
|
||||
@@ -198,25 +253,40 @@ class BaseWorker(QThread):
|
||||
super().__init__()
|
||||
self.cfg = cfg
|
||||
self.cancel = False
|
||||
self.client = openai.OpenAI(api_key=cfg["api_key"], base_url=cfg.get("base_url") or None)
|
||||
base_url = (cfg.get("base_url") or "https://api.deepseek.com").rstrip('/')
|
||||
self.client = openai.OpenAI(api_key=cfg["api_key"], base_url=base_url)
|
||||
|
||||
def _call(self, sys_prompt: str, payload: dict) -> dict:
|
||||
for i in range(3):
|
||||
if self.cancel: return {}
|
||||
try:
|
||||
r = self.client.chat.completions.create(
|
||||
model=self.cfg["model"],
|
||||
messages=[{"role": "system", "content": sys_prompt},
|
||||
{"role": "user", "content": json.dumps(payload, ensure_ascii=False)}],
|
||||
temperature=0.1, response_format={"type": "json_object"}, timeout=60)
|
||||
# 优先尝试 JSON 模式
|
||||
kwargs = {
|
||||
"model": self.cfg["model"] or "deepseek-chat",
|
||||
"messages": [
|
||||
{"role": "system", "content": sys_prompt},
|
||||
{"role": "user", "content": json.dumps(payload, ensure_ascii=False)}
|
||||
],
|
||||
"temperature": 0.1,
|
||||
"timeout": 60
|
||||
}
|
||||
try:
|
||||
r = self.client.chat.completions.create(
|
||||
response_format={"type": "json_object"},
|
||||
**kwargs
|
||||
)
|
||||
except Exception:
|
||||
# 降级:部分模型不支持 response_format,使用普通模式请求
|
||||
r = self.client.chat.completions.create(**kwargs)
|
||||
|
||||
if self.cancel: return {}
|
||||
p = clean_llm_json(r.choices[0].message.content)
|
||||
if len(p) == 1 and isinstance(list(p.values())[0], dict):
|
||||
p = list(p.values())[0]
|
||||
return p
|
||||
except Exception:
|
||||
if p: return p
|
||||
except Exception as e:
|
||||
if self.cancel: return {}
|
||||
time.sleep(2 ** i)
|
||||
time.sleep(1.5 ** i)
|
||||
return {}
|
||||
|
||||
@staticmethod
|
||||
@@ -226,7 +296,7 @@ class BaseWorker(QThread):
|
||||
"You are a professional software localization expert.",
|
||||
f"Translate the given English UI strings into {target}.",
|
||||
"Output ONLY a flat JSON object mapping the exact input IDs to translated strings.",
|
||||
"Keep placeholders like {count}, {pkgs}, {path} EXACTLY unchanged.",
|
||||
"Keep HTML tags (like <b>, <span>) and placeholders like {count}, {pkgs}, {path}, {v} EXACTLY unchanged.",
|
||||
]
|
||||
if code == "zh_TW":
|
||||
lines.append("Output Traditional Chinese (繁體中文) ONLY. NEVER output Simplified Chinese characters.")
|
||||
@@ -239,7 +309,6 @@ class BaseWorker(QThread):
|
||||
return "\n".join(lines)
|
||||
|
||||
def translate_batch(self, keys: list, code: str, zh: dict) -> dict:
|
||||
"""请求 -> 质检 -> 重试 -> 丢弃 的闭环。只有通过质检的译文才返回。"""
|
||||
pending = list(keys)
|
||||
out = {}
|
||||
target = LANG_TARGET_NAMES.get(code, code)
|
||||
@@ -269,11 +338,8 @@ class BaseWorker(QThread):
|
||||
rest.append(key)
|
||||
pending = rest
|
||||
|
||||
if pending:
|
||||
print(f"[{code}] {len(pending)} 条译文质检失败, 已丢弃保持空缺(绝不写入错误内容)。")
|
||||
return out
|
||||
|
||||
|
||||
class SingleWorker(BaseWorker):
|
||||
progress = Signal(int, int)
|
||||
batch_done = Signal(dict)
|
||||
@@ -284,7 +350,7 @@ class SingleWorker(BaseWorker):
|
||||
self.code, self.keys, self.zh = code, keys, zh
|
||||
|
||||
def run(self):
|
||||
bs = self.cfg["batch_size"]
|
||||
bs = max(5, self.cfg.get("batch_size", 20))
|
||||
for i in range(0, len(self.keys), bs):
|
||||
if self.cancel: break
|
||||
res = self.translate_batch(self.keys[i:i + bs], self.code, self.zh)
|
||||
@@ -293,7 +359,6 @@ class SingleWorker(BaseWorker):
|
||||
self.progress.emit(min(i + bs, len(self.keys)), len(self.keys))
|
||||
self.done.emit()
|
||||
|
||||
|
||||
class AllWorker(BaseWorker):
|
||||
progress = Signal(int, int, str)
|
||||
done = Signal()
|
||||
@@ -303,13 +368,13 @@ class AllWorker(BaseWorker):
|
||||
self.all_keys, self.zh = all_keys, zh
|
||||
|
||||
def run(self):
|
||||
bs = self.cfg["batch_size"]
|
||||
bs = max(5, self.cfg.get("batch_size", 20))
|
||||
targets = [c for c in ALL_LANGS if c != "zh_CN"]
|
||||
for idx, code in enumerate(targets):
|
||||
if self.cancel: break
|
||||
self.progress.emit(idx, len(targets), f"处理: {ALL_LANGS[code]} ({code})")
|
||||
self.progress.emit(idx, len(targets), f"正在处理: {ALL_LANGS[code]} ({code})")
|
||||
data = load_lang(code)
|
||||
missing = [k for k in self.all_keys if not is_technical(k) and not data.get(k)]
|
||||
missing = [k for k in self.all_keys if not is_technical(k) and (not data.get(k) or is_wrong_language(k, data.get(k, ""), code, self.zh))]
|
||||
for i in range(0, len(missing), bs):
|
||||
if self.cancel: break
|
||||
data.update(self.translate_batch(missing[i:i + bs], code, self.zh))
|
||||
@@ -321,7 +386,6 @@ class AllWorker(BaseWorker):
|
||||
self.progress.emit(len(targets), len(targets), "全库补全完成!")
|
||||
self.done.emit()
|
||||
|
||||
|
||||
class ZhWorker(BaseWorker):
|
||||
finished_sig = Signal(bool, int, str)
|
||||
|
||||
@@ -330,10 +394,10 @@ class ZhWorker(BaseWorker):
|
||||
self.keys = keys
|
||||
|
||||
def run(self):
|
||||
bs = self.cfg["batch_size"]
|
||||
bs = max(5, self.cfg.get("batch_size", 20))
|
||||
pairs = {}
|
||||
prompt = ("Translate the English UI strings to Simplified Chinese (简体中文). "
|
||||
"Keep placeholders like {count} unchanged. Output ONLY a flat JSON object.")
|
||||
"Keep HTML tags and placeholders like {count}, {path} unchanged. Output ONLY a flat JSON object.")
|
||||
for i in range(0, len(self.keys), bs):
|
||||
if self.cancel: break
|
||||
batch = self.keys[i:i + bs]
|
||||
@@ -412,37 +476,64 @@ class SettingsDialog(QDialog):
|
||||
def __init__(self, parent=None):
|
||||
super().__init__(parent)
|
||||
self.setWindowTitle("API 设置")
|
||||
self.setMinimumWidth(460)
|
||||
self.setMinimumWidth(480)
|
||||
self.setStyleSheet(QSS + "QDialog{background:#fff;} QLabel{font-size:13px;color:#334155;font-weight:600;}")
|
||||
self.s = QSettings("QPyPack", "i18nFast")
|
||||
|
||||
root = QVBoxLayout(self)
|
||||
root.setContentsMargins(24, 24, 24, 24); root.setSpacing(16)
|
||||
|
||||
t = QLabel("⚙ 翻译服务配置")
|
||||
t.setStyleSheet("font-size:16px;font-weight:800;color:#0f172a;")
|
||||
root.addWidget(t)
|
||||
|
||||
form = QFormLayout(); form.setSpacing(12)
|
||||
self.key = QLineEdit(keyring.get_password("QPyPack_i18n", "api_key") or "")
|
||||
self.key.setEchoMode(QLineEdit.EchoMode.Password); self.key.setPlaceholderText("sk-...")
|
||||
self.url = QLineEdit(self.s.value("base_url", "https://api.deepseek.com"))
|
||||
|
||||
self.preset_combo = QComboBox()
|
||||
for name in PRESETS: self.preset_combo.addItem(name)
|
||||
self.preset_combo.currentIndexChanged.connect(self._on_preset_changed)
|
||||
|
||||
self.key = QLineEdit(safe_get_password("QPyPack_i18n", "api_key"))
|
||||
self.key.setEchoMode(QLineEdit.EchoMode.Password)
|
||||
self.key.setPlaceholderText("sk-...")
|
||||
|
||||
saved_url = self.s.value("base_url", "https://api.deepseek.com")
|
||||
self.url = QLineEdit(saved_url)
|
||||
self.mod = QLineEdit(self.s.value("model", "deepseek-chat"))
|
||||
|
||||
self.bs = QSpinBox(); self.bs.setRange(5, 100)
|
||||
self.bs.setValue(int(self.s.value("batch_size", 20)))
|
||||
self.bs.setStyleSheet("QSpinBox{border:1px solid #cbd5e1;border-radius:8px;padding:6px 10px;font-size:13px;}")
|
||||
form.addRow("API Key", self.key); form.addRow("Base URL", self.url)
|
||||
form.addRow("Model", self.mod); form.addRow("批次大小", self.bs)
|
||||
|
||||
form.addRow("服务商预设", self.preset_combo)
|
||||
form.addRow("API Key", self.key)
|
||||
form.addRow("Base URL", self.url)
|
||||
form.addRow("Model", self.mod)
|
||||
form.addRow("批次大小", self.bs)
|
||||
root.addLayout(form)
|
||||
|
||||
# 智能匹配当前选择的预设
|
||||
for idx, (p_name, p_data) in enumerate(PRESETS.items()):
|
||||
if p_data["base_url"] and p_data["base_url"] == saved_url:
|
||||
self.preset_combo.setCurrentIndex(idx)
|
||||
break
|
||||
|
||||
row = QHBoxLayout(); row.addStretch()
|
||||
c = QPushButton("取消"); c.clicked.connect(self.reject)
|
||||
sv = QPushButton("保存"); sv.setObjectName("Primary"); sv.clicked.connect(self.save)
|
||||
row.addWidget(c); row.addWidget(sv)
|
||||
root.addLayout(row)
|
||||
|
||||
def _on_preset_changed(self, idx):
|
||||
name = self.preset_combo.currentText()
|
||||
data = PRESETS.get(name)
|
||||
if data and data["base_url"]:
|
||||
self.url.setText(data["base_url"])
|
||||
self.mod.setText(data["model"])
|
||||
|
||||
def save(self):
|
||||
k = self.key.text().strip()
|
||||
if k: keyring.set_password("QPyPack_i18n", "api_key", k)
|
||||
else:
|
||||
try: keyring.delete_password("QPyPack_i18n", "api_key")
|
||||
except: pass
|
||||
safe_set_password("QPyPack_i18n", "api_key", k)
|
||||
self.s.setValue("base_url", self.url.text().strip())
|
||||
self.s.setValue("model", self.mod.text().strip())
|
||||
self.s.setValue("batch_size", self.bs.value())
|
||||
@@ -451,10 +542,13 @@ class SettingsDialog(QDialog):
|
||||
@staticmethod
|
||||
def cfg():
|
||||
s = QSettings("QPyPack", "i18nFast")
|
||||
return {"api_key": keyring.get_password("QPyPack_i18n", "api_key") or "",
|
||||
"base_url": s.value("base_url", ""),
|
||||
"model": s.value("model", "deepseek-chat"),
|
||||
"batch_size": int(s.value("batch_size", 20))}
|
||||
base_url = s.value("base_url", "https://api.deepseek.com")
|
||||
return {
|
||||
"api_key": safe_get_password("QPyPack_i18n", "api_key"),
|
||||
"base_url": base_url,
|
||||
"model": s.value("model", "deepseek-chat"),
|
||||
"batch_size": int(s.value("batch_size", 20))
|
||||
}
|
||||
|
||||
class MainWindow(QMainWindow):
|
||||
def __init__(self):
|
||||
@@ -466,7 +560,12 @@ class MainWindow(QMainWindow):
|
||||
self.worker = None
|
||||
self.zh_worker = None
|
||||
self._ui()
|
||||
|
||||
# 快捷键绑定
|
||||
QShortcut(QKeySequence("Ctrl+S"), self).activated.connect(self._save)
|
||||
QShortcut(QKeySequence("F5"), self).activated.connect(self._load)
|
||||
QShortcut(QKeySequence("Ctrl+F"), self).activated.connect(lambda: self.search.setFocus())
|
||||
|
||||
self._load()
|
||||
|
||||
def _btn(self, text, slot, obj="", tip=""):
|
||||
@@ -501,9 +600,10 @@ class MainWindow(QMainWindow):
|
||||
self.lang.currentIndexChanged.connect(self._switch)
|
||||
h.addWidget(self.lang); h.addStretch()
|
||||
self.bg_total = self._badge("总计 0", "#475569", "#f1f5f9")
|
||||
self.bg_done = self._badge("已翻译 0", "#047857", "#d1fae5")
|
||||
self.bg_miss = self._badge("缺失 0", "#b45309", "#fef3c7")
|
||||
self.bg_leak = self._badge("残留 0", DANGER_D, "#fee2e2")
|
||||
h.addWidget(self.bg_total); h.addWidget(self.bg_miss); h.addWidget(self.bg_leak)
|
||||
h.addWidget(self.bg_total); h.addWidget(self.bg_done); h.addWidget(self.bg_miss); h.addWidget(self.bg_leak)
|
||||
h.addSpacing(6)
|
||||
self.b_cfg = self._btn("⚙ 设置", lambda: SettingsDialog(self).exec())
|
||||
h.addWidget(self.b_cfg)
|
||||
@@ -522,8 +622,8 @@ class MainWindow(QMainWindow):
|
||||
"字符级精准清除混入的简体中文,绝不误杀日文汉字")
|
||||
self.b_patch = self._btn("✨ 补全主程序中文", self._patch, "Success")
|
||||
b.addWidget(self.b_clean); b.addWidget(self.b_patch); b.addStretch()
|
||||
self.b_scan = self._btn("🔄 刷新源码", self._load)
|
||||
self.b_save = self._btn("💾 保存当前", self._save)
|
||||
self.b_scan = self._btn("🔄 刷新源码 (F5)", self._load)
|
||||
self.b_save = self._btn("💾 保存当前 (Ctrl+S)", self._save)
|
||||
self.b_saveall = self._btn("📦 批量清理保存", self._save_all)
|
||||
self.b_fix = self._btn("🧹 规范化标签", self._fix_tags)
|
||||
for x in (self.b_scan, self.b_save, self.b_saveall, self.b_fix): b.addWidget(x)
|
||||
@@ -533,7 +633,7 @@ class MainWindow(QMainWindow):
|
||||
bl.setContentsMargins(24, 18, 24, 12); bl.setSpacing(14)
|
||||
filt = QFrame(); filt.setObjectName("Card")
|
||||
fl = QHBoxLayout(filt); fl.setContentsMargins(14, 10, 14, 10); fl.setSpacing(10)
|
||||
self.search = QLineEdit(); self.search.setPlaceholderText("🔍 搜索英文 Key / 中文参考 / 译文…")
|
||||
self.search = QLineEdit(); self.search.setPlaceholderText("🔍 搜索英文 Key / 中文参考 / 译文 (Ctrl+F)…")
|
||||
self.search.textChanged.connect(self._filter)
|
||||
self.fmode = QComboBox(); self.fmode.addItems(["全部条目", "仅缺失", "仅未映射中文", "⚠️ 仅错误语言残留"])
|
||||
self.fmode.setFixedWidth(180); self.fmode.currentIndexChanged.connect(self._filter)
|
||||
@@ -545,7 +645,7 @@ class MainWindow(QMainWindow):
|
||||
self.table.horizontalHeader().setSectionResizeMode(0, QHeaderView.ResizeMode.Interactive)
|
||||
self.table.horizontalHeader().setSectionResizeMode(1, QHeaderView.ResizeMode.Interactive)
|
||||
self.table.horizontalHeader().setSectionResizeMode(2, QHeaderView.ResizeMode.Stretch)
|
||||
self.table.setColumnWidth(0, 380); self.table.setColumnWidth(1, 300)
|
||||
self.table.setColumnWidth(0, 420); self.table.setColumnWidth(1, 320)
|
||||
self.table.verticalHeader().setVisible(False)
|
||||
self.table.verticalHeader().setDefaultSectionSize(38)
|
||||
self.table.setShowGrid(False)
|
||||
@@ -553,6 +653,7 @@ class MainWindow(QMainWindow):
|
||||
self.table.setContextMenuPolicy(Qt.ContextMenuPolicy.CustomContextMenu)
|
||||
self.table.customContextMenuRequested.connect(self._menu)
|
||||
bl.addWidget(self.table, 1)
|
||||
|
||||
self.progress = QProgressBar(); self.progress.hide()
|
||||
bl.addWidget(self.progress)
|
||||
outer.addWidget(body, 1)
|
||||
@@ -588,6 +689,7 @@ class MainWindow(QMainWindow):
|
||||
self.all_keys, self.zh_dict = extract_keys(MAIN_PY)
|
||||
self.unmapped = [k for k in self.all_keys if k not in self.zh_dict and not is_technical(k)]
|
||||
if self.lang.count() > 0: self._switch()
|
||||
self.status.showMessage(f"🔄 源码已加载: 发现 {len(self.all_keys)} 个词条", 3000)
|
||||
|
||||
def _switch(self):
|
||||
self._stop()
|
||||
@@ -628,8 +730,21 @@ class MainWindow(QMainWindow):
|
||||
val = enforce_format(key, item.text().strip())
|
||||
if val: self.data[key] = val
|
||||
else: self.data.pop(key, None)
|
||||
self.table.blockSignals(True); item.setText(val); self.table.blockSignals(False)
|
||||
self._mark(r, key, val); self._stats()
|
||||
|
||||
self.table.blockSignals(True)
|
||||
item.setText(val)
|
||||
self.table.blockSignals(False)
|
||||
|
||||
self._mark(r, key, val)
|
||||
self._stats()
|
||||
|
||||
# 自动写盘,防止手动编辑丢失
|
||||
code = self.lang.currentData()
|
||||
out = {}
|
||||
for k in self.all_keys:
|
||||
if is_technical(k): out[k] = k
|
||||
elif k in self.data: out[k] = enforce_format(k, self.data[k])
|
||||
write_json(LOCALES_DIR / f"{code}.json", out)
|
||||
|
||||
def _mark(self, r, key, val):
|
||||
it = self.table.item(r, 2)
|
||||
@@ -664,18 +779,31 @@ class MainWindow(QMainWindow):
|
||||
for k in self.all_keys:
|
||||
if not d.get(k) and k in self.zh_dict:
|
||||
d[k] = self.zh_dict[k]
|
||||
miss = sum(1 for k in self.all_keys if not is_technical(k) and not d.get(k))
|
||||
leak = sum(1 for k, v in d.items() if is_wrong_language(k, v, code, self.zh_dict))
|
||||
|
||||
done_cnt = sum(1 for k in self.all_keys if d.get(k))
|
||||
miss_cnt = sum(1 for k in self.all_keys if not is_technical(k) and not d.get(k))
|
||||
leak_cnt = sum(1 for k, v in d.items() if is_wrong_language(k, v, code, self.zh_dict))
|
||||
|
||||
self.bg_total.setText(f"总计 {len(self.all_keys)}")
|
||||
self.bg_miss.setText(f"缺失 {miss}")
|
||||
self.bg_leak.setText(f"残留 {leak}")
|
||||
self.bg_done.setText(f"已翻译 {done_cnt}")
|
||||
self.bg_miss.setText(f"缺失 {miss_cnt}")
|
||||
self.bg_leak.setText(f"残留 {leak_cnt}")
|
||||
|
||||
def _menu(self, pos):
|
||||
if not self.table.itemAt(pos): return
|
||||
r = self.table.itemAt(pos).row()
|
||||
item = self.table.itemAt(pos)
|
||||
if not item: return
|
||||
r = item.row()
|
||||
key = self.table.item(r, 0).text()
|
||||
zh_val = self.table.item(r, 1).text()
|
||||
|
||||
m = QMenu()
|
||||
m.addAction("🤖 AI 翻译此词条").triggered.connect(lambda: self._start([key]))
|
||||
m.addSeparator()
|
||||
m.addAction("📋 复制英文 Key").triggered.connect(lambda: QGuiApplication.clipboard().setText(key))
|
||||
if zh_val:
|
||||
m.addAction("📝 复制中文参考").triggered.connect(lambda: QGuiApplication.clipboard().setText(zh_val))
|
||||
m.addAction("🔡 填入英文原文").triggered.connect(lambda: self.table.item(r, 2).setText(key))
|
||||
m.addSeparator()
|
||||
m.addAction("🗑️ 清空此词条").triggered.connect(lambda: self.table.item(r, 2).setText(""))
|
||||
m.exec(self.table.viewport().mapToGlobal(pos))
|
||||
|
||||
@@ -726,7 +854,12 @@ class MainWindow(QMainWindow):
|
||||
|
||||
def _start(self, keys):
|
||||
cfg = SettingsDialog.cfg()
|
||||
if not cfg["api_key"]: return SettingsDialog(self).exec()
|
||||
if not cfg["api_key"]:
|
||||
dlg = SettingsDialog(self)
|
||||
if dlg.exec() != QDialog.DialogCode.Accepted: return
|
||||
cfg = SettingsDialog.cfg()
|
||||
if not cfg["api_key"]: return
|
||||
|
||||
self._stop(); self.progress.show()
|
||||
self.progress.setMaximum(len(keys)); self.progress.setValue(0)
|
||||
self._lock(True); self.status.showMessage("🤖 正在翻译…")
|
||||
@@ -754,7 +887,12 @@ class MainWindow(QMainWindow):
|
||||
|
||||
def _trans_all(self):
|
||||
cfg = SettingsDialog.cfg()
|
||||
if not cfg["api_key"]: return SettingsDialog(self).exec()
|
||||
if not cfg["api_key"]:
|
||||
dlg = SettingsDialog(self)
|
||||
if dlg.exec() != QDialog.DialogCode.Accepted: return
|
||||
cfg = SettingsDialog.cfg()
|
||||
if not cfg["api_key"]: return
|
||||
|
||||
if QMessageBox.question(self, "确认", "并发补全全部 15 种语言的缺失词条?\n\n写入前逐条语言质检,任何简体中文都会被拒绝并保持空缺。") != QMessageBox.StandardButton.Yes:
|
||||
return
|
||||
self._stop(); self.progress.show(); self.progress.setValue(0); self._lock(True)
|
||||
@@ -771,7 +909,12 @@ class MainWindow(QMainWindow):
|
||||
def _patch(self):
|
||||
if not self.unmapped: return QMessageBox.information(self, "完美", "所有词条均已有中文映射!")
|
||||
cfg = SettingsDialog.cfg()
|
||||
if not cfg["api_key"]: return SettingsDialog(self).exec()
|
||||
if not cfg["api_key"]:
|
||||
dlg = SettingsDialog(self)
|
||||
if dlg.exec() != QDialog.DialogCode.Accepted: return
|
||||
cfg = SettingsDialog.cfg()
|
||||
if not cfg["api_key"]: return
|
||||
|
||||
if QMessageBox.question(self, "确认", f"将 {len(self.unmapped)} 条缺失英文翻译为中文并写入 main.py?") != QMessageBox.StandardButton.Yes:
|
||||
return
|
||||
self._stop(); self.progress.show(); self.progress.setRange(0, 0); self._lock(True)
|
||||
@@ -830,12 +973,13 @@ class MainWindow(QMainWindow):
|
||||
self.status.showMessage("🧹 规范化了所有文件的日志标签和标点", 5000)
|
||||
self._switch()
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
app = QApplication(sys.argv)
|
||||
app.setStyle("Fusion")
|
||||
f = QFont(); f.setFamilies(["Segoe UI", "Microsoft YaHei", "PingFang SC", "sans-serif"]); f.setPointSize(9)
|
||||
f = QFont()
|
||||
f.setFamilies(["Segoe UI", "Microsoft YaHei", "PingFang SC", "sans-serif"])
|
||||
f.setPointSize(9)
|
||||
app.setFont(f)
|
||||
w = MainWindow()
|
||||
w.show()
|
||||
sys.exit(app.exec())
|
||||
sys.exit(app.exec())
|
||||
Reference in new issue
Block a user