[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain l
From: |
Ihor Radchenko |
Subject: |
Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)] |
Date: |
Wed, 07 Dec 2022 12:16:28 +0000 |
Jeremie Juste <jeremiejuste@gmail.com> writes:
> Many thanks for the insights. I confess that I have never transferred
> list from org to R before. I've always use tables and as far as I
> understand they works fine in 9.6.
>
> So assuming this list
>
> #+name: alist
> - first item
> - second item
> - third item
> - 3.1 item
> - fourth item
>
>
> before c72d5ee84 we could do something like
>
> #+begin_src R :var list=alist
> list
> #+end_src
>
> #+RESULTS:
> | first item | |
> | second item | |
> | third item | (unordered (3.1 item)) |
> | fourth item | |
And it was a bug that the ob-core patch fixed.
Unfortunately, a number of babel backends also developed workarounds
meanwhile.
For the context, the ground truth is Org manual:
16.4 Environment of a Code Block
list
A simple named list.
#+NAME: example-list
- simple
- not
- nested
- list
#+BEGIN_SRC emacs-lisp :var x=example-list
(print x)
#+END_SRC
#+RESULTS:
| simple | list |
Note that only the top level list items are passed along. Nested
list items are ignored.
> and after we end up with
>
>
> #+begin_src R :var list=alist
> list
> #+end_src
>
> #+RESULTS:
> | first item | second item | third item | fourth item | | | | | |
> |
>
> Here I'm on uncharted territory. We could go with
> 1.
> | first item | second item | third item | fourth item |
>
> or be closer to the version 9.5 with
> 2.
> | first item |
> | second item |
> | third item |
> | fourth item |
>
> However I'm still tempted to choose the second option to break as little
> workflow as possible.
>
> If we go in this direction the solution of Chuck works fine. Many thanks
> for the suggestions.
I also like the second option as **printing** more, but it is _not_ what
we have in the manual.
Note that the origin of the issue is in how list=alist is assigned.
Before the problematic commit, we had awkward situation when
alist=(("first item") ("second item") ...)
I changed things to
alist=("first item" "second item" ...)
which makes a lot more sense when passed as variable value.
Now, printing:
ob-core prints lists as a special case of tables.
Since ("first item" "second item" ...) is a row vector, we get
| first item | second item | ... |
changing row vectors to be printed as column vectors is easy, but I am
afraid about non-trivial breakage.
Hope the above clarifies about what happened and why I changes things
like I did.
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], (continued)
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Greg Minshall, 2022/12/04
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Jeremie Juste, 2022/12/06
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Greg Minshall, 2022/12/06
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], William Denton, 2022/12/06
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)],
Ihor Radchenko <=
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Jeremie Juste, 2022/12/07
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Ihor Radchenko, 2022/12/08
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Greg Minshall, 2022/12/08
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Ihor Radchenko, 2022/12/08
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Greg Minshall, 2022/12/08
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Johan Tolö, 2022/12/10
- [FR] Allow passing nested list structures to variables in src blocks (was: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)]), Ihor Radchenko, 2022/12/11
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Jeremie Juste, 2022/12/11
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Ihor Radchenko, 2022/12/12
- Re: [BUG] ob-R.el: extra empty data.frame columns generated from plain lists after recent change [9.6 (release_9.6-3-ga4d38e @ /usr/share/emacs/30.0.50/lisp/org/)], Greg Minshall, 2022/12/12