Fix bug #14513 with --enable-locallisppath not working on MS-Windows.

 Makefile.in (msys_to_w32): Modify to support d:\foo file names.
 (msys_lisppath_to_w32, msys_prefix_subst, msys_sed_sh_escape): New
 variables.
 (epaths-force-w32): Use them.

 epaths.nt (PATH_SITELOADSEARCH): Fix commentary.

 epaths.in: Fix commentary to PATH_SITELOADSEARCH.
Fix ChangeLog entry of last commit.
Minor improvements in nt/INSTALL.MSYS instructions.

 nt/INSTALL.MSYS: mingw-get is not a GUI program (yet).
 msys-automake is not suitable for MinGW builds.  Mention the
 --enable-locallisppath switch to msysconfig.sh.  Suggested by
 ׃scar Fuentes <ofv@wanadoo.es>.
Fix "make TAGS" on MS-Windows.

 lisp/Makefile.in (TAGS TAGS-LISP): Pass the (long) list of *.el files
 through xargs, to avoid failure due to MS-Windows limitations on
 command-line length.

 src/Makefile.in (ctagsfiles1, ctagsfiles2): Don't include *.m files.
 (ctagsfiles3): New variable, includes only *.m files.
 (TAGS): Use an explicit language name in the regular expressions,
 to avoid transformation of '/SOMETHING' by MSYS to
 'c:\MSYS\SOMETHING'.
* newcomment.el (comment-search-backward): Revert last change.

* emacs-lisp/smie.el (smie--matching-block-data): Minor simplification.

* progmodes/octave.el (octave-mode): Set comment-use-global-state
to t.  (Bug#14303)
* progmodes/octave.el (octave-function-header-regexp): Fix.
(octave-help-mode-finish-hook, octave-help-mode-finish):
Remove.  Just use temp-buffer-show-hook.
Merge from mainline.
* maintaining.texi (Branches): Remove text copied from other sources.
* maintaining.texi (Branches): Remove text copied from other sources.
* lisp/emacs-lisp/smie.el: Improve show-paren-mode behavior.
(smie--opener/closer-at-point): New function.
(smie--matching-block-data): Use it.  Don't match from right after an
opener or right before a closer.  Obey smie-blink-matching-inners.
Don't signal a mismatch for repeated inners like "switch..case..case".
ChangeLog fix
Improve previous bytecomp fix

* lisp/emacs-lisp/bytecomp.el (byte-compile-char-before)
(byte-compile-backward-char, byte-compile-backward-word):
Improve previous change, to handle non-explicit nil.
Minor tweak of nt/INSTALL.MSYS.
* xgselect.c (xg_select): Remove call to window_system_available
and g_main_context_pending at the top, so Gdk events (i.e. file
notify) are processed when Emacs is started with -nw.
* progmodes/octave.el (octave-add-log-current-defun): New function.
(octave-mode): Set add-log-current-defun-function.
(octave-goto-function-definition): Do not move point if not found.
(octave-find-definition): Enhance to try subfunctions first.
Don't advertise unsupported features in nt/INSTALL.MSYS.
Fix compilation issues for GNUStep and GLIB conflicts.

* configure.ac (HAVE_GLIB): Only set XGSELOBJ if HAVE_NS = no.
(with_file_notification): Don't set to gfile if with_ns = yes.

* src/process.c (wait_reading_process_output): Check for NS before GLIB.
GLIB may be linked in due to rsvg, but ns_select must be called.

* src/xgselect.c (xg_select): Remove call to window_system_available
and g_main_context_pending at the top, so Gdk events (i.e. file
notify) are processed when Emacs is started with -nw.

* src/xgselect.c: Remove unneeded include xterm.h
Fix bug #14575 with window-specific overlays with display props.

 src/bidi.c (bidi_fetch_char): Accept additional argument, the window
 being displayed, and pass it to compute_display_string_pos.
 (bidi_level_of_next_char, bidi_resolve_explicit_1)
 (bidi_paragraph_init): All callers changed.
 src/xdisp.c (init_from_display_pos, init_iterator)
 (handle_single_display_spec, next_overlay_string)
 (get_overlay_strings_1, reseat_1, reseat_to_string)
 (push_prefix_prop, Fcurrent_bidi_paragraph_direction): Set
 bidi_it.w member from it->w.
 (compute_display_string_pos): Accept additional argument, the
 window being displayed, and pass it to Fget_char_property.
 src/dispextern.h (struct bidi_it): New member w, the window being
 displayed.
 (compute_display_string_pos): Adjust prototype.
Tidy module initialisation functions
* eshell/em-term.el (eshell-visual-command-p): New function.
(eshell-term-initialize): Move long lambda to separate function eshell-visual-command-p.
* eshell/em-dirs.el (eshell-dirs-initialise): Add missing #' to lambda.
* eshell/em-script.el (eshell-script-initialize): Add missing #' to lambda.
Fix Eshell bug

* eshell/em-term.el (eshell-visual-command-p): Fix bug that
  causedoutput redirection to be ignored with visual commands.