ledger-mode: Add `ledger-remove-effective-date'.
Signed-off-by: Moritz Ulrich <moritz@tarn-vedra.de>
This commit is contained in:
parent
15b94e8f44
commit
6dbb36f525
1 changed files with 23 additions and 0 deletions
|
|
@ -145,6 +145,29 @@ Can indent, complete or align depending on context."
|
||||||
|
|
||||||
(defvar ledger-mode-abbrev-table)
|
(defvar ledger-mode-abbrev-table)
|
||||||
|
|
||||||
|
(defun ledger-remove-effective-date ()
|
||||||
|
"Removes the effective date from a transaction or posting."
|
||||||
|
(interactive)
|
||||||
|
(let ((context (car (ledger-context-at-point))))
|
||||||
|
(save-excursion
|
||||||
|
(save-restriction
|
||||||
|
(narrow-to-region (point-at-bol) (point-at-eol))
|
||||||
|
(beginning-of-line)
|
||||||
|
(cond ((eq 'xact context)
|
||||||
|
(re-search-forward ledger-iso-date-regexp)
|
||||||
|
(when (= (char-after) ?=)
|
||||||
|
(let ((eq-pos (point)))
|
||||||
|
(delete-region
|
||||||
|
eq-pos
|
||||||
|
(re-search-forward ledger-iso-date-regexp)))))
|
||||||
|
((eq 'acct-transaction context)
|
||||||
|
;; Match "; [=date]" & delete string
|
||||||
|
(when (re-search-forward
|
||||||
|
(concat ledger-comment-regex
|
||||||
|
"\\[=" ledger-iso-date-regexp "\\]")
|
||||||
|
nil 'noerr)
|
||||||
|
(replace-match ""))))))))
|
||||||
|
|
||||||
(defun ledger-insert-effective-date ()
|
(defun ledger-insert-effective-date ()
|
||||||
(interactive)
|
(interactive)
|
||||||
(let ((context (car (ledger-context-at-point)))
|
(let ((context (car (ledger-context-at-point)))
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue