2014-06-12 9 views
6

मैं ऑर्ग-मोड का उपयोग कर रहा हूं। एक पाठ के चारों ओर '+' का उपयोग करके, यह जीयूआई में स्ट्राइक-थ्रू टेक्स्ट के रूप में सही ढंग से प्रदर्शित होता है (उदाहरण: + स्ट्राइक-थ्रू + )।emacs कंसोल मोड ऑर्ग-मोड स्ट्राइक-थ्रू अपेक्षित के रूप में प्रदर्शित नहीं होता है

लेकिन यह emacs कंसोल मोड में काम नहीं करता है, पाठ स्ट्राइक-थ्रू प्रदर्शित नहीं होता है: डिफ़ॉल्ट चेहरे के साथ कोई अंतर नहीं है।

echo -e "\e[9mtest\e[0m" 

तो यह SGR कोड का उपयोग नहीं कर strike- के रूप में पाठ प्रस्तुत करना Emacs हो रहा है:

मेरे अवधि कैसे हड़ताल के माध्यम से प्रदर्शित करने के लिए के रूप में यह ठीक से इस परीक्षण के साथ striked के माध्यम से पाठ प्रदर्शित करता है पता के माध्यम से।

क्या आप कंसोल में स्ट्राइक-थ्रू का उपयोग करने के लिए emacs को बताने के किसी भी तरीके से जानते हैं? या यह मेरे अंत में है कि कुछ सेट नहीं है?

उत्तर

2

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

स्ट्राइक-थ्रू एस्केप अनुक्रम का संदर्भ ईसीएमए -48 है। हालांकि, इस तथ्य को ध्यान में रखें कि यह एक समिति द्वारा बनाया गया था और मौजूदा अभ्यास का प्रतिनिधित्व नहीं करता था। इसके बजाय, यह मौजूदा और प्रस्तावित कार्यान्वयन दोनों के लिए एक ढांचा है। इसमें वर्णित कई विशेषताओं को (30 साल बाद) लागू नहीं किया गया है। आपको मानक टर्मिनोफ़ (या टर्मकैप) क्षमता के रूप में स्ट्राइक-थ्रू नहीं मिलेगा, क्योंकि केवल कुछ (यदि कोई हैं) टर्मिनलों ने सुविधा लागू की है। terminfo(5) पढ़ें: इस उद्देश्य के लिए परिभाषित कोई क्षमता नहीं है।

यदि आप emacs के लिए स्रोत कोड पढ़ते हैं, तो यह देखना आसान है कि यह स्ट्राइक-थ्रू का समर्थन नहीं करता है। Emacs 'ड्राइवर टर्मिनलों के लिए term.c termcap उपयोग करता है और समर्थित वीडियो को सूचीबद्ध करता है एक bitmask में जिम्मेदार बताते हैं:

enum no_color_bit 
{ 
    NC_STANDOUT = 1 << 0, 
    NC_UNDERLINE = 1 << 1, 
    NC_REVERSE  = 1 << 2, 
    NC_ITALIC = 1 << 3, 
    NC_DIM  = 1 << 4, 
    NC_BOLD = 1 << 5, 
    NC_INVIS = 1 << 6, 
    NC_PROTECT  = 1 << 7 
}; 

यह भी tgetstr (see code) का उपयोग कर कई स्ट्रिंग क्षमताओं प्राप्त करता है। वहाँ कोई हड़ताल नहीं है। जबकि emacs hardcodes some of the color बच निकलता है (टर्म कैप की सीमाओं के आसपास काम करने के लिए), ड्राइवर में कुछ भी नहीं है जो स्ट्राइक-थ्रू करेगा।

अतिरिक्त पठन:

+0

धन्यवाद, स्रोतों के साथ सही जवाब। – vaab

संबंधित मुद्दे