एक ऊर्ध्वाधर विभाजन खिड़की में खुलने वाली विम मदद


114

क्या एक क्षैतिज एक के बजाय ऊर्ध्वाधर विभाजन फलक में खोलने के लिए विम मदद प्राप्त करने का एक तरीका है?

जवाबों:


127

:vertical( vert) काम करता है:

:vert help

आप यह भी नियंत्रित कर सकते हैं कि क्या विंडो बाईं / ऊपर या दाईं ओर नीचे topleft(या to) और botright( bo) के साथ विभाजित होती है । उदाहरण के लिए, ऊर्ध्वाधर विभाजन की दाहिनी खिड़की में मदद खोलने के लिए:

:vert bo help

2
जब मैं दौड़ता हूं तो मैं उसका नक्शा कैसे बना सकता हूं: ____ यह हमेशा उस तरह से खुलता है?
टैल्बॉय

13
@Tallboy प्रयास करें cnoremap help vert help। यह एक कमांड मोड मैपिंग बनाता है ताकि जब आप helpकमांड मोड में टाइप करें तो आप देखेंगे कि इसका विस्तार होगा vert help
कीथ पिंसन

3
@Kazark: cnoremap help vert helpप्रत्येक अक्षर helpअपने आप प्रकट होता है, इसलिए शब्द helpकमांड लाइन पर दिखाई नहीं देता है। ठीक करने के लिए कोई रास्ता है? शायद कुछ और के अलावा cnoremap?
आईकोकॉस्टल

7
अधिक सुधार करने के लिए: यदि आप करने के लिए उपयोग कर सकते हैं cabbrev को फिर से परिभाषित h के रूप में vert h: :cabbrev h vert h। फिर हर बार जब आप टाइप :hकरेंगे, तो यह अपने आप विस्तारित हो जाएगा :vert h
आरोन शेन

@AaronShen: सबसे अच्छा समाधान (इस जवाब के साथ कॉम्बो में)!
गौत

38

हारोगन और शॉन के जवाबों के विकल्प के रूप में आप FileTypeइस तरह के ऑटोकॉमैंड के लिए घटना का उपयोग कर सकते हैं :

autocmd FileType help wincmd L

यद्यपि यह किसी भी मदद विंडो की स्थिति को बदलने के साथ-साथ मैन्युअल रूप से रखने के बाद खिड़की को स्थानांतरित करने की स्थिति में बदल देगा यदि आप जिस फ़ाइल को देख रहे हैं। लेकिन मेरा मानना ​​है कि यह किसी भी समाधान के साथ एक समस्या है।


2
सरल, और (अगर मैं सही तरीके से समझूं तो) दुष्प्रभाव नगण्य हैं। यह स्वीकृत उत्तर क्यों नहीं है !? और क्यों एक पूरी तरह से अप्रासंगिक उत्तर ( :vsplit) में बहुत सारे उतार-चढ़ाव हैं !?
आईकोकॉस्टल

1
मैंने उनकी सादगी के लिए यह और हरोगन के उत्तर दोनों को उकेरा। मैं आटोक्मड घटनाओं से बहुत परिचित नहीं हूं और मैं सोच रहा था कि help,*बस के बजाय इसका कारण क्या है help। इसके अलावा, मैंने देखा कि यह कमांड तब काम करता है जब मैं इसे अपने साथ जोड़ता हूं _vimrcऔर जीवीएम का एक नया उदाहरण शुरू करता हूं लेकिन तब नहीं जब मैं अपने वर्तमान जीवीएम सत्र में कमांड चलाता हूं (मुझे ऑटोकैम को मैन्युअल रूप :set ft=helpसे ट्रिगर करना होगा)।
एंथोनी जोगेगन

टिप्पणी के लिए धन्यवाद: *वास्तव में जरूरत नहीं थी। जहां तक ​​मैं वर्तमान सत्र बनाम नए सत्र के लिए समझ सकता हूं, नए सत्र में आपको vimrcप्रभावी होने के लिए किसी भी परिवर्तन के लिए अपने स्रोत को फिर से स्रोत करना होगा, इसके अलावा यदि फ़ाइल पहले से ही बफर में खुली है और :helpबस आपको एक अलग में ले जाती है फ़ाइल का हिस्सा, इसका autocmdकोई प्रभाव नहीं होगा
एडजोब जॉब

वहाँ भी पता करने के लिए कम रास्ता हो जाएगा: एक ही autocmd के साथ ज? वर्तमान में मैंने इसे एक अतिरिक्त पंक्ति में लिखा है:autocmd FileType help wincmd L autocmd FileType h wincmd L
danbruegge

1
यह आटोक्मड मदद फ़ाइलों की फ़िलाटाइप को देखकर समस्या को संबोधित करता है। सभी हेल्प फाइल्स फ़िलाटाइप helpकी हैं, helpइस प्रकार फ़िलाटाइप की सेटिंग पर यह ऑटोकैमड चलेगा। आप इसे :sef helpकिसी भी फाइल में कर सकते हैं, जबकि आपकी विंडो में एक विभाजन है, इस प्रकार @ danbruegge के दूसरे ऑटोकाम की जरूरत नहीं होगी
EdJoJob

