binary "|" operator and closing block args delimiter. Remove
FIXME comment referring to Ruby 1.8-only syntax.
(ruby-smie--implicit-semi-p): Not after "|" operator.
(ruby-smie--closing-pipe-p): New function.
(ruby-smie--forward-token, ruby-smie--backward-token): Use it.
(ruby-smie-rules): Indent after "|".
* src/buffer.c (Frestore_buffer_modified_p): Sync it with
Fset_buffer_modified_p.
(Fforce_mode_line_update): New function, moved from subr.el.
(Fset_buffer_modified_p): Use them.
(syms_of_buffer): Defsubr Fforce_mode_line_update.
(tramp-sh-handle-file-local-copy): Don't write a message when
saving temporary files.
* net/tramp-smb.el (tramp-smb-handle-copy-directory): Fix bug when
both directories are remote.
(tramp-smb-handle-directory-files): Do not return double entries.
Do not expand full file names.
(tramp-smb-handle-insert-directory): Accept nil SWITCHES.
(tramp-smb-handle-write-region): Implement APPEND.
(tramp-smb-get-stat-capability): Fix a stupid bug.
* src/keyboard.c (command_loop_1): Use region-extract-function.
* src/insdel.c (Qregion_extract_function): Not static any more (can we
stop pretending that these vars can benefit from being marked static?).
Note: I used Emacs 24.3 to generate the uni-*.el files, owing to
unexplained (possibly harmless) differences that the current trunk's
use of lexical-binding for subr.el causes. Ref:
http://debbugs.gnu.org/15825#29
* admin/unidata/BidiMirroring.txt, admin/unidata/UnicodeData.txt:
Update to 6.3.0.
* lisp/international/uni-bidi.el, lisp/international/uni-category.el:
* lisp/international/uni-name.el, lisp/international/uni-numeric.el:
Regenerate.
* src/xfaces.c (lface_fully_specified_p): Let distant-foreground be
unspecified.
(realize_default_face): Remove assignment to distant-foreground if
unspecified.
Fixes: debbugs:15815
of "and", "or", "&&" and "||".
(ruby-smie--args-separator-p): Prohibit keyword "do" as the first
argument. Prohibit opening curly brace because it could only be a
block opener in that position.
(ruby-smie--forward-token, ruby-smie--backward-token): Separate
"|" from "&" or "*" going after it. That can happen in block
arguments.
(ruby-smie--indent-to-stmt): New function, seeks the end of
previous statement or beginning of buffer.
(ruby-smie-rules): Use it.
(ruby-smie-rules): Check if there's a ":" before a curly block
opener candidate; if there is, it's a hash.
* test/indent/ruby.rb: New examples.
No implicit semi after "^", "and" or "or".
(ruby-smie-grammar): New tokens: "and" and "or".
(ruby-smie--args-separator-p): Fix the check for tokens at POS.
Exclude "and" and "or". Remove "do" in order to work around token
priorities.
(ruby-smie-rules): Add all infix tokens. Handle the case of
beginning-of-buffer.
* lisp/Makefile.in (setwins, setwins_almost, setwins_for_subdirs): Simplify.
(setwins_almost, setwins_for_subdirs): Don't assume called from srcdir.
(custom-deps, finder-data, autoloads, update-subdirs): No need to cd.
(electric-indent-functions-without-reindent): New var.
(electric-indent-post-self-insert-function): Use it.
* lisp/emacs-lisp/gv.el (buffer-local-value): Add setter.
* net/tramp-compat.el (tramp-compat-load): New defun.
* net/tramp.el (tramp-handle-load): Use it.
* net/tramp-sh.el (tramp-sh-handle-add-name-to-file): Handle the case
"(numberp ok-if-already-exists)" correctly.
* lisp/progmodes/scheme.el (scheme-mode): Remove incorrect text from docstring.
* lisp/progmodes/prolog.el (prolog-mode): Remove incorrect text from docstring.
* lisp/emacs-lisp/lisp-mode.el (lisp-mode, lisp-interaction-mode, emacs-lisp-mode):
Remove incorrect text from docstring.