APPROVE COMMIT 21.5
As discussed on XEmacs Beta (thread "elc-files in distribution
tar-ball can break build"), XEmacs 21.5.31, 21.5.32, and 21.5.33 fail
to build when configured with --no-mule. The relevant breakage
appears in the build log as:
Loading /usr/src/xemacs/xemacs-21.5.33/lisp/fontl-hooks.elc...
Loading /usr/src/xemacs/xemacs-21.5.33/lisp/auto-show.elc...
Loading /usr/src/xemacs/xemacs-21.5.33/lisp/paragraphs.elc...
*** Error in XEmacs initialization
(error "Loading this file requires xemacs, mule")
*** Backtrace
really-early-error-handler((error "Loading this file requires xemacs,
mule")) signal(error ("Loading this file requires xemacs, mule"))
# bind (args datum)
cerror("Loading this file requires xemacs, mule")
apply(cerror "Loading this file requires xemacs, mule" nil)
# bind (args datum)
error("Loading this file requires xemacs, mule")
(or (and (featurep (quote xemacs)) (featurep (quote mule))) (error
"Loading this file requires xemacs, mule"))
(Thank you Sean and Mats for the trace.)
Aidan diagnosed this as related to the inclusion of actual non-ASCII
characters in the file (thank you, Aidan). There was an additional
bug (use of "\uXXXX" escape sequences). These two bugs are fixed by
the attached patch which has been committed and pushed.
diff -r a2912073be85 -r 00a421d2b2ba lisp/ChangeLog
--- a/lisp/ChangeLog Wed Jun 19 09:30:30 2013 -0600
+++ b/lisp/ChangeLog Fri Jun 21 18:45:06 2013 +0900
@@ -1,3 +1,10 @@
+2013-06-21 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ Fix no-Mule build.
+
+ * paragraphs.el (sentence-end): Use octal, not Unicode, escapes.
+ * (sentence-end-base): Use non-ASCII only in Mule.
+
2013-06-17 Aidan Kehoe <kehoea(a)parhasard.net>
* process.el (process-synchronize-point): Moved to a label.
diff -r a2912073be85 -r 00a421d2b2ba lisp/paragraphs.el
--- a/lisp/paragraphs.el Wed Jun 19 09:30:30 2013 -0600
+++ b/lisp/paragraphs.el Fri Jun 21 18:45:06 2013 +0900
@@ -180,7 +180,10 @@
:type '(choice regexp (const :tag "Use default value" nil)))
(put 'sentence-end 'safe-local-variable 'string-or-null-p)
-(defcustom sentence-end-base "[.?!][]\"'”)}]*"
+(defcustom sentence-end-base
+ (concat "[.?!][]\"'"
+ (if (featurep 'mule) (unicode-to-char #x201D) "")
+ ")}]*")
"Regexp matching the basic end of a sentence, not including following
space."
:group 'paragraphs
:type 'string
@@ -201,14 +204,14 @@
in between. See Info node `(elisp)Standard Regexps'."
(or sentence-end
;; We accept non-break space along with space.
- (concat (if sentence-end-without-period "\\w[ \u00a0][ \u00a0]\\|")
+ (concat (if sentence-end-without-period "\\w[ \240][ \240]\\|")
"\\("
sentence-end-base
(if sentence-end-double-space
- "\\($\\|[ \u00a0]$\\|\t\\|[ \u00a0][ \u00a0]\\)"
"\\($\\|[\t \u00a0]\\)")
+ "\\($\\|[ \240]$\\|\t\\|[ \240][ \240]\\)" "\\($\\|[\t
\240]\\)")
"\\|[" sentence-end-without-space "]+"
"\\)"
- "[ \u00a0\t\n]*")))
+ "[ \240\t\n]*")))
(defcustom page-delimiter "^\014"
"*Regexp describing line-beginnings that separate pages."
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches