هل تبحث عن حل لتدوين الملاحظات خفيف وسريع للغاية وسهل الوصول إليه؟ ابحث عبر الإنترنت ، وستجد اقتراحات لا حصر لها لمثل هذه التطبيقات. ومع ذلك ، فحتى "الأخف منها" غالبًا ما تكون غير مرغوب فيها وقد تأتي مع ميزات قد تعتبرها شخصيًا غير مجدية.

لذلك ، دعنا نرى كيف يمكنك إنشاء تطبيق خاص بك لتدوين الملاحظات فائق الخفة وسريع النيران ومخصص باستخدام AutoHotkey. حل بسيط لتدوين الملاحظات بدون زخرفة يمكنه الظهور على شاشتك على الفور بضغطة مفتاح واحدة.

إعداد خطة لتدوين الملاحظات باستخدام AutoHotkey

لنبدأ بتحديد هدفنا النهائي بوضوح ووضع خطة بسيطة للوصول إليه.

بالنسبة لهذا المشروع ، لا نحتاج إلى أي تنسيق نصي رائع أو دعم للنماذج أو ميزات "متقدمة" أخرى. هدفنا؟

  • نريد إنشاء تطبيق فائق البساطة يظهر على شاشتنا عندما نضغط على مجموعة مفاتيح الاختصار.
  • ستسمح لنا هذه النافذة بتدوين ملاحظة وحفظها في ملف نص عادي / مارك داون.

وهذا كل شيء — لا نوافذ أو مربعات حوار أو قوائم أو أزرار إضافية.

لحسن الحظ ، من السهل إنشاء مثل هذا المشروع باستخدام AutoHotkey ، كما سنرى لاحقًا. لا تتردد في المتابعة حتى إذا لم تكن قد استخدمت AutoHotkey من قبل. ومع ذلك ، قد يكون من الأفضل أن تتحقق أولاً من دليل AutoHotkey السريع للمبتدئين.

instagram viewer

كيفية تثبيت AutoHotkey

نظرًا لأن AutoHotkey هو حل تابع لجهة خارجية ، لاستخدامه ، تحتاج إلى تثبيته.

لذا ، قم بزيارة موقع AutoHotkey الرسمي، وانقر على اللون الأخضر الصديق تحميل زر. تخطي كلا الإصدارين V1 (مهمل) و V2 (تجريبي) ، واختر تنزيل الإصدار الحالي. ثم قم بتثبيته على جهاز الكمبيوتر الخاص بك.

لن تتمكن من ملاحظة أي تغييرات بعد ذلك لأن AutoHotkey يعمل فقط كمحلل لبرامج AutoHotkey النصية. بمعنى آخر ، لا يقوم AutoHotkey "بعمل أي شيء" بمفرده. بدلاً من ذلك ، يعمل كمنصة سيتم تشغيل النص الذي سنقوم بصياغته بعد ذلك.

كيفية عمل برنامج نصي جديد في AutoHotkey

افتح مدير الملفات المفضل لديك ، مثل مستكشف ملفات Windows، ثم قم بتوجيهه إلى الدليل حيث تريد إنشاء البرنامج النصي الجديد الخاص بك. يمكنك اختيار أي دليل من سطح المكتب إلى مجلد المستندات الشخصي.

أسهل طريقة لإنشاء برنامج نصي AutoHotkey جديد هو الاستفادة من الخيار الجديد المتاح من خلال قائمة سياق النقر بزر الماوس الأيمن بعد تثبيت AutoHotkey. انقر بزر الماوس الأيمن فوق مكان فارغ في نافذة مدير الملفات ، ومن القائمة التي تظهر ، اختر جديد > برنامج نصي AutoHotkey.

نظرًا لأن البرامج النصية لـ AutoHotkey هي في الواقع ملفات نصية عادية ، يمكنك بدلاً من ذلك إنشاء ملف نصي جديد ثم إعادة تسميته ، وتغيير امتداده من رسالة قصيرة ل AHK. ستكون النتيجة النهائية هي نفسها: سيكون لديك برنامج نصي جديد فارغ لـ AutoHotkey.

قم بتشغيل محرر النص أو الكود المفضل لديك وافتح البرنامج النصي هناك لتحريره. في هذه المقالة ، سنستخدم Notepad ++ ، ولكن يمكنك استخدام أي أداة مماثلة ، مثل VS Code أو Atom.

