كتيبات سطر الأوامر

Man » دليل gpm عبر الإنترنت - وثائق تفصيلية عبر الإنترنت لصفحة دليل gpm

🌍
gpm - أداة لنسخ ولصق النصوص وخادم للماوس لوحدات التحكم الافتراضية.

الملخص

gpm [ خيارات ]

الوصف

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

من المفترض أن يعمل الملف القابل للتنفيذ "gpm" كخادم (وبالتالي، سيكون "gpmd" اسمًا أفضل له).
يهدف هذا القسم إلى وصف خيارات سطر الأوامر الخاصة بـ "gpm"، بينما يتم توضيح تفاصيله في القسم التالي.

نظرًا للقيود المفروضة في استدعاء النظام "ioctl(TIOCLINUX)"، يجب تشغيل "gpm" بواسطة المستخدم المتميز.
تمت إضافة هذه القيود في أحدث إصدارات kernel 1.1 لإصلاح ثغرة أمنية متعلقة بـ "selection" وعرض الشاشة.

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

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

الأوامر الخاصة

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

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

الأوامر الخاصة الافتراضية هي:

زر الماوس الأيسر

إعادة تشغيل النظام عن طريق إرسال إشارة إلى عملية init.

زر الماوس الأوسط (إن وجد)

تنفيذ الأمر /sbin/shutdown -h now.

زر الماوس الأيمن

تنفيذ الأمر /sbin/shutdown -r now.

يُمكّن الخيار -S في سطر الأوامر معالجة الأوامر الخاصة ويسمح بتغيير الأوامر الثلاثة. لاستخدام الأوامر الافتراضية، استخدم -S "" (أي، حدد وسيطة فارغة). لتحديد أوامرك الخاصة، استخدم قائمة مفصولة بنقطتين لتحديد الأوامر المرتبطة بالأزرار اليسرى والوسطى واليمنى. إذا كانت أي من الأوامر فارغة، فسيتم تفسيرها على أنها "إرسال إشارة إلى عملية init". يتم دعم هذه العملية بالذات، بالإضافة إلى تنفيذ أوامر خارجية، لأن بعض الأخطاء السيئة قد تجعل النظام غير قادر على إنشاء عمليات جديدة؛ في هذه الحالة النادرة، يجب أن يكون المبرمج قادرًا على إيقاف تشغيل النظام على أي حال، وقتل عملية init من عملية قيد التشغيل هو الطريقة الوحيدة للقيام بذلك.

كمثال، ‎-S ":telinit 1:/sbin/halt" يربط قتل عملية init بالزر الأيسر، والانتقال إلى وضع المستخدم الواحد بالزر الأوسط، وإيقاف تشغيل النظام بالزر الأيمن.

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

خيارات سطر الأوامر

خيارات سطر الأوامر المتاحة هي كما يلي:

-a accel

تعيين قيمة التسارع المستخدمة عندما تكون حركة الماوس الواحدة أطول من delta (انظر -d).

-A[limit]

ابدأ مع تعطيل لصق التحديد. هذا مخصص كإجراء أمني؛ يبدو أن أحد الهجمات المحتملة على النظام هو وضع أمر شل ضار في مخزن التحديد (rm -rf /) بما في ذلك فاصل الأسطر النهائي، ثم كل ما يحتاجه الضحية هو النقر فوق زر الماوس الأوسط... اعتبارًا من الإصدار 1.17.2، تطور هذا إلى آلية تقادم أكثر عمومية؛ يمكن لعملية gpm تعطيل (تقادم) لصق التحديد تلقائيًا بعد فترة من الخمول. لتمكين هذا الوضع، ما عليك سوى إعطاء معلمة limit الاختيارية (بدون مسافة بينهما!) والتي يتم تفسيرها على أنها الوقت بالثواني الذي يعتبر فيه التحديد صالحًا وقابلاً للنسخ. اعتبارًا من الإصدار 1.15.7، يتم توفير برنامج صغير يسمى disable-paste. يمكن أن يكون ما يلي إضافة جيدة إلى /etc/profile إذا كنت تسمح لعدة مستخدمين بالعمل على وحدة التحكم الخاصة بك.

`case $( /usr/bin/tty ) in
/dev/tty[0-9]*) /usr/bin/disable-paste ;;
esac`

-b baud

تعيين معدل الباود.

-B sequence

