Shift कुंजी के साथ क्षैतिज स्क्रॉलिंग का अनुकरण करें


13

जब मैं अपने (ऊर्ध्वाधर) स्क्रॉल व्हील और दबाने का उपयोग करता हूं तो मैं क्षैतिज स्क्रॉलिंग का अनुकरण करना चाहता हूं Shift

कुछ अनुप्रयोगों में (Chrome {e, ium}) यह पहले से ही काम करता है, लेकिन मैं एक्स अनुप्रयोगों के लिए एक सामान्य समाधान ढूंढ रहा हूं।

अब तक मुझे जो निकटतम मिला वह xbindkeys+ है xdotool

# ~/.xbindkeysrc
"xdotool click 6"
  shift + b:4

"xdotool click 7"
  shift + b:5

समस्या यह है कि xbindkeysकुछ घटनाओं को याद आती है, और कभी-कभी एक ऊर्ध्वाधर स्क्रॉल "के माध्यम से" हो जाता है। यह बहुत कष्टप्रद है। ऐसा लग रहा है कि xbindkeysकिसी तरह के मतदान का उपयोग कर रहा है?

इसके अलावा, मैं प्रति सेकंड सैकड़ों शेल कमांडों को स्पॉइंग करना पसंद नहीं करता।

मुझे एक छोटी स्क्रीन मिली और क्षैतिज रूप से बहुत स्क्रॉल करना पड़ा।

मैं सामान्य क्षैतिज स्क्रॉलिंग कैसे प्राप्त कर सकता हूं?

अपडेट करें:

एक और तरीका है कि ज्यादातर पड़ता कि मैं के साथ चाहते हैं नहीं है xbindkeysऔर xmodmap

"xmodmap -e 'pointer = 1 2 3 6 7 4 5 8 9 10'"
  c:50
"xmodmap -e 'pointer = default'"
  release + shift + c:50

जब Shiftआयोजित किया जाता है, तो पॉइंटर बटन 4 और 5 को 6 पर मैप किया जाता है और 7. (बटन 4/5 फ्रंट वर्टिकल स्क्रॉलिंग और क्षैतिज स्क्रॉलिंग के लिए 6/7) होते हैं। c:50बाईं Shiftकुंजी है। मुख्य रिलीज़ पर डिफ़ॉल्ट पॉइंटर मैपिंग को पुनर्स्थापित किया जाता है।

यह "बहुत सारी घटनाओं" समस्या को अच्छी तरह से हल करता है। हालाँकि, Shift कुंजी सामान्य संशोधक की तरह काम नहीं करती है। मैंने इस तरह से Shiftप्रेस / रिलीज की घटनाओं को फिर से जारी करने की कोशिश की xdotool:

"xmodmap -e 'pointer = 1 2 3 6 7 4 5 8 9 10';  xdotool keydown Shift_L"
  c:50
"xmodmap -e 'pointer = default';  xdotool keyup Shift_L"
  release + shift + c:50

के अनुसार घटनाओं के माध्यम से मिलता है, लेकिन मुझे लगता है कि यह किसी भी अधिक एक आपरिवर्तक के रूप में मान्यता नहीं है। उदाहरण के लिए, दबाने + एक अपरकेस का उत्पादन नहीं होगा ।xevShiftShiftAA


1
आप कई कार्यक्रमों के लिए Ctrl + Arrows के साथ क्षैतिज स्क्रॉलिंग भी कर सकते हैं।
terdon

1
धन्यवाद, लेकिन यह फ़ायरफ़ॉक्स में मेरे लिए काम नहीं करता है। मैं एक "सामान्य" समाधान ढूंढ रहा हूं जो हर जगह काम करता है।
पॉल शिस्का

क्या कुछ को रूट के रूप में चलाना एक समस्या होगी, जैसे कि sudo का उपयोग करना?
13:15

यह सूडो के लिए इष्टतम नहीं है। मेरा मानना ​​है कि sudo-ing हर टाइम शिफ्ट को दबाया जाता है? क्या आप विस्तृत कर सकते हैं कि आपके मन में क्या है?
पॉल शाइस्का

यह व्यर्थ हो सकता है, लेकिन एक बार यह मेरे लिए काम कर गया ~/.xbindkeysrc.scm। कुछ बिंदु पर यह विफल रहा, लेकिन यह आपके सिस्टम पर काम कर सकता है।
स्पार्कहॉक

जवाबों:


2

मुझे मेरे लिए एक स्वीकार्य समाधान मिला।

Shiftजब तक इसे दबाया जाता है, तब तक मुझे पहिया संशोधक को घुमाने के लिए मेरे संशोधक के रूप में उपयोग करने या किसी अन्य कुंजी का रास्ता नहीं मिला ।

मैं अब .xbindkeysrcएक टॉगल बटन के साथ एक सरल का उपयोग कर रहा हूं :

"~/toggle.sh"
  alt + x

टॉगल। S स्क्रिप्ट इस तरह दिखता है:

#!/bin/sh
on()
{
  xmodmap -e 'pointer = 1 2 3 6 7 4 5 8 9 10'
}

