summaryrefslogtreecommitdiff
path: root/lisp/mpc.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/mpc.el')
-rw-r--r--lisp/mpc.el91
1 files changed, 42 insertions, 49 deletions
diff --git a/lisp/mpc.el b/lisp/mpc.el
index dc61ce78bda..ba95308bf67 100644
--- a/lisp/mpc.el
+++ b/lisp/mpc.el
@@ -1126,32 +1126,30 @@ If PLAYLIST is t or nil or missing, use the main playlist."
;;; The actual UI code ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(defvar mpc-mode-map
- (let ((map (make-sparse-keymap)))
- ;; (define-key map "\e" #'mpc-stop)
- (define-key map "q" #'mpc-quit)
- (define-key map "\r" #'mpc-select)
- (define-key map [(shift return)] #'mpc-select-toggle)
- (define-key map [mouse-2] #'mpc-select)
- (define-key map [S-mouse-2] #'mpc-select-extend)
- (define-key map [C-mouse-2] #'mpc-select-toggle)
- (define-key map [drag-mouse-2] #'mpc-drag-n-drop)
- ;; We use `always' because a binding to t is like a binding to nil.
- (define-key map [follow-link] :always)
- ;; But follow-link doesn't apply blindly to header-line and
- ;; mode-line clicks.
- (define-key map [header-line follow-link] #'ignore)
- (define-key map [mode-line follow-link] #'ignore)
- ;; Doesn't work because the first click changes the buffer, so the second
- ;; is applied elsewhere :-(
- ;; (define-key map [(double mouse-2)] #'mpc-play-at-point)
- (define-key map "p" #'mpc-pause)
- (define-key map "s" #'mpc-toggle-play)
- (define-key map ">" #'mpc-next)
- (define-key map "<" #'mpc-prev)
- (define-key map "g" #'mpc-seek-current)
- (define-key map "o" #'mpc-goto-playing-song)
- map))
+(defvar-keymap mpc-mode-map
+ ;; "ESC" #'mpc-stop
+ "q" #'mpc-quit
+ "RET" #'mpc-select
+ "S-<return>" #'mpc-select-toggle
+ "<mouse-2>" #'mpc-select
+ "S-<mouse-2>" #'mpc-select-extend
+ "C-<mouse-2>" #'mpc-select-toggle
+ "<drag-mouse-2>" #'mpc-drag-n-drop
+ ;; We use `always' because a binding to t is like a binding to nil.
+ "<follow-link>" :always
+ ;; But follow-link doesn't apply blindly to header-line and
+ ;; mode-line clicks.
+ "<header-line> <follow-link>" #'ignore
+ "<mode-line> <follow-link>" #'ignore
+ ;; Doesn't work because the first click changes the buffer, so the second
+ ;; is applied elsewhere :-(
+ ;; "<double-mouse-2>" #'mpc-play-at-point
+ "p" #'mpc-pause
+ "s" #'mpc-toggle-play
+ ">" #'mpc-next
+ "<" #'mpc-prev
+ "g" #'mpc-seek-current
+ "o" #'mpc-goto-playing-song)
(easy-menu-define mpc-mode-menu mpc-mode-map
"Menu for MPC mode."
@@ -1571,8 +1569,9 @@ when constructing the set of constraints."
(mpc-tagbrowser-refresh)
buf))))
-(defvar tag-browser-tagtypes
- (lazy-completion-table tag-browser-tagtypes
+(define-obsolete-variable-alias 'tag-browser-tagtypes 'mpc-tag-browser-tagtypes "29.1")
+(defvar mpc-tag-browser-tagtypes
+ (lazy-completion-table mpc-tag-browser-tagtypes
(lambda ()
(append '("Playlist" "Directory")
(mpc-cmd-tagtypes)))))
@@ -1583,7 +1582,7 @@ when constructing the set of constraints."
(list
(let ((completion-ignore-case t))
(intern
- (completing-read "Tag: " tag-browser-tagtypes nil 'require-match)))))
+ (completing-read "Tag: " mpc-tag-browser-tagtypes nil 'require-match)))))
(let* ((newbuf (mpc-tagbrowser-buf tag))
(win (get-buffer-window newbuf 0)))
(if win (select-window win)
@@ -1748,11 +1747,9 @@ Return non-nil if a selection was deactivated."
;; present (because we're in the non-selected part and the parent is
;; in the selected part).
-(defvar mpc-tagbrowser-dir-mode-map
- (let ((map (make-sparse-keymap)))
- (set-keymap-parent map mpc-tagbrowser-mode-map)
- (define-key map [?\M-\C-m] #'mpc-tagbrowser-dir-toggle)
- map))
+(defvar-keymap mpc-tagbrowser-dir-mode-map
+ :parent mpc-tagbrowser-mode-map
+ "M-RET" #'mpc-tagbrowser-dir-toggle)
;; (defvar mpc-tagbrowser-dir-keywords
;; '(mpc-tagbrowser-dir-hide-prefix))
@@ -1859,17 +1856,15 @@ A value of t means the main playlist.")
;;; Volume management ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(defvar mpc-volume-map
- (let ((map (make-sparse-keymap)))
- ;; Bind the up-events rather than the down-event, so the
- ;; `message' isn't canceled by the subsequent up-event binding.
- (define-key map [down-mouse-1] #'ignore)
- (define-key map [mouse-1] #'mpc-volume-mouse-set)
- (define-key map [header-line mouse-1] #'mpc-volume-mouse-set)
- (define-key map [header-line down-mouse-1] #'ignore)
- (define-key map [mode-line mouse-1] #'mpc-volume-mouse-set)
- (define-key map [mode-line down-mouse-1] #'ignore)
- map))
+(defvar-keymap mpc-volume-map
+ ;; Bind the up-events rather than the down-event, so the
+ ;; `message' isn't canceled by the subsequent up-event binding.
+ "<down-mouse-1>" #'ignore
+ "<mouse-1>" #'mpc-volume-mouse-set
+ "<header-line> <mouse-1>" #'mpc-volume-mouse-set
+ "<header-line> <down-mouse-1>" #'ignore
+ "<mode-line> <mouse-1>" #'mpc-volume-mouse-set
+ "<mode-line> <down-mouse-1>" #'ignore)
(defvar mpc-volume nil) (put 'mpc-volume 'risky-local-variable t)
@@ -1937,10 +1932,8 @@ A value of t means the main playlist.")
(defvar mpc-previous-window-config nil)
-(defvar mpc-songs-mode-map
- (let ((map (make-sparse-keymap)))
- (define-key map [remap mpc-select] #'mpc-songs-jump-to)
- map))
+(defvar-keymap mpc-songs-mode-map
+ "<remap> <mpc-select>" #'mpc-songs-jump-to)
(defvar mpc-songpointer-set-visible nil)