Tcalc -- A simple but flexible text based ledger/spreadsheet calculator
Tcalc allows you to to do all your accounting with plain text files using the full power of your favorite text editor. It can be used for any text file that contains numbers that need to be added or have any other type of calculation preformed on them, such as, ledgers, spreadsheets, invoices, or any type of numerical data.
It is a command line tool that operates as a filter. It processes your accounting files as it's input, performs all the calculations, and outputs a report in the format of the original file[s].
- Fast and Lightweight: Bring up your accounting files for editing instantly with your favorite editor. No bloated graphical library overhead. For example, I usually use a script or command line alias to automatically bring up the appropriate ledger file in the vim text editor, which automatically takes me to the last line I was on.
- Flexible: No file format restrictions. Completely free-form text.
Simple: Not much to learn. Use any text editor you already know how to use. Place a simple string, such as
$totalor a simple expression, wherever in the file you want results to appear.
- If you use a powerful editor, such as vim or emacs, you have far more editing power and efficiency then with the built in field editors of traditional accounting software.
- Utilize any number of accounting files for unlimited numbers of accounts, expense categories, etc. This approach can be scalable from an individuals accounting records to a large business.
- Utilizes the power of the Perl for expressions (formulas).
- Since your data is stored as simple text files, it is easy to automate adding data via automated scripts or from a GUI or web interface.
- Tcalc is a small lightweight Perl program which is easy to maintain. No sophisticated library dependencies that could contain bugs. No complex databases.
- Plain text data can be viewed, searched, and modified using standard command line tools.
- Platform independent: Tcalc is developed under BSD but it is written in Perl. It should run on any platform that supports Perl such as Linux or any other variant of Unix. It will probably even work on MS Windows, but I will leave it to others to confirm that.
- Open source licensed under the BSD license.