hledger/hledger-lib/doc
Simon Michael 856c0b3042 lib: fix bracketed posting dates, parser cleanup (#304)
Bracketed posting dates were fragile; they worked only if you wrote full
10-character dates. Also some semantics were a bit unclear. Now they
should be robust, and have been documented more clearly. This is a
legacy undocumented Ledger syntax, but it improves compatibility and
might be preferable to the more verbose "date:" tags if you write
posting dates often (as I do).

Internally, bracketed posting dates are no longer considered to be tags.
Journal comment, tag, and posting date parsers have been reworked, all
with doctests. Also the journal parser types generally have been
tightened up and clarified, making it much easier to know how to combine
and run them. There's now

-- | A parser of strings with generic user state, monad and return type.
type StringParser u m a = ParsecT String u m a

-- | A string parser with journal-parsing state.
type JournalParser m a = StringParser JournalContext m a

-- | A journal parser that runs in IO and can throw an error mid-parse.
type ErroringJournalParser a = JournalParser (ExceptT String IO) a

and corresponding convenience functions (and short aliases) for running them.
2016-04-28 13:34:57 -07:00
..
hledger_csv.5 rename timelog format to timeclock 2016-04-12 21:13:19 -07:00
hledger_csv.5.info doc: also commit info files, should fix travis 2016-04-20 12:47:17 -07:00
hledger_csv.5.m4.md doc: m4 macro for web table of contents 2016-04-16 11:00:39 -07:00
hledger_csv.5.txt doc: generate (and commit) text-rendred man pages 2016-04-13 22:29:16 -07:00
hledger_journal.5 rename timelog format to timeclock 2016-04-12 21:13:19 -07:00
hledger_journal.5.info doc: also commit info files, should fix travis 2016-04-20 12:47:17 -07:00
hledger_journal.5.m4.md lib: fix bracketed posting dates, parser cleanup (#304) 2016-04-28 13:34:57 -07:00
hledger_journal.5.txt doc: generate (and commit) text-rendred man pages 2016-04-13 22:29:16 -07:00
hledger_timeclock.5 rename timelog format to timeclock 2016-04-12 21:13:19 -07:00
hledger_timeclock.5.info doc: also commit info files, should fix travis 2016-04-20 12:47:17 -07:00
hledger_timeclock.5.m4.md doc: m4 macro for web table of contents 2016-04-16 11:00:39 -07:00
hledger_timeclock.5.txt doc: generate (and commit) text-rendred man pages 2016-04-13 22:29:16 -07:00
hledger_timedot.5 rename timelog format to timeclock 2016-04-12 21:13:19 -07:00
hledger_timedot.5.info doc: also commit info files, should fix travis 2016-04-20 12:47:17 -07:00
hledger_timedot.5.m4.md doc: m4 macro for web table of contents 2016-04-16 11:00:39 -07:00
hledger_timedot.5.txt doc: generate (and commit) text-rendred man pages 2016-04-13 22:29:16 -07:00