मैं एक फ़ाइल में अंतिम न्यूलाइन के एमएसीएस डिस्प्ले को कैसे दबा सकता हूं?


11

विम के क्वार्क्स में से एक यह है कि यह फाइल के अंत में एक खाली लाइन नहीं दिखाता है अगर फाइल न्यूलाइन वर्ण के साथ समाप्त होती है। इस तरह, यदि फ़ाइल किसी नई पंक्ति के साथ समाप्त नहीं होती है, तो प्रदर्शन समान है, केवल [noeol]मॉडलिन में मार्कर के साथ ।

दूसरी ओर Emacs, अंतिम पंक्ति को प्रदर्शित करता है यदि फ़ाइल एक नई रेखा के साथ समाप्त होती है, और अन्यथा नहीं।

जबकि Emacs का व्यवहार मौलिक रूप से अधिक समझदार है, बेहतर या बदतर के लिए, मैंने पूर्व के लिए उपयोग किया है।

क्या अंतिम खाली लाइन के प्रदर्शन को दबाने का कोई तरीका है, जबकि अभी भी यह आवश्यक है कि फ़ाइल को नई पंक्तिबद्ध किया जाए?

नई लाइन व्यवहार को खाली करता है

स्क्रीनशॉट तीन विंडो दिखाता है (यदि बहुत छोटा है तो नए टैब में चित्र देखें):

  1. बाईं ओर बड़ी एमएसीएस विंडो hexl-mode, आपको दिखाती है कि फ़ाइल के अंत में एक नई रेखा है (0 ए, जहां कर्सर तैनात है)।

  2. खाली तीसरी पंक्ति पर कर्सर के साथ, ऊपर दाईं ओर विंडो खाली करता है।

  3. अंतिम पाठ पंक्ति पर कर्सर के साथ दाईं ओर नीचे की ओर खिड़की। कर्सर इस बिंदु से नीचे नहीं जा सकता है, भले ही फ़ाइल एक नई रेखा के साथ समाप्त होती है ( [noeol]विम स्थिति रेखा पर कोई मार्कर नहीं है)।


न्यूलाइन को कैसे प्रदर्शित किया जाता है? क्या यह प्रदर्शित करता है क्योंकि आपके पास कुछ मामूली मोड सक्षम है? अपने सेटअप से एक स्निपेट डालना उपयोगी होगा जो पिछले नईलाइन्स को प्रदर्शित करता है। उस का स्क्रीनशॉट भी उपयोगी होगा।
कौशल मोदी

2
"प्रदर्शन" से, मेरा मतलब यह नहीं है कि न्यूलाइन का एक दृश्य प्रतिनिधित्व है। मेरा सीधा सा मतलब है कि मैं अपने कर्सर को उस रेखा पर ले जा सकता हूं।
sykora

पुन: उत्पन्न करने में असमर्थ: imgur.com/IAoV7p9 के साथ समान व्यवहार emacs -Q, यह आपकी इनिट फ़ाइल में कुछ होना चाहिए।
टी। वेरॉन

या प्रतीक्षा करें ... आपका मतलब है कि आप उस रेखा पर नहीं जा सकते, भले ही वह रेखा मौजूद हो? मैं दूसरा @kaushalmodi, vim और emacs का स्क्रीनशॉट उपयोगी होगा।
टी। वेरॉन

3
@sykora कृपया न्यूनतम स्क्रीनशॉट का उपयोग करने का प्रयास करें । वहाँ एक है बहुत , यह बहुत की तुलना में यह करने की जरूरत है बड़ा बनाने जो थंबनेल लगभग बेकार renders, यह बहुत छोटा है, क्योंकि देखने के लिए क्या हो रहा है स्क्रीनशॉट में अतिरिक्त और अनावश्यक रिक्त स्थान की,। स्क्रीनशॉट लेते समय, कृपया अपनी सामग्री फिट करने के लिए विंडोज़ का आकार बदलें।
चंद्र

जवाबों:


1

मुझे इसे लागू करने के लिए एक भयानक सुझाव देना चाहिए :

(defun make-eof-intangible ()
  (interactive)
  (add-hook 'post-command-hook (lambda ()
                                 (when (and (equal (point) (point-max))
                                            (looking-back "\n"))
                                   (backward-char))) t t))

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


1

ये शायद वैसा नहीं है जैसा आप चाहते हैं, लेकिन उपयोगी हो सकता है।

  • मैं linum-modeअपने सभी बफ़र्स ( (global-linum-mode t)आपकी इनिट फ़ाइल में सेट ) में मामूली मोड का उपयोग कर रहा हूं । यह केवल उन रेखाओं के लिए लाइन नंबर दिखाता है जिनके अंत में एक नया रेखा वर्ण होता है।

  • एक और चीज़ जो आप पसंद कर सकते हैं वह है whitespace-mode, डिफ़ॉल्ट रूप से यह $खाली लाइनों पर ग्रे संकेत दिखाता है , इस प्रकार आपको यह देखने की अनुमति देता है कि कौन सी लाइनें खाली हैं। यहाँ Emacs Wiki पृष्ठ देखें ।

  • इसी तरह से, आपको यह दिखाने के indicate-empty-linesलिए सेटिंग की tजाएगी कि अंतिम पंक्ति कहां है ( यहां फ्रिंज संकेतक के लिए मैनुअल देखें )।

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