بالطبع ، إذا كنت تفضل إبقاء الأمور بسيطة ، فيمكنك دائمًا استخدام Notepad القديم الجيد الذي يصاحب Windows.

صياغة واجهة المستخدم الرسومية في AutoHotkey

لتبسيط التخصيص المستقبلي للبرنامج النصي الخاص بنا ، دعنا نخزن معلومتين أساسيتين في متغيرين.

  • الأول ، الذي أطلقنا عليه اسم NotesPath ، يتم تعيينه إلى المسار الكامل حيث نريد أن يقوم البرنامج النصي الخاص بنا بحفظ ملاحظاتنا. من فضلك ، تذكر تغيير المسار إلى المسار الذي تريد استخدامه. خلاف ذلك ، سيتم حفظ ملاحظاتك في مكان غير متوقع ، أو سيفشل البرنامج النصي.
  • الثانية ، والتي أطلقنا عليها اسم FileNameExtra ، تحتوي على سلسلة سنستخدمها لأسماء ملفات ملاحظاتنا. سيتم تسمية ملف كل ملاحظة باسم نسخة "مطهرة" من عنوانها ، متبوعة بهذه السلسلة.

يجب أن تبدو هذه:

NotesPath = A: \ 00_Cloud_Storage \ Dropbox \ Notes \ Obsidian \ Drauidian! صندوق الوارد
FileNameExtra = _MUOnote.md

عادة ، يتم استخدام AutoHotkey للتأثير على النوافذ الأخرى ، كما رأينا في مقالتنا على كيفية توسيط أي نافذة على شاشتك باستخدام AutoHotkey، أو لإنشاء مفاتيح الاختصار ، والتي يمكنك مراجعة دليلنا عليها إنشاء مفاتيح الاختصار الخاصة بالتطبيق باستخدام AutoHotkey.

ومع ذلك ، في هذا السيناريو ، سنعتمد كثيرًا على إمكانات إنشاء واجهة المستخدم الرسومية الخاصة بـ AutoHotkey ، والتي ينسىها الكثير من الناس. ينقر AutoHotkey في مجموعة أدوات النافذة "الخاصة بـ Windows". يتيح ذلك إنشاء واجهات المستخدم الرسومية مع جميع العناصر المعتادة التي تتوقع أن تجدها في نافذة نظام التشغيل "القياسية" ، من الحقول النصية والقوائم المنسدلة إلى الأزرار وأشرطة التمرير.

لحسن الحظ ، نظرًا لأننا نصمم تطبيقًا بسيطًا و "خفيفًا" لتدوين الملاحظات ، فلن يكون المشروع معقدًا ، وبالتالي ، من السهل نسبيًا صياغته. ستتألف واجهة المستخدم الرسومية الخاصة بنا من ثلاثة عناصر فقط:

  1. مربع نص واحد لعنوان الملاحظة
  2. واحد آخر لمحتوى الملاحظة
  3. زر لحفظ الملاحظة.

لن نضيف حتى زر "إلغاء" لأننا سنقوم بتعيين هذه الوظيفة إلى مفتاح Escape على لوحة المفاتيح وإجراء إغلاق النافذة.

أضف السطر أدناه إلى البرنامج النصي الخاص بك - فهو في الأساس "يخبر" AutoHotkey أن الخط في أي عنصر يتبع يجب أن يكون "الحجم 14" و "اللون 666666".

غوي, QN: الخط, ق 14ج 666666

بعد ذلك ، السطر التالي:

غوي, QN:يضيف, يحرر, x5y5W550ساعة 60العنوان, عنوان-اسم الملف
  1. ... يضيف مربع نص قابل للتعديل ("تحرير")...
  2. ... عند الإحداثيات 5 بكسل أفقيًا و 5 بكسلات رأسية من حافة النافذة ("x5 y5")...
  3. ... بعرض 550 بكسل وارتفاع 60 بكسل ("w550 h60").
  4. سيتم تعيين كل شيء مكتوب فيه إلى متغير العنوان ("vTitle")...
  5. ... وسيحتوي على النص "العنوان - اسم الملف".

بعد ذلك ، لنقم بتغيير حجم الخط إلى 12 ولونه إلى 4444444 لأي عنصر يأتي بعد هذا السطر.

