Juri Linkov [Wed, 21 Feb 2018 21:30:18 +0000 (23:30 +0200)]
* lisp/simple.el (next-error-find-buffer-function): New defcustom.
(next-error-last-buffer): Make variable buffer-local.
(next-error-buffer-on-selected-frame): New function.
(next-error-find-buffer): Use next-error-find-buffer-function
at the first step instead of ad-hoc logic of using one window
on the selected frame.
(next-error, next-error-internal): Set default value of
next-error-last-buffer. Display message with the name of last
next-error buffer.
(next-error-select-buffer): New command.
(Bug#20489)
Juri Linkov [Wed, 21 Feb 2018 20:37:33 +0000 (22:37 +0200)]
* lisp/vc/vc-dispatcher.el (vc-do-command): Bind message-truncate-lines to t
to keep entire commands in *Messages* but avoid resizing the echo area.
Rephrase messages in a such way that the important parts are
at the beginning. (Bug#19045)
Paul Eggert [Tue, 20 Feb 2018 21:42:20 +0000 (13:42 -0800)]
Port recent MAX_RW_COUNT checks to POSIX
* src/sysdep.c (MAX_RW_COUNT): Verify that it fits in POSIX standard
types, to go along with already-existing checks for MS-Windows types.
(emacs_intr_read): eassert on all platforms, not just MS-Windows.
Paul Eggert [Tue, 20 Feb 2018 21:42:19 +0000 (13:42 -0800)]
Update from gnulib
This includes:
2018-02-18 warnings: Add support for Objective C
2018-02-03 stdlib: Fix compilation error on OpenIndiana
* lib/gnulib.mk.in: Regenerate.
* lib/stdlib.in.h, m4/getloadavg.m4, m4/stdlib_h.m4, m4/warnings.m4:
Copy from gnulib.
Sam Steingold [Tue, 20 Feb 2018 20:30:51 +0000 (15:30 -0500)]
command-history-mode inherits from special-mode
(command-history-mode-map): Add `special-mode-map' to parents.
(command-history-mode): Parent is `special-mode', not
`fundamental-mode', set `revert-buffer-function'.
(command-history-revert): Define for `revert-buffer-function'.
Glenn Morris [Tue, 20 Feb 2018 15:50:29 +0000 (07:50 -0800)]
Merge from origin/emacs-26
226aca3 (origin/emacs-26) Fix documentation of 'flyspell-auto-correct... a8c8434 * doc/emacs/misc.texi (Saving Emacs Sessions): Fix markup. 275e735 More changes in the Emacs manuals d962be5 More fixes in the Emacs manual 6dc2846 * src/data.c (Faref): Fix a typo in the doc string. (Bug#30510) 36e729f Minor edit in tramp.texi 6537f99 ; Fix oversight from last commit eb94588 ; * doc/emacs/maintaining.texi: Fix two typos. 258135f More improvements in the Emacs manual f138bca Improve documentation of 'electric-pair-mode' f74ab96 ; Spelling and grammar fixes. 42f9dc4 ; * lisp/textmodes/flyspell.el (flyspell-auto-correct-word): ...
Eli Zaretskii [Tue, 20 Feb 2018 04:22:57 +0000 (06:22 +0200)]
Fix documentation of 'flyspell-auto-correct-word'
* lisp/textmodes/flyspell.el (flyspell-get-word): Elaborate in the
doc string on how the function looks for the word to spell-check.
(flyspell-word, flyspell-auto-correct-word): Refer to
'flyspell-get-word' for details about finding the word.
(Bug#30462)
Eli Zaretskii [Mon, 19 Feb 2018 16:14:08 +0000 (18:14 +0200)]
More changes in the Emacs manuals
* doc/emacs/custom.texi (Customization Groups, Browsing Custom)
(Custom Themes, Keymaps, Prefix Keymaps, Modifier Keys)
(Function Keys, Named ASCII Chars, Mouse Buttons, Init Examples):
Fix punctuation. Suggested by Stefan Kamphausen
<stefan.kamphausen@acrolinx.com> in emacs-manual-bugs@gnu.org.
* doc/emacs/basic.texi (Arguments, Repeating): Avoid breaking
commands between lines. Reported by Wojciech Politarczyk
<w.politarczyk@gmail.com> in emacs-manual-bugs@gnu.org.
* doc/emacs/custom.texi (Init Rebinding): Move index entries about
rebinding keys from "Init File". (Bug#30528)
Eli Zaretskii [Sun, 18 Feb 2018 18:52:21 +0000 (20:52 +0200)]
More fixes in the Emacs manual
* doc/emacs/abbrevs.texi (Defining Abbrevs, Expanding Abbrevs)
(Editing Abbrevs, Saving Abbrevs): Insert blank lines between
@item's.
(Expanding Abbrevs): Add 'unexpand-abbrev' to the list of
commands. Suggested by Michael Albinus <michael.albinus@gmx.de>
in emacs-manual-bugs@gnu.org.
Otherwise it breaks C-M-x on (progn (defmacro x ..) (... (x ...))).
Furthermore, many callers do their own macroexpansion anyway.
(elisp--eval-last-sexp): Do macroexpansion to make up for it.
(icalendar-export-region): Remove unused vars 'start', 'sum', and
'contents-n-summary'.
(icalendar--parse-summary-and-rest): Remove unused var 'pos-sum' and 'sum'.
(icalendar--convert-float-to-ical): Use calendar-let* to bind vars
'date' and 'entry'.
(icalendar--convert-non-recurring-all-day-to-diary):
Remove 'event' arg. Update callers.
(icalendar--convert-non-recurring-not-all-day-to-diary): Remove 'event'
and 'dtend-dec' args. Update callers.
Eli Zaretskii [Sat, 17 Feb 2018 17:48:23 +0000 (19:48 +0200)]
More improvements in the Emacs manual
* doc/emacs/maintaining.texi (Xref Commands, Identifier Search)
(List Identifiers): Insert blank lines between @item's in a
@table.
(Etags Regexps): More accurate description of escape sequences.
(Select Tags Table): Prefer "~/emacs.d/init.el" to "~/.emacs".
Suggested by Michael Albinus <michael.albinus@gmx.de> in
emacs-manual-bugs@gnu.org.
Eli Zaretskii [Sat, 17 Feb 2018 17:28:01 +0000 (19:28 +0200)]
Improve documentation of 'electric-pair-mode'
* lisp/elec-pair.el (electric-pair-mode):
* doc/emacs/programs.texi (Matching): Document the operation of
electric-pair-mode when there's an active region. (Bug#30502)
Glenn Morris [Sat, 17 Feb 2018 15:50:28 +0000 (07:50 -0800)]
Merge from origin/emacs-26
e5a2933 (origin/emacs-26) lisp/vc/: documentation fixes f21f8e6 Document 'desktop-files-not-to-save' d8917eb Improve documentation of Profiling features b228839 Improve indexing of "performance" in ELisp manual ab67b3e Minor change in Emacs manual's VC chapter c352434 Avoid memory corruption with specpdl overflow + edebug (Bug#3... 593bbda Document comment-fill-column in the manual (Bug#11636) bd4cc8d * doc/emacs/dired.texi (Marks vs Flags): Copyedits. 69107f3 ; Fix doc typos related to indefinite articles aaad1e6 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/emac... 5906418 More fixes for the Emacs manual 9ab3df1 ; Fix doc typos related to indefinite articles 66a4e65 ; Fix doc typos related to indefinite articles 35e5c57 ; Fix doc typos related to indefinite articles
Noam Postavsky [Mon, 5 Feb 2018 01:43:26 +0000 (20:43 -0500)]
Use pkg-config to find lcms2 CFLAGS and LIBS (Bug#30346)
* configure.ac: Use EMACS_CHECK_MODULES fors LCMS2 rather than
AC_SEARCH_LIBS.
* src/Makefile.in: Get LCMS2_LIBS and LCMS2_CFLAGS from configure,
instead of just LIBLCMS2.
Alan Third [Wed, 14 Feb 2018 20:28:46 +0000 (20:28 +0000)]
Fix modifier key handling on macOS
* configure.ac: Use the Carbon framework on macOS.
* src/nsterm.m (ns_get_shifted_character) [NS_IMPL_COCOA]: New function.
(EmacsView::keyDown) [NS_IMPL_COCOA]: Use ns_get_shifted_character
when we have shift style modifiers.
Eli Zaretskii [Sat, 17 Feb 2018 12:26:49 +0000 (14:26 +0200)]
Make echo-area buffers almost always multibyte
* src/xdisp.c (setup_echo_area_for_printing, set_message_1): Ensure
the echo-area buffer is multibyte, unless
unibyte-display-via-language-environment is non-nil, and the text
we are to display is or could be unibyte. (Bug#30405)
* lisp/startup.el (early-init-file): New variable.
(load-user-init-file): New function.
(command-line): Load the early init file using `load-user-init-file'.
Move the check for an invalid username to just before that, and move
the initialization of the package system to just after. Load the
regular init file using `load-user-init-file'.
* lisp/emacs-lisp/package.el (package--ensure-init-file): Remove
definition, usage, and documentation.
(package--init-file-ensured): Remove definition and usage.
* src/lread.c (Vuser_init_file): Note change in semantics due to its
usage while loading the early init file.
* doc/emacs/custom.texi: Document early init file.
* doc/emacs/package.texi: Document changes to when package-initialize
is called. Change terminology for package 'loading'.
* doc/lispref/os.texi: Document early init file. Update startup
summary.
* doc/lispref/package.texi: Document changes to when
package-initialize is called, and advise against calling it in the
init file. Change terminology for package 'loading'.
* doc/misc/org.texi: Don't recommend to call package-initialize in the
init file.
Alan Mackenzie [Sat, 17 Feb 2018 09:14:54 +0000 (09:14 +0000)]
Fix the change from 2018-02-15 which didn't mention literals
* doc/emacs/programs.texi (Left Margin Paren): Document that opening
delimiters at column 0 which are inside strings or comments aren't regarded as
defun starts.
Eli Zaretskii [Sat, 17 Feb 2018 08:28:29 +0000 (10:28 +0200)]
Minor change in Emacs manual's VC chapter
* doc/emacs/maintaining.texi (Log Buffer): Mention the "Summary"
header. Suggested by Michael Albinus <michael.albinus@gmx.de> in
emacs-manual-bugs@gnu.org.
Noam Postavsky [Fri, 16 Feb 2018 03:13:51 +0000 (22:13 -0500)]
Avoid memory corruption with specpdl overflow + edebug (Bug#30481)
If grow_specpdl fails due to outgrowing max_specpdl_size, it will
signal an error *before* growing the specpdl array. Therefore, when
handling the signal, specpdl_ptr points past the end of the specpdl
array and any further use of of specpdl before unwinding (e.g., if
edebug binds signal-hook-function) will cause memory corruption.
* src/eval.c (signal_or_quit): Don't call `signal-hook-function' if
the specpdl_ptr is already past the end of the specpdl array.
* test/src/eval-tests.el (eval-tests--exceed-specbind-limit)
(eval-exceed-specbind-with-signal-hook): New test & helper function.
Eli Zaretskii [Fri, 16 Feb 2018 21:37:38 +0000 (23:37 +0200)]
More fixes for the Emacs manual
* doc/emacs/vc1-xtra.texi (Customizing VC): Update the list of
backends.
* doc/emacs/maintaining.texi (Version Control): Add SRC to the
list of VCS. Remove the description of vc-state-refresh.
(Version Control Systems): Update the description of CVS.
(VC Change Log): Amend the list of VCS that don't support
vc0print-root-log.
(VCS Changesets, VCS Repositories, Advanced C-x v v)
(VC Change Log): Mention SRC with RCS where appropriate.
(VC Directory Commands): More accurate description of
vc-dir-hide-up-to-date. Suggested by Michael Albinus
<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
Glenn Morris [Fri, 16 Feb 2018 17:44:04 +0000 (09:44 -0800)]
Merge from origin/emacs-26
a06a8ed (origin/emacs-26) ; * lisp/vc/vc-git.el (vc-git--program-vers... edc06ad Make 'byte-compile-error-on-warn' a safe file variable 9f5d8da ; * lisp/textmodes/flyspell.el (flyspell-auto-correct-word): ... f73905a Fix the doc string of flyspell-auto-correct-word e9c7ddc Improve the MS-Windows appendix of the Emacs manual 6ddb4bd Fix 'vc-git--program-version' 63c93f7 Fix typos and wording in the Emacs manual 42f15b0 * doc/emacs/programs.texi (Semantic): Order programming langu... b46be29 More improvements for the Emacs manual 874c0ed Minor wording change in Emacs manual 53511f9 Another set of changes for the manual 78426b8 Improvements on tramp.texi 0dca618 Tramp minor doc fixes
Matthias Dahl [Fri, 16 Feb 2018 15:57:40 +0000 (17:57 +0200)]
Fix wait_reading_process_output wait_proc hang
* src/process.c (read_process_output): Track bytes read from
a process.
(wait_reading_process_output): If called recursively through
timers and/or process filters via accept-process-output, it is
possible that the output of wait_proc has already been read by
one of those recursive calls, leaving the original call hanging
forever if no further output arrives through that fd and no
timeout has been set. Fix that by using the process read
accounting to keep track of how many bytes have been read and
use that as a condition to break out of the infinite loop and
return to the caller as well as to calculate the proper return
value (if a wait_proc is given that is).
* src/process.h (struct Lisp_Process): Add nbytes_read to track
bytes read from a process.
Aaron Jensen [Fri, 16 Feb 2018 15:43:04 +0000 (17:43 +0200)]
Don't flash previous buffer when connecting with emacsclient
* lisp/server.el (server-execute): Accept lambda for creating
frame rather than frame. Ensure newly created tty frame
initially shows the correct buffer.
(server-process-filter): Pass a lambda to server-execute to create
a frame. (Bug#24218)
Eli Zaretskii [Fri, 16 Feb 2018 10:46:32 +0000 (12:46 +0200)]
Improve the MS-Windows appendix of the Emacs manual
* doc/emacs/msdos.texi (Windows Startup): Describe the pinned
shortcuts for starting Emacs.
(Text and Binary): Minor wording changes.
(Windows Files): Mention 'read-file-name-completion-ignore-case'.
(ls in Lisp): Update the list of supported 'ls' switches.
Document 'ls-lisp-use-string-collate' and
'ls-lisp-UCA-like-collation'.
(Windows HOME): Mention warnings displayed at startup when
deprecated locations of HOME and/or deprecated names for init
files are used.
(Windows Keyboard): Mention delete-selection-mode.
Alan Mackenzie [Thu, 15 Feb 2018 20:58:15 +0000 (20:58 +0000)]
Document open-paren-in-column-0-is-defun-start being of less importance
* doc/emacs/programs.texi (Left Margin Paren): Update to reflect the recent
change in syntax.c, whereby a paren at column 0 is no longer taken as a
beginning of defun in moving backwards over comments.
Eli Zaretskii [Thu, 15 Feb 2018 18:38:13 +0000 (20:38 +0200)]
More improvements for the Emacs manual
* doc/emacs/programs.texi (Basic Indent, Comment Commands): Fix
typos.
* doc/emacs/text.texi (TeX Print, HTML Mode, Enriched Faces): Fix
typos.
* doc/emacs/help.texi (Help Files): Improve @uref usage. Reported
by Stefan Kamphausen <stefan.kamphausen@acrolinx.com> in
emacs-manual-bugs@gnu.org.
* doc/emacs/fortran-xtra.texi (ForIndent Commands): Fix a typo.
(ForIndent Commands, Fortran Columns): Add empty lines between
@items in a @table.
(ForIndent Cont, ForIndent Num, Fortran Columns): Mention
'column-number-indicator-zero-based'.
(ForIndent Vars): Fix a typo.
(Fortran Comments): Fix punctuation.
(ForIndent Cont, Fortran Autofill): Fix markup of keyboard input.
* doc/emacs/programs.texi (Comments): Fix a typo.
(Comment Commands): More accurate description of the commands.
(Options for Comments): Don't mention "hook".
(Man Page): Prefer "M-x man" if available.
(Hideshow): Fix the command key sequence.
(Semantic): Update supported languages.
(Semantic, Hungry Delete, Other C Commands): Fix markup of
commands.
(Misc for Programs): Fix a typo.
(Electric C, Hungry Delete): More accurate description of
mode-line lighters of CC submodes.
(Asm Mode): Add empty lines between @items in a @table.
* doc/emacs/programs.texi (Program Modes): Add a few more modes.
Reported by Michael Albinus <michael.albinus@gmx.de> in
emacs-manual-bugs@gnu.org.
* doc/emacs/msdos.texi (Windows Misc): A minor rewording.
Suggested by Isaac Carter <icarter1391@gmail.com> in
emacs-manual-bugs@gnu.org.
Eli Zaretskii [Wed, 14 Feb 2018 19:00:59 +0000 (21:00 +0200)]
Another set of changes for the manual
* doc/emacs/programs.texi (Program Indent): Add a cross-reference
to elisp's description of 'pp'.
(Program Modes): Add a few more programming modes. Add index
entries.
(Basic Indent, Multi-line Indent, C Indent, Comment Commands)
(Manipulating Comments): Fix markup of keyboard commands.
* doc/emacs/search.texi (Regexps): Add an example with non-ASCII
characters. Suggested by Michael Albinus <michael.albinus@gmx.de>
in emacs-manual-bugs@gnu.org.
* doc/lispref/display.texi (Display Tables): Fix the description
of the 5th extra slot of the display table. (Bug#13473)
Michael Albinus [Wed, 14 Feb 2018 08:28:33 +0000 (09:28 +0100)]
Improvements on tramp.texi
* doc/misc/tramp.texi: Use Tramp version in title. Further
improvements on user option indexing. Finish command examples
with @key{RET} where appropriate.
(Remote processes): Use 'M-&' for invocation of async shell.
(Frequently Asked Questions): Add example with simplified syntax.
Glenn Morris [Tue, 13 Feb 2018 17:26:20 +0000 (09:26 -0800)]
Merge from origin/emacs-26
333d6f4 (origin/emacs-26) More changes in the Emacs manual 52ca0d1 * lisp/vc/vc.el (vc-deduce-backend): Use ignore-errors. 69e8046 Don't signal error in vc-deduce-backend f568c91 * doc/misc/tramp.texi: Index more user options. 92ca881 Minor change in the Emacs manual e055a12 NEWS update about 'string-trim' 96b6e24 Clarify TRAMP process-environment interaction (Bug#30419) 4fa467e * lisp/progmodes/grep.el (grep-num-matches-found): New variable. a22820a Avoid aborts in cm.c due to too small TTY frame 26f6441 Another set of improvements in the Emacs manual cef3b42 Fix help in mode-line-mode-menu f8a493c Improve documentation of desktop restoring 10637af Improve the Emacs manual's chapter "Frames" d924953 Fix unbound mm-uu-entry in mm-uu cb2487b Improve Emacs user manual in fixit.texi 66e9527 Another minor change in the manual 6a1c03d More minor changes in the Emacs manual 32fb8c4 Avoid printing garbled error message from image.el
Eli Zaretskii [Tue, 13 Feb 2018 17:12:37 +0000 (19:12 +0200)]
More changes in the Emacs manual
* doc/emacs/search.texi (Regexp Backslash): Say that
symbol-constituent characters are determined by the syntax table.
(Lax Search): Fix example of case-insensitive search. Fix a
typo.
(Unconditional Replace): Improve wording.
(Regexp Replace): More consistent wording. Reported by Michael
Albinus <michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
* doc/emacs/msdos.texi (Windows HOME): Avoid enumerating all the
Windows versions. Reported by Isaac Carter
<icarter1391@gmail.com> in emacs-manual-bugs@gnu.org.
Eli Zaretskii [Tue, 13 Feb 2018 05:59:26 +0000 (07:59 +0200)]
Minor change in the Emacs manual
* doc/emacs/building.texi (Lisp Libraries): Explain why nil in
load-path is not a good idea. Suggested by James Yoo
<james.yoo@gmail.com> in emacs-manual-bugs@gnu.org.
Paul Eggert [Tue, 13 Feb 2018 00:39:56 +0000 (16:39 -0800)]
Work if libpng is in /usr/local (2nd try)
Problem reported by Werner Lemberg in:
https://lists.gnu.org/r/emacs-devel/2018-02/msg00304.html
with a further fix suggested by Glenn Morris in Bug#30431#14.
* configure.ac: Try pkg-config before libpng-config.
Adjust LIBPNG accordingly, and append -lz regardless of
whether it was pkg-config.
* doc/misc/tramp.texi (Remote processes): Index the
tramp-remote-process-environment description. Clarify the effects of
let-binding process-environment and the motivation for that behavior.
Juri Linkov [Mon, 12 Feb 2018 21:39:28 +0000 (23:39 +0200)]
* lisp/progmodes/grep.el (grep-num-matches-found): New variable.
(grep-mode-line-matches): New defconst.
(grep-mode-font-lock-keywords): Update the regexp for “Grep finished”
to include the number of matches found.
(grep-process-setup): Set grep-num-matches-found to 0.
(grep-exit-message): New function with body moved from lambda
in grep-process-setup. Use grep-num-matches-found to return
the number of matches found.
(grep-filter): Increment grep-num-matches-found.
(grep-mode): Set compilation-mode-line-errors to grep-mode-line-matches.
(Bug#30397, bug#14017)
Paul Eggert [Mon, 12 Feb 2018 20:52:44 +0000 (12:52 -0800)]
Finish renaming to internal--daemon-sockname
* doc/lispref/processes.texi (Misc Network): Omit discussion of
internal--daemon-sockname, as non-Emacs code shouldn't rely on it.
* src/process.c (syms_of_process): Rename internal-daemon-sockname
to internal--daemon-sockname. All uses changed.
Paul Eggert [Mon, 12 Feb 2018 20:52:43 +0000 (12:52 -0800)]
Minor cleanups for server-name fix (Bug#24218)
* lisp/server.el (server--external-socket-initialized): Rename
from server-external-socket-initialised, since it should be
private and Emacs uses American spelling. All uses changed.
* src/emacs.c, src/lisp.h: Revert previous changes, as the
initialization is now done in src/process.c, which already
includes the relevant files.
* src/process.c (union u_sockaddr): Move decl to top level.
(external_sock_name, Fget_external_sockname): Remove, replacing
with Vinternal__external_sockname. All uses changed.
(init_process_emacs): Deduce socket name ourselves rather than
have main.c do it. Use conv_sockaddr_to_lisp instead of doing
it by hand. Conditionalize it on HAVE_GETSOCKNAME.
Matthew Leach [Mon, 12 Feb 2018 20:52:43 +0000 (12:52 -0800)]
Fix `server-name' and `server-socket-dir' for (Bug#24218)
* lisp/server.el: (server-external-socket-initialised): New
(server-name): Compute server name from `get-external-sockname'.
(server-socket-dir): Compute socket dir from
`get-external-sockname'.
(server-start): Don't check for existing server when an
uninitialised external socket has been passed to Emacs.
* src/emacs.c: (main): Obtain socket name via getsockname and pass
to `init_process_emacs'.
* src/lisp.h: (init_process_emacs): Add second parameter.
* src/process.c: (external_sock_name): New.
(get-external-sockname): New.
(init_process_emacs): Set `external_sock_name' to `sockname'
parameter.
Eli Zaretskii [Mon, 12 Feb 2018 18:02:36 +0000 (20:02 +0200)]
Avoid aborts in cm.c due to too small TTY frame
* src/frame.c (frame_windows_min_size): Limit TTY frames to a
minimum height large enough to allow for a menu bar, the mode
line, one text line and one echo-area line. This avoids aborts in
cm.c:cmcheckmagic. (Bug#30320)
Eli Zaretskii [Mon, 12 Feb 2018 17:52:48 +0000 (19:52 +0200)]
Another set of improvements in the Emacs manual
* doc/emacs/msdos-xtra.texi (MS-DOS Keyboard):
* doc/emacs/msdos.texi (Windows Keyboard):
* doc/emacs/mark.texi (Using Region):
* doc/emacs/frames.texi (Menu Mouse Clicks):
* doc/emacs/macos.texi (Mac / GNUstep Basics): Fix spelling of
keys. Reported by Michael Albinus <michael.albinus@gmx.de> in
emacs-manual-bugs@gnu.org.
* doc/emacs/glossary.texi (Glossary): Document that "c.f." is a
misspelling. Reported by Robert Pluim <rpluim@gmail.com>.
Various minor wording improvements. Suggested by Toon Claes
<toon@iotcl.com> in emacs-manual-bugs@gnu.org.
More minor changes. Suggested by Michael Albinus
<michael.albinus@gmx.de> in emacs-manual-bugs@gnu.org.
* doc/emacs/basic.texi (Moving Point): Move the description of the
bidi-related effects of the arrow keys from here ...
* doc/emacs/mule.texi (Bidirectional Editing): ... to here.
Explain the behavior of arrow keys between paragraphs.