(ledger-do-reconcile): If no output at all is generated by the "emacs"
command, do not trigger a Lisp error.
This commit is contained in:
parent
5bc7f5d057
commit
0fdc3d67b6
1 changed files with 13 additions and 11 deletions
20
ledger.el
20
ledger.el
|
|
@ -138,9 +138,10 @@ Return the difference in the format of a time value."
|
||||||
(ledger-buf (current-buffer))
|
(ledger-buf (current-buffer))
|
||||||
exit-code)
|
exit-code)
|
||||||
(if (string-match "\\([0-9]+\\)/\\([0-9]+\\)/\\([0-9]+\\)" date)
|
(if (string-match "\\([0-9]+\\)/\\([0-9]+\\)/\\([0-9]+\\)" date)
|
||||||
(setq date (encode-time 0 0 0 (string-to-int (match-string 3 date))
|
(setq date
|
||||||
(string-to-int (match-string 2 date))
|
(encode-time 0 0 0 (string-to-number (match-string 3 date))
|
||||||
(string-to-int (match-string 1 date)))))
|
(string-to-number (match-string 2 date))
|
||||||
|
(string-to-number (match-string 1 date)))))
|
||||||
(ledger-find-slot date)
|
(ledger-find-slot date)
|
||||||
(save-excursion
|
(save-excursion
|
||||||
(if (re-search-backward "^Y " nil t)
|
(if (re-search-backward "^Y " nil t)
|
||||||
|
|
@ -328,6 +329,10 @@ Return the difference in the format of a time value."
|
||||||
(set-buffer-modified-p nil)
|
(set-buffer-modified-p nil)
|
||||||
(ledger-display-balance))
|
(ledger-display-balance))
|
||||||
|
|
||||||
|
(defun ledger-reconcile-quit ()
|
||||||
|
(interactive)
|
||||||
|
(kill-buffer (current-buffer)))
|
||||||
|
|
||||||
(defun ledger-reconcile-finish ()
|
(defun ledger-reconcile-finish ()
|
||||||
(interactive)
|
(interactive)
|
||||||
(save-excursion
|
(save-excursion
|
||||||
|
|
@ -351,9 +356,10 @@ Return the difference in the format of a time value."
|
||||||
(ledger-run-ledger buf "--uncleared" "emacs" account)))
|
(ledger-run-ledger buf "--uncleared" "emacs" account)))
|
||||||
(when (= 0 exit-code)
|
(when (= 0 exit-code)
|
||||||
(goto-char (point-min))
|
(goto-char (point-min))
|
||||||
|
(unless (eobp)
|
||||||
(unless (looking-at "(")
|
(unless (looking-at "(")
|
||||||
(error (buffer-string)))
|
(error (buffer-string)))
|
||||||
(read (current-buffer)))))))
|
(read (current-buffer))))))))
|
||||||
(dolist (item items)
|
(dolist (item items)
|
||||||
(dolist (xact (nthcdr 6 item))
|
(dolist (xact (nthcdr 6 item))
|
||||||
(let ((beg (point))
|
(let ((beg (point))
|
||||||
|
|
@ -408,11 +414,7 @@ Return the difference in the format of a time value."
|
||||||
(define-key map [?p] 'previous-line)
|
(define-key map [?p] 'previous-line)
|
||||||
(define-key map [?r] 'ledger-auto-reconcile)
|
(define-key map [?r] 'ledger-auto-reconcile)
|
||||||
(define-key map [?s] 'ledger-reconcile-save)
|
(define-key map [?s] 'ledger-reconcile-save)
|
||||||
(define-key map [?q]
|
(define-key map [?q] 'ledger-reconcile-quit)
|
||||||
(function
|
|
||||||
(lambda ()
|
|
||||||
(interactive)
|
|
||||||
(kill-buffer (current-buffer)))))
|
|
||||||
(use-local-map map)))
|
(use-local-map map)))
|
||||||
|
|
||||||
;; A sample function for $ users
|
;; A sample function for $ users
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue