विम में लाइन लपेटने के लिए ऊर्ध्वाधर रेखा कैसे दिखाएं?


116

मुझे Vim (GVim नहीं) में स्तंभ 80 पर एक ऊर्ध्वाधर रेखा दिखाने का एक तरीका खोजने में दिलचस्पी है।

मैंने उपयोग किया है set wrap, लेकिन मैं केवल एक ऊर्ध्वाधर रेखा दिखाना चाहता हूं ताकि मैं खुद को लंबी रेखा लपेट सकूं।


जवाबों:


15

संपादित करें: विम के लिए = = 7.3 नीचे उत्तर देखें

दुर्भाग्य से विम के पास एक कॉलम के बाद एक ऊर्ध्वाधर रेखा प्रदर्शित करने के लिए कोई तंत्र नहीं है, जैसे आप चाहते हैं (इसके विपरीत, TextMate)। हालांकि, वैकल्पिक दृश्य संकेतक हैं जो आप यह दिखाने के लिए उपयोग कर सकते हैं कि एक रेखा बहुत लंबी है।

यहाँ मैं उपयोग कर रहा हूँ (आप इसे अपने में डाल सकते हैं .vimrc):

nnoremap <Leader>H :call<SID>LongLineHLToggle()<cr>
hi OverLength ctermbg=none cterm=none
match OverLength /\%>80v/
fun! s:LongLineHLToggle()
 if !exists('w:longlinehl')
  let w:longlinehl = matchadd('ErrorMsg', '.\%>80v', 0)
  echo "Long lines highlighted"
 else
  call matchdelete(w:longlinehl)
  unl w:longlinehl
  echo "Long lines unhighlighted"
 endif
endfunction

तो फिर आप <Leader>H80 से अधिक हाइलाइट किए जा रहे स्तंभों को टॉगल करने के लिए उपयोग कर सकते हैं।


नेता कुंजी की विम स्क्रिप्ट प्रतिनिधित्व। देखें दिखाएँ वर्तमान <नेता> कुंजी सेटिंग
रॉड

@ विमल, विम्सस्क्रिप्ट हार्ड विम्स खरगोश छेद के बारे में जानने के लिए एक अच्छा संसाधन है।
जाजबेनी

310

Vim 7.3 में नया:

'colorcolumn' स्क्रीन कॉलम का एक अल्पविराम से अलग की गई सूची है, जिसे ColorColumn के साथ हाइलाइट किया गया है। पाठ संरेखित करने के लिए उपयोगी। स्क्रीन को फिर से बनाने का काम धीमा कर देगा। स्क्रीन कॉलम एक पूर्ण संख्या, या '+' या '-' के साथ पूर्ववर्ती संख्या हो सकती है, जिसे 'टेक्स्टवर्क' से जोड़ा या घटाया जाता है।

डॉक्स से उदाहरण:

:set colorcolumn=+1        " highlight column after 'textwidth'
:set colorcolumn=+1,+2,+3  " highlight three columns after 'textwidth'
:highlight ColorColumn ctermbg=lightgrey guibg=lightgrey

आप पूर्ण संख्या का भी उपयोग कर सकते हैं:

:set colorcolumn=80

4
मुझे लगता है कि यह नोट करना अच्छा है कि रंग स्वचालित रूप से आपके हाइलाइट रंग द्वारा निर्धारित किया जाता है जब तक कि आप इसे उदाहरण के रूप में मैन्युअल रूप से सेट न करें।
एलेक्स हार्ट

ध्यान दें कि highlightसेटिंग को किसी भी कमांड के बाद सेट किया जाना चाहिए colorschemeक्योंकि यह आपके हाइलाइट रंग को ओवरराइड करेगा।
184

7
मैं उज्ज्वल, जला-तुम्हारा-दिमाग-लाल के साथ चला गया ... 'तुम्हें पता है ... लाइन की लंबाई
रॉन डाहलग्रेन

क्या आप एक ऐसे तरीके के बारे में जानते हैं, जिसमें कलर कलर के लिए दो अलग-अलग रंग हैं? मुझे दो पसंद हैं: कोड के लिए 80 वर्णों पर एक सादा, और पाठ / टिप्पणियों को प्रवाहित करने के लिए 72 वर्णों पर एक बहुत ही बेहोश।
ऐलिस

यह उल्लेख करना अच्छा होगा कि textwidthजब आप टाइप कर रहे हैं तो भी लपेटने का कारण बनता है।
चूजों


6

मैं उपयोग match ErrorMsg '\%>80v.\+'करता हूं जो लाल रंग के साथ 80 से अधिक वर्णों को उजागर करेगा।

मैंने अपने python.vim और ruby.vim में ~ / .vim / after / ftplugg / के तहत उस कमांड को रखा।


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