2012-06-27 13 views
10

Ich arbeite an bekommen Knitr-Setup. Ich installierte die neueste Version von R (2.15.1), Lyx 2.0 einschließlich der MiKTex 2.9-Distribution und RStudio 0.96.304 auf einer Windows 7 Enterprise-Box. Ich kann die pdflatex-Ausgabe bekommen, wenn ich Lyx öffne und einfach das Tutorial anschaue, damit das Basissystem funktioniert. Ich habe dann heruntergeladen minimal Rnw example es in meinem Arbeitsverzeichnis als testknitr.Snw gespeichert, öffnete diese Datei in RStudio, und drückte auf die Schaltfläche PDF kompilieren. Die knitr-Ausgabe wird mit einer einzigen Warnung über das Parser-Paket abgeschlossen und erzeugt eine Datei testknitr.tex. pdflatex.exe dann läuft, aber fehlschlägt, und der jeweilige Fehler in der Protokolldatei scheintCompiling minimale Knitr Beispiel schlägt fehl

! LaTeX Error: Environment alltt undefined. 

ich den gleichen Fehler empfangen, wenn testknitr.tex mit TeXworks zu kompilieren versuchen. Ich habe diese Datei von innen R mit Hilfe von stricken ("testknitr.Rnw") erstellt - verschiedene Erweiterung wegen der Standard in RStudio. Ich habe MikTek angewiesen, die Pakete beim Kompilieren automatisch zu aktualisieren. Ein wenig Forschung zu CTAN schlägt vor, dass die alltt-Umgebung Teil des ltxbase-Pakets ist, das installiert wird, wenn ich den Paketmanager ansehe. Tatsächlich scheint es ein hübscher Kernteil der ganzen Sache zu sein!

OK - Ich habe die Kommentare auf der minimalen Beispielseite gelesen und eine Problemumgehung für dieses Problem gefunden, und dass es ein bekannter Fehler vor 19 Stunden ist. Und ja, ich habe überprüft, dass RStudio darauf eingestellt ist, Knitr zu verwenden, nicht Sweave. Ich bekomme jetzt einen neuen Fehler:

! LaTeX Error: Command \textquotesingle unavailable in encoding T1. 

EDIT: OK! Es stellt sich heraus, dass der Fehler nicht fatal ist - es gibt ein schönes PDF des minimalen Beispiels, das im Arbeitsverzeichnis sitzt, wenn man sich die Zeit nimmt, es zu betrachten. Etwas alarmierend, dass RStudio Compilation versagt, wenn nicht?

+5

Die Abhilfe, vielleicht offensichtlich zu einem erfahrenen latex dh ist \ usepackage {} alltt hinzufügen in die Datei. Laut [Yihuis Kommentar] (http://yihui.name/knitr/demo/minimal/) wird dies in zukünftigen Versionen behoben, oder jetzt, wenn Sie die Entwicklungsversion von knitr bekommen. – atiretoo

+0

Könnten Sie das als Antwort hinzufügen und akzeptieren? Auf diese Weise können die Leute sehen, dass es beantwortet wurde, und Sie können etwas rep :) –

+0

Danke, @atiretoo Es scheint, dass ich eine neue Version zu CRAN schieben muss, bevor mehr Leute verwirrt werden, aber CRAN Leute werden mich für die Aktualisierung anschreien zu häufig ... Übrigens, ich kann den Fehler 'textquotesingle' unter Ubuntu/TeXLive nicht reproduzieren, aber ich denke, Sie können '\ usepackage [T1] {fontenc} 'auskommentieren. –

Antwort

8

Die Abhilfe, vielleicht offensichtlich zu einem Erlebnis latex dh ist

\usepackage{alltt} 

in die Datei hinzuzufügen. Laut Yihui's comment wird dies in zukünftigen Versionen behoben werden, oder jetzt, wenn Sie die Entwicklungsversion von Github erhalten möchten. Ich testete auch @ Yihuis Kommentar darüber, dass die Linie

auskommentiert werden könnte. Dies behebt das zweite Problem in der Frage, und RStudio behandelt jetzt die Kompilierung als erfolgreich, bereinigt (einige?) Zwischendateien und zeigt sofort die Vorschau der PDF an.