بعد ذلك ، أضف مربع نص أكبر قابل للتحرير للمحتوى الفعلي للملاحظة ، وقم بتعيينه إلى متغير الملاحظة ، وقم بتعبئته مسبقًا بأي شيء موجود بالفعل في الحافظة.

أخيرًا ، أضف زرًا أسفل مربعي النص وفي الجزء السفلي من نافذة التطبيق ، تم تعيينه إلى وظيفة OK الافتراضية للبرنامج النصي.

غوي, QN: الخط, ق 12ج 444444
غوي, QN:يضيف, يحرر, x5y70W550h600vNote, %الحافظة%
غوي, QN:يضيف, زر, x5y680W550ساعة 50, نعم

لقد أنشأنا واجهة مستخدم رسومية ، لكننا نحتاج أيضًا إلى نافذة لعرضها.

لذلك ، فإن السطر التالي "يخبر" AutoHotkey لإنشاء نافذة عند الإحداثيات 0 ، 0 (أفقي ، رأسي) ، بعرض 560 بكسل وارتفاع 735 بكسل ، تسمى "MUONotes".

غوي, QN:يعرض, × 0ذ 0w560h735, موونوتس

يجب أن يبدو النص الكامل حتى الآن كما يلي:

NotesPath = A: \ 00_Cloud_Storage \ Dropbox \ Notes \ Obsidian \ Drauidian! صندوق الوارد
FileNameExtra = _MUOnote.md Gui، QN: Font، s14 c666666
غوي, QN:يضيف, يحرر, x5y5W550ساعة 60العنوان, عنوان-اسم الملف
غوي, QN: الخط, ق 12ج 444444
غوي, QN:يضيف, يحرر, x5y70W550h600vNote, %الحافظة%
غوي, QN:يضيف, زر, x5y680W550ساعة 50, نعم
غوي, QN:يعرض, × 0ذ 0w560h735, موونوتس

جعل الأزرار تفعل شيئًا ما في AutoHotkey

واجهة المستخدم الرسومية جاهزة - يمكنك التحقق منها بالنقر المزدوج على البرنامج النصي الخاص بك.

كما سترى ، سيتم ملء منطقة الملاحظات الرئيسية مسبقًا بمحتويات الحافظة. ومع ذلك ، سيكون التطبيق نفسه عديم الفائدة لأننا لم نقم بإضافة دعم لحفظ أي شيء.

أصلح ذلك عن طريق إضافة ما يلي إلى البرنامج النصي الخاص بك:

QNButtonOK:
ترميز الملفات ، UTF-8-RAW
غوي, QN:يُقدِّم
TempClipboard =٪ ClipBoard٪
ClipBoard =٪ Title٪
gosub CleanText
اسم الملف =٪ ClipBoard٪
الحافظة =٪ TempClipboard٪
FinalFilename =٪ NotesPath٪ \٪ FileName ٪٪ FileNameExtra٪
حذف ملف ،٪ FinalFileName٪
ملحق الملف ،٪ ملاحظة٪ ،٪ FinalFileName٪
يعود

دعونا نفكك ذلك:

  1. يوضح "QNButtonOK:" أن ما يأتي بعد ذلك هو ما "يجب أن يفعله AutoHotkey" عند النقر فوق الزر "موافق" الافتراضي في واجهة المستخدم الرسومية.
  2. يعيّن سطر "FileEncoding" ترميز الملف النصي الذي تم إنشاؤه.
  3. يستحوذ "Gui، GN: Submit" على حالة كل عنصر من عناصر واجهة المستخدم الرسومية ، مما يعني أنه "يلتقط" أيضًا أي شيء مكتوب في حقلي النص.
  4. نقوم بعد ذلك بنسخ المحتويات الفعلية للحافظة مؤقتًا إلى متغير TempClipboard.
  5. نقوم بما سبق لأننا نريد نسخ عنوان الملاحظة إلى الحافظة ، التي تُستخدم كوسيط لإرسالها إلى وظيفة سنضيفها بعد ذلك. ستعمل هذه الوظيفة على "تعقيم" النص وإزالة الأحرف غير الأبجدية الرقمية والسماح لنا باستخدام نص العنوان كاسم ملف.
  6. ستعيد وظيفة التطهير العنوان "النظيف" إلى الحافظة ، حيث نقوم بتعيينه إلى متغير اسم الملف.
  7. ثم نعيد محتواه الأصلي إلى الحافظة من متغير TempClipboard.
  8. للحصول على المسار الكامل واسم الملف الهدف ، نقوم "بسندويتش" متغير FileName الذي تم تجميعه حديثًا بين متغيري NotesPath و FileNameExtra. لهذا السبب قمنا بتعريفهم في بداية النص.
  9. نحذف بشكل استباقي أي ملف سابق بنفس المسار واسم الملف.
  10. نقوم بإلحاق محتوى متغير الملاحظة بملف FinalFileName.

