From eed1d8e53ea3f75f0c6a84ab744f8310a4778981 Mon Sep 17 00:00:00 2001 From: Craig Earls Date: Mon, 1 Apr 2013 20:48:00 -0700 Subject: ledger-read-commodity-string now calls ledger-split-commodity-string --- lisp/ldg-commodities.el | 28 +++++++++------------------- 1 file changed, 9 insertions(+), 19 deletions(-) (limited to 'lisp') diff --git a/lisp/ldg-commodities.el b/lisp/ldg-commodities.el index 842613c6..8755166d 100644 --- a/lisp/ldg-commodities.el +++ b/lisp/ldg-commodities.el @@ -127,25 +127,15 @@ longer ones are after the value." (concat commodity " " val)))) (defun ledger-read-commodity-string (prompt) - "Return a commoditizd value (val 'comm') from COMM. -Assumes a space between the value and the commodity." - (let ((parts (split-string (read-from-minibuffer - (concat prompt " (" ledger-reconcile-default-commodity "): "))))) - (if parts - (if (/= (length parts) 2) ;;assume a number was entered and - ;;use default commodity - (list (string-to-number (car parts)) - ledger-reconcile-default-commodity) - (let ((valp1 (string-to-number (car parts))) - (valp2 (string-to-number (cadr parts)))) - (cond ((and (= valp1 valp2) (= 0 valp1)) ;; means neither contained a valid number (both = 0) - (list 0 "")) - ((and (/= 0 valp1) (= valp2 0)) - (list valp1 (cadr parts))) - ((and (/= 0 valp2) (= valp1 0)) - (list valp2 (car parts))) - (t - (error "Cannot understand commodity")))))))) + (let ((str (read-from-minibuffer + (concat prompt " (" ledger-reconcile-default-commodity "): "))) + comm) + (if (> (length str) 0) + (progn + (setq comm (ledger-split-commodity-string str)) + (if (cadr comm) + comm + (list (car comm) ledger-reconcile-default-commodity)))))) (provide 'ldg-commodities) -- cgit v1.2.3