एक पाठ टर्मिनल पर Emacs में इटालिक्स (rxvt-unicode)


15

मैं एक urxvt में चल रहे Emacs का उपयोग कर रहा हूं, और मैं Emacs में काम करने के लिए इटैलिक्स प्राप्त नहीं कर सकता, हालांकि टर्मिनल इसका समर्थन करता है।

यहाँ मेरा वर्तमान सेटअप है:

  • मैंने सेट नहीं किया है $TERM, इसलिए यह डिफ़ॉल्ट है rxvt-unicode-256color
  • टर्मिनल फ़ॉन्ट के रूप में मेरी ~/.Xdefaultsपरिभाषा URxvt.font: xft:Inconsolata:size=15
  • रनिंग echo '\e[3mitalics\e[m'खोल वास्तव में पैदावार में italicsतो टर्मिनल में इटैलिक, करते हैं , काम मूल रूप से।

जब "इटैलिक" चेहरा कस्टमाइज़ करते समय, मैं चयन करें कि आपका कोई फर्क नहीं पड़ता italic, oblique, normal, या romanके लिए मूल्य के रूप में Slant, विशेषता है और न ही यह होता है अगर मैं निर्धारित नहीं करते Slantसब पर विशेषता। मैं भी स्पष्ट रूप से परिभाषित करने के साथ संयोजन में इस की कोशिश की URxvt.italicFontमेरी में ~/.Xdefaultsहै, लेकिन कोई लाभ नहीं हुआ।

बोल्ड ठीक काम करता है, इटैलिक बिल्कुल काम नहीं करता है। कोई विचार?


मुझे एहसास नहीं था कि एक टर्मिनल में इटैलिक होना भी दूर से संभव था। उसके लिए धन्यवाद।
wufulk

जवाबों:


10

संक्षेप में: आप Emacs के मौजूदा संस्करण (23.2 के साथ जांचा गया) के साथ नहीं जा सकते, लेकिन संभव वर्कअराउंड के लिए नीचे देखें।

लम्बी कहानी: इटैलिक्स के लिए समर्थन को टर्मोफ़ डेटाबेस में sitm( इटालिक्स दर्ज करें) और ritm(बाहर निकलें इटैलिक) क्षमताओं के रूप में एन्कोड किया गया है (इसे कॉल भी कहा जाता है ZHऔर ZRअनुकूलता संगतता के लिए); आप देख सकते हैं कि आपका टर्मिनल उनके माध्यम से समर्थन करता है:

infocmp $TERM | egrep '(sitm|ritm)'

यदि वे मौजूद नहीं हैं, तो आपका rxvt-unicode-256colorटर्मिनल विवरण ncurses लाइब्रेरी को टर्मिनल की इटैलिक क्षमताओं के बारे में जानकारी प्रदान नहीं करता है और आप उन्हें जोड़ना चाह सकते हैं, अन्यथा कोई TTY एप्लिकेशन इटैलिक्स का उपयोग नहीं कर सकता है।

हालाँकि, फ़ंक्शन turn_on_face(Emacs स्रोतों में, src/term.cलाइन 1919--2012 पर फ़ाइल ), जो टर्मिनल डिस्प्ले का प्रबंधन करता है, इटैलिक्स के लिए समर्थन प्रदान नहीं करता है: यह एक चेहरे के बोल्ड / मंद / निमिष / रेखांकित करने वाले गुणों की जांच करता है। वास्तव में, इसमें कोई "इटैलिक" विशेषता नहीं है struct face

दरअसल, मेरी एमएसीएस (उबंटू 11.04 नैट्टी पर संस्करण 23.1) एक TTY में रेखांकित के रूप में इटैलिकाइज़ किए गए चेहरे (जो X11 में सही ढंग से प्रदर्शित होते हैं) दिखाता है । (जिसका अर्थ है कि, यदि आप रेखांकित करने की परवाह नहीं करते हैं, तो आप प्रवेश / निकास रेखांकित के बजाय प्रवेश / निकास इटैलिक एस्केप अनुक्रमों का उपयोग करने और इटैलिक प्राप्त करने के लिए अपने टर्मिनल के टर्मो विवरण को बदल सकते हैं।)


यह उत्तर अच्छा लग रहा है, लेकिन अभी मैं इसका परीक्षण नहीं कर सकता क्योंकि मेरे पास एक ही लिनक्स स्थापित है जो एक win7 होस्ट में अतिथि के रूप में है। परिणामस्वरूप मुझे यह परीक्षण करने में कठिनाई हो रही है। विशेष रूप से मैं एससीआई एस्केप कोड सम्मिलित नहीं कर सकता। यदि कोई अन्य व्यक्ति पुष्टि करने या समझाने के लिए परीक्षण कर सकता है कि भागने के दृश्यों के साथ मैं क्या गलत कर सकता हूं तो मुझे इनाम देने में खुशी होगी।
17

@vschum यदि आप अपना टर्मऑफ़ डेटाबेस बदलने की कोशिश कर रहे हैं, तो इस उत्तर में मदद करनी चाहिए। जब तक आप उन्हें नहीं समझाते, हम आपकी कठिनाइयों में मदद नहीं कर सकते; आप उनके बारे में एक सवाल पूछ सकते हैं
गिलेस एसओ- बुराई को रोकना '

@ गिल्स दरअसल, इसका इस जवाब से कोई लेना-देना नहीं है । मैं यह पता लगाने के लिए नहीं कर सकता कि कैसे यह परीक्षण करने के लिए अनुक्रम सम्मिलित करें कि क्या इटैलिक्स काम करता है या नहीं। जब मैं ESC [3 m टाइप करता हूं तो टर्मिनल में कुछ भी नहीं दिखता है।
vschum

2
@vschum दबाने से ESCभागने का पात्र सम्मिलित नहीं होता है। आप Ctrl+V ESCएक सम्मिलित करने के लिए दबा सकते हैं , लेकिन आपको शायद ही कभी आवश्यकता होगी। बच चरित्र को \Eटर्मो स्रोत में दर्शाया गया है; एक टर्मिनल में (bash / ksh / zsh के साथ), कोशिश करें echo $'\e[3mhello\e[0m'
गिल्स एसओ- बुराई को रोकना '

4

मैं इस उत्तर को जोड़ रहा हूँ क्योंकि अन्य पुराने हैं। एमएसीएस 24.5 टर्मिनलों में इटैलिक चेहरे को सही ढंग से प्रदर्शित करता है।

यहाँ छवि विवरण दर्ज करें

यह एक टर्मिनल में चलने वाला 24.5 एमएसीएस ( emacs -nw) है। टर्मिनल है uxvrtऔर मेरे में सेटअप .Xdefaultsहै:

URxvt*termName: rxvt-unicode-256color
URxvt.font: xft:DejaVu Sans Mono:size=9

3

Emacs टर्मिनल इम्यूलेटर्स में इटैलिक्स का उपयोग नहीं कर सकते हैं जो इस फंक्शनलिटी को प्रदान करते हैं: यह Emacs Bug # 9652 है जो कि Chong Yidong द्वारा Jun 10, 2012 को तय किया गया था।

हालांकि, यह emacs के किसी भी जारी किए गए संस्करण में नहीं है, लेकिन उदाहरण के लिए emacs.naquadah.org से emacs-snapshot पैकेज में है ।


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