mirror of
https://github.com/masscollaborationlabs/emacs.git
synced 2025-07-04 19:29:37 +00:00
Fix bad interaction between bind-keys* and the :package keyword
Fixes https://github.com/jwiegley/use-package/issues/558
This commit is contained in:
parent
10fd4577d0
commit
a090961f10
2 changed files with 11 additions and 4 deletions
|
@ -222,8 +222,10 @@ function symbol (unquoted)."
|
|||
;; jww (2016-02-26): This is a hack; this whole function needs to be
|
||||
;; rewritten to normalize arguments the way that use-package.el does.
|
||||
(if (and (eq (car args) :package)
|
||||
(not (eq (car (cdr (cdr args))) :map)))
|
||||
(not (eq (car (cdr (cdr args))) :map))
|
||||
(not keymap))
|
||||
(setq args (cons :map (cons 'global-map args))))
|
||||
|
||||
(let ((map keymap)
|
||||
doc
|
||||
prefix-map
|
||||
|
@ -267,7 +269,7 @@ function symbol (unquoted)."
|
|||
|
||||
(cl-flet
|
||||
((wrap (map bindings)
|
||||
(if (and map pkg (not (eq map 'global-map)))
|
||||
(if (and map pkg (not (memq map '(global-map override-global-map))))
|
||||
`((if (boundp ',map)
|
||||
(progn ,@bindings)
|
||||
(eval-after-load
|
||||
|
@ -320,8 +322,7 @@ function symbol (unquoted)."
|
|||
|
||||
;;;###autoload
|
||||
(defmacro bind-keys* (&rest args)
|
||||
(macroexp-progn
|
||||
(bind-keys-form args 'override-global-map)))
|
||||
(macroexp-progn (bind-keys-form args 'override-global-map)))
|
||||
|
||||
(defun get-binding-description (elem)
|
||||
(cond
|
||||
|
|
|
@ -1477,6 +1477,12 @@
|
|||
(use-package-ensure-elpa 'hydra '(t) 'nil)
|
||||
(require 'hydra nil nil))))
|
||||
|
||||
(ert-deftest use-package-test/558 ()
|
||||
(match-expansion
|
||||
(bind-keys* :package org-ref
|
||||
("C-c C-r" . org-ref-helm-insert-cite-link))
|
||||
`(bind-key "C-c C-r" #'org-ref-helm-insert-cite-link override-global-map nil)))
|
||||
|
||||
(ert-deftest bind-key/:prefix-map ()
|
||||
(match-expansion
|
||||
(bind-keys :prefix "<f1>"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue