Cobra هي مكتبة لإنشاء تطبيقات CLI حديثة وقوية.
يتم استخدام Cobra في العديد من مشاريع Go مثل Kubernetes وHugo وGitHub CLI على سبيل المثال لا الحصر. تحتوي هذه القائمة على قائمة أكثر شمولاً للمشاريع التي تستخدم كوبرا.
Cobra هي مكتبة توفر واجهة بسيطة لإنشاء واجهات CLI حديثة وقوية تشبه أدوات git & go.
توفر كوبرا:
واجهة سطر الأوامر (CLI) السهلة المستندة إلى الأوامر الفرعية: app server
، app fetch
، وما إلى ذلك.
علامات متوافقة تمامًا مع POSIX (بما في ذلك الإصدارات القصيرة والطويلة)
أوامر فرعية متداخلة
أعلام عالمية ومحلية ومتتالية
اقتراحات ذكية ( app srver
... هل تقصد app server
؟)
إنشاء تعليمات تلقائية للأوامر والأعلام
تجميع المساعدة للأوامر الفرعية
التعرف التلقائي على علامة المساعدة لـ -h
و --help
وما إلى ذلك.
الإكمال التلقائي لـ Shell الذي تم إنشاؤه تلقائيًا لتطبيقك (bash وzsh وfish وpowershell)
صفحات الرجل التي تم إنشاؤها تلقائيًا لتطبيقك
أوامر الأسماء المستعارة حتى تتمكن من تغيير الأشياء دون كسرها
المرونة في تحديد المساعدة والاستخدام وما إلى ذلك.
تكامل اختياري سلس مع فايبر لتطبيقات ذات 12 عاملًا
تم بناء كوبرا على هيكل من الأوامر والوسائط والأعلام.
تمثل الأوامر الإجراءات، والوسائط هي الأشياء، والأعلام هي معدلات لتلك الإجراءات.
تُقرأ أفضل التطبيقات مثل الجمل عند استخدامها، ونتيجة لذلك، يعرف المستخدمون بشكل بديهي كيفية التفاعل معها.
النمط الذي يجب اتباعه هو APPNAME VERB NOUN --ADJECTIVE
أو APPNAME COMMAND ARG --FLAG
.
قد توضح بعض الأمثلة الجيدة من العالم الحقيقي هذه النقطة بشكل أفضل.
في المثال التالي، "الخادم" هو أمر، و"المنفذ" هو علامة:
hugo server --port=1313
في هذا الأمر، نطلب من Git استنساخ عنوان url المجرد.
git clone URL --bare
الأمر هو النقطة المركزية للتطبيق. سيتم تضمين كل تفاعل يدعمه التطبيق في أمر. يمكن أن يحتوي الأمر على أوامر فرعية ويقوم بتشغيل إجراء بشكل اختياري.
في المثال أعلاه، "الخادم" هو الأمر.
المزيد عن الكوبرا.Command
العلامة هي وسيلة لتعديل سلوك الأمر. تدعم Cobra العلامات المتوافقة تمامًا مع POSIX بالإضافة إلى حزمة Go flag. يمكن لأمر Cobra تحديد العلامات التي تستمر حتى الأوامر الفرعية والعلامات المتوفرة لهذا الأمر فقط.
في المثال أعلاه، "المنفذ" هو العلم.
يتم توفير وظيفة العلم من خلال مكتبة pflag، وهي فرع من مكتبة العلم القياسية التي تحافظ على نفس الواجهة مع إضافة توافق POSIX.
استخدام كوبرا سهل. أولاً، استخدم go get
لتثبيت أحدث إصدار من المكتبة.
go get -u github.com/spf13/cobra@latest
بعد ذلك، قم بتضمين كوبرا في طلبك:
استيراد "github.com/spf13/cobra"
cobra-cli
هو برنامج سطر أوامر لإنشاء تطبيقات كوبرا وملفات الأوامر. سوف يقوم بتمهيد سقالات التطبيق الخاص بك لتطوير تطبيق قائم على كوبرا بسرعة. إنها أسهل طريقة لدمج Cobra في تطبيقك.
يمكن تثبيته عن طريق تشغيل:
go install github.com/spf13/cobra-cli@latest
للحصول على تفاصيل كاملة حول استخدام مولد Cobra-CLI، يرجى قراءة الملف التمهيدي لمولد Cobra Generator
للحصول على تفاصيل كاملة حول استخدام مكتبة Cobra، يرجى قراءة دليل مستخدم Cobra.
تم إصدار Cobra بموجب ترخيص Apache 2.0. راجع LICENSE.txt