emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master a0c7157: Merge from origin/emacs-26


From: Glenn Morris
Subject: [Emacs-diffs] master a0c7157: Merge from origin/emacs-26
Date: Mon, 5 Feb 2018 10:55:38 -0500 (EST)

branch: master
commit a0c7157a16481b0523ad20cda9115f9435188f73
Merge: c24c5dc c787a49
Author: Glenn Morris <address@hidden>
Commit: Glenn Morris <address@hidden>

    Merge from origin/emacs-26
    
    c787a49 (origin/emacs-26) * lisp/vc/vc-git.el (vc-git-print-log): Res...
    b654791 * doc/emacs/misc.texi (Interactive Shell): Refer to node "Min...
    f1102d2 Yet another round of fixing the Emacs manual
    76b5a68 * etc/NEWS: Expunge the solecism "allow(s)" + infinitive
    b4ff8cc Two minor fixes in Antinews
    aafcd12 * etc/NEWS: Rename image-dired-thumb-job-limit
    a893924 * lisp/simple.el (async-shell-command, shell-command): Fix gr...
    699081f Fix deferred display of async shell-command buffers
    d2d5e54 Mention remote file name completion in Emacs manual
    f589f5a Yest another round of manual copyedits
    1ed4089 Update xdisp.c commentary
    e23de39 Fix Bug#30324
    e1a9dc0 Recognize Org as builtin package (bug#30310)
    
    Conflicts:
        etc/NEWS
---
 doc/emacs/anti.texi        |  4 ++--
 doc/emacs/calendar.texi    | 19 +++++++++++++------
 doc/emacs/cmdargs.texi     | 14 +++++++-------
 doc/emacs/commands.texi    | 11 ++++++-----
 doc/emacs/dired.texi       | 11 ++++++-----
 doc/emacs/emacs.texi       |  4 ++--
 doc/emacs/fixit.texi       | 37 ++++++++++++++++++++-----------------
 doc/emacs/frames.texi      |  2 +-
 doc/emacs/macos.texi       |  3 ++-
 doc/emacs/mini.texi        | 14 ++++++++++----
 doc/emacs/misc.texi        |  3 ++-
 doc/emacs/xresources.texi  |  2 +-
 etc/NEWS.26                | 39 ++++++++++++++++++++++-----------------
 lisp/net/rlogin.el         |  4 ++--
 lisp/org/org.el            |  1 +
 lisp/simple.el             | 32 +++++++++++++++++++-------------
 lisp/vc/vc-git.el          |  8 +++++---
 src/xdisp.c                | 43 +++++++++++++++++++++++++++++--------------
 test/lisp/org/org-tests.el | 31 +++++++++++++++++++++++++++++++
 19 files changed, 181 insertions(+), 101 deletions(-)

diff --git a/doc/emacs/anti.texi b/doc/emacs/anti.texi
index 9c63e04..d4b68a2 100644
--- a/doc/emacs/anti.texi
+++ b/doc/emacs/anti.texi
@@ -90,12 +90,12 @@ You can no longer disable attempts of recovery from fatal 
exceptions
 such as C stack overflows and fatal signals.  Since the recovery
 included in Emacs is reliable enough, we decided there was no reason
 to put your edits in danger of becoming lost when these situations
-happen.  The variables @code{'attempt-stack-overflow-recovery} and
+happen.  The variables @code{attempt-stack-overflow-recovery} and
 @code{attempt-orderly-shutdown-on-fatal-signal} are therefore removed.
 
 @item
 The @code{list-timers} command was removed, as we decided timers are
-not user-level feature, and therefore users should not be allowed to
+not a user-level feature, and therefore users should not be allowed to
 mess with them.  Ask an Emacs Lisp guru near you for help if you have
 a runaway timer in your session.  (Of course, as you move back in
 time, such runaway timers will become less and less frequent, and
diff --git a/doc/emacs/calendar.texi b/doc/emacs/calendar.texi
index 7ce73a6..ed1f53f 100644
--- a/doc/emacs/calendar.texi
+++ b/doc/emacs/calendar.texi
@@ -41,8 +41,6 @@ For more advanced topics,
 * Lunar Phases::        Displaying phases of the moon.
 * Other Calendars::     Converting dates to other calendar systems.
 * Diary::               Displaying events from your diary.
-* Appointments::        Reminders when it's time to do something.
-* Importing Diary::     Converting diary events to/from other formats.
 * Daylight Saving::     How to specify when daylight saving time is active.
 * Time Intervals::      Keeping track of time intervals.
 @ifnottex
@@ -936,6 +934,8 @@ entries.
 * Date Formats::           Various ways you can specify dates.
 * Adding to Diary::        Commands to create diary entries.
 * Special Diary Entries::  Anniversaries, blocks of dates, cyclic entries, etc.
+* Appointments::           Reminders when it's time to do something.
+* Importing Diary::        Converting diary events to/from other formats.
 @end menu
 
 @node Format of Diary File
@@ -1363,7 +1363,7 @@ can perform arbitrary computations to determine when they 
apply.
 @end ifnottex
 
 @node Appointments
address@hidden Appointments
address@hidden Appointments
 @cindex appointment notification
 
 @vindex appt-display-format
@@ -1435,7 +1435,11 @@ also updated whenever the diary file (or a file it 
includes; see
 @ifnottex
 @ref{Fancy Diary Display})
 @end ifnottex
-is saved.
+is saved.  If you use the Org Mode and keep appointments in your Org
+agenda files, you can add those appointments to the list using the
address@hidden command.  @xref{Weekly/daily agenda,
+Appointment reminders,,org, The Org Manual}, for more about that
+command.
 
 @findex appt-add
 @findex appt-delete
@@ -1446,7 +1450,7 @@ list without affecting your diary file.  You delete 
entries from the
 appointment list with @kbd{M-x appt-delete}.
 
 @node Importing Diary
address@hidden Importing and Exporting Diary Entries
address@hidden Importing and Exporting Diary Entries
 
   You can transfer diary entries between Emacs diary files and a
 variety of other formats.
@@ -1581,10 +1585,13 @@ variables' values are 120.
 @cindex time intervals, summing
 @cindex summing time intervals
 @cindex timeclock
address@hidden clocking time
 
   The timeclock package adds up time intervals, so you can (for
 instance) keep track of how much time you spend working on particular
-projects.
+projects.  (A more advanced alternative is to use the Org Mode's
+facilities for clocking time, @pxref{Clocking work time,,,org, The Org
+Manual}).
 
 @findex timeclock-in
 @findex timeclock-out
diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi
index 1dbc1dc..63db2ac 100644
--- a/doc/emacs/cmdargs.texi
+++ b/doc/emacs/cmdargs.texi
@@ -101,13 +101,13 @@ displayed file is the last one specified on the command 
line; the
 other files are visited but their buffers are not shown.
 
 If the startup buffer is disabled (@pxref{Entering Emacs}), then
address@hidden is visited in a single window if one file argument was
-supplied; with two file arguments, Emacs displays the files in two
-different windows; with more than two file argument, Emacs displays
-the last file specified in one window, plus a Buffer Menu in a
-different window (@pxref{Several Buffers}).  To inhibit using the
-Buffer Menu for this, change the variable
address@hidden to @code{t}.
+starting Emacs with one file argument displays the buffer visiting
address@hidden in a single window.  With two file arguments, Emacs
+displays the files in two different windows.  With more than two file
+argument, Emacs displays the last file specified in one window, plus
+another window with a Buffer Menu showing all the other files
+(@pxref{Several Buffers}).  To inhibit using the Buffer Menu for this,
+change the variable @code{inhibit-startup-buffer-menu} to @code{t}.
 
 @item address@hidden @var{file}
 @opindex address@hidden
diff --git a/doc/emacs/commands.texi b/doc/emacs/commands.texi
index 2e65bfd..8b8b0c7 100644
--- a/doc/emacs/commands.texi
+++ b/doc/emacs/commands.texi
@@ -56,11 +56,12 @@ characters, e.g., @address@hidden or @address@hidden
 @cindex @key{ESC} replacing @key{META} key
   You can also type Meta characters using two-character sequences
 starting with @key{ESC}.  Thus, you can enter @kbd{M-a} by typing
address@hidden@key{ESC} a}.  You can enter @kbd{C-M-a} by typing @address@hidden
-C-a}.  Unlike @key{META}, @key{ESC} is entered as a separate
-character.  You don't hold down @key{ESC} while typing the next
-character; instead, press @key{ESC} and release it, then enter the
-next character.  This feature is useful on certain text terminals
address@hidden@key{ESC} a}.  You can enter @kbd{C-M-a} (holding down both
address@hidden and @key{Alt}, then pressing @kbd{a}) by typing
address@hidden@key{ESC} C-a}.  Unlike @key{META}, @key{ESC} is entered as a
+separate character.  You don't hold down @key{ESC} while typing the
+next character; instead, press @key{ESC} and release it, then enter
+the next character.  This feature is useful on certain text terminals
 where the @key{META} key does not function reliably.
 
 @cindex keys stolen by window manager
diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi
index 7fbb0b9..71aea90 100644
--- a/doc/emacs/dired.texi
+++ b/doc/emacs/dired.texi
@@ -738,8 +738,8 @@ this.)
 
 @vindex dired-chown-program
 The variable @code{dired-chown-program} specifies the name of the
-program to use to do the work (different systems put @command{chown}
-in different places).
+program to use to do the work.  (This variable is necessary because
+different systems put @command{chown} in different places).
 
 @findex dired-do-touch
 @kindex T @r{(Dired)}
@@ -909,7 +909,7 @@ treat it specially.
 Otherwise, if the command string contains @samp{?} surrounded by
 whitespace or @samp{`?`}, Emacs runs the shell command once
 @emph{for each file}, substituting the current file name for @samp{?}
-and @samp{`?`} each time.  You can use both @samp{?} or @samp{`?`} more
+and @samp{`?`} each time.  You can use both @samp{?} and @samp{`?`} more
 than once in the command; the same file name replaces each occurrence.
 If you mix them with @samp{*} the command signals an error.
 
@@ -1402,7 +1402,7 @@ display the next image.  Typing @key{DEL}
 the previous thumbnail and displays that instead.
 
 @vindex image-dired-external-viewer
-  To view and the image in its original size, either provide a prefix
+  To view the image in its original size, either provide a prefix
 argument (@kbd{C-u}) before pressing @key{RET}, or type
 @address@hidden (@code{image-dired-thumbnail-display-external}) to
 display the image in an external viewer.  You must first configure
@@ -1437,7 +1437,8 @@ a comment from Dired 
(@code{image-dired-dired-comment-files}).
   Image-Dired also provides simple image manipulation.  In the
 thumbnail buffer, type @kbd{L} to rotate the original image 90 degrees
 anti clockwise, and @kbd{R} to rotate it 90 degrees clockwise.  This
-rotation is lossless, and uses an external utility called JpegTRAN.
+rotation is lossless, and uses an external utility called
address@hidden, which you need to install first.
 
 @node Misc Dired Features
 @section Other Dired Features
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi
index 0051868..474c4e9 100644
--- a/doc/emacs/emacs.texi
+++ b/doc/emacs/emacs.texi
@@ -954,8 +954,6 @@ The Calendar and the Diary
 * Lunar Phases::        Displaying phases of the moon.
 * Other Calendars::     Converting dates to other calendar systems.
 * Diary::               Displaying events from your diary.
-* Appointments::        Reminders when it's time to do something.
-* Importing Diary::     Converting diary events to/from other formats.
 * Daylight Saving::     How to specify when daylight saving time is active.
 * Time Intervals::      Keeping track of time intervals.
 @ifnottex
@@ -983,6 +981,8 @@ The Diary
 * Date Formats::           Various ways you can specify dates.
 * Adding to Diary::        Commands to create diary entries.
 * Special Diary Entries::  Anniversaries, blocks of dates, cyclic entries, etc.
+* Appointments::           Reminders when it's time to do something.
+* Importing Diary::        Converting diary events to/from other formats.
 
 @ifnottex
 More advanced features of the Calendar and Diary
diff --git a/doc/emacs/fixit.texi b/doc/emacs/fixit.texi
index ced1ef9..aca85f3 100644
--- a/doc/emacs/fixit.texi
+++ b/doc/emacs/fixit.texi
@@ -159,9 +159,10 @@ last two characters on the line.  So, if you catch your 
transposition error
 right away, you can fix it with just a @kbd{C-t}.  If you don't catch it so
 fast, you must move the cursor back between the two transposed
 characters before you type @kbd{C-t}.  If you transposed a space with
-the last character of the word before it, the word motion commands are
-a good way of getting there.  Otherwise, a reverse search (@kbd{C-r})
-is often the best way.  @xref{Search}.
+the last character of the word before it, the word motion commands
+(@kbd{M-f}, @kbd{M-b}, etc.) are a good way of getting there.
+Otherwise, a reverse search (@kbd{C-r}) is often the best way.
address@hidden
 
 @kindex C-x C-t
 @findex transpose-lines
@@ -181,22 +182,23 @@ punctuation characters between the words do not move.  
For example,
   @kbd{C-M-t} (@code{transpose-sexps}) is a similar command for
 transposing two expressions (@pxref{Expressions}), and @kbd{C-x C-t}
 (@code{transpose-lines}) exchanges lines.  They work like @kbd{M-t}
-except as regards what units of text they transpose.
+except as regards the units of text they transpose.
 
   A numeric argument to a transpose command serves as a repeat count: it
-tells the transpose command to move the character (word, expression, line)
-before or containing point across several other characters (words,
-expressions, lines).  For example, @kbd{C-u 3 C-t} moves the character before
-point forward across three other characters.  It would change
address@hidden@point{}oobar} into @address@hidden  This is equivalent to
-repeating @kbd{C-t} three times.  @kbd{C-u - 4 M-t} moves the word
-before point backward across four words.  @kbd{C-u - C-M-t} would cancel
-the effect of plain @kbd{C-M-t}.
+tells the transpose command to move the character (or word or
+expression or line) before or containing point across several other
+characters (or words or expressions or lines).  For example, @kbd{C-u
+3 C-t} moves the character before point forward across three other
+characters.  It would change @address@hidden into
address@hidden@point{}ar}.  This is equivalent to repeating @kbd{C-t}
+three times.  @kbd{C-u - 4 M-t} moves the word before point backward
+across four words.  @kbd{C-u - C-M-t} would cancel the effect of plain
address@hidden
 
   A numeric argument of zero is assigned a special meaning (because
 otherwise a command with a repeat count of zero would do nothing): to
-transpose the character (word, expression, line) ending after point
-with the one ending after the mark.
+transpose the character (or word or expression or line) ending after
+point with the one ending after the mark.
 
 @node Fixing Case
 @section Case Conversion
@@ -227,9 +229,10 @@ case-convert it and go on typing.  @xref{Case}.
 
   This section describes the commands to check the spelling of a
 single word or of a portion of a buffer.  These commands only work if
-the spelling checker program Hunspell, Aspell, Ispell or Enchant is installed.
-These programs are not part of Emacs, but one of them is usually
-installed in GNU/Linux and other free operating systems.
+a spelling checker program, one of Hunspell, Aspell, Ispell or
+Enchant, is installed.  These programs are not part of Emacs, but one
+of them is usually installed in GNU/Linux and other free operating
+systems.
 @ifnottex
 @xref{Top, Aspell,, aspell, The Aspell Manual}.
 @end ifnottex
diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi
index 7c1d36c..afdfa6c 100644
--- a/doc/emacs/frames.texi
+++ b/doc/emacs/frames.texi
@@ -994,7 +994,7 @@ variable @code{scroll-bar-adjust-thumb-portion} to control
 when the end of the buffer is visible.  If its value is
 address@hidden, the scroll bar can be dragged downwards even if the
 end of the buffer is shown; if @code{nil}, the thumb will be at the
-bottom when the end of the buffer is shown.  You can not over-scroll
+bottom when the end of the buffer is shown.  You cannot over-scroll
 when the entire buffer is visible.
 
 @cindex scroll-bar face
diff --git a/doc/emacs/macos.texi b/doc/emacs/macos.texi
index cf4e48b..dbde2c8 100644
--- a/doc/emacs/macos.texi
+++ b/doc/emacs/macos.texi
@@ -49,7 +49,8 @@ default).  A value of @code{control}, @code{meta}, @code{alt},
 @code{super}, or @code{hyper} makes them behave like the corresponding
 modifier keys; a value to @code{left} means be the same key as
 @code{ns-alternate-modifier}; a value of @code{none} tells Emacs to