off()
{
  xmodmap -e 'pointer = default'
}

if xmodmap -pp | grep -q '4.*6'; then
  off
else
  on
fi

यह मुझे व्यवहार को टॉगल करने की अनुमति देता है। जब मैं Alt+ दबाता हूं X, तो मेरा माउस व्हील धुरी घुमाया जाता है, और जब मैं इसे फिर से दबाता हूं, तो यह डिफ़ॉल्ट पर सेट होता है।

इसके लिए अभी से काम करना चाहिए।

यदि कोई इसे Shift"संशोधक" के रूप में करने का तरीका ढूंढता है (माउस अक्ष को तब तक घुमाएं जब तक कि इसे दबाया जाता है), कृपया मुझे बताएं।

संपादित करें: जैसा कि Alt+ xआमतौर पर इस्तेमाल किया जाने वाला हॉटकी है, मैंने इसे इसमें बदल दिया:

(xbindkey '(control "b:3") "toggle-wheel.sh")

(मैं गिली विन्यास में बदल गया इसलिए उपरोक्त नाम वाली फ़ाइल में होना चाहिए .xbindkeysrc.scm)

यह स्क्रॉल व्हील दिशा Ctrl+ सही माउस बटन के साथ टॉगल करेगा ।


0

आप btnx का उपयोग कर सकते हैं और यह gui config टूल है

हाल ही में उबंटू पैकेज और यहां

जब आप btnx-config बस मैप "स्क्रॉल अप" के साथ अपने माउस पर बटन का पता लगाते हैं, तो शिफ्ट बटन संशोधक के साथ जो भी बटन आप चाहें दबा सकते हैं।


धन्यवाद, मैं एक समस्या हो रही है, हालांकि यह फेडोरा पर बनाने के लिए हो रही है।
पॉल Schyska

1
मुझे अब btnx के लिए एक rpm पैकेज मिला। मुझे एक मॉडिफायर को स्रोत इवेंट (यानी Shift + WheelUp) के रूप में मैप करने का कोई तरीका नहीं मिलता है। मैं केवल WheelUp से Shift + कुछ अन्य कुंजी पर मैप कर सकता हूं । क्या मैं कुछ भूल रहा हूँ? मैंने पहली बार "शिफ्ट + व्हीलअप" का पता लगाने की भी कोशिश की, लेकिन उसने कहा "बटन पहले से मैप किया हुआ है"। दोनों मामलों के लिए रॉकोड 0x02010008 था (Shift दबाया गया और दबाया नहीं गया)। मुझे नहीं लगता कि btnx सभी (माउस + कीबोर्ड) पर कई इनपुट डिवाइस को संभाल सकता है
पॉल शिस्का

0

जैसा कि यहां संकेत दिया गया है , मैंने इमव्हील स्थापित किया , फिर ~/.imwheelrcनिम्नलिखित सामग्री के साथ बनाया गया।

".*"
Shift_L, Up, Left
Shift_L, Down, Right

मैं तब imwheel -b 45टर्मिनल में भाग गया। मैंने परीक्षण किया, और मैंने उच्च स्क्रॉलिंग और xbindkeys से जुड़ी विकर्ण समस्याओं पर ध्यान नहीं दिया है।

एनबी केवल ऊपर और नीचे स्क्रॉल करने के लिए -b 45प्रतिबंधित imwheelकरता है, इसे xbindkeysअंगूठे के बटन के लिए अवरुद्ध (जैसे) बाइंडिंग से रोकता है ।

समस्या

हालाँकि, इससे जुड़ी कई समस्याएं हैं।

  • यह असंगत है। मैं इसे फ़ायरफ़ॉक्स और Gwenview बॉक्स के बाहर काम करने के लिए प्राप्त कर सकता था, लेकिन Inkscape और GIMP ने काम नहीं किया। मैं Inkscape / GIMP से मेल नहीं खाने के लिए विंडो मिलान का उपयोग कर सकता था, लेकिन इसे सार्वभौमिक रूप से काम करने का कोई तरीका होना चाहिए।
  • इससे भी बदतर, यह कुछ अन्य डिफ़ॉल्ट घटनाओं को रोकता है, जैसे Ctrl+ Scroll wheel, जो आमतौर पर ज़ूम करने के लिए उपयोग किया जाता है। मैंने चीजों को Control_L, Up, Control_L|Upअंदर डालने की कोशिश की ~/.imwheelrc, लेकिन यह काम नहीं किया।
  • imwheelसक्रिय विंडो में क्षैतिज स्क्रॉल व्हील ईवेंट भेजता है, न कि माउस कर्सर के नीचे विंडो। यह स्क्रॉल व्हील के डिफ़ॉल्ट व्यवहार के लिए काउंटर है। इससे यह भी पता चलता है कि Ctrlऊपर दिए गए बिंदु में वर्कअराउंड सब-इष्टतम भी होगा।
  • imwheelअब विकास में प्रतीत नहीं होता है। यह पिछले 10 वर्षों से (2004 से) पूर्व रिलीज़ संस्करण पर अटका हुआ है।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.