Transcript
00:00:00هذا هو “كاناتا”، أداة مفتوحة المصدر تطلق العنان لإمكانيات لوحة مفاتيحك القصوى
00:00:03عن طريق القيام بأمور مثل تعيين وظيفة مختلفة للمفتاح عند النقر السريع مقارنة بالضغط المطول،
00:00:08أو استخدام مفتاح واحد لتنفيذ عدة ضغطات مفاتيح معاً،
00:00:10أو إنشاء طبقات مختلفة لتعيينات مفاتيح مخصصة ومتنوعة.
00:00:12وهو أمر رائع لشخص مثلي يبذل قصارى جهده للاعتماد بشكل أساسي على لوحة المفاتيح.
00:00:16لكن ما قصة صيغة الإعدادات الغريبة هذه؟
00:00:19ولماذا قد أستخدم هذه الأداة بدلاً من Karabiner أو أي أداة أخرى تبدأ بحرف K؟
00:00:24اشترك في القناة ولندخل في التفاصيل.
00:00:27اسم “كاناتا” هو الاسم الأصلي لشعوب الإيروكوا ويعني “القرية”،
00:00:30وهو أمر لا علاقة له بلوحات المفاتيح على الإطلاق.
00:00:33لكن إذا كنت مهتماً بلوحات المفاتيح الميكانيكية مثلي، فربما سمعت عن QMK،
00:00:37وهو برنامج تشغيل (Firmware) شهير ومفتوح المصدر للوحات المفاتيح،
00:00:39يسمح لك بإعادة تعيين المفاتيح داخل لوحة المفاتيح نفسها قبل إرسال الإشارة إلى جهازك.
00:00:42أداة “كاناتا” تشبه QMK ولكنها تعمل على مستوى البرمجيات،
00:00:46لذا فهي تدعم جميع لوحات المفاتيح، حتى تلك الموجودة في حاسوبك المحمول.
00:00:49وبما أنها مكتوبة بلغة Rust، فهذا يعني أنها سريعة جداً
00:00:52ولا يوجد تأخير ملموس تقريباً عند الكتابة.
00:00:55لكن إعدادها ليس بهذه البساطة،
00:00:57لأنه بعد تثبيت “كاناتا” مع Karabiner على الماك،
00:01:00سأتحدث أكثر عن ذلك لاحقاً،
00:01:02سيتعين عليك كتابة ملف إعدادات باستخدام صيغة S-expression المستوحاة من لغة Lisp،
00:01:07وهي أغرب صيغة إعدادات رأيتها في حياتي.
00:01:11فبدلاً من كتابة اسم الدالة خارج الأقواس كما هو متوقع،
00:01:16تكتبها في هذا الملف داخل الأقواس بجانب المعطيات مباشرة.
00:01:21وتزداد الأمور غرابة عندما تبدأ في دمج الدوال داخل بعضها،
00:01:24وهو أمر شائع جداً في هذه الإعدادات،
00:01:26لأن كل شيء يكون داخل الأقواس بدلاً من وجود أسماء الدوال خارجها،
00:01:30مما يجعل فهمها يبدو صعباً في البداية.
00:01:35لكنك ستعتاد عليها بعد فترة.
00:01:36كمثال بسيط لتعيين المفاتيح، لنفترض أنني أريد لمفتاح A أن يعمل كمفتاح X.
00:01:41يمكنني فعل ذلك باستخدام دالة defsource لتحديد مفتاح المصدر بوضع A،
00:01:46واستخدام دالة deflayer واحدة على الأقل لتحديد مفتاح الإخراج،
00:01:50سأسمي هذه الطبقة “base” وأعطيها المعطى X.
00:01:53أي مفتاح غير مدرج في ملف الإعدادات سيعمل بشكل طبيعي.
00:01:57لذا، إضافة مفاتيح أخرى مثل B و C وتعيينها لـ X و Z ستبدو بهذا الشكل.
00:02:02لحسن الحظ، المسافات وعلامات التبويب غير مؤثرة،
00:02:04لذا يمكنك توزيع المفاتيح لجعلها سهلة القراءة كما تحب.
00:02:08هناك المزيد من الأشياء الرائعة التي يمكنك فعلها في هذا الملف.
00:02:10يمكنني إعداد ميزة (النقر والضغط المطول)، بحيث يؤدي النقر السريع عملاً والضغط المطول عملاً آخر،
00:02:15مع تحديد مهلة زمنية للضغط المطول ثم إضافة المفاتيح المراد تعيينها.
00:02:19في هذه الحالة، النقر على A سيسجل X، بينما الضغط المطول عليه سيسجل مفتاح Shift الأيسر.
00:02:24ولتسهيل الأمر، يمكنني إضافة دالة defvar لتسجيل بعض المتغيرات
00:02:28التي أستخدمها بشكل متكرر والإشارة إليها باستخدام علامة الدولار،
00:02:32وهو أمر مثالي لإعداد مفاتيح الصف الأساسي (home row mods) لتعمل كمفاتيح تحكم.
00:02:36بصراحة، يبدو هذا غريباً جداً في البداية،
00:02:39لكنني اعتدت عليه تماماً ولا يمكنني تخيل استخدام لوحة المفاتيح بأي طريقة أخرى.
00:02:42يمكنني أيضاً إنشاء طبقة جديدة باسم مختلف مثل “editor”
00:02:46واستخدامها خصيصاً لتحرير الفيديو عبر تخصيص مجموعة كاملة وجديدة من تعيينات المفاتيح
00:02:51والتبديل إليها باستخدام مفتاح تبديل الطبقات.
00:02:54وإذا كنت تريد القيام بشيء مبهر حقاً عند تبديل الطبقات أو غير ذلك،
00:02:58يمكنك تفعيل خادم TCP الخاص بـ “كاناتا” لتتمكن تطبيقات أخرى من الاستماع إليه.
00:03:03في حالتي، جعلت تطبيق SketchyBar يستمع إلى “كاناتا”
00:03:06ليظهر اسم الطبقة الحالية في الجزء العلوي من سطح المكتب عند تبديلها.
00:03:10نعم، استغرق الأمر الكثير من كتابة الإعدادات للوصول لهذه المرحلة،
00:03:13لكنه ليس أمراً لا يستطيع الذكاء الاصطناعي المساعدة فيه.
00:03:16على أي حال، رغم روعة هذا، لماذا قد يستخدم شخص ما “كاناتا” بدلاً من Karabiner Elements؟
00:03:21بالنظر إلى أن الأخير يمكنه فعل كل ما يفعله “كاناتا” وأكثر،
00:03:24مثل استخدام تعيينات مفاتيح مخصصة لتطبيقات أو لوحات مفاتيح معينة،
00:03:28واختبار المفاتيح عبر مستعرض أحداث بديهي جداً،
00:03:30بالإضافة لامتلاكه واجهة رسومية جميلة لمن لا يحبون تشغيل الأوامر في الطرفية.
00:03:35لكن بالنسبة لي، كانت ميزة (النقر والضغط المطول) في Karabiner ضعيفة جداً.
00:03:40استغرق الأمر الكثير من البحث والإعداد للوصول إلى مرحلة جعلها تعمل.
00:03:45وحتى عندما نجحت في ذلك، لم تكن بديهية مثل “كاناتا”.
00:03:49فكانت تسجل الضغطات المطولة كأنها نقرات سريعة بشكل متكرر.
00:03:51أما “كاناتا”، فقد تعاملت مع هذه الميزة بشكل مثالي منذ البداية دون أي تعديل،
00:03:56ولم أشعر بالحاجة للعودة إلى Karabiner Elements مجدداً.
00:03:59لذا إذا كنت تريد حقاً استخدام home row mods، أنصحك باستخدام “كاناتا”.
00:04:03لكن هذا لا يعني أنها مثالية.
00:04:05ستحتاج لملفات إعدادات متعددة للوحات المفاتيح المختلفة إذا كانت لديك تعيينات متنوعة،
00:04:09وهو أمر مزعج قليلاً إذا فصلت لوحة مفاتيح
00:04:12لأن عليك تشغيل أمر للتبديل إلى تعيين المفاتيح المطلوب.
00:04:15كما لم أجد طريقة لإعادة تعيين زر التشغيل/الإيقاف المؤقت إلى F8 في لوحة مفاتيحي،
00:04:20وهو أمر كنت أستطيع فعله بسهولة مع Karabiner.
00:04:22واستغرق الأمر بعض التعديلات لجعل “كاناتا” تعمل مع فارة MX Master.
00:04:26لحسن الحظ، تمكنت من كتابة حلول برمجية لمعظم هذه المشاكل،
00:04:30والتي قد أجعلها مفتوحة المصدر في المستقبل.
00:04:31لكنني أتمنى حقاً أن يصبح مجتمع “كاناتا” أكبر،
00:04:34وهو ما قد يساعد فيه هذا الفيديو إذا شاركه المزيد من الناس مع أصدقائهم وزملائهم، أليس كذلك؟
Community Posts
No posts yet. Be the first to write about this video!
Write about this video