2012-03-26 11 views
13

लाइटएक्स (नोएब मोड का उपयोग करके) में एक स्वीवे दस्तावेज़ संपादित करते समय, Emacs को < में कोड को अनदेखा करने के बारे में पता है < >> = ब्लॉक। हालांकि, इंटरस्टिशियल \ Sexpr {} ब्लॉक के लिए, यह मामला नहीं है। यह देखते हुए कि आर संदर्भ '$' और LaTeX के माध्यम से स्तंभों के आधार पर $ का उपयोग करता सेट बंद करने के लिए समीकरण, इन \ Sexpr {} ब्लॉक अक्सर वाक्य रचना हाइलाइटिंग तोड़ने, तो जैसे:स्वीट दस्तावेज़ में Sexpr {} कमांड की सामग्री को अनदेखा करने के लिए Emacs प्राप्त करें

Emacs highlighting issue when using Sweave

मैं एक बहुत ही मौलिक समझ है elisp & Emacs वाक्यविन्यास हाइलाइटिंग, लेकिन मेरी आशा यह है कि .emacs में कुछ जोड़ना संभव हो सकता है जो \ Sexpr {} के भीतर किसी भी पार्सिंग/$ पहचान को अक्षम कर देगा।

+0

मुझे लगता है कि आप AUCTEX का उपयोग कर रहे हैं। डिफ़ॉल्ट LaTeX मोड में जो Emacs के साथ बंडल आता है, यह समस्या कम गंभीर है क्योंकि $ ... $ हाइलाइटिंग केवल लघु (सिंगल-लाइन) गणित अभिव्यक्तियों के लिए लागू होती है, इसलिए यह आपके स्नैपशॉट में कभी "खून नहीं" होती है। ICTEX लेखकों को एक बग रिपोर्ट क्रम में है। – Stefan

उत्तर

8

मैंने सोचा कि ईएसएस के साथ emacs में स्वीवे के लिए सही वाक्यविन्यास हाइलाइटिंग है?

वैसे भी, सबसे आसान "फिक्स" केवल $ ऑपरेटर का उपयोग नहीं करना है, बल्कि इसके बजाय [[ का उपयोग करना है। उदाहरण के लिए:

foo$p.value 
foo[['p.value']] 

एक ही परिणाम देना चाहिए। मुझे लगता है कि foo$p.value सिर्फ foo[["p.value",exact=FALSE]]

5

मैं के रूप में मैं एक Emacs हैकर नहीं कर रहा हूँ आप के लिए कोई अच्छा जवाब है, तो मैं आमतौर पर दो चीजों में से एक कार्य करें:

  • या तो पर लाइन के लिए "बंद" एक सरल % $ टिप्पणी जोड़ने
    round(as.numeric(chisq.test(someVar)["p.value"]), 2): $ को $ से गणित अभिव्यक्ति,

  • या पुनर्लेखन अभिव्यक्ति $ आधारित subsetting नहीं उपयोग करने के लिए।

7

के लिए कम मैं या तो एक इलाज नहीं है, है, लेकिन मैं अपने तरीके को, जो कभी नहीं करने के लिए है के साथ चीजों को स्टोर करने के लिए पारित करेंगे (ठीक है, शायद ही कभी) \Sexpr मात्रा में किसी भी प्रसंस्करण है, लेकिन बजाय मैं चर में \Sexpr में उपयोग के लिए, और एक ही हिस्सा मैं में मुख्य गणना करने में ऐसा करना चाहते हैं।

<<echo=FALSE, results=hide>>= 
t1 <- chisq.test(someVar) 
p1 <- formatC(t1$p.value, format="%f", digits=2) 
@ 

\dots with a $p$-value of \Sexpr{p1}. 

हालांकि इस के लिए कुछ कमियां हैं, मैं यह मुझे मदद मिलती है बेहतर ट्रैक रखने के लिए लगता है क्या मैं पेश करना चाहता हूं, और मैं इसे कैसे पेश करना चाहता हूं।

एक तरफ के रूप में, के बजाय formatC का उपयोग करने पर विचार करें क्योंकि यह महत्वपूर्ण शून्य (यानी 0.1 के बजाय 0.10) रख सकता है।

+1

अच्छा एक तरफ! मुझे प्रारूप सी चीज़ के बारे में पता नहीं था। यह हमेशा मुझे पागल कर देता है कि आर महत्वपूर्ण शून्यों को कैसे छोड़ देता है। –

+1

यह दृष्टिकोण '\ Sexpr {sprintf "%। 2f", my.float)} जैसे कुछ की स्थिति में भी मदद करता है, जहां emacs तब प्रतिशत प्रतीक के बाद सब कुछ के साथ सब कुछ का इलाज करता है, जो तब सभी प्रकार के साथ, कोष्ठक मिलान को तोड़ देता है जुड़ाव की। – mac

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

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