diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi index 8e842bea179..6fc99bd2716 100644 --- a/doc/emacs/display.texi +++ b/doc/emacs/display.texi @@ -1116,7 +1116,8 @@ the arrows scrolls the display horizontally in the direction of the arrow. The fringes can also indicate other things, such as buffer -boundaries (@pxref{Displaying Boundaries}), and where a program you +boundaries (@pxref{Displaying Boundaries}), unused lines near the end +of the window (@pxref{indicate-empty-lines}), and where a program you are debugging is executing (@pxref{Debuggers}). @vindex overflow-newline-into-fringe @@ -1258,6 +1259,7 @@ extra spaces at the end of each line in the region. @vindex indicate-empty-lines @cindex unused lines @cindex fringes, and unused line indication +@anchor{indicate-empty-lines} On graphical displays, Emacs can indicate unused lines at the end of the window with a small image in the left fringe (@pxref{Fringes}). The image appears for screen lines that do not correspond to any diff --git a/lisp/man.el b/lisp/man.el index 8858451b384..89d514423b6 100644 --- a/lisp/man.el +++ b/lisp/man.el @@ -624,7 +624,13 @@ This is necessary if one wants to dump man.el with Emacs." ;; so we don't need `2>' even with DOS shells ;; which do support stderr redirection. ((not (fboundp 'make-process)) " %s") - ((concat " %s 2>" null-device))))) + ((concat " %s 2>" null-device + ;; Some MS-Windows ports of Groff + ;; try to read stdin after exhausting + ;; the command-line arguments; make + ;; them exit if/when they do. + (if (eq system-type 'windows-nt) + (concat " <" null-device))))))) (flist Man-filter-list)) (while (and flist (car flist)) (let ((pcom (car (car flist))) diff --git a/lisp/play/pong.el b/lisp/play/pong.el index 759dbb404c6..e41db612878 100644 --- a/lisp/play/pong.el +++ b/lisp/play/pong.el @@ -262,7 +262,7 @@ (defun pong-move-left () - "Move bat 2 up. + "Move bat 1 up. This is called left for historical reasons, since in some pong implementations you move with left/right paddle." (interactive) @@ -274,7 +274,7 @@ implementations you move with left/right paddle." (defun pong-move-right () - "Move bat 2 up." + "Move bat 1 down." (interactive) (if (< (+ pong-bat-player1 pong-bat-width) (1- pong-height)) (and diff --git a/lisp/progmodes/octave.el b/lisp/progmodes/octave.el index b770edb7bcb..51ba34fa0fe 100644 --- a/lisp/progmodes/octave.el +++ b/lisp/progmodes/octave.el @@ -1616,8 +1616,23 @@ code line." (list (format "print_usage ('%s');\n" fn))) (let (result) (dolist (line inferior-octave-output-list) + ;; The help output has changed a few times in GNU Octave. + ;; Earlier versions output "usage: " before the function signature. + ;; After deprecating the usage function, and up until GNU Octave 4.0.3, + ;; the output looks like this: + ;; -- Mapping Function: abs (Z). + ;; After GNU Octave 4.2.0, the output is less verbose and it looks like + ;; this: + ;; -- abs (Z) + ;; The following regexp matches these three formats. + ;; The "usage: " alternative matches the symbol, because a call to + ;; print_usage with a non-existent function (e.g., print_usage ('A')) + ;; would output: + ;; error: print_usage: 'A' not found + ;; and we wouldn't like to match anything in this case. + ;; See bug #36459. (when (string-match - "\\s-*\\(?:--[^:]+\\|usage\\):\\s-*\\(.*\\)$" + "\\s-*\\(?:--[^:]+:\\|\\_