من الخطوات إلى البرنامج النصي
متى تبدّل إلى البرنامج النصي
تغطي الخطوات معظم الإجراءات. بدّل إلى البرنامج النصي عندما تحتاج إلى شيء لا تستطيع الخطوة احتواءه:
- العمليات الحسابية، مثل نقل نافذة 100 بكسل من مكانها؛
- بناء نص من أجزاء، مثل اسم ملف فيه تاريخ اليوم؛
- استدعاء دالة مضمَّنة داخل حقل دالة مضمَّنة أخرى، دون متغير بينهما؛
- حلقة تستخدم عدّادها، مثل "لكل واحدة من النوافذ الخمس الأولى".
التبديل لا يُضيع خطواتك أبدًا: يحتفظ الإجراء بمتن الخطوات ومتن البرنامج النصي جنبًا إلى جنب (الخطوات والبرنامج النصي وAutoHotkey).
عرض التعليمات البرمجية
الوضع المتقدم. يعرض عرض التعليمات البرمجية، في نهاية محرر الخطوات، الخطوات كنص: الصيغة التي تُخزَّن بها. ويخفيها إخفاء التعليمات البرمجية مرة أخرى. وتبدأ مخفية في كل مرة تحدد فيها إجراءً آخر.
- يعيد التعديل في عرض التعليمات البرمجية ② بناء صفوف الخطوات فوقه بمجرد أن يصبح النص صالحًا.
- عندما يتعذّر عرض النص كصفوف، مثلًا لأنه يستخدم صيغة "الانتقال إلى خطوة" من if، يعرض المحرر التعليمات البرمجية دون الارتباط عرض التعليمات البرمجية، لأنها حينئذٍ الطريقة الوحيدة لتحرير الخطوات. وتُستبدل الصفوف برسالة تذكر السبب (المشكلات).
- لا يعيد المحرر أبدًا كتابة نص لا يستطيع عرضه كصفوف. ولا يُحتفظ بالتعليقات في النص بمجرد تحرير الصفوف.
الصيغة النصية نفسها، وكل نوع من الخطوات وحقوله، موصوفة في محرك الخطوات.
ترجمة الخطوات إلى برنامج نصي
- حدد برنامج نصي تحت مكتوب بصيغة.
- إذا كان في الإجراء خطوات ومتن البرنامج النصي فارغًا، يسأل هل تريد تحويل الخطوات إلى برنامج نصي؟ ما إذا كنت تريد ترجمتها. انقر على تحويل.
- تظهر الترجمة في محرر البرامج النصية. تحقق منها وأكملها هناك.
عندما تكون الخطوات تسجيلًا أُنشئ في صفحة المسجِّل، يضيف مربع الحوار: هذه الخطوات تسجيل. كبرنامج نصي، تتجاهل «سرعة إعادة التشغيل» و«تفاصيل مسار الماوس عند إعادة التشغيل» في المسجِّل: تُنفَّذ فترات الانتظار بالسرعة المسجلة ويُعاد تشغيل كل حركة ماوس مسجلة. (إعدادات إعادة التشغيل)
الترجمة في اتجاه واحد. تبقى الخطوات كما كانت، لذا يعرضها التبديل مرة أخرى إلى خطوات دون تغيير، لكن لا شيء يحوّل برنامجًا نصيًا مرة أخرى إلى خطوات.
ولا تُعرض عندما:
- يحتوي متن البرنامج النصي على نص بالفعل (سيُكتب فوقه)؛
- يتعذّر عرض الخطوات كصفوف؛
- تكون أي خطوة التكرار ما دام أو التكرار حتى أو الخروج من الحلقة أو إيقاف الخطوات. فليس في البرنامج النصي إلا حلقات العدّ، ولا شيء يغادر حلقة أو ينهي الإجراء مبكرًا.
ما يصبح عليه كل نوع من الخطوات
| الخطوة | البرنامج النصي |
|---|---|
| خطوة دالة مضمَّنة | عبارة واحدة، WindowMaximize(window); |
| خطوة فيها حفظ النتيجة باسم | name = Builtin(…); |
| تعيين متغير | name = value; |
$name في حقل | الاسم المجرد، name |
| قراءة مثل النافذة الهدف | الاستدعاء، ContextGetWindow() |
ثابت مسمى مثل MouseButton.Primary، خارج حقل نص | الاسم كما هو |
| نص | سلسلة بين علامتي اقتباس، مع تهريب الشرطات المائلة العكسية وعلامات الاقتباس |
| حقل فارغ | القيمة الفارغة للنوع، مثل 0 أو "" |
| إذا / وإلا / نهاية إذا | if (…) { … } else { … } |
| مقارنة | a == b والعوامل الأخرى؛ ويصبح عكس النتيجة !(…) |
| التكرار عددًا من المرات | حلقة for على عدّاد اسمه i (أو i2 وهكذا، إذا كان i مستخدمًا) |
مثلًا، تصبح وصفة التكبير أو الاستعادة:
window = ContextGetWindow();
if (WindowIsMaximized(window)) {
WindowRestore(window);
} else {
WindowMaximize(window);
}
اختلاف واحد يجب الانتباه إليه: في الخطوات، يُقرأ المتغير المستخدم قبل أن تحفظه أي خطوة كـ 0. أما في البرنامج النصي، فيجب إسناد المتغير فوق أول استخدام له في النص، وإلا فلا يُترجم البرنامج النصي (المتغيرات).
التسجيلات
يعرض مسجِّل الماكرو أيضًا التسجيل كخطوات، مع زر برنامج نصي يترجمه بالطريقة نفسها. والتسجيل المحفوظ كخطوات يتبع الإعداد سرعة إعادة التشغيل؛ أما المترجم فيعمل كما سُجّل.