سؤال

وأنا أكتب تطبيق وحدة مما يجعل استخدام مفتاح F1 (للمساعدة). لسوء الحظ، في حين كونسولي (من KDE) لا تستخدم هذا المفتاح، غنوم محطة يفعل، لذلك يصبح مفتاح F1 قابلة للوصول إلى التطبيق الخاص بي. أنا لا أعتقد أن هناك وسيلة لاكتشاف ما إذا كان يتم تعيين مفتاح F1 بالفعل في الجانب اجهة المستخدم الرسومية من الأشياء (غنوم الطرفية)، ولكن إذا كان هناك، فإن الجواب على هذا يلغي هذا السؤال. :)

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

وأنا على أمل لطريقة يمكن الاعتماد عليها للقيام بذلك، ولكن يمكنني أن تسوية ل "أفضل تخمين" النهج مثل grepping متغيرات البيئة عن القرائن التي يمكن أن اسمحوا لي أن نفترض معقول أن غنوم محطة هي محطة التفاف.

ومعلومات اضافية: مفاتيح الأخرى أيضا "مسروقة" من قبل محطة غنوم. أنوي عرضه نوعا من رسالة إعلامية حول مفاتيح بديلة للمستخدمين غنوم.

هل كانت مفيدة؟

المحلول

وGoogleage كشفت أنني قد تكون قادرة على الاعتماد على محطة غنوم تعيين متغير البيئة COLORTERM إلى '، جنوم الطرفية ".

نصائح أخرى

لzsh:

[[ "$COLORTERM" == "gnome-terminal" ]] || [[ ${$(ps -p $(ps -p $$ -o ppid=) -o cmd=):t} == gnome-terminal* ]]

وجنوم محطة تستخدم لضبط $COLORTERM، ولكن هذا قد انخفض (في 3.12.0-67-g1d5c1b6).

وعادة استخدام termcap معلومات الملقب terminfo. هذا يقول لك أي نوع من محطة كنت تعمل مع وأيضا ما هي مفاتيح.

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

وهذا التحقيق من وظيفة رموز الهروب الرئيسية قد يكون اهتمام لكم من دون شرح الواقع كيف، إذا كان من الممكن حتى أن طرفية جنوم يمكن إجراؤها على إنتاج صحافة F1. أفكر في محطة ماك OS X اعتدت منذ فترة طويلة إلى الوراء، اشتعلت PAGEUP وبين pagedown لشريط التمرير، في حين مرت الأوامر PAGEUP والأوامر بين pagedown لهم من خلال المعبر.

وهناك طريقة الخام بدلا من ذلك، إذا كنت أشعر بأن تفويض ذلك إلى شل - على خلاف ذلك، في C أو C ++، سيكون لديك لويد من خلال بك / إجراءات، إذا كان لديك واحد:

ps x | grep `ps o ppid,fname | grep bash | grep -v grep | head -1 | awk '{print $1}'` | grep 'gnome-terminal' | wc -l

إذا يمتد من البرنامج الخاص بك، من خلال نظام () على سبيل المثال، كنت قد مع ل"البقرى" اسم البرنامج الخاص بك بدلا من "باش"

وأنا أعلم، وانها بالتأكيد "الإختراق مثل القراصنة".)

وFWIW، هذا هو الإعداد في جنوم المعبر. يمكن للمستخدمين الانتقال إلى تحرير -> اختصارات لوحة المفاتيح في القوائم جنوم محطة وتغيير أو حذف رابط المفتاح F1

وأنا ببساطة تحقق على المدى $ لمحطة المحاكي من خياري ثم قم بإضافة اسم مستعار لوضع البيض محطة جديدة في الدليل الحالي.

if [[ $TERM == 'xterm' ]] ; then
  alias nw='gnome-terminal --working-directory=$PWD'
fi
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top