A User's view of Hledger

Learning about hledger

iadd will need to wait

The plan for this week was to get hledger-iadd to work.

What is hledger-iadd? Also called iadd, it’s an alternative to the hledger add command to interactively enter transactions to your hledger data file. While the hledger add command works well enough, at least for me, iadd has a couple of differences. (See my video on YouTube for more details.)

One that I like is that iadd is slightly faster at handling dates near the beginning of a new month. For example, if you are at the first May and need to enter a transaction for the day before, which is April 30. If you enter just “30” for the date, iadd assumes the month is April, even though you are entering the transaction in May. On the other hand, with the “add” command, you need to type 4-30; otherwise, if you type just 30, “add” will calculate the date as May 30.

So, why, as mentioned before, will iadd need to wait?

I have been unsuccessful in installing it on my M1 Mac. (When I created the video mentioned above, I was using a different PC.)

I am sure that there is a way to install iadd on an Mac running Apple silicon. In fact, if I were a Haskell programmer, the various tools to make Haskell programs run would be correctly set up so that an iadd installation would work.

But for me, there were a number of problems I ran into. For example, at one point I got a message from stack saying that it was an unsupported version and to run the “stack upgrade –force-download” command. Upon doing so, I got the message “zsh: segmentation fault stack upgrade –force-download.”

I switched shells from zsh to bash, but that was not successful either. I was successful in getting a more recent version of stack, though I still got the message saying that it was an unsupported version. When I tried running the stack command to install iadd, one of the error messages said that there was binary for M1.

While it hurts my pride to admit failure in installing iadd, I think that there was a larger failure to avoid. Specifically, the mistake would have been to have spent more hours trying for something that was more ego related rather than make-a-significant-difference-in-my-life related.

And that fits well, I believe, with the reason that I am using hledger. The idea is to improve my life. Concentrate on the essentials. Sometimes that involves leaving things that would be nice to have for a future time.

(Edited to add link to YouTube video.)