carbon2-commit: bytecomp.el: bind print-gensym-alist to nil even with non-defvar, defun, [...] forms.
16 years, 11 months
Aidan Kehoe
changeset: 4406:e8f448f997ac016c496451fbb54fff6e4b6e4f9d
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Mon Jan 14 15:25:22 2008 +0100
files: lisp/ChangeLog lisp/bytecomp.el
description:
bytecomp.el: bind print-gensym-alist to nil even with non-defvar, defun, [...] forms.
2008-01-14 Aidan Kehoe <kehoea(a)parhasard.net>
* bytecomp.el (byte-compile-output-file-form):
Bind print-gensym-alist to nil, as we do within
byte-compile-output-docform.
diff -r cbf129b005dff4258c4651fefb80e646940d82f7 -r e8f448f997ac016c496451fbb54fff6e4b6e4f9d lisp/ChangeLog
--- a/lisp/ChangeLog Sat Jan 12 18:04:13 2008 +0100
+++ b/lisp/ChangeLog Mon Jan 14 15:25:22 2008 +0100
@@ -1,3 +1,9 @@ 2008-01-04 Michael Sperber <mike@xemac
+2008-01-14 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * bytecomp.el (byte-compile-output-file-form):
+ Bind print-gensym-alist to nil, as we do within
+ byte-compile-output-docform.
+
2008-01-04 Michael Sperber <mike(a)xemacs.org>
* code-files.el (insert-file-contents):
diff -r cbf129b005dff4258c4651fefb80e646940d82f7 -r e8f448f997ac016c496451fbb54fff6e4b6e4f9d lisp/bytecomp.el
--- a/lisp/bytecomp.el Sat Jan 12 18:04:13 2008 +0100
+++ b/lisp/bytecomp.el Mon Jan 14 15:25:22 2008 +0100
@@ -1888,7 +1888,8 @@ With argument, insert value in current b
(print-readably t) ; print #[] for bytecode, 'x for (quote x)
(print-gensym (if (and byte-compile-print-gensym
(not byte-compile-emacs19-compatibility))
- '(t) nil)))
+ '(t) nil))
+ print-gensym-alist)
(princ "\n" byte-compile-outbuffer)
(prin1 form byte-compile-outbuffer)
nil)))
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
carbon2-commit: Clarify #'map-range-table docstring.
16 years, 11 months
Aidan Kehoe
changeset: 4405:cbf129b005dff4258c4651fefb80e646940d82f7
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
carbon2-commit: ChangeLog spelling correction; scrool -> scroll
16 years, 11 months
Aidan Kehoe
changeset: 4404:5902c5214a77997e6f80bf7e79680e4ea31c6e68
parent: 4402:4c5cd87620e4cf6f8f3101f5ed972f774d2df4c6
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: Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
16 years, 11 months
Aidan Kehoe
changeset: 4402:e70cc8a90e9043075a0e40fe9587d2c931fb618e
tag: tip
parent: 4401:01970033faa65b61e6fdd252967bccf4bbac491c
parent: 4400:555e21a66d51b966860fc9a82a4e6a1cf40a78fe
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Thu Jan 17 11:55:11 2008 +0100
files:
description:
Automated merge with ssh://aidan-guest@hg.debian.org//hg/xemacs/xemacs
diff -r 01970033faa65b61e6fdd252967bccf4bbac491c -r e70cc8a90e9043075a0e40fe9587d2c931fb618e lisp/ChangeLog
--- a/lisp/ChangeLog Thu Jan 17 11:52:45 2008 +0100
+++ b/lisp/ChangeLog Thu Jan 17 11:55:11 2008 +0100
@@ -1,3 +1,10 @@ 2008-01-16 Aidan Kehoe <kehoea@parhasa
+2008-01-17 Mike Sperber <mike(a)xemacs.org>
+
+ * files.el (insert-directory): Bind `coding-system-for-read' to
+ the `file-name' coding system. (Previously, the default ended up
+ being undecided, which doesn't work well for UTF-8-based locales,
+ for example.)
+
2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
* keydefs.el (global-map):
diff -r 01970033faa65b61e6fdd252967bccf4bbac491c -r e70cc8a90e9043075a0e40fe9587d2c931fb618e lisp/files.el
--- a/lisp/files.el Thu Jan 17 11:52:45 2008 +0100
+++ b/lisp/files.el Thu Jan 17 11:55:11 2008 +0100
@@ -4177,6 +4177,9 @@ If WILDCARD, it also runs the shell spec
file switches wildcard full-directory-p)))
(t
(let* ((beg (point))
+ ;; on Unix, assume that ls will output in what the
+ ;; file-name coding system specifies
+ (coding-system-for-read (get-coding-system 'file-name))
(result
(if wildcard
;; Run ls in the directory of the file pattern we asked for.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
commit: Configure fixes from Hans de Graaff, as used in Gentoo.
16 years, 11 months
Aidan Kehoe
changeset: 4401:01970033faa65b61e6fdd252967bccf4bbac491c
parent: 4399:e5b3c4dbc8a2a2c9c86f8d6e8b606a09033415db
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Thu Jan 17 11:52:45 2008 +0100
files: ChangeLog configure configure.ac
description:
Configure fixes from Hans de Graaff, as used in Gentoo.
2008-01-17 Aidan Kehoe <kehoea(a)parhasard.net>
* configure.ac:
If using a version of the gdbm library that sticks dbm_open in
libgdbm_compat.so, also link to that library.
Correct a thinko with DBM version 4 checks. Both from Hans de
Graaff, in
http://mid.gmane.org/20050812092756.6850.qmail@graaff.xs4all.nl
and
http://mid.gmane.org/pan.2007.06.24.10.10.57@gentoo.org; thank you
Hans!
* configure:
Regenerate.
diff -r e5b3c4dbc8a2a2c9c86f8d6e8b606a09033415db -r 01970033faa65b61e6fdd252967bccf4bbac491c ChangeLog
--- a/ChangeLog Wed Jan 16 15:43:01 2008 +0100
+++ b/ChangeLog Thu Jan 17 11:52:45 2008 +0100
@@ -1,3 +1,17 @@ 2008-01-01 Stephen J. Turnbull <stephe
+2008-01-17 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * configure.ac:
+ If using a version of the gdbm library that sticks dbm_open in
+ libgdbm_compat.so, also link to that library.
+ Correct a thinko with DBM version 4 checks. Both from Hans de
+ Graaff, in
+ http://mid.gmane.org/20050812092756.6850.qmail@graaff.xs4all.nl
+ and
+ http://mid.gmane.org/pan.2007.06.24.10.10.57@gentoo.org; thank you
+ Hans!
+ * configure:
+ Regenerate.
+
2008-01-01 Stephen J. Turnbull <stephen(a)xemacs.org>
* Makefile.in.in (mkpkgdir): Fix incorrect comment convention.
diff -r e5b3c4dbc8a2a2c9c86f8d6e8b606a09033415db -r 01970033faa65b61e6fdd252967bccf4bbac491c configure
--- a/configure Wed Jan 16 15:43:01 2008 +0100
+++ b/configure Thu Jan 17 11:52:45 2008 +0100
@@ -37246,10 +37246,79 @@ if test $ac_cv_lib_gdbm_dbm_open = yes;
enable_database_gdbm=yes enable_database_dbm=no libdbm=-lgdbm
else
+ { echo "$as_me:$LINENO: checking for dbm_open in -lgdbm_compat" >&5
+echo $ECHO_N "checking for dbm_open in -lgdbm_compat... $ECHO_C" >&6; }
+if test "${ac_cv_lib_gdbm_compat_dbm_open+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lgdbm_compat -lgdbm $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any GCC internal prototype to avoid an error.
+ Use char because int might match the return type of a GCC
+ builtin and then its argument prototype would still apply. */
+#ifdef __cplusplus
+extern "C"
+#endif
+char dbm_open ();
+int
+main ()
+{
+return dbm_open ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+ *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+ (eval "$ac_link") 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && {
+ test -z "$ac_c_werror_flag" ||
+ test ! -s conftest.err
+ } && test -s conftest$ac_exeext &&
+ $as_test_x conftest$ac_exeext; then
+ ac_cv_lib_gdbm_compat_dbm_open=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_cv_lib_gdbm_compat_dbm_open=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_lib_gdbm_compat_dbm_open" >&5
+echo "${ECHO_T}$ac_cv_lib_gdbm_compat_dbm_open" >&6; }
+if test $ac_cv_lib_gdbm_compat_dbm_open = yes; then
+
+ enable_database_gdbm=yes enable_database_dbm=no libdbm="-lgdbm_compat -lgdbm"
+else
+
if test "$enable_database_gdbm" = "yes"; then
{ echo "Error:" "Required GNU DBM support cannot be provided." >&2; exit 1; }
fi
enable_database_gdbm=no
+fi
+
+
fi
fi
@@ -37902,7 +37971,7 @@ fi
fi
- if test "$enable_database_berkdb" != "yes" -a "$dbver" = "4"; then
+ if test "$enable_database_berkdb" = "yes" -a "$dbver" = "4"; then
rm -f $tempcname
echo "#include <$db_h_file>" > $tempcname
echo "configure___ dbfunc=db_create" >> $tempcname
diff -r e5b3c4dbc8a2a2c9c86f8d6e8b606a09033415db -r 01970033faa65b61e6fdd252967bccf4bbac491c configure.ac
--- a/configure.ac Wed Jan 16 15:43:01 2008 +0100
+++ b/configure.ac Thu Jan 17 11:52:45 2008 +0100
@@ -5408,10 +5408,13 @@ if test "$enable_database_gdbm" != "no";
if test "$enable_database_gdbm" != "no"; then
AC_CHECK_LIB(gdbm, dbm_open, [
enable_database_gdbm=yes enable_database_dbm=no libdbm=-lgdbm], [
+ AC_CHECK_LIB(gdbm_compat, dbm_open, [
+ enable_database_gdbm=yes enable_database_dbm=no libdbm="-lgdbm_compat -lgdbm"], [
if test "$enable_database_gdbm" = "yes"; then
XE_DIE("Required GNU DBM support cannot be provided.")
fi
- enable_database_gdbm=no])
+ enable_database_gdbm=no], -lgdbm)
+ ])
fi
dnl Check for DBM support in libc and libdbm.
@@ -5492,7 +5495,7 @@ yes
fi
dnl Berk db 4.1 decorates public functions with version information
- if test "$enable_database_berkdb" != "yes" -a "$dbver" = "4"; then
+ if test "$enable_database_berkdb" = "yes" -a "$dbver" = "4"; then
rm -f $tempcname
echo "#include <$db_h_file>" > $tempcname
echo "configure___ dbfunc=db_create" >> $tempcname
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
commit: Call #'make-temp-file in mule-tests.el, now it's available.
16 years, 11 months
Aidan Kehoe
changeset: 4399:e5b3c4dbc8a2a2c9c86f8d6e8b606a09033415db
tag: tip
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 16 15:43:01 2008 +0100
files: tests/ChangeLog tests/automated/mule-tests.el
description:
Call #'make-temp-file in mule-tests.el, now it's available.
2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/mule-tests.el (test-file-name):
Call #'make-temp-file now it's available. Remove a long comment
saying, essentially, that it should be used, not
#'make-temp-name.
diff -r 479443c0f95a6291466173eb0254f61681654c9c -r e5b3c4dbc8a2a2c9c86f8d6e8b606a09033415db tests/ChangeLog
--- a/tests/ChangeLog Wed Jan 16 15:20:51 2008 +0100
+++ b/tests/ChangeLog Wed Jan 16 15:43:01 2008 +0100
@@ -1,3 +1,10 @@ 2008-01-16 Aidan Kehoe <kehoea@parhasa
+2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * automated/mule-tests.el (test-file-name):
+ Call #'make-temp-file now it's available. Remove a long comment
+ saying, essentially, that it should be used, not
+ #'make-temp-name.
+
2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/hash-table-tests.el:
diff -r 479443c0f95a6291466173eb0254f61681654c9c -r e5b3c4dbc8a2a2c9c86f8d6e8b606a09033415db tests/automated/mule-tests.el
--- a/tests/automated/mule-tests.el Wed Jan 16 15:20:51 2008 +0100
+++ b/tests/automated/mule-tests.el Wed Jan 16 15:43:01 2008 +0100
@@ -118,21 +118,8 @@ This is a naive implementation in Lisp.
;; Fixed 2007-06-22 <18043.2793.611745.734215(a)parhasard.net>.
;;----------------------------------------------------------------
-(let ((test-file-name
- ;; The Gnus people, when they call #'make-temp-name, then loop,
- ;; checking if the corresponding file exists. Our #'make-temp-name
- ;; already does this loop, and the Gnus approach doesn't bring
- ;; anything; there remains a race condition if you can predict the
- ;; path name. The path name in question depends on the process ID and
- ;; a (weak) PRNG seeded with the seconds to the power of the
- ;; milliseconds of some instant close to the startup time of this
- ;; XEmacs; without being able to read the address space of this
- ;; XEmacs, or monitor what stat() calls it does, it is not predictable.
- ;;
- ;; The really kosher way to do this is to merge GNU's make-temp-file
- ;; and use that. It basically has the functionality of the Unix
- ;; mkstemp.
- (make-temp-name (expand-file-name "tXfXsKc" (temp-directory))))
+(let ((test-file-name
+ (make-temp-file (expand-file-name "tXfXsKc" (temp-directory))))
revert-buffer-function
kill-buffer-hook) ; paranoia
(find-file test-file-name)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
commit: Have list hashes depend on the order of the contents, as is the case for vectors.
16 years, 11 months
Aidan Kehoe
changeset: 4398:479443c0f95a6291466173eb0254f61681654c9c
tag: tip
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 16 15:20:51 2008 +0100
files: src/ChangeLog src/elhash.c tests/ChangeLog tests/automated/hash-table-tests.el
description:
Have list hashes depend on the order of the contents, as is the case for vectors.
src/ChangeLog addition:
2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
* elhash.c (internal_hash):
Make short lists with the same contents in a different order hash
distinctly. Gives better performance for things like three-element
lists describing colours. Thank you Sebastian Freundt!
tests/ChangeLog addition:
2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/hash-table-tests.el:
Assert that two short lists with the same contents in distinct
orders hash differently.
diff -r 9e28067e3083ce90cdd48370cd9f7947862681f9 -r 479443c0f95a6291466173eb0254f61681654c9c src/ChangeLog
--- a/src/ChangeLog Wed Jan 16 00:19:59 2008 +0100
+++ b/src/ChangeLog Wed Jan 16 15:20:51 2008 +0100
@@ -1,3 +1,10 @@ 2008-01-15 Aidan Kehoe <kehoea@parhasa
+2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * elhash.c (internal_hash):
+ Make short lists with the same contents in a different order hash
+ distinctly. Gives better performance for things like three-element
+ lists describing colours. Thank you Sebastian Freundt!
+
2008-01-15 Aidan Kehoe <kehoea(a)parhasard.net>
* print.c (prin1_to_string): New.
diff -r 9e28067e3083ce90cdd48370cd9f7947862681f9 -r 479443c0f95a6291466173eb0254f61681654c9c src/elhash.c
--- a/src/elhash.c Wed Jan 16 00:19:59 2008 +0100
+++ b/src/elhash.c Wed Jan 16 15:20:51 2008 +0100
@@ -1719,12 +1719,33 @@ internal_hash (Lisp_Object obj, int dept
{
if (depth > 5)
return 0;
- if (CONSP (obj))
- {
- /* no point in worrying about tail recursion, since we're not
- going very deep */
- return HASH2 (internal_hash (XCAR (obj), depth + 1),
- internal_hash (XCDR (obj), depth + 1));
+
+ if (CONSP(obj))
+ {
+ Hashcode hash, h;
+ int s;
+
+ depth += 1;
+
+ if (!CONSP(XCDR(obj)))
+ {
+ /* special case for '(a . b) conses */
+ return HASH2(internal_hash(XCAR(obj), depth),
+ internal_hash(XCDR(obj), depth));
+ }
+
+ /* Don't simply tail recurse; we want to hash lists with the
+ same contents in distinct orders differently. */
+ hash = internal_hash(XCAR(obj), depth);
+
+ obj = XCDR(obj);
+ for (s = 1; s < 6 && CONSP(obj); obj = XCDR(obj), s++)
+ {
+ h = internal_hash(XCAR(obj), depth);
+ hash = HASH3(hash, h, s);
+ }
+
+ return hash;
}
if (STRINGP (obj))
{
diff -r 9e28067e3083ce90cdd48370cd9f7947862681f9 -r 479443c0f95a6291466173eb0254f61681654c9c tests/ChangeLog
--- a/tests/ChangeLog Wed Jan 16 00:19:59 2008 +0100
+++ b/tests/ChangeLog Wed Jan 16 15:20:51 2008 +0100
@@ -1,3 +1,9 @@ 2008-01-15 Aidan Kehoe <kehoea@parhasa
+2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * automated/hash-table-tests.el:
+ Assert that two short lists with the same contents in distinct
+ orders hash differently.
+
2008-01-15 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/lisp-tests.el (literal-with-uninterned):
diff -r 9e28067e3083ce90cdd48370cd9f7947862681f9 -r 479443c0f95a6291466173eb0254f61681654c9c tests/automated/hash-table-tests.el
--- a/tests/automated/hash-table-tests.el Wed Jan 16 00:19:59 2008 +0100
+++ b/tests/automated/hash-table-tests.el Wed Jan 16 15:20:51 2008 +0100
@@ -281,3 +281,4 @@
;;; Test sxhash
(Assert (= (sxhash "foo") (sxhash "foo")))
(Assert (= (sxhash '(1 2 3)) (sxhash '(1 2 3))))
+(Assert (/= (sxhash '(1 2 3)) (sxhash '(3 2 1))))
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
[PATCH] Make `suppress-keymap' work with Egg and Canna
16 years, 11 months
Katsumi Yamaoka
Hi,
A user who uses Gnus and uses Egg or Canna for entering CJK text
cannot use some summary commands in the Gnus article buffer. I
actually use Egg for enterting Japanese text. I noticed recently
the real cause of this long-standing problem while playing with
a certain function in the Gnus CVS trunk. It is because:
** Gnus runs `suppress-keymap' on the article keymap in order to
replace `self-insert-command', which many keys are bound to,
with `undefined'. And then it replaces `undefined' with the
command that reads the summary keymap and runs the summary
command (`gnus-article-read-summary-keys').
** Usually egg.el or canna.el is loaded when XEmacs starts and
replaces `self-insert-command' with `egg-self-insert-command'
or `canna-self-insert-command' respectively in `global-map'.
** `suppress-keymap' replaces only `self-insert-command' with
`undefined' in `global-map'.
Maybe what is bad is that Egg and Canna replace `self-insert-command'
in `global-map', but it seems quite hard to improve those traditional
tools. Instead, there are three possible solutions:
1. Make egg.el and canna.el modify `suppress-keymap' to support
Egg and Canna. This way is what I recommend (and also
implemented in old Egg and Canna for the modern Emacs).
-> Patch1
2. Make `suppress-keymap' support Egg and Canna in keymap.el.
But it is useless for people who don't use Egg or Canna.
-> Patch2
3. If both of the above are not acceptable to XEmacs, a user has
no choice but to add the one like the following to the XEmacs
init file:
(defadvice suppress-keymap (after remap-xxx-self-insert-command activate)
"Remap *-self-insert-command to `undefined'."
(substitute-key-definition 'egg-self-insert-command 'undefined
(ad-get-arg 0) global-map)
(substitute-key-definition 'canna-self-insert-command 'undefined
(ad-get-arg 0) global-map)
(substitute-key-definition 'can-n-egg-self-insert-command 'undefined
(ad-get-arg 0) global-map))
Regards,
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
commit: Bind '(shift delete) to #'kill-primary-selection by default.
16 years, 11 months
Aidan Kehoe
changeset: 4397:9e28067e3083ce90cdd48370cd9f7947862681f9
tag: tip
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Wed Jan 16 00:19:59 2008 +0100
files: lisp/ChangeLog lisp/keydefs.el
description:
Bind '(shift delete) to #'kill-primary-selection by default.
2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
* keydefs.el (global-map):
Bind '(shift delete) to #'kill-primary-selection, as described by
Glynn Clements in
16434.49191.47038.991206(a)cerise.nosuchdomain.co.uk of 2004-02-08.
diff -r e97f16fb2e2584470e54cd36c7f17eaff95c06a4 -r 9e28067e3083ce90cdd48370cd9f7947862681f9 lisp/ChangeLog
--- a/lisp/ChangeLog Tue Jan 15 22:59:28 2008 +0100
+++ b/lisp/ChangeLog Wed Jan 16 00:19:59 2008 +0100
@@ -1,3 +1,10 @@ 2008-01-14 Jerry James <james(a)xemacs.o
+2008-01-16 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * keydefs.el (global-map):
+ Bind '(shift delete) to #'kill-primary-selection, as described by
+ Glynn Clements in
+ 16434.49191.47038.991206(a)cerise.nosuchdomain.co.uk of 2004-02-08.
+
2008-01-14 Jerry James <james(a)xemacs.org>
* font-lock.el (font-lock-add-keywords): Adapt to differences in
diff -r e97f16fb2e2584470e54cd36c7f17eaff95c06a4 -r 9e28067e3083ce90cdd48370cd9f7947862681f9 lisp/keydefs.el
--- a/lisp/keydefs.el Tue Jan 15 22:59:28 2008 +0100
+++ b/lisp/keydefs.el Wed Jan 16 00:19:59 2008 +0100
@@ -620,11 +620,15 @@ Keymap for characters following C-c.")
(define-key global-map '(meta delete) 'backward-or-forward-kill-word)
(define-key global-map [(control x) (delete)]
'backward-or-forward-kill-sentence)
+(define-key global-map '(shift delete) 'kill-primary-selection)
+
(define-key global-map 'kp-delete 'backward-or-forward-delete-char)
(define-key global-map '(control kp-delete) 'backward-or-forward-kill-word)
(define-key global-map '(meta kp-delete) 'backward-or-forward-kill-word)
(define-key global-map [(control x) (kp-delete)]
'backward-or-forward-kill-sentence)
+
+(define-key global-map '(shift kp-delete) 'kill-primary-selection)
;; don't try this one at home, kids.
(define-key global-map '(control meta delete) 'backward-or-forward-kill-sexp)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches
commit: Don't assume lisp-tests.el will be correctly read as UTF-8.
16 years, 11 months
Aidan Kehoe
changeset: 4396:e97f16fb2e2584470e54cd36c7f17eaff95c06a4
tag: tip
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Tue Jan 15 22:59:28 2008 +0100
files: tests/ChangeLog tests/automated/lisp-tests.el
description:
Don't assume lisp-tests.el will be correctly read as UTF-8.
2008-01-15 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/lisp-tests.el (literal-with-uninterned):
Use ?\x syntax for Latin-1 characters, don't assume that the file
will be read as UTF-8.
diff -r b03b5e362fcff61ac4632834ea16615407c1264b -r e97f16fb2e2584470e54cd36c7f17eaff95c06a4 tests/ChangeLog
--- a/tests/ChangeLog Tue Jan 15 21:35:41 2008 +0100
+++ b/tests/ChangeLog Tue Jan 15 22:59:28 2008 +0100
@@ -1,3 +1,9 @@ 2008-01-15 Aidan Kehoe <kehoea@parhasa
+2008-01-15 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * automated/lisp-tests.el (literal-with-uninterned):
+ Use ?\x syntax for Latin-1 characters, don't assume that the file
+ will be read as UTF-8.
+
2008-01-15 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/lisp-tests.el (thing):
diff -r b03b5e362fcff61ac4632834ea16615407c1264b -r e97f16fb2e2584470e54cd36c7f17eaff95c06a4 tests/automated/lisp-tests.el
--- a/tests/automated/lisp-tests.el Tue Jan 15 21:35:41 2008 +0100
+++ b/tests/automated/lisp-tests.el Tue Jan 15 22:59:28 2008 +0100
@@ -1303,7 +1303,7 @@
(let* ((literal-with-uninterned
'(first-element
[#1=#:G32976 #2=#:G32974 #3=#:G32971 #4=#:G32969 alias
- #s(hash-table size 256 data (969 ?ù 55 ?7 166 ?¦ ))
+ #s(hash-table size 256 data (969 ?\xF9 55 ?7 166 ?\xA6))
#5=#:G32970 #6=#:G32972]))
(print-readably t)
(print-gensym t)
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches