Chciałbym móc zgłaszać ostrzeżenia i błędy podczas oceny bloku kodu Python w pliku Org.
Gdy blok kodu zawiera błędy składniowe Pythona, Org wyświetla je w osobnym buforze o nazwie *Org-Babel Error Output*
. Byłoby miło móc wysyłać tam również własne ostrzeżenia, zachowując możliwość powrotu wyniku tablicy do trybu Org jako tabeli przy użyciu :results value
.
Dla jasności, oto fałszywy przykład rzeczy, które moim zdaniem mogą zadziałać:
#+BEGIN_SRC python
import sys
sys.stderr.write('Warning.\n')
sys.stderr.flush()
return [['Table', 'header'], ['table', 'data']]
#+END_SRC
#+RESULTS:
| Table | header |
| table | data |
Edytowano, aby dodać: Ta dyskusja na liście trybów org sugeruje, że wyjście błędu jest wyświetlane tylko wtedy, gdy ocena bloku kodu nie powiedzie się. Wygląda więc na to, że jest to możliwe, ale tylko poprzez przerwanie oceny za pomocą exit(1)
lub podobnego.
Odpowiedzi:
Zgodnie z opisem Erica Schulte na
org-mode
liście mailingowej (patrz link w pytaniu) możemy to zmienićorg-babel-eval
:Teraz, jeśli
org-babel-eval-verbose
jest ustawiony nat
, dane wyjściowe drukowane do stderr podczas oceny bloku kodu źródłowego są wyświetlane w osobnym oknie, tak jakby ocena kodu źródłowego nie powiodła się.źródło