On Wednesday, June 4, 2014 7:32:22 AM UTC+2, Martin Blais wrote:
>
> On Mon, Jun 2, 2014 at 8:55 PM, Martin Blais <[email protected] 
> <javascript:>> wrote:
>
>> Why don't you build a tool for printing out the result of these 
>> rule-based modifications? Do you think that would be useful? Is it 
>> possible? I see a lot of questions like: "Why doesn't my rule such and such 
>> work? I see unexpected results in the register." If Ledger had a command to 
>> "expand everything, and print the expanded results," all of these questions 
>> would be easily answered by inspecting what it's doing, no? Is that easy to 
>> implement? 
>>
>> Just an idea. I'm building something exactly like that for Beancount, to 
>> help in debugging plugins, which are essentially functions that transform a 
>> list of entries in arbitrary ways, into a new, modified list of entries. 
>> One should be able to diff the files and round-trip between data-structure 
>> to text and back.
>>
>
> Actually, I just completed support for round-trips tonight (I had been 
> writing comparison code lately in order to make it easier to write tests by 
> writing a list of expected transactions in the input syntax itself, so it 
> was a-propos). This means that Beancount can now read a complete ledger 
> file, spit it back out in text, and re-reading that output generates the 
> same data structures in memory. Writing that re-read structure out again to 
> a second file also shows no file diff against the first output to text, 
> it's identical. I tested this on my gigantic personal ledger of 8 years, 
> and it passes clean.
>
> I'll add a new report type called "print" shortly, which will just spit 
> out the data structure it read in memory back to text, after running all 
> the transformations (e.g. automatically setting the amounts on postings, 
> processing the tag directives, adding price entries for postings at a 
> price, and whatever else the plugins do). This should be a nice debugging 
> tool in the future, as it reflects what it does, e.g., what was 
> automatically generated by the syntax shortcuts.
>
>
This sounds like a great feature. Can you give an example on how it works?

Jostein 

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Ledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to