carbon2-commit: Support VS 2005 manifest files
16 years, 1 month
Aidan Kehoe
changeset: 4643:202cb69c4d87c4d04b06676366e8d57a60149691
user: Vin Shelton <acs(a)xemacs.org>
date: Thu Feb 05 21:18:37 2009 -0500
files: nt/ChangeLog nt/xemacs.mak
description:
Support VS 2005 manifest files
diff -r aac2a827bb6bebb54a353e1767893735329ae18e -r 202cb69c4d87c4d04b06676366e8d57a60149691 nt/ChangeLog
--- a/nt/ChangeLog Wed Feb 04 20:56:31 2009 +0000
+++ b/nt/ChangeLog Thu Feb 05 21:18:37 2009 -0500
@@ -1,3 +1,7 @@ 2008-05-13 Aidan Kehoe <kehoea@parhasa
+2009-02-06 Vin Shelton <acs(a)xemacs.org>
+
+ * xemacs.mak: Add support for Visual Studio 2005 manifests.
+
2008-05-13 Aidan Kehoe <kehoea(a)parhasard.net>
* xemacs.mak (PROGRAM_DEFINES):
diff -r aac2a827bb6bebb54a353e1767893735329ae18e -r 202cb69c4d87c4d04b06676366e8d57a60149691 nt/xemacs.mak
--- a/nt/xemacs.mak Wed Feb 04 20:56:31 2009 +0000
+++ b/nt/xemacs.mak Thu Feb 05 21:18:37 2009 -0500
@@ -1104,17 +1104,32 @@ LIB_SRC_CFLAGS = $(CFLAGS) -I$(LIB_SRC)
# Inferred rule
{$(LIB_SRC)}.c{$(BLDLIB_SRC)}.exe :
$(CCV) $(LIB_SRC_CFLAGS) $(LINK_DEPENDENCY_ARGS) $(LINK_STANDARD_LIBRARY_ARGS)
+# If we're using Visual Studio 2005 or greater,
+# embed the manifest into the executable.
+!if $(MSC_VER) >= 1400
+ mt -manifest $@.manifest -outputresource:$@;1
+!endif
# Individual dependencies
ETAGS_DEPS = $(LIB_SRC)/getopt.c $(LIB_SRC)/getopt1.c $(SRC)/regex.c
$(BLDLIB_SRC)/etags.exe : $(LIB_SRC)/etags.c $(ETAGS_DEPS)
$(CCV) $(LIB_SRC_CFLAGS) $(LINK_DEPENDENCY_ARGS) -stack:0x800000 $(LINK_STANDARD_LIBRARY_ARGS)
+# If we're using Visual Studio 2005 or greater,
+# embed the manifest into the executable.
+!if $(MSC_VER) >= 1400
+ mt -manifest $@.manifest -outputresource:$@;1
+!endif
$(BLDLIB_SRC)/movemail.exe : $(LIB_SRC)/movemail.c $(LIB_SRC)/pop.c $(ETAGS_DEPS)
# Minitar uses zlib so just use cdecl to simplify things
$(BLDLIB_SRC)/minitar.exe : $(NT)/minitar.c
$(CCV) -I$(SRC) -I"$(ZLIB_DIR)" $(LIB_SRC_DEFINES) $(CFLAGS_CDECL_NO_LIB) -MD $(LINK_DEPENDENCY_ARGS) "$(ZLIB_DIR)\zlib.lib"
+# If we're using Visual Studio 2005 or greater,
+# embed the manifest into the executable.
+!if $(MSC_VER) >= 1400
+ mt -manifest $@.manifest -outputresource:$@;1
+!endif
LIB_SRC_TOOLS = \
$(BLDLIB_SRC)/etags.exe \
@@ -1437,6 +1452,12 @@ docfile :: $(DOC)
$(XEMACS_LFLAGS) -section:.rsrc,rw -out:$(BLDSRC)\xemacs.exe $(TEMACS_OBJS) $(OUTDIR)\xemacs.res $(TEMACS_LIBS) $(OUTDIR)\dump-id.obj
<<
-$(DEL) $(BLDSRC)\xemacs.dmp
+# If we're using Visual Studio 2005 or greater,
+# embed the manifest into the executable.
+!if $(MSC_VER) >= 1400
+ mt -manifest $@.manifest -outputresource:$@;1
+!endif
+
!endif
## (6) Update the remaining .elc's, post-dumping
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Correct invalid-sequence-coding-system spec, Roman-alphabet languages.
16 years, 1 month
Aidan Kehoe
changeset: 4640:dcfd965d65a1f7b439cc67ae3eda8b66388cb9b0
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Feb 04 13:12:21 2009 +0000
files: lisp/ChangeLog lisp/mule/latin.el
description:
Correct invalid-sequence-coding-system spec, Roman-alphabet languages.
I had been testing with the Cyrillic language environments, and I have code
in my own init file that does something similar, so I hadn't noticed that
this had gone wrong.
lisp/ChangeLog addition:
2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
* mule/latin.el:
Specify windows-1250 as the invalid-sequence-coding-system for the
iso-8859-2 languages; actually *use* the
invalid-sequence-coding-system for German and the other iso-8859-1
language environments.
diff -r 0347879667ed19a6c266459147ca271d05581238 -r dcfd965d65a1f7b439cc67ae3eda8b66388cb9b0 lisp/ChangeLog
--- a/lisp/ChangeLog Wed Feb 04 12:41:14 2009 +0000
+++ b/lisp/ChangeLog Wed Feb 04 13:12:21 2009 +0000
@@ -1,3 +1,11 @@ 2009-02-04 Aidan Kehoe <kehoea@parhasa
+2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * mule/latin.el:
+ Specify windows-1250 as the invalid-sequence-coding-system for the
+ iso-8859-2 languages; actually *use* the
+ invalid-sequence-coding-system for German and the other iso-8859-1
+ language environments.
+
2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
* coding.el (force-coding-system-equivalency):
diff -r 0347879667ed19a6c266459147ca271d05581238 -r dcfd965d65a1f7b439cc67ae3eda8b66388cb9b0 lisp/mule/latin.el
--- a/lisp/mule/latin.el Wed Feb 04 12:41:14 2009 +0000
+++ b/lisp/mule/latin.el Wed Feb 04 13:12:21 2009 +0000
@@ -1022,7 +1022,7 @@ German (Deutsch S,A|(Bd) Gr,A|_(B Go
((latin-iso8859-2 iso-8859-2 "latin-2-prefix" "Latin-2" "ISO-8859-2"
" Albanian, Czech, English, German, Hungarian, Polish, Romanian,
Serbian, Croatian, Slovak, Slovene, Sorbian (upper and lower),
- and Swedish.") ;; " added because fontification got screwed up, CVS-20061203.
+ and Swedish." windows-1250)
(("Albanian" "sq")
("Croatian" ("hrvatski" "hr") "TUTORIAL.hr")
("Czech" ("cs" "cz") "TUTORIAL.cs" "P,Bx(Bejeme v,Ba(Bm hezk,B}(B den!"
@@ -1076,6 +1076,8 @@ Generic language environment for %s (%s)
(coding-system ,codesys)
(coding-priority ,codesys)
(native-coding-system ,codesys)
+ (invalid-sequence-coding-system ,(or invalid-sequence-coding-system
+ codesys))
,@(if locale `((locale . ,locale)))
,@(if tutorial `((tutorial . ,tutorial)
(tutorial-coding-system . ,codesys)))
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Document the force-coding-system-equivalency macro in coding.el.
16 years, 1 month
Aidan Kehoe
changeset: 4639:0347879667ed19a6c266459147ca271d05581238
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Feb 04 12:41:14 2009 +0000
files: lisp/ChangeLog lisp/coding.el
description:
Document the force-coding-system-equivalency macro in coding.el.
lisp/ChangeLog addition:
2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
* coding.el (force-coding-system-equivalency):
Document this macro and the motivation for it.
diff -r 8891b0477058c16e7c74700cb279cba0ad8fcb39 -r 0347879667ed19a6c266459147ca271d05581238 lisp/ChangeLog
--- a/lisp/ChangeLog Wed Feb 04 12:35:45 2009 +0000
+++ b/lisp/ChangeLog Wed Feb 04 12:41:14 2009 +0000
@@ -1,3 +1,8 @@ 2009-01-15 Aidan Kehoe <kehoea@parhasa
+2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * coding.el (force-coding-system-equivalency):
+ Document this macro and the motivation for it.
+
2009-01-15 Aidan Kehoe <kehoea(a)parhasard.net>
* coding.el (force-coding-system-equivalency):
diff -r 8891b0477058c16e7c74700cb279cba0ad8fcb39 -r 0347879667ed19a6c266459147ca271d05581238 lisp/coding.el
--- a/lisp/coding.el Wed Feb 04 12:35:45 2009 +0000
+++ b/lisp/coding.el Wed Feb 04 12:41:14 2009 +0000
@@ -246,6 +246,14 @@ if does not differ from the encoded stri
;;; Make certain variables equivalent to coding-system aliases:
(macrolet
((force-coding-system-equivalency (&rest details-list)
+ "Certain coding-system aliases should correspond to certain variables.
+
+This macro implements that correspondence. This gives us compatiblity with
+other Mule implementations (which don't use the coding system aliases), and
+a certain amount of freedom of implementation for XEmacs; using a variable's
+value in C for every file operation or write to a terminal in C is probably
+an improvement on the hash-table lookup(s) necessary for a coding system
+alias, though we haven't profiled this yet to see if it makes a difference."
(loop for (alias variable-symbol)
in details-list
with result = (list 'progn)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Fix a couple of bugs, #'query-coding-region, #'query-coding-string.
16 years, 1 month
Aidan Kehoe
changeset: 4636:4fc32a3a086efffb57b45f49ac1867f4ecf69bbe
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Feb 04 12:14:38 2009 +0000
files: lisp/ChangeLog lisp/coding.el lisp/mule/general-late.el
description:
Fix a couple of bugs, #'query-coding-region, #'query-coding-string.
2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
* coding.el (query-coding-region):
Revert this to being a defun, add a compiler macro without
needless binding.
(query-coding-string):
Correct a bug here, string indices are zero- not one-based.
* mule/general-late.el (unicode-query-coding-skip-chars-arg):
Correct the algorithm used to initialise this variable.
diff -r a1a8728fec10bb035ad37b3a21b248dee9d11ef6 -r 4fc32a3a086efffb57b45f49ac1867f4ecf69bbe lisp/ChangeLog
--- a/lisp/ChangeLog Wed Feb 04 11:38:25 2009 +0000
+++ b/lisp/ChangeLog Wed Feb 04 12:14:38 2009 +0000
@@ -1,3 +1,13 @@ 2009-02-04 Aidan Kehoe <kehoea@parhasa
+2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * coding.el (query-coding-region):
+ Revert this to being a defun, add a compiler macro without
+ needless binding.
+ (query-coding-string):
+ Correct a bug here, string indices are zero- not one-based.
+ * mule/general-late.el (unicode-query-coding-skip-chars-arg):
+ Correct the algorithm used to initialise this variable.
+
2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
* help.el (describe-function-1):
diff -r a1a8728fec10bb035ad37b3a21b248dee9d11ef6 -r 4fc32a3a086efffb57b45f49ac1867f4ecf69bbe lisp/coding.el
--- a/lisp/coding.el Wed Feb 04 11:38:25 2009 +0000
+++ b/lisp/coding.el Wed Feb 04 12:14:38 2009 +0000
@@ -398,8 +398,8 @@ addition, characters that can be safely
(values nil ranges)
(values t nil))))))
-(defsubst query-coding-region (start end coding-system &optional buffer
- errorp highlight)
+(defun query-coding-region (start end coding-system &optional buffer
+ errorp highlight)
"Work out whether CODING-SYSTEM can losslessly encode a region.
START and END are the beginning and end of the region to check.
@@ -423,7 +423,15 @@ describing the positions of the unencoda
#'default-query-coding-region)
start end coding-system buffer errorp highlight))
-(defsubst query-coding-string (string coding-system &optional errorp highlight)
+(define-compiler-macro query-coding-region (start end coding-system
+ &optional buffer errorp highlight)
+ `(funcall (or (coding-system-get ,coding-system 'query-coding-function)
+ #'default-query-coding-region)
+ ,start ,end ,coding-system ,@(append (if buffer (list buffer))
+ (if errorp (list errorp))
+ (if highlight (list highlight)))))
+
+(defun query-coding-string (string coding-system &optional errorp highlight)
"Work out whether CODING-SYSTEM can losslessly encode STRING.
CODING-SYSTEM is the coding system to check.
@@ -442,9 +450,21 @@ describing the positions of the unencoda
`make-range-table'."
(with-temp-buffer
(insert string)
- (query-coding-region (point-min) (point-max) coding-system (current-buffer)
- ;; ### Will highlight work here?
- errorp highlight)))
+ (multiple-value-bind (result ranges)
+ (query-coding-region (point-min) (point-max) coding-system
+ (current-buffer) errorp
+ ;; #### Highlight won't work here,
+ ;; query-coding-region may need to be modified.
+ highlight)
+ (unless result
+ ;; Sigh, string indices are zero-based, buffer offsets are
+ ;; one-based.
+ (map-range-table
+ #'(lambda (begin end value)
+ (remove-range-table begin end ranges)
+ (put-range-table (1- begin) (1- end) value ranges))
+ ranges))
+ (values result ranges))))
;; Function docstring and API are taken from GNU coding.c version 1.353, GPLv2.
(defun unencodable-char-position (start end coding-system
diff -r a1a8728fec10bb035ad37b3a21b248dee9d11ef6 -r 4fc32a3a086efffb57b45f49ac1867f4ecf69bbe lisp/mule/general-late.el
--- a/lisp/mule/general-late.el Wed Feb 04 11:38:25 2009 +0000
+++ b/lisp/mule/general-late.el Wed Feb 04 12:14:38 2009 +0000
@@ -71,7 +71,7 @@
unicode-query-coding-skip-chars-arg
(eval-when-compile
- (when-fboundp #'map-charset-chars
+ (when-fboundp 'map-charset-chars
(loop
for charset in (charset-list)
with skip-chars-string = ""
@@ -80,17 +80,16 @@
(map-charset-chars
#'(lambda (begin end)
(loop
- while (/= end begin)
+ while (and begin (>= end begin))
do
(when (= -1 (char-to-unicode begin))
- (setq this-charset-works nil)
(return-from no-ucs-mapping))
(setq begin (int-to-char (1+ begin)))))
charset)
(setq skip-chars-string
(concat skip-chars-string
(charset-skip-chars-string charset))))
- finally return (skip-chars-quote skip-chars-string)))))
+ finally return skip-chars-string))))
;; At this point in the dump, all the charsets have been loaded. Now, load
;; their Unicode mappings.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Some cosmetic namespace cleanup, glyphs.el, coding.el.
16 years, 1 month
Aidan Kehoe
changeset: 4637:7191a7b120f129618f64efa567ee6b1bf746a900
parent: 4615:774e5c7522bf0681f0ecf0ab015d9ec8dcb35486
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Thu Jan 15 19:21:43 2009 +0000
files: lisp/ChangeLog lisp/coding.el lisp/glyphs.el
description:
Some cosmetic namespace cleanup, glyphs.el, coding.el.
lisp/ChangeLog addition:
2009-01-15 Aidan Kehoe <kehoea(a)parhasard.net>
* coding.el (force-coding-system-equivalency):
Move three functions that we don't want to advertise to being
anonymous lambdas instead.
* glyphs.el :
Remove #'define-constant-glyph and some functions it uses, replace
the latter with anonymous lambdas and the former and its uses with
a call to loop.
Do the same with #'define-obsolete-pointer-glyph and the functions
it uses.
(init-glyphs): Untern this symbol once the associated function has
been called; it's only needed at dump time, not at runtime.
diff -r 774e5c7522bf0681f0ecf0ab015d9ec8dcb35486 -r 7191a7b120f129618f64efa567ee6b1bf746a900 lisp/ChangeLog
--- a/lisp/ChangeLog Tue Jan 13 12:07:27 2009 +0000
+++ b/lisp/ChangeLog Thu Jan 15 19:21:43 2009 +0000
@@ -1,3 +1,17 @@ 2009-01-13 Aidan Kehoe <kehoea@parhasa
+2009-01-15 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * coding.el (force-coding-system-equivalency):
+ Move three functions that we don't want to advertise to being
+ anonymous lambdas instead.
+ * glyphs.el :
+ Remove #'define-constant-glyph and some functions it uses, replace
+ the latter with anonymous lambdas and the former and its uses with
+ a call to loop.
+ Do the same with #'define-obsolete-pointer-glyph and the functions
+ it uses.
+ (init-glyphs): Untern this symbol once the associated function has
+ been called; it's only needed at dump time, not at runtime.
+
2009-01-13 Aidan Kehoe <kehoea(a)parhasard.net>
* mule/mule-cmds.el (set-language-environment-coding-systems):
diff -r 774e5c7522bf0681f0ecf0ab015d9ec8dcb35486 -r 7191a7b120f129618f64efa567ee6b1bf746a900 lisp/coding.el
--- a/lisp/coding.el Tue Jan 13 12:07:27 2009 +0000
+++ b/lisp/coding.el Thu Jan 15 19:21:43 2009 +0000
@@ -243,30 +243,24 @@ if does not differ from the encoded stri
)))
-;;; Make certain variables equivalent to coding-system aliases
-(defun dontusethis-set-value-file-name-coding-system-handler (sym args fun harg handlers)
- (define-coding-system-alias 'file-name (or (car args) 'binary)))
-
-(dontusethis-set-symbol-value-handler
- 'file-name-coding-system
- 'set-value
- 'dontusethis-set-value-file-name-coding-system-handler)
-
-(defun dontusethis-set-value-terminal-coding-system-handler (sym args fun harg handlers)
- (define-coding-system-alias 'terminal (or (car args) 'binary)))
-
-(dontusethis-set-symbol-value-handler
- 'terminal-coding-system
- 'set-value
- 'dontusethis-set-value-terminal-coding-system-handler)
-
-(defun dontusethis-set-value-keyboard-coding-system-handler (sym args fun harg handlers)
- (define-coding-system-alias 'keyboard (or (car args) 'binary)))
-
-(dontusethis-set-symbol-value-handler
- 'keyboard-coding-system
- 'set-value
- 'dontusethis-set-value-keyboard-coding-system-handler)
+;;; Make certain variables equivalent to coding-system aliases:
+(macrolet
+ ((force-coding-system-equivalency (&rest details-list)
+ (loop for (alias variable-symbol)
+ in details-list
+ with result = (list 'progn)
+ do
+ (push
+ `(dontusethis-set-symbol-value-handler ',variable-symbol
+ 'set-value #'(lambda (sym args fun harg handlers)
+ (define-coding-system-alias ',alias
+ (or (car args) 'binary))))
+ result)
+ finally return (nreverse result))))
+ (force-coding-system-equivalency
+ (file-name file-name-coding-system)
+ (terminal terminal-coding-system)
+ (keyboard keyboard-coding-system)))
(when (not (featurep 'mule))
(define-coding-system-alias 'escape-quoted 'binary)
diff -r 774e5c7522bf0681f0ecf0ab015d9ec8dcb35486 -r 7191a7b120f129618f64efa567ee6b1bf746a900 lisp/glyphs.el
--- a/lisp/glyphs.el Tue Jan 13 12:07:27 2009 +0000
+++ b/lisp/glyphs.el Thu Jan 15 19:21:43 2009 +0000
@@ -1084,83 +1084,53 @@ If unspecified in a particular domain, `
(set-glyph-face gc-pointer-glyph 'pointer)
;; Now add the magic access/set behavior.
-
-(defun dontusethis-set-value-glyph-handler (sym args fun harg handler)
- (error "Use `set-glyph-image' to set `%s'" sym))
-(defun dontusethis-make-unbound-glyph-handler (sym args fun harg handler)
- (error "Can't `makunbound' `%s'" sym))
-(defun dontusethis-make-local-glyph-handler (sym args fun harg handler)
- (error "Use `set-glyph-image' to make local values for `%s'" sym))
-
-(defun define-constant-glyph (sym)
- (dontusethis-set-symbol-value-handler
- sym 'set-value
- 'dontusethis-set-value-glyph-handler)
- (dontusethis-set-symbol-value-handler
- sym 'make-unbound
- 'dontusethis-make-unbound-glyph-handler)
- (dontusethis-set-symbol-value-handler
- sym 'make-local
- 'dontusethis-make-local-glyph-handler)
- ;; Make frame properties magically work with glyph variables.
+(loop
+ for sym in '(define-constant-glyphs text-pointer-glyph nontext-pointer-glyph
+ modeline-pointer-glyph selection-pointer-glyph
+ busy-pointer-glyph gc-pointer-glyph divider-pointer-glyph
+ toolbar-pointer-glyph menubar-pointer-glyph
+ scrollbar-pointer-glyph octal-escape-glyph
+ control-arrow-glyph invisible-text-glyph hscroll-glyph
+ truncation-glyph continuation-glyph frame-icon-glyph)
+ with set-value-handler = #'(lambda (sym args fun harg handler)
+ (error 'invalid-change
+ (format
+ "Use `set-glyph-image' to set `%s'"
+ sym)))
+ with make-unbound-handler = #'(lambda (sym args fun harg handler)
+ (error 'invalid-change
+ (format
+ "Can't `makunbound' `%s'" sym)))
+ with make-local-handler =
+ #'(lambda (sym args fun harg handler)
+ (error 'invalid-change
+ (format "Use `set-glyph-image' to make local values for `%s'" sym)))
+ do
+ (dontusethis-set-symbol-value-handler sym 'set-value set-value-handler)
+ (dontusethis-set-symbol-value-handler sym 'make-unbound make-unbound-handler)
+ (dontusethis-set-symbol-value-handler sym 'make-local make-local-handler)
(put sym 'const-glyph-variable t))
-(define-constant-glyph 'text-pointer-glyph)
-(define-constant-glyph 'nontext-pointer-glyph)
-(define-constant-glyph 'modeline-pointer-glyph)
-(define-constant-glyph 'selection-pointer-glyph)
-(define-constant-glyph 'busy-pointer-glyph)
-(define-constant-glyph 'gc-pointer-glyph)
-(define-constant-glyph 'divider-pointer-glyph)
-(define-constant-glyph 'toolbar-pointer-glyph)
-(define-constant-glyph 'menubar-pointer-glyph)
-(define-constant-glyph 'scrollbar-pointer-glyph)
-
-(define-constant-glyph 'octal-escape-glyph)
-(define-constant-glyph 'control-arrow-glyph)
-(define-constant-glyph 'invisible-text-glyph)
-(define-constant-glyph 'hscroll-glyph)
-(define-constant-glyph 'truncation-glyph)
-(define-constant-glyph 'continuation-glyph)
-
-(define-constant-glyph 'frame-icon-glyph)
-
;; backwards compatibility garbage
-
-(defun dontusethis-old-pointer-shape-handler (sym args fun harg handler)
- (let ((value (car args)))
- (if (null value)
- (remove-specifier harg 'global)
- (set-glyph-image (symbol-value harg) value))))
;; It might or might not be garbage, but it's rude. Make these
;; `compatible' instead of `obsolete'. -slb
-(defun define-obsolete-pointer-glyph (old new)
+(loop
+ for (old new) in '((x-pointer-shape text-pointer-glyph)
+ (x-nontext-pointer-shape nontext-pointer-glyph)
+ (x-mode-pointer-shape modeline-pointer-glyph)
+ (x-selection-pointer-shape selection-pointer-glyph)
+ (x-busy-pointer-shape busy-pointer-glyph)
+ (x-gc-pointer-shape gc-pointer-glyph)
+ (x-toolbar-pointer-shape toolbar-pointer-glyph))
+ with set-handler = #'(lambda (sym args fun harg handler)
+ (let ((value (car args)))
+ (if (null value)
+ (remove-specifier harg 'global)
+ (set-glyph-image (symbol-value harg) value))))
+ do
(define-compatible-variable-alias old new)
- (dontusethis-set-symbol-value-handler
- old 'set-value 'dontusethis-old-pointer-shape-handler new))
-
-;;; (defvar x-pointer-shape nil)
-(define-obsolete-pointer-glyph 'x-pointer-shape 'text-pointer-glyph)
-
-;;; (defvar x-nontext-pointer-shape nil)
-(define-obsolete-pointer-glyph 'x-nontext-pointer-shape 'nontext-pointer-glyph)
-
-;;; (defvar x-mode-pointer-shape nil)
-(define-obsolete-pointer-glyph 'x-mode-pointer-shape 'modeline-pointer-glyph)
-
-;;; (defvar x-selection-pointer-shape nil)
-(define-obsolete-pointer-glyph 'x-selection-pointer-shape
- 'selection-pointer-glyph)
-
-;;; (defvar x-busy-pointer-shape nil)
-(define-obsolete-pointer-glyph 'x-busy-pointer-shape 'busy-pointer-glyph)
-
-;;; (defvar x-gc-pointer-shape nil)
-(define-obsolete-pointer-glyph 'x-gc-pointer-shape 'gc-pointer-glyph)
-
-;;; (defvar x-toolbar-pointer-shape nil)
-(define-obsolete-pointer-glyph 'x-toolbar-pointer-shape 'toolbar-pointer-glyph)
+ (dontusethis-set-symbol-value-handler old 'set-value set-handler))
;; for subwindows
(defalias 'subwindow-xid 'image-instance-subwindow-id)
@@ -1267,4 +1237,7 @@ If unspecified in a particular domain, `
(init-glyphs)
-;;; glyphs.el ends here.
+(unintern 'init-glyphs) ;; This was dump time thing, no need to keep the
+ ;; function around.
+
+;;; glyphs.el ends here.
\ No newline at end of file
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Distinguish between special forms and subrs, #'describe-function-1.
16 years, 1 month
Aidan Kehoe
changeset: 4635:a1a8728fec10bb035ad37b3a21b248dee9d11ef6
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Feb 04 11:38:25 2009 +0000
files: lisp/ChangeLog lisp/help.el
description:
Distinguish between special forms and subrs, #'describe-function-1.
lisp/ChangeLog addition:
2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
* help.el (describe-function-1):
Distinguish between special forms and subrs; don't bind
autoload-file, #'symbol-file returns it like any other function
file name.
diff -r 2986723ac32dc7f0328e2afa05aabe1154f83e47 -r a1a8728fec10bb035ad37b3a21b248dee9d11ef6 lisp/ChangeLog
--- a/lisp/ChangeLog Mon Feb 02 23:31:09 2009 +0900
+++ b/lisp/ChangeLog Wed Feb 04 11:38:25 2009 +0000
@@ -1,3 +1,10 @@ 2009-01-31 Aidan Kehoe <kehoea@parhasa
+2009-02-04 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * help.el (describe-function-1):
+ Distinguish between special forms and subrs; don't bind
+ autoload-file, #'symbol-file returns it like any other function
+ file name.
+
2009-01-31 Aidan Kehoe <kehoea(a)parhasard.net>
* mule/mule-cmds.el (finish-set-language-environment):
diff -r 2986723ac32dc7f0328e2afa05aabe1154f83e47 -r a1a8728fec10bb035ad37b3a21b248dee9d11ef6 lisp/help.el
--- a/lisp/help.el Mon Feb 02 23:31:09 2009 +0900
+++ b/lisp/help.el Wed Feb 04 11:38:25 2009 +0000
@@ -1371,7 +1371,7 @@ part of the documentation of internal su
(princ function)
(princ "' is ")
(let* ((def function)
- aliases file-name autoload-file kbd-macro-p fndef macrop)
+ aliases file-name kbd-macro-p fndef macrop)
(while (and (symbolp def) (fboundp def))
(when (not (eq def function))
(setq aliases
@@ -1403,11 +1403,17 @@ part of the documentation of internal su
(an-p "an ")
(t "a "))
"%s"
- (if macro-p " macro" " function")))
+ (cond
+ ((eq 'neither macro-p)
+ "")
+ (macrop " macro")
+ (t " function"))))
string)))))
(cond ((or (stringp def) (vectorp def))
(princ "a keyboard macro.")
(setq kbd-macro-p t))
+ ((special-form-p fndef)
+ (funcall int "built-in special form" nil 'neither))
((subrp fndef)
(funcall int "built-in" nil macrop))
((compiled-function-p fndef)
@@ -1417,7 +1423,6 @@ part of the documentation of internal su
((eq (car-safe fndef) 'mocklisp)
(funcall int "mocklisp" nil macrop))
((eq (car-safe def) 'autoload)
- (setq autoload-file (elt def 1))
(funcall int "autoloaded Lisp" t (elt def 4)))
((and (symbolp def) (not (fboundp def)))
(princ "a symbol with a void (unbound) function definition."))
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Set icon resource on frame early enough for openbox to find it.
16 years, 1 month
Aidan Kehoe
changeset: 4633:3623446b34bcc8b4f95e6c11badc75054e0225e5
parent: 4631:c6d4ffc018a641939bd983c1abbf7f9fc7de96ab
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Mon Feb 02 23:03:31 2009 +0900
files: src/ChangeLog src/frame-x.c
description:
Set icon resource on frame early enough for openbox to find it.
diff -r c6d4ffc018a641939bd983c1abbf7f9fc7de96ab -r 3623446b34bcc8b4f95e6c11badc75054e0225e5 src/ChangeLog
--- a/src/ChangeLog Sat Jan 31 17:43:20 2009 +0000
+++ b/src/ChangeLog Mon Feb 02 23:03:31 2009 +0900
@@ -1,3 +1,9 @@ 2009-01-31 Aidan Kehoe <kehoea@parhasa
+2009-02-02 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * frame-x.c (x_init_frame_2): Placate openbox by calling
+ update_frame_icon. Suggested by Henry S. Thompson
+ <ht(a)inf.ed.ac.uk> in <f5btz7ghm5k(a)hildegard.inf.ed.ac.uk>.
+
2009-01-31 Aidan Kehoe <kehoea(a)parhasard.net>
* unicode.c (unicode_convert):
diff -r c6d4ffc018a641939bd983c1abbf7f9fc7de96ab -r 3623446b34bcc8b4f95e6c11badc75054e0225e5 src/frame-x.c
--- a/src/frame-x.c Sat Jan 31 17:43:20 2009 +0000
+++ b/src/frame-x.c Mon Feb 02 23:03:31 2009 +0900
@@ -2160,6 +2160,14 @@ x_init_frame_2 (struct frame *f, Lisp_Ob
* We'll just need to be careful in the modeline specs.
*/
update_frame_title (f);
+ /* Henry S. Thompson:
+ * Must set icon resource before mapping frame, or some WMs may
+ * lose the icon (openbox). See <f5bhc3efb17(a)hildegard.inf.ed.ac.uk>.
+ * SJT:
+ * This probably means that the frame-icon library won't work with
+ * that WM.
+ */
+ update_frame_icon (f);
}
static void
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Update comment.
16 years, 1 month
Aidan Kehoe
changeset: 4634:2986723ac32dc7f0328e2afa05aabe1154f83e47
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Mon Feb 02 23:31:09 2009 +0900
files: src/ChangeLog src/frame-x.c
description:
Update comment.
diff -r 3623446b34bcc8b4f95e6c11badc75054e0225e5 -r 2986723ac32dc7f0328e2afa05aabe1154f83e47 src/ChangeLog
--- a/src/ChangeLog Mon Feb 02 23:03:31 2009 +0900
+++ b/src/ChangeLog Mon Feb 02 23:31:09 2009 +0900
@@ -1,3 +1,7 @@ 2009-02-02 Stephen J. Turnbull <stephe
+2009-02-02 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * frame-x.c (x_init_frame_2): Update comment per new info from HT.
+
2009-02-02 Stephen J. Turnbull <stephen(a)xemacs.org>
* frame-x.c (x_init_frame_2): Placate openbox by calling
diff -r 3623446b34bcc8b4f95e6c11badc75054e0225e5 -r 2986723ac32dc7f0328e2afa05aabe1154f83e47 src/frame-x.c
--- a/src/frame-x.c Mon Feb 02 23:03:31 2009 +0900
+++ b/src/frame-x.c Mon Feb 02 23:31:09 2009 +0900
@@ -2165,7 +2165,8 @@ x_init_frame_2 (struct frame *f, Lisp_Ob
* lose the icon (openbox). See <f5bhc3efb17(a)hildegard.inf.ed.ac.uk>.
* SJT:
* This probably means that the frame-icon library won't work with
- * that WM.
+ * that WM. Late breaking news: it *does* work, so possibly the
+ * problem at initialization is due to a race condition.
*/
update_frame_icon (f);
}
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
Re: ediff and emacs-internal coding system
16 years, 1 month
Aidan Kehoe
Ar an triú lá déag de mí Feabhra, scríobh Stephen J. Turnbull:
> Michael Kifer writes:
>
> > Are you saying that escape-quoted is better than emacs-mule for XEmacs?
> > What problems does emacs-mule have?
>
> The file is slurped into the buffer directly, with no decoding at
> all. If the file is not actually an emacs-mule file, XEmacs will
> crash.
>
> In any case, emacs-mule is available only in DEBUG builds of XEmacs.
As I understand it, it’s possible to *create* such a coding system only
under DEBUG builds, but we don’t actually do it.
--
¿Dónde estará ahora mi sobrino Yoghurtu Nghe, 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
Re: ediff and emacs-internal coding system
16 years, 1 month
Aidan Kehoe
Ar an t-aonú lá déag de mí Feabhra, scríobh Nelson Ferreira:
> On Wednesday 11 February 2009 06:25:52 am Aidan Kehoe wrote:
> > Ar an deichiú lá de mí Feabhra, scríobh Norbert Koch:
> > > * Michael Kifer <kifer(a)cs.sunysb.edu>:
> > >
> > > Hi!
> > >
> > > Could someone please have a look at the patch down below and apply
> > > it or comment on it?
> >
> > Nelson, (copy-coding-system 'undecided 'emacs-internal) is wrong.
> > undecided is a coding system that is not sure what line endings it's
> > going to use, as to the content of the region it?s trying to encode it
> > treats it as does the binary coding system, trashing non-Latin-1. The
> > reason the ediff people are using emacs-internal, if I understand
> > things correctly, is to encode unambiguously every GNU Emacs character,
> > and using undecided defeats the purpose of that. Ediff should be using
> > escape-quoted when (featurep 'xemacs).
> >
> > It looks like emacs-internal is the GNU Emacs 23.X equivalent of
> > emacs-mule, (in this case an alias of utf-8-emacs-unix) but it does not
> > appear to have the issues that that has. Good.
> >
>
> So Aidan, you advise that I submit:
>
> +;; compatibility for new Emacsen (don't use it)
> +(copy-coding-system 'escape-quoted 'emacs-internal)
> +
If you’re going to make a compatible coding system, that would be the one to
use. But code that uses it is brittle; escape-quoted does not correspond to
the XEmacs or SXEmacs internal encoding exactly, and code that assumes it
does will break.
I don’t know why 21.4 and SXEmacs doesn’t do it like this, by the way, but
in 21.5:
(define-coding-system-alias 'emacs-internal 'escape-quoted)
would be the equivalent code, saving a little memory.
--
¿Dónde estará ahora mi sobrino Yoghurtu Nghe, 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