carbon2-commit: Merge some stuff in lib-src
13 years, 7 months
Ben Wing
changeset: 5550:06dd936cde16
parent: 5080:422b4b4fb2a6
user: Ben Wing <ben(a)xemacs.org>
date: Fri Feb 19 22:13:17 2010 -0600
files: lib-src/ChangeLog lib-src/digest-doc.c lib-src/emacs.csh lib-src/hexl.c lib-src/sorted-doc.c lib-src/vcdiff
description:
Merge some stuff in lib-src
-------------------- ChangeLog entries follow: --------------------
lib-src/ChangeLog addition:
2010-02-19 Ben Wing <ben(a)xemacs.org>
* digest-doc.c:
* digest-doc.c (main):
* emacs.csh:
* hexl.c:
* hexl.c (Gabryelski):
* hexl.c (main):
* hexl.c (usage):
* sorted-doc.c:
* sorted-doc.c (fatal):
* sorted-doc.c (xstrdup):
* sorted-doc.c (main):
* vcdiff:
Merge up to FSF 23.1.92.
diff -r 422b4b4fb2a6 -r 06dd936cde16 lib-src/ChangeLog
--- a/lib-src/ChangeLog Thu Feb 11 19:33:50 2010 -0500
+++ b/lib-src/ChangeLog Fri Feb 19 22:13:17 2010 -0600
@@ -1,3 +1,19 @@
+2010-02-19 Ben Wing <ben(a)xemacs.org>
+
+ * digest-doc.c:
+ * digest-doc.c (main):
+ * emacs.csh:
+ * hexl.c:
+ * hexl.c (Gabryelski):
+ * hexl.c (main):
+ * hexl.c (usage):
+ * sorted-doc.c:
+ * sorted-doc.c (fatal):
+ * sorted-doc.c (xstrdup):
+ * sorted-doc.c (main):
+ * vcdiff:
+ Merge up to FSF 23.1.92.
+
2010-02-11 Vin Shelton <acs(a)xemacs.org>
* winclient.c: Bump connection retries to 20 because some people
diff -r 422b4b4fb2a6 -r 06dd936cde16 lib-src/digest-doc.c
--- a/lib-src/digest-doc.c Thu Feb 11 19:33:50 2010 -0500
+++ b/lib-src/digest-doc.c Fri Feb 19 22:13:17 2010 -0600
@@ -1,20 +1,52 @@
-/* Give this program DOCSTR.mm.nn as standard input
- and it outputs to standard output
- a file of nroff output containing the doc strings.
+/* Give this program DOC-mm.nn.oo as standard input and it outputs to
+ standard output a file of nroff output containing the doc strings.
- See also sorted-doc.c, which produces similar output
- but in texinfo format and sorted by function/variable name. */
+Copyright (C) 1987, 1994, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+ 2008, 2009, 2010 Free Software Foundation, Inc.
+
+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 3 of the License, 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. If not, see <http://www.gnu.org/licenses/>.
+
+
+See also sorted-doc.c, which produces similar output
+but in texinfo format and sorted by function/variable name. */
+
+/* Synced up with: GNU 23.1.92. */
+/* Synced by: Ben Wing, 2-17-10. */
#ifdef emacs
#include <config.h>
#endif
#include <stdio.h>
+#ifdef WIN32_NATIVE
+#include <fcntl.h> /* for O_BINARY */
+#include <io.h> /* for setmode */
+#endif
+
int
main (int argc, char **argv)
{
register int ch;
register int notfirst = 0;
+
+#ifdef WIN32_NATIVE
+ /* DOC is a binary file. */
+ if (!isatty (fileno (stdin)))
+ setmode (fileno (stdin), O_BINARY);
+#endif
printf (".TL\n");
printf ("Command Summary for XEmacs\n");
@@ -50,3 +82,6 @@
}
return 0;
}
+
+/* arch-tag: 2ba2c9b0-4157-4eba-bd9f-967e3677e35f
+ (do not change this comment) */
diff -r 422b4b4fb2a6 -r 06dd936cde16 lib-src/emacs.csh
--- a/lib-src/emacs.csh Thu Feb 11 19:33:50 2010 -0500
+++ b/lib-src/emacs.csh Fri Feb 19 22:13:17 2010 -0600
@@ -1,25 +1,34 @@
-# This defines a csh command named `edit' which resumes an
-# existing Emacs or starts a new one if none exists.
-# One way or another, any arguments are passed to Emacs to specify files
-# (provided you have loaded `resume.el').
-# - Michael DeCorte
+### emacs.csh
-# These are the possible values of $whichjob
-# 1 = new ordinary emacs (the -nw is so that it doesn't try to do X)
-# 2 = resume emacs
-# 3 = new emacs under X (-i is so that you get a reasonable icon)
-# 4 = resume emacs under X
-# 5 = new emacs under suntools
-# 6 = resume emacs under suntools
-# 7 = new emacs under X and suntools - doesn't make any sense, so use X
-# 8 = resume emacs under X and suntools - doesn't make any sense, so use X
+## Add legal notice if non-trivial amounts of code are added.
+
+## Author: Michael DeCorte
+
+### Commentary:
+
+# Synced up with: GNU 23.1.92.
+# Synced by: Ben Wing, 2-17-10.
+
+## This file is obsolete. Use emacsclient -a instead.
+
+## This defines a csh command named `edit' which resumes an
+## existing Emacs or starts a new one if none exists.
+## One way or another, any arguments are passed to Emacs to specify files
+## (provided you have loaded `resume.el').
+
+## These are the possible values of $whichjob
+## 1 = new ordinary emacs (the -nw is so that it doesn't try to do X)
+## 2 = resume emacs
+## 3 = new emacs under X (-i is so that you get a reasonable icon)
+## 4 = resume emacs under X
set EMACS_PATTERN="^\[[0-9]\] . Stopped ............ $EMACS"
alias edit 'set emacs_command=("emacs -nw \!*" "fg %emacs" "emacs -i \!* &"\
- "emacsclient \!* &" "emacstool \!* &" "emacsclient \!* &" "emacs -i \!* &"\
"emacsclient \!* &") ; \
jobs >! $HOME/.jobs; grep "$EMACS_PATTERN" < $HOME/.jobs >& /dev/null; \
@ isjob = ! $status; \
@ whichjob = 1 + $isjob + $?DISPLAY * 2 + $?WINDOW_PARENT * 4; \
test -S ~/.emacs_server && emacsclient \!* \
|| echo `pwd` \!* >! ~/.emacs_args && eval $emacs_command[$whichjob]'
+
+# arch-tag: 433d58df-15b9-446f-ad37-f0393e3a23d4
diff -r 422b4b4fb2a6 -r 06dd936cde16 lib-src/hexl.c
--- a/lib-src/hexl.c Thu Feb 11 19:33:50 2010 -0500
+++ b/lib-src/hexl.c Fri Feb 19 22:13:17 2010 -0600
@@ -1,6 +1,32 @@
-/* Synched up with: FSF 19.28. */
+/* Convert files for Emacs Hexl mode.
+ Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
+ 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 2010 Ben Wing.
+Author: Keith Gabryelski
+(according to authors.el)
+
+This file is not considered part of XEmacs.
+
+This program 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 3 of the License, or
+(at your option) any later version.
+
+This program 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 this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* Synced up with: GNU 23.1.92. */
+/* Synced by: Ben Wing, 2-17-10. */
+
+#ifdef HAVE_CONFIG_H
#include <config.h>
+#endif
#include <stdio.h>
#include <ctype.h>
@@ -37,25 +63,25 @@
register long address;
char string[18];
FILE *fp;
-
+
progname = *argv++; --argc;
-
+
/*
- ** -hex hex dump
- ** -oct Octal dump
- ** -group-by-8-bits
- ** -group-by-16-bits
- ** -group-by-32-bits
- ** -group-by-64-bits
- ** -iso iso character set.
- ** -big-endian Big Endian
- ** -little-endian Little Endian
- ** -un || -de from hexl format to binary.
- ** -- End switch list.
- ** <filename> dump filename
- ** - (as filename == stdin)
- */
-
+ ** -hex hex dump
+ ** -oct Octal dump
+ ** -group-by-8-bits
+ ** -group-by-16-bits
+ ** -group-by-32-bits
+ ** -group-by-64-bits
+ ** -iso iso character set.
+ ** -big-endian Big Endian
+ ** -little-endian Little Endian
+ ** -un || -de from hexl format to binary.
+ ** -- End switch list.
+ ** <filename> dump filename
+ ** - (as filename == stdin)
+ */
+
while (*argv && *argv[0] == '-' && (*argv)[1])
{
/* A switch! */
@@ -117,7 +143,7 @@
}
else
{
- (void) fprintf (stderr, "%s: invalid switch: \"%s\".\n", progname,
+ fprintf (stderr, "%s: invalid switch: \"%s\".\n", progname,
*argv);
usage ();
}
@@ -145,7 +171,8 @@
char buf[18];
#ifdef WIN32_NATIVE
- _setmode (_fileno (stdout), O_BINARY);
+ if (!isatty (_fileno (stdout)))
+ _setmode (_fileno (stdout), O_BINARY);
#endif
for (;;)
{
@@ -188,7 +215,8 @@
else
{
#ifdef WIN32_NATIVE
- _setmode (_fileno (fp), O_BINARY);
+ if (!isatty (_fileno (stdout)))
+ _setmode (_fileno (stdout), O_BINARY);
#endif
address = 0;
string[0] = ' ';
@@ -210,7 +238,7 @@
else
{
if (!i)
- (void) printf ("%08lx: ", address);
+ printf ("%08lx: ", address);
if (iso_flag)
string[i+1] =
@@ -218,7 +246,7 @@
else
string[i+1] = (c < 0x20 || c >= 0x7F) ? '.' : c;
- (void) printf ("%02x", c);
+ printf ("%02x", c);
}
if ((i&group_by) == group_by)
@@ -237,15 +265,20 @@
}
if (fp != stdin)
- (void) fclose (fp);
+ fclose (fp);
} while (*argv != NULL);
- return 0;
+ return EXIT_SUCCESS;
}
void
usage (void)
{
fprintf (stderr, "Usage: %s [-de] [-iso]\n", progname);
- exit (1);
+ exit (EXIT_FAILURE);
}
+
+/* arch-tag: 20e04fb7-926e-4e48-be86-64fe869ecdaa
+ (do not change this comment) */
+
+/* hexl.c ends here */
diff -r 422b4b4fb2a6 -r 06dd936cde16 lib-src/sorted-doc.c
--- a/lib-src/sorted-doc.c Thu Feb 11 19:33:50 2010 -0500
+++ b/lib-src/sorted-doc.c Fri Feb 19 22:13:17 2010 -0600
@@ -1,19 +1,42 @@
-/* Give this program DOCSTR.mm.nn as standard input
- and it outputs to standard output
- a file of texinfo input containing the doc strings.
-
- This version sorts the output by function name.
- */
+/* Give this program DOC-mm.nn.oo as standard input and it outputs to
+ standard output a file of texinfo input containing the doc strings.
-/* Synched up with: FSF 19.28. */
+Copyright (C) 1989, 1992, 1994, 1996, 1999, 2000, 2001, 2002, 2003,
+ 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+This file is part of GNU Emacs.
+
+GNU Emacs 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 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
+
+/* Synced up with: GNU 23.1.92. */
+/* Synced by: Ben Wing, 2-17-10. */
+
+/* This version sorts the output by function name. */
+
+#ifdef HAVE_CONFIG_H
#include <config.h>
+#endif
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h> /* for qsort() and malloc() */
#include <string.h>
static void *xmalloc (size_t);
+#ifdef WIN32_NATIVE
+#include <fcntl.h> /* for O_BINARY */
+#include <io.h> /* for setmode */
+#endif
#define NUL '\0'
#define MARKER '\037'
@@ -55,7 +78,7 @@
fatal (char *s1, char *s2)
{
error (s1, s2);
- exit (1);
+ exit (EXIT_FAILURE);
}
/* Like malloc but get fatal error if memory is exhausted. */
@@ -70,11 +93,11 @@
}
static char *
-strsav (char *str)
+xstrdup (char *str)
{
- char *buf = (char *) xmalloc (strlen (str) + 1);
- strcpy (buf, str);
- return buf;
+ char *buf = xmalloc (strlen (str) + 1);
+ (void) strcpy (buf, str);
+ return (buf);
}
/* Comparison function for qsort to call. */
@@ -104,13 +127,20 @@
register DOCSTR *dp = NULL; /* allocated DOCSTR */
register LINE *lp = NULL; /* allocated line */
register char *bp = 0; /* ptr inside line buffer */
- /* int notfirst = 0; / * set after read something */
register enum state state = WAITING; /* state at start */
int cnt = 0; /* number of DOCSTRs read */
- DOCSTR *docs = 0; /* chain of allocated DOCSTRS */
+ DOCSTR *docs = NULL; /* chain of allocated DOCSTRS */
char buf[512]; /* line buffer */
-
+
+#ifdef DOS_NT
+ /* DOC is a binary file. */
+ if (!isatty (fileno (stdin)))
+ setmode (fileno (stdin), O_BINARY);
+#endif
+
+ bp = buf;
+
while (1) /* process one char at a time */
{
/* this char from the DOCSTR file */
@@ -158,7 +188,7 @@
bp = buf;
state = DESC_GET;
}
-
+
/* process gets */
if (state == NAME_GET || state == DESC_GET)
@@ -170,7 +200,7 @@
else /* saving and changing state */
{
*bp = NUL;
- bp = strsav (buf);
+ bp = xstrdup (buf);
if (state == NAME_GET)
dp->name = bp;
@@ -205,10 +235,13 @@
printf ("\\input texinfo @c -*-texinfo-*-\n");
printf ("@setfilename ../info/summary\n");
printf ("@settitle Command Summary for XEmacs\n");
+ printf ("@finalout\n");
printf ("@unnumbered Command Summary for XEmacs\n");
printf ("@table @asis\n");
printf ("\n");
printf ("@iftex\n");
+ /* #### XEmacs note: FSF 23.1.92 is missing the = sign below.
+ Which is correct? */
printf ("@global@let@ITEM=@item\n");
printf ("@def@item{@filbreak@vskip5pt@ITEM}\n");
printf ("@font@tensy cmsy10 scaled @magstephalf\n");
@@ -246,12 +279,20 @@
putchar ('\n');
}
printf("@end display\n");
- if ( i%200 == 0 && i != 0 ) printf("@end table\n\n@table @asis\n");
+ /* Try to avoid a save size overflow in the TeX output
+ routine. */
+ if (i%100 == 0 && i > 0 && i != cnt)
+ printf("\n@end table\n@table @asis\n");
}
printf ("@end table\n");
printf ("@bye\n");
}
- return 0;
+ return EXIT_SUCCESS;
}
+
+/* arch-tag: ce28f204-1e70-4b34-8210-3d54a5662071
+ (do not change this comment) */
+
+/* sorted-doc.c ends here */
diff -r 422b4b4fb2a6 -r 06dd936cde16 lib-src/vcdiff
--- a/lib-src/vcdiff Thu Feb 11 19:33:50 2010 -0500
+++ b/lib-src/vcdiff Fri Feb 19 22:13:17 2010 -0600
@@ -1,23 +1,43 @@
-#!/bin/sh
-#
+#! /bin/sh
+
# Enhanced sccs diff utility for use with vc mode.
# This version is more compatible with rcsdiff(1).
-#
-# !Id: vcdiff,v 1.4 1993/12/03 09:29:18 eggert Exp !
-#
+
+# Copyright (C) 1992, 1993, 1995, 1997, 2001, 2002, 2003, 2004, 2005,
+# 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+
+# Author: Paul Eggert
+# (according to authors.el)
+
+# 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 3 of the License, 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. If not, see <http://www.gnu.org/licenses/>.
+
# Modified by: vladimir(a)Eng.Sun.COM on 95-06-07
# * Made sure that file arguments are specifed as s.<filename>.
-# * Switched the assignments to $f inside the 3rd and 4th case statements of
-# the first for-loop
-# * Removed the incorrect initialization of sid1 before the first for-loop.
-#
+
+# Synced up with: GNU 23.1.92.
+# Synced by: Ben Wing, 2-17-10.
+
DIFF="diff"
usage="$0: Usage: vcdiff [--brief] [-q] [-r<sid1>] [-r<sid2>] [diffopts] sccsfile..."
-PATH=$PATH:/usr/ccs/bin:/usr/sccs # common SCCS hangouts
+# Now that we use `sccs get' rather than just `get', we don't need this.
+# PATH=$PATH:/usr/ccs/bin:/usr/sccs:/usr/xpg4/bin # common SCCS hangouts
-echo=
+echo="echo"
sid1= sid2=
for f
@@ -31,14 +51,14 @@
echo=:;;
-r?*)
case $sid1 in
- -r*)
- sid2=$f
+ '')
+ sid1=$f
;;
*)
case $sid2 in
- ?*) echo "$usage" >&2; exit 2 ;;
+ ?*) echo "$usage" >&2; exit 2 ;;
esac
- sid1=$f
+ sid2=$f
;;
esac
;;
@@ -67,31 +87,32 @@
for f
do
- s=2
-
- # For files under SCCS control, fixup the file name to be the s. filename
- if [ -d SCCS ]; then
- if [ $f = `echo $f | sed -e 's|SCCS/s.||'` ]; then
- f="SCCS/s.$f"
- fi
- fi
+ s=2
+
+ # For files under SCCS control, fixup the file name to be the
+ # s. filename
+ if [ -d SCCS ]; then
+ if [ $f = `echo $f | sed -e 's|SCCS/s.||'` ]; then
+ f="SCCS/s.$f"
+ fi
+ fi
case $f in
s.* | */s.*)
if
- rev1=/tmp/geta$$
- get -s -p -k $sid1 "$f" > $rev1 &&
+ rev1=`mktemp /tmp/geta.XXXXXXXX`
+ sccs get -s -p -k $sid1 "$f" > $rev1 &&
case $sid2 in
'')
workfile=`expr " /$f" : '.*/s.\(.*\)'`
;;
*)
- rev2=/tmp/getb$$
- get -s -p -k $sid2 "$f" > $rev2
+ rev2=`mktemp /tmp/getb.XXXXXXXX`
+ sccs get -s -p -k $sid2 "$f" > $rev2
workfile=$rev2
esac
then
- $echo $DIFF $options $sid1 $sid2 $workfile >&2
+ $echo $DIFF $options $rev1 $workfile >&2
$DIFF $options $rev1 $workfile
s=$?
fi
@@ -104,3 +125,5 @@
then status=$s
fi
done
+
+# arch-tag: 4344ba3a-bcbe-4f77-971c-f43c1606953a
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Remove all autoload cookies from dumped files, they're needless and confusing.
13 years, 7 months
Aidan Kehoe
changeset: 5549:8861440b1aa4
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Sun May 01 17:43:14 2011 +0100
files: lisp/ChangeLog lisp/buff-menu.el lisp/cus-file.el lisp/menubar.el lisp/mule/mule-composite.el lisp/newcomment.el lisp/x-win-sun.el lisp/x-win-xfree86.el
description:
Remove all autoload cookies from dumped files, they're needless and confusing.
lisp/ChangeLog addition:
2011-05-01 Aidan Kehoe <kehoea(a)parhasard.net>
* buff-menu.el (list-buffers-directory):
* buff-menu.el (default-list-buffers-identification):
* cus-file.el (custom-file-base):
* cus-file.el (custom-file):
* cus-file.el (make-custom-file-name):
* menubar.el (menu-split-long-menu):
* newcomment.el:
* newcomment.el (indent-for-comment):
* newcomment.el (comment-column):
* newcomment.el (comment-start):
* newcomment.el (comment-start-skip):
* newcomment.el (comment-end-skip):
* newcomment.el (comment-end):
* newcomment.el (comment-indent-function):
* newcomment.el (comment-style):
* newcomment.el (comment-padding):
* newcomment.el (comment-multi-line):
* newcomment.el (comment-normalize-vars):
* newcomment.el (comment-indent):
* newcomment.el (comment-set-column):
* newcomment.el (comment-kill):
* newcomment.el (uncomment-region):
* newcomment.el (comment-region):
* newcomment.el (comment-or-uncomment-region):
* newcomment.el (comment-dwim):
* newcomment.el (comment-indent-new-line):
* x-win-sun.el (x-win-init-sun):
* x-win-xfree86.el (x-win-init-xfree86):
* mule/mule-composite.el:
* mule/mule-composite.el (reference-point-alist):
* mule/mule-composite.el (compose-region):
* mule/mule-composite.el (decompose-region):
* mule/mule-composite.el (compose-string):
* mule/mule-composite.el (decompose-string):
* mule/mule-composite.el (compose-chars):
* mule/mule-composite.el (find-composition):
* mule/mule-composite.el (compose-chars-after):
* mule/mule-composite.el (compose-last-chars):
* mule/mule-composite.el (decompose-composite-char):
Remove all autoload cookies from dumped files, they're needless
and confusing.
diff -r 159face738c3 -r 8861440b1aa4 lisp/ChangeLog
--- a/lisp/ChangeLog Sun May 01 13:51:33 2011 +0100
+++ b/lisp/ChangeLog Sun May 01 17:43:14 2011 +0100
@@ -1,3 +1,47 @@
+2011-05-01 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * buff-menu.el (list-buffers-directory):
+ * buff-menu.el (default-list-buffers-identification):
+ * cus-file.el (custom-file-base):
+ * cus-file.el (custom-file):
+ * cus-file.el (make-custom-file-name):
+ * menubar.el (menu-split-long-menu):
+ * newcomment.el:
+ * newcomment.el (indent-for-comment):
+ * newcomment.el (comment-column):
+ * newcomment.el (comment-start):
+ * newcomment.el (comment-start-skip):
+ * newcomment.el (comment-end-skip):
+ * newcomment.el (comment-end):
+ * newcomment.el (comment-indent-function):
+ * newcomment.el (comment-style):
+ * newcomment.el (comment-padding):
+ * newcomment.el (comment-multi-line):
+ * newcomment.el (comment-normalize-vars):
+ * newcomment.el (comment-indent):
+ * newcomment.el (comment-set-column):
+ * newcomment.el (comment-kill):
+ * newcomment.el (uncomment-region):
+ * newcomment.el (comment-region):
+ * newcomment.el (comment-or-uncomment-region):
+ * newcomment.el (comment-dwim):
+ * newcomment.el (comment-indent-new-line):
+ * x-win-sun.el (x-win-init-sun):
+ * x-win-xfree86.el (x-win-init-xfree86):
+ * mule/mule-composite.el:
+ * mule/mule-composite.el (reference-point-alist):
+ * mule/mule-composite.el (compose-region):
+ * mule/mule-composite.el (decompose-region):
+ * mule/mule-composite.el (compose-string):
+ * mule/mule-composite.el (decompose-string):
+ * mule/mule-composite.el (compose-chars):
+ * mule/mule-composite.el (find-composition):
+ * mule/mule-composite.el (compose-chars-after):
+ * mule/mule-composite.el (compose-last-chars):
+ * mule/mule-composite.el (decompose-composite-char):
+ Remove all autoload cookies from dumped files, they're needless
+ and confusing.
+
2011-04-30 Didier Verna <didier(a)xemacs.org>
* subr.el (looking-back): New function.
diff -r 159face738c3 -r 8861440b1aa4 lisp/buff-menu.el
--- a/lisp/buff-menu.el Sun May 01 13:51:33 2011 +0100
+++ b/lisp/buff-menu.el Sun May 01 17:43:14 2011 +0100
@@ -510,10 +510,7 @@
(make-variable-buffer-local 'list-buffers-identification)
;; XEmacs
-;;;###autoload
(defvar list-buffers-directory nil)
-
-;;;###autoload
(make-variable-buffer-local 'list-buffers-directory)
;; #### not synched
diff -r 159face738c3 -r 8861440b1aa4 lisp/cus-file.el
--- a/lisp/cus-file.el Sun May 01 13:51:33 2011 +0100
+++ b/lisp/cus-file.el Sun May 01 17:43:14 2011 +0100
@@ -31,17 +31,14 @@
;;; Code:
(provide 'cus-file)
-;;;###autoload
(defconst custom-file-base "custom.el"
"Base of file name for storing customization information.")
-;;;###autoload
(defvar custom-file nil
"File used for storing customization information.
If you change this from the default you need to
explicitly load that file for the settings to take effect.")
-;;;###autoload
(defun make-custom-file-name (init-file &optional force-new)
"Construct the default custom file name from the init file name.
If FORCE-NEW is non-nil, force post-migration location."
diff -r 159face738c3 -r 8861440b1aa4 lisp/menubar.el
--- a/lisp/menubar.el Sun May 01 13:51:33 2011 +0100
+++ b/lisp/menubar.el Sun May 01 17:43:14 2011 +0100
@@ -566,7 +566,6 @@
accelerator specs -- this works even if the specs have already been added."
(menu-split-long-menu (menu-sort-menu menu)))
-;;;###autoload
(defun menu-split-long-menu (menu)
"Split MENU according to `menu-max-items' and add accelerator specs.
If MENU already has accelerator specs, they will be removed and new ones
diff -r 159face738c3 -r 8861440b1aa4 lisp/mule/mule-composite.el
--- a/lisp/mule/mule-composite.el Sun May 01 13:51:33 2011 +0100
+++ b/lisp/mule/mule-composite.el Sun May 01 17:43:14 2011 +0100
@@ -26,7 +26,6 @@
;;; Code:
-;;;###autoload
(defconst reference-point-alist
'((tl . 0) (tc . 1) (tr . 2)
(Bl . 3) (Bc . 4) (Br . 5)
@@ -155,7 +154,6 @@
(setq i (+ i 2))))
components)
-;;;###autoload
(defun compose-region (start end &optional components modification-func)
"UNIMPLEMENTED.
Compose characters in the current region.
@@ -193,7 +191,6 @@
(compose-region-internal start end components modification-func)
(set-buffer-modified-p modified-p)))
-;;;###autoload
(defun decompose-region (start end)
"UNIMPLEMENTED.
Decompose text in the current region.
@@ -206,7 +203,6 @@
(remove-text-properties start end '(composition nil))
(set-buffer-modified-p modified-p)))
-;;;###autoload
(defun compose-string (string &optional start end components modification-func)
"UNIMPLEMENTED.
Compose characters in string STRING.
@@ -232,14 +228,12 @@
(compose-string-internal string start end components modification-func)
string)
-;;;###autoload
(defun decompose-string (string)
"UNIMPLEMENTED.
Return STRING where `composition' property is removed."
(remove-text-properties 0 (length string) '(composition nil) string)
string)
-;;;###autoload
(defun compose-chars (&rest args)
"UNIMPLEMENTED.
Return a string from arguments in which all characters are composed.
@@ -264,7 +258,6 @@
(setq str (concat args)))
(compose-string-internal str 0 (length str) components)))
-;;;###autoload
(defun find-composition (pos &optional limit string detail-p)
"UNIMPLEMENTED.
Return information about a composition at or nearest to buffer position POS.
@@ -305,7 +298,6 @@
result))
-;;;###autoload
(defun compose-chars-after (pos &optional limit object)
"UNIMPLEMENTED.
Compose characters in current buffer after position POS.
@@ -347,7 +339,6 @@
(setq func nil tail (cdr tail)))))))
result))
-;;;###autoload
(defun compose-last-chars (args)
"UNIMPLEMENTED.
Compose last characters.
@@ -369,13 +360,12 @@
(compose-region (- (point) chars) (point) (nth 2 args))
(compose-chars-after (- (point) chars) (point))))))
-;;;###autoload(global-set-key [compose-last-chars] 'compose-last-chars)
+;;;don't ###autoload(global-set-key [compose-last-chars] 'compose-last-chars)
;;; The following codes are only for backward compatibility with Emacs
;;; 20.4 and the earlier.
-;;;###autoload
(defun decompose-composite-char (char &optional type with-composition-rule)
"UNIMPLEMENTED.
Convert CHAR to string.
diff -r 159face738c3 -r 8861440b1aa4 lisp/newcomment.el
--- a/lisp/newcomment.el Sun May 01 13:51:33 2011 +0100
+++ b/lisp/newcomment.el Sun May 01 17:43:14 2011 +0100
@@ -64,13 +64,9 @@
;;; Code:
-;;;###autoload
(defalias 'indent-for-comment 'comment-indent)
-;;;###autoload
(defalias 'set-comment-column 'comment-set-column)
-;;;###autoload
(defalias 'kill-comment 'comment-kill)
-;;;###autoload
(defalias 'indent-new-comment-line 'comment-indent-new-line)
(defgroup comment nil
@@ -90,7 +86,6 @@
"Column to use for `comment-indent'. If nil, use `fill-column' instead."
:type '(choice (const nil) integer))
-;;;###autoload
(defcustom comment-column 32
"*Column to indent right-margin comments to.
Each mode establishes a different default value for this variable; you
@@ -100,26 +95,21 @@
:type 'integer)
(make-variable-buffer-local 'comment-column)
-;;;###autoload
(defvar comment-start nil
"*String to insert to start a new comment, or nil if no comment syntax.")
-;;;###autoload
(defvar comment-start-skip nil
"*Regexp to match the start of a comment plus everything up to its body.
If there are any \\(...\\) pairs, the comment delimiter text is held to begin
at the place matched by the close of the first pair.")
-;;;###autoload
(defvar comment-end-skip nil
"Regexp to match the end of a comment plus everything up to its body.")
-;;;###autoload
(defvar comment-end ""
"*String to insert to end a new comment.
Should be an empty string if comments are terminated by end-of-line.")
-;;;###autoload
(defvar comment-indent-function 'comment-indent-default
"Function to compute desired indentation for a comment.
This function is called with no args with point at the beginning of
@@ -168,7 +158,6 @@
INDENT specifies that the `comment-start' markers should not be put at the
left margin but at the current indentation of the region to comment.")
-;;;###autoload
(defcustom comment-style 'plain
"*Style to be used for `comment-region'.
See `comment-styles' for a list of available styles."
@@ -176,7 +165,6 @@
`(choice ,@(mapcar (lambda (s) `(const ,(car s))) comment-styles))
'symbol))
-;;;###autoload
(defcustom comment-padding " "
"Padding string that `comment-region' puts between comment chars and text.
Can also be an integer which will be automatically turned into a string
@@ -186,7 +174,6 @@
makes the comment easier to read. Default is 1. nil means 0."
:type '(choice string integer (const nil)))
-;;;###autoload
(defcustom comment-multi-line t ; XEmacs - this works well with adaptive fill
"*Non-nil means \\[indent-new-comment-line] should continue same comment
on new line, with no new terminator or starter.
@@ -208,7 +195,6 @@
"Return the mirror image of string S, without any trailing space."
(comment-string-strip (concat (nreverse (string-to-list s))) nil t))
-;;;###autoload
(defun comment-normalize-vars (&optional noerror)
(if (not comment-start) (or noerror (error "No comment syntax is defined"))
;; comment-use-syntax
@@ -431,7 +417,6 @@
;;;; Commands
;;;;
-;;;###autoload
;; #### XEmacs had this: in place of just (current-column)
; (defconst comment-indent-function
@@ -460,7 +445,6 @@
(and (> comment-add 0) (looking-at "\\s<\\S<")))
comment-column)))
-;;;###autoload
(defun comment-indent (&optional continue)
"Indent this line's comment to comment column, or insert an empty comment.
If CONTINUE is non-nil, use the `comment-continue' markers if any.
@@ -525,7 +509,6 @@
(goto-char cpos)
(set-marker cpos nil))))
-;;;###autoload
(defun comment-set-column (arg)
"Set the comment column based on point.
With no ARG, set the comment column to the current column.
@@ -547,7 +530,6 @@
(t (setq comment-column (current-column))
(lmessage 'command "Comment column set to %d" comment-column))))
-;;;###autoload
(defun comment-kill (arg)
"Kill the comment on this line, if any.
With prefix ARG, kill comments on that many lines starting with this one."
@@ -639,7 +621,6 @@
(if multi (concat (regexp-quote (string c)) "*"))
(regexp-quote s))))))
-;;;###autoload
(defun uncomment-region (beg end &optional arg)
"Uncomment each line in the BEG .. END region.
The numeric prefix ARG can specify a number of chars to remove from the
@@ -870,7 +851,6 @@
(end-of-line)
(not (or (eobp) (progn (forward-line) nil))))))))))
-;;;###autoload
(defun comment-region (beg end &optional arg)
"Comment or uncomment each line in the region.
With just \\[universal-argument] prefix arg, uncomment each line in region BEG .. END.
@@ -946,7 +926,6 @@
(comment-region beg end (+ comment-add arg))))
-;;;###autoload
(defun comment-or-uncomment-region (beg end &optional arg)
"Call `comment-region', unless the region only consists of comments,
in which case call `uncomment-region'. If a prefix arg is given, it
@@ -959,7 +938,6 @@
'uncomment-region 'comment-region)
beg end arg))
-;;;###autoload
(defun comment-dwim (arg)
"Call the comment command you want (Do What I Mean).
If the region is active and `transient-mark-mode' is on, call
@@ -1000,7 +978,6 @@
(string-match (concat "\\`[ \t]*\\(?:" comment-start-skip "\\)")
fill-prefix)))
-;;;###autoload
(defun comment-indent-new-line (&optional soft)
"Break line at point and indent, continuing comment if within one.
This indents the body of the continued comment
diff -r 159face738c3 -r 8861440b1aa4 lisp/x-win-sun.el
--- a/lisp/x-win-sun.el Sun May 01 13:51:33 2011 +0100
+++ b/lisp/x-win-sun.el Sun May 01 17:43:14 2011 +0100
@@ -65,7 +65,6 @@
(globally-declare-fboundp
'(x-keysym-on-keyboard-sans-modifiers-p))
-;;;###autoload
(defun x-win-init-sun (device)
;; help is ok
diff -r 159face738c3 -r 8861440b1aa4 lisp/x-win-xfree86.el
--- a/lisp/x-win-xfree86.el Sun May 01 13:51:33 2011 +0100
+++ b/lisp/x-win-xfree86.el Sun May 01 17:43:14 2011 +0100
@@ -42,7 +42,6 @@
(globally-declare-fboundp
'(x-keysym-on-keyboard-p x-keysym-on-keyboard-sans-modifiers-p))
-;;;###autoload
(defun x-win-init-xfree86 (device)
;; We know this keyboard is an XFree86 keyboard. As such, we can predict
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Never pass a leading + to mpz_set_string, parse_integer ().
13 years, 7 months
Aidan Kehoe
changeset: 5548:159face738c3
user: Aidan Kehoe <kehoea(a)parhasard.net>
date: Sun May 01 13:51:33 2011 +0100
files: src/ChangeLog src/lread.c tests/ChangeLog tests/automated/lisp-reader-tests.el
description:
Never pass a leading + to mpz_set_string, parse_integer ().
src/ChangeLog addition:
2011-05-01 Aidan Kehoe <kehoea(a)parhasard.net>
* lread.c (parse_integer):
GMP's mpz_set_string deals with a leading plus badly, make sure it
never sees one coming from this function.
tests/ChangeLog addition:
2011-05-01 Aidan Kehoe <kehoea(a)parhasard.net>
* automated/lisp-reader-tests.el:
If the bignum feature is available, check that a leading plus sign
is treated correctly when reading bignum integers.
diff -r 1e544fd7be12 -r 159face738c3 src/ChangeLog
--- a/src/ChangeLog Sat Apr 30 17:38:35 2011 +0200
+++ b/src/ChangeLog Sun May 01 13:51:33 2011 +0100
@@ -1,3 +1,9 @@
+2011-05-01 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * lread.c (parse_integer):
+ GMP's mpz_set_string deals with a leading plus badly, make sure it
+ never sees one coming from this function.
+
2010-12-31 Mike Kupfer <mike.kupfer(a)xemacs.org>
* redisplay.c (pixel_to_glyph_translation):
diff -r 1e544fd7be12 -r 159face738c3 src/lread.c
--- a/src/lread.c Sat Apr 30 17:38:35 2011 +0200
+++ b/src/lread.c Sun May 01 13:51:33 2011 +0100
@@ -2028,6 +2028,9 @@
else if (*p == '+')
{
p++;
+ /* GMP deals with a leading plus sign, badly, make sure it doesn't see
+ it. */
+ buf++;
}
if (p == lim)
diff -r 1e544fd7be12 -r 159face738c3 tests/ChangeLog
--- a/tests/ChangeLog Sat Apr 30 17:38:35 2011 +0200
+++ b/tests/ChangeLog Sun May 01 13:51:33 2011 +0100
@@ -1,3 +1,9 @@
+2011-05-01 Aidan Kehoe <kehoea(a)parhasard.net>
+
+ * automated/lisp-reader-tests.el:
+ If the bignum feature is available, check that a leading plus sign
+ is treated correctly when reading bignum integers.
+
2011-04-29 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.5.31 "ginger" is released.
diff -r 1e544fd7be12 -r 159face738c3 tests/automated/lisp-reader-tests.el
--- a/tests/automated/lisp-reader-tests.el Sat Apr 30 17:38:35 2011 +0200
+++ b/tests/automated/lisp-reader-tests.el Sun May 01 13:51:33 2011 +0100
@@ -76,3 +76,14 @@
(insert string)
(Check-Error-Message invalid-read-syntax "unrecognized raw string"
(eval-buffer))))
+
+(when (featurep 'bignum)
+ ;; This failed, up to 20110501.
+ (Assert (eql (1+ most-positive-fixnum)
+ (read (format "+%d" (1+ most-positive-fixnum))))
+ "checking leading + is handled properly if reading a bignum")
+ ;; This never did.
+ (Assert (eql (1- most-positive-fixnum)
+ (read (format "+%d" (1- most-positive-fixnum))))
+ "checking leading + is handled properly if reading a fixnum"))
+
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Import looking-back from GNU Emacs.
13 years, 7 months
Didier Verna
changeset: 5547:1e544fd7be12
user: Didier Verna <didier(a)lrde.epita.fr>
date: Sat Apr 30 17:38:35 2011 +0200
files: lisp/ChangeLog lisp/subr.el
description:
Import looking-back from GNU Emacs.
-------------------- ChangeLog entries follow: --------------------
lisp/ChangeLog addition:
2011-04-30 Didier Verna <didier(a)xemacs.org>
* subr.el (looking-back): New function.
diff -r dc37764a105b -r 1e544fd7be12 lisp/ChangeLog
--- a/lisp/ChangeLog Sat Apr 30 17:29:47 2011 +0200
+++ b/lisp/ChangeLog Sat Apr 30 17:38:35 2011 +0200
@@ -1,3 +1,7 @@
+2011-04-30 Didier Verna <didier(a)xemacs.org>
+
+ * subr.el (looking-back): New function.
+
2011-04-30 Didier Verna <didier(a)xemacs.org>
* special-mode.el: New file.
diff -r dc37764a105b -r 1e544fd7be12 lisp/subr.el
--- a/lisp/subr.el Sat Apr 30 17:29:47 2011 +0200
+++ b/lisp/subr.el Sat Apr 30 17:38:35 2011 +0200
@@ -731,6 +731,38 @@
result)
(buffer-substring-no-properties (match-beginning num)
(match-end num)))))
+
+;; Imported from GNU Emacs 23.3.1 -- dvl
+(defun looking-back (regexp &optional limit greedy)
+ "Return non-nil if text before point matches regular expression REGEXP.
+Like `looking-at' except matches before point, and is slower.
+LIMIT if non-nil speeds up the search by specifying a minimum
+starting position, to avoid checking matches that would start
+before LIMIT.
+
+If GREEDY is non-nil, extend the match backwards as far as
+possible, stopping when a single additional previous character
+cannot be part of a match for REGEXP. When the match is
+extended, its starting position is allowed to occur before
+LIMIT."
+ (let ((start (point))
+ (pos
+ (save-excursion
+ (and (re-search-backward (concat "\\(?:" regexp "\\)\\=") limit t)
+ (point)))))
+ (if (and greedy pos)
+ (save-restriction
+ (narrow-to-region (point-min) start)
+ (while (and (> pos (point-min))
+ (save-excursion
+ (goto-char pos)
+ (backward-char 1)
+ (looking-at (concat "\\(?:" regexp "\\)\\'"))))
+ (setq pos (1- pos)))
+ (save-excursion
+ (goto-char pos)
+ (looking-at (concat "\\(?:" regexp "\\)\\'")))))
+ (not (null pos))))
(defconst split-string-default-separators "[ \f\t\n\r\v]+"
"The default value of separators for `split-string'.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Import special-mode from GNU Emacs.
13 years, 7 months
Didier Verna
changeset: 5546:dc37764a105b
user: Didier Verna <didier(a)lrde.epita.fr>
date: Sat Apr 30 17:29:47 2011 +0200
files: lisp/ChangeLog lisp/dumped-lisp.el lisp/special-mode.el
description:
Import special-mode from GNU Emacs.
-------------------- ChangeLog entries follow: --------------------
lisp/ChangeLog addition:
2011-04-30 Didier Verna <didier(a)xemacs.org>
* special-mode.el: New file.
* special-mode.el (special-mode-map): New variable.
* special-mode.el (special-mode): New function.
* dumped-lisp.el (preloaded-file-list): Add special-mode.
diff -r 58e320bde005 -r dc37764a105b lisp/ChangeLog
--- a/lisp/ChangeLog Sat Apr 30 13:30:47 2011 +0900
+++ b/lisp/ChangeLog Sat Apr 30 17:29:47 2011 +0200
@@ -1,3 +1,10 @@
+2011-04-30 Didier Verna <didier(a)xemacs.org>
+
+ * special-mode.el: New file.
+ * special-mode.el (special-mode-map): New variable.
+ * special-mode.el (special-mode): New function.
+ * dumped-lisp.el (preloaded-file-list): Add special-mode.
+
2011-04-30 Stephen J. Turnbull <stephen(a)xemacs.org>
* faces.el (face-property-matching-instance):
diff -r 58e320bde005 -r dc37764a105b lisp/dumped-lisp.el
--- a/lisp/dumped-lisp.el Sat Apr 30 13:30:47 2011 +0900
+++ b/lisp/dumped-lisp.el Sat Apr 30 17:29:47 2011 +0200
@@ -118,6 +118,7 @@
"easy-mmode" ; Added for 21.5. Used by help.
"help"
"easymenu" ; Added for 20.3.
+ "special-mode"
"lisp-mode"
"text-mode"
"fill"
diff -r 58e320bde005 -r dc37764a105b lisp/special-mode.el
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lisp/special-mode.el Sat Apr 30 17:29:47 2011 +0200
@@ -0,0 +1,50 @@
+;;; special-mode.el --- Special major mode to view specially formatted data
+
+;; Copyright (C) 2011 Didier Verna <didier(a)xemacs.org>
+
+;; Maintainer: Didier Verna <didier(a)xemacs.org>
+;; Keywords: dumped
+
+;; 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 3 of the License, 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. If not, see <http://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;; This file is dumped with XEmacs.
+
+
+;;; Code:
+
+;; This code is imported from GNU Emacs 23.3.1 -- dvl
+
+(defvar special-mode-map
+ (let ((map (make-sparse-keymap)))
+ (suppress-keymap map)
+ (define-key map "q" 'quit-window)
+ (define-key map " " 'scroll-up)
+ (define-key map "\C-?" 'scroll-down)
+ (define-key map "?" 'describe-mode)
+ (define-key map ">" 'end-of-buffer)
+ (define-key map "<" 'beginning-of-buffer)
+ (define-key map "g" 'revert-buffer)
+ map))
+
+(put 'special-mode 'mode-class 'special)
+(define-derived-mode special-mode nil "Special"
+ "Parent major mode from which special major modes should inherit."
+ (setq buffer-read-only t))
+
+
+;;; special-mode.el ends here
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Handle redisplay edge case.
13 years, 7 months
Mike Kupfer
changeset: 5545:58e320bde005
user: Mike Kupfer <mike.kupfer(a)xemacs.org>
date: Sat Apr 30 13:30:47 2011 +0900
files: src/ChangeLog src/redisplay.c
description:
Handle redisplay edge case.
With motion events when entering a frame and the minibuffer is
active, row and column can be zero, and there aren't any runes.
diff -r 661aba8350af -r 58e320bde005 src/ChangeLog
--- a/src/ChangeLog Sat Apr 30 13:24:10 2011 +0900
+++ b/src/ChangeLog Sat Apr 30 13:30:47 2011 +0900
@@ -1,3 +1,10 @@
+2010-12-31 Mike Kupfer <mike.kupfer(a)xemacs.org>
+
+ * redisplay.c (pixel_to_glyph_translation):
+ Handle redisplay edge case.
+ With motion events when entering a frame and the minibuffer is
+ active, row and column can be zero, and there aren't any runes.
+
2011-04-30 Stephen J. Turnbull <stephen(a)xemacs.org>
* specifier.c (Fspecifier_matching_instance):
diff -r 661aba8350af -r 58e320bde005 src/redisplay.c
--- a/src/redisplay.c Sat Apr 30 13:24:10 2011 +0900
+++ b/src/redisplay.c Sat Apr 30 13:30:47 2011 +0900
@@ -9165,19 +9165,27 @@
for (*col = 0; *col <= Dynarr_length (db->runes); (*col)++)
{
- int past_end = (*col == Dynarr_length (db->runes));
-
- if (!past_end)
- rb = Dynarr_atp (db->runes, *col);
-
- if (past_end ||
- (rb->xpos <= x_coord && x_coord < rb->xpos + rb->width))
- {
- if (past_end)
- {
- (*col)--;
- rb = Dynarr_atp (db->runes, *col);
- }
+ if (*col == Dynarr_length (db->runes))
+ {
+ /* We've run out of runes to look at. Treat the same as
+ the case below where we failed to find a non-glyph
+ character. */
+ if (dl->modeline)
+ *modeline_closest = dl->end_charpos + dl->offset;
+ else
+ *closest = dl->end_charpos + dl->offset;
+
+ if (check_margin_glyphs)
+ get_position_object (dl, obj1, obj2, x_coord,
+ &low_x_coord, &high_x_coord);
+
+ UPDATE_CACHE_RETURN;
+ }
+
+ rb = Dynarr_atp (db->runes, *col);
+
+ if (rb->xpos <= x_coord && x_coord < rb->xpos + rb->width)
+ {
*charpos = rb->charpos + dl->offset;
low_x_coord = rb->xpos;
@@ -9251,9 +9259,8 @@
UPDATE_CACHE_RETURN;
}
- else if (past_end
- || (rb->type == RUNE_CHAR
- && rb->object.chr.ch == '\n'))
+ else if (rb->type == RUNE_CHAR
+ && rb->object.chr.ch == '\n')
{
(*row)--;
/* At this point we may have glyphs in the right
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Fix hg-induced ChangeLog breakage.
13 years, 7 months
Stephen J. Turnbull
changeset: 5544:661aba8350af
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sat Apr 30 13:24:10 2011 +0900
files: lisp/ChangeLog src/ChangeLog
description:
Fix hg-induced ChangeLog breakage.
diff -r d12a0c55b174 -r 661aba8350af lisp/ChangeLog
--- a/lisp/ChangeLog Sat Apr 30 13:04:47 2011 +0900
+++ b/lisp/ChangeLog Sat Apr 30 13:24:10 2011 +0900
@@ -1,11 +1,11 @@
-2011-04-29 Stephen J. Turnbull <stephen(a)xemacs.org>
-
- * XEmacs 21.5.31 "ginger" is released.
-
2011-04-30 Stephen J. Turnbull <stephen(a)xemacs.org>
* faces.el (face-property-matching-instance):
Allow backward compatibility to the 21.4 API. Update docstring.
+
+2011-04-29 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * XEmacs 21.5.31 "ginger" is released.
2011-04-26 Stephen J. Turnbull <stephen(a)xemacs.org>
diff -r d12a0c55b174 -r 661aba8350af src/ChangeLog
--- a/src/ChangeLog Sat Apr 30 13:04:47 2011 +0900
+++ b/src/ChangeLog Sat Apr 30 13:24:10 2011 +0900
@@ -1,11 +1,11 @@
-2011-04-29 Stephen J. Turnbull <stephen(a)xemacs.org>
-
- * XEmacs 21.5.31 "ginger" is released.
-
2011-04-30 Stephen J. Turnbull <stephen(a)xemacs.org>
* specifier.c (Fspecifier_matching_instance):
Add comment about backward-incompatibility of MATCHSPEC.
+
+2011-04-29 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * XEmacs 21.5.31 "ginger" is released.
2011-04-26 Stephen J. Turnbull <stephen(a)xemacs.org>
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: [mq]: matchspec
13 years, 7 months
Stephen J. Turnbull
changeset: 5543:d12a0c55b174
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sat Apr 30 13:04:47 2011 +0900
files: CHANGES-beta lisp/ChangeLog lisp/faces.el src/ChangeLog src/specifier.c
description:
[mq]: matchspec
diff -r 156c1a62a82d -r d12a0c55b174 CHANGES-beta
--- a/CHANGES-beta Sat Apr 30 12:57:04 2011 +0900
+++ b/CHANGES-beta Sat Apr 30 13:04:47 2011 +0900
@@ -1,4 +1,16 @@
# DO NOT PUT A VERSION MARKER HERE, ADDED AT RELEASE
+
+Major Features and Backward Incompatible Changes
+User-Visible Bug Fixes and Minor Improvements
+
+-- improve: Backward-compatible MATCHSPEC in face-property-matching-instance. -- Stephen Turnbull
+
+Build Infrastructure and Source Tree
+Documentation
+Lisp API
+Internal API and Implementation
+Testing and Debugging
+
to XEmacs 21.5.31 "ginger"
diff -r 156c1a62a82d -r d12a0c55b174 lisp/ChangeLog
--- a/lisp/ChangeLog Sat Apr 30 12:57:04 2011 +0900
+++ b/lisp/ChangeLog Sat Apr 30 13:04:47 2011 +0900
@@ -1,6 +1,11 @@
2011-04-29 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.5.31 "ginger" is released.
+
+2011-04-30 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * faces.el (face-property-matching-instance):
+ Allow backward compatibility to the 21.4 API. Update docstring.
2011-04-26 Stephen J. Turnbull <stephen(a)xemacs.org>
diff -r 156c1a62a82d -r d12a0c55b174 lisp/faces.el
--- a/lisp/faces.el Sat Apr 30 12:57:04 2011 +0900
+++ b/lisp/faces.el Sat Apr 30 13:04:47 2011 +0900
@@ -238,16 +238,19 @@
&optional domain default
no-fallback)
"Return the instance of FACE's PROPERTY matching MATCHSPEC in DOMAIN.
-Currently the only useful value for MATCHSPEC is a charset, when used
-in conjunction with the face's font; this allows you to retrieve a
-font that can be used to display a particular charset, rather than just
-any font.
+Currently MATCHSPEC is used only for the 'font property, when its value
+should be a cons \(CHARSET . STAGE) \(see `specifier-matching-instance'
+for a full description of the matching process). This allows you to
+retrieve a font that can be used to display a particular charset, rather
+than just any font. For backward compatibility, MATCHSPEC may be a
+charset, which is interpreted as \(CHARSET . final).
-Other than MATCHSPEC, this function is identical to `face-property-instance'.
-See also `specifier-matching-instance' for a fuller description of the
-matching process."
+See `face-property-instance' for usage of the other arguments."
(setq face (get-face face))
+ ;; For compatibility with 21.4-oriented code, eg, x-symbol-mule.el.
+ (when (charsetp matchspec)
+ (setq matchspec (cons matchspec 'final)))
(let ((value (get face property)))
(when (specifierp value)
(setq value (specifier-matching-instance value matchspec domain
diff -r 156c1a62a82d -r d12a0c55b174 src/ChangeLog
--- a/src/ChangeLog Sat Apr 30 12:57:04 2011 +0900
+++ b/src/ChangeLog Sat Apr 30 13:04:47 2011 +0900
@@ -1,6 +1,11 @@
2011-04-29 Stephen J. Turnbull <stephen(a)xemacs.org>
* XEmacs 21.5.31 "ginger" is released.
+
+2011-04-30 Stephen J. Turnbull <stephen(a)xemacs.org>
+
+ * specifier.c (Fspecifier_matching_instance):
+ Add comment about backward-incompatibility of MATCHSPEC.
2011-04-26 Stephen J. Turnbull <stephen(a)xemacs.org>
diff -r 156c1a62a82d -r d12a0c55b174 src/specifier.c
--- a/src/specifier.c Sat Apr 30 12:57:04 2011 +0900
+++ b/src/specifier.c Sat Apr 30 13:04:47 2011 +0900
@@ -3171,6 +3171,10 @@
no_fallback, 1);
}
+/* MATCHSPEC is backward-incompatible with code written to 21.4's API.
+ So far such code has been seen only in x-symbol-mule.el, and that
+ was addressed by a change `face-property-matching-instance'.
+ See tracker issue752 for a more general patch against 21.5.29. */
DEFUN ("specifier-matching-instance", Fspecifier_matching_instance, 2, 5, 0, /*
Return an instance for SPECIFIER in DOMAIN that matches MATCHSPEC.
If no instance can be generated for this domain, return DEFAULT.
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches
carbon2-commit: Added tags r21-5-31, r21-5-latest-beta, first-gplv3 for changeset 384423af8fb5
13 years, 7 months
Stephen J. Turnbull
changeset: 5542:156c1a62a82d
user: Stephen J. Turnbull <stephen(a)xemacs.org>
date: Sat Apr 30 12:57:04 2011 +0900
files: .hgtags
description:
Added tags r21-5-31, r21-5-latest-beta, first-gplv3 for changeset 384423af8fb5
diff -r 384423af8fb5 -r 156c1a62a82d .hgtags
--- a/.hgtags Sat Apr 30 12:50:14 2011 +0900
+++ b/.hgtags Sat Apr 30 12:57:04 2011 +0900
@@ -242,5 +242,6 @@
d185fa593d5fcf818ca0d27e53374348d936d7e8 last-version-with-netinstall
e7991690160358d5dd0a8adbf54e0bb8bfc56891 r21-5-30
1c87bdc11d65e3bcbe23895b6f585bede5ba4160 last-gplv2
-3600e23880f7ddb7b5d658c4d0421f480e109c36 r21-5-latest-beta
-f5a0b32f468772ab1b4c7e45dc602241242e5bbd r21-5-31
+384423af8fb5267509e2450f9eebc3dfaeda8472 r21-5-31
+384423af8fb5267509e2450f9eebc3dfaeda8472 r21-5-latest-beta
+384423af8fb5267509e2450f9eebc3dfaeda8472 first-gplv3
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://lists.xemacs.org/mailman/listinfo/xemacs-patches