विम में छिपे हुए वर्ण कैसे प्रदर्शित करें?


54

मैं केवल टैब या रिक्त स्थान जैसे छिपे हुए वर्णों को प्रदर्शित करने के लिए विम को कैसे कॉन्फ़िगर कर सकता हूं जबकि उन वर्णों को टाइप किया गया है? मैं नहीं चाहता कि टैब और / या स्पेस को विशेष वर्ण जैसे ">" या "_" से बदला जाए जब फ़ाइल लिखी गई हो।


1
क्या आपको निश्चित रूप से दिखाने के लिए रिक्त स्थान की आवश्यकता है? विशिष्ट समाधान का उपयोग करना है :set list। कि रिक्त स्थान को छोड़कर सब कुछ मिल सकता है ।
क्रि हार्पर

जवाबों:


64

आप कमांड का उपयोग कर सकते हैं

:set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<
:set list

उन सभी पात्रों को दिखाने के लिए जो व्हाट्सएप नहीं हैं। तो रिक्त स्थान केवल एक चीज है जो दिखाई नहीं देता है।

यदि आपको पूरी तरह से रिक्त स्थान की आवश्यकता है, तो आपको कुछ अच्छा प्रयास करने की आवश्यकता होगी। कुछ इस तरह

:%s/ /█/g

एक ब्लॉक चरित्र के साथ सभी रिक्त स्थान को बदल देगा। फिर आपको इसे लिखने से पहले पूर्ववत करना होगा। आप अपने लिखने की आज्ञा को फिर से बना सकते हैं

cmap :w :%s/█/ /g<CR>:w

केवल एक सलाह। मैंने हालांकि कोशिश नहीं की है।


सहायता के लिए धन्यवाद; आपका सुझाव काफी अच्छी तरह से काम करता है। हालांकि, मैंने देखा है कि कई बार जब मैं कुछ फाइलें खोलता हूं तो मुझे "> ---" (टैब इंगित करता है) दिखाई देता है। क्या इसे बनाने का कोई तरीका है ताकि टैब वर्ण केवल टाइपिंग के दौरान दिखाई दें ?
dan0

@ dan0 आपका मतलब केवल इन्सर्ट मोड के दौरान है? मुझे नहीं पता। मुझे इसमें संदेह है। आप कुछ मैपिंग फ़ंक्शंस कर सकते हैं ताकि जब आप इन्सर्ट मोड में जाएं, तो यह पहले :set listcharsकमांड को कॉल करता है और इसे कुछ भी सेट नहीं करता है, फिर इन्सर्ट मोड को छोड़ने पर इसे फिर से कॉल करता है। लेकिन मुझे ऐसा करने के लिए नक्शे के बारे में पर्याप्त जानकारी नहीं है।
क्रिश हार्पर

@ जोनाथनकोमर "सेट नोलिस्ट"
व्लादिस्लाव डोवलगेस

1
space:␣मेरे लिए अच्छी तरह से काम करता है का उपयोग करना : :set listchars=eol:$,tab:>-,trail:~,space:␣
loxaxs

15

विम के अधिक हाल के संस्करण भी रिक्त स्थान दिखा सकते हैं। (Vim 7.4.1689 पर पुष्टि की गई)।

:set list
:set listchars=tab:→\ ,space:·,nbsp:␣,trail:•,eol:¶,precedes:«,extends:»

4

मेरे मामले में मुझे nbsp से लड़ना पड़ा ,

:set listchars=nbsp:☠,tab:▸␣
:set list

आप ☠ के बजाय ␣ का भी उपयोग कर सकते हैं

यहाँ एक उदाहरण है जहाँ उपरोक्त vim config "अदृश्य अजीब" स्थानों को उजागर करता है और इसके अतिरिक्त यह टैब (लाल रंग को हाइलाइट करता है क्योंकि मैं अनुगामी-व्हाट्सएप vim प्लगइन का उपयोग कर रहा हूँ)

यहाँ

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