يحتوي Roblox Studio على محرر سكريبتات مدمج لتعديل الكود في مشروع Roblox الخاص بك. يتضمن المحرر ميزات رئيسية مثل التحقق من الأخطاء، والتحقق من الأنواع، والإكمال التلقائي، والتعديل التعاوني.
ومع ذلك، يفضل العديد من المطورين استخدام محرر نصوص أو بيئة تطوير متكاملة (IDE) معينة، مثل Visual Studio Code، Cursor، Sublime Text، أو Notepad++. غالبًا ما تحتوي بيئات التطوير الشائعة على ميزات أو إضافات غير موجودة في الاستوديو. لاستخدام محرر خارجي أو IDE مع الاستوديو، قم بتمكين ميزة مزامنة السكريبت.
تعمل مزامنة السكريبت عن طريق مزامنة السكريبتات في نموذج البيانات الخاص بك مع ملفات نصية على القرص المحلي. يتم تطبيق التغييرات التي تمت على ملفات Luau على القرص على السكريبتات في الاستوديو، والعكس صحيح. تعني هذه المزامنة أنك يمكنك تعديل سكريبت في محرر خارجي مثل VS Code ورؤية التغيير فورًا في الاستوديو.
متى تستخدم مزامنة السكريبت
إذا كنت تريد استخدام محرر النصوص المفضل لديك أو التحقق من الكود في نظام التحكم في الإصدارات، ولكن استخدام الاستوديو لكل شيء آخر، فإن مزامنة السكريبت مناسبة تمامًا. تعمل أيضًا مع أدوات التعاون المدمجة في Roblox، والتي غالبًا ما لا تتوفر في أدوات الطرف الثالث.
تعمل مزامنة السكريبت بشكل جيد مع مشاريع Roblox الحالية، حيث إنها ميزة إضافية بدلاً من تغيير شامل في كيفية إدارتك للمشروع.
إذا كنت تريد التحقق من مشروعك بالكامل (وليس فقط الكود) في نظام التحكم في الإصدارات أو استخدام نظام الملفات لديك كمصدر للحقائق لمشروعك، فإن أدوات الطرف الثالث مثل Rojo هي الخيار الأفضل.
إعداد مزامنة السكريبت
في المستكشف، حدد مجلدًا أو أكثر ترغب في مزامنتها.
انقر بزر الماوس الأيمن واختر مزامنة السكريبت ⟩ المزامنة مع الدليل.

