Coder Social home page Coder Social logo

clipf's Introduction

Contacts:
Developer: Galtsev Denis <[email protected]>
Project site: http://code.google.com/p/clipf/

Installation:

Not required. It is simple python script. Put it to any directory in Your PATH

Configuration:

Not required. Program would create config directory and empty database
at start, if config directory doesn't exists (default to "~/.clipf/"). 

Usage description:

  clipf [<config_path>]
   - start clipf with coniguration in <config_path> (default to
     ~/.clipf). If config_path doesn't exists, it would be created 
     with appropriate defaults.

All commands described in embedded help. Type "help" in command line
to see list of available commands, and "help <command>" for help
about particular command.

Before further use, You need to enter some income/expense categories:

    >prod add [-d] <prod_code> <prod_name>

 -d options mark this category as debt (income). Category is credit (expense) by default.

Examples:
    # enter category codes with trailing period
    >prod add meal. Meals
    # p shortcuts to prod
    >p add meal.drink. Drinks
    # Enter category names with spaces in quotes
    >p add meal.drink.beer "My preferred beer"
    >p add meal.juice Juice
    >p add meal.cookie Cookie
    >p add meal.nuts "Roasted nuts"
    # You need identify category as income during creation
    >p add -d salary Salary

Now You can see Your category list:
    >prod ls [<prod_group>]

 - show _one_ level of category tree (default to root).

Example:

    >prod ls
    >prod ls meal.

Remove products with:

    >prod rm <prod_code>


Now You can enter some operations:

    >op add [-a <account>] [-d <date>] <prod_code> <amount> [<note>]

  * -a <account> - override default account for this operation.
  * -d <date> - override default date for this operation. Enter date in "YYYY-MM-DD" format.

Examples

    # Entering starting remain as salary
    >op add salary 450.0 "Starting remain"
    # now some expenses:
    >op add meal.drink.beer 5.5
    >op add meal.nuts 3.45 "Nuts to beer"
    >op add meal.cookie 2.80

Use tab completion to enter long prod codes (press <tab> once or twice during prod_code entering).

List entered operations with:

    >op ls [<prod_code_pattern>]

 - show list of operations in selected period (see {{{set}}})
  * <prod_code_pattern> - show operations with prod_code starting with prod_code_pattern

Delete operation: impossible. You need to enter the same operation with negative amount to revoke already entered operation.

Now let's list and change some defaults:

    # see list of options
    >show
    #set option value
    >set <option_name> <option_value>

options description:
  * *date* - default date for new operations
  * *acc* - default account for new operations
  * *date_from, date_to* - period for all listings ({{{op ls}}} and reports
  * *max_lines* - if show operation output in pager (less) if output length is more, than <max_lines> lines.

Reports

    >rep prod [<prod_group>]
    >rep acc


Example:

    # set period for reports
    >set date_from 2008-03-01
    >set date_to 2008_03-31
    # show totals by top level groups
    >rep prod
    # show details for meal. group
    >rep prod meal.
    # turnover by accounts
    >rep acc


Other useful features:

Program understand input stream redirection:

    $echo -e "set date_from 2008-04-01\nop ls" | clipf

 - this can be used to save reports.

You can setup aliases (shortcuts) for frequently used operations in config file (default to ~/.clipf/clipf.conf).
See configuration file for examples.


clipf's People

Watchers

 avatar  avatar

Forkers

fboaventura

clipf's Issues

sort item list

Item list appear in random order. Need to be sorted by item_code.

Original issue reported on code.google.com by [email protected] on 29 Apr 2008 at 9:05

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.