 	:group 'ledger-reconcile)
 
 (defcustom ledger-reconcile-buffer-line-format "%(date)s %-4(code)s %-50(payee)s %-30(account)s %15(amount)s\n"
-	"Format string for the ledger reconcile posting format. Available fields are date, status, code, payee, account, amount"
+	"Format string for the ledger reconcile posting
+format. Available fields are date, status, code, payee, account,
+amount.  The format for each field is %WIDTH(FIELD), WIDTH can be
+preced by a minus sign which mean to left justify and pad the
+field."
 	:type 'string
 	:group 'ledger-reconcile)
 


(defun ledger-reconcile-compile-format-string (fstr)
	"return a function that implements the format string in fstr"

	`(lambda (date code status payee account amount)
		 (format "%s %-4s %-50s %-30s %15s\n" date code payee account amount)))

(defun ledger-reconcile-format-posting (beg where fmt date code status payee account amount)
	(insert (funcall fmt date code status payee account amount))

              (unless (eobp)
                (if (looking-at "(")
                    (read (current-buffer)))))))  ;current-buffer is the *temp* created above
				 (fmt (ledger-reconcile-compile-format-string ledger-reconcile-buffer-line-format)))
    (if (and ledger-success (> (length xacts) 0))
        (progn
					(insert (format ledger-reconcile-buffer-header account))
