Sebastien Vauban <wxhgmqzgw...@spammotel.com> wrote: > Hello, > > #+TITLE: String manipulation > > * Data > > #+tblname: list-of-couples > | Me | @Here | > | Myself and I | @There | > > * Successful outcome > > I expect the above table to be transformed to those lines: > > #+begin_example > --- > Me > @Here > --- > Myself and I > @There > #+end_example >
I can do it easily in python except that I don't know how to produce the #+begin/end_example block. My results are preceded by colons: --8<---------------cut here---------------start------------->8--- * Data #+tblname: list-of-couples | Me | @Here | | Myself and I | @There | #+begin_src python :var table=list-of-couples :exports code :results output :tangle no for row in table: print "---" for i in range(len(row)): print row[i] #+end_src #+results: : --- : Me : @Here : --- : Myself and I : @There --8<---------------cut here---------------end--------------->8--- Nick > * First attempt > > ** Code and output > > #+begin_src awk :stdin list-of-couples :exports code :results output :tangle > no > { > print "---"; > print $1; > print $2; > } > #+end_src > > #+results: > #+begin_example > --- > Me > @Here > --- > Myself > and > #+end_example > > ** Issue > > The first line of the table is perfectly outputted. > > The second line is not, because of the space in its first column: $2 refers > then to the second word, not to the string of the second column. > > * Second attempt > > ** Code and output > > #+begin_src emacs-lisp :var data=list-of-couples :exports results :results > output :tangle no > (mapc > (lambda (item) > (print (format "---\n%s\n%s\n" > (first item) > (second item)))) > data) > #+end_src > > #+results: > #+begin_example > > "--- > Me > @Here > " > > "--- > Myself and I > @There > " > #+end_example > > ** Issue > > Literal double quotes are inserted in the output. Plus blank lines... > > Best regards, > Seb > > -- > Sebastien Vauban > >