2014-12-04 6 views
7

Ich versuche, die Ausgabe von diff mit org-babel zu erfassen, aber aus irgendeinem Grund funktioniert es nicht. Für die DateienErfassung der Ausgabe von "diff" mit org-babel

a b c 
a c b 

diff 1 2 von der Kommandozeile aufgerufen kehrt

1c1 
< a b c 
--- 
> a c b 

Aber mit org-babel, nichts:

#+begin_src sh                                     
diff 1 2                                      
#+end_src                                      

#+RESULTS: 

Der Minipuffer liest "Codeblock produziert keine Ausgabe". Das org-babel-Fehlerausgabefenster ist leer. Andere Befehle wie ls zeigen die Ausgabe wie erwartet. Ich bin nicht mit org-babel vertraut.

Ich versuchte mit :results output verbatim, keine Änderungen. Ich habe auch versucht, :results output replace wie vorgeschlagen here zu verwenden. Hat nicht geholfen.

  • Emacs Version 24.4.1 (auf Debian jessie)
  • Org-Mode-Version 8.2.10

Antwort

6

ist ich Ihr Problem (OSX) reproduzieren konnten.

Die seltsame Sache ist, dass die Ausführung der Babel-Block öffnet die Org-Babel Fehler Ausgabe Puffer, als ob etwas zu STDERR gehen würde.

Wenn Sie nach dem Vergleich einen anderen Ausgang hinzufügen, wird das Ergebnis OK angezeigt. Zum Beispiel

#+begin_src sh :results output 
diff 1 2 
echo 
#+end_src 

Wenn Sie diff die Ergebnisse zu stdout zwingen, werden die Ergebnisse auch angezeigt werden:

#+begin_src sh :results output 
diff 1 2 | cat 
#+end_src 
+0

Danke, das funktioniert. Ich werde einen Fehlerbericht einreichen. – Alex

+0

@Alex Hast du diesen Fehler jemals eingereicht? Wenn ja, füge ich einen Patch hinzu - wenn nicht, werde ich meinen eigenen mit einem Patch einreichen. –

+0

@AaronMiller Ich kann mich nicht erinnern. Ich würde vorschlagen, dass Sie Ihre eigenen hinzufügen. – Alex