`(should (pcase (expand-minimally ,form)
,@(mapcar #'(lambda (x) (list x t)) value))))
-(defun fix-expansion ()
- (interactive)
- (save-excursion
- (unless (looking-at "(match-expansion")
- (backward-up-list))
- (when (looking-at "(match-expansion")
- (re-search-forward "(\\(use-package\\|bind-key\\)")
- (goto-char (match-beginning 0))
- (let ((decl (read (current-buffer))))
- (kill-sexp)
- (let (vars)
- (catch 'exit
- (save-excursion
- (while (ignore-errors (backward-up-list) t)
- (when (looking-at "(let\\s-+")
- (goto-char (match-end 0))
- (setq vars (read (current-buffer)))
- (throw 'exit t)))))
- (eval
- `(let (,@ (append vars
- '((use-package-verbose 'errors)
- (use-package-expand-minimally t))))
- (insert ?\n ?\` (pp-to-string (macroexpand-1 decl))))))))))
-
-(bind-key "C-c C-u" #'fix-expansion emacs-lisp-mode-map)
-
(ert-deftest use-package-test-recognize-function ()
(should (use-package-recognize-function nil t))
(should-not (use-package-recognize-function nil))