commit: Clarify #'map-range-table docstring.
16 years, 11 months
Aidan Kehoe
changeset: 4391:cbf129b005dff4258c4651fefb80e646940d82f7
tag: tip
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Sat Jan 12 18:04:13 2008 +0100
files: src/ChangeLog src/rangetab.c
description:
Clarify #'map-range-table docstring.
2008-01-12 Aidan Kehoe <kehoea(a)parhasard.net>
* rangetab.c (Fmap_range_table):
Clarify docstring. (If FUNCTION doesn't touch any range-table
entry, things will also be correct.)
diff -r 5902c5214a77997e6f80bf7e79680e4ea31c6e68 -r cbf129b005dff4258c4651fefb80e646940d82f7 src/ChangeLog
--- a/src/ChangeLog Sat Jan 12 00:28:05 2008 +0100
+++ b/src/ChangeLog Sat Jan 12 18:04:13 2008 +0100
@@ -1,3 +1,9 @@ 2008-01-09 Aidan Kehoe <kehoea@parhasa
+2008-01-12 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * rangetab.c (Fmap_range_table):
+ Clarify docstring. (If FUNCTION doesn't touch any range-table
+ entry, things will also be correct.)
+
2008-01-09 Aidan Kehoe <kehoea(a)parhasard.net>
* config.h.in:
diff -r 5902c5214a77997e6f80bf7e79680e4ea31c6e68 -r cbf129b005dff4258c4651fefb80e646940d82f7 src/rangetab.c
--- a/src/rangetab.c Sat Jan 12 00:28:05 2008 +0100
+++ b/src/rangetab.c Sat Jan 12 18:04:13 2008 +0100
@@ -571,7 +571,8 @@ Results are guaranteed to be correct (i.
Results are guaranteed to be correct (i.e. each entry processed
exactly once) if FUNCTION modifies or deletes the current entry
\(i.e. passes the current range to `put-range-table' or
-`remove-range-table'), but not otherwise.
+`remove-range-table'). If FUNCTION modifies or deletes any other entry,
+this guarantee doesn't hold.
*/
(function, range_table))
{
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
commit: ChangeLog spelling correction; scrool -> scroll
16 years, 11 months
Aidan Kehoe
changeset: 4390:5902c5214a77997e6f80bf7e79680e4ea31c6e68
tag: tip
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Sat Jan 12 00:28:05 2008 +0100
files: lisp/ChangeLog
description:
ChangeLog spelling correction; scrool -> scroll
diff -r 4c5cd87620e4cf6f8f3101f5ed972f774d2df4c6 -r 5902c5214a77997e6f80bf7e79680e4ea31c6e68 lisp/ChangeLog
--- a/lisp/ChangeLog Wed Jan 09 00:53:02 2008 +0100
+++ b/lisp/ChangeLog Sat Jan 12 00:28:05 2008 +0100
@@ -220,7 +220,7 @@ 2007-12-04 Aidan Kehoe <kehoea@parhasa
* keydefs.el:
Bind mouse wheel movements by default, to a lambda that calls the
- autoloaded #'mwheel-install and then #'mwheel-scrool with the
+ autoloaded #'mwheel-install and then #'mwheel-scroll with the
appropriate event.
2007-12-07 Vin Shelton <acs(a)xemacs.org>
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
[COMMIT] Merge regexp-opt.el with GNU, fixing bugs and adding improvements
16 years, 11 months
Aidan Kehoe
APPROVE COMMIT
NOTE: This patch has been committed.
This includes the patch I mentioned in
http://mid.gmane.org/18307.63955.896221.621765@parhasard.net , and
supersedes it. Tested on the packages, to the extent that that was possible
with complaints from EDE saying "Given parent class eieio-persistent is not
a class", after significant hacking to to get it to acknowledge the eieio
autoloads at all. All the differences from GNU 1.34 are documented and
motivated, with the exception of those self-evidently XEmacs-specific and
the generated regexp in the example.
2008-01-11 Aidan Kehoe <kehoea(a)parhasard.net>
* regexp-opt.el: Merge revision 1.34 from GNU, of
2007-01-21. Thank you GNU.
XEmacs Packages source patch:
Diff command: cvs -q diff -Nu
Files affected: xemacs-packages/xemacs-base/regexp-opt.el
===================================================================
RCS
Index: xemacs-packages/xemacs-base/regexp-opt.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/xemacs-base/regexp-opt.el,v
retrieving revision 1.3
diff -u -u -r1.3 regexp-opt.el
--- xemacs-packages/xemacs-base/regexp-opt.el 2003/10/29 16:31:46 1.3
+++ xemacs-packages/xemacs-base/regexp-opt.el 2008/01/11 23:10:12
@@ -1,6 +1,7 @@
;;; regexp-opt.el --- generate efficient regexps to match strings
-;; Copyright (C) 1994,95,96,97,98,99,2000 Free Software Foundation, Inc.
+;; Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+;; 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
;; Author: Simon Marshall <simon(a)gnu.org>
;; Maintainer: FSF
@@ -20,18 +21,14 @@
;; You should have received a copy of the GNU General Public License
;; along with XEmacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
-;;; Synched up with: GNU Emacs 21.3 + paren-in-char-set fix from CVS
-;;; revision 1.25. Some implementation differences in
-;;; regexp-opt-group and regexp-opt-charset but the APIs
-;;; are compatible and should return compatible (if not
-;;; exactly the same) regexps.
+;;; Synched up with: Revision 1.34 in GNU Emacs CVS, of 2007-01-21.
;;; Commentary:
-;; The "opt" in "regexp-opt" stands for "optim\\(?:al\\|i\\(?:se\\|ze\\)\\)".
+;; The "opt" in "regexp-opt" stands for "optim\\(al\\|i[sz]e\\)".
;;
;; This package generates a regexp from a given list of strings (which matches
;; one of those strings) so that the regexp generated by:
@@ -50,7 +47,7 @@
;; "save-current-buffer" "save-match-data"
;; "catch" "throw" "unwind-protect" "condition-case")))
;; (concat "(" (regexp-opt strings t) "\\>"))
-;; => "(\\(c\\(?:atch\\|ond\\(?:ition-case\\)?\\)\\|if\\|let\\*?\\|prog[12n]\\|save-\\(?:current-buffer\\|excursion\\|match-data\\|restriction\\|window-excursion\\)\\|throw\\|un\\(?:less\\|wind-protect\\)\\|wh\\(?:en\\|ile\\)\\)\\>"
+;; => "(\\(c\\(?:atch\\|ond\\(?:ition-case\\)?\\)\\|if\\|let\\*?\\|prog[12n]\\|save-\\(?:current-buffer\\|excursion\\|match-data\\|\\(?:restrict\\|window-excurs\\)ion\\)\\|throw\\|un\\(?:less\\|wind-protect\\)\\|wh\\(?:en\\|ile\\)\\)\\>"
;;
;; Searching using the above example `regexp-opt' regexp takes approximately
;; two-thirds of the time taken using the equivalent `mapconcat' regexp.
@@ -93,7 +90,7 @@
;;;###autoload
(defun regexp-opt (strings &optional paren)
- "Return a regexp to match a string in STRINGS.
+ "Return a regexp to match a string in the list STRINGS.
Each string should be unique in STRINGS and should not contain any regexps,
quoted or not. If optional PAREN is non-nil, ensure that the returned regexp
is enclosed by at least one regexp grouping construct.
@@ -107,47 +104,78 @@
(save-match-data
;; Recurse on the sorted list.
(let* ((max-lisp-eval-depth (* 1024 1024))
+ (max-specpdl-size (* 1024 1024))
(completion-ignore-case nil)
+ (completion-regexp-list nil)
(words (eq paren 'words))
(open (cond ((stringp paren) paren) (paren "\\(")))
- (sorted-strings (sort (copy-sequence strings) 'string-lessp))
+ ;; XEmacs; 21.4 doesn't have #'delete-dups, but
+ ;; #'delete-duplicates is dumped.
+ (sorted-strings (sort (delete-duplicates
+ (copy-sequence strings) :test #'string=)
+ #'string-lessp))
(re (regexp-opt-group sorted-strings open)))
(if words (concat "\\<" re "\\>") re))))
-(defconst regexp-opt-not-groupie*-re
- (let* ((harmless-ch "[^\\\\[]")
- (esc-pair-not-lp "\\\\[^(]")
- (class-harmless-ch "[^][]")
- (class-lb-harmless "[^]:]")
- (class-lb-colon-maybe-charclass ":\\([a-z]+:]\\)?")
- (class-lb (concat "\\[\\(" class-lb-harmless
- "\\|" class-lb-colon-maybe-charclass "\\)"))
- (class
- (concat "\\[^?]?"
- "\\(" class-harmless-ch
- "\\|" class-lb "\\)*"
- "\\[?]")) ; special handling for bare [ at end of re
- (shy-lp "\\\\(\\?:"))
- (concat "\\(" harmless-ch "\\|" esc-pair-not-lp
- "\\|" class "\\|" shy-lp "\\)*"))
- "Matches any part of a regular expression EXCEPT for non-shy \"\\\\(\"s")
+;; XEmacs; added here. This is in subr.el in GNU.
+(defun-when-void subregexp-context-p (regexp pos &optional start)
+ "Return non-nil if POS is in a normal subregexp context in REGEXP.
+A subregexp context is one where a sub-regexp can appear.
+A non-subregexp context is for example within brackets, or within a
+repetition bounds operator `\\=\\{...\\}', or right after a `\\'.
+If START is non-nil, it should be a position in REGEXP, smaller
+than POS, and known to be in a subregexp context."
+ ;; Here's one possible implementation, with the great benefit that it
+ ;; reuses the regexp-matcher's own parser, so it understands all the
+ ;; details of the syntax. A disadvantage is that it needs to match the
+ ;; error string.
+ (condition-case err
+ (progn
+ (string-match (substring regexp (or start 0) pos) "")
+ t)
+ (invalid-regexp
+ (not (member (cadr err) '("Unmatched [ or [^"
+ "Unmatched \\{"
+ "Trailing backslash")))))
+ ;; An alternative implementation:
+ ;; (defconst re-context-re
+ ;; (let* ((harmless-ch "[^\\[]")
+ ;; (harmless-esc "\\\\[^{]")
+ ;; (class-harmless-ch "[^][]")
+ ;; (class-lb-harmless "[^]:]")
+ ;; (class-lb-colon-maybe-charclass ":\\([a-z]+:]\\)?")
+ ;; (class-lb (concat "\\[\\(" class-lb-harmless
+ ;; "\\|" class-lb-colon-maybe-charclass "\\)"))
+ ;; (class
+ ;; (concat "\\[^?]?"
+ ;; "\\(" class-harmless-ch
+ ;; "\\|" class-lb "\\)*"
+ ;; "\\[?]")) ; special handling for bare [ at end of re
+ ;; (braces "\\\\{[0-9,]+\\\\}"))
+ ;; (concat "\\`\\(" harmless-ch "\\|" harmless-esc
+ ;; "\\|" class "\\|" braces "\\)*\\'"))
+ ;; "Matches any prefix that corresponds to a normal subregexp context.")
+ ;; (string-match re-context-re (substring regexp (or start 0) pos))
+ )
;;;###autoload
(defun regexp-opt-depth (regexp)
"Return the depth of REGEXP.
-This means the number of regexp grouping constructs (parenthesised expressions)
-in REGEXP."
+This means the number of non-shy regexp grouping constructs
+\(parenthesized expressions) in REGEXP."
(save-match-data
;; Hack to signal an error if REGEXP does not have balanced parentheses.
(string-match regexp "")
;; Count the number of open parentheses in REGEXP.
- (let ((count 0) start)
- (while
- (progn
- (string-match regexp-opt-not-groupie*-re regexp start)
- (setq start ( + (match-end 0) 2)) ; +2 for "\\(" after match-end.
- (<= start (length regexp)))
- (setq count (1+ count)))
+ (let ((count 0) start last)
+ (while (string-match "\\\\(\\(\\?:\\)?" regexp start)
+ (setq start (match-end 0)) ; Start of next search.
+ (when (and (not (match-beginning 1))
+ (subregexp-context-p regexp (match-beginning 0) last))
+ ;; It's not a shy group and it's not inside brackets or after
+ ;; a backslash: it's really a group-open marker.
+ (setq last start) ; Speed up next regexp-opt-re-context-p.
+ (setq count (1+ count))))
count)))
;;; Workhorse functions.
@@ -156,6 +184,7 @@
(require 'cl))
(defun regexp-opt-group (strings &optional paren lax)
+ ;; XEmacs; docstring, not just a comment.
"Return a regexp to match a string in STRINGS.
If PAREN non-nil, output regexp parentheses around returned regexp.
If LAX non-nil, don't output parentheses if it doesn't require them.
@@ -190,45 +219,73 @@
(regexp-opt-group (cdr strings) t t) "?"
close-charset))
;;
- ;; If all are one-character strings, just return a character set.
- ((= (length strings) (apply '+ (mapcar 'length strings)))
- (concat open-charset
- (regexp-opt-charset strings)
- close-charset))
+ ;; If there are several one-char strings, use charsets
+ ((and (= (length (car strings)) 1)
+ (let ((strs (cdr strings)))
+ (while (and strs (/= (length (car strs)) 1))
+ (pop strs))
+ strs))
+ (let (letters rest)
+ ;; Collect one-char strings
+ (dolist (s strings)
+ (if (= (length s) 1) (push (string-to-char s) letters) (push s rest)))
+
+ (if rest
+ ;; several one-char strings: take them and recurse
+ ;; on the rest (first so as to match the longest).
+ (concat open-group
+ (regexp-opt-group (nreverse rest))
+ "\\|" (regexp-opt-charset letters)
+ close-group)
+ ;; all are one-char strings: just return a character set.
+ (concat open-charset
+ (regexp-opt-charset letters)
+ close-charset))))
;;
;; We have a list of different length strings.
(t
- (let ((prefix (try-completion "" (mapcar 'list strings)))
- (letters (let ((completion-regexp-list '("^.$")))
- (all-completions "" (mapcar 'list strings)))))
- (cond
- ;;
- ;; If there is a common prefix, remove it and recurse on the suffixes.
- ((> (length prefix) 0)
- (let* ((length (length prefix))
- (suffixes (mapcar (lambda (s) (substring s length)) strings)))
- (concat open-group
- (regexp-quote prefix) (regexp-opt-group suffixes t t)
- close-group)))
- ;;
- ;; If there are several one-character strings, remove them and recurse
- ;; on the rest (first so the final regexp finds the longest match).
- ((> (length letters) 1)
- (let ((rest (let ((completion-regexp-list '("^..+$")))
- (all-completions "" (mapcar 'list strings)))))
- (concat open-group
- (regexp-opt-group rest) "\\|" (regexp-opt-charset letters)
- close-group)))
- ;;
- ;; Otherwise, divide the list into those that start with a particular
- ;; letter and those that do not, and recurse on them.
- (t
- (let* ((char (substring (car strings) 0 1))
- (half1 (all-completions char (mapcar 'list strings)))
- (half2 (nthcdr (length half1) strings)))
- (concat open-group
- (regexp-opt-group half1) "\\|" (regexp-opt-group half2)
- close-group)))))))))
+ ;; XEmacs; our #'try-completion requires an alist.
+ (let ((prefix (try-completion "" (mapcar 'list strings))))
+ (if (> (length prefix) 0)
+ ;; common prefix: take it and recurse on the suffixes.
+ (let* ((n (length prefix))
+ (suffixes (mapcar (lambda (s) (substring s n)) strings)))
+ (concat open-group
+ (regexp-quote prefix)
+ (regexp-opt-group suffixes t t)
+ close-group))
+
+ (let* ((sgnirts (mapcar (lambda (s)
+ ;; XEmacs; our #'try-completion requires
+ ;; an alist.
+ (list
+ (concat (nreverse (string-to-list s)))))
+ strings))
+ (xiffus (try-completion "" sgnirts)))
+ (if (> (length xiffus) 0)
+ ;; common suffix: take it and recurse on the prefixes.
+ (let* ((n (- (length xiffus)))
+ (prefixes
+ ;; Sorting is necessary in cases such as ("ad" "d").
+ (sort (mapcar (lambda (s) (substring s 0 n)) strings)
+ 'string-lessp)))
+ (concat open-group
+ (regexp-opt-group prefixes t t)
+ (regexp-quote
+ (concat (nreverse (string-to-list xiffus))))
+ close-group))
+
+ ;; Otherwise, divide the list into those that start with a
+ ;; particular letter and those that do not, and recurse on them.
+ (let* ((char (char-to-string (string-to-char (car strings))))
+ ;; XEmacs; #'all-completions requires an alist.
+ (half1 (all-completions char (mapcar 'list strings)))
+ (half2 (nthcdr (length half1) strings)))
+ (concat open-group
+ (regexp-opt-group half1)
+ "\\|" (regexp-opt-group half2)
+ close-group))))))))))
+
(defun regexp-opt-charset (chars)
;;
@@ -237,14 +294,13 @@
;; The basic idea is to find character ranges. Also we take care in the
;; position of character set meta characters in the character set regexp.
;;
- (let* ((charwidth 256) ; Yeah, right.
- ;; XEmacs: use bit-vectors instead of bool-vectors
- (charmap (make-bit-vector charwidth 0))
+ (let* ((charmap (make-char-table 'generic)) ;; XEmacs; case-tables not suited.
+ (start -1) (end -2)
(charset "")
(bracket "") (dash "") (caret ""))
;;
;; Make a character map but extract character set meta characters.
- (dolist (char (mapcar 'string-to-char chars))
+ (dolist (char chars)
(case char
(?\]
(setq bracket "]"))
@@ -253,20 +309,27 @@
(?-
(setq dash "-"))
(otherwise
- ;; XEmacs: 1
- (aset charmap char 1))))
+ (put-char-table char t charmap)))) ;; XEmacs; not a sequence, no aset
;;
;; Make a character set from the map using ranges where applicable.
- (dotimes (char charwidth)
- (let ((start char))
- (while (and (< char charwidth)
- ;; XEmacs: (not (zerop ...))
- (not (zerop (aref charmap char))))
- (incf char))
- (cond ((> char (+ start 3))
- (setq charset (format "%s%c-%c" charset start (1- char))))
- ((> char start)
- (setq charset (format "%s%c" charset (setq char start)))))))
+ (map-char-table
+ (lambda (c v)
+ (when v
+ (if (= (1- c) end) (setq end c)
+ (if (> end (+ start 2))
+ (setq charset (format "%s%c-%c" charset start end))
+ (while (>= end start)
+ (setq charset (format "%s%c" charset start))
+ (incf start)))
+ (setq start c end c)))
+ nil) ;; XEmacs; don't end the loop with the first char
+ charmap)
+ (when (>= end start)
+ (if (> end (+ start 2))
+ (setq charset (format "%s%c-%c" charset start end))
+ (while (>= end start)
+ (setq charset (format "%s%c" charset start))
+ (incf start))))
;;
;; Make sure a caret is not first and a dash is first or last.
(if (and (string-equal charset "") (string-equal bracket ""))
@@ -275,4 +338,5 @@
(provide 'regexp-opt)
+;; arch-tag: 6c5a66f4-29af-4fd6-8c3b-4b554d5b4370
;;; regexp-opt.el ends here
--
¿Dónde estará ahora mi sobrino Yoghurtu Nghé, que tuvo que huir
precipitadamente de la aldea por culpa de la escasez de rinocerontes?
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
16 years, 11 months
Aidan Kehoe
changeset: 4403:c49a1266d28ae3933996fc1f6ad46701c06d085e
tag: tip
parent: 4393:f83978c51585687c9ae6472d43ee06f8c290a440
parent: 4402:4c5cd87620e4cf6f8f3101f5ed972f774d2df4c6
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 09 11:37:16 2008 +0100
files: src/config.h.in src/doc.c
description:
Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e lisp/ChangeLog
--- a/lisp/ChangeLog Wed Jan 02 22:29:36 2008 +0100
+++ b/lisp/ChangeLog Wed Jan 09 11:37:16 2008 +0100
@@ -1,3 +1,19 @@ 2008-01-02 Aidan Kehoe <kehoea@parhasa
+2008-01-04 Michael Sperber <mike(a)xemacs.org>
+
+ * code-files.el (insert-file-contents):
+ (load): Don't call `substitute-in-file-name' on the file name.
+
+2008-01-03 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * cus-edit.el (custom-save-all):
+ If the directory containing the custom file doesn't exist, try to
+ create it. Fixes Nick's Crabtree's bug of
+ 5fb265820712140145w512fa3bbh355cf76f7e2cf792(a)mail.gmail.com ;
+ thank you Nick.
+ * menubar-items.el (default-menubar):
+ In the code to edit the user's init file, try to create the
+ containing directory if it doesn't exist.
+
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
* gtk-init.el (init-post-gtk-win):
@@ -9,6 +25,13 @@ 2008-01-02 Aidan Kehoe <kehoea@parhasa
* gtk-iso8859-1.el: Removed.
These haven't been used in a year and a half. No need to keep them
around.
+
+2008-01-02 Mike Sperber <mike(a)xemacs.org>
+
+ * minibuf.el (mouse-read-file-name-1): Use `window-height' instead
+ of `frame-height' to be consistent with `split-window''s
+ calculations. Bind `window-min-height' for the whole thing to
+ avoid geometry problems with the buttons window.
2008-01-02 Mike Sperber <mike(a)xemacs.org>
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e lisp/code-files.el
--- a/lisp/code-files.el Wed Jan 02 22:29:36 2008 +0100
+++ b/lisp/code-files.el Wed Jan 09 11:37:16 2008 +0100
@@ -235,10 +235,10 @@ object (the entry specified a coding sys
;(defun convert-mbox-coding-system (filename visit start end) ...)
-(defun load (file &optional noerror nomessage nosuffix)
- "Execute a file of Lisp code named FILE, or load a binary module.
-First tries to find a Lisp FILE with .elc appended, then with .el, then with
- FILE unmodified. If unsuccessful, tries to find a binary module FILE with
+(defun load (filename &optional noerror nomessage nosuffix)
+ "Execute a file of Lisp code named FILENAME, or load a binary module.
+First tries to find a Lisp file FILENAME with .elc appended, then with .el, then with
+ FILENAME unmodified. If unsuccessful, tries to find a binary module FILE with
the elements of `module-extensions' appended, one at a time.
Searches directories in load-path for Lisp files, and in `module-load-path'
for binary modules.
@@ -250,9 +250,8 @@ If optional fourth arg NOSUFFIX is non-n
.elc, .el, or elements of `module-extensions' to the specified name FILE.
Return t if file exists."
(declare (special load-modules-quietly))
- (let* ((filename (substitute-in-file-name file))
- (handler (find-file-name-handler filename 'load))
- (path nil))
+ (let ((handler (find-file-name-handler filename 'load))
+ (path nil))
(if handler
(funcall handler 'load filename noerror nomessage nosuffix)
;; First try to load a Lisp file
@@ -262,10 +261,10 @@ Return t if file exists."
'(".elc" ".el" "")))))
;; now use the internal load to actually load the file.
(load-internal
- file noerror nomessage nosuffix
+ filename noerror nomessage nosuffix
(let ((elc ; use string= instead of string-match to keep match-data.
- (equalp ".elc" (substring path -4))))
- (or (and (not elc) coding-system-for-read) ;prefer for source file
+ (equalp ".elc" (substring path -4))))
+ (or (and (not elc) coding-system-for-read) ;prefer for source file
;; find magic-cookie
(let ((codesys
(find-coding-system-magic-cookie-in-file path)))
@@ -401,8 +400,7 @@ See also `insert-file-contents-access-ho
See also `insert-file-contents-access-hook',
`insert-file-contents-pre-hook', `insert-file-contents-error-hook',
and `insert-file-contents-post-hook'."
- (let* ((expanded (substitute-in-file-name filename))
- (handler (find-file-name-handler expanded 'insert-file-contents)))
+ (let ((handler (find-file-name-handler filename 'insert-file-contents)))
(if handler
(funcall handler 'insert-file-contents filename visit start end replace)
(let (return-val coding-system used-codesys)
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e lisp/cus-edit.el
--- a/lisp/cus-edit.el Wed Jan 02 22:29:36 2008 +0100
+++ b/lisp/cus-edit.el Wed Jan 09 11:37:16 2008 +0100
@@ -3766,7 +3766,13 @@ Hashes several heavily used functions fo
(custom-save-variables)
(custom-save-faces)
(let ((find-file-hooks nil)
- (auto-mode-alist))
+ (auto-mode-alist)
+ custom-file-directory)
+ (unless (file-directory-p (setq custom-file-directory
+ (file-name-directory custom-file)))
+ (message "Creating %s... " custom-file-directory)
+ (make-directory custom-file-directory t)
+ (message "Creating %s... done." custom-file-directory))
(with-current-buffer (find-file-noselect custom-file)
(save-buffer)))))
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e lisp/menubar-items.el
--- a/lisp/menubar-items.el Wed Jan 02 22:29:36 2008 +0100
+++ b/lisp/menubar-items.el Wed Jan 09 11:37:16 2008 +0100
@@ -1441,10 +1441,16 @@ Write your filter like this:
["Edit I%_nit File"
;; #### there should be something that holds the name that the init
;; file should be created as, when it's not present.
- (let ((el-file (or user-init-file "~/.xemacs/init.el")))
+ (let ((el-file (or user-init-file "~/.xemacs/init.el"))
+ el-file-directory)
(if (string-match "\\.elc$" el-file)
(setq el-file
(substring user-init-file 0 (1- (length el-file)))))
+ (unless (file-directory-p
+ (setq el-file-directory (file-name-directory el-file)))
+ (message "Creating %s... " el-file-directory)
+ (make-directory el-file-directory t)
+ (message "Creating %s... done." el-file-directory))
(find-file el-file)
(or (eq major-mode 'emacs-lisp-mode)
(emacs-lisp-mode)))]
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e lisp/minibuf.el
--- a/lisp/minibuf.el Wed Jan 02 22:29:36 2008 +0100
+++ b/lisp/minibuf.el Wed Jan 09 11:37:16 2008 +0100
@@ -2060,18 +2060,15 @@ whether it is a file(/result) or a direc
(butbuf (generate-new-buffer " *mouse-read-file-buttons*"))
(frame (make-dialog-frame))
filewin dirwin
- user-data)
+ user-data
+ (window-min-height 1)) ; allow button window to be height 2
(unwind-protect
(progn
(reset-buffer filebuf)
;; set up the frame.
(focus-frame frame)
- ;; We really need `window-min-height' lines for the button
- ;; buffer, as otherwise the button buffer might get
- ;; inadvertently deleted when other window-size changes
- ;; happen (such as through resize-minibuffer-mode).
- (split-window nil (- (frame-height frame) window-min-height))
+ (split-window nil (- (window-height) 2))
(if file-p
(progn
(split-window-horizontally 16)
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e src/ChangeLog
--- a/src/ChangeLog Wed Jan 02 22:29:36 2008 +0100
+++ b/src/ChangeLog Wed Jan 09 11:37:16 2008 +0100
@@ -1,3 +1,35 @@ 2008-01-02 Aidan Kehoe <kehoea@parhasa
+2008-01-09 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * config.h.in:
+ Check that __STDC_VERSION__ is defined before examining its
+ value. Eliminates a Cygwin warning.
+
+2008-01-08 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * text.h (MAX_XETCHAR_SIZE): Remove, eliminating a redefinition
+ warning on Win32.
+ * dumper.c (pdump_load):
+ Don't use PATH_MAX_EXTERNAL, instead allocate enough for the path
+ + DUMP_SLACK (space for .dmp and version information), already
+ used on Win32 and #defined to be 100.
+
+2008-01-08 Jerry James <james(a)xemacs.org>
+
+ * config.h.in (INLINE_HEADER): adapt to C99 inline semantics.
+
+2008-01-07 Jerry James <james(a)xemacs.org>
+
+ * xemacs.def.in.in: Clarify the copyright and license.
+
+2008-01-03 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * fileio.c (Fmake_temp_name): Correct the comment to cross
+ reference to make-temp-file, and not to this function.
+
+2008-01-03 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * doc.c (Fbuilt_in_symbol_file): Improve style.
+
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
* emacs.c (main_1):
@@ -6,7 +38,6 @@ 2008-01-02 Aidan Kehoe <kehoea@parhasa
* console-gtk.c (gtk_perhaps_init_unseen_key_defaults):
Correct the initialisation of the hash table, on the model of the
MSW and TTY builds.
-
2008-01-02 Aidan Kehoe <kehoea(a)parhasard.net>
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e src/config.h.in
--- a/src/config.h.in Wed Jan 02 22:29:36 2008 +0100
+++ b/src/config.h.in Wed Jan 09 11:37:16 2008 +0100
@@ -1089,7 +1089,8 @@ extern "C" {
Use `inline static' to define inline functions in .c files.
See the Internals manual for examples and more information. */
-#if defined (__cplusplus) || ! defined (__GNUC__) || ! defined(emacs)
+#if (defined ( __STDC_VERSION__) && __STDC_VERSION__ >= 199901L) \
+ || defined (__cplusplus) || ! defined (__GNUC__) || ! defined(emacs)
# define INLINE_HEADER inline static
#elif defined (DONT_EXTERN_INLINE_HEADER_FUNCTIONS)
# define INLINE_HEADER inline
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e src/doc.c
--- a/src/doc.c Wed Jan 02 22:29:36 2008 +0100
+++ b/src/doc.c Wed Jan 09 11:37:16 2008 +0100
@@ -519,8 +519,7 @@ If TYPE is `defvar', then variable defin
fun = Findirect_function (symbol);
if (SUBRP (fun) || (CONSP(fun) && (EQ (Qmacro, Fcar_safe (fun)))
- && !NILP(fun = Fcdr_safe (fun))
- && (SUBRP (fun))))
+ && (fun = Fcdr_safe (fun), SUBRP (fun))))
{
if (XSUBR (fun)->doc == 0)
return Qnil;
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e src/dumper.c
--- a/src/dumper.c Wed Jan 02 22:29:36 2008 +0100
+++ b/src/dumper.c Wed Jan 09 11:37:16 2008 +0100
@@ -2630,6 +2630,8 @@ pdump_file_try (Wexttext *exe_path)
return 0;
}
+#define DUMP_SLACK 100 /* Enough to include dump ID, version name, .DMP */
+
int
pdump_load (const Wexttext *argv0)
{
@@ -2637,7 +2639,6 @@ pdump_load (const Wexttext *argv0)
Wexttext *exe_path = NULL;
int bufsize = 4096;
int cchpathsize;
-#define DUMP_SLACK 100 /* Enough to include dump ID, version name, .DMP */
/* Copied from mswindows_get_module_file_name (). Not clear if it's
kosher to malloc() yet. */
@@ -2659,7 +2660,7 @@ pdump_load (const Wexttext *argv0)
wext_strcpy (exe_path, wexe);
}
#else /* !WIN32_NATIVE */
- Wexttext exe_path[PATH_MAX_EXTERNAL];
+ Wexttext *exe_path;
Wexttext *w;
const Wexttext *dir, *p;
@@ -2694,13 +2695,17 @@ pdump_load (const Wexttext *argv0)
{
/* invocation-name includes a directory component -- presumably it
is relative to cwd, not $PATH. */
+ exe_path = alloca_array (Wexttext, 1 + wext_strlen (dir) + DUMP_SLACK);
wext_strcpy (exe_path, dir);
}
else
{
const Wexttext *path = wext_getenv ("PATH"); /* not egetenv --
- not yet init. */
+ not yet init. */
const Wexttext *name = p;
+ exe_path = alloca_array (Wexttext,
+ 1 + DUMP_SLACK + max (wext_strlen (name),
+ wext_strlen (path)));
for (;;)
{
p = path;
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e src/fileio.c
--- a/src/fileio.c Wed Jan 02 22:29:36 2008 +0100
+++ b/src/fileio.c Wed Jan 09 11:37:16 2008 +0100
@@ -628,7 +628,7 @@ be an absolute file name.
This function is analagous to mktemp(3) under POSIX, and as with it, there
exists a race condition between the test for the existence of the new file
-and its creation. See `make-temp-name' for a function which avoids this
+and its creation. See `make-temp-file' for a function which avoids this
race condition by specifying the appropriate flags to `write-region'.
*/
(prefix))
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e src/text.h
--- a/src/text.h Wed Jan 02 22:29:36 2008 +0100
+++ b/src/text.h Wed Jan 09 11:37:16 2008 +0100
@@ -2988,7 +2988,6 @@ int wcsncmp_ascii (const wchar_t *s1, co
/* Extra indirection needed in case of manifest constant as arg */
#define WEXTSTRING_1(arg) L##arg
#define WEXTSTRING(arg) WEXTSTRING_1(arg)
-#define MAX_XETCHAR_SIZE sizeof (WCHAR)
#define wext_strlen wcslen
#define wext_strcmp wcscmp
#define wext_strncmp wcsncmp
@@ -3014,7 +3013,6 @@ int XCDECL wext_retry_open (const Wextte
#else
#define WEXTTEXT_ZTERM_SIZE sizeof (char)
#define WEXTSTRING(arg) arg
-#define MAX_XETCHAR_SIZE sizeof (char)
#define wext_strlen strlen
#define wext_strcmp strcmp
#define wext_strncmp strncmp
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e src/xemacs.def.in.in
--- a/src/xemacs.def.in.in Wed Jan 02 22:29:36 2008 +0100
+++ b/src/xemacs.def.in.in Wed Jan 09 11:37:16 2008 +0100
@@ -1,4 +1,23 @@
-/* Put the usual header here */
+/* The module API: core symbols that are visible to modules.
+ Copyright (C) 2008 Jerry James
+
+This file is part of XEmacs.
+
+XEmacs is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+XEmacs is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with XEmacs; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA. */
+
/* The symbol to import/export is on the left. If the symbol is not
meant to be used directly, but a macro or inline function in the
API expands to a form containing the symbol, then the macro or
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e tests/ChangeLog
--- a/tests/ChangeLog Wed Jan 02 22:29:36 2008 +0100
+++ b/tests/ChangeLog Wed Jan 09 11:37:16 2008 +0100
@@ -1,3 +1,8 @@ 2007-12-29 Stephen J. Turnbull <stephe
+2008-01-03 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * automated/symbol-tests.el (Symbol documentation): Add tests to
+ check documentation extraction.
+
2007-12-29 Stephen J. Turnbull <stephen(a)xemacs.org>
* automated/test-harness.el (test-harness-test-compiled):
diff -r f83978c51585687c9ae6472d43ee06f8c290a440 -r c49a1266d28ae3933996fc1f6ad46701c06d085e tests/automated/symbol-tests.el
--- a/tests/automated/symbol-tests.el Wed Jan 02 22:29:36 2008 +0100
+++ b/tests/automated/symbol-tests.el Wed Jan 09 11:37:16 2008 +0100
@@ -332,3 +332,23 @@
; (Assert (equal (catch 'test-tag
; (set mysym 'foo))
; `(,mysym (foo) make-local nil nil))))
+
+;; ----------------------------------------------------------------
+;; Symbol documentation
+;; ----------------------------------------------------------------
+
+;; built-in variable documentation
+(Assert (string= (built-in-symbol-file 'internal-doc-file-name)
+ "doc.c"))
+
+;; built-in function documentation
+(Assert (string= (built-in-symbol-file 'built-in-symbol-file)
+ "doc.c"))
+
+;; built-in macro documentation
+(Assert (string= (built-in-symbol-file 'when)
+ "eval.c"))
+
+;; #### we should handle symbols defined in Lisp, dumped, autoloaded,
+;; and required, too.
+
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Check that __STDC_VERSION__ is defined before examining it.
16 years, 11 months
Aidan Kehoe
changeset: 4402:4c5cd87620e4cf6f8f3101f5ed972f774d2df4c6
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 09 00:53:02 2008 +0100
files: src/ChangeLog src/config.h.in
description:
Check that __STDC_VERSION__ is defined before examining it.
2008-01-09 Aidan Kehoe <kehoea(a)parhasard.net>
* config.h.in:
Check that __STDC_VERSION__ is defined before examining its
value. Eliminates a Cygwin warning.
diff -r 1a14c304cb8ead170dfb5edbbbf341724629f2d1 -r 4c5cd87620e4cf6f8f3101f5ed972f774d2df4c6 src/ChangeLog
--- a/src/ChangeLog Wed Jan 09 00:28:17 2008 +0100
+++ b/src/ChangeLog Wed Jan 09 00:53:02 2008 +0100
@@ -1,3 +1,9 @@ 2008-01-08 Aidan Kehoe <kehoea@parhasa
+2008-01-09 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * config.h.in:
+ Check that __STDC_VERSION__ is defined before examining its
+ value. Eliminates a Cygwin warning.
+
2008-01-08 Aidan Kehoe <kehoea(a)parhasard.net>
* text.h (MAX_XETCHAR_SIZE): Remove, eliminating a redefinition
diff -r 1a14c304cb8ead170dfb5edbbbf341724629f2d1 -r 4c5cd87620e4cf6f8f3101f5ed972f774d2df4c6 src/config.h.in
--- a/src/config.h.in Wed Jan 09 00:28:17 2008 +0100
+++ b/src/config.h.in Wed Jan 09 00:53:02 2008 +0100
@@ -1086,8 +1086,8 @@ extern "C" {
Use `inline static' to define inline functions in .c files.
See the Internals manual for examples and more information. */
-#if __STDC_VERSION__ >= 199901L || defined (__cplusplus) || \
- ! defined (__GNUC__) || ! defined(emacs)
+#if (defined ( __STDC_VERSION__) && __STDC_VERSION__ >= 199901L) \
+ || defined (__cplusplus) || ! defined (__GNUC__) || ! defined(emacs)
# define INLINE_HEADER inline static
#elif defined (DONT_EXTERN_INLINE_HEADER_FUNCTIONS)
# define INLINE_HEADER inline
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Adapt INLINE_HEADER to the C99 inline semantics.
16 years, 11 months
Aidan Kehoe
changeset: 4400:9aa16aa434b6c7378354c60985dc2218ceb60db0
user: Jerry James <james(a)xemacs.org>
date: Tue Jan 08 12:47:42 2008 -0700
files: src/ChangeLog src/config.h.in
description:
Adapt INLINE_HEADER to the C99 inline semantics.
2008-01-08 Jerry James <james(a)xemacs.org>
* config.h.in (INLINE_HEADER): adapt to C99 inline semantics.
diff -r 4363b75330cacd4d74c95aa361d90a967a58f0fe -r 9aa16aa434b6c7378354c60985dc2218ceb60db0 src/ChangeLog
--- a/src/ChangeLog Mon Jan 07 12:07:55 2008 -0700
+++ b/src/ChangeLog Tue Jan 08 12:47:42 2008 -0700
@@ -1,3 +1,7 @@ 2008-01-07 Jerry James <james(a)xemacs.o
+2008-01-08 Jerry James <james(a)xemacs.org>
+
+ * config.h.in (INLINE_HEADER): adapt to C99 inline semantics.
+
2008-01-07 Jerry James <james(a)xemacs.org>
* xemacs.def.in.in: Clarify the copyright and license.
diff -r 4363b75330cacd4d74c95aa361d90a967a58f0fe -r 9aa16aa434b6c7378354c60985dc2218ceb60db0 src/config.h.in
--- a/src/config.h.in Mon Jan 07 12:07:55 2008 -0700
+++ b/src/config.h.in Tue Jan 08 12:47:42 2008 -0700
@@ -1086,7 +1086,8 @@ extern "C" {
Use `inline static' to define inline functions in .c files.
See the Internals manual for examples and more information. */
-#if defined (__cplusplus) || ! defined (__GNUC__) || ! defined(emacs)
+#if __STDC_VERSION__ >= 199901L || defined (__cplusplus) || \
+ ! defined (__GNUC__) || ! defined(emacs)
# define INLINE_HEADER inline static
#elif defined (DONT_EXTERN_INLINE_HEADER_FUNCTIONS)
# define INLINE_HEADER inline
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Don't use PATH_MAX_EXTERNAL, non-Win32.
16 years, 11 months
Aidan Kehoe
changeset: 4401:1a14c304cb8ead170dfb5edbbbf341724629f2d1
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 09 00:28:17 2008 +0100
files: src/ChangeLog src/dumper.c src/text.h
description:
Don't use PATH_MAX_EXTERNAL, non-Win32.
2008-01-08 Aidan Kehoe <kehoea(a)parhasard.net>
* text.h (MAX_XETCHAR_SIZE): Remove, eliminating a redefinition
warning on Win32.
* dumper.c (pdump_load):
Don't use PATH_MAX_EXTERNAL, instead allocate enough for the path
+ DUMP_SLACK (space for .dmp and version information), already
used on Win32 and #defined to be 100.
diff -r 9aa16aa434b6c7378354c60985dc2218ceb60db0 -r 1a14c304cb8ead170dfb5edbbbf341724629f2d1 src/ChangeLog
--- a/src/ChangeLog Tue Jan 08 12:47:42 2008 -0700
+++ b/src/ChangeLog Wed Jan 09 00:28:17 2008 +0100
@@ -1,3 +1,12 @@ 2008-01-08 Jerry James <james(a)xemacs.o
+2008-01-08 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * text.h (MAX_XETCHAR_SIZE): Remove, eliminating a redefinition
+ warning on Win32.
+ * dumper.c (pdump_load):
+ Don't use PATH_MAX_EXTERNAL, instead allocate enough for the path
+ + DUMP_SLACK (space for .dmp and version information), already
+ used on Win32 and #defined to be 100.
+
2008-01-08 Jerry James <james(a)xemacs.org>
* config.h.in (INLINE_HEADER): adapt to C99 inline semantics.
diff -r 9aa16aa434b6c7378354c60985dc2218ceb60db0 -r 1a14c304cb8ead170dfb5edbbbf341724629f2d1 src/dumper.c
--- a/src/dumper.c Tue Jan 08 12:47:42 2008 -0700
+++ b/src/dumper.c Wed Jan 09 00:28:17 2008 +0100
@@ -2630,6 +2630,8 @@ pdump_file_try (Wexttext *exe_path)
return 0;
}
+#define DUMP_SLACK 100 /* Enough to include dump ID, version name, .DMP */
+
int
pdump_load (const Wexttext *argv0)
{
@@ -2637,7 +2639,6 @@ pdump_load (const Wexttext *argv0)
Wexttext *exe_path = NULL;
int bufsize = 4096;
int cchpathsize;
-#define DUMP_SLACK 100 /* Enough to include dump ID, version name, .DMP */
/* Copied from mswindows_get_module_file_name (). Not clear if it's
kosher to malloc() yet. */
@@ -2659,7 +2660,7 @@ pdump_load (const Wexttext *argv0)
wext_strcpy (exe_path, wexe);
}
#else /* !WIN32_NATIVE */
- Wexttext exe_path[PATH_MAX_EXTERNAL];
+ Wexttext *exe_path;
Wexttext *w;
const Wexttext *dir, *p;
@@ -2694,13 +2695,17 @@ pdump_load (const Wexttext *argv0)
{
/* invocation-name includes a directory component -- presumably it
is relative to cwd, not $PATH. */
+ exe_path = alloca_array (Wexttext, 1 + wext_strlen (dir) + DUMP_SLACK);
wext_strcpy (exe_path, dir);
}
else
{
const Wexttext *path = wext_getenv ("PATH"); /* not egetenv --
- not yet init. */
+ not yet init. */
const Wexttext *name = p;
+ exe_path = alloca_array (Wexttext,
+ 1 + DUMP_SLACK + max (wext_strlen (name),
+ wext_strlen (path)));
for (;;)
{
p = path;
diff -r 9aa16aa434b6c7378354c60985dc2218ceb60db0 -r 1a14c304cb8ead170dfb5edbbbf341724629f2d1 src/text.h
--- a/src/text.h Tue Jan 08 12:47:42 2008 -0700
+++ b/src/text.h Wed Jan 09 00:28:17 2008 +0100
@@ -2988,7 +2988,6 @@ int wcsncmp_ascii (const wchar_t *s1, co
/* Extra indirection needed in case of manifest constant as arg */
#define WEXTSTRING_1(arg) L##arg
#define WEXTSTRING(arg) WEXTSTRING_1(arg)
-#define MAX_XETCHAR_SIZE sizeof (WCHAR)
#define wext_strlen wcslen
#define wext_strcmp wcscmp
#define wext_strncmp wcsncmp
@@ -3014,7 +3013,6 @@ int XCDECL wext_retry_open (const Wextte
#else
#define WEXTTEXT_ZTERM_SIZE sizeof (char)
#define WEXTSTRING(arg) arg
-#define MAX_XETCHAR_SIZE sizeof (char)
#define wext_strlen strlen
#define wext_strcmp strcmp
#define wext_strncmp strncmp
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Clarify the copyright and license of src/xemacs.def.in.in.
16 years, 11 months
Aidan Kehoe
changeset: 4399:4363b75330cacd4d74c95aa361d90a967a58f0fe
user: Jerry James <james(a)xemacs.org>
date: Mon Jan 07 12:07:55 2008 -0700
files: src/ChangeLog src/xemacs.def.in.in
description:
Clarify the copyright and license of src/xemacs.def.in.in.
2008-01-07 Jerry James <james(a)xemacs.org>
* xemacs.def.in.in: Clarify the copyright and license.
diff -r 7a8c613ee2836d4803753fca5731d45222a92449 -r 4363b75330cacd4d74c95aa361d90a967a58f0fe src/ChangeLog
--- a/src/ChangeLog Sat Jan 05 16:19:37 2008 +0100
+++ b/src/ChangeLog Mon Jan 07 12:07:55 2008 -0700
@@ -1,3 +1,7 @@ 2008-01-03 Aidan Kehoe <kehoea@parhasa
+2008-01-07 Jerry James <james(a)xemacs.org>
+
+ * xemacs.def.in.in: Clarify the copyright and license.
+
2008-01-03 Aidan Kehoe <kehoea(a)parhasard.net>
* fileio.c (Fmake_temp_name): Correct the comment to cross
diff -r 7a8c613ee2836d4803753fca5731d45222a92449 -r 4363b75330cacd4d74c95aa361d90a967a58f0fe src/xemacs.def.in.in
--- a/src/xemacs.def.in.in Sat Jan 05 16:19:37 2008 +0100
+++ b/src/xemacs.def.in.in Mon Jan 07 12:07:55 2008 -0700
@@ -1,4 +1,23 @@
-/* Put the usual header here */
+/* The module API: core symbols that are visible to modules.
+ Copyright (C) 2008 Jerry James
+
+This file is part of XEmacs.
+
+XEmacs is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+XEmacs is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with XEmacs; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA. */
+
/* The symbol to import/export is on the left. If the symbol is not
meant to be used directly, but a macro or inline function in the
API expands to a form containing the symbol, then the macro or
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Don't call substitute-in-file-name haphazardly.
16 years, 11 months
Aidan Kehoe
changeset: 4398:7a8c613ee2836d4803753fca5731d45222a92449
user: Mike Sperber <sperber(a)deinprogramm.de>
date: Sat Jan 05 16:19:37 2008 +0100
files: lisp/ChangeLog lisp/code-files.el
description:
Don't call substitute-in-file-name haphazardly.
2008-01-04 Michael Sperber <mike(a)xemacs.org>
* code-files.el (insert-file-contents):
(load): Don't call `substitute-in-file-name' on the file name.
diff -r c7e65155cb355f52c9766b4dc292402297383fda -r 7a8c613ee2836d4803753fca5731d45222a92449 lisp/ChangeLog
--- a/lisp/ChangeLog Sat Jan 05 16:13:04 2008 +0100
+++ b/lisp/ChangeLog Sat Jan 05 16:19:37 2008 +0100
@@ -1,3 +1,8 @@ 2008-01-03 Aidan Kehoe <kehoea@parhasa
+2008-01-04 Michael Sperber <mike(a)xemacs.org>
+
+ * code-files.el (insert-file-contents):
+ (load): Don't call `substitute-in-file-name' on the file name.
+
2008-01-03 Aidan Kehoe <kehoea(a)parhasard.net>
* cus-edit.el (custom-save-all):
diff -r c7e65155cb355f52c9766b4dc292402297383fda -r 7a8c613ee2836d4803753fca5731d45222a92449 lisp/code-files.el
--- a/lisp/code-files.el Sat Jan 05 16:13:04 2008 +0100
+++ b/lisp/code-files.el Sat Jan 05 16:19:37 2008 +0100
@@ -235,10 +235,10 @@ object (the entry specified a coding sys
;(defun convert-mbox-coding-system (filename visit start end) ...)
-(defun load (file &optional noerror nomessage nosuffix)
- "Execute a file of Lisp code named FILE, or load a binary module.
-First tries to find a Lisp FILE with .elc appended, then with .el, then with
- FILE unmodified. If unsuccessful, tries to find a binary module FILE with
+(defun load (filename &optional noerror nomessage nosuffix)
+ "Execute a file of Lisp code named FILENAME, or load a binary module.
+First tries to find a Lisp file FILENAME with .elc appended, then with .el, then with
+ FILENAME unmodified. If unsuccessful, tries to find a binary module FILE with
the elements of `module-extensions' appended, one at a time.
Searches directories in load-path for Lisp files, and in `module-load-path'
for binary modules.
@@ -250,9 +250,8 @@ If optional fourth arg NOSUFFIX is non-n
.elc, .el, or elements of `module-extensions' to the specified name FILE.
Return t if file exists."
(declare (special load-modules-quietly))
- (let* ((filename (substitute-in-file-name file))
- (handler (find-file-name-handler filename 'load))
- (path nil))
+ (let ((handler (find-file-name-handler filename 'load))
+ (path nil))
(if handler
(funcall handler 'load filename noerror nomessage nosuffix)
;; First try to load a Lisp file
@@ -262,10 +261,10 @@ Return t if file exists."
'(".elc" ".el" "")))))
;; now use the internal load to actually load the file.
(load-internal
- file noerror nomessage nosuffix
+ filename noerror nomessage nosuffix
(let ((elc ; use string= instead of string-match to keep match-data.
- (equalp ".elc" (substring path -4))))
- (or (and (not elc) coding-system-for-read) ;prefer for source file
+ (equalp ".elc" (substring path -4))))
+ (or (and (not elc) coding-system-for-read) ;prefer for source file
;; find magic-cookie
(let ((codesys
(find-coding-system-magic-cookie-in-file path)))
@@ -401,8 +400,7 @@ See also `insert-file-contents-access-ho
See also `insert-file-contents-access-hook',
`insert-file-contents-pre-hook', `insert-file-contents-error-hook',
and `insert-file-contents-post-hook'."
- (let* ((expanded (substitute-in-file-name filename))
- (handler (find-file-name-handler expanded 'insert-file-contents)))
+ (let ((handler (find-file-name-handler filename 'insert-file-contents)))
(if handler
(funcall handler 'insert-file-contents filename visit start end replace)
(let (return-val coding-system used-codesys)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Improve upon previous patch to minibuf.el.
16 years, 11 months
Aidan Kehoe
changeset: 4397:c7e65155cb355f52c9766b4dc292402297383fda
user: Mike Sperber <sperber(a)deinprogramm.de>
date: Sat Jan 05 16:13:04 2008 +0100
files: lisp/ChangeLog lisp/minibuf.el
description:
Improve upon previous patch to minibuf.el.
2008-01-02 Mike Sperber <mike(a)xemacs.org>
* minibuf.el (mouse-read-file-name-1): Use `window-height' instead
of `frame-height' to be consistent with `split-window''s
calculations. Bind `window-min-height' to 1 for the entire
interaction to avoid various "window-too-small"-type problems.
diff -r 1e04b9c8125bd4bcd89d56b366d3990bc1032adf -r c7e65155cb355f52c9766b4dc292402297383fda lisp/ChangeLog
--- a/lisp/ChangeLog Thu Jan 03 22:36:04 2008 +0100
+++ b/lisp/ChangeLog Sat Jan 05 16:13:04 2008 +0100
@@ -20,6 +20,13 @@ 2008-01-02 Aidan Kehoe <kehoea@parhasa
* gtk-iso8859-1.el: Removed.
These haven't been used in a year and a half. No need to keep them
around.
+
+2008-01-02 Mike Sperber <mike(a)xemacs.org>
+
+ * minibuf.el (mouse-read-file-name-1): Use `window-height' instead
+ of `frame-height' to be consistent with `split-window''s
+ calculations. Bind `window-min-height' for the whole thing to
+ avoid geometry problems with the buttons window.
2008-01-02 Mike Sperber <mike(a)xemacs.org>
diff -r 1e04b9c8125bd4bcd89d56b366d3990bc1032adf -r c7e65155cb355f52c9766b4dc292402297383fda lisp/minibuf.el
--- a/lisp/minibuf.el Thu Jan 03 22:36:04 2008 +0100
+++ b/lisp/minibuf.el Sat Jan 05 16:13:04 2008 +0100
@@ -2060,18 +2060,15 @@ whether it is a file(/result) or a direc
(butbuf (generate-new-buffer " *mouse-read-file-buttons*"))
(frame (make-dialog-frame))
filewin dirwin
- user-data)
+ user-data
+ (window-min-height 1)) ; allow button window to be height 2
(unwind-protect
(progn
(reset-buffer filebuf)
;; set up the frame.
(focus-frame frame)
- ;; We really need `window-min-height' lines for the button
- ;; buffer, as otherwise the button buffer might get
- ;; inadvertently deleted when other window-size changes
- ;; happen (such as through resize-minibuffer-mode).
- (split-window nil (- (frame-height frame) window-min-height))
+ (split-window nil (- (window-height) 2))
(if file-p
(progn
(split-window-horizontally 16)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches