Tmux में कॉपी मोड में पेज स्क्रॉल करने के लिए बाइंड कीज़


6

मैं Emacs कुंजियों (जैसे मैप करने के लिए सक्षम होने के लिए करना चाहते हैं C-v/ M-vके बजाय tmux डिफ़ॉल्ट में स्क्रॉल के लिए) PgUp/ PgDown, संभव है? इस समय मैनुअल से नहीं देखा जा सकता है (यदि इसके होने पर क्षमा याचना की जाती है, तो ऐसा लगता है कि इस तरह की प्राकृतिक चीज़ों को बाकी एमएसीएस जैसे नेविगेशन कुंजी बाइंडिंग tmux का उपयोग करता है)


की जाँच करें इस
इमानुएल बर्ग

जवाबों:


10

डिफ़ॉल्ट रूप से, emacs-copyकुंजी बाइंडिंग टेबल में Cv, Page Down ( NPage), और Space बाध्य है और page-downसाथ ही Mv और Page Up ( PPage) दोनों के लिए बाध्य है page-up

आप अपने बाइंडिंग की जाँच कर सकते हैं tmux list-keys -t emacs-copy | grep -i page

यदि ये बाइंडिंग गायब हैं, तो आप उन्हें हाथ से पुनर्स्थापित कर सकते हैं (जैसे आपके ~/.tmux.conf):

bind-key -t emacs-copy C-v page-down
bind-key -t emacs-copy M-v page-up

लेकिन चूंकि ये डिफ़ॉल्ट हैं, इसलिए आपको नीचे ट्रैक करने की आवश्यकता होगी जहां उन्हें परिवर्तित किया जा रहा है / हटाया जा रहा है इससे पहले कि आपको पता चल जाएगा कि उन्हें प्रभावी बनाने के लिए उपरोक्त कमांड कहां डालनी है (उन्हें बाइंडिंग को संशोधित करने के बाद जो कुछ भी करना है, उन्हें आने की आवश्यकता होगी)।

क्या आप सुनिश्चित हैं कि आपका mode-keysविकल्प सेट है emacs? यह करने के लिए डिफ़ॉल्ट करता है emacs, लेकिन tmux इसे करने के लिए सेट हो जाएगा vi(के साथ status-keys) आप दृश्य वातावरण चर सेट है और इसके महत्व है अगर viउस में , या आप दृश्य सेट है, तो नहीं करते हैं लेकिन संपादक सेट की क्या ज़रूरत है और इसके मूल्य है viउस में ।

आप अपने वैश्विक mode-keysमूल्य की जांच कर सकते हैं tmux show-options -g -w | grep mode-keys। आपके पास एक प्रति-विंडो mode-keysमान भी हो सकता है ( -gइसके मान को जांचने के लिए छोड़ें ; आप -tदूसरी विंडो को लक्षित करने के लिए उपयोग कर सकते हैं यदि आप विंडो में ही कमांड नहीं चला सकते हैं)।

यदि आप "ऑटो-डिटेक्शन" को ओवरराइड करना चाहते हैं और हमेशा emacsबाइंडिंग टेबल का उपयोग करते हैं , तो आप इन लाइनों को अपने में डाल सकते हैं ~/.tmux.conf:

set-option -g status-keys emacs
set-option -gw mode-keys emacs

Is "इसमें viहै" परीक्षण वास्तव में अधिक है जैसे " viअंतिम के बाद होता है /(या कहीं भी अगर /मूल्य में नहीं होता है)"। इसका मतलब यह है कि जैसे मान (के बावजूद ) में /opt/vital/bin/emacsगिना नहीं जाएगा ।vivivital


ऐसा लगता है कि आप ऐसा करना चाहते हैं bind-key M-v copy-mode -u:। फिर आप copy-modeएक पृष्ठ को अंत से दर्ज करने के लिए दो कीस्ट्रोक्स («उपसर्ग» «एमवी») टाइप कर सकते हैं । के लिए (गैर तालिका) बाइंडिंग की जाँच करें PPage: tmux list-keys | grep -F pageNPageहालांकि इसके लिए कोई बाध्यकारी नहीं है (यह इतिहास में "नीचे" जाने के लिए कोई मतलब नहीं है क्योंकि आप हमेशा इतिहास के निचले स्तर पर हैं जब तक आप पहले से ही नहीं हैं copy-mode, उसी तरह सीवी के लिए कोई समझदार बंधन नहीं हो सकता है
क्रिस जॉन्सन

इसने काम कर दिया! फिर से बहुत बहुत धन्यवाद! यकीन है कि पूरी तरह से "नीचे" बाइंडिंग नहीं करने के लिए समझ में आता है
एवगेनी डोल्जेन्को
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.