From ca36e0ff83e73e99cbb6ed2ac2456b4ec77ded7e Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Mon, 18 Apr 2011 06:17:49 -0400 Subject: [PATCH 1/5] Auto-commit of generated files. --- autogen/Makefile.in | 30 ++++++++++++++++++++++++++++++ autogen/configure | 44 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) diff --git a/autogen/Makefile.in b/autogen/Makefile.in index 92e02110712..5713f89adfe 100644 --- a/autogen/Makefile.in +++ b/autogen/Makefile.in @@ -164,13 +164,17 @@ GNULIB_FCHMODAT = @GNULIB_FCHMODAT@ GNULIB_FCHOWNAT = @GNULIB_FCHOWNAT@ GNULIB_FCLOSE = @GNULIB_FCLOSE@ GNULIB_FFLUSH = @GNULIB_FFLUSH@ +GNULIB_FGETC = @GNULIB_FGETC@ +GNULIB_FGETS = @GNULIB_FGETS@ GNULIB_FOPEN = @GNULIB_FOPEN@ GNULIB_FPRINTF = @GNULIB_FPRINTF@ GNULIB_FPRINTF_POSIX = @GNULIB_FPRINTF_POSIX@ GNULIB_FPURGE = @GNULIB_FPURGE@ GNULIB_FPUTC = @GNULIB_FPUTC@ GNULIB_FPUTS = @GNULIB_FPUTS@ +GNULIB_FREAD = @GNULIB_FREAD@ GNULIB_FREOPEN = @GNULIB_FREOPEN@ +GNULIB_FSCANF = @GNULIB_FSCANF@ GNULIB_FSEEK = @GNULIB_FSEEK@ GNULIB_FSEEKO = @GNULIB_FSEEKO@ GNULIB_FSTATAT = @GNULIB_FSTATAT@ @@ -180,6 +184,8 @@ GNULIB_FTELLO = @GNULIB_FTELLO@ GNULIB_FTRUNCATE = @GNULIB_FTRUNCATE@ GNULIB_FUTIMENS = @GNULIB_FUTIMENS@ GNULIB_FWRITE = @GNULIB_FWRITE@ +GNULIB_GETC = @GNULIB_GETC@ +GNULIB_GETCHAR = @GNULIB_GETCHAR@ GNULIB_GETCWD = @GNULIB_GETCWD@ GNULIB_GETDELIM = @GNULIB_GETDELIM@ GNULIB_GETDOMAINNAME = @GNULIB_GETDOMAINNAME@ @@ -191,6 +197,7 @@ GNULIB_GETLOADAVG = @GNULIB_GETLOADAVG@ GNULIB_GETLOGIN = @GNULIB_GETLOGIN@ GNULIB_GETLOGIN_R = @GNULIB_GETLOGIN_R@ GNULIB_GETPAGESIZE = @GNULIB_GETPAGESIZE@ +GNULIB_GETS = @GNULIB_GETS@ GNULIB_GETSUBOPT = @GNULIB_GETSUBOPT@ GNULIB_GETUSERSHELL = @GNULIB_GETUSERSHELL@ GNULIB_GRANTPT = @GNULIB_GRANTPT@ @@ -230,6 +237,7 @@ GNULIB_PUTENV = @GNULIB_PUTENV@ GNULIB_PUTS = @GNULIB_PUTS@ GNULIB_PWRITE = @GNULIB_PWRITE@ GNULIB_RANDOM_R = @GNULIB_RANDOM_R@ +GNULIB_READ = @GNULIB_READ@ GNULIB_READLINK = @GNULIB_READLINK@ GNULIB_READLINKAT = @GNULIB_READLINKAT@ GNULIB_REALLOC_POSIX = @GNULIB_REALLOC_POSIX@ @@ -239,11 +247,13 @@ GNULIB_RENAME = @GNULIB_RENAME@ GNULIB_RENAMEAT = @GNULIB_RENAMEAT@ GNULIB_RMDIR = @GNULIB_RMDIR@ GNULIB_RPMATCH = @GNULIB_RPMATCH@ +GNULIB_SCANF = @GNULIB_SCANF@ GNULIB_SETENV = @GNULIB_SETENV@ GNULIB_SLEEP = @GNULIB_SLEEP@ GNULIB_SNPRINTF = @GNULIB_SNPRINTF@ GNULIB_SPRINTF_POSIX = @GNULIB_SPRINTF_POSIX@ GNULIB_STAT = @GNULIB_STAT@ +GNULIB_STDIO_H_NONBLOCKING = @GNULIB_STDIO_H_NONBLOCKING@ GNULIB_STDIO_H_SIGPIPE = @GNULIB_STDIO_H_SIGPIPE@ GNULIB_STRPTIME = @GNULIB_STRPTIME@ GNULIB_STRTOD = @GNULIB_STRTOD@ @@ -257,6 +267,7 @@ GNULIB_TIME_R = @GNULIB_TIME_R@ GNULIB_TMPFILE = @GNULIB_TMPFILE@ GNULIB_TTYNAME_R = @GNULIB_TTYNAME_R@ GNULIB_UNISTD_H_GETOPT = @GNULIB_UNISTD_H_GETOPT@ +GNULIB_UNISTD_H_NONBLOCKING = @GNULIB_UNISTD_H_NONBLOCKING@ GNULIB_UNISTD_H_SIGPIPE = @GNULIB_UNISTD_H_SIGPIPE@ GNULIB_UNLINK = @GNULIB_UNLINK@ GNULIB_UNLINKAT = @GNULIB_UNLINKAT@ @@ -268,8 +279,10 @@ GNULIB_VASPRINTF = @GNULIB_VASPRINTF@ GNULIB_VDPRINTF = @GNULIB_VDPRINTF@ GNULIB_VFPRINTF = @GNULIB_VFPRINTF@ GNULIB_VFPRINTF_POSIX = @GNULIB_VFPRINTF_POSIX@ +GNULIB_VFSCANF = @GNULIB_VFSCANF@ GNULIB_VPRINTF = @GNULIB_VPRINTF@ GNULIB_VPRINTF_POSIX = @GNULIB_VPRINTF_POSIX@ +GNULIB_VSCANF = @GNULIB_VSCANF@ GNULIB_VSNPRINTF = @GNULIB_VSNPRINTF@ GNULIB_VSPRINTF_POSIX = @GNULIB_VSPRINTF_POSIX@ GNULIB_WCTOMB = @GNULIB_WCTOMB@ @@ -544,6 +557,7 @@ REPLACE_PREAD = @REPLACE_PREAD@ REPLACE_PRINTF = @REPLACE_PRINTF@ REPLACE_PUTENV = @REPLACE_PUTENV@ REPLACE_PWRITE = @REPLACE_PWRITE@ +REPLACE_READ = @REPLACE_READ@ REPLACE_READLINK = @REPLACE_READLINK@ REPLACE_REALLOC = @REPLACE_REALLOC@ REPLACE_REALPATH = @REPLACE_REALPATH@ @@ -556,6 +570,7 @@ REPLACE_SLEEP = @REPLACE_SLEEP@ REPLACE_SNPRINTF = @REPLACE_SNPRINTF@ REPLACE_SPRINTF = @REPLACE_SPRINTF@ REPLACE_STAT = @REPLACE_STAT@ +REPLACE_STDIO_READ_FUNCS = @REPLACE_STDIO_READ_FUNCS@ REPLACE_STDIO_WRITE_FUNCS = @REPLACE_STDIO_WRITE_FUNCS@ REPLACE_STRTOD = @REPLACE_STRTOD@ REPLACE_SYMLINK = @REPLACE_SYMLINK@ @@ -1108,20 +1123,27 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''GNULIB_DPRINTF''@|$(GNULIB_DPRINTF)|g' \ -e 's|@''GNULIB_FCLOSE''@|$(GNULIB_FCLOSE)|g' \ -e 's|@''GNULIB_FFLUSH''@|$(GNULIB_FFLUSH)|g' \ + -e 's|@''GNULIB_FGETC''@|$(GNULIB_FGETC)|g' \ + -e 's|@''GNULIB_FGETS''@|$(GNULIB_FGETS)|g' \ -e 's|@''GNULIB_FOPEN''@|$(GNULIB_FOPEN)|g' \ -e 's|@''GNULIB_FPRINTF''@|$(GNULIB_FPRINTF)|g' \ -e 's|@''GNULIB_FPRINTF_POSIX''@|$(GNULIB_FPRINTF_POSIX)|g' \ -e 's|@''GNULIB_FPURGE''@|$(GNULIB_FPURGE)|g' \ -e 's|@''GNULIB_FPUTC''@|$(GNULIB_FPUTC)|g' \ -e 's|@''GNULIB_FPUTS''@|$(GNULIB_FPUTS)|g' \ + -e 's|@''GNULIB_FREAD''@|$(GNULIB_FREAD)|g' \ -e 's|@''GNULIB_FREOPEN''@|$(GNULIB_FREOPEN)|g' \ + -e 's|@''GNULIB_FSCANF''@|$(GNULIB_FSCANF)|g' \ -e 's|@''GNULIB_FSEEK''@|$(GNULIB_FSEEK)|g' \ -e 's|@''GNULIB_FSEEKO''@|$(GNULIB_FSEEKO)|g' \ -e 's|@''GNULIB_FTELL''@|$(GNULIB_FTELL)|g' \ -e 's|@''GNULIB_FTELLO''@|$(GNULIB_FTELLO)|g' \ -e 's|@''GNULIB_FWRITE''@|$(GNULIB_FWRITE)|g' \ + -e 's|@''GNULIB_GETC''@|$(GNULIB_GETC)|g' \ + -e 's|@''GNULIB_GETCHAR''@|$(GNULIB_GETCHAR)|g' \ -e 's|@''GNULIB_GETDELIM''@|$(GNULIB_GETDELIM)|g' \ -e 's|@''GNULIB_GETLINE''@|$(GNULIB_GETLINE)|g' \ + -e 's|@''GNULIB_GETS''@|$(GNULIB_GETS)|g' \ -e 's|@''GNULIB_OBSTACK_PRINTF''@|$(GNULIB_OBSTACK_PRINTF)|g' \ -e 's|@''GNULIB_OBSTACK_PRINTF_POSIX''@|$(GNULIB_OBSTACK_PRINTF_POSIX)|g' \ -e 's|@''GNULIB_PERROR''@|$(GNULIB_PERROR)|g' \ @@ -1134,14 +1156,18 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''GNULIB_REMOVE''@|$(GNULIB_REMOVE)|g' \ -e 's|@''GNULIB_RENAME''@|$(GNULIB_RENAME)|g' \ -e 's|@''GNULIB_RENAMEAT''@|$(GNULIB_RENAMEAT)|g' \ + -e 's|@''GNULIB_SCANF''@|$(GNULIB_SCANF)|g' \ -e 's|@''GNULIB_SNPRINTF''@|$(GNULIB_SNPRINTF)|g' \ -e 's|@''GNULIB_SPRINTF_POSIX''@|$(GNULIB_SPRINTF_POSIX)|g' \ + -e 's|@''GNULIB_STDIO_H_NONBLOCKING''@|$(GNULIB_STDIO_H_NONBLOCKING)|g' \ -e 's|@''GNULIB_STDIO_H_SIGPIPE''@|$(GNULIB_STDIO_H_SIGPIPE)|g' \ -e 's|@''GNULIB_TMPFILE''@|$(GNULIB_TMPFILE)|g' \ -e 's|@''GNULIB_VASPRINTF''@|$(GNULIB_VASPRINTF)|g' \ -e 's|@''GNULIB_VDPRINTF''@|$(GNULIB_VDPRINTF)|g' \ -e 's|@''GNULIB_VFPRINTF''@|$(GNULIB_VFPRINTF)|g' \ -e 's|@''GNULIB_VFPRINTF_POSIX''@|$(GNULIB_VFPRINTF_POSIX)|g' \ + -e 's|@''GNULIB_VFSCANF''@|$(GNULIB_VFSCANF)|g' \ + -e 's|@''GNULIB_VSCANF''@|$(GNULIB_VSCANF)|g' \ -e 's|@''GNULIB_VPRINTF''@|$(GNULIB_VPRINTF)|g' \ -e 's|@''GNULIB_VPRINTF_POSIX''@|$(GNULIB_VPRINTF_POSIX)|g' \ -e 's|@''GNULIB_VSNPRINTF''@|$(GNULIB_VSNPRINTF)|g' \ @@ -1183,6 +1209,7 @@ stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) -e 's|@''REPLACE_RENAMEAT''@|$(REPLACE_RENAMEAT)|g' \ -e 's|@''REPLACE_SNPRINTF''@|$(REPLACE_SNPRINTF)|g' \ -e 's|@''REPLACE_SPRINTF''@|$(REPLACE_SPRINTF)|g' \ + -e 's|@''REPLACE_STDIO_READ_FUNCS''@|$(REPLACE_STDIO_READ_FUNCS)|g' \ -e 's|@''REPLACE_STDIO_WRITE_FUNCS''@|$(REPLACE_STDIO_WRITE_FUNCS)|g' \ -e 's|@''REPLACE_TMPFILE''@|$(REPLACE_TMPFILE)|g' \ -e 's|@''REPLACE_VASPRINTF''@|$(REPLACE_VASPRINTF)|g' \ @@ -1397,6 +1424,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''GNULIB_PIPE2''@|$(GNULIB_PIPE2)|g' \ -e 's|@''GNULIB_PREAD''@|$(GNULIB_PREAD)|g' \ -e 's|@''GNULIB_PWRITE''@|$(GNULIB_PWRITE)|g' \ + -e 's|@''GNULIB_READ''@|$(GNULIB_READ)|g' \ -e 's|@''GNULIB_READLINK''@|$(GNULIB_READLINK)|g' \ -e 's|@''GNULIB_READLINKAT''@|$(GNULIB_READLINKAT)|g' \ -e 's|@''GNULIB_RMDIR''@|$(GNULIB_RMDIR)|g' \ @@ -1405,6 +1433,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''GNULIB_SYMLINKAT''@|$(GNULIB_SYMLINKAT)|g' \ -e 's|@''GNULIB_TTYNAME_R''@|$(GNULIB_TTYNAME_R)|g' \ -e 's|@''GNULIB_UNISTD_H_GETOPT''@|$(GNULIB_UNISTD_H_GETOPT)|g' \ + -e 's|@''GNULIB_UNISTD_H_NONBLOCKING''@|$(GNULIB_UNISTD_H_NONBLOCKING)|g' \ -e 's|@''GNULIB_UNISTD_H_SIGPIPE''@|$(GNULIB_UNISTD_H_SIGPIPE)|g' \ -e 's|@''GNULIB_UNLINK''@|$(GNULIB_UNLINK)|g' \ -e 's|@''GNULIB_UNLINKAT''@|$(GNULIB_UNLINKAT)|g' \ @@ -1465,6 +1494,7 @@ unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H -e 's|@''REPLACE_LSEEK''@|$(REPLACE_LSEEK)|g' \ -e 's|@''REPLACE_PREAD''@|$(REPLACE_PREAD)|g' \ -e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \ + -e 's|@''REPLACE_READ''@|$(REPLACE_READ)|g' \ -e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \ -e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \ -e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \ diff --git a/autogen/configure b/autogen/configure index 7ec88c66fb5..0dacc86a99d 100755 --- a/autogen/configure +++ b/autogen/configure @@ -683,6 +683,7 @@ REPLACE_VDPRINTF REPLACE_VASPRINTF REPLACE_TMPFILE REPLACE_STDIO_WRITE_FUNCS +REPLACE_STDIO_READ_FUNCS REPLACE_SPRINTF REPLACE_SNPRINTF REPLACE_RENAMEAT @@ -726,11 +727,15 @@ GNULIB_VPRINTF GNULIB_VFPRINTF_POSIX GNULIB_VFPRINTF GNULIB_VDPRINTF +GNULIB_VSCANF +GNULIB_VFSCANF GNULIB_VASPRINTF GNULIB_TMPFILE GNULIB_STDIO_H_SIGPIPE +GNULIB_STDIO_H_NONBLOCKING GNULIB_SPRINTF_POSIX GNULIB_SNPRINTF +GNULIB_SCANF GNULIB_RENAMEAT GNULIB_RENAME GNULIB_REMOVE @@ -743,20 +748,27 @@ GNULIB_POPEN GNULIB_PERROR GNULIB_OBSTACK_PRINTF_POSIX GNULIB_OBSTACK_PRINTF +GNULIB_GETS GNULIB_GETLINE GNULIB_GETDELIM +GNULIB_GETCHAR +GNULIB_GETC GNULIB_FWRITE GNULIB_FTELLO GNULIB_FTELL GNULIB_FSEEKO GNULIB_FSEEK +GNULIB_FSCANF GNULIB_FREOPEN +GNULIB_FREAD GNULIB_FPUTS GNULIB_FPUTC GNULIB_FPURGE GNULIB_FPRINTF_POSIX GNULIB_FPRINTF GNULIB_FOPEN +GNULIB_FGETS +GNULIB_FGETC GNULIB_FFLUSH GNULIB_FCLOSE GNULIB_DPRINTF @@ -864,6 +876,7 @@ REPLACE_SYMLINK REPLACE_SLEEP REPLACE_RMDIR REPLACE_READLINK +REPLACE_READ REPLACE_PWRITE REPLACE_PREAD REPLACE_LSEEK @@ -922,6 +935,7 @@ GNULIB_USLEEP GNULIB_UNLINKAT GNULIB_UNLINK GNULIB_UNISTD_H_SIGPIPE +GNULIB_UNISTD_H_NONBLOCKING GNULIB_UNISTD_H_GETOPT GNULIB_TTYNAME_R GNULIB_SYMLINKAT @@ -930,6 +944,7 @@ GNULIB_SLEEP GNULIB_RMDIR GNULIB_READLINKAT GNULIB_READLINK +GNULIB_READ GNULIB_PWRITE GNULIB_PREAD GNULIB_PIPE2 @@ -14025,6 +14040,7 @@ _ACEOF GNULIB_PIPE2=0; GNULIB_PREAD=0; GNULIB_PWRITE=0; + GNULIB_READ=0; GNULIB_READLINK=0; GNULIB_READLINKAT=0; GNULIB_RMDIR=0; @@ -14033,6 +14049,7 @@ _ACEOF GNULIB_SYMLINKAT=0; GNULIB_TTYNAME_R=0; GNULIB_UNISTD_H_GETOPT=0; + GNULIB_UNISTD_H_NONBLOCKING=0; GNULIB_UNISTD_H_SIGPIPE=0; GNULIB_UNLINK=0; GNULIB_UNLINKAT=0; @@ -14091,6 +14108,7 @@ _ACEOF REPLACE_LSEEK=0; REPLACE_PREAD=0; REPLACE_PWRITE=0; + REPLACE_READ=0; REPLACE_READLINK=0; REPLACE_RMDIR=0; REPLACE_SLEEP=0; @@ -15087,20 +15105,27 @@ $as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h GNULIB_DPRINTF=0; GNULIB_FCLOSE=0; GNULIB_FFLUSH=0; + GNULIB_FGETC=0; + GNULIB_FGETS=0; GNULIB_FOPEN=0; GNULIB_FPRINTF=0; GNULIB_FPRINTF_POSIX=0; GNULIB_FPURGE=0; GNULIB_FPUTC=0; GNULIB_FPUTS=0; + GNULIB_FREAD=0; GNULIB_FREOPEN=0; + GNULIB_FSCANF=0; GNULIB_FSEEK=0; GNULIB_FSEEKO=0; GNULIB_FTELL=0; GNULIB_FTELLO=0; GNULIB_FWRITE=0; + GNULIB_GETC=0; + GNULIB_GETCHAR=0; GNULIB_GETDELIM=0; GNULIB_GETLINE=0; + GNULIB_GETS=0; GNULIB_OBSTACK_PRINTF=0; GNULIB_OBSTACK_PRINTF_POSIX=0; GNULIB_PERROR=0; @@ -15113,11 +15138,15 @@ $as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h GNULIB_REMOVE=0; GNULIB_RENAME=0; GNULIB_RENAMEAT=0; + GNULIB_SCANF=0; GNULIB_SNPRINTF=0; GNULIB_SPRINTF_POSIX=0; + GNULIB_STDIO_H_NONBLOCKING=0; GNULIB_STDIO_H_SIGPIPE=0; GNULIB_TMPFILE=0; GNULIB_VASPRINTF=0; + GNULIB_VFSCANF=0; + GNULIB_VSCANF=0; GNULIB_VDPRINTF=0; GNULIB_VFPRINTF=0; GNULIB_VFPRINTF_POSIX=0; @@ -15161,6 +15190,7 @@ $as_echo "#define HAVE_LONG_LONG_INT 1" >>confdefs.h REPLACE_RENAMEAT=0; REPLACE_SNPRINTF=0; REPLACE_SPRINTF=0; + REPLACE_STDIO_READ_FUNCS=0; REPLACE_STDIO_WRITE_FUNCS=0; REPLACE_TMPFILE=0; REPLACE_VASPRINTF=0; @@ -17619,6 +17649,19 @@ $as_echo "$gl_cv_next_stdio_h" >&6; } + + GNULIB_FSCANF=1 + GNULIB_SCANF=1 + GNULIB_VFSCANF=1 + GNULIB_VSCANF=1 + GNULIB_FGETC=1 + GNULIB_GETC=1 + GNULIB_GETCHAR=1 + GNULIB_FGETS=1 + GNULIB_GETS=1 + GNULIB_FREAD=1 + + GNULIB_FPRINTF=1 GNULIB_PRINTF=1 GNULIB_VFPRINTF=1 @@ -17633,6 +17676,7 @@ $as_echo "$gl_cv_next_stdio_h" >&6; } + # Code from module stdlib: From 7eed1860d8ed2ac70a333e05c99a6207c2d6c675 Mon Sep 17 00:00:00 2001 From: Sam Steingold Date: Mon, 18 Apr 2011 16:35:18 -0400 Subject: [PATCH 2/5] * lisp/vc/add-log.el (change-log-font-lock-keywords): Add "Thanks to" to acknowledgments. --- lisp/ChangeLog | 5 +++++ lisp/vc/add-log.el | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 8d38892c0f0..373ae63bfe5 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2011-04-18 Sam Steingold + + * vc/add-log.el (change-log-font-lock-keywords): Add "Thanks to" + to acknowledgments. + 2011-04-17 Glenn Morris * calendar/diary-lib.el (diary-sexp-entry): diff --git a/lisp/vc/add-log.el b/lisp/vc/add-log.el index e9fbdb91e97..73e83414e99 100644 --- a/lisp/vc/add-log.el +++ b/lisp/vc/add-log.el @@ -277,7 +277,7 @@ Note: The search is conducted only within 10%, at the beginning of the file." ;; Note that the FSF does not use "Patches by"; our convention ;; is to put the name of the author of the changes at the top ;; of the change log entry. - ("\\(^\\( +\\|\t\\)\\| \\)\\(Patch\\(es\\)? by\\|Report\\(ed by\\| from\\)\\|Suggest\\(ed by\\|ion from\\)\\)" + ("\\(^\\( +\\|\t\\)\\| \\)\\(Thanks to\\|Patch\\(es\\)? by\\|Report\\(ed by\\| from\\)\\|Suggest\\(ed by\\|ion from\\)\\)" 3 'change-log-acknowledgement)) "Additional expressions to highlight in Change Log mode.") From 8d6d9c8f8de3841257c0b74448a824583bbf2c01 Mon Sep 17 00:00:00 2001 From: Katsumi Yamaoka Date: Mon, 18 Apr 2011 22:59:02 +0000 Subject: [PATCH 3/5] gnus-registry.el, registry.el: Silence the byte compiler. gnus-registry.el: Eliminate cl functions. (gnus-registry-sort-addresses): New function that replaces mapcan. (gnus-registry-action, gnus-registry-spool-action) (gnus-registry-split-fancy-with-parent) (gnus-registry-fetch-recipients-fast): Use it. (gnus-registry-import-eld): Replace delete* with dolist + delq. registry.el (initialize-instance, registry-lookup) (registry-lookup-breaks-before-lexbind, registry-lookup-secondary) (registry-lookup-secondary-value, registry-search, registry-delete) (registry-insert, registry-reindex, registry-size, registry-prune): Use eval-and-compile. --- lisp/gnus/ChangeLog | 15 ++ lisp/gnus/gnus-registry.el | 48 +++--- lisp/gnus/registry.el | 294 +++++++++++++++++++------------------ 3 files changed, 184 insertions(+), 173 deletions(-) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index eac53d413cc..8417d37cadf 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,18 @@ +2011-04-18 Katsumi Yamaoka + + * gnus-registry.el: Eliminate cl functions. + (gnus-registry-sort-addresses): New function that replaces mapcan. + (gnus-registry-action, gnus-registry-spool-action) + (gnus-registry-split-fancy-with-parent) + (gnus-registry-fetch-recipients-fast): Use it. + (gnus-registry-import-eld): Replace delete* with dolist + delq. + + * registry.el (initialize-instance, registry-lookup) + (registry-lookup-breaks-before-lexbind, registry-lookup-secondary) + (registry-lookup-secondary-value, registry-search, registry-delete) + (registry-insert, registry-reindex, registry-size, registry-prune): + Use eval-and-compile. + 2011-04-16 Teodor Zlatanov * registry.el (registry-reindex): New method to recreate the secondary diff --git a/lisp/gnus/gnus-registry.el b/lisp/gnus/gnus-registry.el index eab4403c34b..697dc373b1f 100644 --- a/lisp/gnus/gnus-registry.el +++ b/lisp/gnus/gnus-registry.el @@ -303,15 +303,9 @@ This is not required after changing `gnus-registry-cache-file'." (defun gnus-registry-action (action data-header from &optional to method) (let* ((id (mail-header-id data-header)) (subject (mail-header-subject data-header)) - (recipients (sort (mapcan 'gnus-registry-extract-addresses - (list - (or (ignore-errors - (mail-header "Cc" data-header)) - "") - (or (ignore-errors - (mail-header "To" data-header)) - ""))) - 'string-lessp)) + (recipients (gnus-registry-sort-addresses + (or (ignore-errors (mail-header "Cc" data-header)) "") + (or (ignore-errors (mail-header "To" data-header)) ""))) (sender (nth 0 (gnus-registry-extract-addresses (mail-header-from data-header)))) (from (gnus-group-guess-full-name-from-command-method from)) @@ -329,11 +323,9 @@ This is not required after changing `gnus-registry-cache-file'." (defun gnus-registry-spool-action (id group &optional subject sender recipients) (let ((to (gnus-group-guess-full-name-from-command-method group)) (recipients (or recipients - (sort (mapcan 'gnus-registry-extract-addresses - (list - (or (message-fetch-field "cc") "") - (or (message-fetch-field "to") ""))) - 'string-lessp))) + (gnus-registry-sort-addresses + (or (message-fetch-field "cc") "") + (or (message-fetch-field "to") "")))) (subject (or subject (message-fetch-field "subject"))) (sender (or sender (message-fetch-field "from")))) (when (and (stringp id) (string-match "\r$" id)) @@ -409,11 +401,9 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details." ;; these may not be used, but the code is cleaner having them up here (sender (gnus-string-remove-all-properties (message-fetch-field "from"))) - (recipients (sort (mapcan 'gnus-registry-extract-addresses - (list - (or (message-fetch-field "cc") "") - (or (message-fetch-field "to") ""))) - 'string-lessp)) + (recipients (gnus-registry-sort-addresses + (or (message-fetch-field "cc") "") + (or (message-fetch-field "to") ""))) (subject (gnus-string-remove-all-properties (gnus-registry-simplify-subject (message-fetch-field "subject")))) @@ -719,6 +709,11 @@ Addresses without a name will say \"noname\"." (format "%s <%s>" name addr)))) (mail-extract-address-components text t))) +(defun gnus-registry-sort-addresses (&rest addresses) + "Return a normalized and sorted list of ADDRESSES." + (sort (apply 'nconc (mapcar 'gnus-registry-extract-addresses addresses)) + 'string-lessp)) + (defun gnus-registry-simplify-subject (subject) (if (stringp subject) (gnus-simplify-subject subject) @@ -738,15 +733,9 @@ Addresses without a name will say \"noname\"." (gnus-registry-fetch-header-fast "from" article)) (defun gnus-registry-fetch-recipients-fast (article) - (sort (mapcan 'gnus-registry-extract-addresses - (list - (or (ignore-errors - (gnus-registry-fetch-header-fast "Cc" article)) - "") - (or (ignore-errors - (gnus-registry-fetch-header-fast "To" article)) - ""))) - 'string-lessp)) + (gnus-registry-sort-addresses + (or (ignore-errors (gnus-registry-fetch-header-fast "Cc" article)) "") + (or (ignore-errors (gnus-registry-fetch-header-fast "To" article)) ""))) (defun gnus-registry-fetch-header-fast (article header) "Fetch the HEADER quickly, using the internal gnus-data-list function" @@ -982,7 +971,8 @@ only the last one's marks are returned." collect p)) extra-cell key val) ;; remove all the strings from the entry - (delete* nil rest :test (lambda (a b) (stringp b))) + (dolist (elem rest) + (if (stringp elem) (setq rest (delq elem rest)))) (gnus-registry-set-id-key id 'group groups) ;; just use the first extra element (setq rest (car-safe rest)) diff --git a/lisp/gnus/registry.el b/lisp/gnus/registry.el index 3e638427897..1a18dbd50d2 100644 --- a/lisp/gnus/registry.el +++ b/lisp/gnus/registry.el @@ -131,58 +131,60 @@ :type hash-table :documentation "The data hashtable."))) -(defmethod initialize-instance :AFTER ((this registry-db) slots) - "Set value of data slot of THIS after initialization." - (with-slots (data tracker) this - (unless (member :data slots) - (setq data (make-hash-table :size 10000 :rehash-size 2.0 :test 'equal))) - (unless (member :tracker slots) - (setq tracker (make-hash-table :size 100 :rehash-size 2.0))))) +(eval-and-compile + (defmethod initialize-instance :AFTER ((this registry-db) slots) + "Set value of data slot of THIS after initialization." + (with-slots (data tracker) this + (unless (member :data slots) + (setq data + (make-hash-table :size 10000 :rehash-size 2.0 :test 'equal))) + (unless (member :tracker slots) + (setq tracker (make-hash-table :size 100 :rehash-size 2.0))))) -(defmethod registry-lookup ((db registry-db) keys) - "Search for KEYS in the registry-db THIS. + (defmethod registry-lookup ((db registry-db) keys) + "Search for KEYS in the registry-db THIS. Returns a alist of the key followed by the entry in a list, not a cons cell." - (let ((data (oref db :data))) - (delq nil - (mapcar - (lambda (k) - (when (gethash k data) - (list k (gethash k data)))) - keys)))) + (let ((data (oref db :data))) + (delq nil + (mapcar + (lambda (k) + (when (gethash k data) + (list k (gethash k data)))) + keys)))) -(defmethod registry-lookup-breaks-before-lexbind ((db registry-db) keys) - "Search for KEYS in the registry-db THIS. + (defmethod registry-lookup-breaks-before-lexbind ((db registry-db) keys) + "Search for KEYS in the registry-db THIS. Returns a alist of the key followed by the entry in a list, not a cons cell." - (let ((data (oref db :data))) - (delq nil - (loop for key in keys - when (gethash key data) - collect (list key (gethash key data)))))) + (let ((data (oref db :data))) + (delq nil + (loop for key in keys + when (gethash key data) + collect (list key (gethash key data)))))) -(defmethod registry-lookup-secondary ((db registry-db) tracksym - &optional create) - "Search for TRACKSYM in the registry-db THIS. + (defmethod registry-lookup-secondary ((db registry-db) tracksym + &optional create) + "Search for TRACKSYM in the registry-db THIS. When CREATE is not nil, create the secondary index hashtable if needed." - (let ((h (gethash tracksym (oref db :tracker)))) - (if h - h - (when create - (puthash tracksym - (make-hash-table :size 800 :rehash-size 2.0 :test 'equal) - (oref db :tracker)) - (gethash tracksym (oref db :tracker)))))) + (let ((h (gethash tracksym (oref db :tracker)))) + (if h + h + (when create + (puthash tracksym + (make-hash-table :size 800 :rehash-size 2.0 :test 'equal) + (oref db :tracker)) + (gethash tracksym (oref db :tracker)))))) -(defmethod registry-lookup-secondary-value ((db registry-db) tracksym val - &optional set) - "Search for TRACKSYM with value VAL in the registry-db THIS. + (defmethod registry-lookup-secondary-value ((db registry-db) tracksym val + &optional set) + "Search for TRACKSYM with value VAL in the registry-db THIS. When SET is not nil, set it for VAL (use t for an empty list)." - ;; either we're asked for creation or there should be an existing index - (when (or set (registry-lookup-secondary db tracksym)) - ;; set the entry if requested, - (when set - (puthash val (if (eq t set) '() set) - (registry-lookup-secondary db tracksym t))) - (gethash val (registry-lookup-secondary db tracksym)))) + ;; either we're asked for creation or there should be an existing index + (when (or set (registry-lookup-secondary db tracksym)) + ;; set the entry if requested, + (when set + (puthash val (if (eq t set) '() set) + (registry-lookup-secondary db tracksym t))) + (gethash val (registry-lookup-secondary db tracksym))))) (defun registry--match (mode entry check-list) ;; for all members @@ -204,129 +206,133 @@ When SET is not nil, set it for VAL (use t for an empty list)." (or found (registry--match mode entry (cdr-safe check-list)))))) -(defmethod registry-search ((db registry-db) &rest spec) - "Search for SPEC across the registry-db THIS. +(eval-and-compile + (defmethod registry-search ((db registry-db) &rest spec) + "Search for SPEC across the registry-db THIS. For example calling with :member '(a 1 2) will match entry '((a 3 1)). Calling with :all t (any non-nil value) will match all. Calling with :regex '\(a \"h.llo\") will match entry '((a \"hullo\" \"bye\"). The test order is to check :all first, then :member, then :regex." - (when db - (let ((all (plist-get spec :all)) - (member (plist-get spec :member)) - (regex (plist-get spec :regex))) - (loop for k being the hash-keys of (oref db :data) using (hash-values v) - when (or - ;; :all non-nil returns all - all - ;; member matching - (and member (registry--match :member v member)) - ;; regex matching - (and regex (registry--match :regex v regex))) - collect k)))) + (when db + (let ((all (plist-get spec :all)) + (member (plist-get spec :member)) + (regex (plist-get spec :regex))) + (loop for k being the hash-keys of (oref db :data) + using (hash-values v) + when (or + ;; :all non-nil returns all + all + ;; member matching + (and member (registry--match :member v member)) + ;; regex matching + (and regex (registry--match :regex v regex))) + collect k)))) -(defmethod registry-delete ((db registry-db) keys assert &rest spec) - "Delete KEYS from the registry-db THIS. + (defmethod registry-delete ((db registry-db) keys assert &rest spec) + "Delete KEYS from the registry-db THIS. If KEYS is nil, use SPEC to do a search. Updates the secondary ('tracked') indices as well. With assert non-nil, errors out if the key does not exist already." - (let* ((data (oref db :data)) - (keys (or keys - (apply 'registry-search db spec))) - (tracked (oref db :tracked))) + (let* ((data (oref db :data)) + (keys (or keys + (apply 'registry-search db spec))) + (tracked (oref db :tracked))) - (dolist (key keys) - (let ((entry (gethash key data))) - (when assert - (assert entry nil - "Key %s does not exists in database" key)) - ;; clean entry from the secondary indices - (dolist (tr tracked) - ;; is this tracked symbol indexed? - (when (registry-lookup-secondary db tr) - ;; for every value in the entry under that key... - (dolist (val (cdr-safe (assq tr entry))) - (let* ((value-keys (registry-lookup-secondary-value db tr val))) - (when (member key value-keys) - ;; override the previous value - (registry-lookup-secondary-value - db tr val - ;; with the indexed keys MINUS the current key - ;; (we pass t when the list is empty) - (or (delete key value-keys) t))))))) - (remhash key data))) - keys)) + (dolist (key keys) + (let ((entry (gethash key data))) + (when assert + (assert entry nil + "Key %s does not exists in database" key)) + ;; clean entry from the secondary indices + (dolist (tr tracked) + ;; is this tracked symbol indexed? + (when (registry-lookup-secondary db tr) + ;; for every value in the entry under that key... + (dolist (val (cdr-safe (assq tr entry))) + (let* ((value-keys (registry-lookup-secondary-value + db tr val))) + (when (member key value-keys) + ;; override the previous value + (registry-lookup-secondary-value + db tr val + ;; with the indexed keys MINUS the current key + ;; (we pass t when the list is empty) + (or (delete key value-keys) t))))))) + (remhash key data))) + keys)) -(defmethod registry-insert ((db registry-db) key entry) - "Insert ENTRY under KEY into the registry-db THIS. + (defmethod registry-insert ((db registry-db) key entry) + "Insert ENTRY under KEY into the registry-db THIS. Updates the secondary ('tracked') indices as well. Errors out if the key exists already." - (assert (not (gethash key (oref db :data))) nil - "Key already exists in database") + (assert (not (gethash key (oref db :data))) nil + "Key already exists in database") - (assert (< (registry-size db) - (oref db :max-hard)) - nil - "max-hard size limit reached") + (assert (< (registry-size db) + (oref db :max-hard)) + nil + "max-hard size limit reached") - ;; store the entry - (puthash key entry (oref db :data)) + ;; store the entry + (puthash key entry (oref db :data)) - ;; store the secondary indices - (dolist (tr (oref db :tracked)) - ;; for every value in the entry under that key... - (dolist (val (cdr-safe (assq tr entry))) - (let* ((value-keys (registry-lookup-secondary-value db tr val))) - (pushnew key value-keys :test 'equal) - (registry-lookup-secondary-value db tr val value-keys)))) - entry) - -(defmethod registry-reindex ((db registry-db)) - "Rebuild the secondary indices of registry-db THIS." - (let ((count 0) - (expected (* (length (oref db :tracked)) (registry-size db)))) + ;; store the secondary indices (dolist (tr (oref db :tracked)) - (let (values) - (maphash - (lambda (key v) - (incf count) - (when (and (< 0 expected) - (= 0 (mod count 1000))) - (message "reindexing: %d of %d (%.2f%%)" - count expected (/ (* 1000 count) expected))) - (dolist (val (cdr-safe (assq tr v))) - (let* ((value-keys (registry-lookup-secondary-value db tr val))) - (push key value-keys) - (registry-lookup-secondary-value db tr val value-keys)))) - (oref db :data)))))) + ;; for every value in the entry under that key... + (dolist (val (cdr-safe (assq tr entry))) + (let* ((value-keys (registry-lookup-secondary-value db tr val))) + (pushnew key value-keys :test 'equal) + (registry-lookup-secondary-value db tr val value-keys)))) + entry) -(defmethod registry-size ((db registry-db)) - "Returns the size of the registry-db object THIS. + (defmethod registry-reindex ((db registry-db)) + "Rebuild the secondary indices of registry-db THIS." + (let ((count 0) + (expected (* (length (oref db :tracked)) (registry-size db)))) + (dolist (tr (oref db :tracked)) + (let (values) + (maphash + (lambda (key v) + (incf count) + (when (and (< 0 expected) + (= 0 (mod count 1000))) + (message "reindexing: %d of %d (%.2f%%)" + count expected (/ (* 1000 count) expected))) + (dolist (val (cdr-safe (assq tr v))) + (let* ((value-keys (registry-lookup-secondary-value db tr val))) + (push key value-keys) + (registry-lookup-secondary-value db tr val value-keys)))) + (oref db :data)))))) + + (defmethod registry-size ((db registry-db)) + "Returns the size of the registry-db object THIS. This is the key count of the :data slot." - (hash-table-count (oref db :data))) + (hash-table-count (oref db :data))) -(defmethod registry-prune ((db registry-db)) - "Prunes the registry-db object THIS. + (defmethod registry-prune ((db registry-db)) + "Prunes the registry-db object THIS. Removes only entries without the :precious keys." - (let* ((precious (oref db :precious)) - (precious-p (lambda (entry-key) (cdr (memq (car entry-key) precious)))) - (data (oref db :data)) - (limit (oref db :max-soft)) - (size (registry-size db)) - (candidates (loop for k being the hash-keys of data - using (hash-values v) - when (notany precious-p v) - collect k)) - (candidates-count (length candidates)) - ;; are we over max-soft? - (prune-needed (> size limit))) + (let* ((precious (oref db :precious)) + (precious-p (lambda (entry-key) + (cdr (memq (car entry-key) precious)))) + (data (oref db :data)) + (limit (oref db :max-soft)) + (size (registry-size db)) + (candidates (loop for k being the hash-keys of data + using (hash-values v) + when (notany precious-p v) + collect k)) + (candidates-count (length candidates)) + ;; are we over max-soft? + (prune-needed (> size limit))) - ;; while we have more candidates than we need to remove... - (while (and (> candidates-count (- size limit)) candidates) - (decf candidates-count) - (setq candidates (cdr candidates))) + ;; while we have more candidates than we need to remove... + (while (and (> candidates-count (- size limit)) candidates) + (decf candidates-count) + (setq candidates (cdr candidates))) - (registry-delete db candidates nil))) + (registry-delete db candidates nil)))) (ert-deftest registry-instantiation-test () (should (registry-db "Testing"))) From 16a43933e891bae502efbe367e32608fcfffdec3 Mon Sep 17 00:00:00 2001 From: Chong Yidong Date: Mon, 18 Apr 2011 19:21:31 -0400 Subject: [PATCH 4/5] Allow glyphless-char-display to distinguish between X and text terminals. Use this for Tabulated List mode. * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Use a custom glyphless-char-display table. (tabulated-list-glyphless-char-display): New var. * src/term.c (produce_glyphless_glyph): Handle cons cell entry in glyphless-char-display. * src/xdisp.c (lookup_glyphless_char_display) (produce_glyphless_glyph): Handle cons cell entry in glyphless-char-display. (Vglyphless_char_display): Document it. --- etc/NEWS | 3 +++ lisp/ChangeLog | 6 +++++ lisp/emacs-lisp/tabulated-list.el | 13 +++++++++- src/ChangeLog | 10 ++++++++ src/term.c | 2 ++ src/xdisp.c | 42 +++++++++++++++++++++---------- 6 files changed, 62 insertions(+), 14 deletions(-) diff --git a/etc/NEWS b/etc/NEWS index 869e95216e5..69540fa1f54 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -779,6 +779,9 @@ sc.el, x-menu.el, rnews.el, rnewspost.el * Lisp changes in Emacs 24.1 +** `glyphless-char-table' can now distinguish between graphical and +text terminal display, via a char-table entry that is a cons cell. + ** `open-network-stream' can now be used to open an encrypted stream. It now accepts an optional `:type' parameter for initiating a TLS connection, directly or via STARTTLS. To do STARTTLS, additional diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 373ae63bfe5..2e024d34981 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,9 @@ +2011-04-18 Chong Yidong + + * emacs-lisp/tabulated-list.el (tabulated-list-mode): Use a custom + glyphless-char-display table. + (tabulated-list-glyphless-char-display): New var. + 2011-04-18 Sam Steingold * vc/add-log.el (change-log-font-lock-keywords): Add "Thanks to" diff --git a/lisp/emacs-lisp/tabulated-list.el b/lisp/emacs-lisp/tabulated-list.el index 6409c2206bc..2fdfa9525b1 100644 --- a/lisp/emacs-lisp/tabulated-list.el +++ b/lisp/emacs-lisp/tabulated-list.el @@ -143,6 +143,15 @@ If ADVANCE is non-nil, move forward by one line afterwards." map) "Local keymap for `tabulated-list-mode' sort buttons.") +(defvar tabulated-list-glyphless-char-display + (let ((table (make-char-table 'glyphless-char-display nil))) + (set-char-table-parent table glyphless-char-display) + ;; Some text terminals can't display the unicode arrows; be safe. + (aset table 9650 (cons nil "^")) + (aset table 9660 (cons nil "v")) + table) + "The `glyphless-char-display' table in Tabulated List buffers.") + (defun tabulated-list-init-header () "Set up header line for the Tabulated List buffer." (let ((x tabulated-list-padding) @@ -341,7 +350,9 @@ as the ewoc pretty-printer." (setq truncate-lines t) (setq buffer-read-only t) (set (make-local-variable 'revert-buffer-function) - 'tabulated-list-revert)) + 'tabulated-list-revert) + (set (make-local-variable 'glyphless-char-display) + tabulated-list-glyphless-char-display)) (put 'tabulated-list-mode 'mode-class 'special) diff --git a/src/ChangeLog b/src/ChangeLog index 22e85967b82..40174020bf4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,13 @@ +2011-04-18 Chong Yidong + + * xdisp.c (lookup_glyphless_char_display) + (produce_glyphless_glyph): Handle cons cell entry in + glyphless-char-display. + (Vglyphless_char_display): Document it. + + * term.c (produce_glyphless_glyph): Handle cons cell entry in + glyphless-char-display. + 2011-04-17 Chong Yidong * xdisp.c (get_next_display_element): Remove unnecessary ifdefs. diff --git a/src/term.c b/src/term.c index df13d7c0db2..cae83f4d269 100644 --- a/src/term.c +++ b/src/term.c @@ -1936,6 +1936,8 @@ produce_glyphless_glyph (struct it *it, int for_no_font, Lisp_Object acronym) { if (! STRINGP (acronym) && CHAR_TABLE_P (Vglyphless_char_display)) acronym = CHAR_TABLE_REF (Vglyphless_char_display, it->c); + if (CONSP (acronym)) + acronym = XCDR (acronym); buf[0] = '['; str = STRINGP (acronym) ? SSDATA (acronym) : ""; for (len = 0; len < 6 && str[len] && ASCII_BYTE_P (str[len]); len++) diff --git a/src/xdisp.c b/src/xdisp.c index eaab8dac18d..574c84fc086 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -5540,9 +5540,19 @@ lookup_glyphless_char_display (int c, struct it *it) if (CHAR_TABLE_P (Vglyphless_char_display) && CHAR_TABLE_EXTRA_SLOTS (XCHAR_TABLE (Vglyphless_char_display)) >= 1) - glyphless_method = (c >= 0 - ? CHAR_TABLE_REF (Vglyphless_char_display, c) - : XCHAR_TABLE (Vglyphless_char_display)->extras[0]); + { + if (c >= 0) + { + glyphless_method = CHAR_TABLE_REF (Vglyphless_char_display, c); + if (CONSP (glyphless_method)) + glyphless_method = FRAME_WINDOW_P (it->f) + ? XCAR (glyphless_method) + : XCDR (glyphless_method); + } + else + glyphless_method = XCHAR_TABLE (Vglyphless_char_display)->extras[0]; + } + retry: if (NILP (glyphless_method)) { @@ -22315,6 +22325,8 @@ produce_glyphless_glyph (struct it *it, int for_no_font, Lisp_Object acronym) { if (! STRINGP (acronym) && CHAR_TABLE_P (Vglyphless_char_display)) acronym = CHAR_TABLE_REF (Vglyphless_char_display, it->c); + if (CONSP (acronym)) + acronym = XCAR (acronym); str = STRINGP (acronym) ? SSDATA (acronym) : ""; } else @@ -26950,17 +26962,21 @@ cursor shapes. */); Fput (Qglyphless_char_display, Qchar_table_extra_slots, make_number (1)); DEFVAR_LISP ("glyphless-char-display", Vglyphless_char_display, - doc: /* Char-table to control displaying of glyphless characters. -Each element, if non-nil, is an ASCII acronym string (displayed in a box) -or one of these symbols: - hex-code: display the hexadecimal code of a character in a box - empty-box: display as an empty box - thin-space: display as 1-pixel width space - zero-width: don't display + doc: /* Char-table defining glyphless characters. +Each element, if non-nil, should be one of the following: + an ASCII acronym string: display this string in a box + `hex-code': display the hexadecimal code of a character in a box + `empty-box': display as an empty box + `thin-space': display as 1-pixel width space + `zero-width': don't display +An element may also be a cons cell (GRAPHICAL . TEXT), which specifies the +display method for graphical terminals and text terminals respectively. +GRAPHICAL and TEXT should each have one of the values listed above. -It has one extra slot to control the display of a character for which -no font is found. The value of the slot is `hex-code' or `empty-box'. -The default is `empty-box'. */); +The char-table has one extra slot to control the display of a character for +which no font is found. This slot only takes effect on graphical terminals. +Its value should be an ASCII acronym string, `hex-code', `empty-box', or +`thin-space'. The default is `empty-box'. */); Vglyphless_char_display = Fmake_char_table (Qglyphless_char_display, Qnil); Fset_char_table_extra_slot (Vglyphless_char_display, make_number (0), Qempty_box); From bc4f7f3d586a8d32718e27e99226d1b5ab091db5 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Mon, 18 Apr 2011 21:11:01 -0700 Subject: [PATCH 5/5] calendar housekeeping prompted by lexical-binding. * lisp/calendar/appt.el (appt-make-list): * lisp/calendar/cal-china.el (calendar-chinese-date-string): * lisp/calendar/cal-hebrew.el (calendar-hebrew-list-yahrzeits) (diary-hebrew-yahrzeit): * lisp/calendar/cal-tex.el (cal-tex-last-blank-p, cal-tex-cursor-week2): * lisp/calendar/calendar.el (calendar-generate-window): * lisp/calendar/time-date.el (time-to-days): Remove unused local variables. * lisp/calendar/cal-dst.el (dst-adjust-time): Remove never-implemented optional argument `style'. * lisp/calendar/cal-tex.el (cal-tex-list-holidays, cal-tex-cursor-month) (cal-tex-cursor-week, cal-tex-cursor-week2, cal-tex-cursor-week-iso) (cal-tex-cursor-filofax-2week, cal-tex-cursor-filofax-week) (cal-tex-cursor-filofax-daily, cal-tex-mini-calendar) * lisp/calendar/cal-html.el (cal-html-insert-minical): * lisp/calendar/diary-lib.el (diary-list-entries-1, diary-list-entries) (calendar-mark-date-pattern): Prefix "unused" locals. --- lisp/ChangeLog | 23 +++++++++++++++++++++++ lisp/calendar/appt.el | 1 - lisp/calendar/cal-china.el | 3 +-- lisp/calendar/cal-dst.el | 6 +----- lisp/calendar/cal-hebrew.el | 4 ---- lisp/calendar/cal-html.el | 2 +- lisp/calendar/cal-tex.el | 27 +++++++++++++-------------- lisp/calendar/calendar.el | 1 - lisp/calendar/diary-lib.el | 6 +++--- lisp/calendar/time-date.el | 2 -- 10 files changed, 42 insertions(+), 33 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2e024d34981..693fae97ee5 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,26 @@ +2011-04-19 Glenn Morris + + * calendar/cal-tex.el (cal-tex-list-holidays, cal-tex-cursor-month) + (cal-tex-cursor-week, cal-tex-cursor-week2, cal-tex-cursor-week-iso) + (cal-tex-cursor-filofax-2week, cal-tex-cursor-filofax-week) + (cal-tex-cursor-filofax-daily, cal-tex-mini-calendar) + * calendar/cal-html.el (cal-html-insert-minical): + * calendar/diary-lib.el (diary-list-entries-1, diary-list-entries) + (calendar-mark-date-pattern): + Prefix "unused" locals. + + * calendar/cal-dst.el (dst-adjust-time): Remove never-implemented + optional argument `style'. + + * calendar/appt.el (appt-make-list): + * calendar/cal-china.el (calendar-chinese-date-string): + * calendar/cal-hebrew.el (calendar-hebrew-list-yahrzeits) + (diary-hebrew-yahrzeit): + * calendar/cal-tex.el (cal-tex-last-blank-p, cal-tex-cursor-week2): + * calendar/calendar.el (calendar-generate-window): + * calendar/time-date.el (time-to-days): + Remove unused local variables. + 2011-04-18 Chong Yidong * emacs-lisp/tabulated-list.el (tabulated-list-mode): Use a custom diff --git a/lisp/calendar/appt.el b/lisp/calendar/appt.el index c0f4f0f3929..1394efa880e 100644 --- a/lisp/calendar/appt.el +++ b/lisp/calendar/appt.el @@ -509,7 +509,6 @@ Any appointments made with `appt-add' are not affected by this function." ;; entry begins with a time, add it to the ;; appt-time-msg-list. Then sort the list. (let ((entry-list diary-entries-list) - (new-time-string "") time-string) ;; Below, we assume diary-entries-list was in date ;; order. It is, unless something on diff --git a/lisp/calendar/cal-china.el b/lisp/calendar/cal-china.el index fce398709ad..d17c2c71f8a 100644 --- a/lisp/calendar/cal-china.el +++ b/lisp/calendar/cal-china.el @@ -575,8 +575,7 @@ Defaults to today's date if DATE is not given." ;; Remainder of (1+(floor month))/12, with ;; 12 instead of 0. (1+ (mod (floor month) 12)) - 1))) - (m-cycle (% (+ (* year 5) (floor month)) 60))) + 1)))) (format "Cycle %s, year %s (%s), %smonth %s%s, day %s (%s)" cycle year (calendar-chinese-sexagesimal-name year) diff --git a/lisp/calendar/cal-dst.el b/lisp/calendar/cal-dst.el index e915f7e2696..ffb367a70f6 100644 --- a/lisp/calendar/cal-dst.el +++ b/lisp/calendar/cal-dst.el @@ -445,16 +445,12 @@ Fractional part of DATE is local standard time of day." (or (<= dst-starts date) (< date dst-ends)))))) ;; used by calc, lunar, solar. -(defun dst-adjust-time (date time &optional style) +(defun dst-adjust-time (date time) "Adjust, to account for dst on DATE, decimal fraction standard TIME. Returns a list (date adj-time zone) where `date' and `adj-time' are the values adjusted for `zone'; here `date' is a list (month day year), `adj-time' is a decimal fraction time, and `zone' is a string. -Optional parameter STYLE forces the result time to be standard time when its -value is 'standard and daylight saving time (if available) when its value is -'daylight. - Conversion to daylight saving time is done according to `calendar-daylight-savings-starts', `calendar-daylight-savings-ends', `calendar-daylight-savings-starts-time', diff --git a/lisp/calendar/cal-hebrew.el b/lisp/calendar/cal-hebrew.el index 44c3e62a7c2..52bf442915f 100644 --- a/lisp/calendar/cal-hebrew.el +++ b/lisp/calendar/cal-hebrew.el @@ -764,8 +764,6 @@ from the cursor position." (message "Computing Yahrzeits...") (let* ((h-date (calendar-hebrew-from-absolute (calendar-absolute-from-gregorian death-date))) - (h-month (calendar-extract-month h-date)) - (h-day (calendar-extract-day h-date)) (h-year (calendar-extract-year h-date)) (i (1- start-year))) (calendar-in-read-only-buffer calendar-hebrew-yahrzeit-buffer @@ -900,8 +898,6 @@ use when highlighting the day in the calendar." (+ (calendar-absolute-from-gregorian (diary-make-date death-month death-day death-year)) (if after-sunset 1 0)))) - (h-month (calendar-extract-month h-date)) - (h-day (calendar-extract-day h-date)) (h-year (calendar-extract-year h-date)) (d (calendar-absolute-from-gregorian date)) (yr (calendar-extract-year (calendar-hebrew-from-absolute d))) diff --git a/lisp/calendar/cal-html.el b/lisp/calendar/cal-html.el index bd10aa176ae..bcc19ccda0b 100644 --- a/lisp/calendar/cal-html.el +++ b/lisp/calendar/cal-html.el @@ -247,7 +247,7 @@ Contains links to previous and next month and year, and current minical." (insert cal-html-e-tablerow-string) ;; Initial empty slots. (insert cal-html-b-tablerow-string) - (dotimes (i blank-days) + (dotimes (_i blank-days) (insert cal-html-b-tabledata-string cal-html-e-tabledata-string)) diff --git a/lisp/calendar/cal-tex.el b/lisp/calendar/cal-tex.el index 2fc215c06c4..89e265aeb7e 100644 --- a/lisp/calendar/cal-tex.el +++ b/lisp/calendar/cal-tex.el @@ -253,7 +253,7 @@ This definition is the heart of the calendar!") 3))) holidays in-range a) (calendar-increment-month displayed-month displayed-year 1) - (dotimes (idummy number-of-intervals) + (dotimes (_idummy number-of-intervals) (setq holidays (append holidays (calendar-holiday-list))) (calendar-increment-month displayed-month displayed-year 3)) (dolist (hol holidays) @@ -525,7 +525,7 @@ indicates a buffer position to use instead of point." (cal-tex-insert-day-names) (cal-tex-nl ".2cm") (cal-tex-insert-blank-days month year cal-tex-day-prefix) - (dotimes (idummy n) + (dotimes (_idummy n) (cal-tex-insert-days month year diary-list holidays cal-tex-day-prefix) (when (= (calendar-week-end-day) (calendar-day-of-week @@ -642,7 +642,7 @@ in the calendar starting in MONTH YEAR." ;; start of the last week in the month. (catch 'found (let ((last-day (calendar-last-day-of-month month year)) - day dow) + dow) (dotimes (i 7) (if (memq (setq dow (calendar-day-of-week (list month (- last-day i) year))) @@ -717,7 +717,7 @@ entries are not shown). The calendar shows the hours 8-12am, 1-5pm." (cal-tex-e-center) (cal-tex-hspace "-.2in") (cal-tex-b-parbox "l" "7in") - (dotimes (jdummy 7) + (dotimes (_jdummy 7) (cal-tex-week-hours date holidays "3.1") (setq date (cal-tex-incr-date date))) (cal-tex-e-parbox) @@ -749,7 +749,6 @@ Optional EVENT indicates a buffer position to use instead of point." (calendar-cursor-to-date t event))))) (month (calendar-extract-month date)) (year (calendar-extract-year date)) - (d date) (d1 (calendar-absolute-from-gregorian date)) (d2 (+ (* 7 n) d1)) (holidays (if cal-tex-holidays @@ -773,7 +772,7 @@ Optional EVENT indicates a buffer position to use instead of point." (cal-tex-e-center) (cal-tex-hspace "-.2in") (cal-tex-b-parbox "l" "\\textwidth") - (dotimes (jdummy 3) + (dotimes (_jdummy 3) (cal-tex-week-hours date holidays "5") (setq date (cal-tex-incr-date date))) (cal-tex-e-parbox) @@ -801,7 +800,7 @@ Optional EVENT indicates a buffer position to use instead of point." (insert "}") (cal-tex-nl) (cal-tex-b-parbox "l" "\\textwidth") - (dotimes (jdummy 4) + (dotimes (_jdummy 4) (cal-tex-week-hours date holidays "5") (setq date (cal-tex-incr-date date))) (cal-tex-e-parbox) @@ -863,7 +862,7 @@ position to use instead of point." (cal-tex-nl ".5cm") (cal-tex-e-center) (cal-tex-b-parbox "l" "\\textwidth") - (dotimes (j 7) + (dotimes (_j 7) (cal-tex-b-parbox "t" "\\textwidth") (cal-tex-b-parbox "t" "\\textwidth") (cal-tex-rule "0pt" "\\textwidth" ".2mm") @@ -1112,7 +1111,7 @@ Optional EVENT indicates a buffer position to use instead of point." (cal-tex-month-name (calendar-extract-month d)) (calendar-extract-year d)))))) (insert "%\n") - (dotimes (jdummy 7) + (dotimes (_jdummy 7) (if (zerop (mod i 2)) (insert "\\rightday") (insert "\\leftday")) @@ -1216,7 +1215,7 @@ Optional EVENT indicates a buffer position to use instead of point." (cal-tex-month-name (calendar-extract-month d)) (calendar-extract-year d)))))) (insert "%\n") - (dotimes (jdummy 3) + (dotimes (_jdummy 3) (insert "\\leftday") (cal-tex-arg (cal-tex-LaTeXify-string (calendar-day-name date))) (cal-tex-arg (number-to-string (calendar-extract-day date))) @@ -1247,7 +1246,7 @@ Optional EVENT indicates a buffer position to use instead of point." (cal-tex-month-name (calendar-extract-month d)) (calendar-extract-year d)))))) (insert "%\n") - (dotimes (jdummy 2) + (dotimes (_jdummy 2) (insert "\\rightday") (cal-tex-arg (cal-tex-LaTeXify-string (calendar-day-name date))) (cal-tex-arg (number-to-string (calendar-extract-day date))) @@ -1256,7 +1255,7 @@ Optional EVENT indicates a buffer position to use instead of point." (cal-tex-arg (eval cal-tex-daily-string)) (insert "%\n") (setq date (cal-tex-incr-date date))) - (dotimes (jdummy 2) + (dotimes (_jdummy 2) (insert "\\weekend") (cal-tex-arg (cal-tex-LaTeXify-string (calendar-day-name date))) (cal-tex-arg (number-to-string (calendar-extract-day date))) @@ -1362,7 +1361,7 @@ Optional EVENT indicates a buffer position to use instead of point." (cal-tex-newpage) (setq date (cal-tex-incr-date date))) (insert "%\n") - (dotimes (jdummy 2) + (dotimes (_jdummy 2) (insert "\\lefthead") (cal-tex-arg (calendar-date-string date)) (insert "\\weekend") @@ -1523,7 +1522,7 @@ Optional string COLSEP gives the column separation (default \"1mm\")." (if (= i 6) "\\\\[0.7mm]\n" " & ")))) - (dotimes (idummy blank-days) + (dotimes (_idummy blank-days) (setq str (concat str " & "))) (dotimes (i last) (setq str (concat str (number-to-string (1+ i))) diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el index 99b0c21c94c..e81eb554458 100644 --- a/lisp/calendar/calendar.el +++ b/lisp/calendar/calendar.el @@ -1363,7 +1363,6 @@ Optional integers MON and YR are used instead of today's date." (year (calendar-extract-year today)) (today-visible (or (not mon) (<= (abs (calendar-interval mon yr month year)) 1))) - (day-in-week (calendar-day-of-week today)) (in-calendar-window (eq (window-buffer (selected-window)) (get-buffer calendar-buffer)))) (calendar-generate (or mon month) (or yr year)) diff --git a/lisp/calendar/diary-lib.el b/lisp/calendar/diary-lib.el index 9a455c4f2f0..a2528ac22ca 100644 --- a/lisp/calendar/diary-lib.el +++ b/lisp/calendar/diary-lib.el @@ -710,7 +710,7 @@ MONTHS is an array of month names. SYMBOL marks diary entries of the type in question. ABSFUNC is a function that converts absolute dates to dates of the appropriate type." (let ((gdate original-date)) - (dotimes (idummy number) + (dotimes (_idummy number) (diary-list-entries-2 (funcall absfunc (calendar-absolute-from-gregorian gdate)) diary-nonmarking-symbol file-glob-attrs list-only months symbol gdate) @@ -820,7 +820,7 @@ LIST-ONLY is non-nil, in which case it just returns the list." (set (make-local-variable 'diary-selective-display) t) (overlay-put ol 'invisible 'diary) (overlay-put ol 'evaporate t))) - (dotimes (idummy number) + (dotimes (_idummy number) (let ((sexp-found (diary-list-sexp-entries date)) (entry-found (diary-list-entries-2 date diary-nonmarking-symbol @@ -1509,7 +1509,7 @@ passed to `calendar-mark-visible-date' as MARK." (let ((m displayed-month) (y displayed-year)) (calendar-increment-month m y -1) - (dotimes (idummy 3) + (dotimes (_idummy 3) (calendar-mark-month m y month day year color) (calendar-increment-month m y 1))))) diff --git a/lisp/calendar/time-date.el b/lisp/calendar/time-date.el index 62203600612..70d096c4108 100644 --- a/lisp/calendar/time-date.el +++ b/lisp/calendar/time-date.el @@ -243,8 +243,6 @@ DATE1 and DATE2 should be date-time strings." TIME should be a time value. The Gregorian date Sunday, December 31, 1bce is imaginary." (let* ((tim (decode-time time)) - (month (nth 4 tim)) - (day (nth 3 tim)) (year (nth 5 tim))) (+ (time-to-day-in-year time) ; Days this year (* 365 (1- year)) ; + Days in prior years