عن المشروع
SwiftGen هي أداة مفتوحة المصدر تعمل عبر سطر الأوامر وتقوم تلقائيًا بتوليد كود Swift آمن الأنواع لموارد المشروع، لتحل محل واجهات برمجة التطبيقات الهشة القائمة على السلاسل بثوابت يتم فحصها بواسطة المترجم. تقوم الأداة بتحليل مجموعة واسعة من أنواع ملفات الإدخال—بما في ذلك كتالوجات الأصول (xcassets)، وتعريفات الألوان، ونماذج Core Data، والخطوط، وملفات Interface Builder، وJSON/YAML، وplists، وLocalizable.strings—وتخرج تعدادات أو هياكل أو فئات Swift مع ثوابت ثابتة تشير إلى كل مورد بالاسم.
تعمل الأداة عبر ملف إعداد YAML (swiftgen.yml) يحدد المحللات التي يجب تشغيلها، ومسارات إدخالها، ووجهات الإخراج، واختيارات القوالب. يمكن للمستخدمين استدعاءها عبر `swiftgen config run` أو استدعاء المحللات الفردية مباشرة باستخدام `swiftgen run <parser>`. يمكن تهيئة الإعدادات باستخدام `swiftgen config init` والتحقق من صحتها باستخدام `swiftgen config lint`.
تستخدم SwiftGen محرك قوالب Stencil، مما يسمح بتخصيص كامل للإخراج المولد. تأتي مع قوالب مدمجة لـ Swift 4 و Swift 5 (بما في ذلك متغيرات مسطحة ومنظمة للسلاسل)، ولكن يمكن للمستخدمين إنشاء قوالب خاصة بهم لمطابقة اصطلاحات المشروع. تشمل أوامر إدارة القوالب `swiftgen template list` و`swiftgen template cat` و`swiftgen template doc`.
تشمل خيارات التثبيت تنزيل حزم ZIP للإصدارات، أو CocoaPods (`pod 'SwiftGen', '~> 6.0'`)، أو Homebrew (`brew install swiftgen`)، أو Mint (`mint install SwiftGen/SwiftGen`)، أو الترجمة من المصدر عبر `rake cli:install`. تدعم الأداة Swift 4.x و 5.x وتتطلب macOS 10.14.4+ لإصدار SwiftGen 6.2.1+.
تشمل الفوائد الرئيسية القضاء على الأخطاء المطبعية في أسماء الموارد، وتوفير إكمال تلقائي في بيئة التطوير المتكاملة، ومنع الإشارات إلى الأصول غير الموجودة، وتحويل الأخطاء من أعطال وقت التشغيل إلى فشل وقت الترجمة. يتضمن المستودع أيضًا SwiftGen.playground للتجربة، ووثائق Markdown شاملة تغطي الإعدادات والقوالب وسياقات Stencil، وأدلة تكامل لمراحل بناء Xcode وSwiftLint.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.