تعيين تسلسل الأزرار. 123 هو التسلسل العادي، ويمكن استخدام 321 من قبل الأشخاص الذين يستخدمون اليد اليسرى، ويمكن أن يكون 132 مفيدًا مع الفئران ذات الزرين (خاصة داخل Emacs). جميع تباديل الأزرار مسموح بها.

-d delta

تعيين قيمة delta. عندما تكون حركة الماوس الواحدة أطول من delta، يتم استخدام accel كعامل مضاعف. (يجب أن يكون 2 أو أعلى)


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

-g رقم
بالنسبة لأجهزة glidepoint، قم بمحاكاة الزر المحدد بالنقر. يجب أن يكون الرقم هو '1' أو '2' أو '3'، ويشير إلى رقم الزر قبل إجراء إعادة تعيين الزر باستخدام '-B'. ينطبق هذا الخيار على فك ترميز mman و ps2. لا يتم محاكاة أي زر افتراضيًا لأن النقر على ps2 غير متوافق مع بعض الفأرات ps2 العادية.

-h اطبع ملخصًا لخيارات سطر الأوامر.

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

-k اقتل gpm قيد التشغيل. يمكن استخدامه من قبل مستخدمي busmouse لقتل gpm قبل تشغيل X (إلا إذا استخدموا '-R' أو تمت إزالة قيود الفتح الأحادي من النواة).

-l مجموعة الأحرف
اختر جدول البحث "inword()". مجموعة الأحرف هي قائمة بالأحرف. يتم استخدام '-' لتحديد نطاق، ويتم استخدام ' ' للهروب من الحرف التالي أو لتقديم رموز ثمانية. لا يمكن أن تظهر الأحرف المرئية فقط في مجموعة الأحرف لأن الأحرف غير المرئية لا يمكن أن تظهر في ذاكرة الفيديو في وضع النص، ومن ثم يتم اقتطاع التحديد.

-m اسم الملف
اختر ملف الفأرة المراد فتحه. يجب أن يكون قبل -t و -o.

-M قم بتمكين الوضع المتعدد. سيقرأ البرنامج الشيطاني جهازي فأرة مختلفين. أي خيار لاحق سيعود إلى الجهاز الثاني، بينما سيتم استخدام أي خيار سابق للجهاز الأول. يؤدي هذا الخيار تلقائيًا إلى فرض خيار المكرر ('-R').

-o قائمة الخيارات الإضافية
يعمل هذا الخيار بشكل مشابه لخيار "mount" ذي العلامة "--o"; يتم استخدامه لتحديد قائمة "بالخيارات الإضافية" الخاصة بكل نوع من أنواع الفأرة. القائمة مفصولة بفواصل. تُستخدم الخيارات 'dtr' أو 'rts' أو 'both' بواسطة التهيئة التسلسلية لتبديل خطوط المودم، ومتوافقة مع إصدارات gpm السابقة؛ لاحظ مع ذلك أن استخدام -o dtr المرتبط بأنواع الفأرة غير العادية قد يؤدي الآن إلى حدوث خطأ. بالمناسبة، استخدم -o بعد -m وبعد -t.

-p يجبر المؤشر على أن يكون مرئيًا أثناء التحديد. هذا هو سلوك "selection-1.7"، ولكنه قد يكون مربكًا في بعض الأحيان. الإعداد الافتراضي هو عدم إظهار المؤشر، وهو ما قد يكون مربكًا أيضًا.

-r رقم
اضبط الاستجابة كنسبة مئوية من الحركة (من 1 إلى 100، الافتراضي 10). يمكن استخدام رقم أقل لإبطاء حركة المؤشر، ولا يمكن استخدامه لجعل الفأرة تتحرك بشكل أسرع، انظر إلى '-a'.

