emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[SOLVED] (was: join tables columnwise columnames are ignored)


From: Uwe Brauer
Subject: [SOLVED] (was: join tables columnwise columnames are ignored)
Date: Tue, 14 Jul 2020 09:24:43 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

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

> Hi
> Consider please the following to tables

> #+begin_src 

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


> ,#+TBLNAME: test4
> | Email              | State       |
> |--------------------+-------------|
> | user3@gmail.coom   | not sent    |
> | user4@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:
>  | User1@gmail.com | Sent     | user3@gmail.coom | not sent |
>  | user2@gmail.com | not sent | user4@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

[Prev in Thread] Current Thread [Next in Thread]