-ignore them.
+ignore them, in which case you get the default behavior of macOS
+accentuation system from the right option key.
 
   @kbd{S-mouse-1} adjusts the region to the click position,
 just like @kbd{mouse-3} (@code{mouse-save-then-kill}); it does not pop
diff --git a/doc/emacs/mini.texi b/doc/emacs/mini.texi
index fcd229d..de16c44 100644
--- a/doc/emacs/mini.texi
+++ b/doc/emacs/mini.texi
@@ -119,6 +119,12 @@ second slash in the pair.  In the example above,
 the terminal allows it.  (To disable this dimming, turn off File Name
 Shadow mode with the command @kbd{M-x file-name-shadow-mode}.)
 
+  When completing remote file names (@pxref{Remote Files}), a double
+slash behaves slightly differently: it causes Emacs to ignore only the
+file-name part, leaving the rest (method, host and username, etc.)
+intact.  Typing three slashes in a row ignores everything in remote
+file names.  @xref{File name completion,,, tramp, The Tramp Manual}.
+
 @cindex home directory shorthand
   Emacs interprets @file{~/} as your home directory.  Thus,
 @file{~/foo/bar.txt} specifies a file named @file{bar.txt}, inside a
@@ -767,10 +773,10 @@ you type the required password, press @key{RET} to submit 
it.  To
 prevent others from seeing your password, every character you type is
 displayed as a dot (@samp{.}) instead of its usual form.
 
-  Most of the features and commands associated with the minibuffer can
address@hidden be used when entering a password.  There is no history or
-completion, and you cannot change windows or perform any other action
-with Emacs until you have submitted the password.
+  Most of the features and commands associated with the minibuffer
address@hidden be used when entering a password.  There is no history
+or completion, and you cannot change windows or perform any other
+action with Emacs until you have submitted the password.
 
   While you are typing the password, you may press @key{DEL} to delete
 backwards, removing the last character entered.  @kbd{C-u} deletes
diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi
index 3300ed6..1fb47c3 100644
--- a/doc/emacs/misc.texi
+++ b/doc/emacs/misc.texi
@@ -791,7 +791,8 @@ the variable @code{explicit-shell-file-name}.  If this is 
@code{nil}
 exists.  Otherwise, it usually uses the variable
 @code{shell-file-name} (@pxref{Single Shell}); but if the default
 directory is remote (@pxref{Remote Files}), it prompts you for the
