emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Nick Dokos <ndokos@gmail.com>
To: emacs-orgmode@gnu.org
Subject: Re: Worg Tutorial error: using Emacs lisp as formulas
Date: Tue, 26 Aug 2014 22:52:08 -0400	[thread overview]
Message-ID: <87a96qhcfb.fsf@alphaville.dokosmarshall.org> (raw)
In-Reply-To: 53FCDD83.40206@gmail.com

Ciaran Mulloy <crmulloy@gmail.com> 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

  reply	other threads:[~2014-08-27  2:52 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-26 19:18 Worg Tutorial error: using Emacs lisp as formulas Ciaran Mulloy
2014-08-27  2:52 ` Nick Dokos [this message]
2014-08-27  7:21   ` Ciaran Mulloy
2014-08-27  9:20     ` ciaran_mulloy
2014-08-27 17:17       ` Andrea Rossetti
2014-08-27 11:52     ` Nick Dokos
2014-08-27 23:29       ` Ciaran Mulloy
2014-08-28  0:05         ` Andrea Rossetti

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87a96qhcfb.fsf@alphaville.dokosmarshall.org \
    --to=ndokos@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).