* lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
keyvals label regexp more strict to better cope with unbalanced
brackets common in math documents.
* lisp/international/mule-util.el: Use lexical-binding.
(filepos-to-bufferpos): New function.
* lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
(Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
(Info-read-subfile, Info-search): Use 0-based file positions.
* lisp/international/mule-cmds.el (set-locale-environment):
Downcase the locale name before interning it. This is so the
'current-iso639-language' on MS-Windows matches the ':lang'
property of font-spec objects.
* lisp/international/fontset.el (setup-default-fontset): Exclude
from Symbola character ranges for symbols and punctuation covered
well by popular Unicode fonts. Prefer fixed-misc Unicode font, if
installed and where its coverage of symbols and punctuation is
known to be good. (Bug#20727)
* lisp/version.el (emacs-repository-version-git)
(emacs-repository--version-git-1): New functions,
split from emacs-repository-get-version.
(emacs-repository-get-version): Make the second argument meaningful.
Fix suggested by Stefan Monnier.
* lisp/help-fns.el (help-fns--signature):
Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
* lisp/help.el (help-split-fundoc, help--make-usage-docstring):
Don't treat `X specially, as help-fns--signature now handles this.
* lisp/international/fontset.el (setup-default-fontset): Only
prepend Symbola and FreeMono font specs for symbols and
punctuation; do not replace the default spec for them. This
should have better results when Symbola/FreeMono are not
installed. (Bug#20727)
* lisp/international/fontset.el (setup-default-fontset): Revert
the change "Configure Symbola font only if installed", since font
search is evidently not yet set up when this function is called.
(Bug#20727)
* lisp/emacs-lisp/warnings.el (display-warning):
If startup isn't complete, delay the warning.
* lisp/startup.el (normal-top-level, command-line):
Let display-warning automatically handle the needed delays.
Run delayed-warnings-hook.
* lisp/international/fontset.el (setup-default-fontset): Leave
only symbols and punctuation in the fontset setup for Symbola
font; remove "Greek and Coptic" and "Cyrillic Supplement".
(Bug#20798)
While investigating Bug#20759, I discovered other quoting problems:
C-h f mishandled characters like backslash and quote in function names.
This fix changes the behavior so that 'C-h f pcase RET' now
generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
because '(format "%S" '(` FOO))' returns "(\\` FOO)". A comment
in src/lread.c's read1 function says that the backslash will be
needed starting in Emacs 25, which implies that 'format' is
correct and the old pcase documention was wrong to omit the backslash.
* lisp/emacs-lisp/nadvice.el (advice--make-docstring):
* lisp/help-fns.el (help-fns--signature):
* lisp/help.el (help-add-fundoc-usage):
* lisp/progmodes/elisp-mode.el (elisp-function-argstring):
Use help--make-usage-docstring rather than formatting
help-make-usage.
* lisp/emacs-lisp/pcase.el (pcase--make-docstring):
Return raw docstring.
* lisp/help-fns.el (help-fns--signature): New arg RAW, to return
raw docstring. Take more care to distinguish raw from cooked dstrings.
(describe-function-1): Let help-fns--signature substitute
command keys.
* lisp/help.el (help--docstring-quote): New function.
(help-split-fundoc): Use it, to quote funny characters more
systematically.
(help--make-usage): Rename from help-make-usage, since this
should be private. Leave an obsolete alias for the old name.
(help--make-usage-docstring): New function.
* test/automated/help-fns.el (help-fns-test-funny-names): New test.
* lisp/thingatpt.el (thing-at-point--in-string-p)
(thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
(thing-at-point--read-from-whole-string): Rename from
old versions without "thing-at-point--" prefix.
Keep old versions as obsolete aliases. Update all uses.
(sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
(sh-font-lock-quoted-subshell): Make sure double quotes within single
quotes don't mistakenly end prematurely the surrounding string.