-shell file name.
+shell file name.  @xref{Minibuffer File}, for hints how to type remote
+file names effectively.
 
   Emacs sends the new shell the contents of the file
 @file{~/address@hidden as input, if it exists, where
diff --git a/doc/emacs/xresources.texi b/doc/emacs/xresources.texi
index f192c0d..d58c6b9 100644
--- a/doc/emacs/xresources.texi
+++ b/doc/emacs/xresources.texi
@@ -764,7 +764,7 @@ This is the state for data that has been selected by the 
user.  It can
 be selected text or items selected in a list.  This state is not used
 in Emacs.
 @item INSENSITIVE
-This is the state for widgets that are visible, but they can not be
+This is the state for widgets that are visible, but they cannot be
 manipulated in the usual way---for example, buttons that can't be
 pressed, and disabled menu items.  To display disabled menu items in
 yellow, use @code{fg[INSENSITIVE] = "yellow"}.
diff --git a/etc/NEWS.26 b/etc/NEWS.26
index 76e6316..00ff9cd 100644
--- a/etc/NEWS.26
+++ b/etc/NEWS.26
@@ -264,9 +264,9 @@ to non-nil moves point to the beginning of the region.
 
 +++
 ** New user option 'mouse-drag-and-drop-region'.
-This option allows to drag the entire region of text to another place
-or another buffer.  Its behavior is customizable via the new options
-'mouse-drag-and-drop-region-cut-when-buffers-differ',
+This option allows you to drag the entire region of text to another
+place or another buffer.  Its behavior is customizable via the new
+options 'mouse-drag-and-drop-region-cut-when-buffers-differ',
 'mouse-drag-and-drop-region-show-tooltip', and
 'mouse-drag-and-drop-region-show-cursor'.
 
@@ -481,8 +481,8 @@ commands.
 libraries: 'find-library-other-window' and 'find-library-other-frame'.
 
 +++
-** The new variable 'display-raw-bytes-as-hex' allows to change the
-display of raw bytes from octal to hex.
+** The new variable 'display-raw-bytes-as-hex' allows you to change
+the display of raw bytes from octal to hex.
 
 +++
 ** You can now provide explicit field numbers in format specifiers.
@@ -855,8 +855,8 @@ breakpoint (e.g. with "f" and "o") by customizing the new 
option
 
 +++
 *** New customizable option 'edebug-max-depth'.
-This allows to enlarge the maximum recursion depth when instrumenting
-code.
+This allows you to enlarge the maximum recursion depth when
+instrumenting code.
 
 ** Eshell
 
@@ -958,7 +958,7 @@ the function 'image-dired-setup-dired-keybindings'.
 ---
 *** Thumbnail generation is now asynchronous.
 The number of concurrent processes is limited by the variable
-'image-dired-thumb-job-limit'.
+'image-dired-queue-active-limit'.
 
 ---
 *** 'image-dired-thumbnail-storage' has a new option 'standard-large'
@@ -1056,8 +1056,8 @@ A valid remote file name starts with "/method:host:" or
 "/-::" is the shortest remote file name then.
 
 +++
-*** The command 'tramp-change-syntax' allows to choose an alternative
-remote file name syntax.
+*** The command 'tramp-change-syntax' allows you to choose an
+alternative remote file name syntax.
 
 +++
 *** New connection method "sg", which supports editing files under a
@@ -1067,7 +1067,7 @@ different group ID.
 *** New connection method "doas" for OpenBSD hosts.
 
 +++
-*** New connection method "gdrive", which allows to access Google
+*** New connection method "gdrive", which allows access to Google
 Drive onsite repositories.
 
 +++
@@ -1169,6 +1169,9 @@ branch-related commands on a keymap bound to 'B'.
 *** 'vc-region-history' is now bound to 'C-x v h', replacing the older
 'vc-insert-headers' binding.
 
+*** New user option 'vc-git-print-log-follow' to follow renames in Git logs
+for a single file.
+
 ** CC mode
 
 ---
@@ -1868,10 +1871,11 @@ focus via the mouse.
 frame.
 
 +++
-**** 'width' and 'height' allow to specify pixel values and ratios now.
+**** 'width' and 'height' now allow the specification of pixel values
+and ratios.
 
 +++
-**** 'left' and 'top' allow to specify ratios now.
+**** 'left' and 'top' now allow the specification of ratios.
 
 +++
 **** 'keep-ratio' preserves size and position of child frames when their
@@ -1892,7 +1896,7 @@ handle fitting a frame to its buffer individually.
 +++
 **** 'drag-internal-border', 'drag-with-header-line',
 'drag-with-mode-line', 'snap-width', 'top-visible' and 'bottom-visible'
-allow to drag and resize frames with the mouse.
+allow dragging and resizing frames with the mouse.
 
 +++
 **** 'minibuffer' is now set to the default minibuffer window when
@@ -1939,8 +1943,9 @@ like a single live window - is now official.  For details 
consult the
 section "(elisp) Atomic Windows" in the ELisp manual.
 
 +++
-*** New 'display-buffer' alist entry 'window-parameters' allows to
-assign window parameters to the window used for displaying the buffer.
+*** New 'display-buffer' alist entry 'window-parameters' allows the
+assignment of window parameters to the window used for displaying the
+buffer.
 
 +++
 *** New function 'display-buffer-reuse-mode-window' is an action function
@@ -1960,7 +1965,7 @@ its window gets deleted by 'delete-other-windows'.
 
 +++
 *** New window parameters 'mode-line-format' and 'header-line-format'
-allow to override the buffer-local formats for this window.
+allow the buffer-local formats for this window to be overridden.
 
 +++
 *** New command 'window-swap-states' swaps the states of two live
diff --git a/lisp/net/rlogin.el b/lisp/net/rlogin.el
index 646adef..3bfc4d7 100644
--- a/lisp/net/rlogin.el
+++ b/lisp/net/rlogin.el
@@ -219,7 +219,7 @@ variable."
                ;; function, to avoid a gratuitous resync check; the default
                ;; should be the user's home directory, be it local or remote.
                (setq comint-file-name-prefix
-                     (concat "/" rlogin-remote-user "@" rlogin-host ":"))
+                     (concat "/-:" rlogin-remote-user "@" rlogin-host ":"))
                (cd-absolute comint-file-name-prefix))
               ((null rlogin-directory-tracking-mode))
               (t
@@ -253,7 +253,7 @@ local one share the same directories (e.g. through NFS)."
     (setq rlogin-directory-tracking-mode t)
     (setq shell-dirtrackp t)
     (setq comint-file-name-prefix
-          (concat "/" rlogin-remote-user "@" rlogin-host ":")))
+          (concat "/-:" rlogin-remote-user "@" rlogin-host ":")))
    ((< prefix 0)
     (setq rlogin-directory-tracking-mode nil)
     (setq shell-dirtrackp nil))
