beancount-reds-plugins


Namebeancount-reds-plugins JSON
Version 0.4.0 PyPI version JSON
download
home_pagehttps://github.com/redstreet/beancount_reds_plugins
SummaryA collection of plugins for Beancount
upload_time2025-07-14 16:59:41
maintainerNone
docs_urlNone
authorRed Street
requires_pythonNone
licenseGPL-3.0
keywords plugins double-entry banking beancount accounting
VCS
bugtrack_url
requirements beancount python_dateutil setuptools
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # beancount-reds-plugins

A collection of plugins for [Beancount](https://beancount.github.io/), software for
[plain text, double entry bookkeeping](https://plaintextaccounting.org/).
See README.md in individual directories for plugin specific documentation.

## Plugin list:
- __[autoclose_tree](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/autoclose_tree#readme)__:
  automatically closes all of an account's descendants when an account is closed.
- __[capital_gains_classifier](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/capital_gains_classifier#readme)__:
  rebooks capital gains into separate long and short accounts, and separate gains and
  losses accounts
- __[effective_date](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/effective_date#readme)__:
  enables per-posting dates (each posting in a transaction can have a different date)
- __[opengroup](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/opengroup#readme)__:
  Inserts open statements for sets of accounts based on specifiable rules.
- __[rename_accounts](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/rename_accounts#readme)__:
  rename arbitrary accounts on the fly (eg: move Taxes from Expenses to Income when you
  temporarily want to view all your Expenses except taxes)
- __[zerosum](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/zerosum#readme)__:
  find matching pairs of postings that sum up to zero. Useful in de-duplication, and
  tracking things such as reimbursements, rebates, etc.

## Installation
`pip3 install beancount-reds-plugins`

Or to install the bleeding edge version from git:

`pip3 install git+https://github.com/redstreet/beancount_reds_plugins`

## Usage
Invoke and configure a plugin by including it in your beancount source. For example,
invoke the `rename_accounts` plugin like so:

```python
plugin "beancount_reds_plugins.rename_accounts.rename_accounts" "{
 'Expenses:Taxes' : 'Income:Taxes',
 }"
```
See README.md in individual directories for how to configure each plugin.

### Disabling plugins during the import process

In general, no plugins should run on the source files that are passed to
`smart_importer`. Here's [an article](https://reds-rants.netlify.app/personal-finance/automatically-categorizing-postings/)
that shows how.

In short (this is for `zsh`, adapt to your shell as needed):
```
bean-extract my.import -f <(echo 'plugin "beancount.plugins.auto_accounts"'; cat ${INGEST_ROOT}/../source/*) $file
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/redstreet/beancount_reds_plugins",
    "name": "beancount-reds-plugins",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "plugins double-entry banking beancount accounting",
    "author": "Red Street",
    "author_email": "redstreet@users.noreply.github.com",
    "download_url": "https://files.pythonhosted.org/packages/67/93/48ef31e6c6ed5f09896947a0b40eaf2ad69d15b9a9687b6a94596aa9a249/beancount_reds_plugins-0.4.0.tar.gz",
    "platform": null,
    "description": "# beancount-reds-plugins\n\nA collection of plugins for [Beancount](https://beancount.github.io/), software for\n[plain text, double entry bookkeeping](https://plaintextaccounting.org/).\nSee README.md in individual directories for plugin specific documentation.\n\n## Plugin list:\n- __[autoclose_tree](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/autoclose_tree#readme)__:\n  automatically closes all of an account's descendants when an account is closed.\n- __[capital_gains_classifier](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/capital_gains_classifier#readme)__:\n  rebooks capital gains into separate long and short accounts, and separate gains and\n  losses accounts\n- __[effective_date](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/effective_date#readme)__:\n  enables per-posting dates (each posting in a transaction can have a different date)\n- __[opengroup](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/opengroup#readme)__:\n  Inserts open statements for sets of accounts based on specifiable rules.\n- __[rename_accounts](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/rename_accounts#readme)__:\n  rename arbitrary accounts on the fly (eg: move Taxes from Expenses to Income when you\n  temporarily want to view all your Expenses except taxes)\n- __[zerosum](https://github.com/redstreet/beancount_reds_plugins/tree/master/beancount_reds_plugins/zerosum#readme)__:\n  find matching pairs of postings that sum up to zero. Useful in de-duplication, and\n  tracking things such as reimbursements, rebates, etc.\n\n## Installation\n`pip3 install beancount-reds-plugins`\n\nOr to install the bleeding edge version from git:\n\n`pip3 install git+https://github.com/redstreet/beancount_reds_plugins`\n\n## Usage\nInvoke and configure a plugin by including it in your beancount source. For example,\ninvoke the `rename_accounts` plugin like so:\n\n```python\nplugin \"beancount_reds_plugins.rename_accounts.rename_accounts\" \"{\n 'Expenses:Taxes' : 'Income:Taxes',\n }\"\n```\nSee README.md in individual directories for how to configure each plugin.\n\n### Disabling plugins during the import process\n\nIn general, no plugins should run on the source files that are passed to\n`smart_importer`. Here's [an article](https://reds-rants.netlify.app/personal-finance/automatically-categorizing-postings/)\nthat shows how.\n\nIn short (this is for `zsh`, adapt to your shell as needed):\n```\nbean-extract my.import -f <(echo 'plugin \"beancount.plugins.auto_accounts\"'; cat ${INGEST_ROOT}/../source/*) $file\n```\n",
    "bugtrack_url": null,
    "license": "GPL-3.0",
    "summary": "A collection of plugins for Beancount",
    "version": "0.4.0",
    "project_urls": {
        "Homepage": "https://github.com/redstreet/beancount_reds_plugins"
    },
    "split_keywords": [
        "plugins",
        "double-entry",
        "banking",
        "beancount",
        "accounting"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "55ab307c9b30229f6e75fcad14008e06291d93452b577ebd50412c1f30c0df49",
                "md5": "acccf333061bdfdb3e43123296ce3f42",
                "sha256": "186d4d625dcd094043b489f942d44b8cb603a2d5710083e0ce2ea56c2dd133fa"
            },
            "downloads": -1,
            "filename": "beancount_reds_plugins-0.4.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "acccf333061bdfdb3e43123296ce3f42",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 55169,
            "upload_time": "2025-07-14T16:59:40",
            "upload_time_iso_8601": "2025-07-14T16:59:40.730241Z",
            "url": "https://files.pythonhosted.org/packages/55/ab/307c9b30229f6e75fcad14008e06291d93452b577ebd50412c1f30c0df49/beancount_reds_plugins-0.4.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "679348ef31e6c6ed5f09896947a0b40eaf2ad69d15b9a9687b6a94596aa9a249",
                "md5": "3c1ecf13de15c39bdd2ac4ed42c63a36",
                "sha256": "33ed652d9d08c6c1de472900d92a7695f6b5f864c3ad23812acd68e756ed0565"
            },
            "downloads": -1,
            "filename": "beancount_reds_plugins-0.4.0.tar.gz",
            "has_sig": false,
            "md5_digest": "3c1ecf13de15c39bdd2ac4ed42c63a36",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 53180,
            "upload_time": "2025-07-14T16:59:41",
            "upload_time_iso_8601": "2025-07-14T16:59:41.569437Z",
            "url": "https://files.pythonhosted.org/packages/67/93/48ef31e6c6ed5f09896947a0b40eaf2ad69d15b9a9687b6a94596aa9a249/beancount_reds_plugins-0.4.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-14 16:59:41",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "redstreet",
    "github_project": "beancount_reds_plugins",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "beancount",
            "specs": [
                [
                    "==",
                    "2.3.5"
                ]
            ]
        },
        {
            "name": "python_dateutil",
            "specs": [
                [
                    "==",
                    "2.8.1"
                ]
            ]
        },
        {
            "name": "setuptools",
            "specs": [
                [
                    "==",
                    "70.0.0"
                ]
            ]
        }
    ],
    "lcname": "beancount-reds-plugins"
}
        
Elapsed time: 1.67299s