[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/idlwave 677dd1d6e3 278/360: Deal with XML-parse's poor
From: |
ELPA Syncer |
Subject: |
[elpa] externals/idlwave 677dd1d6e3 278/360: Deal with XML-parse's poor handling of underscores |
Date: |
Sun, 28 Apr 2024 00:59:33 -0400 (EDT) |
branch: externals/idlwave
commit 677dd1d6e3b7ed1c2ebbfaff3bc41bd71a15176c
Author: JD Smith <jdtsmith@gmail.com>
Commit: JD Smith <jdtsmith@gmail.com>
Deal with XML-parse's poor handling of underscores
Can't handle X_Y in ATTLIST/ELEMENT.
---
idlwave.el | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/idlwave.el b/idlwave.el
index 63545a4cff..0cf570df99 100644
--- a/idlwave.el
+++ b/idlwave.el
@@ -4954,7 +4954,21 @@ Cache to disk for quick recovery."
(if (not (file-readable-p catalog-file))
(error "Cannot read XML routine info file: %s" catalog-file)))
(message "Reading XML routine info...")
- (setq rinfo (xml-parse-file catalog-file))
+ (require 'xml)
+ (setq rinfo
+ (let ((xml-validating-parser t))
+ (condition-case nil
+ (xml-parse-file catalog-file)
+ (error ;; Deal with XML.el bug: underscores in ATTLIST/ELEMENT
names hang
+ (setq xml-validating-parser nil)
+ (with-temp-buffer
+ (insert-file-contents catalog-file)
+ (while
+ (re-search-forward
+ "^\\s-*<!\\(ATTLIST\\|ELEMENT\\) *
[A-Z]+_[A-Z]+.*>\\s-*[\r\n]"
+ nil t)
+ (replace-match ""))
+ (xml-parse-region (point-min) (point-max)))))))
(message "Reading XML routine info...done")
(setq rinfo (assq 'CATALOG rinfo))
(unless rinfo (error "Failed to parse XML routine info"))
- [elpa] externals/idlwave 8c2b4950e6 160/360: - Be more careful about expanding help dir for non-system help., (continued)
- [elpa] externals/idlwave 8c2b4950e6 160/360: - Be more careful about expanding help dir for non-system help., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 93e6504404 163/360: - (idlwave-push-mark): Removed obsolete, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave fa3390f48d 214/360: Added, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave ba16611ec5 240/360: Use 'with-current-buffer' instead of save-excursion, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 971611a29d 203/360: Help details., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 869416181d 182/360: Copyright/date, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave cc8cc7e5bf 225/360: Correct bug in help loc., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave d3672014de 222/360: Updated dates., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave ed5c2c4cd1 192/360: Improve error detect regexp for multi-line errors, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave d845f124b4 246/360: Use argument %s to message/error, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 677dd1d6e3 278/360: Deal with XML-parse's poor handling of underscores,
ELPA Syncer <=
- [elpa] externals/idlwave e9d19083b8 279/360: Check for idl_catalog.xml directly., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 985427dd6a 274/360: Calculate beginning/end of commented paragraphs., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave ed1c40082b 264/360: Finish defun (was not)., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 5d7b645a67 262/360: Comments, whitespace, and typos. Boring., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave bc3cbb8b06 288/360: Avoid using cl macros., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 3932828c57 285/360: Don't use integers as anchors anymore., ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 50c75e98ca 266/360: Use custom face for debug stop line, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave cc80618cbe 348/360: port from README, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 90b181e64e 297/360: Update XML scanning for more recent IDL versions:, ELPA Syncer, 2024/04/28
- [elpa] externals/idlwave 6c9137c2da 324/360: Run hooks later and wait for initial commands., ELPA Syncer, 2024/04/28