[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: org-tables with monetary amounts
From: |
Daniele Nicolodi |
Subject: |
Re: org-tables with monetary amounts |
Date: |
Thu, 15 Oct 2020 22:02:58 +0200 |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:68.0) Gecko/20100101 Thunderbird/68.12.1 |
On 12/10/2020 10:22, Christian Moe wrote:
>
> Hi, Daniele,
>
> Good that it's working for you. I'll try to explain the unclear parts.
>
> Daniele Nicolodi writes:
>
>> On 24/09/2020 11:17, Christian Moe wrote:
>>
>>> Now, with the Calc command to simplify units, you can add dollars to
>>> euros and get the result in whichever currency comes first in the
>>> algebraic expression
>>>
>>> | 3 USD | 4 EUR | 6.58 EUR |
>>> #+tblfm: $3=usimplify($2+$1)
>>>
>>> | 3 USD | 4 EUR | 7.6511628 USD |
>>> #+tblfm: $3=usimplify($1+$2)
>>
>> Having to explicitly use usimplify() is a bit too verbose. It would be
>> ideal if this could be somehow be implicit.
>
> Yes, or at least with a less obtrusive syntax, like a mode flag,
> something like
>
> $3=$2+$1;u
I had a look and unfortunately the implementation of mode flags is not
easily extensible, thus this cannot easily implemented in independent code.
Also, it would probably make sense to have this being a Calc mode
activated with an org-table formula mode flag, rather than something
implemented in org-table. I don't know how easy it would be to extend Calc.
>>> I don't use this functionality, so I don't have answers to all the
>>> questions you'll now have -- including how to get the desired precision
>>> without lopping off the currency unit in the last example!
>>
>> Having the desired fixed precision is quite important for this to be
>> useful. In y recent tests I had to drop the units (currencies) to
>> achieve this. It would be nice to find a way to avoid it.
Turns our this is actually easy. There are two ways to specify
visualization format for table cells: a format specifier like
$3=$1+$2;%.2f
which results in the units being stripped, and a Calc formatting mode
flag, like
$3=$1+$2;f2
which does not strip the units.
Cheers,
Dan