क्या पेड़ के रूप में मुड़े हुए हिस्सों को प्रदर्शित करने का कोई तरीका है?


10

दस्तावेज़ के कुछ हिस्सों को छिपाने के लिए तह उपयोगी है। एक पेड़ के रूप में तह संरचना का एक दृश्य प्रतिनिधित्व एक नज़र में दस्तावेज़ संरचना को समझने के लिए उपयोगी होगा।

जवाबों:


11

आप :set foldcolumn=<number>एक- <number>कॉलम का प्रदर्शन करने के लिए उपयोग कर सकते हैं जो गुना स्तरों की कल्पना करने की कोशिश करता है। यह कुछ इस तरह दिखाई देगा, डिफ़ॉल्ट रूप से (एक मार्कर गुना विधि के साथ, उपयोग {{{और }}}):

-    {{{ Top Level Fold
|-   {{{ Nested Fold
||-  {{{ Deepest Fold
|||  }}}
||   }}}
|-   {{{ Another Nested Fold
||   }}}
|    }}}

हालांकि, यह बहुत अधिक क्षैतिज अचल संपत्ति की खपत करता है। एक अन्य विधि एक कस्टम foldtext()कार्यान्वयन लिखना होगा जो foldlevel()तदनुसार गुना स्तर और स्वरूपों को पढ़ता है । यह कम क्षैतिज स्थान को बर्बाद करेगा, लेकिन वास्तव में पेड़ को देखने के लिए उतना उपयोगी नहीं होगा क्योंकि आप एक ढह गई तह के नीचे के तह को नहीं देख सकते हैं। उदाहरण के लिए, आपका .vimrc:

set foldtext=CustomFoldText()
function! CustomFoldText()
  let line = getline(v:foldstart) . "..."
  return repeat("--| ", v:foldlevel) . line
endfunction

ऐसे प्लगइन्स हैं जो फोल्ड पदानुक्रम के ऑन-डिमांड विज़ुअलाइज़ेशन प्रदान करते हैं, जैसे कि folddigest.vim , साथ ही। वे अनिवार्य रूप से, हर पंक्ति के गुना स्तर को पार्स करके, एक उपयुक्त डेटा संरचना का निर्माण करते हैं, और एक नए बफर को डेटा संरचना के एक दृश्य को डंप करते हैं। आप शायद अपनी जरूरतों के लिए तकनीक को अपना सकते हैं।

आप ऐसे प्लगइन्स को भी देखना चाहते हैं जो "इंडेंट गाइड" प्रदान करते हैं, जैसे कि यह । मैंने व्यक्तिगत रूप से उनका उपयोग कभी नहीं किया है, और मैंने सुना है कि वे कुछ लोगों के प्रदर्शन के मुद्दों का कारण बनते हैं क्योंकि वे आम तौर पर बहुत सारे कस्टम मैच हाइलाइट के माध्यम से उत्पन्न matchadd()करते हैं, लेकिन आपका लाभ भिन्न हो सकता है।

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