এই এক্সটি কমান্ডগুলি কেন টার্মিনালে কাজ করে, তবে এক্সবাইন্ডকিগুলির সাথে আবদ্ধ না হলে?


18

এই xteকমান্ডটি, যখন আমি এটি টার্মিনালে চালিত করি, এক্সপো মোডটি ট্রিগার করে:

xte 'keydown Super_L' 'key S' 'keyup Super_L'

যাইহোক, আমি যখন এটি আমার .xbindkeysrc ফাইলে রাখি:

"xte 'keydown Super_L' 'key S' 'keyup Super_L'"
  b:11

আমি বোতামটি ক্লিক করলে কিছুই হয় না। নিম্নলিখিত বাঁধাইটি X অক্ষরটি আমার কনসোলে উপস্থিত হবে যখন আমি 11 টি বোতাম টিপছি:

"xte 'key X'"
  b:11

তাহলে এক্সপো বাঁধাই কেন কাজ করে না?


xbindkeys -n -vবোতাম 11 ক্লিক করার সময় এটির ভারবস আউটপুট :

বোতাম টিপুন!
e.xbutton.button = 11
e.xbutton.state = 16
"এক্সটি 'কীডাউন সুপার_এল' 'কী ডাব্লু' 'কীপ সুপার_এল'"
    মি: 0x0 + বি: 11 (মাউস)
উইন্ডো 2 বিবি এর জন্য স্ক্রীন 0 পেয়েছে
কাঁটাচামচ + এক্সিকিউট কল দিয়ে প্রোগ্রাম শুরু করুন
বাটন রিলিজ!
e.xbutton.button = 11
e.xbutton.state = 16

এবং কিছুই হয় না। xbindkeysকমান্ডটি কার্যকর করার সাথে সাথে এর কোনও সম্পর্ক আছে কি ? (কাঁটাচামচ + এক্সিকিউট কল)


দুই নম্বর চেষ্টা।

expo.sh:

#!/usr/bin/env bash
export DISPLAY=:0
xte 'keydown Super_L' 'key S' 'keyup Super_L'

কমান্ড লাইন থেকে এই স্ক্রিপ্টটি কার্যকর করা এক্সপোকে সক্রিয় করে। এটি এক্সবাইন্ডকিজে বাঁধাই:

"sh ~/expo.sh"
  b:11

মাউস বোতাম 11 ক্লিক করুন:

বোতাম টিপুন!
e.xbutton.button = 11
e.xbutton.state = 16
"sh ~ / expo.sh"
    মি: 0x0 + বি: 11 (মাউস)
উইন্ডো 2 বিবি এর জন্য স্ক্রীন 0 পেয়েছে
কাঁটাচামচ + এক্সিকিউট কল দিয়ে প্রোগ্রাম শুরু করুন

কিছুই ঘটেনি!


1
আপনি <সুপারার <<> টিপতে চেষ্টা করছেন? আমি জানি xbindkeys + xte কখনও কখনও পিক হতে পারে।
শেঠ

@ শেঠ: সঠিক। পিকনেসকে ঘিরে কাজ করার কোনও উপায়?
হুব্রো

1
ব্যবহার করে দেখুন 'keydown Super_L' 'keydown S' 'keyup S' 'keyup Super_L'
শেঠ

