update packages
This commit is contained in:
@@ -92,7 +92,7 @@ Default is `ledger-default-date-format'."
|
||||
:type 'string
|
||||
:group 'ledger-reconcile)
|
||||
|
||||
(defcustom ledger-reconcile-target-prompt-string "Target amount for reconciliation "
|
||||
(defcustom ledger-reconcile-target-prompt-string "Target amount for reconciliation"
|
||||
"Prompt for reconcile target."
|
||||
:type 'string
|
||||
:group 'ledger-reconcile)
|
||||
@@ -522,7 +522,6 @@ Return a count of the uncleared transactions."
|
||||
(delete-char -1)) ;gets rid of the extra line feed at the bottom of the list
|
||||
(goto-char (point-min))
|
||||
(set-buffer-modified-p nil)
|
||||
(setq buffer-read-only t)
|
||||
|
||||
(length xacts)))
|
||||
|
||||
@@ -617,21 +616,37 @@ reconciliation, otherwise prompt for TARGET."
|
||||
(ledger-reconcile-change-target target)
|
||||
(ledger-display-balance))))))
|
||||
|
||||
(defvar ledger-reconcile-mode-abbrev-table)
|
||||
(defvar ledger-reconcile-target-history nil
|
||||
"Minibuffer history for `ledger-reconcile-change-target'")
|
||||
|
||||
(defun ledger-reconcile-change-target (&optional target)
|
||||
"Change the TARGET amount for the reconciliation process."
|
||||
(interactive)
|
||||
(setq ledger-reconcile-target (or target (ledger-read-commodity-string ledger-reconcile-target-prompt-string)))
|
||||
(setq ledger-reconcile-target
|
||||
(or target (ledger-read-commodity-string
|
||||
ledger-reconcile-target-prompt-string
|
||||
'ledger-reconcile-target-history)))
|
||||
(ledger-display-balance))
|
||||
|
||||
(defmacro ledger-reconcile-change-sort-key-and-refresh (sort-by)
|
||||
"Set the sort-key to SORT-BY."
|
||||
`(lambda ()
|
||||
(interactive)
|
||||
(defun ledger-reconcile--change-sort-key-and-refresh (sort-key)
|
||||
"Set the sort-key to SORT-KEY and refresh the buffer."
|
||||
(setq ledger-reconcile-sort-key sort-key)
|
||||
(ledger-reconcile-refresh))
|
||||
|
||||
(setq ledger-reconcile-sort-key ,sort-by)
|
||||
(ledger-reconcile-refresh)))
|
||||
(defmacro ledger-reconcile--define-sort-command (name expr)
|
||||
"Define a sorting command named ledger-reconcile-sort-by-NAME.
|
||||
|
||||
The command will re-sort the reconcile buffer by EXPR."
|
||||
(let ((command (intern (concat "ledger-reconcile-sort-by-" (symbol-name name)))))
|
||||
`(defun ,command ()
|
||||
,(concat "Sort reconcile buffer by " (symbol-name name) " and refresh.")
|
||||
(interactive)
|
||||
(ledger-reconcile--change-sort-key-and-refresh ,expr))))
|
||||
|
||||
(ledger-reconcile--define-sort-command file-order "(0)")
|
||||
(ledger-reconcile--define-sort-command amount "(amount)")
|
||||
(ledger-reconcile--define-sort-command date "(date)")
|
||||
(ledger-reconcile--define-sort-command payee "(payee)")
|
||||
|
||||
(defvar ledger-reconcile-mode-map
|
||||
(let ((map (make-sparse-keymap)))
|
||||
@@ -652,19 +667,16 @@ reconciliation, otherwise prompt for TARGET."
|
||||
(define-key map (kbd "b") #'ledger-display-balance)
|
||||
(define-key map (kbd "B") #'ledger-reconcile-display-balance-in-header-mode)
|
||||
|
||||
(define-key map (kbd "C-c C-o") (ledger-reconcile-change-sort-key-and-refresh "(0)"))
|
||||
|
||||
(define-key map (kbd "C-c C-a") (ledger-reconcile-change-sort-key-and-refresh "(amount)"))
|
||||
|
||||
(define-key map (kbd "C-c C-d") (ledger-reconcile-change-sort-key-and-refresh "(date)"))
|
||||
|
||||
(define-key map (kbd "C-c C-p") (ledger-reconcile-change-sort-key-and-refresh "(payee)"))
|
||||
(define-key map (kbd "C-c C-o") #'ledger-reconcile-sort-by-file-order)
|
||||
(define-key map (kbd "C-c C-a") #'ledger-reconcile-sort-by-amount)
|
||||
(define-key map (kbd "C-c C-d") #'ledger-reconcile-sort-by-date)
|
||||
(define-key map (kbd "C-c C-p") #'ledger-reconcile-sort-by-payee)
|
||||
map)
|
||||
"Keymap for `ledger-reconcile-mode'.")
|
||||
|
||||
(easy-menu-define ledger-reconcile-mode-menu ledger-reconcile-mode-map
|
||||
"Ledger reconcile menu"
|
||||
`("Reconcile"
|
||||
"Ledger reconcile menu."
|
||||
'("Reconcile"
|
||||
["Save" ledger-reconcile-save]
|
||||
["Refresh" ledger-reconcile-refresh]
|
||||
["Finish" ledger-reconcile-finish]
|
||||
@@ -674,10 +686,10 @@ reconciliation, otherwise prompt for TARGET."
|
||||
["Change Target Balance" ledger-reconcile-change-target]
|
||||
["Show Cleared Balance" ledger-display-balance]
|
||||
"---"
|
||||
["Sort by payee" ,(ledger-reconcile-change-sort-key-and-refresh "(payee)")]
|
||||
["Sort by date" ,(ledger-reconcile-change-sort-key-and-refresh "(date)")]
|
||||
["Sort by amount" ,(ledger-reconcile-change-sort-key-and-refresh "(amount)")]
|
||||
["Sort by file order" ,(ledger-reconcile-change-sort-key-and-refresh "(0)")]
|
||||
["Sort by payee" ledger-reconcile-sort-by-payee]
|
||||
["Sort by date" ledger-reconcile-sort-by-date]
|
||||
["Sort by amount" ledger-reconcile-sort-by-amount]
|
||||
["Sort by file order" ledger-reconcile-sort-by-file-order]
|
||||
"---"
|
||||
["Toggle Entry" ledger-reconcile-toggle]
|
||||
["Add Entry" ledger-reconcile-add]
|
||||
@@ -687,10 +699,9 @@ reconciliation, otherwise prompt for TARGET."
|
||||
["Visit Source" ledger-reconcile-visit]
|
||||
["Previous Entry" previous-line]
|
||||
"---"
|
||||
["Quit" ledger-reconcile-quit]
|
||||
))
|
||||
["Quit" ledger-reconcile-quit]))
|
||||
|
||||
(define-derived-mode ledger-reconcile-mode text-mode "Reconcile"
|
||||
(define-derived-mode ledger-reconcile-mode special-mode "Reconcile"
|
||||
"A mode for reconciling ledger entries.")
|
||||
|
||||
(define-minor-mode ledger-reconcile-display-balance-in-header-mode
|
||||
|
||||
Reference in New Issue
Block a user