Chciałbym wygenerować tabele zawierające nagłówki z bloków kodu. Coś takiego:
#+BEGIN_SRC emacs-lisp :results value table :table-header | First | Second |
(identity '((a b) (c d)))
#+END_SRC
#+RESULTS:
| First | Second |
|-------+--------|
| a | b |
| c | d |
Niestety coś takiego :table-header | First | Second |
nie istnieje. A raczej mam nadzieję, że coś przeoczę. (Tutaj używam (identity ...)
jako symbolu zastępczego dla kodu, który faktycznie oblicza wartość.)
To obejście nie robi tego dla mnie:
#+BEGIN_SRC emacs-lisp :results value table
(cons (list "First" "Second")
(identity '((a b) (c d))))
#+END_SRC
#+RESULTS:
| First | Second |
| a | b |
| c | d |
Muszę zmodyfikować zawartość bloku kodu, a wynikowy nagłówek nie jest tak naprawdę wierszem nagłówka, jest wierszem jak każdy inny.
W związku z tym (ale nie w 100% taki sam, powyżej chciałbym uniknąć umieszczania instrukcji konfiguracji tabeli wewnątrz bloku kodu, poniżej tego jest wymagane), czy jest jakiś specjalny element, który powoduje wstawienie separatora? Coś jak:
#+BEGIN_SRC emacs-lisp :results value table
(nconc (identity '((a b) (c d))) ; calculated value A
(list 'linebreak) ; explicitly inserted linebreak
(identity '((A B) (C D)))) ; calculated value B
#+END_SRC
#+RESULTS:
| a | b |
| c | d |
|---+---|
| A | B |
| B | D |
:colnames
zgodnie z sugestią zawartą w drugiej odpowiedzi wygląda na to, że będę musiał otworzyć prośbę o#+BEGIN_SRC ... :colnames yes
dodanie funkcji:colnames "| First | Second |"
. Do tego czasu będę stosować to podejście.quote
wartości d do wszystkiego (np może używasz:var
nagłówka ia
,b
,c
, itd. Są rzeczywiście pochodzi zmienne, które używaszlist
na), tylko przytoczyć'hline
sam symbol.Po dodaniu wiersza nagłówka:
Przypisz
#+NAME:
do bloku kodu.Dodaj
#+CALL:
instrukcję z:colnames yes
nagłówkiemUruchom
#+CALL:
instrukcję za pomocą C-c C-c.Mam nadzieję, że to pomogło!
źródło
#+NAME: same-name
. Ponieważ nadal muszę sprawdzać wiersz nagłówka, korzystając z tego podejścia, skorzystam z rozwiązania w innej odpowiedzi.