diff options
author | Sam Brightman <sambrightman@users.noreply.github.com> | 2018-01-27 11:51:43 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-27 11:51:43 +0000 |
commit | 53c9fae476806cf9cbfca6ca9d6675dbeab18aef (patch) | |
tree | a75992b96e7ccda59e5988d5b9ca2d52af1555d9 | |
parent | f412aa65814afe715523f77a0f2cba528284a50c (diff) | |
parent | 38880f401fa2e9377699ccc4cc949773f9551080 (diff) |
Merge pull request #36 from sambrightman/kill-autoloads-buffer
Kill buffer containing autoloads for installed package
-rw-r--r-- | epl.el | 19 |
1 files changed, 17 insertions, 2 deletions
@@ -630,7 +630,21 @@ packages." ;;; Package operations -(defalias 'epl-install-file 'package-install-file) +(defun epl-install-file (file) + "Install a package from FILE, like `package-install-file'." + (interactive (advice-eval-interactive-spec + (cadr (interactive-form #'package-install-file)))) + (apply #'package-install-file (list file)) + (let ((package (epl-package-from-file file))) + (unless (epl-package--package-desc-p package) + (epl--kill-autoload-buffer package)))) + +(defun epl--kill-autoload-buffer (package) + "Kill the buffer associated with autoloads for PACKAGE." + (let* ((auto-name (format "%s-autoloads.el" (epl-package-name package))) + (generated-autoload-file (expand-file-name auto-name (epl-package-directory package))) + (buf (find-buffer-visiting generated-autoload-file))) + (when buf (kill-buffer buf)))) (defun epl-package-install (package &optional force) "Install a PACKAGE. @@ -642,7 +656,8 @@ non-nil, install PACKAGE, even if it is already installed." (package-install (epl-package-description package)) ;; The legacy API installs by name. We have no control over versioning, ;; etc. - (package-install (epl-package-name package))))) + (package-install (epl-package-name package)) + (epl--kill-autoload-buffer package)))) (defun epl-package-delete (package) "Delete a PACKAGE. |