diff --git a/lisp/org/org.el b/lisp/org/org.el
index 5272061..4e46205 100644
--- a/lisp/org/org.el
+++ b/lisp/org/org.el
@@ -7,6 +7,7 @@
 ;; Maintainer: Carsten Dominik <carsten at orgmode dot org>
 ;; Keywords: outlines, hypermedia, calendar, wp
 ;; Homepage: http://orgmode.org
+;; Version: 9.1.6
 ;;
 ;; This file is part of GNU Emacs.
 ;;
diff --git a/lisp/simple.el b/lisp/simple.el
index 375ee31..0c54c8f 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -3356,15 +3356,15 @@ to execute it asynchronously.
 The output appears in the buffer `*Async Shell Command*'.
 That buffer is in shell mode.
 
-You can configure `async-shell-command-buffer' to specify what to do in
-case when `*Async Shell Command*' buffer is already taken by another
+You can configure `async-shell-command-buffer' to specify what to do
+when the `*Async Shell Command*' buffer is already taken by another
 running shell command.  To run COMMAND without displaying the output
 in a window you can configure `display-buffer-alist' to use the action
 `display-buffer-no-window' for the buffer `*Async Shell Command*'.
 
 In Elisp, you will often be better served by calling `start-process'
-directly, since it offers more control and does not impose the use of a
-shell (with its need to quote arguments)."
+directly, since it offers more control and does not impose the use of
+a shell (with its need to quote arguments)."
   (interactive
    (list
     (read-shell-command "Async shell command: " nil nil
@@ -3433,8 +3433,8 @@ In an interactive call, the variable 
`shell-command-default-error-buffer'
 specifies the value of ERROR-BUFFER.
 
 In Elisp, you will often be better served by calling `call-process' or
-`start-process' directly, since it offers more control and does not impose
-the use of a shell (with its need to quote arguments)."
+`start-process' directly, since they offer more control and do not
+impose the use of a shell (with its need to quote arguments)."
 
   (interactive
    (list
@@ -3552,14 +3552,20 @@ the use of a shell (with its need to quote arguments)."
                  ;; carriage motion (see comint-inhibit-carriage-motion).
                  (set-process-filter proc 'comint-output-filter)
                   (if async-shell-command-display-buffer
+                      ;; Display buffer immediately.
                       (display-buffer buffer '(nil (allow-no-window . t)))
-                    (add-function :before (process-filter proc)
-                                  (lambda (process _string)
-                                    (let ((buf (process-buffer process)))
-                                      (when (and (zerop (buffer-size buf))
-                                                 (string= (buffer-name buf)
-                                                          bname))
-                                        (display-buffer buf))))))))
+                    ;; Defer displaying buffer until first process output.
+                    ;; Use disposable named advice so that the buffer is
+                    ;; displayed at most once per process lifetime.
+                    (let ((nonce (make-symbol "nonce")))
+                      (add-function :before (process-filter proc)
+                                    (lambda (proc _string)
+                                      (let ((buf (process-buffer proc)))
+                                        (when (buffer-live-p buf)
+                                          (remove-function (process-filter 
proc)
+                                                           nonce)
+                                          (display-buffer buf))))
+                                    `((name . ,nonce)))))))
            ;; Otherwise, command is executed synchronously.
            (shell-command-on-region (point) (point) command
                                     output-buffer nil error-buffer)))))))
diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el
index 2d6ca13..47172dd 100644
--- a/lisp/vc/vc-git.el
+++ b/lisp/vc/vc-git.el
@@ -999,7 +999,7 @@ This prompts for a branch to merge from."
 (autoload 'vc-setup-buffer "vc-dispatcher")
 
 (defcustom vc-git-print-log-follow nil
-  "If true, follow renames in Git logs for files."
+  "If true, follow renames in Git logs for a single file."
   :type 'boolean
   :version "26.1")
 
@@ -1024,8 +1024,10 @@ If LIMIT is non-nil, show no more than this many 
entries."
               (append
                '("log" "--no-color")
                 (when (and vc-git-print-log-follow
-                           (not (cl-some #'file-directory-p files)))
-                  ;; "--follow" on directories is broken
+                           (null (cdr files))
+                           (car files)
+                           (not (file-directory-p (car files))))
+                  ;; "--follow" on directories or multiple files is broken
                   ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=8756
                   ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=16422
                   (list "--follow"))
diff --git a/src/xdisp.c b/src/xdisp.c
index 17a3cc3..55f3151 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -34,26 +34,41 @@ along with GNU Emacs.  If not, see 
<https://www.gnu.org/licenses/>.  */
    in xdisp.c is the only entry into the inner redisplay code.
 
    The following diagram shows how redisplay code is invoked.  As you
-   can see, Lisp calls redisplay and vice versa.  Under window systems
-   like X, some portions of the redisplay code are also called
-   asynchronously during mouse movement or expose events.  It is very
-   important that these code parts do NOT use the C library (malloc,
-   free) because many C libraries under Unix are not reentrant.  They
-   may also NOT call functions of the Lisp interpreter which could
-   change the interpreter's state.  If you don't follow these rules,
-   you will encounter bugs which are very hard to explain.
+   can see, Lisp calls redisplay and vice versa.
+
+   Under window systems like X, some portions of the redisplay code
+   are also called asynchronously, due to mouse movement or expose
+   events.  "Asynchronously" in this context means that any C function
+   which calls maybe_quit or process_pending_signals could enter
+   redisplay via expose_frame and/or note_mouse_highlight, if X events
+   were recently reported to Emacs about mouse movements or frame(s)
+   that were exposed.  And such redisplay could invoke the Lisp
+   interpreter, e.g. via the :eval forms in mode-line-format, and as
+   result the global state could change.  It is therefore very
+   important that C functions which might cause such "asynchronous"
+   redisplay, but cannot tolerate the results, use
+   block_input/unblock_input around code fragments which assume that
+   global Lisp state doesn't change.  If you don't follow this rule,
+   you will encounter bugs which are very hard to explain.  One place
+   that needs to take such precautions is timer_check, some of whose
+   code cannot tolerate changes in timer alists while it processes
+   timers.
 
    +--------------+   redisplay     +----------------+
    | Lisp machine |---------------->| Redisplay code |<--+
    +--------------+   (xdisp.c)     +----------------+   |
          ^                                  |           |
          +----------------------------------+           |
-           Don't use this path when called              |
-           asynchronously!                              |
-                                                         |
-                           expose_window (asynchronous)  |
-                                                         |
-                                  X expose events  -----+
+           Block input to prevent this when             |
+           called asynchronously!                       |
+                                                        |
+                   note_mouse_highlight (asynchronous)  |
+                                                        |
+                                   X mouse events  -----+
+                                                        |
+                           expose_frame (asynchronous)  |
+                                                        |
+                                  X expose events  -----+
 
    What does redisplay do?  Obviously, it has to figure out somehow what
    has been changed since the last time the display has been updated,
diff --git a/test/lisp/org/org-tests.el b/test/lisp/org/org-tests.el
new file mode 100644
index 0000000..a220188
--- /dev/null
+++ b/test/lisp/org/org-tests.el
@@ -0,0 +1,31 @@
+;;; org-tests.el --- tests for org/org.el
+
+;; Copyright (C) 2018 Free Software Foundation, Inc.
+
+;; Maintainer: address@hidden
+
+;; This file is part of GNU Emacs.
+
+;; GNU Emacs is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; GNU Emacs is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;;; Code:
+
+(ert-deftest org-package-version ()
+  "Test Version: header is present and correct.
+Ref <https://debbugs.gnu.org/30310>."
+  (should (require 'org-version nil t))
+  (should (equal (version-to-list (org-release))
+                 (cdr (assq 'org package--builtin-versions)))))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]