From cf170799d3bf2fa18f9f1b30fc1f0d69b6da14c5 Mon Sep 17 00:00:00 2001 From: Matthew Bauer Date: Wed, 21 Feb 2018 21:46:40 -0600 Subject: [PATCH] =?UTF-8?q?Remove=20=E2=80=98require=20gist=E2=80=99=20usa?= =?UTF-8?q?ge?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This slows down loading gist.el. Instead to get the ‘@’ key to work, you must enable the new ‘gist-dired-mode’. To use just do add a hook in dired-mode like this: (add-hook 'dired-mode-hook 'gist-dired-mode) This is possible to setup through use-package: (use-package gist :ensure nil :commands gist-mode :hook (dired-mode . gist-dired-mode)) --- gist.el | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/gist.el b/gist.el index 9765c23..eb36b45 100644 --- a/gist.el +++ b/gist.el @@ -776,13 +776,20 @@ put it into `kill-ring'." ;;; Dired integration -(require 'dired) - (defun dired-do-gist (&optional private) (interactive "P") (gist-files (dired-get-marked-files) private)) -(define-key dired-mode-map "@" 'dired-do-gist) +;;;###autoload +(define-minor-mode gist-dired-mode + "Minor mode for using gist within dired. + +\\{gist-dired-mode-map}" + :keymap (let ((map (make-sparse-keymap))) + (define-key map "@" 'dired-do-gist) + map) + (unless (derived-mode-p 'dired-mode) + (setq gist-dired-mode nil))) (provide 'gist) ;;; gist.el ends here