aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2010-01-16 16:13:12 -0500
committerEli Zaretskii2010-01-16 16:13:12 -0500
commit5a876cd5f810b611f78dd4cf7a1673bffeea19a9 (patch)
tree93d7479d8263fb828f95932a0cb3e3b0678fa996
parentb3108ead2d1691d8ad3005a6350c4febf92df2fb (diff)
parentabd5cfe880473c8da925d5b83e52c8019803d87d (diff)
downloademacs-5a876cd5f810b611f78dd4cf7a1673bffeea19a9.tar.gz
emacs-5a876cd5f810b611f78dd4cf7a1673bffeea19a9.zip
Merge from mainline.
-rw-r--r--admin/notes/commits53
-rw-r--r--admin/notes/cvslogs15
-rw-r--r--lisp/ChangeLog11
-rw-r--r--lisp/emacs-lisp/cl-loaddefs.el20
-rw-r--r--lisp/emacs-lisp/cl-macs.el18
-rw-r--r--lisp/pcmpl-unix.el5
-rw-r--r--lisp/startup.el13
-rw-r--r--src/ChangeLog9
-rw-r--r--src/emacs.c7
-rw-r--r--src/xterm.c21
10 files changed, 133 insertions, 39 deletions
diff --git a/admin/notes/commits b/admin/notes/commits
new file mode 100644
index 00000000000..2896328c664
--- /dev/null
+++ b/admin/notes/commits
@@ -0,0 +1,53 @@
1HOW TO COMMIT CHANGES TO EMACS
2
3http://lists.gnu.org/archive/html/emacs-devel/2009-03/msg00555.html
4From: Miles Bader
5Subject: commit style redux
6Date: Tue, 31 Mar 2009 12:21:20 +0900
7
8(1) Commit all changed files at once with a single log message (which
9 in CVS will result in an identical log message for all committed
10 files), not one-by-one. This is pretty easy using vc-dir now.
11
12(2) Make the log message describe the entire changeset, perhaps
13 including relevant changelog entiries (I often don't bother with
14 the latter if it's a trivial sort of change).
15
16 Many modern source-control systems vaguely distinguish the first
17 line of the log message to use as a short summary for abbreviated
18 history listing (in arch this was explicitly called the summary,
19 but many other systems have a similar concept). So it's nice if
20 you can format the log entry like:
21
22 SHORTISH ONE-LINE SUMMARY
23
24 MULTIPLE-LINE DETAILED DESCRIPTION POSSIBLY INCLUDING (OR
25 CONSISTING OF) CHANGELOG ENTRIES
26
27 [Even with CVS this style is useful, because web CVS browsing
28 interfaces often include the first N words of the log message of
29 the most recent commit as a short "most recent change"
30 description.]
31
32(3) Don't phrase log messages assuming the filename is known, because
33 in non-file-oriented systems (everything modern other than CVS),
34 the log listing tends to be treated as global information, and the
35 connection with specific files is less explicit.
36
37 For instance, currently I often see log messages like "Regenerate";
38 for modern source-control systems with a global log, it's better to
39 have something like "Regenerate configure".
40
41
42Followup discussion:
43http://lists.gnu.org/archive/html/emacs-devel/2010-01/msg00897.html
44
45
46PREVIOUS GUIDELINES FOR CVS
47
48For historical interest only, here is the old-style advice for CVS logs:
49http://lists.gnu.org/archive/html/emacs-devel/2007-12/msg01208.html
50
51From: Eli Zaretskii
52Subject: Re: Log messages in CVS
53Date: Sat, 29 Dec 2007 16:06:29 +0200
diff --git a/admin/notes/cvslogs b/admin/notes/cvslogs
deleted file mode 100644
index ff2dcc93ff5..00000000000
--- a/admin/notes/cvslogs
+++ /dev/null
@@ -1,15 +0,0 @@
1http://lists.gnu.org/archive/html/emacs-devel/2007-12/msg01208.html
2
3From: Eli Zaretskii
4Subject: Re: Log messages in CVS
5Date: Sat, 29 Dec 2007 16:06:29 +0200
6
7I once posted a summary that I know about; see:
8
9 http://lists.gnu.org/archive/html/emacs-devel/2006-11/msg00229.html
10 http://lists.gnu.org/archive/html/emacs-devel/2006-11/msg00234.html
11 http://lists.gnu.org/archive/html/emacs-devel/2006-11/msg00312.html
12
13Richard commented here, basically approving my summary:
14
15 http://lists.gnu.org/archive/html/emacs-devel/2006-11/msg00276.html
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index ea7435c559d..5ff2d7b24c0 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,14 @@
12010-01-16 Jari Aalto <jari.aalto@cante.net>
2
3 * pcmpl-unix.el (pcmpl-unix-read-passwd-file): Doc fix.
4
52010-01-16 Chong Yidong <cyd@stupidchicken.com>
6
7 * emacs-lisp/cl-macs.el (defstruct): Doc fix (Bug#5267).
8
9 * startup.el (command-line): Remove unused --icon-type arg.
10 Handle --display arg, passing it to command-line-1 (Bug#5392).
11
12010-01-16 Mario Lang <mlang@delysid.org> 122010-01-16 Mario Lang <mlang@delysid.org>
2 13
3 * cedet/ede/cpp-root.el (ede-cpp-root-project): 14 * cedet/ede/cpp-root.el (ede-cpp-root-project):
diff --git a/lisp/emacs-lisp/cl-loaddefs.el b/lisp/emacs-lisp/cl-loaddefs.el
index 0be2c643313..3beda28abf2 100644
--- a/lisp/emacs-lisp/cl-loaddefs.el
+++ b/lisp/emacs-lisp/cl-loaddefs.el
@@ -282,7 +282,7 @@ Not documented
282;;;;;; flet progv psetq do-all-symbols do-symbols dotimes dolist 282;;;;;; flet progv psetq do-all-symbols do-symbols dotimes dolist
283;;;;;; do* do loop return-from return block etypecase typecase ecase 283;;;;;; do* do loop return-from return block etypecase typecase ecase
284;;;;;; case load-time-value eval-when destructuring-bind function* 284;;;;;; case load-time-value eval-when destructuring-bind function*
285;;;;;; defmacro* defun* gentemp gensym) "cl-macs" "cl-macs.el" "3867c0613dfd69780f561012a1dfe67b") 285;;;;;; defmacro* defun* gentemp gensym) "cl-macs" "cl-macs.el" "e10a7e42199c08dc39460f67dd2d424b")
286;;; Generated autoloads from cl-macs.el 286;;; Generated autoloads from cl-macs.el
287 287
288(autoload 'gensym "cl-macs" "\ 288(autoload 'gensym "cl-macs" "\
@@ -672,11 +672,21 @@ from ARGLIST using FUNC: (define-modify-macro incf (&optional (n 1)) +)
672 672
673(autoload 'defstruct "cl-macs" "\ 673(autoload 'defstruct "cl-macs" "\
674Define a struct type. 674Define a struct type.
675This macro defines a new Lisp data type called NAME, which contains data 675This macro defines a new data type called NAME that stores data
676stored in SLOTs. This defines a `make-NAME' constructor, a `copy-NAME' 676in SLOTs. It defines a `make-NAME' constructor, a `copy-NAME'
677copier, a `NAME-p' predicate, and setf-able `NAME-SLOT' accessors. 677copier, a `NAME-p' predicate, and slot accessors named `NAME-SLOT'.
678You can use the accessors to set the corresponding slots, via `setf'.
678 679
679\(fn (NAME OPTIONS...) (SLOT SLOT-OPTS...)...)" nil (quote macro)) 680NAME may instead take the form (NAME OPTIONS...), where each
681OPTION is either a single keyword or (KEYWORD VALUE).
682See Info node `(cl)Structures' for a list of valid keywords.
683
684Each SLOT may instead take the form (SLOT SLOT-OPTS...), where
685SLOT-OPTS are keyword-value pairs for that slot. Currently, only
686one keyword is supported, `:read-only'. If this has a non-nil
687value, that slot cannot be set via `setf'.
688
689\(fn NAME SLOTS...)" nil (quote macro))
680 690
681(autoload 'cl-struct-setf-expander "cl-macs" "\ 691(autoload 'cl-struct-setf-expander "cl-macs" "\
682Not documented 692Not documented
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 29bb752dbf7..4e3b1fb72d9 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -2191,11 +2191,21 @@ from ARGLIST using FUNC: (define-modify-macro incf (&optional (n 1)) +)"
2191;;;###autoload 2191;;;###autoload
2192(defmacro defstruct (struct &rest descs) 2192(defmacro defstruct (struct &rest descs)
2193 "Define a struct type. 2193 "Define a struct type.
2194This macro defines a new Lisp data type called NAME, which contains data 2194This macro defines a new data type called NAME that stores data
2195stored in SLOTs. This defines a `make-NAME' constructor, a `copy-NAME' 2195in SLOTs. It defines a `make-NAME' constructor, a `copy-NAME'
2196copier, a `NAME-p' predicate, and setf-able `NAME-SLOT' accessors. 2196copier, a `NAME-p' predicate, and slot accessors named `NAME-SLOT'.
2197You can use the accessors to set the corresponding slots, via `setf'.
2197 2198
2198\(fn (NAME OPTIONS...) (SLOT SLOT-OPTS...)...)" 2199NAME may instead take the form (NAME OPTIONS...), where each
2200OPTION is either a single keyword or (KEYWORD VALUE).
2201See Info node `(cl)Structures' for a list of valid keywords.
2202
2203Each SLOT may instead take the form (SLOT SLOT-OPTS...), where
2204SLOT-OPTS are keyword-value pairs for that slot. Currently, only
2205one keyword is supported, `:read-only'. If this has a non-nil
2206value, that slot cannot be set via `setf'.
2207
2208\(fn NAME SLOTS...)"
2199 (let* ((name (if (consp struct) (car struct) struct)) 2209 (let* ((name (if (consp struct) (car struct) struct))
2200 (opts (cdr-safe struct)) 2210 (opts (cdr-safe struct))
2201 (slots nil) 2211 (slots nil)
diff --git a/lisp/pcmpl-unix.el b/lisp/pcmpl-unix.el
index 546d4a2591d..9282fe87b5a 100644
--- a/lisp/pcmpl-unix.el
+++ b/lisp/pcmpl-unix.el
@@ -85,7 +85,10 @@ with the SSH option \"HashKnownHosts no\"."
85 (while (pcomplete-here (funcall pcomplete-command-completion-function)))) 85 (while (pcomplete-here (funcall pcomplete-command-completion-function))))
86 86
87(defun pcmpl-unix-read-passwd-file (file) 87(defun pcmpl-unix-read-passwd-file (file)
88 "Return an alist correlating gids to group names in FILE." 88 "Return an alist correlating gids to group names in FILE.
89
90If FILE is in hashed format (as described in the OpenSSH
91documentation), this function returns nil."
89 (let (names) 92 (let (names)
90 (when (file-readable-p file) 93 (when (file-readable-p file)
91 (with-temp-buffer 94 (with-temp-buffer
diff --git a/lisp/startup.el b/lisp/startup.el
index 9de08852ae2..857ad97e448 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -758,7 +758,8 @@ opening the first frame (e.g. open a connection to an X server).")
758 (pop args))) 758 (pop args)))
759 759
760 (let ((done nil) 760 (let ((done nil)
761 (args (cdr command-line-args))) 761 (args (cdr command-line-args))
762 display-arg)
762 763
763 ;; Figure out which user's init file to load, 764 ;; Figure out which user's init file to load,
764 ;; either from the environment or from the options. 765 ;; either from the environment or from the options.
@@ -794,6 +795,11 @@ opening the first frame (e.g. open a connection to an X server).")
794 (setq argval nil 795 (setq argval nil
795 argi orig-argi))))) 796 argi orig-argi)))))
796 (cond 797 (cond
798 ;; The --display arg is handled partly in C, partly in Lisp.
799 ;; When it shows up here, we just put it back to be handled
800 ;; by `command-line-1'.
801 ((member argi '("-d" "-display"))
802 (setq display-arg (list argi (pop args))))
797 ((member argi '("-Q" "-quick")) 803 ((member argi '("-Q" "-quick"))
798 (setq init-file-user nil 804 (setq init-file-user nil
799 site-run-file nil 805 site-run-file nil
@@ -813,8 +819,6 @@ opening the first frame (e.g. open a connection to an X server).")
813 (setq init-file-debug t)) 819 (setq init-file-debug t))
814 ((equal argi "-iconic") 820 ((equal argi "-iconic")
815 (push '(visibility . icon) initial-frame-alist)) 821 (push '(visibility . icon) initial-frame-alist))
816 ((member argi '("-icon-type" "-i" "-itype"))
817 (push '(icon-type . t) default-frame-alist))
818 ((member argi '("-nbc" "-no-blinking-cursor")) 822 ((member argi '("-nbc" "-no-blinking-cursor"))
819 (setq no-blinking-cursor t)) 823 (setq no-blinking-cursor t))
820 ;; Push the popped arg back on the list of arguments. 824 ;; Push the popped arg back on the list of arguments.
@@ -825,6 +829,9 @@ opening the first frame (e.g. open a connection to an X server).")
825 (and argval 829 (and argval
826 (error "Option `%s' doesn't allow an argument" argi)))) 830 (error "Option `%s' doesn't allow an argument" argi))))
827 831
832 ;; Re-attach the --display arg.
833 (and display-arg (setq args (append display-arg args)))
834
828 ;; Re-attach the program name to the front of the arg list. 835 ;; Re-attach the program name to the front of the arg list.
829 (and command-line-args 836 (and command-line-args
830 (setcdr command-line-args args))) 837 (setcdr command-line-args args)))
diff --git a/src/ChangeLog b/src/ChangeLog
index 94a1f9604f5..e1d2ba440ab 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,12 @@
12010-01-16 Stefan Monnier <monnier@iro.umontreal.ca>
2
3 * xterm.c (event_handler_gdk): Block input (Bug#5037).
4
52010-01-16 Chong Yidong <cyd@stupidchicken.com>
6
7 * emacs.c (standard_args): Adjust arg priorities to reflect how
8 they are processed in startup.el.
9
12010-01-16 Andreas Schwab <schwab@linux-m68k.org> 102010-01-16 Andreas Schwab <schwab@linux-m68k.org>
2 11
3 * Makefile.in (lisp, shortlisp): Update. 12 * Makefile.in (lisp, shortlisp): Update.
diff --git a/src/emacs.c b/src/emacs.c
index 2f73e8b837a..71ffa998bfe 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -1869,7 +1869,7 @@ const struct standard_args standard_args[] =
1869 /* -d must come last before the options handled in startup.el. */ 1869 /* -d must come last before the options handled in startup.el. */
1870 { "-d", "--display", 60, 1 }, 1870 { "-d", "--display", 60, 1 },
1871 { "-display", 0, 60, 1 }, 1871 { "-display", 0, 60, 1 },
1872 /* Now for the options handled in startup.el. */ 1872 /* Now for the options handled in `command-line' (startup.el). */
1873 { "-Q", "--quick", 55, 0 }, 1873 { "-Q", "--quick", 55, 0 },
1874 { "-quick", 0, 55, 0 }, 1874 { "-quick", 0, 55, 0 },
1875 { "-q", "--no-init-file", 50, 0 }, 1875 { "-q", "--no-init-file", 50, 0 },
@@ -1878,10 +1878,12 @@ const struct standard_args standard_args[] =
1878 { "-u", "--user", 30, 1 }, 1878 { "-u", "--user", 30, 1 },
1879 { "-user", 0, 30, 1 }, 1879 { "-user", 0, 30, 1 },
1880 { "-debug-init", "--debug-init", 20, 0 }, 1880 { "-debug-init", "--debug-init", 20, 0 },
1881 { "-nbi", "--no-bitmap-icon", 15, 0 },
1882 { "-iconic", "--iconic", 15, 0 }, 1881 { "-iconic", "--iconic", 15, 0 },
1883 { "-D", "--basic-display", 12, 0}, 1882 { "-D", "--basic-display", 12, 0},
1884 { "-basic-display", 0, 12, 0}, 1883 { "-basic-display", 0, 12, 0},
1884 { "-nbc", "--no-blinking-cursor", 12, 0 },
1885 /* Now for the options handled in `command-line-1' (startup.el). */
1886 { "-nbi", "--no-bitmap-icon", 10, 0 },
1885 { "-bg", "--background-color", 10, 1 }, 1887 { "-bg", "--background-color", 10, 1 },
1886 { "-background", 0, 10, 1 }, 1888 { "-background", 0, 10, 1 },
1887 { "-fg", "--foreground-color", 10, 1 }, 1889 { "-fg", "--foreground-color", 10, 1 },
@@ -1891,7 +1893,6 @@ const struct standard_args standard_args[] =
1891 { "-ib", "--internal-border", 10, 1 }, 1893 { "-ib", "--internal-border", 10, 1 },
1892 { "-ms", "--mouse-color", 10, 1 }, 1894 { "-ms", "--mouse-color", 10, 1 },
1893 { "-cr", "--cursor-color", 10, 1 }, 1895 { "-cr", "--cursor-color", 10, 1 },
1894 { "-nbc", "--no-blinking-cursor", 10, 0 },
1895 { "-fn", "--font", 10, 1 }, 1896 { "-fn", "--font", 10, 1 },
1896 { "-font", 0, 10, 1 }, 1897 { "-font", 0, 10, 1 },
1897 { "-fs", "--fullscreen", 10, 0 }, 1898 { "-fs", "--fullscreen", 10, 0 },
diff --git a/src/xterm.c b/src/xterm.c
index b541683e5ad..1add3c415e7 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -5797,6 +5797,7 @@ event_handler_gdk (gxev, ev, data)
5797{ 5797{
5798 XEvent *xev = (XEvent *) gxev; 5798 XEvent *xev = (XEvent *) gxev;
5799 5799
5800 BLOCK_INPUT;
5800 if (current_count >= 0) 5801 if (current_count >= 0)
5801 { 5802 {
5802 struct x_display_info *dpyinfo; 5803 struct x_display_info *dpyinfo;
@@ -5807,23 +5808,27 @@ event_handler_gdk (gxev, ev, data)
5807 /* Filter events for the current X input method. 5808 /* Filter events for the current X input method.
5808 GTK calls XFilterEvent but not for key press and release, 5809 GTK calls XFilterEvent but not for key press and release,
5809 so we do it here. */ 5810 so we do it here. */
5810 if (xev->type == KeyPress || xev->type == KeyRelease) 5811 if ((xev->type == KeyPress || xev->type == KeyRelease)
5811 if (dpyinfo && x_filter_event (dpyinfo, xev)) 5812 && dpyinfo
5812 return GDK_FILTER_REMOVE; 5813 && x_filter_event (dpyinfo, xev))
5814 {
5815 UNBLOCK_INPUT;
5816 return GDK_FILTER_REMOVE;
5817 }
5813#endif 5818#endif
5814 5819
5815 if (! dpyinfo) 5820 if (! dpyinfo)
5816 current_finish = X_EVENT_NORMAL; 5821 current_finish = X_EVENT_NORMAL;
5817 else 5822 else
5818 { 5823 current_count +=
5819 current_count += 5824 handle_one_xevent (dpyinfo, xev, &current_finish,
5820 handle_one_xevent (dpyinfo, xev, &current_finish, 5825 current_hold_quit);
5821 current_hold_quit);
5822 }
5823 } 5826 }
5824 else 5827 else
5825 current_finish = x_dispatch_event (xev, xev->xany.display); 5828 current_finish = x_dispatch_event (xev, xev->xany.display);
5826 5829
5830 UNBLOCK_INPUT;
5831
5827 if (current_finish == X_EVENT_GOTO_OUT || current_finish == X_EVENT_DROP) 5832 if (current_finish == X_EVENT_GOTO_OUT || current_finish == X_EVENT_DROP)
5828 return GDK_FILTER_REMOVE; 5833 return GDK_FILTER_REMOVE;
5829 5834