تعقيم النص في AutoHotkey

وظيفة "التطهير" التي ذكرناها أعلاه هي التالية:

CleanText: CleanMePlease =٪ ClipBoard٪
CleanMePlease: = Regexreplace (CleanMePlease ، "a-zA-Z0-9", "")
حلقة
{
StringReplace ، CleanMePlease ، CleanMePlease ،٪ A_SPACE ٪٪ A_SPACE٪ ،٪ A_SPACE٪ ، الكل
إذا ErrorLevel <> 0
استراحة
}
ClipBoard =٪ CleanMePlease٪
يعود

لتصفحها سطراً بسطر:

  1. "CleanText" هو اسم الوظيفة التي "تحتوي" على الإجراءات التالية.
  2. نقوم أولاً بتعيين محتوى الحافظة إلى متغير CleanMePlease.
  3. نستخدم قاعدة RegEx لإزالة جميع الأحرف غير الأبجدية الرقمية من متغير CleanMePlease.
  4. نظرًا لأن ما سبق يمكن أن يقدم مسافات مزدوجة ، فإننا نستخدم حلقة لتمشيط متغير CleanMePlease مرة أخرى ، واستبدالها بمسافات مفردة. هذا هو البت مع "٪ A_SPACE٪" ، متبوعًا بواحد واحد ، وكلمة "all".
  5. يخبر سطر ErrorLevel "AutoHotkey بقطع الحلقة" عندما لا يجد المزيد من المسافات المزدوجة في النص.
  6. أخيرًا ، نعيد الإصدار "المطهر" من متغير CleanMePlease إلى الحافظة.

إجراء التعديلات النهائية على تطبيق تدوين الملاحظات

البرنامج النصي لتدوين الملاحظات جاهز للاستخدام ، ولكن إذا جربته ، فقد ترى نافذته منبثقة وتختفي على الفور. هذا لأنك تحتاج أيضًا إلى "إرجاع" كل دالة حددتها فيه.

لذلك ، ضع كلمة "إرجاع" (بدون علامات اقتباس) أسفل:

  1. جزء إنشاء واجهة المستخدم الرسومية من البرنامج النصي ، تحت سطر "QN: Show ...".
  2. وظيفة "QNButtonOK" ، تحت سطر "FileAppend ..." الأخير.
  3. وظيفة CleanText ، ضمن آخر سطر "ClipBoard = ...".

ومع ذلك ، إذا حاولت تشغيل البرنامج النصي الخاص بك الآن ، فسترى أنه لا يزال باقياً في علبة Windows بعد استخدامه. لإغلاق التطبيق والخروج من البرنامج النصي بالكامل ، أضف ما يلي في النهاية:

QNGuiEscape:
اغلاق:
ExitApp
يعود

أخيرًا ، لتشغيل التطبيق فورًا متى احتجت إليه ، قم بإنشاء اختصار للبرنامج النصي على سطح المكتب. ثم ، انقر بزر الماوس الأيمن فوقه ، واختر ملكيات، انقر في مفتاح الاختصار ، واضغط على مجموعة الأزرار التي تريدها.

تهانينا على إنشاء تطبيقك الأول في AutoHotkey

ربما بدا الأمر في البداية وكأنه مشروع معقد ، ولكن كما رأينا ، كان إنشاء تطبيق "خفيف" لتدوين الملاحظات أمرًا سهلاً للغاية.

كل ذلك بفضل بناء جملة AutoHotkey الصديق للإنسان والقدرة على الاستفادة من عناصر Windows الافتراضية المتعلقة بواجهة المستخدم الرسومية.