+2011-04-23 Juanma Barranquero <lekktu@gmail.com>
+
+ * mini.texi (Minibuffer Edit):
+ * screen.texi (Mode Line): Fix typo.
+
2011-04-20 Christoph Scholtes <cschol2112@googlemail.com>
* maintaining.texi (Old Revisions): Mention new function vc-ediff.
@vindex resize-mini-windows
Normally, the minibuffer window occupies a single screen line.
However, if you add two or more lines' worth of text into the
-minibuffer, it expands automatically to accomodate the text. The
+minibuffer, it expands automatically to accommodate the text. The
variable @code{resize-mini-windows} controls the resizing of the
minibuffer. The default value is @code{grow-only}, which means the
behavior we have just described. If the value is @code{t}, the
additional features on top of the major mode. @xref{Minor Modes}.
Some features are listed together with the minor modes whenever they
-are turned on, even through they are not really minor modes.
+are turned on, even though they are not really minor modes.
@samp{Narrow} means that the buffer being displayed has editing
restricted to only a portion of its text (@pxref{Narrowing}).
@samp{Def} means that a keyboard macro is currently being defined
+2011-04-23 Juanma Barranquero <lekktu@gmail.com>
+
+ * windows.texi (Choosing Window): Fix typo.
+
+2011-04-23 Chong Yidong <cyd@stupidchicken.com>
+
+ * frames.texi (Layout Parameters): Note the difference between
+ querying and setting parameters for left-fringe and right-fringe
+ (Bug#6930).
+
2011-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
* minibuf.texi (Basic Completion): Be a bit more precise about the
@itemx right-fringe
The default width of the left and right fringes of windows in this
frame (@pxref{Fringes}). If either of these is zero, that effectively
-removes the corresponding fringe. A value of @code{nil} stands for
-the standard fringe width, which is the width needed to display the
-fringe bitmaps.
+removes the corresponding fringe.
+
+When you use @code{frame-parameter} to query the value of either of
+these two frame parameters, the return value is always an integer.
+When using @code{set-frame-parameter}, passing a @code{nil} value
+imposes an actual default value of 8 pixels.
The combined fringe widths must add up to an integral number of
-columns, so the actual default fringe widths for the frame may be
-larger than the specified values. The extra width needed to reach an
-acceptable total is distributed evenly between the left and right
-fringe. However, you can force one fringe or the other to a precise
-width by specifying that width as a negative integer. If both widths are
-negative, only the left fringe gets the specified width.
+columns, so the actual default fringe widths for the frame, as
+reported by @code{frame-parameter}, may be larger than what you
+specify. Any extra width is distributed evenly between the left and
+right fringe. However, you can force one fringe or the other to a
+precise width by specifying that width as a negative integer. If both
+widths are negative, only the left fringe gets the specified width.
@vindex menu-bar-lines, a frame parameter
@item menu-bar-lines
windows one above the other that are both at least
@code{window-min-height} lines tall. Moreover, if the window that shall
be split has a mode line, @code{split-window-sensibly} does not split
-the window unless the new window can accomodate a mode line too.
+the window unless the new window can accommodate a mode line too.
@end defopt
@defopt split-width-threshold
+2011-04-23 Juanma Barranquero <lekktu@gmail.com>
+
+ * buff-menu.el (Buffer-menu--buffers): Fix typo in docstring (bug#8535).
+
+ * play/mpuz.el (mpuz-silent): Doc fix.
+ (mpuz-mode-map): Use mapc.
+ (mpuz-put-number-on-board): Rename parameter L to COLUMNS.
+ (mpuz-letter-to-digit, mpuz-check-all-solved, mpuz-create-buffer):
+ Fix typos in docstrings.
+
+ * play/doctor.el (doc$, doctor-$, doctor-read-print, doctor-read-token)
+ (doctor-nounp, doctor-pronounp): Fix typos in docstrings.
+
+ * mouse-drag.el (mouse-drag-throw): Fix typo in docstring.
+
+2011-04-23 Chong Yidong <cyd@stupidchicken.com>
+
+ * minibuffer.el (completion--do-completion): Avoid the "Next char
+ not unique" prompt if icomplete-mode is enabled (Bug#5849).
+
+ * mouse.el (mouse-drag-mode-line-1): Make sure that if we push
+ mouse-2 into unread-command-events, it is interpreted correctly.
+
+ * image-mode.el (image-type, image-mode-map, image-minor-mode-map)
+ (image-toggle-display): Doc fix.
+
+2011-04-23 Stephen Berman <stephen.berman@gmx.net>
+
+ * textmodes/page.el (what-page): Use line-number-at-pos to
+ calculate line number (Bug#6825).
+
2011-04-22 Juanma Barranquero <lekktu@gmail.com>
* eshell/esh-mode.el (find-tag-interactive): Declare function.
(proced-descend): New variable.
(proced-sort): New arg descend.
(proced-sort-interactive): Repeated calls toggle sort order.
- (proced-format): Accomodate changes of proced-format-alist.
+ (proced-format): Accommodate changes of proced-format-alist.
Undefined attributes are displayed as "?".
(proced-process-attributes): New optional arg pid-list.
Ignore processes with empty attribute list.
(defvar Buffer-menu--buffers nil
"If non-nil, list of buffers shown in the current buffer-menu.
This variable determines whether reverting the buffer lists only
-this buffers. It affects both manual reverting and reverting by
+these buffers. It affects both manual reverting and reverting by
Auto Revert Mode.")
(make-variable-buffer-local 'Buffer-menu--buffers)
+2011-04-23 Juanma Barranquero <lekktu@gmail.com>
+
+ * ede/pconf.el (ede-proj-tweak-autoconf, ede-proj-flush-autoconf):
+ * ede/proj-comp.el (ede-proj-tweak-autoconf, ede-proj-flush-autoconf):
+ * ede/proj-elisp.el (ede-proj-tweak-autoconf, ede-proj-flush-autoconf)
+ (ede-proj-tweak-autoconf, ede-proj-flush-autoconf):
+ * ede/proj-scheme.el (ede-proj-tweak-autoconf): Fix typos in docstrings.
+
2011-03-07 Chong Yidong <cyd@stupidchicken.com>
* Version 23.3 released.
(ede-proj-configure-synchronize this))
(defmethod ede-proj-tweak-autoconf ((this ede-proj-target))
- "Tweak the configure file (current buffer) to accomodate THIS."
+ "Tweak the configure file (current buffer) to accommodate THIS."
;; Check the compilers belonging to THIS, and call the autoconf
;; setup for those compilers.
(mapc 'ede-proj-tweak-autoconf (ede-proj-compilers this))
)
(defmethod ede-proj-flush-autoconf ((this ede-proj-target))
- "Flush the configure file (current buffer) to accomodate THIS.
+ "Flush the configure file (current buffer) to accommodate THIS.
By flushing, remove any cruft that may be in the file. Subsequent
calls to `ede-proj-tweak-autoconf' can restore items removed by flush."
nil)
;;; Methods:
(defmethod ede-proj-tweak-autoconf ((this ede-compilation-program))
- "Tweak the configure file (current buffer) to accomodate THIS."
+ "Tweak the configure file (current buffer) to accommodate THIS."
(mapcar
(lambda (obj)
(cond ((stringp obj)
(oref this autoconf)))
(defmethod ede-proj-flush-autoconf ((this ede-compilation-program))
- "Flush the configure file (current buffer) to accomodate THIS."
+ "Flush the configure file (current buffer) to accommodate THIS."
nil)
(defmacro proj-comp-insert-variable-once (varname &rest body)
(error "Don't know how to update load path"))))
(defmethod ede-proj-tweak-autoconf ((this ede-proj-target-elisp))
- "Tweak the configure file (current buffer) to accomodate THIS."
+ "Tweak the configure file (current buffer) to accommodate THIS."
(call-next-method)
;; Ok, now we have to tweak the autoconf provided `elisp-comp' program.
(let ((ec (ede-expand-filename this "elisp-comp" 'newfile)))
(save-buffer)) )))
(defmethod ede-proj-flush-autoconf ((this ede-proj-target-elisp))
- "Flush the configure file (current buffer) to accomodate THIS."
+ "Flush the configure file (current buffer) to accommodate THIS."
;; Remove crufty old paths from elisp-compile
(let ((ec (ede-expand-filename this "elisp-comp" 'newfile))
)
)
(defmethod ede-proj-tweak-autoconf ((this ede-proj-target-elisp-autoloads))
- "Tweak the configure file (current buffer) to accomodate THIS."
+ "Tweak the configure file (current buffer) to accommodate THIS."
(error "Autoloads not supported in autoconf yet"))
(defmethod ede-proj-flush-autoconf ((this ede-proj-target-elisp-autoloads))
- "Flush the configure file (current buffer) to accomodate THIS."
+ "Flush the configure file (current buffer) to accommodate THIS."
nil)
(provide 'ede/proj-elisp)
"This target consists of scheme files.")
(defmethod ede-proj-tweak-autoconf ((this ede-proj-target-scheme))
- "Tweak the configure file (current buffer) to accomodate THIS."
+ "Tweak the configure file (current buffer) to accommodate THIS."
(autoconf-insert-new-macro "AM_INIT_GUILE_MODULE"))
(provide 'ede/proj-scheme)
;;; Image Mode setup
(defvar image-type nil
- "Current image type.
-This variable is used to display the current image type in the mode line.")
+ "The image type for the current Image mode buffer.")
(make-variable-buffer-local 'image-type)
(defvar image-mode-previous-major-mode nil
(define-key map [remap beginning-of-buffer] 'image-bob)
(define-key map [remap end-of-buffer] 'image-eob)
map)
- "Major mode keymap for viewing images in Image mode.")
+ "Mode keymap for `image-mode'.")
(defvar image-minor-mode-map
(let ((map (make-sparse-keymap)))
(define-key map "\C-c\C-c" 'image-toggle-display)
map)
- "Minor mode keymap for viewing images as text in Image mode.")
+ "Mode keymap for `image-minor-mode'.")
(defvar bookmark-make-record-function)
(message "Repeat this command to go back to displaying the file as text"))))
(defun image-toggle-display ()
- "Start or stop displaying an image file as the actual image.
-This command toggles between `image-mode-as-text' showing the text of
-the image file and `image-mode' showing the image as an image."
+ "Toggle between image and text display.
+If the current buffer is displaying an image file as an image,
+call `image-mode-as-text' to switch to text. Otherwise, display
+the image by calling `image-mode'."
(interactive)
(if (image-get-display-property)
(image-mode-as-text)
(minibuffer-hide-completions))
;; Show the completion table, if requested.
((not exact)
- (if (cond ((null completion-show-inline-help) t)
+ (if (cond (icomplete-mode t)
+ ((null completion-show-inline-help) t)
((eq completion-auto-help 'lazy)
(eq this-command last-command))
(t completion-auto-help))
you'll like it. It's easier to observe than to explain.
If the mouse is clicked and released in the same place of time we
-assume that the user didn't want to scdebugroll but wanted to whatever
+assume that the user didn't want to scroll but wanted to whatever
mouse-2 used to do, so we pass it through.
Throw scrolling was inspired (but is not identical to) the \"hand\"
;; a `drag-mouse-1'. In any case `on-link' would have been nulled
;; above if there had been any significant mouse movement.
(when (and on-link (eq 'mouse-1 (car-safe event)))
+ ;; If mouse-2 has never been done by the user, it doesn't
+ ;; have the necessary property to be interpreted correctly.
+ (put 'mouse-2 'event-kind 'mouse-click)
(push (cons 'mouse-2 (cdr event)) unread-command-events))))))
(defun mouse-drag-mode-line (start-event)
(defun doc// (x) x)
(defmacro doc$ (what)
- "quoted arg form of doctor-$"
+ "Quoted arg form of doctor-$."
`(doctor-$ ',what))
(defun doctor-$ (what)
- "Return the car of a list, rotating the list each time"
+ "Return the car of a list, rotating the list each time."
(let* ((vv (symbol-value what))
(first (car vv))
(ww (append (cdr vv) (list first))))
(newline arg)))
(defun doctor-read-print nil
- "top level loop"
+ "Top level loop."
(interactive)
(let ((sent (doctor-readin)))
(insert "\n")
sentence))
(defun doctor-read-token ()
- "read one word from buffer"
+ "Read one word from buffer."
(prog1 (intern (downcase (buffer-substring (point)
(progn
(forward-word 1)
nil))))
(defun doctor-nounp (x)
- "Returns t if the symbol argument is a noun."
+ "Return t if the symbol argument is a noun."
(or (doctor-pronounp x)
(not (or (doctor-verbp x)
(equal x 'not)
(doctor-modifierp x) )) ))
(defun doctor-pronounp (x)
- "Returns t if the symbol argument is a pronoun."
+ "Return t if the symbol argument is a pronoun."
(memq x '(
i me mine myself
we us ours ourselves ourself
(defcustom mpuz-silent 'error
"Set this to nil if you want dings on inputs.
-t means never ding, and `error' means only ding on wrong input."
+The value t means never ding, and `error' means only ding on wrong input."
:type '(choice (const :tag "No" nil)
(const :tag "Yes" t)
(const :tag "If correct" error))
(defvar mpuz-mode-map
(let ((map (make-sparse-keymap)))
- (define-key map "a" 'mpuz-try-letter)
- (define-key map "b" 'mpuz-try-letter)
- (define-key map "c" 'mpuz-try-letter)
- (define-key map "d" 'mpuz-try-letter)
- (define-key map "e" 'mpuz-try-letter)
- (define-key map "f" 'mpuz-try-letter)
- (define-key map "g" 'mpuz-try-letter)
- (define-key map "h" 'mpuz-try-letter)
- (define-key map "i" 'mpuz-try-letter)
- (define-key map "j" 'mpuz-try-letter)
- (define-key map "A" 'mpuz-try-letter)
- (define-key map "B" 'mpuz-try-letter)
- (define-key map "C" 'mpuz-try-letter)
- (define-key map "D" 'mpuz-try-letter)
- (define-key map "E" 'mpuz-try-letter)
- (define-key map "F" 'mpuz-try-letter)
- (define-key map "G" 'mpuz-try-letter)
- (define-key map "H" 'mpuz-try-letter)
- (define-key map "I" 'mpuz-try-letter)
- (define-key map "J" 'mpuz-try-letter)
+ (mapc (lambda (ch)
+ (define-key map (char-to-string ch) 'mpuz-try-letter))
+ "abcdefghijABCDEFGHIJ")
(define-key map "\C-g" 'mpuz-offer-abort)
(define-key map "?" 'describe-mode)
map)
"Local keymap to use in Mult Puzzle.")
-
-
(defun mpuz-mode ()
"Multiplication puzzle mode.
"A permutation from [0..9] to [0..9].")
(defvar mpuz-letter-to-digit (make-vector 10 0)
- "The inverse of mpuz-digit-to-letter.")
+ "The inverse of `mpuz-digit-to-letter'.")
(defmacro mpuz-to-digit (letter)
(list 'aref 'mpuz-letter-to-digit letter))
(defvar mpuz-board (make-vector 10 nil)
"The board associates to any digit the list of squares where it appears.")
-(defun mpuz-put-number-on-board (number row &rest l)
+(defun mpuz-put-number-on-board (number row &rest columns)
"Put (last digit of) NUMBER on ROW and COLUMNS of the puzzle board."
(let (digit)
- (while l
+ (dolist (column columns)
(setq digit (% number 10)
- number (/ number 10))
- (aset mpuz-board digit `((,row . ,(car l)) ,@(aref mpuz-board digit)))
- (setq l (cdr l)))))
+ number (/ number 10))
+ (aset mpuz-board digit `((,row . ,column) ,@(aref mpuz-board digit))))))
(defun mpuz-check-all-solved (&optional row col)
- "Check whether all digits have been solved. Return t if yes."
+ "Check whether all digits have been solved. Return t if yes."
(catch 'solved
(let (A B1 B2 C D E squares)
(and mpuz-solve-when-trivial
"The general picture of the puzzle screen, as a string.")
(defun mpuz-create-buffer ()
- "Create (or recreate) the puzzle buffer. Return it."
+ "Create (or recreate) the puzzle buffer. Return it."
(let ((buf (get-buffer-create "*Mult Puzzle*"))
(face '(face mpuz-text))
buffer-read-only)
(if (= (match-beginning 0) (match-end 0))
(forward-char 1))
(setq count (1+ count)))
- (message "Page %d, line %d"
- count
- (1+ (count-lines (point) opoint)))))))
+ (message "Page %d, line %d" count (line-number-at-pos opoint))))))
+
+
\f
;;; Place `provide' at end of file.
(provide 'page)
+2011-04-23 Eli Zaretskii <eliz@gnu.org>
+
+ * s/ms-w32.h (localtime): Redirect to sys_localtime.
+
+ * w32.c: Include <time.h>.
+ (sys_localtime): New function.
+
+2011-04-23 Chong Yidong <cyd@stupidchicken.com>
+
+ * xdisp.c (init_xdisp): Initialize echo_area_window (Bug#6451).
+
+ * buffer.c (syms_of_buffer): Doc fix (Bug#6902).
+
+2011-04-23 Samuel Thibault <sthibault@debian.org> (tiny change)
+
+ * sysdep.c (wait_for_termination): On GNU Hurd, kill returns -1 on
+ zombies (Bug#8467).
+
2011-04-19 Eli Zaretskii <eliz@gnu.org>
* syntax.h (SETUP_SYNTAX_TABLE_FOR_OBJECT): Fix setting of
DEFVAR_PER_BUFFER ("tab-width", &BVAR (current_buffer, tab_width),
make_number (LISP_INT_TAG),
- doc: /* *Distance between tab stops (for display of tab characters), in columns. */);
+ doc: /* *Distance between tab stops (for display of tab characters), in columns.
+This should be an integer greater than zero. */);
DEFVAR_PER_BUFFER ("ctl-arrow", &BVAR (current_buffer, ctl_arrow), Qnil,
doc: /* *Non-nil means display control chars with uparrow.
#ifdef HAVE_NS
#include "nsgui.h"
-/* following typedef needed to accomodate the MSDOS port, believe it or not */
+/* Following typedef needed to accommodate the MSDOS port, believe it or not. */
typedef struct ns_display_info Display_Info;
typedef Pixmap XImagePtr;
typedef XImagePtr XImagePtr_or_DC;
/* According to RBIL (INTERRUP.A, V-1000), 160 is the maximum possible
width of a DOS display in any known text mode. We multiply by 2 to
- accomodate the screen attribute byte. */
+ accommodate the screen attribute byte. */
#define MAX_SCREEN_BUF 160*2
extern unsigned char *encode_terminal_code (struct glyph *, int,
#define dup2 sys_dup2
#define fopen sys_fopen
#define link sys_link
+#define localtime sys_localtime
#define mkdir sys_mkdir
#undef mktemp
#define mktemp sys_mktemp
{
while (1)
{
-#if defined (BSD_SYSTEM) || defined (HPUX)
+#if (defined (BSD_SYSTEM) || defined (HPUX)) && !defined(__GNU__)
/* Note that kill returns -1 even if the process is just a zombie now.
But inevitably a SIGCHLD interrupt should be generated
and child_sig will do wait3 and make the process go away. */
#include <mbstring.h> /* for _mbspbrk */
#include <math.h>
#include <setjmp.h>
+#include <time.h>
/* must include CRT headers *before* config.h */
#undef strerror
+#undef localtime
+
#include "lisp.h"
#include <pwd.h>
tv->tv_sec = tb.time;
tv->tv_usec = tb.millitm * 1000L;
+ /* Implementation note: _ftime sometimes doesn't update the dstflag
+ according to the new timezone when the system timezone is
+ changed. We could fix that by using GetSystemTime and
+ GetTimeZoneInformation, but that doesn't seem necessary, since
+ Emacs always calls gettimeofday with the 2nd argument NULL (see
+ EMACS_GET_TIME). */
if (tz)
{
tz->tz_minuteswest = tb.timezone; /* minutes west of Greenwich */
return nchars;
}
+/* The Windows CRT functions are "optimized for speed", so they don't
+ check for timezone and DST changes if they were last called less
+ than 1 minute ago (see http://support.microsoft.com/kb/821231). So
+ all Emacs features that repeatedly call time functions (e.g.,
+ display-time) are in real danger of missing timezone and DST
+ changes. Calling tzset before each localtime call fixes that. */
+struct tm *
+sys_localtime (const time_t *t)
+{
+ tzset ();
+ return localtime (t);
+}
+
static void
check_windows_init_file (void)
{
mini_w = XWINDOW (minibuf_window);
root_window = FRAME_ROOT_WINDOW (XFRAME (WINDOW_FRAME (mini_w)));
+ echo_area_window = minibuf_window;
if (!noninteractive)
{