# Csv2qif TODO: Write a gem description ## Installation Add this line to your application's Gemfile: gem 'csv2qif' And then execute: $ bundle Or install it yourself as: $ gem install csv2qif ## Usage cvs2qif -- format converter Usage: csv2qif [options] [file...] The csv2qif utility reads the specified csv files, or the standard input if no files are specified, converting the input to qif format. The output is written to either the standart output if read from standard input or file with the same base name as input and qif extension or to a file specified as an option. The CONDITION and COLUMN below are in the simplest case represented by just one lower case letter (a-z) indicating the the csv column which should be mapped to a particular line in a qif record. As a minimum a date and amount column should be mapped e.g. #> csv2qif -D a --amount b file.csv will assume the first column (a) in the csv file is date and second (b) the amount. Those are as well defaults. CONDITION and COLUMNS may as well be any ruby expression. In this case the expression will be evaluated in a context in which the column names (a-z) are available as methods returning the value in the corresponding column or nil if empty. Options are: -b, --bundle BUNDLE Name of an option bundle Default: default -t, --type Type Type of acoount: CCard, Bank or Cash Default: CCard -w, --where CONDITION only records satisfying CONDITION will be converted -s, --field_separator SEPARATOR field seprator. Default: , -m, --mappings MAPPINGS comma separated list of mappings in the format: /pattern/replacement/ Use for modifying categories -d, --header N number of rows occupied by headers before actual data -f, --date_format Format date format in the csv file -h, --help Show this help message. QIF Record options: -D, --date COLUMN Date -T, --amount COLUMN Amount -C, --cleared COLUMN Cleared Status -N, --num COLUMN Num (check or reference number) -P, --payee COLUMN Payee -M, --memo COLUMN Memo -A, --address COLUMN Address (up to five lines; the sixth line is an optional message) -L, --category COLUMN Category (Category/Subcategory/Transfer/Class) ## Contributing 1. Fork it 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create new Pull Request