2013-05-07 13 views
18

मैं एक आरएमडी फ़ाइल को पीडीएफ में परिवर्तित करने के लिए आर में knitr पैकेज और पैंडोक का उपयोग कर रहा हूं। Pandoc एक .bib फ़ाइल से जुड़ा हुआ है और स्वचालित रूप से पीडीएफ के अंत मेरी .bib फ़ाइल में प्रविष्टियों इन की तरह लग रहे, http://johnmacfarlane.net/pandoc/demo/biblio.bib से लिया पर ग्रंथ सूची सम्मिलित करता है:ग्रंथसूची के बाद पांडोक सम्मिलित परिशिष्ट

@Book{item1, 
     author="John Doe", 
     title="First Book", 
     year="2005", 
     address="Cambridge", 
     publisher="Cambridge University Press" 
    } 

@Article{item2, 
     author="John Doe", 
     title="Article", 
     year="2006", 
     journal="Journal of Generic Studies", 
     volume="6", 
     pages="33-34" 
} 

मेरी ग्रंथ सूची का निर्माण करने के लिए, मैं कर रहा हूँ निम्नलिखित समारोह का उपयोग कर, से लिया: http://quantifyingmemory.blogspot.co.il/2013/02/reproducible-research-with-r-knitr.html

knitsPDF <- function(name) { 
    library(knitr) 
    knit(paste0(name, ".Rmd"), encoding = "utf-8") 
    system(paste0("pandoc -o ", name, ".pdf ", name, ".md --bibliography /Users/.../Desktop/test.bib --csl /Users/.../Desktop/taylor-and-francis-harvard-x.csl")) 
} 

मेरी .Rmd फ़ाइल की सामग्री है:

This is some text [@item1] 

This is more text [@item2] 

# References 

और outputted पीडीएफ इस तरह दिखता है:

enter image description here

अगर मैं एक परिशिष्ट सम्मिलित करने का प्रयास करें, संदर्भ अभी भी दस्तावेज़ के अंत में, इस तरह मुद्रित:

enter image description here

एक परिशिष्ट डालने कैसे कर संदर्भ के बाद?

उत्तर

12

अंततः संदर्भ हैंडलिंग बदल जाएगा जहां भी आपको पसंद है (https://github.com/jgm/pandoc/issues/771) संदर्भों को रखना संभव है, लेकिन अभी यह करने का कोई आसान तरीका नहीं है।

जैसा कि here सुझाया गया है, आप अपने परिशिष्ट को एक अलग फ़ाइल में डाल सकते हैं, इसे पैंडोक का उपयोग लाटेक्स खंड में बदलने के लिए करें, फिर --include-after-body ध्वज का उपयोग करके उस खंड को शामिल करें। यह ग्रंथसूची के बाद आएगा।

+3

वाह खुशी है कि यह साथ ग्रंथ सूची की स्थिति को निर्दिष्ट कर सकते हैं। मुझे संदेह था कि यहुई ने बुनाई में पीछे की ओर रखा था और लोगों के डेटा चोरी करने के लिए इसका इस्तेमाल कर रहा था। –

+1

लेकिन, जैसा कि आपके द्वारा उद्धृत लिंक में नोन सिल्क कहते हैं, "परिशिष्ट एक संदर्भ बताता है तो यह काम नहीं करता है।" :-( – Tripartio

16

नए pandoc संस्करणों के साथ, आप <div id="refs"></div>source

This is some text [@item1] 

This is more text [@item2] 

# References 

<div id="refs"></div> 

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