اختر دليلًا على جهاز الكمبيوتر الخاص بك (أو أنشئ واحدًا جديدًا) وانقر على حفظ.
في الاستوديو، انقر بزر الماوس الأيمن على المجلد مرة أخرى واختر مزامنة السكريبت ⟩ إظهار في المستكشف (Windows) أو إظهار في Finder (macOS).
افتح الدليل في محرر النصوص المفضل لديك.
بدلاً من ذلك، انقر بزر الماوس الأيمن على سكريبت فردي في الاستوديو واختر فتح في محرر خارجي.
يمكنك مزامنة سكريبتات فردية، ولكننا نوصي بشدة بمزامنة المجلدات؛ إذا قمت بمزامنة مجلد، فإن مزامنة السكريبت ستقوم تلقائيًا بمزامنة مجلداته الفرعية والسكريبتات، مما يتيح لك إنشاء وحذف وإعادة تسمية السكريبتات دون الحاجة إلى تمكين المزامنة في كل مرة.
بعد إعداد مزامنة السكريبت، من المؤكد تقريبًا أنك تريد إضافة إضافة LSP إلى محرر النصوص الخاص بك.
نصائح رئيسية
تعمل مزامنة السكريبت فقط على مزامنة المثيلات Script، LocalScript، ModuleScript و Folder. يتم تجاهل جميع المثيلات الأخرى في المجلد المزامن. تجنب مزامنة المجلدات التي تحتوي على سكريبتات بجانب مثيلات أخرى.
لا تقم بمزامنة السكريبتات التي تحتوي على سمات أو علامات. تتجاهل مزامنة السكريبت هذه، مما قد يؤدي إلى فقدان البيانات إذا قمت بإنشاء أو حذف سكريبتات أو بدأت في المزامنة مع إصدار أقدم من ملفاتك على القرص.
تتطلب مزامنة السكريبت أن تكون أسماء السكريبتات متوافقة مع نظام الملفات لديك - لا توجد أسماء مكررة أو أحرف غير مدعومة. إذا واجه الاستوديو أي من هذه المشكلات، فإنه يظهر خطأ ويطلب منك حل الموقف قبل استئناف المزامنة.
إذا تغيرت أي ملفات أو مجلدات مزامنة بينما كان الاستوديو مغلقًا، يسألك الاستوديو كيف تريد حل الموقف عند إعادة فتح المكان.
يمكن أن يؤدي حذف مثيل على المستوى الأعلى (أو "الجذر") - المثيل الذي قمت بمزامنته في البداية - على القرص المحلي إلى ظهور خطأ في الاستوديو. لحذف مثيل على المستوى الأعلى:
- في الاستوديو، انقر بزر الماوس الأيمن على السكريبت أو المجلد واختر مزامنة السكريبت ⟩ إيقاف المزامنة.
- اختر خيار حذف الملف الخاص (الملفات) أو حذف المجلد (المجلدات) لحذف المثيل من القرص المحلي الخاص بك.
- احذف السكريبت أو المجلد في الاستوديو.
يمكنك حذف المثيلات الفرعية في الاستوديو أو على القرص المحلي لديك دون تعطيل المزامنة، وسيتزامن الحذف كما تتوقع.
إعداد خادم اللغة
تقدم خوادم اللغة لمحرر النصوص الخاص بك ميزات محددة للغة مثل الإكمال التلقائي، والتحقق من الأنواع، و"انتقل إلى التعريف"، والمزيد. بالنسبة لـ VS Code، نوصي باستخدام Luau Language Server.
تحتاج إضافات بروتوكول خادم اللغة (LSP) إلى فهم تسلسل نموذج البيانات للمشروع للعمل بشكل صحيح. تأتي إضافة VS Code مع ملحق مرفق للاستوديو (ملحق خادم لغة Luau) الذي يوفر هذه البيانات.
نوصي بشدة بتثبيت كلاهما. إذا كنت تستخدم إضافة VS Code وملحق الاستوديو المرافق، ستعمل ميزات اللغة بشكل صحيح في VS Code أثناء استخدام مزامنة السكريبت.
الإضافات الموصى بها
- Roblox Luau LSP و ملحق خادم لغة Luau Companion - ميزات اللغة (انظر أعلاه)
- selene - تحليل الكود الثابت (تحقق من الأخطاء)
- StyLua - تنسيق الكود التلقائي
قواعد المزامنة
عند مزامنة مثيل مع أطفال مع دليل على القرص، سيقوم الاستوديو تلقائيًا بمزامنة العمليات مثل الإنشاء، وإعادة التسمية، والنقل، والحذف على الأطفال مع الملفات والمجلدات المقابلة على القرص. تتيح لك هذه الطريقة الحفاظ على كودك دون الحاجة إلى إيقاف وبدء المزامنة يدويًا على السكريبتات الفردية.
على القرص، تستخدم مزامنة السكريبت القواعد التالية لتفريق أنواع السكريبتات المختلفة عن بعضها.
| صيغة التسمية على القرص | نوع المثيل في الاستوديو |
|---|---|
| name.luau | ModuleScript |
| name.server.luau | سكريبت مع Server Script.RunContext |
| name.client.luau | سكريبت مع Client Script.RunContext |
| name.local.luau | LocalScript |
| name.legacy.luau | سكريبت مع Legacy Script.RunContext |
| name.plugin.luau | سكريبت مع Plugin Script.RunContext |
| name/ (دليل) | Folder |
| name/init.*.luau | مثيل سكريبت مع أطفال. يتم تحديد النوع (*) بواسطة القواعد أعلاه. |
الإعدادات
تحتوي مزامنة السكريبت على عدة إعدادات في نافذة إعدادات الاستوديو (AltS أو ⌥S). الخيارات الافتراضية هي مناسبة لمعظم حالات الاستخدام.
| الإعداد | الوصف |
|---|---|
| استئناف المزامنة تلقائيًا عند فتح المكان | ما إذا كان ينبغي على الاستوديو استئناف المزامنة عند فتح مكان. إن تعطيل هذا الإعداد يقلل بشكل كبير من فائدة مزامنة السكريبت. |
| استئناف المزامنة المتعارضة عند فتح المكان | كيفية تعامل الاستوديو مع النزاعات عند فتح المكان. الخيار الافتراضي، عدم الاستئناف، يجبرك على حل النزاعات يدويًا لتجنب فقدان البيانات. يمكنك أيضًا اختيار تفضيل النسخة على القرص أو النسخة في الاستوديو. |
| الاحتفاظ بالملفات / الأدلة المحلية بعد المزامنة | كيفية التعامل مع الملفات على القرص بعد اختيارك مزامنة السكريبت > إيقاف المزامنة في الاستوديو. |
| امتداد الملف | امتداد الملف الذي يجب استخدامه للسكريبتات على القرص. |