From 83f4abe10056798d97003118f18705773d21be30 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Wed, 8 Feb 2017 01:58:56 -0500 Subject: [PATCH] autoload/packages: more reliable self-parser for doom-read-packages --- core/autoload/packages.el | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/core/autoload/packages.el b/core/autoload/packages.el index 5200f3cf4..53bda0b39 100644 --- a/core/autoload/packages.el +++ b/core/autoload/packages.el @@ -98,15 +98,17 @@ fed to `doom/packages-delete'." (unless (symbolp sym) (error "%s is not a valid symbol" sym)) (with-temp-buffer - (insert-file-contents file) + (buffer-disable-undo) + (emacs-lisp-mode) + (insert-file-contents file nil nil nil t) (goto-char (point-min)) (let ((regexp (concat "\\(^\\|\\s-\\)(" (symbol-name sym) " ")) sexps) (while (re-search-forward regexp nil t) - (let ((sexp (cdr-safe (save-excursion - (beginning-of-defun) - (sexp-at-point))))) - (push sexp sexps))) + (unless (nth 4 (syntax-ppss)) + (save-excursion + (beginning-of-defun) + (push (cdr (sexp-at-point)) sexps)))) (reverse sexps)))) ;;;###autoload