emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Carsten Dominik <dominik@science.uva.nl>
To: Simon Winwood <sjw@cse.unsw.edu.au>
Cc: emacs-orgmode@gnu.org
Subject: Re: Proposal: In-place formulas in tables
Date: Mon, 7 May 2007 13:45:05 +0200	[thread overview]
Message-ID: <06fc609c06154b668523fc012e10d767@science.uva.nl> (raw)
In-Reply-To: <1070507102511.9304@cse.unsw.edu.au>


On May 7, 2007, at 12:24, Simon Winwood wrote:

>
>        Hi, I recently got bitten (not badly, say nibbled then), when I
> had a formula in a field to sum a column of numbers and added another
> data row --- when I C-c C-c'd to update the sum, the last data row was
> overwritten (i.e, not the formula field).
>
> For example:
>
> |---+---|
> | a | 1 |
> | b | 2 |
> |---+---|
> |   | 3 |
> #+TBLFM: @3$2=vsum(@1$2..@-I$2)
>
> add row X and recalculate (note b is overwritten by 1):
> |---+---|
> | a | 1 |
> | X | 7 |
> | b | 1 |
> |---+---|
> |   | 3 |
> #+TBLFM: @3$2=vsum(@1$2..@-I$2)
>
>        Obviously the code is doing the right thing according to the
> TBLFM rules, it just isn't what I (and, I assume, other people) would
> expect.
>
>        So, a solution: rather than overwrite formulas in fields with
> their values, use overlays to make the formula invisible and set
> before-string (or after-string) to be the calculated value.

You are hitting a very fundamental difference between org-mode tables
an the usual "spreadsheet" programs.  In a spreadsheet, a table field 
contains a formula, and the result is displayed.  In Org-mode tables, 
the table fieldd only contains the field value, never a formula.  This 
is because Org-mode tables are plain text that can be read as is.  A 
field never contains a formula - one of the nice aspectes of this is 
that you can write column formulas without copying a formula to each 
field in the table.

Now the problem is, that you can edit plain text any way you
like and in this way break the implicit relation between
formuals and fields.  This is a fundamental problem, ven if we would 
store formulas in fields.

What you can to do avoid problems like the one you encountered is
to use org-mode commands to create new rows or columns.  For example
to make a new row, place the cursor on a row and press S-M-down.
Then the formulas will be modified to account for this change.

- Carsten

      reply	other threads:[~2007-05-07 11:52 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-07 10:24 Proposal: In-place formulas in tables Simon Winwood
2007-05-07 11:45 ` Carsten Dominik [this message]

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=06fc609c06154b668523fc012e10d767@science.uva.nl \
    --to=dominik@science.uva.nl \
    --cc=emacs-orgmode@gnu.org \
    --cc=sjw@cse.unsw.edu.au \
    /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).