lang/ledger: polish keybindings

Fixes #818
This commit is contained in:
Henrik Lissner 2018-08-22 02:35:55 +02:00
parent ecb01dbdfc
commit 2694a42fdb
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -12,9 +12,12 @@
;; Restore leader key in ledger reports ;; Restore leader key in ledger reports
(after! ledger-mode (after! ledger-mode
(define-key! (ledger-report-mode-map ledger-reconcile-mode-map) (define-key! ledger-report-mode-map
(kbd doom-leader-key) nil) (kbd "C-c C-c") #'ledger-report-edit-report
(define-key ledger-reconcile-mode-map [tab] #'ledger-reconcile-toggle)) (kbd "C-c C-r") #'ledger-report-redo
(kbd "C-c C-s") #'ledger-report-save)
(define-key ledger-reconcile-mode-map
[tab] #'ledger-reconcile-toggle))
(def-package! flycheck-ledger (def-package! flycheck-ledger
@ -24,4 +27,30 @@
(def-package! evil-ledger (def-package! evil-ledger
:when (featurep! :feature evil +everywhere) :when (featurep! :feature evil +everywhere)
:hook (ledger-mode . evil-ledger-mode)) :hook (ledger-mode . evil-ledger-mode)
:config
(set-evil-initial-state! 'ledger-report-mode 'normal)
(evil-define-key* 'normal ledger-report-mode-map
"q" #'ledger-report-quit
"RET" #'ledger-report-edit-report
"gd" #'ledger-report-visit-source
"gr" #'ledger-report-redo)
(evil-define-key* 'motion ledger-mode-map
"]]" #'ledger-navigate-next-xact-or-directive
"[[" #'ledger-navigate-prev-xact-or-directive)
(map! :map ledger-mode-map
:localleader
:n "a" #'ledger-add-transaction
:n "t" #'ledger-toggle-current
:n "d" #'ledger-delete-current-transaction
:n "r" #'ledger-report
:n "R" #'ledger-reconcile
:n "S" #'ledger-schedule-upcoming
:v "s" #'ledger-sort-region
(:prefix "g"
:n "s" #'ledger-display-ledger-stats
:n "b" #'ledger-display-balance-at-point))
;; Fix inaccurate keybind message
(defun +ledger*fix-key-help (&rest _)
(message "q to quit; gr to redo; RET to edit; C-c C-s to save"))
(advice-add #'ledger-report :after #'+ledger*fix-key-help))