From 46b54e5bb42f26a57f6cdbedf83bd80c6c717a4f Mon Sep 17 00:00:00 2001 From: Lars Ingebrigtsen Date: Wed, 24 Feb 2021 20:32:09 +0100 Subject: [PATCH] Improve quail-update-leim-list-file error messaging * lisp/international/quail.el (quail-update-leim-list-file): Give a better error message. --- lisp/international/quail.el | 41 ++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/lisp/international/quail.el b/lisp/international/quail.el index 67ea00665fc..f52747084b2 100644 --- a/lisp/international/quail.el +++ b/lisp/international/quail.el @@ -3066,28 +3066,31 @@ of each directory." ;; Don't get fooled by commented-out code. (while (re-search-forward "^[ \t]*(quail-define-package" nil t) (goto-char (match-beginning 0)) - (condition-case nil - (let ((form (read (current-buffer)))) - (with-current-buffer list-buf - (insert - (format "(register-input-method + (let (form) + (condition-case err + (progn + (setq form (read (current-buffer))) + (with-current-buffer list-buf + (insert + (format "(register-input-method %S %S '%s %S %S %S)\n" - (nth 1 form) ; PACKAGE-NAME - (nth 2 form) ; LANGUAGE - 'quail-use-package ; ACTIVATE-FUNC - (nth 3 form) ; PACKAGE-TITLE - (progn ; PACKAGE-DESCRIPTION (one line) - (string-match ".*" (nth 5 form)) - (match-string 0 (nth 5 form))) - (file-relative-name ; PACKAGE-FILENAME - (file-name-sans-extension (car pkg-list)) - (car dirnames)))))) - (error - ;; Ignore the remaining contents of this file. - (goto-char (point-max)) - (message "Some part of \"%s\" is broken" (car pkg-list)))))) + (nth 1 form) ; PACKAGE-NAME + (nth 2 form) ; LANGUAGE + 'quail-use-package ; ACTIVATE-FUNC + (nth 3 form) ; PACKAGE-TITLE + (progn ; PACKAGE-DESCRIPTION (one line) + (string-match ".*" (nth 5 form)) + (match-string 0 (nth 5 form))) + (file-relative-name ; PACKAGE-FILENAME + (file-name-sans-extension (car pkg-list)) + (car dirnames)))))) + (error + ;; Ignore the remaining contents of this file. + (goto-char (point-max)) + (message "Some part of \"%s\" is broken: %s in %s" + (car pkg-list) err form)))))) (setq pkg-list (cdr pkg-list))) (setq quail-dirs (cdr quail-dirs) dirnames (cdr dirnames)))) -- 2.39.2