>>> "UB" == Uwe Brauer <o...@mat.ucm.es> writes:

> Hi
> Consider please the following to tables

> #+begin_src 

> ,#+TBLNAME: test3
> | Email           | State    |
> |-----------------+----------|
> | us...@gmail.com | Sent     |
> | us...@gmail.com | not sent |


> ,#+TBLNAME: test4
> | Email              | State       |
> |--------------------+-------------|
> | us...@gmail.coom   | not sent    |
> | us...@gmail.com    | sent        |
> #+end_src


> I want to join them, adding columns, and the colnames, so I tried.

> #+BEGIN_SRC emacs-lisp :var t1=test3 t2=test4 :colnames t
> (cl-mapcar #'append t1 t2)
> #+END_SRC




> However this is the result. 

>  #+begin_src 
>  ,#+RESULTS:
>  | us...@gmail.com | Sent     | us...@gmail.coom | not sent |
>  | us...@gmail.com | not sent | us...@gmail.com  | sent     |
>  #+end_src

> What went wrong?

> Thanks and regards

> Uwe Brauer 

The right code is this one
#+NAME: TA
| col1 | col2 |
|------+------|
|    1 |    2 |
#+NAME: TB
| col3 |
|------|
|    3 |
#+BEGIN_SRC emacs-lisp :var t1=TA t2=TB :colnames no
(insert-at 1 (cl-mapcar #'append t1 t2) 'hline)
#+END_SRC
#+RESULTS:
| col1 | col2 | col3 |
|------+------+------|
|    1 |    2 |    3 |
#+begin_src elisp :noexport
(defun insert-at (n list element)
  "Insert ELEMENT into LIST at position N.
I.e., (eq ELEMENT (nth N (insert-at N LIST ELEMENT)))."
  (if (eq n 0)
      (cons element list)
    (let ((link (nthcdr (1- n) list)))
      (setcdr link (cons element (cdr link))))
    list))
#+end_src


Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to