-R[اسم]
يجعل برنامج gpm يعمل كمكرر: أي بيانات للفأرة يتم استقبالها أثناء وجودها في وضع الرسومات سيتم إخراجها في ملف fifo "/dev/gpmdata" بالبروتوكول المسمى، المحدد كوسيطة اختيارية (بدون مسافة بينهما!). من حيث المبدأ، يمكنك استخدام نفس الأسماء الموجودة في خيار '-t'، على الرغم من أن التكرار في بعض البروتوكولات قد لا يتم تنفيذه لفترة من الوقت. بالإضافة إلى ذلك، يمكنك تحديد 'raw' كاسم، لتكرار بيانات الفأرة بايتًا بايتًا، دون أي ترجمة للبروتوكول. إذا تم حذف الاسم، فإنه افتراضيًا إلى 'msc'. باستخدام gpm في وضع المكرر، يمكنك تكوين خادم X لاستخدام fifo الخاص به كجهاز فأرة. هذا الخيار مفيد لمستخدمي bus-mouse لتجاوز قيود الفتح الأحادي. كما أنها طريقة سهلة لإدارة الفأرات ذات الوضع المزدوج الغبية التي تجبرك على إبقاء الزر الأوسط مضغوطًا أثناء تغيير وضع الفيديو. يتم فرض هذا الخيار بواسطة الخيار '-M'.

-s رقم

اضبط معدل أخذ العينات لجهاز الماوس.

-S الأوامر

قم بتمكين معالجة الأوامر الخاصة، ويمكنك تحديد الأوامر المخصصة اختياريًا كقائمة مفصولة بنقطتين. راجع النص أعلاه للحصول على وصف تفصيلي للأوامر الخاصة.

-t الاسم

اضبط نوع الماوس. استخدم -t help للحصول على قائمة بالأنواع المسموح بها. استخدم -t بعد تحديد جهاز الماوس باستخدام -m.

-v

اطبع معلومات الإصدار واخرج.

-2

فرض وجود زرين. هذا يعني أن الزر الأوسط، إن وجد، سيتم التعامل معه على أنه الزر الأيمن.

-3

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

التشغيل

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

تستخدم أجهزة الماوس ذات الزرين الزر الأيمن للصق النص.

النقر المزدوج والثلاثي يحددان كلمة كاملة وخط كامل. يوصى باستخدام خيار -p للحصول على أفضل استجابة مرئية.

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

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

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

الأخطاء

قد تواجه خدمة gpm مشاكل في التفاعل مع X: إذا كان الماوس الخاص بك عبارة عن جهاز فتح واحد (أي ماوس ناقل)، فيجب عليك إنهاء gpm قبل بدء X، أو استخدام الخيار -R (انظر أعلاه). لإنهاء gpm، ما عليك سوى استدعاء gpm -k. لا تنطبق هذه المشكلة على أجهزة الماوس التسلسلية.

لا يمكن تشغيل مثيلين من gpm على نفس النظام. إذا كان لديك ماوسان، استخدم الخيار -M (انظر أعلاه).


عندما يكون وحدة التحكم الحالية في وضع الرسوميات، ينتظر الأمر gpm حتى يعود إلى وضع النص (إلا إذا تم استخدام الخيار -R). وبالتالي، لن يستجيب للعملاء. على أي حال، من غير المحتمل أن تظهر العملاء التي تتطلب استخدام الماوس في وحدات التحكم المخفية.

العملاء الذين يتم شحنهم مع gpm ليسوا محدثين، وبالتالي هناك مخاطر أمنية محتملة عند استخدامهم.

المؤلفون

أندرو هايليت <_> (رمز الاختيار الأصلي) إيان زيمرمان <_> (المُحافظ القديم) أليساندرو روبيني <_> (المُحافظ القديم (لا يزال يساعد كثيرًا)) نيكو شوتيليوس <_> (المُحافظ الحالي)

العديد من المساهمين، لكل من رمز الاختيار و gpm.

المُحافظون

المُحافظ الحالي هو نيكو شوتيليوس. ولكن بدون مساعدة أليساندرو روبيني وقائمة البريد، سيكون من المستحيل عليّ الحفاظ على gpm. يمكن الوصول إلى قائمة البريد الخاصة بالتطوير على عنوان _. توجد المزيد من المعلومات حول القائمة في جزء ملف README الخاص بتوزيعة مصدر gpm.

الملفات

/var/run/gpm.pid: معرف العملية (PID) لـ `gpm` قيد التشغيل.
/dev/gpmctl: مقبس تحكم للعملاء.
/dev/gpmdata: ملف FIFO الذي تكتب إليه عملية التكرار (`-R`).

انظر أيضاً

gpm-types(7): وصف لأنواع المؤشرات المدعومة حاليًا بواسطة `gpm`.

ملف المعلومات الخاص بـ gpm، والذي يوفر معلومات أكثر اكتمالاً ويشرح كيفية كتابة عميل gpm.