[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Worg Tutorial error: using Emacs lisp as formulas
From: |
Nick Dokos |
Subject: |
Re: [O] Worg Tutorial error: using Emacs lisp as formulas |
Date: |
Tue, 26 Aug 2014 22:52:08 -0400 |
User-agent: |
Gnus/5.130012 (Ma Gnus v0.12) Emacs/24.4.50 (gnu/linux) |
Ciaran Mulloy <address@hidden> writes:
> Hi!
> I was fascinated to work through the examples provided in the org-tutorials
> sections under Worg and really see the power of using eLisp as spreadsheet
> formula: http://orgmode.org/worg/
> org-tutorials/org-spreadsheet-lisp-formulas.html
>
> However the use of the mapconcat function always generated an error: Invalid
> regex "Regular expression too big", even with only a few terms in the formula.
>
> The offending formula was:
>
> #+TBLFM: @2$3='(mapconcat 'identity (delete-dups (list @2$1..@>$1
> @2$2..@>$2)) " ")
>
> I experimented with variations of the formula getting the same error every
> time.
>
> I did a search of the org-mode forum without finding any solution.
>
> Any thoughts?
>
I can't reproduce it - e.g. this
--8<---------------cut here---------------start------------->8---
| one | two | three | four | five |
|-----+-----+---------------+------+------|
| a | a | a b c e f d g | | |
| a | b | | | |
| b | a | | | |
| c | d | | | |
| e | f | | | |
| f | g | | | |
| a | f | | | |
#+TBLFM: @2$3='(mapconcat 'identity (delete-dups (list @2$1..@>$1 @2$2..@>$2))
" ")
--8<---------------cut here---------------end--------------->8---
works fine for me. This is with more-or-less latest org.
Moreover, none of the functions used (mapconcat, identity, delete-dups
or list) use regexps at all. There is a chance that regexps are used by
the evaluator when building the ranges, but it's unlikely IMO, so the
regexp error seems like a red herring to me. How big a table did you
try? Did you try restarting emacs and redoing the evaluation? How about
starting emacs without any of your customizations and redoing the
evaluation? Something like this
emacs -q -l /path/to/minimal/init /path/to/file/with/the/table
where the minimal init file just sets load-path if necessary and
initializes org.
--
Nick