Using saved parent location: http://bzr.savannah.gnu.org/r/emacs/trunk/ Now on revision 100090. ------------------------------------------------------------ revno: 100090 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-04-29 18:54:08 -0700 message: Regenerate configure. diff: === modified file 'configure' --- configure 2010-04-28 07:33:48 +0000 +++ configure 2010-04-30 01:54:08 +0000 @@ -799,7 +799,10 @@ XOBJ WIDGET_OBJ TOOLKIT_LIBW +OLDXMENU +LIBXMENU CYGWIN_OBJ +OTHER_OBJ LTLIBOBJS' ac_subst_files='' ac_user_opts=' @@ -13260,7 +13263,7 @@ case "$machine" in ## These machines don't supply Xmu. hpux* | aix4-2 ) - test "X$ac_cv_lib_Xmu_XmuConvertStandardSelection" = "Xno" && LIBXMU= + test "X$ac_cv_lib_Xmu_XmuConvertStandardSelection" != "Xyes" && LIBXMU= ;; esac @@ -26103,20 +26106,43 @@ fi +TOOLKIT_LIBW= case "$USE_X_TOOLKIT" in MOTIF) TOOLKIT_LIBW="$MOTIF_LIBW" ;; LUCID) TOOLKIT_LIBW="$LUCID_LIBW" ;; - *) TOOLKIT_LIBW= ;; + none) test "x$HAVE_GTK" = "xyes" && TOOLKIT_LIBW="$GTK_LIBS" ;; esac +## The X Menu stuff is present in the X10 distribution, but missing +## from X11. If we have X10, just use the installed library; +## otherwise, use our own copy. if test "${HAVE_X11}" = "yes" ; then cat >>confdefs.h <<\_ACEOF #define HAVE_X11 1 _ACEOF -fi + + if test "$USE_X_TOOLKIT" = "none"; then + OLDXMENU="\${oldXMenudir}libXMenu11.a" + else + OLDXMENU="\${lwlibdir}liblw.a" + fi + LIBXMENU="\$(OLDXMENU)" +else + OLDXMENU= + LIBXMENU="-lXMenu" +fi + +if test "$HAVE_GTK" = "yes"; then + OLDXMENU= + LIBXMENU= +fi + + + + if test "${HAVE_MENUS}" = "yes" ; then cat >>confdefs.h <<\_ACEOF @@ -26139,8 +26165,17 @@ fi -CYGWIN_OBJ= -test "$opsys" = "cygwin" && CYGWIN_OBJ="sheap.o" + +OTHER_OBJ="\$(gmallocobj) \$(rallocobj)" +if test "$opsys" = "cygwin"; then + CYGWIN_OBJ="sheap.o" + ## Cygwin differs because of its unexec(). + OTHER_OBJ="$OTHER_OBJ lastfile.o" +else + CYGWIN_OBJ= + OTHER_OBJ="lastfile.o $OTHER_OBJ" +fi + ------------------------------------------------------------ revno: 100089 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-04-29 18:50:17 -0700 message: Replace some xmenu cpp with autoconf. * configure.in (TOOLKIT_LIBW) [HAVE_GTK]: Set to $GTK_LIBS. (OLDXMENU, LIBXMENU): New output variables. * src/Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]: Set with configure, not cpp. (LIBW): Remove, replace with $TOOLKIT_LIBW. diff: === modified file 'ChangeLog' --- ChangeLog 2010-04-30 01:36:42 +0000 +++ ChangeLog 2010-04-30 01:50:17 +0000 @@ -1,5 +1,8 @@ 2010-04-30 Glenn Morris + * configure.in (TOOLKIT_LIBW) [HAVE_GTK]: Set to $GTK_LIBS. + (OLDXMENU, LIBXMENU): New output variables. + * configure.in (OTHER_OBJ): New output variable. 2010-04-28 Glenn Morris === modified file 'configure.in' --- configure.in 2010-04-30 01:36:42 +0000 +++ configure.in 2010-04-30 01:50:17 +0000 @@ -2900,18 +2900,41 @@ fi AC_SUBST(WIDGET_OBJ) +TOOLKIT_LIBW= case "$USE_X_TOOLKIT" in MOTIF) TOOLKIT_LIBW="$MOTIF_LIBW" ;; LUCID) TOOLKIT_LIBW="$LUCID_LIBW" ;; - *) TOOLKIT_LIBW= ;; + none) test "x$HAVE_GTK" = "xyes" && TOOLKIT_LIBW="$GTK_LIBS" ;; esac AC_SUBST(TOOLKIT_LIBW) +## The X Menu stuff is present in the X10 distribution, but missing +## from X11. If we have X10, just use the installed library; +## otherwise, use our own copy. if test "${HAVE_X11}" = "yes" ; then AC_DEFINE(HAVE_X11, 1, [Define to 1 if you want to use version 11 of X windows. Otherwise, Emacs expects to use version 10.]) -fi + + if test "$USE_X_TOOLKIT" = "none"; then + OLDXMENU="\${oldXMenudir}libXMenu11.a" + else + OLDXMENU="\${lwlibdir}liblw.a" + fi + LIBXMENU="\$(OLDXMENU)" +else + OLDXMENU= + LIBXMENU="-lXMenu" +fi + +if test "$HAVE_GTK" = "yes"; then + OLDXMENU= + LIBXMENU= +fi + +AC_SUBST(OLDXMENU) +AC_SUBST(LIBXMENU) + if test "${HAVE_MENUS}" = "yes" ; then AC_DEFINE(HAVE_MENUS, 1, [Define to 1 if you have mouse menus. @@ -2935,7 +2958,7 @@ ## Cygwin differs because of its unexec(). OTHER_OBJ="$OTHER_OBJ lastfile.o" else -CYGWIN_OBJ= + CYGWIN_OBJ= OTHER_OBJ="lastfile.o $OTHER_OBJ" fi AC_SUBST(CYGWIN_OBJ) === modified file 'src/ChangeLog' --- src/ChangeLog 2010-04-30 01:36:42 +0000 +++ src/ChangeLog 2010-04-30 01:50:17 +0000 @@ -1,5 +1,9 @@ 2010-04-30 Glenn Morris + * Makefile.in (OLDXMENU, LIBXMENU) [HAVE_MENUS]: + Set with configure, not cpp. + (LIBW): Remove, replace with $TOOLKIT_LIBW. + * Makefile.in (mallocobj): Remove. (otherobj): Simplify using @OTHER_OBJ@. === modified file 'src/Makefile.in' --- src/Makefile.in 2010-04-30 01:36:42 +0000 +++ src/Makefile.in 2010-04-30 01:50:17 +0000 @@ -254,43 +254,21 @@ $(CC) -c $(CPPFLAGS) $(ALL_OBJC_CFLAGS) $< #ifdef HAVE_X_WINDOWS + +/* This test needs to say in cpp for the time being, since s/ms-w32.h and + s/msdos.h define HAVE_MENUS, possibly overriding configure. */ #ifdef HAVE_MENUS - -/* The X Menu stuff is present in the X10 distribution, but missing - from X11. If we have X10, just use the installed library; - otherwise, use our own copy. */ -#ifdef HAVE_X11 -#ifdef USE_X_TOOLKIT -OLDXMENU=${lwlibdir}liblw.a -LIBXMENU= $(OLDXMENU) -#else /* not USE_X_TOOLKIT */ -OLDXMENU= ${oldXMenudir}libXMenu11.a -LIBXMENU= $(OLDXMENU) -#endif /* not USE_X_TOOLKIT */ -#else /* not HAVE_X11 */ -LIBXMENU= -lXMenu -#endif /* not HAVE_X11 */ - +OLDXMENU=@OLDXMENU@ +LIBXMENU=@LIBXMENU@ #else /* not HAVE_MENUS */ - -/* Otherwise, do not worry about the menu library at all. */ +OLDXMENU= LIBXMENU= #endif /* not HAVE_MENUS */ #ifdef USE_X_TOOLKIT -LIBW=$(TOOLKIT_LIBW) - -LIBXT= $(LIBW) $(LIBXMU) -lXt $(LIBXTR6) -lXext - +LIBXT=$(TOOLKIT_LIBW) $(LIBXMU) -lXt $(LIBXTR6) -lXext #else /* not USE_X_TOOLKIT */ - -#ifdef USE_GTK -LIBW=@GTK_LIBS@ -OLDXMENU= -LIBXMENU= -#endif /* USE_GTK */ - -LIBXT=$(LIBW) $(LIBXSM) +LIBXT=$(TOOLKIT_LIBW) $(LIBXSM) #endif /* not USE_X_TOOLKIT */ #ifdef HAVE_X11 ------------------------------------------------------------ revno: 100088 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-04-29 18:36:42 -0700 message: Replace some cpp with autoconf. * configure.in (OTHER_OBJ): New output variable. * src/Makefile.in (mallocobj): Remove. (otherobj): Simplify using @OTHER_OBJ@. diff: === modified file 'ChangeLog' --- ChangeLog 2010-04-28 07:20:39 +0000 +++ ChangeLog 2010-04-30 01:36:42 +0000 @@ -1,3 +1,7 @@ +2010-04-30 Glenn Morris + + * configure.in (OTHER_OBJ): New output variable. + 2010-04-28 Glenn Morris * configure.in (CYGWIN_OBJ): New output variable. === modified file 'configure.in' --- configure.in 2010-04-28 15:58:29 +0000 +++ configure.in 2010-04-30 01:36:42 +0000 @@ -2928,9 +2928,18 @@ buffer space.]) fi + +OTHER_OBJ="\$(gmallocobj) \$(rallocobj)" +if test "$opsys" = "cygwin"; then + CYGWIN_OBJ="sheap.o" + ## Cygwin differs because of its unexec(). + OTHER_OBJ="$OTHER_OBJ lastfile.o" +else CYGWIN_OBJ= -test "$opsys" = "cygwin" && CYGWIN_OBJ="sheap.o" + OTHER_OBJ="lastfile.o $OTHER_OBJ" +fi AC_SUBST(CYGWIN_OBJ) +AC_SUBST(OTHER_OBJ) AH_TOP([/* GNU Emacs site configuration template file. Copyright (C) 1988, 1993, 1994, 1999, 2000, 2001, 2002, 2004, 2005, === modified file 'src/ChangeLog' --- src/ChangeLog 2010-04-30 01:27:33 +0000 +++ src/ChangeLog 2010-04-30 01:36:42 +0000 @@ -1,5 +1,8 @@ 2010-04-30 Glenn Morris + * Makefile.in (mallocobj): Remove. + (otherobj): Simplify using @OTHER_OBJ@. + * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o) (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o): Don't bother making nsgui.h dependency platform-specific. === modified file 'src/Makefile.in' --- src/Makefile.in 2010-04-30 01:27:33 +0000 +++ src/Makefile.in 2010-04-30 01:36:42 +0000 @@ -435,7 +435,6 @@ #ifndef SYSTEM_MALLOC - #ifndef DOUG_LEA_MALLOC gmallocobj = gmalloc.o #endif @@ -443,20 +442,12 @@ #ifdef REL_ALLOC rallocobj = ralloc.o #endif - -mallocobj = $(gmallocobj) $(rallocobj) vm-limit.o - -#endif /* SYSTEM_MALLOC */ - - -/* define otherobj as list of object files that make-docfile - should not be told about. */ -#ifdef CYGWIN -/* Cygwin differs because of its unexec(). */ -otherobj= $(termcapobj) $(gmallocobj) $(rallocobj) lastfile.o vm-limit.o $(WIDGET_OBJ) $(LIBOBJS) -#else -otherobj= $(termcapobj) lastfile.o $(mallocobj) $(WIDGET_OBJ) $(LIBOBJS) -#endif +#endif /* !SYSTEM_MALLOC */ + +/* List of object files that make-docfile should not be told about. */ +/* OTHER_OBJ = $(gmallocobj) $(rallocobj), with trailing/leading + lastfile.o on Cygwin/other. */ +otherobj= $(termcapobj) @OTHER_OBJ@ vm-limit.o $(WIDGET_OBJ) $(LIBOBJS) #ifdef HAVE_MOUSE #define MOUSE_SUPPORT ${lispsource}mouse.elc \ ------------------------------------------------------------ revno: 100087 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-04-29 18:27:33 -0700 message: Simplify some manual dependencies in src/Makefile.in. * src/Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o) (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o): Don't bother making nsgui.h dependency platform-specific. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2010-04-30 01:18:09 +0000 +++ src/ChangeLog 2010-04-30 01:27:33 +0000 @@ -1,5 +1,9 @@ 2010-04-30 Glenn Morris + * Makefile.in (dispnew.o, frame.o, fringe.o, font.o, fontset.o) + (keyboard.o, window.o, xdisp.o, xfaces.o, menu.o): + Don't bother making nsgui.h dependency platform-specific. + * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency. 2010-04-29 Stefan Monnier === modified file 'src/Makefile.in' --- src/Makefile.in 2010-04-30 01:18:09 +0000 +++ src/Makefile.in 2010-04-30 01:27:33 +0000 @@ -834,6 +834,14 @@ #ifndef AUTO_DEPEND +## FIXME some of these dependencies are platform-specific. +## Eg callproc.c only depends on w32.h for WINDOWSNT builds. +## One way to fix this would be to replace w32.h (etc) by $(W32_H), +## a variable set by configure. Doesn't seem worth the trouble. + +## nsgui.h: In fact, every .o file depends directly or indirectly on +## dispextern.h and hence nsgui.h under NS. But the ones that actually +## use stuff there are more limited. atimer.o: atimer.c atimer.h syssignal.h systime.h lisp.h blockinput.h \ $(config_h) bidi.o: bidi.c buffer.h character.h dispextern.h lisp.h $(config_h) @@ -869,7 +877,7 @@ coding.h regex.h systime.h blockinput.h atimer.h composite.h dispnew.o: dispnew.c systime.h commands.h process.h frame.h coding.h \ window.h buffer.h termchar.h termopts.h termhooks.h cm.h \ - disptab.h indent.h $(INTERVALS_H) \ + disptab.h indent.h $(INTERVALS_H) nsgui.h \ xterm.h blockinput.h atimer.h character.h msdos.h keyboard.h \ syssignal.h lisp.h $(config_h) doc.o: doc.c lisp.h $(config_h) epaths.h buffer.h keyboard.h keymap.h \ @@ -890,18 +898,19 @@ filemode.o: filemode.c $(config_h) frame.o: frame.c xterm.h window.h frame.h termhooks.h commands.h keyboard.h \ blockinput.h atimer.h systime.h buffer.h character.h fontset.h font.h \ - msdos.h dosfns.h dispextern.h w32term.h termchar.h coding.h composite.h \ - lisp.h $(config_h) termhooks.h ccl.h -fringe.o: fringe.c dispextern.h frame.h window.h buffer.h termhooks.h \ + msdos.h dosfns.h dispextern.h w32term.h nsgui.h termchar.h coding.h \ + composite.h lisp.h $(config_h) termhooks.h ccl.h +fringe.o: fringe.c dispextern.h nsgui.h frame.h window.h buffer.h termhooks.h \ blockinput.h atimer.h systime.h lisp.h $(config_h) font.o: font.c dispextern.h frame.h window.h ccl.h character.h charset.h \ - font.h lisp.h $(config_h) buffer.h composite.h fontset.h xterm.h + font.h lisp.h $(config_h) buffer.h composite.h fontset.h xterm.h nsgui.h ftfont.o: dispextern.h frame.h character.h charset.h composite.h font.h \ lisp.h $(config_h) blockinput.h atimer.h systime.h coding.h fontset.h \ ccl.h ftfont.h fontset.o: fontset.c fontset.h ccl.h buffer.h character.h \ charset.h frame.h keyboard.h termhooks.h font.h lisp.h $(config_h) \ - blockinput.h atimer.h systime.h coding.h $(INTERVALS_H) window.h xterm.h + blockinput.h atimer.h systime.h coding.h $(INTERVALS_H) nsgui.h \ + window.h xterm.h getloadavg.o: getloadavg.c $(config_h) gtkutil.o: gtkutil.c gtkutil.h xterm.h lisp.h frame.h lisp.h $(config_h) \ blockinput.h window.h atimer.h systime.h termhooks.h keyboard.h \ @@ -917,7 +926,7 @@ keyboard.o: keyboard.c termchar.h termhooks.h termopts.h buffer.h character.h \ commands.h frame.h window.h macros.h disptab.h keyboard.h syssignal.h \ systime.h syntax.h $(INTERVALS_H) blockinput.h atimer.h composite.h \ - xterm.h puresize.h msdos.h keymap.h w32term.h nsterm.h coding.h \ + xterm.h puresize.h msdos.h keymap.h w32term.h nsterm.h nsgui.h coding.h \ lisp.h $(config_h) keymap.o: keymap.c buffer.h commands.h keyboard.h termhooks.h blockinput.h \ atimer.h systime.h puresize.h character.h charset.h $(INTERVALS_H) keymap.h window.h \ @@ -996,16 +1005,16 @@ window.o: window.c indent.h commands.h frame.h window.h buffer.h termchar.h \ disptab.h keyboard.h msdos.h coding.h termhooks.h \ keymap.h blockinput.h atimer.h systime.h $(INTERVALS_H) \ - xterm.h w32term.h nsterm.h lisp.h $(config_h) + xterm.h w32term.h nsterm.h nsgui.h lisp.h $(config_h) xdisp.o: xdisp.c macros.h commands.h process.h indent.h buffer.h dispextern.h \ coding.h termchar.h frame.h window.h disptab.h termhooks.h character.h \ - charset.h lisp.h $(config_h) keyboard.h $(INTERVALS_H) region-cache.h xterm.h \ - w32term.h nsterm.h msdos.h composite.h fontset.h ccl.h \ + charset.h lisp.h $(config_h) keyboard.h $(INTERVALS_H) region-cache.h \ + xterm.h w32term.h nsterm.h nsgui.h msdos.h composite.h fontset.h ccl.h \ blockinput.h atimer.h systime.h keymap.h font.h xfaces.o: xfaces.c dispextern.h frame.h xterm.h buffer.h blockinput.h \ window.h character.h charset.h msdos.h dosfns.h composite.h atimer.h \ systime.h keyboard.h fontset.h w32term.h nsterm.h coding.h ccl.h \ - $(INTERVALS_H) termchar.h termhooks.h font.h lisp.h $(config_h) + $(INTERVALS_H) nsgui.h termchar.h termhooks.h font.h lisp.h $(config_h) xfns.o: xfns.c buffer.h frame.h window.h keyboard.h xterm.h dispextern.h \ $(srcdir)/../lwlib/lwlib.h blockinput.h atimer.h systime.h epaths.h \ character.h charset.h coding.h gtkutil.h lisp.h $(config_h) termhooks.h \ @@ -1018,7 +1027,7 @@ font.h lisp.h $(config_h) atimer.h systime.h fontset.h ccl.h menu.o: menu.c lisp.h keyboard.h keymap.h frame.h termhooks.h blockinput.h \ dispextern.h $(srcdir)/../lwlib/lwlib.h xterm.h gtkutil.h menu.h \ - lisp.h $(config_h) systime.h coding.h composite.h window.h atimer.h + lisp.h $(config_h) systime.h coding.h composite.h window.h atimer.h nsgui.h xmenu.o: xmenu.c xterm.h termhooks.h window.h dispextern.h frame.h buffer.h \ charset.h keyboard.h $(srcdir)/../lwlib/lwlib.h blockinput.h atimer.h \ systime.h gtkutil.h msdos.h coding.h menu.h lisp.h $(config_h) composite.h \ @@ -1076,12 +1085,6 @@ select which of these should be compiled. */ #ifdef HAVE_NS -/* In fact, every .o file depends directly or indirectly on dispextern.h - and hence nsgui.h under NS. But the ones that actually use stuff there - are more limited. */ -dispnew.o font.o fontset.o frame.o fringe.o image.o keyboard.o menu.o \ - window.o xdisp.o xfaces.o: nsgui.h - ${ns_appdir}: ${ns_appsrc} rm -fr ${ns_appdir} mkdir -p ${ns_appdir} ------------------------------------------------------------ revno: 100086 committer: Glenn Morris branch nick: trunk timestamp: Thu 2010-04-29 18:18:09 -0700 message: * src/Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2010-04-29 14:29:09 +0000 +++ src/ChangeLog 2010-04-30 01:18:09 +0000 @@ -1,3 +1,7 @@ +2010-04-30 Glenn Morris + + * Makefile.in (nsfns.o): Remove duplicate nsgui.h dependency. + 2010-04-29 Stefan Monnier * process.c (read_process_output, exec_sentinel): Don't burp if the === modified file 'src/Makefile.in' --- src/Makefile.in 2010-04-28 07:25:47 +0000 +++ src/Makefile.in 2010-04-30 01:18:09 +0000 @@ -938,7 +938,7 @@ termopts.h termchar.h character.h coding.h ccl.h disptab.h window.h \ keyboard.h $(INTERVALS_H) buffer.h commands.h blockinput.h atimer.h lisp.h $(config_h) nsfns.o: nsfns.m charset.h nsterm.h nsgui.h frame.h window.h buffer.h \ - dispextern.h nsgui.h fontset.h $(INTERVALS_H) keyboard.h blockinput.h \ + dispextern.h fontset.h $(INTERVALS_H) keyboard.h blockinput.h \ atimer.h systime.h epaths.h termhooks.h coding.h systime.h lisp.h $(config_h) nsfont.o: nsterm.h dispextern.h frame.h lisp.h lisp.h $(config_h) nsimage.o: nsimage.m nsterm.h lisp.h $(config_h) ------------------------------------------------------------ revno: 100085 committer: Chong Yidong branch nick: trunk timestamp: Thu 2010-04-29 11:41:23 -0400 message: * ido.el (ido-minibuffer-setup): Don't set cua-inhibit-cua-keys (Bug#5765). diff: === modified file 'etc/NEWS' --- etc/NEWS 2010-04-28 22:27:54 +0000 +++ etc/NEWS 2010-04-29 15:41:23 +0000 @@ -114,6 +114,9 @@ ** Archive Mode has basic support to browse 7z archives. +** In ido-mode, C-v is no longer bound to ido-toggle-vc. +The reason is that this interferes with cua-mode. + ** partial-completion-mode is now obsolete. You can get the same behavior with (setq completion-styles '(partial-completion initials)). === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-04-29 15:38:08 +0000 +++ lisp/ChangeLog 2010-04-29 15:41:23 +0000 @@ -1,6 +1,7 @@ 2010-04-29 Chong Yidong - * ido.el (ido-init-completion-maps): Remove C-v binding (Bug#5765). + * ido.el (ido-init-completion-maps): Remove C-v binding. + (ido-minibuffer-setup): Don't set cua-inhibit-cua-keys (Bug#5765). 2010-04-29 Chong Yidong === modified file 'lisp/ido.el' --- lisp/ido.el 2010-04-29 15:38:08 +0000 +++ lisp/ido.el 2010-04-29 15:41:23 +0000 @@ -322,7 +322,6 @@ ;;; Code: -(defvar cua-inhibit-cua-keys) (defvar recentf-list) ;;; User Variables @@ -4608,7 +4607,6 @@ (when (ido-active) (add-hook 'pre-command-hook 'ido-tidy nil t) (add-hook 'post-command-hook 'ido-exhibit nil t) - (setq cua-inhibit-cua-keys t) (when (featurep 'xemacs) (ido-exhibit) (goto-char (point-min))) ------------------------------------------------------------ revno: 100084 committer: Chong Yidong branch nick: trunk timestamp: Thu 2010-04-29 11:38:08 -0400 message: * ido.el (ido-init-completion-maps): Remove C-v binding (Bug#5765). diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-04-29 15:32:11 +0000 +++ lisp/ChangeLog 2010-04-29 15:38:08 +0000 @@ -1,5 +1,9 @@ 2010-04-29 Chong Yidong + * ido.el (ido-init-completion-maps): Remove C-v binding (Bug#5765). + +2010-04-29 Chong Yidong + * minibuffer.el (tags-completion-at-point-function): New function. (completion-at-point-functions): Use it. === modified file 'lisp/ido.el' --- lisp/ido.el 2010-04-27 11:47:19 +0000 +++ lisp/ido.el 2010-04-29 15:38:08 +0000 @@ -1624,7 +1624,6 @@ (define-key map "\C-o" 'ido-copy-current-word) (define-key map "\C-w" 'ido-copy-current-file-name) (define-key map [(meta ?l)] 'ido-toggle-literal) - (define-key map "\C-v" 'ido-toggle-vc) (set-keymap-parent map ido-file-dir-completion-map) (setq ido-file-completion-map map)) ------------------------------------------------------------ revno: 100083 committer: Chong Yidong branch nick: trunk timestamp: Thu 2010-04-29 11:32:11 -0400 message: * minibuffer.el (tags-completion-at-point-function): New function. (completion-at-point-functions): Use it. * cedet/semantic.el (semantic-completion-at-point-function): New function. (semantic-mode): Use semantic-completion-at-point-function for completion-at-point-functions instead. * progmodes/etags.el (complete-tag): Revert last change. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-04-29 14:48:32 +0000 +++ lisp/ChangeLog 2010-04-29 15:32:11 +0000 @@ -1,3 +1,14 @@ +2010-04-29 Chong Yidong + + * minibuffer.el (tags-completion-at-point-function): New function. + (completion-at-point-functions): Use it. + + * cedet/semantic.el (semantic-completion-at-point-function): New function. + (semantic-mode): Use semantic-completion-at-point-function for + completion-at-point-functions instead. + + * progmodes/etags.el (complete-tag): Revert last change. + 2010-04-29 Alan Mackenzie * progmodes/cc-mode.el (c-extend-region-for-CPP): Fix an === modified file 'lisp/cedet/semantic.el' --- lisp/cedet/semantic.el 2010-04-28 19:04:16 +0000 +++ lisp/cedet/semantic.el 2010-04-29 15:32:11 +0000 @@ -1083,7 +1083,8 @@ ;; Add semantic-ia-complete-symbol to ;; completion-at-point-functions, so that it is run from ;; M-TAB. - (add-hook 'completion-at-point-functions 'semantic-ia-complete-symbol) + (add-hook 'completion-at-point-functions + 'semantic-completion-at-point-function) (if global-ede-mode (define-key cedet-menu-map [cedet-menu-separator] '("--"))) (dolist (b (buffer-list)) @@ -1091,7 +1092,8 @@ (semantic-new-buffer-fcn)))) ;; Disable all Semantic features. (remove-hook 'mode-local-init-hook 'semantic-new-buffer-fcn) - (remove-hook 'completion-at-point-functions 'semantic-ia-complete-symbol) + (remove-hook 'completion-at-point-functions + 'semantic-completion-at-point-function) (define-key cedet-menu-map [cedet-menu-separator] nil) (define-key cedet-menu-map [semantic-options-separator] nil) ;; FIXME: handle semanticdb-load-ebrowse-caches @@ -1099,6 +1101,9 @@ (if (and (boundp mode) (eval mode)) (funcall mode -1))))) +(defun semantic-completion-at-point-function () + 'semantic-ia-complete-symbol) + ;;; Autoload some functions that are not in semantic/loaddefs (autoload 'global-semantic-idle-completions-mode "semantic/idle" === modified file 'lisp/minibuffer.el' --- lisp/minibuffer.el 2010-04-28 19:04:16 +0000 +++ lisp/minibuffer.el 2010-04-29 15:32:11 +0000 @@ -1157,7 +1157,7 @@ (call-interactively 'minibuffer-complete) (delete-overlay ol))))) -(defvar completion-at-point-functions '(complete-tag) +(defvar completion-at-point-functions '(tags-completion-at-point-function) "Special hook to find the completion table for the thing at point. It is called without any argument and should return either nil, or a function of no argument to perform completion (discouraged), @@ -1169,14 +1169,9 @@ `:predicate' a predicate that completion candidates need to satisfy. `:annotation-function' the value to use for `completion-annotate-function'.") -(declare-function tags-lazy-completion-table "etags.el" ()) - -(defun complete-tag () - "Perform tags completion on the text around point. -If no tags table is loaded, do nothing and return nil. -Otherwise, complete to the set of names listed in the tags table. -The string to complete is chosen in the same way as the default -for `find-tag'." +(defun tags-completion-at-point-function () + "Using tags, return a completion table for the text around point. +If no tags table is loaded, do nothing and return nil." (interactive) (when (or tags-table-list tags-file-name) (require 'etags) @@ -1185,14 +1180,11 @@ case-fold-search)) (pattern (funcall (or find-tag-default-function (get major-mode 'find-tag-default-function) - 'find-tag-default))) - (comp-table (tags-lazy-completion-table)) - beg) + 'find-tag-default)))) (when pattern - (search-backward pattern) - (setq beg (point)) - (forward-char (length pattern)) - (completion-in-region beg (point) comp-table))))) + (tags-lazy-completion-table))))) + +(declare-function tags-lazy-completion-table "etags.el" ()) (defun complete-symbol (&optional arg) "Perform completion on the text around point. === modified file 'lisp/progmodes/etags.el' --- lisp/progmodes/etags.el 2010-04-28 19:04:16 +0000 +++ lisp/progmodes/etags.el 2010-04-29 15:32:11 +0000 @@ -2027,6 +2027,33 @@ (interactive) (quit-window t (selected-window))) +;;;###autoload +(defun complete-tag () + "Perform tags completion on the text around point. +Completes to the set of names listed in the current tags table. +The string to complete is chosen in the same way as the default +for \\[find-tag] (which see)." + (interactive) + (or tags-table-list + tags-file-name + (error "%s" + (substitute-command-keys + "No tags table loaded; try \\[visit-tags-table]"))) + (let ((completion-ignore-case (if (memq tags-case-fold-search '(t nil)) + tags-case-fold-search + case-fold-search)) + (pattern (funcall (or find-tag-default-function + (get major-mode 'find-tag-default-function) + 'find-tag-default))) + (comp-table (tags-lazy-completion-table)) + beg) + (or pattern + (error "Nothing to complete")) + (search-backward pattern) + (setq beg (point)) + (forward-char (length pattern)) + (completion-in-region beg (point) comp-table))) + (dolist (x '("^No tags table in use; use .* to select one$" "^There is no default tag$" "^No previous tag locations$" ------------------------------------------------------------ revno: 100082 committer: Alan Mackenzie branch nick: trunk timestamp: Thu 2010-04-29 14:48:32 +0000 message: (progmodes/cc-mode.el) c-extend-region-for-CPP: Fix an off-by-one error (in end of macro position). diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-04-29 14:04:33 +0000 +++ lisp/ChangeLog 2010-04-29 14:48:32 +0000 @@ -1,3 +1,8 @@ +2010-04-29 Alan Mackenzie + + * progmodes/cc-mode.el (c-extend-region-for-CPP): Fix an + off-by-one error (in end of macro position). + 2010-04-29 Stefan Monnier * net/browse-url.el (browse-url-firefox-program): Use iceweasel if === modified file 'lisp/progmodes/cc-mode.el' --- lisp/progmodes/cc-mode.el 2010-04-19 15:07:52 +0000 +++ lisp/progmodes/cc-mode.el 2010-04-29 14:48:32 +0000 @@ -818,8 +818,10 @@ (setq c-old-BOM (point)) (goto-char end) - (if (c-beginning-of-macro) - (c-end-of-macro)) + (when (c-beginning-of-macro) + (c-end-of-macro) + (or (eobp) (forward-char))) ; Over the terminating NL which may be marked + ; with a c-cpp-delimiter category property (setq c-old-EOM (point))) (defun c-neutralize-CPP-line (beg end) ------------------------------------------------------------ revno: 100081 committer: Stefan Monnier branch nick: trunk timestamp: Thu 2010-04-29 10:29:09 -0400 message: Don't burp if process sentinel/filter kills the current buffer. * process.c (read_process_output, exec_sentinel): Don't burp if the sentinel/filter kills the current buffer. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2010-04-29 14:23:12 +0000 +++ src/ChangeLog 2010-04-29 14:29:09 +0000 @@ -1,5 +1,8 @@ 2010-04-29 Stefan Monnier + * process.c (read_process_output, exec_sentinel): Don't burp if the + sentinel/filter kills the current buffer (bug#6060). + Fix wrong-docstring problem introduced with hash-consing. (Bug#6008) * eval.c (Fautoload): Set doc to a unique number rather than to 0. Remove unused var `args'. === modified file 'src/process.c' --- src/process.c 2010-04-13 02:07:48 +0000 +++ src/process.c 2010-04-29 14:29:09 +0000 @@ -5396,7 +5396,7 @@ /* There's no good reason to let process filters change the current buffer, and many callers of accept-process-output, sit-for, and friends don't expect current-buffer to be changed from under them. */ - record_unwind_protect (Fset_buffer, Fcurrent_buffer ()); + record_unwind_protect (set_buffer_if_live, Fcurrent_buffer ()); /* Read and dispose of the process output. */ outstream = p->filter; @@ -6814,7 +6814,7 @@ /* There's no good reason to let sentinels change the current buffer, and many callers of accept-process-output, sit-for, and friends don't expect current-buffer to be changed from under them. */ - record_unwind_protect (Fset_buffer, Fcurrent_buffer ()); + record_unwind_protect (set_buffer_if_live, Fcurrent_buffer ()); sentinel = p->sentinel; if (NILP (sentinel)) ------------------------------------------------------------ revno: 100080 committer: Juanma Barranquero branch nick: trunk timestamp: Thu 2010-04-29 16:23:12 +0200 message: Add bug reference. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2010-04-29 12:42:01 +0000 +++ src/ChangeLog 2010-04-29 14:23:12 +0000 @@ -1,6 +1,6 @@ 2010-04-29 Stefan Monnier - Fix wrong-docstring problem introduced with hash-consing. + Fix wrong-docstring problem introduced with hash-consing. (Bug#6008) * eval.c (Fautoload): Set doc to a unique number rather than to 0. Remove unused var `args'. * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove. @@ -258,7 +258,7 @@ (Ftool_bar_get_system_style): New function. (syms_of_xsettings): Define Qmonospace_font_name and Qtool_bar_style. Initialize current_tool_bar_style to nil. - defsubr Stool_bar_get_system_style. Fprovide on + defsubr Stool_bar_get_system_style. Fprovide on dynamic-setting. Move misplaced HAVE_GCONF ------------------------------------------------------------ revno: 100079 committer: Stefan Monnier branch nick: trunk timestamp: Thu 2010-04-29 10:04:33 -0400 message: * net/browse-url.el (browse-url-firefox-program): Use iceweasel if firefox is absent. Don't autoload. (browse-url-galeon-program): Don't autoload. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2010-04-28 19:04:16 +0000 +++ lisp/ChangeLog 2010-04-29 14:04:33 +0000 @@ -1,3 +1,9 @@ +2010-04-29 Stefan Monnier + + * net/browse-url.el (browse-url-firefox-program): Use iceweasel if + firefox is absent. Don't autoload. + (browse-url-galeon-program): Don't autoload. + 2010-04-28 Chong Yidong * bindings.el (complete-symbol): Move into minibuffer.el. === modified file 'lisp/net/browse-url.el' --- lisp/net/browse-url.el 2010-03-12 19:13:38 +0000 +++ lisp/net/browse-url.el 2010-04-29 14:04:33 +0000 @@ -313,8 +313,11 @@ :type '(repeat (string :tag "Argument")) :group 'browse-url) -;;;###autoload -(defcustom browse-url-firefox-program (purecopy "firefox") +(defcustom browse-url-firefox-program + (let ((candidates '("firefox" "iceweasel"))) + (while (and candidates (not (executable-find (car candidates)))) + (setq candidates (cdr candidates))) + (or (car candidates) "firefox")) "The name by which to invoke Firefox." :type 'string :group 'browse-url) @@ -331,8 +334,7 @@ :type '(repeat (string :tag "Argument")) :group 'browse-url) -;;;###autoload -(defcustom browse-url-galeon-program (purecopy "galeon") +(defcustom browse-url-galeon-program "galeon" "The name by which to invoke Galeon." :type 'string :group 'browse-url) ------------------------------------------------------------ revno: 100078 committer: Stefan Monnier branch nick: trunk timestamp: Thu 2010-04-29 08:42:01 -0400 message: Fix wrong-docstring problem introduced with hash-consing. * eval.c (Fautoload): Set doc to a unique number rather than to 0. Remove unused var `args'. * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove. (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers. * doc.c (store_function_docstring): Use XSETCAR. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2010-04-28 07:25:47 +0000 +++ src/ChangeLog 2010-04-29 12:42:01 +0000 @@ -1,3 +1,12 @@ +2010-04-29 Stefan Monnier + + Fix wrong-docstring problem introduced with hash-consing. + * eval.c (Fautoload): Set doc to a unique number rather than to 0. + Remove unused var `args'. + * lisp.h (XSETCARFASTINT, XSETCDRFASTINT): Remove. + (LOADHIST_ATTACH): Wrap with do...while to avoid surprises for callers. + * doc.c (store_function_docstring): Use XSETCAR. + 2010-04-28 Glenn Morris * Makefile.in (BASE_WINDOW_SUPPORT, X_WINDOW_SUPPORT): New variables. === modified file 'src/ChangeLog.4' --- src/ChangeLog.4 2010-01-13 08:35:10 +0000 +++ src/ChangeLog.4 2010-04-29 12:42:01 +0000 @@ -4329,7 +4329,7 @@ 1993-11-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * s/sunos4-1-3.h (HAVE_TERMIOS): Defined. + * s/sunos4-1-3.h (HAVE_TERMIOS): Define. 1993-10-25 Brian J. Fox (bfox@albert.gnu.ai.mit.edu) @@ -4426,9 +4426,9 @@ * Makefile.in: File removed. It is now generated by ../configure. - * Makefile.in.in (LIBES): Add $(GNULIB_VAR) again at end. This - change to ymakefile was mysteriously lost. Were any others lost - too? + * Makefile.in.in (LIBES): Add $(GNULIB_VAR) again at end. + This change to ymakefile was mysteriously lost. + Were any others lost too? 1993-10-02 Brian J. Fox (bfox@ai.mit.edu) @@ -4461,8 +4461,7 @@ 1993-09-24 Brian J. Fox (bfox@ai.mit.edu) - * textprop.c (validate_plist): Add declaration for `list' - argument. + * textprop.c (validate_plist): Add declaration for `list' argument. * frame.c (Fhandle_switch_frame): Doc fix. @@ -4501,7 +4500,7 @@ * doc.c (Fsubstitute_command_keys): Pass new arg. * abbrev.c (Funexpand_abbrev, Fexpand_abbrev): Pass new arg. - * s/aix3-2.h (AIX3_2): Defined. + * s/aix3-2.h (AIX3_2): Define. * m/ibmrs6000.h (LIBS_MACHINE): Include -lrts, -liconv only if AIX3_2. * xterm.h (HAVE_X11R4): If AIX, do not define HAVE_X11R4. @@ -4703,13 +4702,13 @@ * xfns.c (XScreenNumberOfScreen): New function. - * m/tek4300.h (C_DEBUG_SWITCH, SYSTEM_MALLOC): Defined. + * m/tek4300.h (C_DEBUG_SWITCH, SYSTEM_MALLOC): Define. * m/iris4d.h (START_FILES, LIB_STANDARD): Don't define if USG5_4. (DEFAULT_ENTRY_ADDRESS): Likewise. (UNEXEC): Use unexelfsgi.o if USG5_4. - * s/irix5-0.h (C_SWITCH_MACHINE): Deleted. + * s/irix5-0.h (C_SWITCH_MACHINE): Delete. 1993-08-13 Frederic Pierresteguy (F.Pierresteguy@frcl.bull.fr) @@ -4809,7 +4808,7 @@ * m/dpx2.h (HAVE_TCATTR): Macro #defined. (HAVE_CLOSEDIR): #undef to allow use of closedir in sysdep.c. - (SIGTSTP): Commented #undef to allow use of ^Z in shell-mode. + (SIGTSTP): Comment #undef to allow use of ^Z in shell-mode. (SIGNALS_VIA_CHARACTERS): #defined. 1993-08-09 Paul Eggert (eggert@twinsun.com) @@ -4849,10 +4848,10 @@ and calculate position properly. * s/bsd4-2.h, s/bsd4-3.h, s/umax.h, s/rtu.h, s/dgux.h (HAVE_VFORK): - Defined. + Define. * ymakefile (alloc.o): Don't use DEBUG_MOLE. - (DEBUG_MOLE): Deleted. + (DEBUG_MOLE): Delete. * gnu-hp300: File deleted. * .gdbinit: Don't put -q in args. @@ -4878,7 +4877,7 @@ (main): Call init_buffer, init_callproc and init_cmdargs before init_lread. (syms_of_emacs): Install the function, and protect the variable. - * lisp.h (Vinvocation_directory): Declared. + * lisp.h (Vinvocation_directory): Declare. * lread.c (init_lread): Normally put Vinvocation_directory at end of Vload_path, if not present already. === modified file 'src/doc.c' --- src/doc.c 2010-01-13 08:35:10 +0000 +++ src/doc.c 2010-04-29 12:42:01 +0000 @@ -538,7 +538,7 @@ { tem = Fcdr (Fcdr (fun)); if (CONSP (tem) && INTEGERP (XCAR (tem))) - XSETCARFASTINT (tem, offset); + XSETCAR (tem, make_number (offset)); } else if (EQ (tem, Qmacro)) store_function_docstring (XCDR (fun), offset); === modified file 'src/eval.c' --- src/eval.c 2010-04-25 22:16:58 +0000 +++ src/eval.c 2010-04-29 12:42:01 +0000 @@ -2134,8 +2134,6 @@ (function, file, docstring, interactive, type) Lisp_Object function, file, docstring, interactive, type; { - Lisp_Object args[4]; - CHECK_SYMBOL (function); CHECK_STRING (file); @@ -2151,8 +2149,11 @@ LOADHIST_ATTACH (Fcons (Qautoload, function)); else /* We don't want the docstring in purespace (instead, - Snarf-documentation should (hopefully) overwrite it). */ - docstring = make_number (0); + Snarf-documentation should (hopefully) overwrite it). + We used to use 0 here, but that leads to accidental sharing in + purecopy's hash-consing, so we use a (hopefully) unique integer + instead. */ + docstring = make_number (XHASH (function)); return Ffset (function, Fpurecopy (list5 (Qautoload, file, docstring, interactive, type))); === modified file 'src/lisp.h' --- src/lisp.h 2010-04-20 18:52:07 +0000 +++ src/lisp.h 2010-04-29 12:42:01 +0000 @@ -721,11 +721,6 @@ #define XSETCAR(c,n) (XCAR_AS_LVALUE(c) = (n)) #define XSETCDR(c,n) (XCDR_AS_LVALUE(c) = (n)) -/* For performance: Fast storage of positive integers into the - fields of a cons cell. See above caveats. */ -#define XSETCARFASTINT(c,n) XSETFASTINT(XCAR_AS_LVALUE(c),(n)) -#define XSETCDRFASTINT(c,n) XSETFASTINT(XCDR_AS_LVALUE(c),(n)) - /* Take the car or cdr of something whose type is not known. */ #define CAR(c) \ (CONSP ((c)) ? XCAR ((c)) \ @@ -2821,7 +2816,9 @@ extern Lisp_Object make_symbol P_ ((char *)); extern Lisp_Object oblookup P_ ((Lisp_Object, const char *, int, int)); #define LOADHIST_ATTACH(x) \ - if (initialized) Vcurrent_load_list = Fcons (x, Vcurrent_load_list) + do { \ + if (initialized) Vcurrent_load_list = Fcons (x, Vcurrent_load_list); \ + } while (0) extern Lisp_Object Vcurrent_load_list; extern Lisp_Object Vload_history, Vload_suffixes, Vload_file_rep_suffixes; extern int openp P_ ((Lisp_Object, Lisp_Object, Lisp_Object, ------------------------------------------------------------ revno: 100077 committer: Chong Yidong branch nick: trunk timestamp: Wed 2010-04-28 18:27:54 -0400 message: Document complete-symbol change. diff: === modified file 'etc/NEWS' --- etc/NEWS 2010-04-24 18:10:17 +0000 +++ etc/NEWS 2010-04-28 22:27:54 +0000 @@ -107,6 +107,8 @@ * Editing Changes in Emacs 24.1 +** completion-at-point is now an alias for complete-symbol. + * Changes in Specialized Modes and Packages in Emacs 24.1