20

किसी भी आदेश को हटाने या अजीब उपनामों को पेश करने की आवश्यकता नहीं है :Help। यहाँ समाधान है। बनाएँ ~/.vim/after/ftplugin/help.vimजहाँ आप विशेष रूप से किसी भी Vim सेटिंग्स को ओवरराइड कर सकते हैं helpऔर निम्न पंक्ति जोड़ सकते हैं:

autocmd BufWinEnter <buffer> wincmd L

यह हुक सुनिश्चित करेगा कि कोई भी helpफ़ाइल ऊर्ध्वाधर विभाजन में खोली गई है। इसके अलावा, शॉन के उत्तर में वर्णित इसका कोई साइड इफेक्ट नहीं है। व्यक्तिगत रूप से, यह मेरे लिए अब तक का सही समाधान है।

उम्मीद है की यह मदद करेगा। शुभकामनाएँ।


18

इस कमांड को यह करना चाहिए:

:vert help

10
मुझे यह नहीं मिलता। सभी :vsplitकरता है वर्तमान विंडो को लंबवत रूप से विभाजित करें। यह एक ऊर्ध्वाधर फलक में खुली मदद कैसे करता है?
डबलडाउन

7

इसे अपने में रखें .vimrc:

command -nargs=* -complete=help Help vertical belowright help <args>

अब आप :Helpकमांड के साथ एक ऊर्ध्वाधर मदद खोल सकते हैं (ध्यान दें कि पहला अक्षर अपरकेस है)


6

मदद फ़ाइलों को हमेशा दाईं ओर एक ऊर्ध्वाधर विभाजन में खोलने के लिए, इसे अपने vimrc में रखें:

augroup helpfiles
  au!
  au BufRead,BufEnter */doc/* wincmd L
augroup END

यह ऊर्ध्वाधर विभाजन में खुले मार्ग में "डॉक्टर" के साथ कुछ भी होने का दुष्प्रभाव होगा, लेकिन यह आपके लिए समस्या नहीं हो सकती है। यह मेरे लिए नहीं है। यदि आप इसके बजाय एक बाएं ऊर्ध्वाधर विभाजन में खोलते हैं, या उस मामले के लिए कुछ और, तो आप बदल सकते हैं wincmd L। आप इसके बारे में अधिक जान सकते हैं:he wincmd


1
विभाजन से पहले फ़ाइल प्रकार की जाँच करें,:au BufEnter */doc/* if &filetype=='help' | wincmd L | endif
rox

यह कमाल का है! autocmd FileType help wincmd Lकेवल एक समय मेरे लिए काम करता है, यह बहुत अच्छी तरह से काम करता है!
voldikss


3

यह मदद विंडो को एक बार ले जाता है । तो आप स्वतंत्र रूप से खिड़की के निर्माण के बाद इसे चारों ओर ले जा सकते हैं।

if has('autocmd')
  function! ILikeHelpToTheRight()
    if !exists('w:help_is_moved') || w:help_is_moved != "right"
      wincmd L
      let w:help_is_moved = "right"
    endif
  endfunction

  augroup HelpPages
    autocmd FileType help nested call ILikeHelpToTheRight()
  augroup END
endif

फ़ंक्शन, ILikeHelpToTheRight()केवल wincmd Lविंडो के अनुसार एक बार चलेगा (यह w:उपसर्ग के लिए क्या है)।

इसे तब कहा जाता है जब भी "मदद" फ़ाइल खोली जाती है। यह एडजोब के समाधान के दुष्प्रभाव नहीं हैं।


2

यदि वर्तमान टैब में एक से अधिक विंडो है, या दाईं ओर है, तो डायनामिक रूप से शीर्ष पर विंडो खोलें, यदि केवल एक विंडो है:

if winnr('$') > 2
    wincmd K
else
    wincmd L
endif

आपको इसे जगह देना होगा ftplugin/help.vimया इसका उपयोग करना होगा autocmd, जैसे:

augroup my_filetype_settings
autocmd!
autocmd FileType help if winnr('$') > 2 | wincmd K | else | wincmd L | endif
augroup END

1

यह @ m42 के उत्तर में जोड़ने के लिए है, लेकिन मेरे पास अभी तक 50 प्रतिनिधि नहीं हैं ताकि एसओ को टिप्पणियों में जोड़ा जा सके।

nnoremap <C-H> :vert bo help.Vimrc में जोड़ें

अब Ctrl-H को सामान्य मोड में दबाने से कमांड मोड में कूद जाएगा, दाईं ओर खड़ी विभाजन विंडो में मदद के लिए उपसर्ग। help·सर्वोत्तम परिणामों के लिए कॉन्फ़िगर लाइन के अंत में <- के बाद एक अनुगामी स्थान शामिल करें ।

यह मानचित्रण आप अभी भी उपयोग करने की अनुमति देता :help\ :hबिना शीघ्र ऑटो का विस्तार अपने पिछले मदद आदेश इतिहास के माध्यम से एक क्षैतिज विभाजन खिड़की या चक्र को खोलने के लिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.