1
0

home: feature matrix: cleanups; hyperlink section headings

h tags don't work in the markdown table for some reason.
This commit is contained in:
Simon Michael
2024-09-27 00:38:24 -10:00
parent eaa19fce8a
commit d17ba9e214

View File

@@ -435,61 +435,69 @@ A rough comparison of the big three PTA apps' features. <!-- last updated: 2024-
Corrections and suggestions are appreciated ([chat](https://matrix.to/#/#plaintextaccounting:matrix.org)).
Third-party things are *italic*. <!-- Of these, the notable likely-to-be-made-to-work ones are mentioned. -->
| | Ledger | hledger | Beancount
|--------------------------|------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------
| <br>**User interfaces** <a name="user-interfaces"></a><a name="uis"></a>
| CLI: | ledger | hledger | beanquery
| TUI: | *regdel* | hledger add, hledger-ui, *hledger-iadd*, *puffin* | *bean-add*
| GUI: | *Prudent*, *ledgerble*, *addtrans&nbsp;(ledgerhelpers)* | *fruit-credits* |
| WUI: | *ledgeraccounting*, *paisa*, *cashier*, *ledgible*, *ledger&nbsp;(howeyc)*, *ledger-web&nbsp;(vifon)*, *ledger-web&nbsp;(peterkeen)*, *ledger-pyreport*, *ledger-analytics*, *node-ledger-web* | hledger-web, *ledgeraccounting*, *paisa*, *cashier* | *fava*, *paisa*, *BeanHub*
| Android: | *cashier*, *NanoLedger* | *cashier*, *MoLe*, *NanoLedger* | *Beancount&nbsp;Mobile&nbsp;CE*, *beancount-mobile&nbsp;(xuhcc)*
| IOS: | | | *Beancount&nbsp;Mobile&nbsp;CE*
| | | |
| <br>**Help** <a name="help"></a>
| CLI help: | general --help, also available as man page | general and command-specific --help, commands summary, built-in asciinema demos | command-specific --help
| TLDR short help: | ledger | hledger and commands, also built-in |
| User manual formats: | web | web, info, man, also built-in info/man/text with jump to topic | web
| Active support channels: | | chat, mail list, forum, reddit | mail list
| Easy first setup: | yes | yes | no
| | | |
| <br>**Data formats** <a name="data-formats"></a>
| Input formats: | journal&nbsp;(ledger), timeclock, csv | journal&nbsp;(hledger), timeclock, timedot, csv, tsv, ssv, \*sv | journal&nbsp;(beancount)
| Output formats: | text, csv, xml | text, html, fods, csv, tsv, ssv, sql | text, ?
| | | |
| <br>**Commands** <a name="commands"></a>
| Commands: | accounts, balance, cleared, commodities, convert, entry, emacs, equity, payees, pricemap, prices, print, register, select, source, stats, tags | accounts, activity, add, aregister, balance, balancesheet, balancesheetequity, cashflow, check, close, codes, commodities, demo, descriptions, diff, files, help, import, incomestatement, payees, prices, print, notes, register, rewrite, roi, stats, tags, test | beancount: check, doctor, example, format
| Add-on commands: | | bar, check-fancyassertions, *edit*, git, *iadd*, *interest*, *lots*, pijul, *plot*.. | beanquery: balances, journal, print, select
| | | |
| <br>**Configuration** <a name="configuration"></a>
| Config file: | general options | general and command-specific options | ?
| Extensibility: | built-in expression language, embedded python snippets | add-on commands, haskell library | data-modifying plugins, python library
| APIs: | C++, python, *HTTP-JSON* | haskell, HTTP-JSON | python
| | | |
| <br>**Other features** <a name="other-features"></a>
| Budget report: | yes | yes |
| Charting tools: | *paisa*, etc.. | hledger activity, hledger-bar, hledger-web, *hledger-plot*, *paisa*, etc.. | *paisa*..
| Data importing: | built-in, from CSV | built-in, from any input format | beangulp framework, *beancount_reds_importers framework*, *beancount-import library*
| Data deduplication: | checksum-based (requires unique CSV records) | date-based (requires date-ordered CSV records) | ?
| Generate postings by rule: | yes | yes | ?
| Generate transactions by rule: | yes | yes | ?
| International number notations: | no | yes | no
| Lot management: | lot matching syntax, lots report, revaluation transactions, *lotter* | manual, *hledger-lots*, *hledger-move*, *lotter* | lot matching syntax, ?
| Multi-period balance reports: | no | yes | no
| Pivoting: | on single tag | on one or more tags/other fields | ?
| Price fetching: | *pricehist* | *pricehist* | beanprice, *pricehist*
| Querying: | cli options, custom query expressions | cli options, custom query expressions | SQL-like beancount query language
| REPL: | built-in | haskell GHCI | beanquery, python
| Shell completions: | bash (commands, flags, maybe accounts) | bash (commands, flags, flag values, query types, journal data) |
| Unrealised gains report: | yes | yes | ?
| Validation: | configurable | configurable | always strict
| Miscellaneous: | ? | account types awareness | ?
| | | standard financial reports |
| | | customisable account display order |
| | | customisable amount styles for input and output |
| | | documentation-first development |
| | | regular releases |
| | | regression bounties |
| | | |
<style>
td:first-child strong a {
text-decoration:none;
color:inherit;
}
</style>
| | Ledger | hledger | Beancount
|---------------------------------|------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------
|
| CLI: | ledger | hledger | beanquery
| TUI: | *regdel* | hledger add, hledger-ui, *hledger-iadd*, *puffin* | *bean-add*
| GUI: | *Prudent*, *ledgerble*, *addtrans&nbsp;(ledgerhelpers)* | *fruit-credits* |
| WUI: | *ledgeraccounting*, *paisa*, *cashier*, *ledgible*, *ledger&nbsp;(howeyc)*, *ledger-web&nbsp;(vifon)*, *ledger-web&nbsp;(peterkeen)*, *ledger-pyreport*, *ledger-analytics*, *node-ledger-web* | hledger-web, *ledgeraccounting*, *paisa*, *cashier* | *fava*, *paisa*, *BeanHub*
| Android: | *cashier*, *NanoLedger* | *cashier*, *MoLe*, *NanoLedger* | *Beancount&nbsp;Mobile&nbsp;CE*, *beancount-mobile&nbsp;(xuhcc)*
| IOS: | | | *Beancount&nbsp;Mobile&nbsp;CE*
| <br>**<a name="user-interfaces" href="#user-interfaces">User interfaces</a>**
|
| CLI help: | general --help, also available as man page | general and command-specific --help, commands summary, built-in asciinema demos | command-specific --help
| TLDR short help: | ledger | hledger and commands, also built-in |
| User manual formats: | web | web, info, man, also built-in info/man/text with jump to topic | web
| Active support channels: | | chat, mail list, forum, reddit | mail list
| Easy first setup: | yes | yes | no
| <br>**<a name="help" href="#help">Help</a>**
|
| Input formats: | journal&nbsp;(ledger), timeclock, csv | journal&nbsp;(hledger), timeclock, timedot, csv, tsv, ssv, \*sv | journal&nbsp;(beancount)
| Output formats: | text, csv, xml | text, html, fods, csv, tsv, ssv, sql | text, ?
| <br>**<a name="data-formats" href="#data-formats">Data formats</a>**
|
| Commands: | accounts, balance, cleared, commodities, convert, entry, emacs, equity, payees, pricemap, prices, print, register, select, source, stats, tags | accounts, activity, add, aregister, balance, balancesheet, balancesheetequity, cashflow, check, close, codes, commodities, demo, descriptions, diff, files, help, import, incomestatement, payees, prices, print, notes, register, rewrite, roi, stats, tags, test | beancount: check, doctor, example, format
| Add-on commands: | | bar, check-fancyassertions, *edit*, git, *iadd*, *interest*, *lots*, pijul, *plot*.. | beanquery: balances, journal, print, select
| <br>**<a name="commands" href="#commands">Commands</a>**
|
| <br>**<a name="configuration" href="#configuration">Configuration</a>**
| Config file: | general options | general and command-specific options | ?
| Extensibility: | built-in expression language, embedded python snippets | add-on commands, haskell library | data-modifying plugins, python library
| APIs: | C++, python, *HTTP-JSON* | haskell, HTTP-JSON | python
|
| <br>**<a name="other-features" href="#other-features">Other features</a>**
| Budget report: | yes | yes |
| Charting tools: | *paisa*, etc.. | hledger activity, hledger-bar, hledger-web, *hledger-plot*, *paisa*, etc.. | *paisa*..
| Data importing: | built-in, from CSV | built-in, from any input format | beangulp framework, *beancount_reds_importers framework*, *beancount-import library*
| Data deduplication: | checksum-based (requires unique CSV records) | date-based (requires date-ordered CSV records) | ?
| Generate postings by rule: | yes | yes | ?
| Generate transactions by rule: | yes | yes | ?
| International number notations: | no | yes | no
| Lot management: | lot matching syntax, lots report, revaluation transactions, *lotter* | manual, *hledger-lots*, *hledger-move*, *lotter* | lot matching syntax, ?
| Multi-period balance reports: | no | yes | no
| Pivoting: | on single tag | on one or more tags/other fields | ?
| Price fetching: | *pricehist* | *pricehist* | beanprice, *pricehist*
| Querying: | cli options, custom query expressions | cli options, custom query expressions | SQL-like beancount query language
| REPL: | built-in | haskell GHCI | beanquery, python
| Shell completions: | bash (commands, flags, maybe accounts) | bash (commands, flags, flag values, query types, journal data) |
| Unrealised gains report: | yes | yes | ?
| Validation: | configurable | configurable | always strict
| Miscellaneous: | ? | account types awareness | ?
| | | standard financial reports |
| | | customisable account display order |
| | | customisable amount styles for input and output |
| | | documentation-first development |
| | | regular releases |
| | | regression bounties |
| | | |
### Editor plugins