As I have mentioned in the past, I regularly use hledger “iadd” to add new transactions. One alternative, hledger “add” works well enough, but “iadd” sometimes works slightly better.
One area where I prefer “iadd” is when a new month has recently begun. Typically, when I am entering transactions in the first few days of a month, I have a transaction to enter from the previous month. For example, say it’s October 1, and I have a transaction to enter from September 29. With “iadd” if I type 29 for the date, “iadd” automatically understands the date to be for September 29, and I don’t need to type anything else.
With the alternate “add” program, I have to enter both the month and the date in the above case. If it’s October 1, and I enter just “29” using “add,” then the date will be understood as the 29th of October, a date in the future, not the 29th of September, just a few days ago. The extra work of specifying the month is, admittedly, minor. However, I like my small victories with data input wherever I can get them.
Speaking of which, I suppose that if I used the data import feature in hledger, the one where you download a csv file from a financial institution and have hledger import the data, the dates would always be imported correctly. At this point in my use of hledger, though, I think it’s good practice for me to enter each and every transaction. It forces me to look carefully at each one, which I think is helpful. And for that, I am glad when hledger “iadd” makes things slightly easier at the beginning of a new month.