@ শেঠ: কোনও পার্থক্য করা হয়নি আমি ভয় করি :(
হুব্রো

আপনি পরিবর্তনগুলি করার পরে আপনি কি এক্সবাইন্ডকিগুলি আবার চালু করেছিলেন? কখনও কখনও এটি প্রয়োজন হয়। আপনার চূড়ান্ত লক্ষ্যটি আমি অনুমান করি যে কর্মক্ষেত্রের ওভারভিউটি খুলতে হবে?
শেঠ

উত্তর:


17

আর একটি সহজ সমাধান: এক্সবিন্দকি সংজ্ঞাতে "b: 11" ব্যবহারের পরিবর্তে "b: 11 + রিলিজ" ব্যবহার করুন। আপনি কমান্ডটি সরিয়ে দেওয়ার জন্য বোতামটি প্রকাশ না করা পর্যন্ত এটি অপেক্ষা করবে।

উদাহরণ:

"sh ~/expo.sh"
  b:11 + release

2
হুব্রোর এখানে ফিরে আসা উচিত এবং এটিকে সঠিক উত্তর হিসাবে চিহ্নিত করা উচিত ...
ডেভিড লজং ম্যাডিসন স্টেলার

7

এটি খুব অদ্ভুত। দেখা যাচ্ছে যে Super+Wকীস্ট্রোকটি সিমুলেট করার সময় যদি আমার মাউস বোতামটি এখনও টিপানো হয় (এখনও প্রকাশিত হয়নি) তবে কিছুই ঘটে না। আমি জানি না যে এর জন্য দোষারোপ করবেন (সম্ভবত দারুচিনি?)। xteকমান্ডটিতে একটি সংক্ষিপ্ত বিলম্ব যোগ করে যদিও আমি এর চারপাশে কাজ করেছি :

xte 'usleep 100000' 'keydown Super_L' 'key S' 'keyup Super_L'

সিমুলেট করার আগে এটি এখন 0.1 সেকেন্ড অপেক্ষা করে Super+S। যদি আমি টিপুন এবং মাউস বাটন ধরে আরো তুলনায় 0.1 সেকেন্ড, কিছুই ঘটবে।

এটি একটি কার্যত উত্তর। আমি অনেকটা সঠিক উত্তর পছন্দ করতাম।


হুব্রো, দয়া করে ব্যবহারকারী 215129 দ্বারা উচ্চতর রেট দেওয়া উত্তরটি দেখুন এবং এটি সঠিক হিসাবে চিহ্নিত করুন
ডেভিড লজং ম্যাডিসন স্টেলার

1
@ ডেভিডলজংম্যাডিসন নং এটি আমার প্রশ্নের উত্তরও নয়, কেবলমাত্র কাজের জন্য একটি পরামর্শ।
হুব্রো

1
আমি উত্তরটি বুঝতে পারলে অবাক হচ্ছি। সমস্যাটি হ'ল আপনি বোতামটি নিচে থাকা অবস্থায় কীগুলি প্রেরণের চেষ্টা করছেন। বোতাম রিলিজের জন্য অপেক্ষা করা মানে বোতামটি প্রকাশ না হওয়া পর্যন্ত এটি কীগুলি প্রেরণ করবে না, যার ফলে আপনার সমস্যার সমাধান হবে। কোনও কর্মপরিকল্প নয়, এটি সমস্যার ব্যাখ্যা এবং এটি সমাধান করার উপায়।
ডেভিড লাজং ম্যাডিসন স্টেলার

1
তাহলে তবুও বুঝতে পারছ না। ইস্যু আপনি কি টাইপ করতে যখন বোতাম ডাউন চেষ্টা করছেন, এবং যাই হোক না কেন আরম্ভ করা এক্সপো সুপার-এস, না বিটিএন-2 + + সুপার-এস জন্য খুঁজছেন হয়। আপনার ফিক্সটি একদম কার্যকর কারণ এটি বোতামটি উপরে রয়েছে এবং গৌরব দিয়ে সমস্যার সমাধান করে না এবং অনেক পরিস্থিতিতে কাজ করে না। সমাধানটি হ'ল (মাউসের ইভেন্টগুলির সাথে প্রায়শই দেখা যায়) কোনও কমান্ড ট্রিগার করার আগে বোতামের মুক্তির জন্য অপেক্ষা করা, এটি নিশ্চিত করে যে বোতামটি কীস্ট্রোকের সাথে মিশ্রিত হয়নি।
ডেভিড লাজং ম্যাডিসন স্টেলার

2
নিশ্চিত করতে পারেন যে ব্যবহারকারী 215129 উত্তর সত্যই সঠিক নয় এবং প্রশ্নের উত্তর দেয় না। এই মুহূর্তে এই সমস্যাটি সম্পর্কে আমার নিজস্ব তদন্ত করা এবং আমার ক্ষেত্রে এটি মুক্তি বা বিলম্বের জন্য পরিবর্তন করা কোনও বিকল্প নয় কারণ রিলিজের সাথে পৃথক ক্রিয়া সহ বোতাম টিপে চলাকালীন আমাকে ক্রিয়া করা দরকার। দেখুন: Askubuntu.com
প্রশ্নগুলি

2

আমিও একই সমস্যার মুখোমুখি হয়েছি।

"xte 'key b'"

কনসোলটিতে কাজ করছিল তবে xbindkeys পরামিতি ফাইলে নয়। আমি "xev" কমান্ডটি ব্যবহার করে তার কীস কোড দ্বারা বি পরিবর্তন করেছি:

"xte 'key Ox62'"

এটা আমার জন্য কাজ করেছে



1

Sxhkcd কীম্যাপার ব্যবহার করার সময় একই সমস্যা রয়েছে similar এটি দেখা যাচ্ছে যে আপনার আসল শর্টকাট কীগুলি এখনও টিপে রাখা সনাক্ত করা হয়েছে।

কিছু আধা-কাজের ক্ষেত্র রয়েছে:

  • মুক্তির ইভেন্টটির সন্ধান করুন
  • sleep 0.2আপনার কমান্ডের সামনে যোগ করুন
  • লিডার-কী দিয়ে শর্টকাট ব্যবহার করুন
  • আপনার এক্সটি সিকোয়েন্সের সামনে আপনার শর্টকাট সংশোধনকারীকে ছেড়ে দিন

তবে আপনি সেই সাথে রিয়েলটাইম ক্রিয়াগুলি পেতে পারবেন না =)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.