2016-10-24 11 views
10

मैं आर स्टूडियो में knitr::spin दस्तावेज़ों के लिए कुछ स्निपेट खाका बनाने के लिए कोशिश कर रहा हूँ, और मैं उन्हें जरूरत है ताकि जिसके परिणामस्वरूप दस्तावेज़ एक अनुसंधान स्निपेट वाले शाब्दिक बैकटिक शामिल करने के लिए करने के लिए:कैसे knitr में उत्पादन शाब्दिक बैकटिक :: स्पिन

वांछित उत्पादन का

उदाहरण:

#' --- 
#' author: 'ENTER' 
#' title: 'ENTER' 
#' date: '`r Sys.time()`' 
#' output: 
#' html_document 
#' --- 

हालांकि, मैं कैसे करने के लिए उत्पादन बैकटिक को समझ नहीं सकता। यह:

`r paste("#' date: '`Sys.time()`')` 

के रूप में टिक के निशान पेस्ट आदेश बीच में जब आर स्टूडियो से प्रतिपादन आर कोड स्निपेट काम नहीं करेगा। मैं टिक के निशान बाहर हैश करने की कोशिश कर दिया गया है, आगे और पीछे की स्लैश आदि जोड़ने, लेकिन एक समाधान है कि करने के लिए सही ढंग से इस लाइन renders नहीं मिला है:

#' date: '`r Sys.time()`' 

विंडोज 7 एंटरप्राइज, 64 बिट ऑपरेटिंग सिस्टम
आर संस्करण: 3.2.5
आर स्टूडियो संस्करण: 0.99.903
knitr संस्करण: 1,14


उदाहरण: मैं इस कोशिश की, लेकिन यह

snippet spin.header 
`r paste("#' ---")` 
`r paste("#' author: 'ENTER'")` 
`r paste("#' title: 'ENTER'")` 
`r paste("#' date: '<code>``` `r Sys.time()` ```</code>'")` 
`r paste("#' output:")` 
`r paste("#' html_document")` 
`r paste("#' ---")` 
+0

नोट: यह एक YAML समस्या नहीं है ! सही वाईएएमएल आउटपुट तीसरे कोड बॉक्स में प्रदर्शित होता है। समस्या वाई स्टूडियो स्निपेट को वाईएएमएल कोड को सही तरीके से प्रदर्शित करने के लिए प्रस्तुत कर रही है! -> यह आर स्टूडियो स्निपेट के साथ एक समस्या है! –

+0

कोड बॉक्स संख्या 3 सही तरीके से काम करता है, लेकिन समस्या आर स्टूडियो स्निपेट के लिए बॉक्स नंबर 3 में लाइन 4 बनाने के लिए है! –

+0

यह इस समस्या से अधिक संबंधित है, लेकिन एक और स्तर की जटिलता के साथ http://stackoverflow.com/questions/20409172/how-to-display-verbatim-inline-r-code-with-backticks-using-rmarkdown –

उत्तर

1

सही उत्तर (वह केवल r और एक टिक मार्क याद किया) टिप्पणी में rawr द्वारा पोस्ट किया गया:

snippet spin.header 
`r paste("#' ---")` 
`r paste("#' author: 'ENTER'")` 
`r paste("#' title: 'ENTER'")` 
`r paste("#\' date: '\x60r Sys.time()\x60'")` 
`r paste("#' output:")` 
`r paste("#' html_document")` 
`r paste("#' ---")` 
0

एक विकल्प इनलाइन आर के स्निपेट के प्रसंस्करण के दौरान इस्तेमाल किया टोकन

snippet sh 
    #' --- 
    #' author: '${1:AUTHOR}' 
    #' title: '${2:TITLE}' 
    #' date: '`${3:}r Sys.time()`' 
    #' output: 
    #' html_document 
    #' --- 
    ${0} 

एक अन्य विकल्प से बचने के लिए है को तोड़ने के लिए है: अभी भी सिर्फ पाठ मुद्रण के बजाय आर कोड तब्दील इनलाइन आर पूरी तरह से पार्सिंग।

snippet sh 
    `r paste0(readLines("~/.R/snippets/spinheader.txt"),collapse = '\n')` 

spinheader.txt

#' --- 
#' author: '${1:AUTHOR}' 
#' title: '${2:TITLE}' 
#' date: '`r Sys.time()`' 
#' output: 
#' html_document 
#' --- 
${0}