1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-22 07:09:54 +00:00
emacs/ChangeLog.2
2015-08-14 15:21:58 -07:00

9293 lines
365 KiB
Groff
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

2015-08-14 Stefan Monnier <monnier@iro.umontreal.ca>
* src/keyboard.c: Use false/true instead of 0/1 for booleans
* src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
2015-08-14 Michael Albinus <michael.albinus@gmx.de>
* tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect stderr
to /dev/null, this is done in `tramp-send-command-and-check'.
2015-08-14 Jürgen Hötzel <juergen@archlinux.org>
Flush file properties in Tramp.
* lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
(tramp-sh-handle-set-file-times):
* lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
(tramp-adb-handle-set-file-times): Flush the file properties of
the directory.
2015-08-14 Ronnie Schnell <ronnie@driver-aces.com>
* doc/emacs/misc.text (Amusements): Fixed typo.
2015-08-14 Eli Zaretskii <eliz@gnu.org>
Don't miss warnings about removing string text properties while dumping
* src/alloc.c (purecopy): Warn about removing a string's text
properties even when the same string was already pure-copied
earlier.
* lisp/progmodes/elisp-mode.el (elisp--xref-format)
(elisp--xref-format-extra): Fix the commentary.
2015-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049)
2015-08-13 Magnus Henoch <magnus.henoch@gmail.com>
* lisp/progmodes/compile.el: Assume 8-wide TABs (bug#21038)
* lisp/progmodes/compile.el: Use lexical-binding.
(compilation-move-to-column): Assume 8-wide TABs (bug#21038).
2015-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
(uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
* lisp/uniquify.el: Remove redundant `:group's.
2015-08-13 Paul Eggert <eggert@cs.ucla.edu>
Make add_to_log varargs
* src/alloc.c (run_finalizer_handler):
* src/charset.c (load_charset_map_from_vector):
* src/nsimage.m (ns_load_image):
* src/xfaces.c (load_pixmap, load_color2):
Simplify, now that add_to_log has a variable number of args.
* src/image.c (image_error): Take a variable number of args.
Callers simplified.
* src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
* src/xdisp.c (format_nargs, vadd_to_log): New functions.
(add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
* src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
Optional args for holiday-greek-orthodox-easter
* etc/NEWS: Document this.
* lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
Add optional args N and STRING, mimicking the API and code of
holiday-easter-etc. From suggestion by Foivos S. Zakkak (Bug#21256).
2015-08-13 Stephen Leake <stephen_leake@stephe-leake.org>
xref-find-definitions: Exclude more generic function items.
* lisp/emacs-lisp/cl-generic.el (cl--generic-search-method): Add doc string.
(cl--generic-find-defgeneric-regexp): New.
(find-function-regexp-alist): Add it.
* lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
elisp-mode.el, change to search for ";;; Code:"
(find-alias-regexp): Move here from elisp-mode.el, cleaned up.
(find-function-regexp-alist): Add them.
* lisp/progmodes/elisp-mode.el:
(elisp--xref-format, elisp--xref-format-extra): Change back to defvar due
to bug#21237.
(elisp--xref-find-definitions): Exclude co-located default methods for
generic functions. Also exclude implicitly declared defgeneric.
(elisp--xref-find-definitions): Handle C source properly. Exclude minor
mode variables defined by 'define-minor-mode'.
* test/automated/elisp-mode-tests.el: Declare generic functions, add
tests for them.
(xref-elisp-test-run): Fix bug.
(emacs-test-dir): Improve initial value.
(find-defs-defun-defvar-el): Don't expect defvar.
(find-defs-feature-el): Match change to find-feature-regexp.
2015-08-13 Eli Zaretskii <eliz@gnu.org>
Improve warning about purecopy of strings with properties
* src/alloc.c (purecopy): Show the offending string with the
warning about removing its text properties.
2015-08-12 Alan Mackenzie <acm@muc.de>
Introduce new macros to cover Emacs's new names in cl-lib.el.
This also eliminates `mapcan' warnings in XEmacs.
progmodes/cc-defs.el (c--mapcan-status): new variable to characterise
[X]Emacs versions.
(top-level): Require either 'cl or 'cl-lib, depending on
c--mapcan-status.
Change this back to cc-external-require from an eval-when-compile
require.
(c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
(c--delete-duplicates): New macros which expand into either old or new
names.
(c-make-keywords-re, c-lang-defconst, c-lang-const) Use the new macros
rather than the old names.
progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan rather
than mapcan.
progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
depending on c--mapcan-status.
(c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
(c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
(c-not-decl-init-keywords, c-not-primitive-type-keywords)
(c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
(c-decl-block-key, c-keywords, c-keywords-obarray)
(c-regular-keywords-regexp, c-primary-expr-regexp,
c-primary-expr-regexp)
(c-block-prefix-disallowed-chars, c-known-type-key,
c-nonlabel-token-key)
(c-make-init-lang-vars-fun): Use the new macros rather than the old
names.
2015-08-12 Oleh Krehel <ohwoeowho@gmail.com>
loadhist.el (read-feature): Conform to completing-read
* lisp/loadhist.el (read-feature): According to `completing-read'
documentation, if collection is a list, then it must be a list of
strings. And not a list of symbols like before.
2015-08-12 David Kastrup <dak@gnu.org>
Deal gracefully with up-events (Bug#19746)
* keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
(parse_modifiers_uncached): React gracefully to "up-" modifiers:
those may easily be injected by user-level Lisp code.
(read_key_sequence): Discard unbound up-events like unbound
down-events: they are even more likely only relevant for special
purposes.
While Emacs will not produce up-events on its own currently (those are
converted to drag or click events before being converted to
Lisp-readable structures), the input queue can be made to contain them
by synthesizing events to `unread-command-events'. Emacs should deal
consistently with such events.
2015-08-12 Eli Zaretskii <eliz@gnu.org>
Fix display of thin lines whose newline has line-height property of t
* src/xdisp.c (append_space_for_newline): Don't try to fix ascent
and descent values of non-empty glyph rows, since they could have
forced low values deliberately. (Bug#21243)
2015-08-12 Richard Stallman <rms@gnu.org>
Offer to combine multiple To or CC fields.
* sendmail.el (mail-combine-fields): New function.
(mail-send): Call 'mail-combine-fields'.
Don't decrypt encrypted files.
* mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
Handle encrypted mbox files.
* rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt the mbox
file if necessary.
Re-enable mime processing after decryption. Add 'decrypt' keyword.
* rmail.el (rmail-epa-decrypt-1): New subroutine.
(rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
In a mime message, reenable Mime and show the parts that
were shown before.
Add keyword "decrypt" if anything decrypted.
epa-inhibit inhibits auto-recognition of .gpg files
* lisp/epa-file.el (epa-inhibit): New variable.
(epa-file-handler): Check epa-inhibit.
2015-08-12 Artur Malabarba <bruce.connor.am@gmail.com>
* emacs-lisp/lisp-mnt.el (lm-header): save-excursion
2015-08-11 Fabián Ezequiel Gallina <fgallina@gnu.org>
Respect python.el imenu when semantic-mode is off
Fixes debbugs:21220
* lisp/cedet/semantic/wisent/python.el: Do not force
wisent-python-default-setup on python-mode-hook.
2015-08-11 Paul Eggert <eggert@cs.ucla.edu>
Give names to Unicode code points in C code
* src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
(ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
(NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
(RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
(LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
(LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
(OBJECT_REPLACEMENT_CHARACTER):
New named constants for Unicode code points.
* src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
* src/composite.c (char_composable_p):
* src/lread.c (readevalloop, read1):
* src/xdisp.c (get_next_display_element):
Use them.
* src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
Remove; now in character.h.
2015-08-11 Stephen Leake <stephen_leake@stephe-leake.org>
elisp--xref-find-definitions handle cl-defstuct default constructor
* lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
(elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
(elisp--xref-find-definitions): Handle cl-defstuct default constructor.
* test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
from xref-elisp-test for ease of debugging.
(xref-elisp-deftest): Rename from xref-elisp-test.
(find-defs-constructor): New test.
(find-defs-defgeneric-el): Match batch test config.
(compile): Required for find-defs compilation-minor-mode test.
(find-defs-defvar-el): Match code change.
(find-defs-face-el): Match code change.
* lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
Improve doc string.
2015-08-11 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/replace.el (perform-replace): Document `replacements'.
(perform-replace): Move the description of the format of `replacements' from
the body's comment to the docstring.
2015-08-10 Stephen Leake <stephen_leake@stephe-leake.org>
Rewrite elisp--xref-find-definitions to handle many more cases; add tests.
* lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location): deleted
(elisp--xref-format-cl-defmethod): new
(find-feature-regexp): new
(find-alias-regexp): new
(elisp--xref-make-xref): new
(elisp--xref-find-definitions): Rewrite using the above, handle many more
cases. Always output all available definitions.
(xref-location-marker): No need for special cases.
* test/automated/elisp-mode-tests.el: Add more tests of
elisp--xref-find-definitions, improve current tests.
2015-08-10 Phillip Lord <phillip.lord@newcastle.ac.uk>
* ChangeLog.2: Formatting update.
Formatting for one change entry did not follow standard ChangeLog
conventions and has now been updated.
2015-08-10 Eli Zaretskii <eliz@gnu.org>
Fix recording of events pushed onto unread-command-events
* src/keyboard.c (read_char): Make sure events read from
unread-command-events and unread-post-input-method-events are
always recorded by record_char. Reported by David Kastrup
<dak@gnu.org>, see
http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
2015-08-10 Samer Masterson <samer@samertm.com>
Set file buffer as current for "--file"
* lisp/startup.el (command-line-1): Set file buffer as current before
it is displayed so it can be used with options like
"--eval". (Bug#21095)
2015-08-10 Eli Zaretskii <eliz@gnu.org>
Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
* src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
after setting LC_ALL to the desired locale, to avoid affecting how
numbers are read and printed. (Bug#21223)
2015-08-10 Alan Mackenzie <acm@muc.de>
Fix "Invalid search bound (wrong side of point)" in fontification.
progmodes/cc-fonts.el (c-font-lock-declarators): After skipping an
initialization expression, check point is not beyond the fontification
limit.
2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
Fix DPI calculation when Xft/DPI is default
* src/xsettings.c (parse_settings): Don't use Xft/DPI default
value of -1, which evaluates to 2**32 - 1 (Bug#21152).
Remove unnecessary cast while we're in the neighborhood.
2015-08-09 Dmitry Gutov <dgutov@yandex.ru>
Add project-vc-search-path and project-vc-ignores
* lisp/progmodes/project.el (project-vc): New group.
(project-vc-search-path, project-vc-ignores): New variables.
(project--value-in-dir): Utility function.
(project-search-path, project-ignores): Use them.
* lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
at bos. Don't add extra `/'. Don't prepend with `*' if replaced.
2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
Fix some minor quoting issues with grave accent
* src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
Remove redundant quotes.
* src/doc.c (uLSQM, uRSQM): New macros.
* src/doc.c (Fsubstitute_command_keys):
* src/syntax.c (Finternal_describe_syntax_value): Follow the user
preference for quotes rather than hardcoding the grave style.
* src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
(re_match_2_internal) [DEBUG]: In debugging output, quote C
strings with "...", not `...'.
ChangeLog.2 ignores remote-tracking merges
* build-aux/gitlog-to-emacslog: Ignore commit logs matching
"Merge remote-tracking branch '.*'" too. See Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
2015-08-09 Nicolas Richard <youngfrog@members.fsf.org>
Use kpsewhich in ffap-latex-mode, if available
* lisp/ffap.el (ffap-latex-guess-rules): New variable.
(ffap-latex-mode): Use kpsewhich if available.
ffap: disallow braces in filenames for tex modes
* lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
braces in tex-related modes.
Remove useless backslashes from ffap-string-at-point-mode-alist
* lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
misleading backslashes from default value.
Augment docstring of ffap-string-at-point-mode-alist
* lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
and END are handled.
2015-08-09 Paul Eggert <eggert@cs.ucla.edu>
Remove no-op calls to substitute-command-keys
* lisp/org/org-src.el (org-edit-src-code)
(org-edit-fixed-width-region):
* lisp/simple.el (completion-setup-function):
Remove calls to substitute-command-keys that always just return
their argument.
2015-08-09 Daiki Ueno <ueno@gnu.org>
Utilize `quit-window' in epa.el
* epa.el (epa-exit-buffer-function): Set to `quit-window'.
(Bug#21210)
2015-08-09 Ivan Kanis <ivan@kanis.fr>
fix link to source code in help window
* lisp/help-fns.el (find-lisp-object-file-name): remove code that
will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
'No longer include timestamp in header of .elc files'. Add code
that will return .el source file in load-path.
2015-08-09 Artur Malabarba <bruce.connor.am@gmail.com>
* isearch.el (isearch-search-fun-default): (Bug#21164)
Respect `isearch-lax-whitespace' when searching through
`isearch-word'.
2015-08-08 Stefan Monnier <monnier@iro.umontreal.ca>
* test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
* org.el: Fix up some lexical scoping warnings, and use dolist
* lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
(org-set-regexps-and-options, org-assign-fast-keys)
(org-contextualize-keys, org-contextualize-validate-key)
(org-notes-order-reversed-p, org-local-logging, org-map-entries)
(org-find-olp, org-find-exact-heading-in-directory)
(org-cycle-agenda-files, org-release-buffers, org-fill-template)
(org-agenda-prepare-buffers, org-occur-in-agenda-files)
(org-replace-escapes): Use dolist.
(org-mode): Optimize away XEmacs-only code.
(org-refile-get-targets): Remove unused var `f'.
(org-fast-todo-selection): Remove unused var `e'.
(org-make-tags-matcher): Use dolist. Remove unused var `term'.
(org-fast-tag-selection): Use dolist. Remove unused var `e'.
(org-format-latex): Use dolist. Remove unused var `e'.
(org-toggle-heading): Access vars lexically rather than dynamically.
(org-backward-sentence, org-forward-sentence, org-meta-return)
(org-kill-line): Mark arg as unused.
(org-submit-bug-report): Silence compiler warning.
(org-occur-in-agenda-files): Don't use add-to-list on local vars.
(org-get-cursor-date): Remove unused var `tm'.
(org-comment-or-uncomment-region): Use standard name `_'.
(reftex-docstruct-symbol, reftex-cite-format): Declare to
silence byte-compiler.
(org-reftex-citation): Add `org--' prefix to dynamically scoped
`rds' var.
2015-08-08 Nicolas Petton <nicolas@petton.fr>
Merge remote-tracking branch 'origin/fix/subsequence-error-with-negative-sequences'
2015-08-08 Paul Eggert <eggert@cs.ucla.edu>
Electric quote if coding is undecided or no conv
* lisp/electric.el (electric--insertable-p): Also say that a
string is insertable if the buffer file coding system is undecided
or uses no conversion, as curved quotes will work in either case.
* configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
2015-08-08 Eli Zaretskii <eliz@gnu.org>
Fix overlay string display regressions introduced in Emacs 24.5
* src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
buffer position, if we move the iterator to a new position as
result of jumping over text covered by a "replacing" display
property.
* test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
Support recovery from C stack overflow on MS-Windows
* src/w32fns.c (w32_reset_stack_overflow_guard)
(stack_overflow_handler): New functions for handling C stack
overflow exceptions.
(my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
specially, and zero out except_addr if we do.
(globals_of_w32fns): Initialize dwMainThreadId in non-interactive
mode.
* src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
the MinGW build, but the code guarded by that is for Posix hosts.
* src/keyboard.c (command_loop) [WINDOWSNT]: Call
w32_reset_stack_overflow_guard.
* nt/inc/ms-w32.h (sigjmp_buf): New typedef.
(sigsetjmp): New macro.
(w32_reset_stack_overflow_guard): Declare the prototype.
* configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
2015-08-07 Phillip Lord <phillip.lord@newcastle.ac.uk>
Improve error signalling for seq-subseq.
* lisp/seq.el (seq-subseq): The existing behaviour is to error
when indexes are too large, but to silently ignore numbers which
are too negative for lists. String and vector handling errors in
both cases. This has been regularlised. Error signalling behaviour
has been explicitly added to the docstring.
* lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
therefore also impacted by this change. The docstring has been
updated to reflect this.
* test/automated/seq-tests.el (test-seq-subseq): Tests have been
added for these exceptional cases, as well as one non exceptional
base case.
2015-08-07 Jürgen Hötzel <juergen@archlinux.org>
Improve error checking in tramp-adb.el
* lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
Improve error checking. "ls -l" on Android in Enforcing mode can
print "lstat './FILENAME failed: Permission denied".
2015-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
non-struct vectors.
2015-08-07 Stephen Leake <stephen_leake@stephe-leake.org>
lisp/window.el: fix typo, more `display-buffer-use-some-frame'
* lisp/window.el: fix typo that broke build
(display-buffer--action-function-custom-type): add
`display-buffer-use-some-frame'
(display-buffer): add `display-buffer-use-some-frame' to doc string
Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
* lisp/window.el (display-buffer-use-some-frame): Add support for
'inhibit-same-window in alist.
* doc/windows.texi (display-buffer-use-some-frame): Doc support for
'inhibit-same-window in alist.
2015-08-07 Eli Zaretskii <eliz@gnu.org>
Avoid infinite loop in display of invisible text in strings
* src/xdisp.c (handle_invisible_prop): If the next change of
invisibility spec does not mean the beginning of a visible text,
update the string position from which to start the search for the
next invisibility change. This avoids an infinite loop when we
have more than one invisibility spec that are made inactive by
buffer-invisibility-spec. Simplify code. (Bug#21200)
* test/redisplay-testsuite.el (test-redisplay-4): Add a test case
for the situation that caused bug #21200.
2015-08-06 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Simplify describe-package-1
(package-help-section-name-face): New face.
(package--print-help-section): New function.
(describe-package-1): Refactor section printing.
(package-make-button): Use face instead of font-lock-face, which
doesn't work on buttons.
* lisp/emacs-lisp/package.el: Define custom faces
(package-name-face, package-description-face)
(package-status-built-in-face, package-status-external-face)
(package-status-available-face, package-status-new-face)
(package-status-held-face, package-status-disabled-face)
(package-status-installed-face, package-status-dependency-face)
(package-status-unsigned-face, package-status-incompat-face)
(package-status-avail-obso-face): New faces.
(package-menu--print-info-simple): Use them.
2015-08-05 Paul Eggert <eggert@cs.ucla.edu>
Fix some confusion with format
* lisp/allout-widgets.el (allout-widgets-before-change-handler)
(allout-graphics-modification-handler):
Protect arbitrary string in a format context with "%s" format.
* lisp/avoid.el:
* lisp/cedet/semantic/bovine/scm.el: Fix comment.
* lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
* lisp/erc/erc-button.el (erc-button-beats-to-time):
* lisp/gnus/message.el (message-send-form-letter):
* lisp/org/ob-core.el (org-babel-check-evaluate)
(org-babel-confirm-evaluate):
* lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
* lisp/org/ox-latex.el (org-latex-compile):
* lisp/org/ox-man.el (org-man-compile):
* lisp/org/ox-odt.el (org-odt-template):
* lisp/org/ox-texinfo.el (org-texinfo-compile):
* lisp/progmodes/prolog.el (prolog-help-info)
(prolog-view-predspec):
* lisp/progmodes/ruby-mode.el (ruby-parse-partial):
* lisp/progmodes/verilog-mode.el (verilog-showscopes):
* lisp/textmodes/rst.el (rst-replace-lines):
Change (message (format ...)) to (message ...), and likewise
for error. This lessens the probability of confusion when the
output of format contains %.
2015-08-05 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/replace.el (replace-character-fold): Default to nil
* lisp/character-fold.el: Fix lax whitespace
(character-fold-table): Don't make space match other whitespace chars.
(character-fold-to-regexp): Simplify lax behaviour.
2015-08-05 Dmitry Gutov <dgutov@yandex.ru>
Preserve window point in xref-find-definitions-other-window
Fix the problem reported by Ingo Logmar in
http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
* lisp/progmodes/xref.el (xref--goto-char): Extract from
xref--goto-location.
(xref--pop-to-location): Use it. Replace xref--goto-location with
a direct xref-location-marker call.
(xref--show-location): Likewise.
(xref--display-position): Use xref--goto-char.
* lisp/progmodes/project.el: Add a paragraph to the front matter.
2015-08-04 David Kastrup <dak@gnu.org>
Do not overwrite preexisting contents of unread-command-events
* lisp/vc/emerge.el (emerge-show-file-name):
* lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
(vhdl-comment-insert, vhdl-hooked-abbrev):
* lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
* lisp/progmodes/fortran.el (fortran-window-create-momentarily):
* lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
* lisp/progmodes/cperl-mode.el (cperl-putback-char):
* lisp/obsolete/vip.el (vip-escape-to-emacs)
(vip-prefix-arg-value, vip-prefix-arg-com):
* lisp/obsolete/terminal.el (te-escape-extended-command-unread):
* lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
(quail-tibkey-update-translation):
* lisp/leim/quail/lrt.el (quail-lrt-update-translation):
* lisp/leim/quail/lao.el (quail-lao-update-translation):
* lisp/leim/quail/japanese.el (quail-japanese-update-translation)
(quail-japanese-self-insert-and-switch-to-alpha):
* lisp/leim/quail/hangul.el (hangul2-input-method)
(hangul3-input-method, hangul390-input-method):
* lisp/language/hanja-util.el (hangul-to-hanja-char):
* lisp/international/robin.el (robin-input-method):
* lisp/international/quail.el (quail-start-translation)
(quail-start-conversion):
* lisp/gnus/gnus-art.el (gnus-article-describe-key)
(gnus-article-describe-key-briefly):
* lisp/eshell/em-hist.el (eshell-list-history):
* lisp/term.el (term-dynamic-list-input-ring)
(term-dynamic-list-completions):
* lisp/subr.el (momentary-string-display):
* lisp/simple.el (read-quoted-char):
* lisp/pcomplete.el (pcomplete-show-completions):
* lisp/kmacro.el (kmacro-repeat-on-last-key):
* lisp/info.el (Info-summary):
* lisp/ehelp.el (electric-help-command-loop):
* lisp/ebuff-menu.el (electric-buffer-list)
(Electric-buffer-menu-exit):
* lisp/double.el (double-translate-key):
* lisp/comint.el (comint-dynamic-list-input-ring)
(comint-dynamic-list-completions): Do not overwrite preexisting
contents of `unread-command-events' when putting new events into
it.
2015-08-04 Daniel Colascione <dancol@dancol.org>
Improve ansi-color filtering of unrecognized escape sequences
* lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
escape sequences.
(ansi-color-filter-apply): Filter out unrecognized escape sequences
(ansi-color-apply): Filter out unrecognized escape sequences
2015-08-04 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
definitions to `easy-menu-define', improve a couple to account for
async, and add a couple of new commands.
2015-08-03 Jürgen Hötzel <juergen@archlinux.org>
* lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
2015-08-03 Ingo Lohmar <i.lohmar@gmail.com>
Add new 'calendar-weekend-days' option
Make the days receiving the 'calendar-weekend-header' face freely
customizable, as they differ by region/culture.
* doc/emacs/calendar.texi (Move to Beginning or End): Document the
new variable.
* lisp/calendar/calendar.el (calendar-generate-month): New variable
calendar-weekend-days to customize day header fontification.
2015-08-03 Paul Eggert <eggert@cs.ucla.edu>
Redo text-quoting-style variable
Rename help-quote-translation to text-quoting-style,
and use symbols rather than characters as values.
This follows suggestions along these lines by Alan Mackenzie in:
http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
and by Drew Adams in:
http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
* doc/lispref/help.texi (Keys in Documentation)
* etc/NEWS:
* lisp/cus-start.el (standard):
* src/doc.c (Fsubstitute_command_keys, syms_of_doc):
Document and/or implement the new behavior instead of the old.
(syms_of_doc): New symbols 'grave' and 'straight'.
2015-08-03 Nikolaus Rath <Nikolaus@rath.org>
nnimap.el: Use IMAP MOVE extension if available
* lisp/gnus/nnimap.el (nnimap-request-move-article)
(nnimap-process-expiry-targets, nnimap-split-incoming-mail):
Use MOVE extension if available.
nnimap.el: Explicitly ask for server capabilities
* lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
capabilities will be returned in the login-result.
2015-08-02 Paul Eggert <eggert@cs.ucla.edu>
Treat help strings like other doc strings
* doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
* lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
substitute-command-keys.
* src/keyboard.c (show_help_echo, parse_menu_item): Call
substitute-command-keys on the help string before displaying it.
Also mention "curly quotes"
See Drew Adams's email in:
http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
* doc/lispref/help.texi (Keys in Documentation):
Add index entry "curly quotes".
* etc/NEWS: Use the phrase "curly quotes" too.
ede-proj-target-makefile docstring tweaks
* lisp/cedet/ede/proj.el (ede-proj-target-makefile):
Consistently use "all:" to describe the all: target,
replacing three different and confusingly-quoted usages.
2015-08-02 Eli Zaretskii <eliz@gnu.org>
Whitespace fixes
2015-08-02 Evgeny Fraimovitch <johnlen7@gmail.com> (tiny change)
Don't abort emacsclientw when -a was specified
* lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
out if we are in emacsclientw and -a was specified.
2015-08-02 Eli Zaretskii <eliz@gnu.org>
Fix handling of 1st keystroke on MS-Windows
* src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
This is needed to correctly handle the session's first keystroke,
if it has any modifiers. (Bug#19994)
2015-08-02 Paul Eggert <eggert@cs.ucla.edu>
Substitute some customization etc. doc strings
These changes apply substitute-command-keys to some
doc strings that were going through untranslated
when creating customization or other widgets.
* lisp/cus-edit.el (custom-group-value-create):
* lisp/wid-edit.el (widget-default-create):
(widget-push-button-value-create):
Treat the widget tag as a doc string.
* lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
Treat the :documentation value as a doc string.
* lisp/wid-edit.el (widget-choose):
Treat the choice names as doc strings.
(widget-default-create): Treat the :doc value as a doc string.
(widget-toggle-value-create): Treat the :on and :off values
as doc strings.
(widget-documentation-string-value-create):
Substitute the doc string.
2015-08-01 Dmitry Gutov <dgutov@yandex.ru>
Add a second argument to project-ignores
* lisp/progmodes/project.el (project-ignores): Add a second
argument DIR.
* lisp/progmodes/project.el (project-ignores): Only include the VC
ignores if DIR is the VC root.
* lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
2015-08-01 Eli Zaretskii <eliz@gnu.org>
Prevent incorrect display when 'line-spacing' variable is set
* src/xdisp.c (try_window_id): Give up this optimization if the
buffer has its 'line-spacing' variable set non-nil.
2015-08-01 Dmitry Gutov <dgutov@yandex.ru>
Don't pass NOVISIT to find-file
* lisp/progmodes/etags.el (next-file):
Don't pass NOVISIT to find-file (bug#21175).
Ignore buffer restriction for tags-loop-eval
* lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
restriction (bug#21167).
2015-08-01 Eli Zaretskii <eliz@gnu.org>
Fix a thinko in 'ffap-gopher-at-point'
* lisp/ffap.el (ffap-gopher-at-point): Fix last change. (Bug#21168)
Honor 'line-spacing' for empty lines
* src/xdisp.c (append_space_for_newline): Honor 'line-height'
property and 'line-spacing' frame parameter or variable or
property for empty lines, by doing the same processing as in
x_produce_glyph for newline characters. (Bug#21165)
2015-08-01 Paul Eggert <eggert@cs.ucla.edu>
Simplify by assuming C99 integer division
* src/floatfns.c (ceiling2, floor2, truncate2):
Assume C99 (i.e., Fortran) semantics for integer division.
This simplifies the code.
2015-07-31 Paul Eggert <eggert@cs.ucla.edu>
Don't overflow if computing approximate percentage
* lisp/align.el (align-region):
* lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
* lisp/cedet/semantic/wisent.el (wisent-parse-region):
* lisp/cus-edit.el (custom-buffer-create-internal):
* lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
(checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
(checkdoc-next-message-error):
* lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
* lisp/epa.el (epa-progress-callback-function):
* lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
* lisp/ffap.el (ffap-menu-rescan):
* lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
* lisp/gnus/nndiary.el (nndiary-retrieve-headers):
* lisp/gnus/nneething.el (nneething-retrieve-headers):
* lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
* lisp/gnus/nnmh.el (nnmh-retrieve-headers):
* lisp/gnus/nnml.el (nnml-retrieve-headers):
* lisp/gnus/nnspool.el (nnspool-retrieve-headers):
* lisp/gnus/nntp.el (nntp-retrieve-headers)
(nntp-retrieve-articles):
* lisp/imenu.el (imenu--relative-position):
* lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
(skkdic-convert-okuri-nasi):
* lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
* lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
* lisp/org/org-list.el (org-update-checkbox-count):
* lisp/org/org.el (org-table-map-tables)
(org-update-parent-todo-statistics):
* lisp/play/decipher.el (decipher-insert-frequency-counts)
(decipher-analyze-buffer):
* lisp/profiler.el (profiler-format-percent):
* lisp/progmodes/cc-cmds.el (c-progress-update):
* lisp/progmodes/cpp.el (cpp-highlight-buffer):
* lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
(idlwave-list-load-path-shadows):
* lisp/progmodes/opascal.el (opascal-step-progress):
* lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
(vhdl-scan-directory-contents):
* lisp/textmodes/bibtex.el (bibtex-progress-message):
* lisp/textmodes/flyspell.el (flyspell-small-region)
(flyspell-external-point-words):
* lisp/textmodes/table.el (table-recognize):
Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
progress-report percentages and the like. This avoids problems
if (* 100 NUMERATOR) would overflow.
* lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
* lisp/gnus/registry.el (registry-reindex):
Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
* lisp/descr-text.el (describe-char):
* lisp/org/org-colview.el (org-nofm-to-completion):
* lisp/ps-print.el (ps-plot):
* lisp/simple.el (what-cursor-position):
Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
more-complicated and less-accurate approximation.
Fix some int overflows in profiler.c
* src/profiler.c (make_log): Make args EMACS_INT, not int,
to avoid unwanted behavior on 'int' overflow.
(make_log, evict_lower_half, record_backtrace):
Use ptrdiff_t, not int, for object indexes.
Port to pedantic memcpy
* src/keyboard.c (menu_bar_items, tool_bar_items):
* src/xrdb.c (magic_db):
Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
Merge from gnulib
This incorporates:
2015-07-29 time_rz: port to pedantic memcpy
* lib/time_rz.c: Copy from gnulib.
2015-07-31 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print): Fix bug
When updating the very last entry, tabulated-list-print would
erase it and then try to look at the next one (which obviously
isn't there).
2015-07-31 Eli Zaretskii <eliz@gnu.org>
Allow to use the old key processing code on MS-Windows
* src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
New variable.
(w32_wnd_proc): Use it to invoke the old code that processed
character keys, as fallback, when this variable is non-nil. Fix
typos in comments. (Bug#19994)
2015-07-31 Ilya Zakharevich <ilya@math.berkeley.edu>
Improve handling of Unicode keyboard input on MS-Windows
* src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
(FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
(w32_wnd_proc): Call deliver_wm_chars to process non-special keys
upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages. If that is
successful, don't call TranslateMessage. (Bug#19994)
2015-07-30 Dmitry Gutov <dgutov@yandex.ru>
Fix default-directory in changeset diffs after vc-print-log
* lisp/vc/log-view.el (log-view-diff-common): Move the
revision-granularity check back into log-view-diff-changeset.
(log-view-diff-changeset): Bind default-directory to the current
VC root.
Rename project-directories to project-roots
* lisp/progmodes/project.el (project-search-path-function)
(project-search-path): Update the docstring.
(project-directories): Rename to `project-roots', update all
callers and implementations accordingly.
(project-root): Remove.
* lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
as the default file mask.
2015-07-30 Eli Zaretskii <eliz@gnu.org>
Support long URLs in w32-shell-execute
* src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
and filename_to_ansi to convert the DOCUMENT argument, as it could
be a URL that is not limited to MAX_PATH characters. Instead, use
MultiByteToWideChar directly, and allocate heap storage as
required to accommodate the converted string. Likewise with
non-Unicode operation. Ensure OPERATION is null-terminated, even
if it is longer than 32K bytes. (Bug#21158)
2015-07-30 Stephen Leake <stephen_leake@stephe-leake.org>
vc-mtn-find-revision handle null rev.
* lisp/vc/vc-mtn.el (vc-mtn-find-revision): handle null rev
2015-07-29 Stephen Leake <stephen_leake@stephe-leake.org>
Add docs for display-buffer action display-buffer-use-some-frame
* lisp/window.el (display-buffer-use-some-frame): improve doc string
* doc/lispref/windows.texi (Display Action Functions): add
display-buffer-use-some-frame
* etc/NEWS: mention display-buffer-use-some-frame
Add display-buffer action display-buffer-use-some-frame
* lisp/window.el (display-buffer-use-some-frame): new
Handle vc-mtn error more gently
* lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): return "" when branch is nil
2015-07-29 Michael Albinus <michael.albinus@gmx.de>
Fix Tramp problems with multihops, and nc.
* lisp/net/tramp-cache.el (tramp-get-file-property)
(tramp-set-file-property, tramp-flush-file-property)
(tramp-get-connection-property, tramp-set-connection-property)
(tramp-flush-connection-property): Remove hop from vector.
* lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
* lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
(tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
netstat to 60".
(tramp-sh-handle-start-file-process): Do not show hops in prompt.
* lisp/net/tramp.el (tramp-handle-file-name-as-directory)
(tramp-handle-file-name-directory, tramp-handle-file-remote-p):
Keep hop in result.
* test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
Add hop tests.
2015-07-29 Eli Zaretskii <eliz@gnu.org>
Resurrect highlighting of repeated words by Flyspell Mode
* lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
characters between point and the doublon candidate, so that
flyspell-word-search-backward finds it. (Bug#21157)
Fix redisplay of large images on expose events
* src/xdisp.c (expose_window, expose_area): Avoid comparisons
between signed negative values and unsigned values. This
prevented redisplay on expose events when the window showed a very
large image.
2015-07-29 Paul Eggert <eggert@cs.ucla.edu>
Remove unnecessary stack overflow dependency
* configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
Don't worry about $ac_cv_header_sys_resource_h and
$ac_cv_func_getrlimit, as they're no longer needed for this.
Problem reported by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
2015-07-28 Andy Moreton <andrewjmoreton@gmail.com> (tiny change)
Pacify compilation -Wincompatible-pointer-types warnings
* src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
warning.
(CompareStringW_Proc): New typedef.
(w32_compare_strings): Use it, to pacify compiler warnings under
"-Wincompatible-pointer-types".
* src/w32fns.c (GetDiskFreeSpaceExW_Proc)
(GetDiskFreeSpaceExA_Proc): New typedefs.
(Ffile_system_info): Use them, to pacify compiler warnings under
"-Wincompatible-pointer-types".
2015-07-28 Paul Eggert <eggert@cs.ucla.edu>
Fix subscript error in calculate_direct_scrolling
Use slightly-longer cost vectors. Without this change,
calculate_direct_scrolling can have a subscript violation when
FRAME_LINES (frame) <= delta.
* src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
(line_ins_del, do_line_insertion_deletion_costs):
Allocate and use slightly-larger cost vectors, ones based on
FRAME_TOTAL_LINES instead of FRAME_LINES.
Fix uninitalized value in encode_coding_object
* src/coding.c (encode_coding_object): Also initialize
coding->src_pos and coding->src_pos_byte when NILP (src_object).
This avoids later use of uninitialized storage.
2015-07-27 Xue Fuqiao <xfq.free@gmail.com>
* doc/lispref/variables.texi (Variable Aliases): Typo fix. (Bug#21141)
2015-07-27 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib
This incorporates:
2015-07-27 time_rz: port better to MinGW
2015-07-27 time: port __need_time_t to MinGW
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
* lib/time-internal.h: New file, from gnulib.
2015-07-27 Eli Zaretskii <eliz@gnu.org>
Handle NULL pointers in w32heap.c allocation routines
* src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
freeable".
(realloc_after_dump, realloc_before_dump, free_before_dump):
Handle NULL pointers gracefully, as Emacs now seems to expect
that.
Fix Cairo build without PNG
* src/image.c: Define PNG function when USE_CAIRO is defined, even
if HAVE_PNG is not. (Bug#21133)
MS-Windows follow-up for recent TZ-related changes
* nt/mingw-cfg.site (ac_cv_header_pthread_h)
(gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
picking up 'struct timespec' from pthread.h, if it is installed on
the user's system. We want either the definitions from MinGW
system headers, if available, or the Gnulib replacements if not.
* nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
lib/time.h.
* lib/time.in.h: Don't let __need_* symbols affect what happens on
MinGW. These symbols are defined by MinGW system headers, but we
don't want that to affect whether Gnulib portions of the header
are or aren't used.
2015-07-26 Paul Eggert <eggert@cs.ucla.edu>
* src/ftfont.c (ftfont_close): Add comment re Bug#20890.
New optional ZONE arg for format-time-string etc.
This simplifies time conversions in other time zones.
It also prevents display-time-world tampering with TZ (Bug#21020).
* admin/admin.el (add-release-logs):
Use improved add-log-time-format API.
* admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
(GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
* configure.ac (tzalloc): Remove test for this, since
Emacs no longer uses HAVE_TZALLOC directly.
* doc/lispref/os.texi (Time of Day, Time Conversion)
(Time Parsing):
* etc/NEWS: Document the new behavior.
Merge from gnulib, incorporating:
2015-07-25 strftime: fix newly-introduced bug on Solaris
2015-07-23 fprintftime, strftime: use timezone_t args
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
* m4/time_h.m4:
Update from gnulib.
* lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
New files from gnulib.
* lisp/time-stamp.el (time-stamp-string):
* lisp/time.el (display-time-world-list)
(display-time-world-display):
Use new API, with time zone arg.
* lisp/time.el (display-time-world-display):
Fix race when current-time advances while we're running.
* lisp/vc/add-log.el (add-log-iso8601-time-zone)
(add-log-iso8601-time-string): Accept optional time zone arg.
* lisp/vc/add-log.el (add-change-log-entry):
* lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
* nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
Add rules for the time module, since they're now needed
for tzalloc etc.
* src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
(emacs_getenv_TZ, emacs_setenv_TZ): New decls.
* src/editfns.c: Include errno.h.
(set_time_zone_rule): Omit unnecessary forward decl.
(initial_tz): Remove, replacing with ...
(local_tz, wall_clock_tz, utc_tz): New static vars and constants.
(tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
(emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
(tzlookup): New static functions.
(init_editfns): New arg DUMPING. All uses changed.
(init_editfns): Omit most initialization if dumping, not if
!initialized. Initialize wall_clock_tz and local_tz.
(emacs_nmemftime, format_time_string): Time zone argument can now
be any time zone, not just a boolean for UTC or local time. All
callers changed.
(Fformat_time_string, Fencode_time, Fcurrent_time_string)
(Fcurrent_time_zone): New optional arg ZONE.
(Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
the same form as with the other new additions.
(decode_time_zone): Remove; no longer needed.
(tzvalbuf): Now file-scope.
(emacs_getenv_TZ, emacs_setenv_TZ): New functions.
(syms_of_editfns): Define Qwall.
* src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
* src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
[!HAVE_TZALLOC]:
Remove; now supplied by gnulib.
* src/emacs.c (main):
* src/lisp.h (init_editfns): Adjust to init_editfns API change.
2015-07-26 Shigeru Fukaya <shigeru.fukaya@gmail.com>
Fix infinite loop in delete-consecutive-dups
* lisp/subr.el (delete-consecutive-dups): Work even if the last
element is nil (Bug#20588). Avoid rescan of a circular list in
deletion of last element.
2015-07-26 Martin Rudalics <rudalics@gmx.at>
Have `x-frame-geometry' return nil for terminal and initial frames (Bug#21132)
* src/nsfns.m (Fx_frame_geometry):
* src/xfns.c (Fx_frame_geometry): Return nil for initial and
terminal frames.
* src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
(Fx_frame_geometry): Return nil for terminal frames
2015-07-26 HOSOYA Kei <hosoyakei.free@gmail.com> (tiny change)
* etc/tutorials/TUTORIAL.ja: Improve translation.
2015-07-25 Eli Zaretskii <eliz@gnu.org>
Avoid crashes when w32 GUI functions are called in -batch
* src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
(Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
FRAME_W32_WINDOW for initial frame. (Bug#21132)
Fix flyspell-check-previous-highlighted-word
* lisp/textmodes/flyspell.el
(flyspell-check-previous-highlighted-word): Really accept a
numeric argument, as the doc string describes. Fix an off-by-one
error in looking up overlays, so invocation with point immediately
after a word would check that word. Clarify the doc string as
Suggested by N. Jackson <nljlistbox2@gmail.com>. (Bug#21129)
2015-07-24 Michael Albinus <michael.albinus@gmx.de>
Minor cleanup in tramp-tests.el
* test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
Implement using the documented interface
`tramp-connection-properties', rather than with internal functions.
2015-07-24 Harald Hanche-Olsen <hanche@math.ntnu.no> (tiny change)
Pass lambdas to `skeleton-read'
* lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
* lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
lambdas to `skeleton-read' (bug#20386).
2015-07-24 Eli Zaretskii <eliz@gnu.org>
* INSTALL (DETAILED BUILDING AND INSTALLATION): Mention --without-imagemagick.
Don't require GUI frames and mouse for Flyspell menus
* lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
(flyspell-emacs-popup): Require neither a GUI frame nor mouse
support, since pop-up menus work with text terminals and can be
controlled via the keyboard.
Improve documentation of Flyspell commands
* doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
can be invoked via the keyboard. Mention those commands by name
and add them to the fn index. (Bug#21125)
2015-07-23 Michael Albinus <michael.albinus@gmx.de>
Fix some Tramp problems with HP-UX
* lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
Add "tab0" to stty call.
* test/automated/tramp-tests.el (tramp-persistency-file-name):
Set to nil.
(tramp--test-hpux-p): New defun.
(tramp--test-utf8): Use it.
2015-07-22 Glenn Morris <rgm@gnu.org>
* build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
2015-07-22 Eli Zaretskii <eliz@gnu.org>
Fix point positioning in ffap-next-guess
* lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
as our callers expect. This was clobbered as part of fixing
bug#5673. (Bug#21107)
(ffap-gopher-at-point): Set ffap-string-at-point-region.
2015-07-22 Martin Rudalics <rudalics@gmx.at>
Fix customization type of `even-window-sizes'.
* lisp/window.el (even-window-sizes): Fix customization type.
2015-07-22 Martin Rudalics <rudalics@gmx.at>
Optionally even widths of `display-buffer' windows. (Bug#21100)
* lisp/window.el (quit-restore-window): Restore width if
requested.
(display-buffer-record-window): Record width when window is
reused and horizontally combined.
(even-window-sizes): New option to allow evening window widths.
(even-window-heights): Defalias to `even-window-sizes'.
(window--even-window-heights): Rename to
`window--even-window-sizes'. Handle side-by-side windows.
(display-buffer-use-some-window): Call `window--even-window-sizes'
instead of `window--even-window-heights'.
* lisp/help.el (resize-temp-buffer-window): Fix indentation.
* doc/lispref/windows.texi (Choosing Window Options): Describe
`even-window-sizes'.
(Coordinates and Windows): Fix typo.
2015-07-22 Stephen Leake <stephen_leake@stephe-leake.org>
add file name to autoload error messages.
* lisp/emacs-lisp/autoload.el (autoload-save-buffers): add condition-case
to add file name to error message.
2015-07-22 Michael Albinus <michael.albinus@gmx.de>
Use 0.0.0.1 as test host in Tramp
* lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
Use 0.0.0.1 as test host.
2015-07-21 Stefan Monnier <monnier@iro.umontreal.ca>
(advice--called-interactively-skip): Fix inf-loop (bug#21083)
* lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
Fix inf-loop (bug#21083).
2015-07-21 Glenn Morris <rgm@gnu.org>
* test/automated/package-test.el (package-test-signed):
Update for recent changes.
* test/automated/elisp-mode-tests.el
(elisp-xref-finds-both-function-and-variable)
(elisp-xref-finds-only-function-for-minor-mode):
Update for recent xref name changes.
2015-07-21 Dmitry Gutov <dgutov@yandex.ru>
Make eldoc timer non-repeatable
* lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
non-repeatable. Since it's on post-command hook, that just wasted
CPU cycles.
2015-07-21 Michael Albinus <michael.albinus@gmx.de>
Mention `tramp-connection-properties' in NEWS
Sync with Tramp repository
* doc/misc/tramp.texi (Configuration): Note, that Tramp must be
required prior changing its configuration.
(Connection caching, Predefined connection information)
(Remote shell setup): Fix typos.
(Predefined connection information): Describe, how to overwrite
parameters of `tramp-methods'.
(Remote programs, Remote processes, Traces and Profiles):
Simplify example.
(Remote programs): Remove superfluous comment.
* doc/misc/trampver.texi: Update release number.
* lisp/net/tramp-cache.el (tramp-connection-properties): Adapt docstring.
* lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
(tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
(tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
"gvfs-mkdir -p ..." does not work robust.
(tramp-gvfs-maybe-open-connection): Adapt `tramp-get-method-parameter' call.
* lisp/net/tramp-sh.el (tramp-methods):
Add `tramp-remote-shell-login' parameter where it fits.
(tramp-get-remote-path): Use it.
(tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
(all): Adapt `tramp-get-method-parameter' calls.
* lisp/net/tramp.el (tramp-methods): Adapt docstring.
(tramp-get-method-parameter): Replace argument METHOD by VEC.
Check also for hits in `tramp-connection-properties'. Adapt docstring.
(tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
(all): Adapt `tramp-get-method-parameter' calls.
* lisp/net/trampver.el Update release number.
* test/automated/tramp-tests.el (tramp--instrument-test-case):
Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
(tramp-test13-make-directory, tramp--test-adb-p)
(tramp--test-smb-or-windows-nt-p): Simplify.
(tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
(tramp--test-special-characters): Fix docstring. Add gvfs and ftp tests.
(tramp--test-utf8): Fix docstring.
2015-07-20 Dmitry Gutov <dgutov@yandex.ru>
Add new xref-query-replace command
* lisp/progmodes/xref.el (xref--match-buffer-bounds): New
function, extracted from xref-pulse-momentarily.
(xref-query-replace): New command.
(xref--query-replace-1): New helper function.
(xref--xref-buffer-mode-map): Add `r' binding.
2015-07-20 Paul Eggert <eggert@cs.ucla.edu>
Simplify icalendar decoding of Z dates
* lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
Simplify calculation of time strings with trailing "Z".
2015-07-19 Dmitry Gutov <dgutov@yandex.ru>
Do not corrupt grep-find-ignored-files
* lisp/progmodes/project.el (project-ignores): Change the order of
the arguments to nconc, in order not to corrupt grep-find-ignored-files.
Add xref-match-item, and use it
* lisp/progmodes/xref.el (xref-match-bounds): New generic function.
(xref-file-location): Add reader for the column slot.
(xref-match-item): New class.
(xref-match-bounds): A method implementation for it.
(xref-make-match): New constructor function.
(xref--current-item): New private variable.
(xref-pulse-momentarily): Use it.
(xref--pop-to-location): Change the first argument to an xref
item, instead of location, bind xref--current-item.
Update all callers.
(xref-next-line, xref-prev-line, xref--next-error-function)
(xref--mouse-2): Look for the property `xref-item',
instead of `xref-location'.
(xref--item-at-point): Likewise. This function replaces
`xref-location-at-point'. Update all callers.
(xref--insert-xrefs): Add the `xref-item' text property, instead
of `xref-location'.
(xref--collect-match): Use xref-make-match.
Rename xref--xref to xref-item
* lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
Update all references.
Rename xref description slot to summary
* lisp/progmodes/xref.el (xref--xref): Rename the `description'
slot to `summary'.
vc-hg: Perform the print-log call asynchronously
* lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
asynchronously (bug#21067).
Add xref-after-jump-hook and xref-after-return-hook
* lisp/progmodes/xref.el (xref-after-jump-hook)
(xref-after-return-hook): New hooks.
(xref-pulse-on-jump): Remove, in favor of the above.
(xref-pulse-momentarily): Rename from xref--maybe-pulse.
(xref--pop-to-location, xref--display-position)
(xref-pop-marker-stack): Use the new hooks, as requested in
http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
2015-07-19 Bozhidar Batsov <bozhidar@batsov.com>
Correct js-mode's lighter
* lisp/progmodes/js.el (js-mode): Correct the lighter.
2015-07-19 Leo Liu <sdl.web@gmail.com>
Fix a bug in cfengine3-mode
* progmodes/cfengine.el (cfengine3-mode): Handle nil
eldoc-documentation-function.
2015-07-18 Julien Danjou <julien@danjou.info>
sieve-mode: support "body" test command
* lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
Add missing "body" test command.
2015-07-18 Eli Zaretskii <eliz@gnu.org>
Fix info-apropos when the default encoding is Latin-N
* lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
'undecided', so that it is set to the encoding of the Info file we
are about to insert. Otherwise, 'info-apropos' will fail to find
some index nodes in some UTF-8 encoded files, if the buffer's
previous encoding is Latin-N or some such.
2015-07-18 Ivan Andrus <darthandrus@gmail.com>
* epg.el (epg--start): Check that gpgconf can be found before calling it.
Expose more file types to OS X that Emacs understands.
* Cocoa/Emacs.base/Contents/Info.plist: Add editor role for sty, dtx,
json, and org files. Export UTIs for el, elc, and org files.
2015-07-18 Eli Zaretskii <eliz@gnu.org>
Fix visual-order cursor movement when lines are truncated
* src/xdisp.c (Fmove_point_visually): When lines are truncated,
simulate display in a window of infinite width, to allow move_it_*
functions reach positions outside of normal window dimensions.
Remove code that tried to handle a subset of these situations by
manual iteration of buffer text. (Bug#17777)
Fix following Info cross-references to anchors
* lisp/info.el (Info-read-subfile): Add to the returned value the
length of subfile preamble, after converting it to file's byte
offset, as expected by the caller. Use bufferpos-to-filepos.
(Info-find-node-2): If searching for a node with a
1000-character slop fails, try again with a 10000-character slop,
to account for known bugs in Texinfo 5.0 and 5.1. (Bug#21055)
* lisp/international/mule-util.el (bufferpos-to-filepos): New
function.
* etc/NEWS: Mention bufferpos-to-filepos.
Fix scrolling backwards on TTY frames under scroll-conservatively
* src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
in moving backwards on TTY frames. (Bug#21080)
2015-07-17 Dmitry Gutov <dgutov@yandex.ru>
Consider a jsdoc tag to be a beginning of a paragraph as well
* lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
consider a jsdoc tag to be a beginning of a paragraph as well.
2015-07-17 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Fix warnings
* lisp/emacs-lisp/package.el (package-buffer-info):
Add author and maintainers to `package-buffer-info'.
* lisp/emacs-lisp/package.el: Many small changes
Replace all instances of 'face with 'font-lock-face.
(describe-package-1): Improve some strings and move the summary up the
list.
(package-install-file): Update docstring.
(package-menu-hide-package): Bind to `H'.
* lisp/emacs-lisp/package.el (package--with-work-buffer-async):
Fix error handling.
2015-07-17 Paul Eggert <eggert@cs.ucla.edu>
Fix hang with large yanks This should fix the bug fixed by Mike
Crowe's patch in:
https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
A problem in this area has been reported by several users; see
Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
This fix differs from Mike Crowe's patch in that it should avoid a
race condition that could lose SIGIO signals. ignore_sigio dates
back to the 1980s when some platforms couldn't block signals, and
could only ignore them, which led to races when signals arrived
while being ignored. We shouldn't have to worry about those old
platforms now.
* src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
* src/emacs.c (shut_down_emacs):
Don't call ignore_sigio; unrequest_sigio should suffice.
* src/keyboard.c (kbd_buffer_store_buffered_event):
Use unrequest_sigio, not ignore_sigio.
(kbd_buffer_get_event):
Call request_sigio when getting the ball rolling again.
2015-07-17 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/obsolete/longlines.el (longlines-search-function):
Fallback on `isearch-search-fun-default'.
2015-07-17 Tassilo Horn <tsdh@gnu.org>
Support @-mentions
* rcirc.el (rcirc-completion-at-point): Support completion of
mentions/messages with @nick instead of just nick.
2015-07-16 Michael Albinus <michael.albinus@gmx.de>
Fix Bug#20943.
* lisp/autorevert.el (auto-revert-handler): Do not check for
`buffer-modified-p'.
* lisp/files.el (buffer-stale--default-function): Check for
`buffer-modified-p'.
* test/automated/auto-revert-tests.el
(auto-revert-test02-auto-revert-mode-dired): Adapt test.
2015-07-16 Ari Roponen <ari.roponen@gmail.com>
Fix delete-dups bug on long lists
* lisp/subr.el (delete-dups):
Don't mistakenly keep some dups when applied to long lists.
2015-07-16 Paul Eggert <eggert@cs.ucla.edu>
Better heuristic for C stack overflow
Improve the heuristic for distinguishing stack overflows from
other SIGSEGV causes (Bug#21004). Corinna Vinschen explained that
the getrlimit method wasn't portable to Cygwin; see:
https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
Corinna suggested pthread_getattr_np but this also has problems.
Instead, replace the low-level system stuff with a simple
heuristic based on known good stack addresses.
* src/eval.c, src/lisp.h (near_C_stack_top): New function.
* src/sysdep.c: Don't include <sys/resource.h>.
(stack_direction): Remove. All uses removed.
(stack_overflow): New function.
(handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
Make SEGV fatal in non-main threads.
2015-07-16 Daiki Ueno <ueno@gnu.org>
epg: Automatically start pinentry server
* epg-config.el (epg-gpgconf-program): New variable.
* epg.el (epg--start): Call `pinentry-start' if
allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
2015-07-15 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/gnus/nnimap.el: Fix my last bogus change
Reinstall Stefan Monnier's change that was made in
<83d824bc4041332f338ad7e5e830f443535aa300>.
2015-07-15 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib
This incorporates:
2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
2015-07-05 acl-permissions: Fix on FreeBSD
2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
* lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
* lib/set-permissions.c: Copy from gnulib.
Port to stricter C99
* src/keyboard.h (kbd_buffer_store_event_hold):
Don't return a void expression.
2015-07-15 Xue Fuqiao <xfq.free@gmail.com>
* doc/emacs/frames.texi (Creating Frames): Fix the command `C-x 5 m' runs.
2015-07-14 Michael Albinus <michael.albinus@gmx.de>
New autorevert tests.
* test/automated/auto-revert-tests.el: New file.
2015-07-14 Paul Eggert <eggert@cs.ucla.edu>
Clear gcprolist etc. after stack overflow
After stack overflow, command_loop calls init_eval, and this needs to
clear gcprolist and byte_stack_list (Bug#20996).
* src/alloc.c (init_alloc):
Move gcprolist and byte_stack_list initialization from here ...
* src/eval.c (init_eval): ... to here.
2015-07-13 Xue Fuqiao <xfq.free@gmail.com>
* doc/emacs/windows.texi (Pop Up Window): Fix the description of `C-x 4 m'.
2015-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Avoid deprecated enums in mac-ct font backend driver
* src/macfont.m (mac_font_copy_default_descriptors_for_language)
(mac_ctfont_get_advance_width_for_glyph)
(mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
Cache font family in mac-ct font backend driver
* src/macfont.m (macfont_family_cache): New variable.
(syms_of_macfont): Initialize it.
(macfont_available_families_cache): New variable.
(macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
(macfont_set_family_cache, macfont_invalidate_available_families_cache)
(macfont_handle_font_change_notification)
(macfont_init_font_change_handler)
(macfont_copy_available_families_cache): New functions.
(macfont_create_family_with_symbol): Use font family caches.
(macfont_list, macfont_list_family): Use
macfont_copy_available_families_cache instead of
mac_font_create_available_families.
2015-07-12 Dmitry Gutov <dgutov@yandex.ru>
Show the default value in the prompt
* lisp/progmodes/xref.el: Add `M-?' binding for
xref-find-references. Declare functions `grep-read-files' and
`grep-expand-template'.
(xref--read-identifier): Show the default value in the prompt.
When called with prefix argument, ask for file patterns to search as well
* lisp/progmodes/xref.el (xref-find-regexp): When called with
prefix argument, ask for file patterns to search as well. When
prompting for the directory, require an existing one.
(xref-collect-matches): Add a new argument, FILES. Use it in the
above function.
Add `project-ignores'
* lisp/progmodes/project.el (project-ignores): New generic
function, and an implementation for the VC project type.
* lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
variant of rgrep-default-command that handles a generic list of
ignores.
(xref-collect-matches): Use it, and pass through to it the value
of the newly added argument.
(xref-find-regexp): Handle ignored paths within the project.
Remove outdated comment.
* lisp/vc/vc.el (vc-default-ignore-completion-table):
Skip the comments and the empty lines.
2015-07-12 Xue Fuqiao <xfq.free@gmail.com>
* doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
2015-07-11 Eric Abrahamsen <eric@ericabrahamsen.net>
gnus-registry.el: Correct function argument order
* lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
Reverse the order of function arguments.
2015-07-11 Dmitry Gutov <dgutov@yandex.ru>
Bind grep-highlight-matches to nil
* lisp/progmodes/xref.el (xref-collect-matches):
Bind grep-highlight-matches to nil (bug#20728).
2015-07-11 Nikolaus Rath <Nikolaus@rath.org>
nnimap.el: Fix IMAP message size parsing
* lisp/gnus/nnimap.el (nnimap-transform-headers):
Don't assume that UID comes before RFC822.SIZE.
2015-07-10 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/gnus/nnimap.el: Clean up "unused var" warnings
(auth-source-creation-prompts): Declare.
(nnimap-retrieve-headers, nnimap-status-message)
(nnimap-request-create-group, nnimap-request-delete-group)
(nnimap-close-group, nnimap-request-move-article)
(nnimap-request-accept-article, nnimap-request-newgroups)
(nnimap-request-post, nnimap-dummy-active-number)
(nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
(nnimap-parse-flags): Remove unused var `p'.
(nnimap-retrieve-group-data-early): Remove unused var `groups'.
(nnimap-flags-to-marks): Remove unused var `totalp'.
2015-07-10 Andy Moreton <andrewjmoreton@gmail.com> (tiny change)
* src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
2015-07-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* src/macfont.m (macfont_list): Ignore font families lacking font descriptors.
2015-07-09 Dmitry Gutov <dgutov@yandex.ru>
Don't check the exit status, it can be misleading
* lisp/progmodes/xref.el (xref-collect-matches): Don't check the
exit status, it can be misleading.
Introduce a Project API
* lisp/progmodes/project.el: New file.
* lisp/cedet/ede.el: (project-try-ede): New function.
(project-root): New implementation.
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
Set project-search-path-function.
(elisp--xref-find-references): Delegate some logic to
project-search-path.
(elisp-search-path): New function.
(elisp-xref-find): Don't implement `matches' anymore.
* lisp/progmodes/etags.el: Don't implement `matches'.
Delegate some logic to project-search-path.
(etags-search-path): New function.
* lisp/progmodes/xref.el (xref-find-function):
Remove `matches' from the API.
(xref-find-regexp): Move whatever common logic was in elisp and
etags implementations, and search the directories returned by
project-directories and project-search-path.
2015-07-09 Nicolas Petton <nicolas@petton.fr>
* test/automated/map-tests.el (test-map-delete-return-value): Uncomment test.
Add support for gv.el in map.el
* lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
* lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
* test/automated/map-tests.el: Update tests to work with the new
implementations of map-elt and map-put.
2015-07-09 Glenn Morris <rgm@gnu.org>
* lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
2015-07-09 Dmitry Gutov <dgutov@yandex.ru>
Syntax-propertize until the end of the line first
* lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
until the end of the line first.
2015-07-09 Xue Fuqiao <xfq.free@gmail.com>
* doc/emacs/files.texi (File Archives): Add a cross reference.
2015-07-08 Nikolaus Rath <Nikolaus@rath.org>
nnimap.el: Handle plain value for nnimap-stream
* lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
capabilities, so that a 'plain value for the `nnimap-stream' server
variable is handled correctly.
* doc/misc/gnus.texi (Customizing the IMAP Connection):
Document the 'plain option.
2015-07-08 Leo Liu <sdl.web@gmail.com>
Fix bug in thing-at-point--bounds-of-well-formed-url
* lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
sure boundary contains current point.
2015-07-08 Dmitry Gutov <dgutov@yandex.ru>
* lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse' in the end.
Declare whitespace-line-column a safe file-local
* lisp/whitespace.el (whitespace-line-column): Declare to be a
safe file-local when the value is an integer.
2015-07-08 Eric Abrahamsen <eric@ericabrahamsen.net>
gnus-group.el: Check if group names are already strings
* lisp/gnus/gnus-group.el (gnus-group-group-name):
The group name may already be a string.
Specifically, in the group list reached from the *Server* buffer,
the 'gnus-group text property returns a string. Everywhere else
it returns a symbol.
nnimap.el: Remove unused let variables
* lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
2015-07-08 Eli Zaretskii <eliz@gnu.org>
Support "maximized" property of runemacs's shortcut
* nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
the '--maximized' switch to Emacs.
Support "minimized" property of runemacs's shortcut
* nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
pass the '--iconic' switch to Emacs. (Bug#20991)
2015-07-08 Xue Fuqiao <xfq.free@gmail.com>
Doc fixes
* doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
C-w' in Diff mode.
* doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
Add a cross reference.
2015-07-08 Nicolas Richard <youngfrog@members.fsf.org>
* lisp/obsolete/landmark.el: Add Obsolete-since header
2015-07-07 Glenn Morris <rgm@gnu.org>
* test/automated/ert-tests.el (ert-test-deftest):
Update for recent changes.
2015-07-07 Stefan Monnier <monnier@iro.umontreal.ca>
(gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
* lisp/emacs-lisp/gv.el (gv-setter): New function.
(gv-invalid-place): New error.
(gv-get): Use them.
(gv-synthetic-place, gv-delay-error): New places.
* lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
(cl-defgeneric, cl-defmethod): Use gv-setter.
2015-07-07 Fabrice Popineau <fabrice.popineau@gmail.com>
Make vc-tests work with MSYS svn program
* lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
svn is an MSYS program.
2015-07-07 Ken Brown <kbrown@cornell.edu>
Improve recent change to emacsclient on Cygwin
* lisp/server.el (server-process-filter): Remove redundant check
that 'cygwin-convert-file-name-from-windows' is defined as a
function on Cygwin. Don't call that function unless its argument
starts with a drive letter.
2015-07-07 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package-compute-transaction): Bug fix
Fix void variable due to `found-something' being in the wrong `let'.
2015-07-07 Nicolas Richard <theonewiththeevillook@yahoo.fr>
* lisp/play/landmark.el: Move to lisp/obsolete/
2015-07-07 Martin Rudalics <rudalics@gmx.at>
Have `x-show-tip' handle `right' and `bottom' frame parameters.
* src/nsfns.m (compute_tip_xy, Fx_show_tip)
* src/w32fns.c (compute_tip_xy, Fx_show_tip)
* src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
tooltips also via `right' and `bottom' frame parameters.
2015-07-07 Stefan Monnier <monnier@iro.umontreal.ca>
Add online-help support to describe types
* lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
(describe-symbol): Improve the selection of default.
* lisp/help-mode.el: Require cl-lib.
(describe-symbol-backends): Move from help-fns.el.
(help-make-xrefs): Use it.
* lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
for types.
(cl--typedef-regexp): New const.
(find-function-regexp-alist): Add entry for types.
(cl-help-type, cl-type-definition): New buttons.
(cl-find-class): New function.
(cl-describe-type): New command.
(cl--describe-class, cl--describe-class-slot)
(cl--describe-class-slots): New functions, moved from eieio-opt.el.
* lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
(cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
New functions. Moved from eieio-opt.el.
(cl--generic-class-parents): New function, extracted from
cl--generic-struct-specializers.
(cl--generic-struct-specializers): Use it.
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
Improve constructor's docstrings.
(cl-struct-unknown-slot): New error.
(cl-struct-slot-offset): Use it.
* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
definition in current-load-list.
* lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
(eieio--add-new-slot): Set it.
(eieio-defclass-internal): Use new name for current-load-list.
(eieio-oref): Add compiler-macro to warn about unknown slots.
* lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
as compile-time as well. Improve constructor docstrings.
* lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
(eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
(eieio-class-def): Remove button.
(eieio-help-constructor): Use new name for load-history element.
(eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
(eieio-method-documentation): Move to cl-generic.el.
(eieio-display-method-list): Use new names.
* lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
Add "define-linline".
(lisp-fdefs): Remove "defsubst".
(el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
* lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
(macroexp--warn-and-return): Use it to avoid inf-loops.
Add `compile-only' argument.
2015-07-06 Fabián Ezequiel Gallina <fgallina@gnu.org>
python.el: Fix local/remote shell environment setup
* lisp/progmodes/python.el (python-shell-with-environment): Fix
remote/local environment setup.
* test/automated/python-tests.el (python-shell-with-environment-1)
(python-shell-with-environment-2): New tests.
2015-07-06 Glenn Morris <rgm@gnu.org>
* lisp/simple.el (set-variable): Tweak recent doc fix.
2015-07-06 Ken Brown <kbrown@cornell.edu>
* src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE
2015-07-06 Glenn Morris <rgm@gnu.org>
* lisp/simple.el (set-variable): Use user-error for type mismatch.
2015-07-06 Ken Brown <kbrown@cornell.edu>
* src/emacs.c (main): Don't increase the stack size on Cygwin
2015-07-06 Stefan Monnier <monnier@iro.umontreal.ca>
(describe-symbol): Rewrite describe-function-or-variable
* lisp/help-fns.el (describe-symbol-backends): New var.
(help-xref-stack-item): Declare.
(describe-symbol): Rename from describe-function-or-variable.
Rewrite using describe-symbol-backends instead of help-xref-interned.
* lisp/help.el (help-map): Use it.
* lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
(help-xref-interned): Make it into an obsolete alias.
(eieio-persistent-save): Don't ignore `file' arg (bug#20972)
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
`file' arg. Always use utf-8-emacs. Use with-temp-buffer and cl-letf.
2015-07-06 Wolfgang Jenkner <wjenkner@inode.at>
Fix parsing glitches in dired-mark-sexp (bug#13575)
* lisp/dired-x.el (dired-x--string-to-number): New function.
(dired-mark-sexp): Use it. Tweak dired-re-inode-size. Fix usage
of directory-listing-before-filename-regexp. Consider
forward-word harmful and replace it. Add more verbiage in
comments and doc string.
2015-07-06 Fabián Ezequiel Gallina <fgallina@gnu.org>
python.el: Respect process environment for remote shells
* lisp/progmodes/python.el
(python-shell-calculate-process-environment): Calculate
process-environment or tramp-remote-process-environment depending
whether current file is remote.
(python-shell-calculate-exec-path): Calculate exec-path or
tramp-remote-path depending whether current file is remote.
(python-shell-with-environment): New macro.
(python-shell-prompt-detect, python-shell-calculate-command)
(python-shell-make-comint, python-check): Use it.
python.el: Avoid making let-bound defvars buffer local (Bug#18244)
* lisp/progmodes/python.el (python-shell--interpreter)
(python-shell--interpreter-args): New vars.
(inferior-python-mode, python-shell-make-comint): Use them.
python.el: Fixes for IPython 3.x (Bug#20580)
* lisp/progmodes/python.el:
(python-shell-completion-native-setup): Fix IPython 3.x setup.
(python-shell-completion-native-get-completions): Fix timeout
logic.
python.el: Fix mark-defun behavior (Bug#19665)
* lisp/progmodes/python.el: (python-mark-defun): New function.
* test/automated/python-tests.el (python-mark-defun-1)
(python-mark-defun-2, python-mark-defun-3): New tests.
2015-07-05 Glenn Morris <rgm@gnu.org>
* lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
such as "extends(parent), private". (Bug#20969)
* test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
New tests.
2015-07-05 Paul Eggert <eggert@cs.ucla.edu>
Avoid duplicate calls to current_timespec
* src/process.c (wait_reading_process_output):
Cache current_timespec results as long as we're not waiting.
2015-07-05 Ian Kelling <ian@iankelling.org>
Avoid returning early reading process output due to SIGIO
* src/process.c (wait_reading_process_output): Extend the behavior of
not breaking due to not finding output when a timer has lowered the
timeout to include when SIGIO lowers the timeout.
Don't return as fast reading any process output
* src/process.c (wait_reading_process_output):
The patch for Bug#17647 returns too fast sometimes when reading
from any processes. Revert part of it, and limit the timeout more
sensibly (Bug#20978).
Refactor timeouts in wait_reading_process_output
* src/process.c (wait_reading_process_output):
Simplify timeouts with an enum. Remove a redundant condition.
(Bug#20978)
Remove ADAPTIVE_READ_BUFFERING ifdef
* src/process.c (make-process, make-pipe-process, deactivate_process)
(wait_reading_process_output, read_process_output, send_process)
(init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
added in case there was an operating system in which it was not
useful. That was 11 years ago and it hasn't happened. Make
development easier by not considering the effect of changes on a
theoretical OS where this is disabled (Bug#20978).
2015-07-05 Glenn Morris <rgm@gnu.org>
* lisp/simple.el (set-variable): Doc fix.
* lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
2015-07-05 Ian Kelling <ian@iankelling.org>
accept-process-output fix
This is a followon to the fix for Bug#17647 (Bug#20976).
* src/process.c (status_notify): Fix too high return in some cases.
2015-07-05 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/character-fold.el (character-fold-table):
Only fold decompositions if at least one character is non-spacing.
(Bug#20975)
2015-07-05 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib
This incorporates:
2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
2015-07-02 update-copyright: fix test failure with perl >= 5.22
2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
* build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
* lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
2015-07-05 Christoph Wedler <christoph.wedler@sap.com>
Respect `prog-indentation-context' in python.el
* lisp/progmodes/python.el (python-indent-guess-indent-offset)
(python-indent-context, python-indent--calculate-indentation)
(python-info-current-defun)
(python-info-dedenter-opening-block-message)
(python-info-line-ends-backslash-p)
(python-info-beginning-of-backslash)
(python-info-continuation-line-p): Use `prog-widen'.
(python-indent--calculate-indentation)
(python-indent--calculate-levels)
(python-indent-calculate-indentation): Use `prog-first-column'.
(python-indent--calculate-levels): Simplify.
Ignore also initial empty lines for syntax calculation.
* lisp/progmodes/python.el (python-indent-context): Return
:no-indent for first non-empty line, not just in line 1.
* test/automated/python-tests.el (python-indent-base-case)
(python-indent-inside-paren-1, python-indent-inside-paren-2)
(python-indent-inside-paren-3, python-indent-inside-paren-4)
(python-indent-inside-paren-5, python-indent-inside-paren-6)
(python-indent-after-backslash-1)
(python-indent-after-backslash-2)
(python-indent-after-backslash-3)
(python-indent-after-backslash-4, python-indent-inside-string-1):
Expect :no-indent for first non-empty line.
2015-07-04 Daniel Colascione <dancol@dancol.org>
Factor isearch word description into new function
* lisp/isearch.el (isearch--describe-word-mode): New function.
(isearch-message-prefix, isearch-query-replace): Use it.
2015-07-04 Eli Zaretskii <eliz@gnu.org>
Fix mouse pointer on w32 when a menu is active
* src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
shape while a menu is in use. This started happening since we now
send WM_EMACS_SHOWCURSOR messages when the mouse moves.
2015-07-04 Martin Rudalics <rudalics@gmx.at>
Fix processing of alpha parameter for Windows tip frames (Bug#17344)
* src/w32fns.c (x_create_tip_frame): Fix processing alpha
parameter. (Bug#17344)
Have `compilation-set-window' use right window for getting fringes (Bug#20829)
* lisp/progmodes/compile.el (compilation-set-window): Take
`window-fringes' from argument window. (Bug#20829)
2015-07-03 Glenn Morris <rgm@gnu.org>
Update eieio tests for recent eieio-core change.
* test/automated/eieio-test-persist.el (persist-test-save-and-compare):
* test/automated/eieio-tests.el
(eieio-test-32-slot-attribute-override-2):
Replace the deleted eieio--class-v with cl--find-class.
2015-07-03 Martin Rudalics <rudalics@gmx.at>
Fix some issues with `window-divider-mode'
* lisp/frame.el (window-divider-default-places): New option.
(window-divider-mode): Remove option.
(window-divider-mode): Make it a "regular" minor mode.
(window-divider-width-valid-p): Drop frame- prefix.
(window-divider-mode-apply): New argument ENABLE. Drop frame-
prefix. Handle `window-divider-default-places'.
(frame--window-divider-mode-set-and-apply): Remove.
(window-divider-default-bottom-width)
(window-divider-default-right-width): Drop :group entries.
* lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
(menu-bar-right-window-divider, menu-bar-bottom-window-divider)
(menu-bar-no-window-divider): Set `window-divider-default-places'
and call `window-divider-mode'.
* doc/emacs/frames.texi (Window Dividers): Document
`window-divider-default-places'.
2015-07-02 Xue Fuqiao <xfq.free@gmail.com>
Add cross references in documentation
* doc/emacs/display.texi (Displaying Boundaries):
* doc/emacs/search.texi (Word Search): Add cross references.
2015-07-02 Paul Eggert <eggert@cs.ucla.edu>
-batch should not affect -> `' display
* lisp/startup.el (command-line): Do the -> `' check even if
-batch (Bug#20926).
2015-07-02 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
* lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el,
lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
Use cl--find-class instead.
* lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
2015-07-02 Martin Rudalics <rudalics@gmx.at>
Some further fixes in Change Window node. (Bug#20183)
* doc/emacs/windows.texi (Change Window): Replace "rearranging"
by "resizing" in section title. Add some concept indices.
Suggested by N. Jackson (Bug#20183).
Reference window dividers in Change Window section.
* doc/emacs/windows.texi (Change Window): Reference window
dividers.
Document new `window-divider-mode'.
* lisp/frame.el (window-divider-mode): Fix doc-string.
* doc/emacs/frames.texi (Window Dividers): New section.
Improve accessibility of window dividers. (Bug#20183)
* lisp/faces.el (window-divider)
(window-divider-first-pixel, window-divider-last-pixel): Change
membership from `frames' to `window-divider' customization group.
* lisp/frame.el (window-divider): New customization group.
(window-divider-mode): New minor mode.
(window-divider-default-bottom-width)
(window-divider-default-right-width): New options.
(frame--window-divider-previous-mode): New variable.
(frame-window-divider-width-valid-p)
(frame--window-divider-mode-apply)
(frame--window-divider-mode-set-and-apply): New functions.
* lisp/menu-bar.el (menu-bar-options-save): Save
window-divider-mode settings.
(menu-bar-window-divider-customize)
(menu-bar-bottom-and-right-window-divider)
(menu-bar-right-window-divider, menu-bar-bottom-window-divider)
(menu-bar-no-window-divider): New functions.
(menu-bar-showhide-window-divider-menu): New variable.
(menu-bar-showhide-menu): Show/hide window divider menu.
* lisp/mouse.el (mouse-split-window-vertically)
(mouse-split-window-horizontally): Replace `error' by
`user-error'. Bind `window-combination-resize' to nil.
(top-level): Add/reorder mouse key bindings on mode- and
vertical-line.
2015-07-02 Paul Eggert <eggert@cs.ucla.edu>
Don't display as `' under X in en_GB
The curved quote setup code invokes (char-displayable-p ?),
but this isnt reliable until after the X frame replaces the
terminal frame (Bug#20926).
* lisp/international/mule-cmds.el (set-locale-environment):
Move curved quote setup code from here ...
* lisp/startup.el (command-line): ... to here, after creating
the X frame.
2015-07-01 Nicolas Richard <youngfrog@members.fsf.org>
* lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring
Add argument to reverse the meaning of ido-restrict-to-matches
* lisp/ido.el (ido-restrict-to-matches): Add an optional argument
to reverse the meaning (Bug#15631).
2015-07-01 Eli Zaretskii <eliz@gnu.org>
Be more tolerant to fonts named "Foobar-12"
* src/frame.c (x_set_font): If font_spec_from_name returns nil,
don't barf; instead, request a new fontset to be generated. This
avoids unnecessarily rejecting fonts named against XLFD rules. See
http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
for the description of the original problem.
* lisp/faces.el (set-face-attribute): Don't be fooled too easily
by a hyphen in a font's name.
Fix value of posn-at-pont in R2L lines
* src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
coordinate of -1, for a newline in a right-to-left line that
overflowed into the left fringe.
2015-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
(cl--copy-slot-descriptor): Copy the `props' alist as well
* lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
Rename from cl--copy-slot-descriptor.
(cl--copy-slot-descriptor): New function. Copy the alist (bug#20914).
2015-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/term/xterm.el (xterm--query): Avoid generating garbage
(xterm-query-timeout): New var.
(xterm--query): Use it. Fallback on async method if we timeout before
getting the first byte of the reply (bug#12354).
2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
Spelling fixes
2015-06-30 Xue Fuqiao <xfq.free@gmail.com>
* doc/emacs/frames.texi (Frame Commands): Typo fix. (Bug#20946)
2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
In strings, prefer plain ` and ' to \` and \'
* lisp/allout.el (allout-insert-listified):
* lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
* lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
(ls-lisp-string-lessp):
* lisp/menu-bar.el (menu-bar-open):
* lisp/obsolete/otodo-mode.el (todo-top-priorities):
* lisp/progmodes/compile.el (compile):
* lisp/progmodes/etags.el (tags-loop-scan):
* lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
* lisp/subr.el (posn-actual-col-row):
* lisp/term/pc-win.el (x-list-fonts):
* lisp/textmodes/texinfmt.el (texinfmt-version):
* lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
* lisp/time.el (display-time-world-list):
* lisp/tmm.el (tmm-menubar):
* src/buffer.c (syms_of_buffer):
* src/fileio.c (syms_of_fileio):
Omit unnecessary and confusing backslash before quote.
* lisp/erc/erc.el (erc-cmd-LASTLOG):
* lisp/progmodes/flymake.el (flymake-fix-file-name):
* lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
Fix string that was intended to escape a backslash and not a quote.
2015-06-30 Glenn Morris <rgm@gnu.org>
* leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
* lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
Replace hard-coded lists with wildcard + filter-out.
* configure.ac (system-configuration-features): Add X11, NS.
Improve reproducibility of generated loaddefs file.
* lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
Make the return value the modtime of the input file (if no autoloads).
(update-directory-autoloads): In the "no autoloads" section,
use "most recent modtime" rather than "current time".
2015-06-30 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic
(Bug#20930)
2015-06-30 Nicolas Petton <nicolas@petton.fr>
* doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
Add seq-min and seq-max
Bump version number.
* lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
* test/automated/seq-tests.el: Add tests for seq-min and seq-max.
2015-06-30 Eli Zaretskii <eliz@gnu.org>
Make sure sleep-for always delays for as long as it's told
* src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
a loop, to ensure we always wait exactly the required amount of
time. (Bug#15990)
2015-06-30 Paul Eggert <eggert@cs.ucla.edu>
Fix pointer signedness glitch
* src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
2015-06-30 Eli Zaretskii <eliz@gnu.org>
Don't block changes in mouse pointer inside 'track-mouse'
* etc/NEWS:
* doc/lispref/frames.texi (Mouse Tracking): Document the special
effect of setting 'track-mouse' to 'dragging'.
* lisp/textmodes/artist.el (artist-mouse-draw-continously):
* lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
* lisp/mouse-drag.el (mouse-drag-throw):
* lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
to avoid changes in the shape of the mouse pointer.
* src/xdisp.c (define_frame_cursor1): Don't change the mouse
pointer shape when do_mouse_tracking has the value of 'dragging',
not just any non-nil value. (Bug#20934)
(syms_of_xdisp): DEFSYM 'dragging'.
2015-06-30 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/isearch.el (isearch-toggle-word): Fix toggle
* lisp/emacs-lisp/package.el (package-compute-transaction):
Don't assume version sorting.
* lisp/emacs-lisp/package.el (package--save-selected-packages):
Don't save before init time, to avoid overwriting configurations.
(Bug#20855)
2015-06-30 Xue Fuqiao <xfq.free@gmail.com>
Add cross references.
* doc/emacs/display.texi (Standard Faces, Fringes): Add cross
references.
2015-06-29 Ted Zlatanov <tzz@lifelogs.com>
cfengine.el: update for the upcoming CFEngine 3.7 release
Update for the upcoming CFEngine 3.7 release: support macros and
quoted context strings; reformat JSON; indent promise attributes 2
units by default; give function parameter descriptions in the eldoc
glue.
* cfengine.el: Update version and docs and fix name. Autoload
`json-pretty-print'. Support new features in 3.7.
(cfengine-parameters-indent): Set default promise attribute indent to
2 more than the promise itself.
(cfengine3-macro-regex): New variable to match the new macro syntax.
(cfengine3-font-lock-keywords): Use it to highlight macros.
(cfengine3-indent-line): Use it to indent macros to column 0.
(cfengine3-class-selector-regex): Update for the new quoted strings
format.
(cfengine3-reformat-json-string): New function to reformat a JSON
string using `json-pretty-print'.
(cfengine3-format-function-docstring): Use function parameter
description if it's provided by the cf-promises syntax dump.
2015-06-29 Michael R. Mauger <michael@mauger.com>
Cygwin emacsclient handles w32 file names
2015-06-29 Katsumi Yamaoka <yamaoka@jpl.org>
* lisp/isearch.el (isearch-exit): Don't call isearch-done twice (bug#20925).
2015-06-29 Eli Zaretskii <eliz@gnu.org>
* doc/lispref/text.texi (Sticky Properties): Improve wording.
(Bug#20924)
Allow font names that end in "-NN", where NN is a number
* src/font.c (font_load_for_lface): If the font-spec didn't match
any available fonts, try again without interpreting trailing "-NN"
as the font size. For the description of the original problem, see
http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
.gdbinit followup to changes in !USE_LSB_TAG
* src/.gdbinit (xgetsym): Don't left-shift $ptr even under
!USE_LSB_TAG, as Emacs no longer does.
2015-06-29 Wolfgang Jenkner <wjenkner@inode.at>
* lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
Otherwise `s p' of f and F will stomp on each other's value. (Bug#20916)
2015-06-29 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
Don't block remember-pos if buffer isn't displayed. (Bug#20921)
2015-06-29 Nicolas Richard <theonewiththeevillook@yahoo.fr>
* lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point as additional guess
* lisp/emacs-lisp/package.el (describe-package): Convert the guess to a string
2015-06-28 Paul Eggert <eggert@cs.ucla.edu>
apropos-library quoting fix
* lisp/apropos.el (apropos-library): Quote library consistently
with the rest of the quoting used by apropos.
Clarify interpreter-mode-alist doc
* lisp/files.el (interpreter-mode-alist):
Reword to avoid confusing quoting that wasn't working anyway.
2015-06-28 Michael Albinus <michael.albinus@gmx.de>
Sync with Tramp 2.2.12
* doc/misc/trampver.texi:
* lisp/net/trampver.el: Update release number.
* test/automated/tramp-tests.el (tramp-test13-make-directory):
Fix cleanup.
2015-06-28 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/isearch.el (isearch-mode): Don't char-fold regexps
(bug#20913)
2015-06-27 Dmitry Gutov <dgutov@yandex.ru>
Bind grep-highlight-matches around the rgrep call
* lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
around the rgrep call (bug#20728).
Put "--color" before the other options in grep-command
* lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
before the other options in grep-command (bug#20912).
Add --color Grep option to the command dynamically
* lisp/progmodes/grep.el (grep-template, grep-find-template):
Update the description for <C>. (Bug#20728)
(grep-compute-defaults): Don't add the --color option to
grep-options. Only add it to grep-command.
(grep-expand-keywords): Expand the env value opts into <C>.
(grep-expand-template): Replace cf in the env with the opts list,
that can include -i and --color.
* lisp/progmodes/xref.el (xref-collect-matches): Do not remove
"--color=always" from the template, because we don't have to.
2015-06-27 Paul Eggert <eggert@cs.ucla.edu>
cl-extra fixes for most-negative-fixnum
* lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
Don't mishandle an argument equal to most-negative-fixnum,
whose absolute value equals itself.
(cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
Initialize cl--gensym-counter to 0
Previously it was initialized to a random value, which made it
harder to reproduce earlier Emacs runs. The need for a random
value went away when Emacs introduced and used the #: syntax for
uninterned symbols (Bug#20862).
* doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
Document that cl--gensym-counter now starts with 0.
* lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
(cl--random-time): Move to near only remaining use.
* lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
Improve docstring for macroexp-let2
* lisp/emacs-lisp/macroexp.el (macroexp-let2):
Improve as per suggestion by RMS in:
http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
Also, rename args to match new doc string.
2015-06-27 Eli Zaretskii <eliz@gnu.org>
Fix VC test suite on MS-Windows
* lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
always starts with 3 slashes after the colon.
* test/automated/vc-tests.el (vc-test--create-repo-function): Use
'w32-application-type' to invoke CVS on MS-Windows with properly
formatted CVSROOT directory name.
Add a new function w32-application-type
* src/w32proc.c (Fw32_application_type): New function.
Avoid error in TLS connections due to incorrect format
* src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
the call to 'error', instead of the unsupported %u. Reported by
lo2net <fangtao0901@gmail.com>. (Bug#20908)
2015-06-26 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/replace.el (replace-search): Fix regexp case (bug#20901)
2015-06-26 Leo Liu <sdl.web@gmail.com>
Fix indentation for with-output-to-string
* lisp/emacs-lisp/cl-indent.el: Fix indentation for
`with-output-to-string' in elisp.
Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string"
This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
2015-06-26 Eli Zaretskii <eliz@gnu.org>
Minor corrections in ELisp manual
* doc/lispref/nonascii.texi (Character Properties): Correct
inaccuracies in description of values of the Unicode properties.
Fix invisible mouse pointers on Windows.
* src/w32fns.c: Include windowsx.h.
(w32_wnd_proc): If the mouse moved and the mouse pointer is
invisible, make it visible again even when the main (Lisp)
thread is busy.
* src/w32term.c (w32_toggle_invisible_pointer): Rather then
garbaging the frame have the input thread call SetCursor.
2015-06-26 Martin Rudalics <rudalics@gmx.at>
Provide invisible mouse pointers on Windows. (Bug#6105) (Bug#12922)
* src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
* src/w32term.c (w32_hide_hourglass): Handle
f->pointer_invisible.
(w32_toggle_invisible_pointer): New function.
(w32_create_terminal): Add w32_toggle_invisible_pointer as
toggle_invisible_pointer_hook for this terminal.
2015-06-25 Xue Fuqiao <xfq.free@gmail.com>
Doc fix for deletion commands
'delete-char' does not respect the value of 'delete-active-region'.
* doc/emacs/killing.texi (Deletion):
Fix documentation for some single-char deletion commands.
* doc/emacs/help.texi (Apropos):
Improve documentation of 'apropos-do-all'.
* doc/emacs/help.texi (Help Summary):
Improve documentation of 'describe-mode'.
2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
Fix submake dependency bug with .h files
* src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
before the submake in $(libsrc) would spin off a subsubmake
for $(lib) in parallel with our submake for $(lib) (Bug#20894).
2015-06-25 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/character-fold.el (character-fold-table): Reuse `table'
2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
Translate undisplayable to `
* doc/lispref/help.texi (Keys in Documentation):
* lisp/international/mule-cmds.el (set-locale-environment):
* lisp/term/w32console.el (terminal-init-w32console):
* src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
If is not displayable, transliterate it to `, not to '. See:
http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
Fix C99 incompatibilities in Cairo code
* src/image.c (xpm_load) [USE_CAIRO]:
* src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
Fix pointer signedness problem.
2015-06-25 Oleh Krehel <ohwoeowho@gmail.com>
lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
* lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
`with-output-to-string' should have the same indent as `progn'.
This is in line with the declaration of `with-output-to-string'.
2015-06-25 Paul Eggert <eggert@cs.ucla.edu>
Get ./configure; make -C src emacs to work
Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
* lib-src/Makefile.in (../lib/libgnu.a):
* src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
2015-06-24 Paul Eggert <eggert@cs.ucla.edu>
Fix GC bugs --with-wide-int and Qnil == 0
Use the same alignment for the !USE_LSB_TAG case as for the
more-typical USE_LSB_TAG case. The attempt to support arbitrary
alignments with !USE_LSB_TAG had subtle bugs in garbage collection
once we changed the representation of symbols so that Qnil == 0.
Problem reported by Eli Zaretskii (Bug#20862).
* src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
* src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
(union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
* src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
This optimization in the !USE_LSB_TAG case is no longer valid when
symbols are represented via offsets. Change the only use to
assume that pointers might hide in objects.
* src/lisp.h (alignas) [!USE_LSB_TAG]:
Require support in this case, too.
(TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
This is OK, because the !USE_LSB_TAG case now applies only when
Lisp_Object is wider than void *, so there's no longer any need
to shift the offset. Not shifting the offset means that
symbol representations have the same alignment as pointers,
which the GC assumes.
2015-06-24 Xue Fuqiao <xfq.free@gmail.com>
* doc/lispintro/emacs-lisp-intro.texi (Data types):
Improve documentation of 'substring'.
2015-06-24 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/character-fold.el (character-fold-table): Fix table generation
2015-06-24 Glenn Morris <rgm@gnu.org>
* nextstep/Makefile.in (all): Make it the first target.
(../src/emacs${EXEEXT}): Add rule for making it.
2015-06-24 Artur Malabarba <bruce.connor.am@gmail.com>
* etc/NEWS: Fix mention to old function name
* lisp/character-fold.el: New file (Bug#20887)
(character-fold-to-regexp): New function.
* lisp/replace.el (replace-search): Check value of
`character-fold-search'.
* lisp/isearch.el: Move character-folding code to
character-fold.el
(isearch-toggle-character-fold): New command.
(isearch-mode-map): Bind it to "\M-sf".
(isearch-mode): Check value of `character-fold-search'.
2015-06-24 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/subr.el (remove-from-invisibility-spec): Handle the t case
* lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
* lisp/progmodes/xref.el: Avoid init-args in oref.
* lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
(xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
2015-06-24 Glenn Morris <rgm@gnu.org>
* Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
2015-06-24 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/gnus/nnmaildir.el: Silence lexical warnings
* lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
functional style.
(nnmaildir--update-nov): Remove unused var `numdir'.
(nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
(nnmaildir-request-group, nnmaildir-request-create-group)
(nnmaildir-request-post, nnmaildir-request-move-article)
(nnmaildir-request-accept-article, nnmaildir-active-number): Mark unused args.
(nnmaildir-get-new-mail, nnmaildir-group-alist)
(nnmaildir-active-file): Declare.
(nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
(nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
`mark', `end', `new-mark', and `mark-sym'.
(nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
`nlist2'.
(nnmaildir-request-expire-articles):
Remove unused vars `article', `stop' and `nlist2'.
(nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
`end'. Use nnmaildir--article when dyn-binding is needed.
Give the value directly in the `let' for `del-mark', `del-action',
`add-action', and `set-action'. Don't use `add-to-list' on a local var.
(nnmaildir-close-server): Declare those local vars that need to be
dyn-bound.
2015-06-24 Paul Eggert <eggert@cs.ucla.edu>
* src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
Port selection info fix to clang
* src/keyboard.h (kbd_buffer_store_event_hold):
Don't assume C11 semantics for alignof (Bug#20756).
Fix bug that munged selection info
On some optimizing C compilers, copying a structure did not
copy the padding bytes between elements, and the type punning
between struct input_data and struct selection_input_data did
not work. Change the C code to use a proper union type instead.
Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
* src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
(readable_events, discard_mouse_events, kbd_buffer_events_waiting)
(kbd_buffer_get_event, process_special_events, stuff_buffered_input)
(mark_kboards):
Use union buffered_input_event, not struct input_event.
(clear_event, deliver_input_available_signal, process_special_events):
Remove unnecessary forward decls.
(kbd_buffer_store_buffered_event): New function, mostly just the
old kbd_buffer_store_event_hold, except its argument is of type
union buffered_input_event, not struct input_event.
(kbd_buffer_unget_event): Define only if HAVE_X11, since it's
not needed otherwise. Argument is now of type
struct selection_input_event *, not struct input_event *.
All callers changed.
(clear_event): Arg is now of type union buffered_input_event *,
not struct input_event *. All callers changed.
* src/keyboard.h [HAVE_X11]: Include "xterm.h".
(union buffered_input_event): New type.
(kbd_buffer_store_event_hold): Now an inline function,
defined here.
* src/termhooks.h (EVENT_KIND_WIDTH): New constant.
(struct input_event): Use it.
* src/xselect.c (struct selection_event_queue):
Make elements be of type struct selection_input_event,
not struct input_event.
(selection_input_event_equal): New static function.
(x_queue_event): Use it.
(x_queue_event, x_decline_selection_request)
(x_selection_current_request, x_reply_selection_request)
(x_handle_selection_request, x_handle_selection_clear)
(x_handle_selection_event): Use struct selection_input_event,
not struct input_event. All callers changed.
(x_convert_selection): Omit unused first arg. All callers changed.
(Fx_disown_selection_internal): Omit unnecessary union.
* src/xterm.c (handle_one_xevent): Use new union buffered_input_event
rather than rolling our own equivalent. Prefer sie.kind when
setting up that kind of structure.
Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
* src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
(SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
(SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
(SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
(SELECTION_EVENT_TIME, x_handle_selection_event):
Arg is now of type struct selection_input_event *)
not struct input_event *. All callers changed.
2015-06-23 Glenn Morris <rgm@gnu.org>
* Makefile.in (install-arch-dep): Simplify with Make conditionals.
2015-06-23 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/isearch.el: Fold many unicode characters to ASCII
(isearch-character-fold-search, isearch--character-fold-extras)
(isearch--character-fold-table): New variable.
(isearch--character-folded-regexp): New function.
(isearch-search-fun-default): Use them.
* lisp/replace.el (replace-character-fold): New variable.
(replace-search): Use it.
* etc/NEWS: Document it.
2015-06-23 Glenn Morris <rgm@gnu.org>
Check for an input event before showing a dialog box. (Bug#20813)
* lisp/subr.el (y-or-n-p):
* src/fns.c (Fyes_or_no_p): Check last-input-event as well
as last-nonmenu-event.
2015-06-23 Jürgen Hartmann <juergen_hartman_@hotmail.com> (tiny change)
Respect switch-to-visible-buffer more rigidly. (Bug#20861)
* lisp/window.el (switch-to-visible-buffer): Doc adjustment.
(switch-to-prev-buffer, switch-to-next-buffer): Respect
switch-to-visible-buffer independent of the windows history.
2015-06-23 Paul Eggert <eggert@cs.ucla.edu>
* src/keyboard.c (last_timer_event): Remove unused var.
2015-06-23 Artur Malabarba <bruce.connor.am@gmail.com>
* test/automated/package-test.el (package-test-update-listing):
Fix test.
2015-06-23 Glenn Morris <rgm@gnu.org>
Revert 2014-06-25 nextstep/Makefile change.
* nextstep/Makefile.in (${ns_appbindir}): Remove rule.
(${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
not as an order-only prerequisite.
* configure.ac (--with-ns): Enable by default on OS X.
2015-06-23 Leo Liu <sdl.web@gmail.com>
Fix shell-for/backward-command to exclude spaces
* lisp/shell.el (shell-forward-command, shell-backward-command):
Handle the 'move case from re-search-forward/backward.
fixes debbugs:20873
2015-06-22 Juri Linkov <juri@linkov.net>
* lisp/replace.el (query-replace-read-from): Add separator to
the local binding of text-property-default-nonsticky. (Bug#20690)
* lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
(Bug#20785)
2015-06-22 Ken Brown <kbrown@cornell.edu>
Enable CPU profiling on Cygwin
* src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
change that undefined this.
(SIGEV_SIGNAL): Ensure that this is defined as a macro.
* src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
Cygwin.
Improve diagnostics of profiler-cpu-start
* src/profiler.c (setup_cpu_timer): Change return type to 'int';
return -1 if the sampling interval is invalid.
(Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
fails. (Bug#20843)
2015-06-22 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Exclude packages by name
(package-hidden-regexps): New variable.
(package-menu--refresh): Use it.
(package-menu-hide-package): New command.
* lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding
2015-06-22 Eli Zaretskii <eliz@gnu.org>
Fix debug-timer-check on systems without HAVE_TIMERFD
* src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
the expired timers, since wait_reading_process_output doesn't.
(debug_timer_callback): Enlarge the tolerance to 20 msec.
Fix RCS crashes in vc-test
* lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
ports of 'ci' on MS-Windows by always passing the -t- switch.
2015-06-22 Glenn Morris <rgm@gnu.org>
* doc/emacs/package.texi (Packages):
* doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
* doc/misc/efaq-w32.texi (Downloading): Copyedits. (Bug#20851)
2015-06-22 Paul Eggert <eggert@cs.ucla.edu>
Port tests to help-quote-translation
* test/automated/ert-x-tests.el (ert-test-describe-test):
* test/automated/package-test.el (package-test-describe-package)
(package-test-signed): Allow straight quotes, too.
2015-06-22 Dmitry Gutov <dgutov@yandex.ru>
Make find-function-on-key use the current window
* lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
Extract from `find-function-on-key', add a second argument.
(find-function-on-key): Use it (bug#19679).
(find-function-on-key-other-window)
(find-function-on-key-other-frame): New commands.
2015-06-21 Nicolas Petton <nicolas@petton.fr>
Revert "Define `map-elt' as a generalized variable"
This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
2015-06-21 Ken Brown <kbrown@cornell.edu>
Drop support for CPU profiling on Cygwin
* src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
(Bug#20843)
2015-06-21 Paul Eggert <eggert@cs.ucla.edu>
Fix some “nested” quoting confusion in doc strings
* lisp/emacs-lisp/advice.el (ad-map-arglists):
* lisp/kermit.el (kermit-clean-on):
* lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
* src/keyboard.c (Frecursive_edit):
Use curved quotes when quoting text containing apostrophe,
so that the apostrophe isn't curved in the output.
2015-06-21 Nicolas Petton <nicolas@petton.fr>
Define `map-elt' as a generalized variable
* lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
* lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
* lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
`setf' with `map-elt'.
* test/automated/map-tests.el: Comment out `test-map-put-literal'.
2015-06-21 Michael Albinus <michael.albinus@gmx.de>
Improve error handling in tramp-adb.el
* lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
Improve error handling.
2015-06-21 Nicolas Petton <nicolas@petton.fr>
Reuse `alist-get' in map.el
* lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
elements.
2015-06-21 Eli Zaretskii <eliz@gnu.org>
Fix bytecomp-tests--warnings when $TMPDIR has a long name
* test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
Allow the warning to begin on the 3rd, not only 2nd line, which
happens if temporary-file-directory has a very long name.
Expect 2 icalendar tests to fail on MS-Windows
* test/automated/icalendar-tests.el (icalendar-import-with-timezone)
(icalendar-real-world): Make them expected failures on MS-Windows.
2015-06-20 Paul Eggert <eggert@cs.ucla.edu>
Improve port of settings UI to older displays
* lisp/cus-start.el (standard): Don't assume curved quotes are
easily distinguishable when users are tinkering with a setting
that affects how curved quotes are generated.
Fix quoting in electric-quote-mode doc string
* lisp/electric.el (electric-quote-mode): Fix quoting.
This is a fallout from the recent change introducing
help-quote-translation.
Spelling fix
* doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
* src/doc.c (syms_of_doc): Remove unused symbols.
2015-06-20 Martin Rudalics <rudalics@gmx.at>
In window-state-put undedicate target window. (Bug#20848)
* lisp/window.el (window-state-put): Undedicate target window
before putting STATE into it. (Bug#20848)
2015-06-19 Paul Eggert <eggert@cs.ucla.edu>
Merge from origin/emacs-24
a5e6f33 Fixes: debbugs:20832
b9f02cf Fixes: debbugs:20832
2015-06-19 Eli Zaretskii <eliz@gnu.org>
Fix file-in-directory-p when the directory is UNC
* lisp/files.el (file-in-directory-p): Support files and
directories that begin with "//". (Bug#20844)
2015-06-19 Stephen Berman <stephen.berman@gmx.net>
(Bug#20832)
* lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
in the minibuffer.
2015-06-19 Nicolas Richard <youngfrog@members.fsf.org>
(Bug#20832)
* lisp/calendar/todo-mode.el (todo-show): Signal an error
if buffer for adding new todo file is empty but modified.
2015-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
(filepos-to-bufferpos): Further tweaks to the utf-16 code
* lisp/international/mule-util.el (filepos-to-bufferpos):
Fix typo. Move non-exact check to the utf-16 branch (the only one
affected). Don't use byte-to-position for the utf-16 case.
2015-06-19 Eli Zaretskii <eliz@gnu.org>
Minor fixes in filepos-to-bufferpos
* lisp/international/mule-util.el (filepos-to-bufferpos): Remove
test for utf-8-emacs. Exempt single-byte encodings from the
'use-exact' path when QUALITY is 'exact'. Test UTF-16 encodings
for BOM before subtracting 2 bytes. Use 'identity' when adjusting
UTF-16 encoded files for CR-LF EOLs.
2015-06-19 Paul Eggert <eggert@cs.ucla.edu>
Improve the optional translation of quotes
Fix several problems with the recently-added custom variable
help-quote-translation where the code would quote inconsistently
in help buffers. Add support for quoting 'like this', which
is common in other GNU programs in ASCII environments. Change
help-quote-translation to use more mnemonic values: values are now the
initial quoting char, e.g., (setq help-quote-translation ?`) gets the
traditional Emacs help-buffer quoting style `like this'. Change the
default behavior of substitute-command-keys to match what's done in
set-locale-environment, i.e., quote like this if displayable,
'like this' otherwise.
* doc/lispref/help.texi (Keys in Documentation): Document
new behavior of substitute-command-keys, and document
help-quote-translation.
* doc/lispref/tips.texi (Documentation Tips):
Mention the effect of help-quote-translation.
* etc/NEWS: Mention new behavior of substitute-command-keys,
and merge help-quote-translation news into it.
When talking about doc strings, mention new ways to type quotes.
* lisp/cedet/mode-local.el (overload-docstring-extension):
Revert my recent change to this function, which shouldn't be
needed as the result is a doc string.
* lisp/cedet/mode-local.el (mode-local-print-binding)
(mode-local-describe-bindings-2):
* lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
* lisp/cus-theme.el (describe-theme-1):
* lisp/descr-text.el (describe-text-properties-1, describe-char):
* lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
* lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
(eieio-help-constructor):
* lisp/emacs-lisp/package.el (describe-package-1):
* lisp/faces.el (describe-face):
* lisp/help-fns.el (help-fns--key-bindings)
(help-fns--compiler-macro, help-fns--parent-mode)
(help-fns--obsolete, help-fns--interactive-only)
(describe-function-1, describe-variable):
* lisp/help.el (describe-mode):
Use substitute-command-keys to ensure a more-consistent quoting
style in help buffers.
* lisp/cus-start.el (standard):
Document new help-quote-translation behavior.
* lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
* lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
(help-xref-url-regexp):
* lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
* lisp/wid-edit.el (widget-documentation-link-regexp):
Also match 'foo', in case we're in a help buffer generated when
help-quote-translation is ?'.
* src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
(LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
(uRSQM1, uRSQM2, LSQM, RSQM): New constants.
(Fsubstitute_command_keys): Document and implement new behavior.
(Vhelp_quote_translation): Document new behavior.
2015-06-18 Glenn Morris <rgm@gnu.org>
* lisp/cus-start.el (help-quote-translation): Add :version.
* src/doc.c (Fsubstitute_command_keys): Make previous change compile.
2015-06-18 Alan Mackenzie <acm@muc.de>
Make translation of quotes to curly in doc strings optional.
src/doc.c (traditional, prefer-unicode): new symbols.
(help-quote-translation): new variable.
(Fsubstitute_command_keys): make translation of quotes dependent on
`help-quote-translation'; also translate curly quotes back to ASCII
ones.
lisp/cus-start.el (top-level): Add a customization entry for
`help-quote-translation'.
2015-06-18 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Don't always propagate async errors
(package--with-work-buffer-async): Only propagate the error if the
callback returns non-nil.
(package--download-one-archive): Return nil on the signature
checking callback if we accept unsigned.
(package--download-and-read-archives): Return non-nil on the
archive download callback.
2015-06-18 Martin Rudalics <rudalics@gmx.at>
Fix last fix"
Set image_cache_refcount before x_default_parameter calls. (Bug#20802)
* src/nsfns.m (Fx_create_frame):
* src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
image_cache_refcount before first x_default_parameter call.
2015-06-18 Eli Zaretskii <eliz@gnu.org>
Improve and extend filepos-to-bufferpos
* lisp/international/mule-util.el (filepos-to-bufferpos--dos):
Don't barf if F returns nil for some argument.
(filepos-to-bufferpos): Expand to support UTF-16 and not assume
that every encoding of type 'charset' is single-byte.
2015-06-18 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package-menu--perform-transaction):
Properly delete packages. (Bug#20836)
2015-06-18 Eli Zaretskii <eliz@gnu.org>
Update data files from just-released Unicode 8.0
* etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
status.
* test/BidiCharacterTest.txt: Update from Unicode 8.0.
* admin/unidata/BidiMirroring.txt:
* admin/unidata/BidiBrackets.txt:
* admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
2015-06-18 Paul Eggert <eggert@cs.ucla.edu>
Document curved quotes a bit better
* doc/emacs/basic.texi (Inserting Text):
Mention C-x 8. Change example to use curved quote rather
than infinity, as this lets us give more ways to do it.
* doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
and quotation marks.
* doc/emacs/text.texi (Quotation Marks):
* doc/lispref/tips.texi (Documentation Tips):
Add "curly quotes" and "curved quotes" to the index.
* doc/emacs/text.texi (Quotation Marks):
Give the C-x 8 shorthands for curved quotes.
Cross-reference to "Quotation Marks".
2015-06-17 Daiki Ueno <ueno@gnu.org>
Add pinentry.el for better GnuPG integration
* lisp/pinentry.el: New file.
* etc/NEWS: Add entry about pinentry.el.
* lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
(Bug#20550)
2015-06-17 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Slightly better error reporting.
2015-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
(define-minor-mode): Use setq-default for :global minor modes
* lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
Use setq-default for :global minor modes (bug#20712).
2015-06-17 Eli Zaretskii <eliz@gnu.org>
Avoid infloop in redisplay with tall images
* src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
down near ZV. (Bug#20808)
Call bidi_unshelve_cache to avoid memory leaks. Use IT_CHARPOS
instead of CHARPOS.
2015-06-17 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package--with-work-buffer-async):
Fix error reporting.
* lisp/let-alist.el: move to lisp/emacs-lisp/let-alist.el
* lisp/emacs-lisp/package.el: Revert buffer after any operation
Call `package-menu--post-refresh' after any operation that changes
the package database (`package-install' and `package-delete'). To
avoid performance issues in large transactions, these functions
add `post-refresh' to `post-command-hook' instead of calling it
immediately.
(package-menu--mark-or-notify-upgrades): New function.
(list-packages): Add it to `package--post-download-archives-hook'.
(package-menu--post-refresh): Lose the upgrade-checking code, add
code to remove itself from `post-command-hook'.
(package-install, package-delete): Add it to `post-command-hook'.
(package-menu-execute): Don't call `package-menu--post-refresh'.
2015-06-17 Stephen Leake <stephen_leake@stephe-leake.org>
Add missing function xref-location-group for elisp-mode.
* lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
2015-06-17 Wolfgang Jenkner <wjenkner@inode.at>
* src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
The behavior now matches the description in the manual. (Bug#20783)
2015-06-17 Xue Fuqiao <xfq.free@gmail.com>
Update tutorials/TUTORIAL.cn
* etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
2015-06-17 Glenn Morris <rgm@gnu.org>
Generate char-script-table from Unicode source. (Bug#20789)
* admin/unidata/Makefile.in (AWK): New, set by configure.
(all): Add charscript.el.
(blocks): New variable.
(charscript.el, ${unidir}/charscript.el): New targets.
(extraclean): Also remove generated charscript.el.
* admin/unidata/blocks.awk: New script.
* admin/unidata/Blocks.txt: New data file, from unicode.org.
* lisp/international/characters.el: Load charscript.
* src/Makefile.in (charscript): New variable.
(${charscript}): New target.
(${lispintdir}/characters.elc): Depend on charscript.elc.
(temacs$(EXEEXT)): Depend on charscript.
* lisp/international/characters.el (char-script-table): Tweak
some ranges to better match the source. (Bug#20789#17)
Remove "no-byte-compile: t" from a few files.
* lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
* lisp/obsolete/patcomp.el: No reason not to compile these.
2015-06-16 Glenn Morris <rgm@gnu.org>
Fix some typos in copied Unicode data. (Bug#20789)
* lisp/international/characters.el (char-script-table):
* lisp/international/fontset.el (script-representative-chars)
(setup-default-fontset): Fix typos.
* lisp/emacs-lisp/check-declare.el (check-declare-warn):
Don't print filename twice (it's in the prefix now).
* lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
No longer needed.
Address a compilation warning.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
Replace 't' with '_' in pcase.
Address some check-declare warnings.
* lisp/simple.el (tabulated-list-print):
* lisp/progmodes/elisp-mode.el (xref-collect-matches):
* lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
(ns-get-selection): Update declarations.
Address some compilation warnings.
* lisp/elec-pair.el (electric-pair-post-self-insert-function):
* lisp/vc/vc-git.el (vc-git-file-type-as-string):
Replace 't' with '_' in pcase.
Address some compilation warnings.
* lisp/face-remap.el (text-scale-adjust):
* lisp/menu-bar.el (popup-menu-normalize-position):
* lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
* lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
* lisp/emacs-lisp/generator.el (cps--transform-1):
* lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
* lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
* lisp/progmodes/octave.el (octave-goto-function-definition)
(octave-find-definition-default-filename):
Replace 't' with '_' in pcase.
* lisp/emacs-lisp/pcase.el (pcase--u1):
Paper-over today's bootstrap failure.
2015-06-16 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
* lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
Better confirmation message in `find-alternate-file' (Bug#20830)
* lisp/files.el (find-alternate-file'): Improve the confirmation
message to show the buffer name.
Better docstring for null. (Bug#20815)
* src/data.c (null): Improves the docstring, saying what null returns
when OBJECT is non-nil.
2015-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/net/newst-treeview.el: Use lexical-binding.
(filepos-to-bufferpos): Add missing cases. Make sure it terminates.
* lisp/international/mule-util.el (filepos-to-bufferpos--dos):
New auxiliary function, extracted from filepos-to-bufferpos.
Make sure it terminates.
(filepos-to-bufferpos): Use it to fix the latin-1-dos case.
Add support for the `exact' quality.
2015-06-16 Cédric Chépied <cedric.chepied@gmail.com>
Identify feeds in newsticker treeview with :nt-feed property
* lisp/net/newst-treeview.el:
(newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
2015-06-16 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/pcase.el: Improve docs and error handling
(pcase--self-quoting-p): Floats aren't self-quoting.
(pcase): Tweak docstring.
(pcase--u1): Deprecate the t pattern. Improve error detection for
the nil pattern.
(\`): Tweak docstring. Signal an error for unrecognized cases.
(bug#20784)
2015-06-16 Eli Zaretskii <eliz@gnu.org>
Fix infloop in filepos-to-bufferpos
* lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
offset calculation, and make it conditional on the eol-type of the
file's encoding. (Bug#20825)
2015-06-16 Martin Rudalics <rudalics@gmx.at>
Fix handling of image cache refcounts. (Bug#20802)
This backports Eli Zaretskii's solution of this problem for W32
to X and NS.
* src/nsfns.m (image_cache_refcount): Define unconditionally.
(unwind_create_frame): If the image cache's reference count
hasn't been updated yet, do that now.
(Fx_create_frame): Set image_cache_refcount unconditionally.
* src/xfns.c (image_cache_refcount): Define unconditionally.
(unwind_create_frame): If the image cache's reference count
hasn't been updated yet, do that now.
(Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
unconditionally.
* src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
X and NS.
2015-06-16 Nils Ackermann <nils@ackermath.info>
Improve reftex-label-regexps default value
* lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
keyvals label regexp more strict to better cope with unbalanced
brackets common in math documents.
2015-06-16 Glenn Morris <rgm@gnu.org>
* doc/emacs/calendar.texi (Format of Diary File):
Move "nonmarking" from here...
(Displaying the Diary): ... to here.
* doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
Swap the order of these nodes.
* doc/emacs/emacs.texi: Update detailed menu for the above change.
* doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
Update date of examples.
(Diary, Format of Diary File): Move example from former to latter.
Reduce duplication.
No need for cp51932.el, eucjp-ms.el to not be compiled any more.
* admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
Don't set no-byte-compile in the outputs.
* lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
2015-06-15 Glenn Morris <rgm@gnu.org>
* lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
* doc/emacs/calendar.texi (Diary, Format of Diary File):
Update for above diary-file change.
: * etc/NEWS: Mention this.
* lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
(apply-macro-to-region-lines): Use user-error.
* lisp/textmodes/page-ext.el (add-new-page, pages-directory)
(pages-directory-for-addresses): Doc fixes.
2015-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/info.el: Cleanup bytepos/charpos issues
* 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/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
(perl--syntax-exp-intro-keywords): New var.
(perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
(bug#20800).
2015-06-15 Paul Eggert <eggert@cs.ucla.edu>
Fix quoting when making derived mode docstring
* lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
Nest regexp-quote inside format, not the reverse.
Problem reported by Artur Malabarba in:
http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
2015-06-15 Eli Zaretskii <eliz@gnu.org>
Fix current-iso639-language on MS-Windows
* 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.
Limit Symbola usage some more
* lisp/international/fontset.el (setup-default-fontset): Limit
Symbol coverage of Currency Symbols to u+20B6..u+20CF.
(Bug#20727)
2015-06-15 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/map.el (map-let): Better docstring.
2015-06-15 Paul Eggert <eggert@cs.ucla.edu>
Spelling fixes
2015-06-14 Glenn Morris <rgm@gnu.org>
* lisp/version.el (emacs-repository-version-git): Demote errors.
Check result is a hash.
2015-06-14 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package--with-work-buffer-async):
Catch errors that happen before going async. (Bug#20809)
2015-06-14 Eli Zaretskii <eliz@gnu.org>
Another improvement of documentation of set-fontset-font
* doc/lispref/display.texi (Fontsets): Say explicitly that
CHARACTER can be a single codepoint.
* src/fontset.c (Fset_fontset_font): Doc fix.
Another improvement for symbol and punctuation characters
* 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)
2015-06-14 Christoph Wedler <christoph.wedler@sap.com>
Some generic support for multi-mode indentation.
* lisp/progmodes/prog-mode.el (prog-indentation-context): New
variable.
(prog-first-column, prog-widen): New convenience functions.
2015-06-14 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
Don't assume that `tabulated-list-printer' will leave point at the
end of the buffer. (Bug#20810)
2015-06-13 Glenn Morris <rgm@gnu.org>
Tweaks for getting repository version; a bit more like it was for bzr.
* 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.
* lisp/startup.el (command-line-1): Inform if skipping relative
file names due to deleted PWD.
* src/xsmfns.c (x_session_initialize): Avoid libSM crash
when starup directory is missing. (Bug#18851)
(errno.h): Include it.
2015-06-13 Paul Eggert <eggert@cs.ucla.edu>
Better fix for documenting `X as "`X"
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.
2015-06-13 Eli Zaretskii <eliz@gnu.org>
Improve the default fontset when Symbola is not installed
* 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)
Improve documentation of ':lang' in font specs
* src/font.c (Ffont_spec): Doc fix: elaborate on the values and
use of the ':lang' property of the font spec.
* doc/emacs/frames.texi (Fonts): Document the language names that
can be in the STYLE part of XLFD.
* doc/lispref/display.texi (Low-Level Font): Document the ':lang'
property.
* nt/README: Don't advertise the (obsolescent) w32 FAQ.
* nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
Revert last change in fontset.el
* 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)
2015-06-12 Glenn Morris <rgm@gnu.org>
Ensure early startup warnings are visible at the end. (Bug#20792)
* 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/version.el (emacs-repository-get-version):
Avoid calling external executable if possible. (Bug#20799)
2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
Document `X as "`X", not as "(` X)"
* lisp/help.el (help-split-fundoc, help--make-usage-docstring):
Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
* src/print.c (print_object): Minor simplification.
2015-06-12 Glenn Morris <rgm@gnu.org>
* src/buffer.c (init_buffer): Add final newline to message.
2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
Configure Symbola font only if installed
* lisp/international/fontset.el (setup-default-fontset):
Don't specify the Symbola font if it's not installed.
Likewise for FreeMono. (Bug#20727)
2015-06-12 Eli Zaretskii <eliz@gnu.org>
Configure Symbola font only for symbols and punctuation
* 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)
2015-06-12 Andreas Schwab <schwab@linux-m68k.org>
Fix crash in fontset-info
* src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
non-nil.
2015-06-12 Paul Eggert <eggert@cs.ucla.edu>
Port to Solaris 10 sparc + Sun C 5.13
* configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
Adjust to process.c change.
* src/process.c (create_process): Declare volatile variables at
top level of this function, so that they're less likely to be
reused later in the function in the code executed by the vforked
child. Do not declare locals used only in the vforked child, as
they might share memory with locals still live in the parent.
Instead, use the same variables in the child as in the parent.
This works around a subtle bug that causes a garbage collector
crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
2015-06-12 Glenn Morris <rgm@gnu.org>
* lisp/startup.el (normal-top-level): Don't let *Messages* get
a nil default-directory.
2015-06-11 Glenn Morris <rgm@gnu.org>
* lisp/startup.el (normal-top-level): Use delay-warning. (Bug#20792)
Some progress towards starting with PWD deleted. (Bug#18851)
* src/buffer.c (init_buffer): Handle get_current_dir_name failures.
* lisp/startup.el (normal-top-level, command-line-1):
* lisp/minibuffer.el (read-file-name-default):
Handle default-directory being nil.
2015-06-11 Paul Eggert <eggert@cs.ucla.edu>
Fix "not a tty" bug on Solaris 10
* configure.ac (PTY_OPEN): Define to plain 'open'
on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
* src/process.c (allocate_pty): Set the O_CLOEXEC flag after
calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
hosts that call grantpt which does its work via a setuid subcommand
(Bug#19191, Bug#19927, Bug#20555, Bug#20686).
Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
seems relevant in that case too.
2015-06-11 Juri Linkov <juri@linkov.net>
* lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
* lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
(Bug#20785)
2015-06-11 Glenn Morris <rgm@gnu.org>
* lisp/international/characters.el (char-script-table): Fix typo.
2015-06-11 Paul Eggert <eggert@cs.ucla.edu>
Fix quoting of help for functions with odd names
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.
2015-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/thingatpt.el (in-string-p): Revert last change,
since in-string-p is not used in thingatpt.el but only from outside.
Also, use lexical binding.
2015-06-11 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/let-alist.el (let-alist--deep-dot-search): Fix cons
* test/automated/let-alist.el (let-alist-cons): Test it.
2015-06-11 Nicolas Richard <theonewiththeevillook@yahoo.fr>
* src/syntax.c (Fbackward_prefix_chars): Reword docstring
2015-06-10 Glenn Morris <rgm@gnu.org>
* build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
Improve generated ChangeLog for gitmerge.el commits. (Bug#20717)
* build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
* admin/gitmerge.el (gitmerge-commit-message):
Exclude "skipped" messages from ChangeLog once again.
Slight namespace cleanup for thingatpt.el.
* 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.
* lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
Move requiring of finder from here...
(checkdoc-package-keywords): ... to here.
Use 'user-error' in a few calendar files.
* lisp/calendar/appt.el (appt-add):
* lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
(calendar-generate):
* lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
Replace 'error' with 'user-error'.
* lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
* lisp/files-x.el (add-file-local-variable):
Special-case 'lexical-binding'. (Bug#20641)
* lisp/progmodes/executable.el (executable-self-display): Obsolete.
No longer autoload.
* doc/misc/autotype.texi (Executables):
Undocument executable-self-display.
* lisp/progmodes/executable.el (executable-self-display):
Use non-obsolete tail syntax. (Bug#20779)
(executable-self-display): Doc update.
2015-06-10 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/checkdoc.el: Use lexical-binding
(finder-known-keywords): Silence byte-compiler.
2015-06-09 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/simple.el (eval-expression): Macroexpand before evaluating (bug#20730)
* lisp/progmodes/sh-script.el: Better handle nested quotes
(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.
* lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
2015-06-09 Glenn Morris <rgm@gnu.org>
* test/automated/Makefile.in (ELFILES): Sort.
* Makefile.in (SUBDIR_MAKEFILES):
* lwlib/Makefile.in (WARN_CFLAGS):
Use built-in Make functions rather than echo+sed.
2015-06-09 Eli Zaretskii <eliz@gnu.org>
Update char-script-table
* lisp/international/characters.el (char-script-table): Update
from Unicode 8.0 Draft.
Improve font selection for punctuation and other symbols
* src/fontset.c (face_for_char): If the character's script is
'symbol', and the font used for ASCII face has a glyph for it, use
the font for the ASCII face instead of searching the fontsets.
This comes instead of NS-specific code that used the current
face's font instead, which is now disabled due to undesirable
consequences. (Bug#20727)
2015-06-08 Dmitry Gutov <dgutov@yandex.ru>
Skip past `#' to find BEG
* lisp/progmodes/elisp-mode.el (elisp-completion-at-point): Skip
past `#' to find BEG (bug#20771).
* test/automated/elisp-mode-tests.el
(elisp-completes-functions-after-hash-quote): New test.
2015-06-08 Eli Zaretskii <eliz@gnu.org>
Fix compilation warning/error in --without-x builds
* src/xdisp.c (append_space_for_newline): Condition GUI-specific
code on HAVE_WINDOW_SYSTEM.
Improve the default fontset wrt symbols
* lisp/international/fontset.el (setup-default-fontset): Better
setup of fontset-default for symbols: use Symbola and FreeMono.
(Bug#20727)
2015-06-08 Oleh Krehel <ohwoeowho@gmail.com>
Add new command checkdoc-package-keywords
* lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag): New
defcustom.
(checkdoc-list-of-strings-p): Add doc.
(checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
non-nil, call `checkdoc-package-keywords'.
(checkdoc-get-keywords): New defun.
(checkdoc-package-keywords): New command. Warns if the current file
has package.el-style keywords that aren't in `finder-known-keywords'.
* etc/NEWS: Add entry.
2015-06-08 Eli Zaretskii <eliz@gnu.org>
Avoid crashes when key-binding is called from a timer
* src/keymap.c (Fkey_binding): Don't segfault if called with an
empty vector as KEY. (Bug#20705)
Fix a thinko in arc-mode.el
* lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
non-Zip64 case. (Bug#20769)
2015-06-08 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package-delete): Make interactive
2015-06-08 Oleh Krehel <ohwoeowho@gmail.com>
checkdoc.el (checkdoc-file): New function
* lisp/emacs-lisp/checkdoc.el (checkdoc-error): When
`checkdoc-diagnostic-buffer' is set to "*warn*", print the warning
to the standard output.
(bug#20754)
2015-06-07 Glenn Morris <rgm@gnu.org>
* admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
* src/font.c (syms_of_font) <font-log>: Doc fix.
Remove the obsolete leading "*" from some C doc strings.
* src/coding.c (syms_of_coding):
* src/font.c (syms_of_font): Remove leading "*" from docs.
* lisp/cus-start.el (enable-character-translation): Add it.
2015-06-07 Paul Eggert <eggert@cs.ucla.edu>
Move gen_origin from program to data
That way, 'make change-history' needs to change only ChangeLog.2,
instead of having to change two files.
* ChangeLog.2: Add commit info for range that this file covers.
* Makefile.in (new_commit_regexp): New macro.
(change-history-nocommit): Simplify, by putting what used to be
the gen_origin value into the data (ChangeLog.2) rather than
into the program (gitlog-to-emacslog).
* build-aux/gitlog-to-emacslog (gen_origin): Calculate from
the input file (e.g., ChangeLog.2) rather than by having a
constant in the program. Substitute it into the output.
2015-06-07 Dmitry Gutov <dgutov@yandex.ru>
Escape any quotes in the function name
* lisp/help-fns.el (help-fns--signature): Quote any quotes in the
function name (bug#20759).
2015-06-07 Eli Zaretskii <eliz@gnu.org>
Adapt 'struct timespec' to next release of MinGW runtime
* nt/inc/ms-w32.h (struct timespec): Don't declare if
__struct_timespec_defined is defined.
2015-06-06 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib
This incorporates:
2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
2015-06-05 stdio: Don't redefine gets when using C++
2015-06-05 acl-permissions: port to AIX, C89 HP-UX
2015-06-02 file-has-acl: fix build on Mac OS X 10
2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
2015-06-01 pthread_sigmask: discount system version if a simple macro
2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
* doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
* lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
* m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
* lib/gnulib.mk: Regenerate.
2015-06-06 Juri Linkov <juri@linkov.net>
* lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
before calling grep-compute-defaults because now it affects the
command lines computed in grep-compute-defaults. (Bug#20728)
2015-06-06 Glenn Morris <rgm@gnu.org>
Address some compilation warnings.
* lisp/international/mule-cmds.el (w32-get-console-codepage)
(w32-get-console-output-codepage):
* lisp/progmodes/elisp-mode.el (xref-collect-references):
* lisp/version.el (cairo-version-string): Declare.
* lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
2015-06-06 Eli Zaretskii <eliz@gnu.org>
Fix display when a font claims large values of ascent and descent
This fixes bug#20628.
* src/xdisp.c (get_phys_cursor_geometry): Correct the Y
coordinate of a hollow cursor glyph when the original glyph's
ascent is too small.
(get_font_ascent_descent, normal_char_ascent_descent)
(normal_char_height): New functions.
(handle_single_display_spec, append_space_for_newline)
(calc_pixel_width_or_height, produce_stretch_glyph)
(calc_line_height_property): Use normal_char_ascent_descent and
normal_char_height.
(x_produce_glyphs): When font-global values of ascent and descent
are too large, use per-character glyph metrics instead, if
possible. But don't allow the glyph row's ascent and descent
values become smaller than the values from the metrics of the
font's "normal" character.
* src/xftfont.c (xftfont_draw):
* src/w32font.c (w32font_draw): Correct the values of ascent and
descent used to draw glyphless characters' hex code in a box.
* src/xterm.c (x_draw_glyph_string_background):
* src/xdisp.c (x_produce_glyphs):
* src/w32term.c (x_draw_glyph_string_background):
* src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
to detect fonts whose global ascent and descent values are too
large to be used in layout decision, and redraw the background
when that happens.
* src/dispextern.h (FONT_TOO_HIGH): New macro.
(get_font_ascent_descent): Add prototype.
* src/xterm.c (x_new_font):
* src/w32term.c (x_new_font):
* src/nsterm.m (x_new_font):
* src/font.c (font_open_entity):
* src/composite.c (composition_gstring_width): Use
get_font_ascent_descent to obtain reasonable values for ascent and
descent of a font.
2015-06-06 Nicolas Richard <youngfrog@members.fsf.org>
Add assertion in adjust_point_for_property
* src/keyboard.c (adjust_point_for_property): Add eassert for
current buffer being shown in selected window.
2015-06-06 Dmitry Gutov <dgutov@yandex.ru>
Replace uses of in-string-p; make it obsolete
* lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
(end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
2015-06-06 Eli Zaretskii <eliz@gnu.org>
Fix Dired display of an explicit list of files by ls-lisp.el
* lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
(ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
correct for when displaying individual files separately, not as
part of listing a directory, in which case these values are not
recomputed by 'ls-lisp-insert-directory', but used verbatim.
* lisp/dired.el (dired): Doc fix. (Bug#20739)
2015-06-06 Nicolas Richard <youngfrog@members.fsf.org>
Do not adjust point in a non-selected window
* src/keyboard.c (command_loop_1): Do not adjust point when
current buffer is not shown in selected window (Bug#20590).
* etc/DEBUG: Mention 'maybe_call_debugger'
2015-06-05 Nicolas Petton <nicolas@petton.fr>
Fix a unit test for map.el
* test/automated/map-tests.el (test-map-let): Fix the test to work
with the new syntax of `map-let'.
* lisp/emacs-lisp/map.el (map-let): Better docstring.
Better syntax for the map pcase pattern
* lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
bindings of the form (KEY PAT) or SYMBOL. KEY is not quoted.
* lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
Fix a byte-compiler error in map-put and map-delete
* lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
called with a symbol.
2015-06-05 Glenn Morris <rgm@gnu.org>
* admin/gitmerge.el (gitmerge-commit-message):
Revert to including "skipped" messages in ChangeLog once again.
2015-06-05 Tassilo Horn <tsdh@gnu.org>
Use string> instead of equiv lambda with string<
* lisp/help.el (view-emacs-news): Use string> instead of equivalent
lambda with string<.
2015-06-05 Glenn Morris <rgm@gnu.org>
* lisp/emacs-lisp/map.el (map--dispatch): Move before use.
(map--delete-array): Fix typo.
* test/automated/map-tests.el: Replace "assert" with "should".
* lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
(SUBDIRS_REL): Derive from SUBDIRS.
Tweak some build messages.
* lisp/Makefile.in ($(lisp)/loaddefs.el):
* lisp/cus-dep.el (custom-make-dependencies):
* lisp/finder.el (finder-compile-keywords): Say what we are doing.
* lisp/international/titdic-cnv.el (batch-titdic-convert):
Don't say how to compile.
2015-06-05 Paul Eggert <eggert@cs.ucla.edu>
Omit U+0332 COMBINING LOW LINE in previous change
It turns out that it does not work on Ubuntu 15.04.
Fix transliteration of Bahá'í months
* lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
Improve quality of Latin transliteration of Bahá'í month names.
Fix curved quotes in a few places
* lisp/calc/calc-misc.el (calc-help): Fix quoting.
The strings in question are not doc strings, so this partially
undoes the recent change that assumed they were doc strings.
* lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
* lisp/info.el (Info-finder-find-node):
Use curved quotes.
* lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
Also allow curved quotes in doc strings.
2015-06-04 Glenn Morris <rgm@gnu.org>
* lisp/Makefile.in (AM_V_at): Add missing definition.
* lisp/Makefile.in: Quieten output a bit.
($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
Don't echo directories, since the commands we invoke print them.
* lisp/Makefile.in: Replace shell fragments in variables with $(shell).
(SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
(SUBDIRS_SUBDIRS): New variables.
(setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
Remove.
($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
(update-subdirs, compile-main, compile-clean):
Replace "setwins" usage with new "SUBDIRS" variables.
* lisp/vc/compare-w.el (compare-windows-get-window-function):
Fix :version tag.
2015-06-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* src/ftfont.c (ftfont_open2): Round divisions by upEM.
Undo removal of x_clear_area call on expose for GTK3 or cairo.
* src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]: Clear
exposed area. (Bug#20677)
2015-06-04 Glenn Morris <rgm@gnu.org>
* doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
* lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
* lisp/leim/quail/lrt.el (quail-lrt-update-translation):
Rename from quail-lao-update-translation, since lao.el defines that.
2015-06-04 Dmitry Gutov <dgutov@yandex.ru>
Handle new-style advice in find-funct
* lisp/emacs-lisp/find-func.el (find-function-advised-original):
Handle new-style advice. Return the symbol's function definition.
(Bug#20718)
(find-function-library): Update accordingly.
2015-06-04 Nicolas Petton <nicolas@petton.fr>
Merge branch 'map'
* lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
Add new function string-greaterp
* lisp/subr.el (string-greaterp): New function. Also aliased to
`string>'.
* test/automated/subr-tests.el (string-comparison-test): Add unit
tests for `string>'and `string<'.
* src/fns.c (string-lessp): Better docstring.
2015-06-04 Eli Zaretskii <eliz@gnu.org>
Fix timezone-related functions on MS-Windows
* src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
'xputenv', even if no reallocation of tzvalbuf was necessary.
This fixes a bug in timezone-related functions on MS-Windows.
Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
2015-06-03 Paul Eggert <eggert@cs.ucla.edu>
Don't pass raw directory name to 'error'
* lisp/files.el (basic-save-buffer-2): Avoid format error if
a directory name contains a string like "%s".
2015-06-03 Dmitry Gutov <dgutov@yandex.ru>
Override 'grep --color=always'
* lisp/progmodes/xref.el (xref-collect-matches):
Override --color=always in grep-find-template.
2015-06-03 Michael Albinus <michael.albinus@gmx.de>
Fix error introduced recently in file-notify-tests.el
* test/automated/file-notify-tests.el
(file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
(file-notify--deftest-remote): Revert previous patch, not
necessary anymore.
2015-06-03 Wolfgang Jenkner <wjenkner@inode.at>
* src/indent.c (Fvertical_motion): Amend motion by 0 lines.
Starting from a display string after a newline, point went to the
previous line. Also, fix an inadvertent use of a buffer position
with FETCH_BYTE. (Bug#20701)
2015-06-03 Michael Albinus <michael.albinus@gmx.de>
Instrument file-notify-test.el in order to catch hydra error.
* test/automated/file-notify-tests.el (file-notify--deftest-remote):
Wrap body by `ignore-case', in order to trap non-local errors.
2015-06-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Undo previous changes in non-toolkit scroll bar drawing.
* src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
[!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window. (Bug#20668)
2015-06-03 Paul Eggert <eggert@cs.ucla.edu>
* .gitignore: Also ignore doc/*/*/*.html and .ps.
Support quotes 'like this' in info files
This is possible when 'makeinfo --disable-encoding' is used
in Texinfo 5.
* lisp/calc/calc-help.el (calc-describe-thing):
* lisp/gnus/gnus-art.el (gnus-button-alist):
* lisp/info.el (Info-find-index-name):
* lisp/vc/ediff-help.el (ediff-help-for-quick-help):
Also support quotes 'like this'.
* lisp/calc/calc-help.el (calc-describe-thing): Simplify.
* lisp/finder.el (finder-font-lock-keywords): Remove var that
hasn't been used in years, instead of bothering to fix its quoting.
2015-06-02 Paul Eggert <eggert@cs.ucla.edu>
* .gitignore: Remove !test/etags/html-src/*.html.
It's no longer needed, since *.html was removed. Sort.
2015-06-02 Dmitry Gutov <dgutov@yandex.ru>
Restore <D> instead of '.' in grep-find-template
* lisp/cedet/semantic/symref/grep.el
(semantic-symref-grep-use-template): Update a comment.
* lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
instead of '.' in grep-find-template (bug#20719).
(rgrep): Pass nil as the directory to rgrep-default-command.
* lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
default value for DIR.
* lisp/progmodes/xref.el (xref-collect-matches): Drop the
workaround.
2015-06-02 Glenn Morris <rgm@gnu.org>
* configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
* configure.ac (emacs_config_features): Add Cairo.
* configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
2015-06-02 Michael Albinus <michael.albinus@gmx.de>
Ensure, that autorevert works for remote files in file-notify-tests.el
* test/automated/file-notify-tests.el (file-notify--test-desc):
New defvar.
(file-notify--test-remote-enabled)
(file-notify-test00-availability, file-notify-test01-add-watch)
(file-notify-test02-events): Use it.
(file-notify--test-event-test): Check proper descriptor.
(file-notify-test03-autorevert): Ensure, that
`visited-file-modtime' has changed.
(Bug#20392)
2015-06-02 Nicolas Petton <nicolas@petton.fr>
Add a pcase pattern for maps and `map-let' based on it
* lisp/emacs-lisp/map.el (map-let): New macro.
(map--make-pcase-bindings, map--make-pcase-patterns): New functions.
* test/automated/map-tests.el: New test for `map-let'.
2015-06-02 Dmitry Gutov <dgutov@yandex.ru>
Reuse rgrep mechanics in xref-find-regexp
* lisp/progmodes/grep.el (rgrep-default-command):
Extract from `rgrep'.
* lisp/progmodes/xref.el (xref-collect-references): Split from
`xref-collect-matches'. Only handle the case of symbol search.
(xref-collect-matches): Instead of Semantic Symref, use
`rgrep-default-command', to take advantage of its directory and
file ignore settings.
(xref--collect-match): Remove the last argument, leaving the
regexp construction up to the caller.
* lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
Change to take the xref-collect- function to use as an argument.
(elisp-xref-find): Update accordingly.
* lisp/progmodes/etags.el (etags--xref-find-matches)
(etags-xref-find): Same.
Move xref-elisp-location to elisp-mode.el
* lisp/progmodes/xref.el (xref-elisp-location)
(xref-make-elisp-location, xref-location-marker): Remove here.
(xref--xref): Don't limit the type of the location slot.
* lisp/progmodes/elisp-mode.el (xref-elisp-location):
Define as a cl-struct here.
(xref-location-marker): Move here.
2015-06-02 Eli Zaretskii <eliz@gnu.org>
Minor tweaks for .gitignore
* .gitignore: Don't ignore versioned *.html and *.ps files. Don't
ignore admin/notes/tags that might be ignored as TAGS on
case-insensitive filesystems. (Bug#20710)
2015-06-02 Paul Eggert <eggert@cs.ucla.edu>
Generate curved quotes in ert doc
* lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
(ert-results-mode-menu)
(ert-results-pop-to-backtrace-for-test-at-point)
(ert-results-pop-to-messages-for-test-at-point)
(ert-results-pop-to-should-forms-for-test-at-point)
(ert-describe-test):
Quote like this, not `like this', when generating doc strings
and the like.
* test/automated/ert-x-tests.el (ert-test-describe-test):
Allow quoting like this.
2015-06-02 Nicolas Richard <youngfrog@members.fsf.org>
Add test for previous commit
* test/automated/replace-tests.el: New file.
(query-replace--split-string-tests): Add test for previous commit.
Avoid confusion in query-replace history when replacing NUL chars
* lisp/replace.el (query-replace--split-string): New function.
(query-replace-read-from): Rely on the 'separator' property
instead of searching for the NUL character (Bug#20690).
2015-06-02 Glenn Morris <rgm@gnu.org>
Merge from origin/emacs-24
8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
* admin/gitmerge.el (gitmerge-commit-message):
Exclude "skipped" messages from ChangeLog.
2015-06-01 Michael Albinus <michael.albinus@gmx.de>
Sync with Tramp repository
* lisp/net/tramp.el (tramp-message): Dump connection buffer error
messages.
(tramp-handle-make-auto-save-file-name): When calling
`make-auto-save-file-name' internally, make sure it uses Unix-like
behavior, not Windows-like behavior.
* lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
the local case, because "chown" might fail on w32.
* lisp/net/trampver.el (tramp-repository-get-version): Don't run
for XEmacs.
2015-06-01 Eli Zaretskii <eliz@gnu.org>
MS-Windows followup for batch stdout/stderr output changes
* lisp/international/mule-cmds.el (set-locale-environment): In
batch mode, use console codepages for keyboard and terminal
encoding. (Bug#20545)
Update .gitattributes for DOS EOL files
* .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
CRLF end-of-line format.
NS equivalents of xterm.c and w32term.c changes
* src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
glyph string background also when the font in use claims
preposterously large global height value. Helps to remove
artifacts left from previous displays when glyphless characters
are displayed as hex code in a box.
(x_new_font): Call get_font_ascent_descent to obtain a reasonable
value for FRAME_LINE_HEIGHT, even when a font claims very large
value for its height.
2015-06-01 Paul Eggert <eggert@cs.ucla.edu>
Avoid grave accent quoting in stderr diagnostics
A few Emacs diagnostics go directly to stderr, and so can't easily
contain curved quotes (as non-UTF-8 locales might mishandle them).
Instead of bothering to add support for this rarity, reword the
diagnostics so that they don't use grave accent to quote.
* src/alloc.c (mark_memory): Fix comment.
* src/buffer.c (init_buffer):
* src/dispnew.c (init_display):
* src/emacs.c (main, sort_args):
* src/lread.c (dir_warning):
* src/term.c (init_tty):
* src/unexmacosx.c (unexec):
* src/xfns.c (select_visual):
* src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
Reword stderr diagnostics to avoid quoting `like this'.
* src/unexmacosx.c: Include errno.h.
* src/xfns.c (select_visual): Encode value for locale.
2015-05-31 Paul Eggert <eggert@cs.ucla.edu>
Treat batch stdout/stderr like standard display
Calls like (print FOO) could generate improperly encoded or
hard-to-read output if FOO contains characters outside the system
locale. Fix this by treating batch stdout and stderr like
interactive standard display, when it comes to transliterating and
encoding characters (Bug#20545).
* doc/emacs/mule.texi (Communication Coding):
* doc/lispref/display.texi (Active Display Table):
* doc/lispref/nonascii.texi (Locales):
* etc/NEWS:
* src/coding.c (syms_of_coding):
* src/dispnew.c (syms_of_display):
Document this.
* src/print.c: Include disptab.h.
(printchar_to_stream): New function, with much of the guts of the
old Fexternal_debugging_output, except this one also uses the
standard display table.
(printchar, strout, Fexternal_debugging_output): Use it.
2015-05-31 Glenn Morris <rgm@gnu.org>
* src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
2015-05-31 Paul Eggert <eggert@cs.ucla.edu>
Remove unused DEFSYMs
Remove DEFSYMs that aren't used at the C level. Also:
* src/decompress.c (Qzlib_dll):
* src/font.c (Qunicode_sip):
* src/frame.c (Qtip_frame):
* src/ftfont.c (Qserif):
* src/gnutls.c (Qgnutls_dll):
* src/xml.c (Qlibxml2_dll):
Move from here ...
* src/w32fns.c (syms_of_w32fns): ... to here,
as these are used only on MS-Windows.
2015-05-31 Michael Albinus <michael.albinus@gmx.de>
Use another default value for tramp-histfile-override
* lisp/net/tramp-sh.el (tramp-histfile-override):
Use ".tramp_history" as default.
Fixes: debbugs:#20446
2015-05-29 Nicolas Petton <nicolas@petton.fr>
* doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
2015-05-16 Nicolas Petton <nicolas@petton.fr>
* etc/NEWS: Add an entry about map.el
Improve the docstring of functions in map.el
Since a map is not a data structure but a concept, adding information
about the possible types of maps can be useful information.
* lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
each public function.
2015-04-29 Nicolas Petton <nicolas@petton.fr>
Faster implementation of map-empty-p
* lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
specific tests depending on the type of the map.
* lisp/emacs-lisp/map.el: Better docstrings.
2015-04-25 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda
2015-04-25 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
* lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
Fix a false negative in `map-elt' with alists and values being nil
* lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
found but its associated value is nil, do not return the default
value.
* test/automated/map-tests.el: Add a regression test.
2015-04-24 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
Do not signal an error when trying to delete a key from an array
* lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
the key is present to avoid signaling an error.
* test/automated/map-tests.el: Add a test for deleting non-existing
keys from maps.
* lisp/emacs-lisp/map.el: Better docstring.
Minor improvement in map-elt.
* lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
doing a lookup in arrays, but check the boundaries of the array
instead.
* test/automated/map-tests.el: Adds a test for `map-elt' with arrays
and a negative integer as key.
2015-04-21 Nicolas Petton <nicolas@petton.fr>
* test/automated/map-tests.el: Refactoring of test methods.
* test/automated/map-tests.el: Renamed from map-test.el.
2015-04-18 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/map.el (map-into): Better error message.
* lisp/emacs-lisp/map.el: Removes byte-compilation warnings.
Throw an error when converting a map into an unknown map type
* lisp/emacs-lisp/map.el (map-into): Throw an error if type is not valid.
* test/automated/map-test.el: Add a regression test.
New library map.el similar to seq.el but for mapping data structures.
* test/automated/map-test.el: New file.
* lisp/emacs-lisp/map.el: New file.
2015-05-30 Dmitry Gutov <dgutov@yandex.ru>
Make sure there's no explicit tag name
* lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
there's no explicit tag name (bug#20629).
2015-05-30 Paul Eggert <eggert@cs.ucla.edu>
Remove format2
* src/editfns.c, src/lisp.h (format2): Remove.
It is more trouble than it's worth, now that we have CALLN.
This is just a minor refactoring.
* src/buffer.c (Fkill_buffer):
* src/dbusbind.c (XD_OBJECT_TO_STRING):
* src/fileio.c (barf_or_query_if_file_exists):
Adjust to format2 going away.
Don't misencode C-generated messages
Also, be more consistent about calls to 'Fmessage' vs 'message'.
* src/alloc.c (Fgc_status):
Prefer AUTO_STRING to build_string for Fmessage call.
* src/data.c (Fmake_variable_buffer_local)
(Fmake_local_variable, Fmake_variable_frame_local):
* src/doc.c (store_function_docstring):
Use Fmessage, not message, since the argument can contain
non-ASCII characters, and this can cause the resulting message
to be incorrectly encoded for the current environment.
* src/fns.c (maybe_resize_hash_table):
* src/xselect.c (x_clipboard_manager_save_all):
Use message, not Fmessage, since Fmessage's power isn't needed here.
* src/process.c (Fmake_network_process): Reword message to avoid %s.
* src/xdisp.c (vmessage): Document restrictions on message contents.
(message_nolog) [false]: Remove unused code.
Use \r rather than ^M in string literals
This is less likely to cause problems on platforms that
use CRLF (or CR!) termination for lines.
Update .gitattributes to match current sources
http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
* .gitattributes: Accommodate tests that insist on DOS format.
Remove test/automated/data/decompress/foo-gzipped.
Add etc/e/eterm-color.
2015-05-30 Eli Zaretskii <eliz@gnu.org>
Document 'face-ignored-fonts'
* doc/emacs/mule.texi (Modifying Fontsets): Document
face-ignored-fonts. (Bug#20628)
Add etags test for the new -Q option
* test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
test-case changes below.
* test/etags/ETAGS.good_6: New file.
* test/etags/cp-src/x.cc: New file.
* test/etags/Makefile (CPSRC): Add x.cc.
(check): Add one more test, for -Q.
2015-05-30 Dmitry Gutov <dgutov@yandex.ru>
Use list for the tags completion table, not obarray
* lisp/progmodes/etags.el (etags-tags-completion-table): Return a
list instead of an obarray
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
(tags-completion-table): Combine those lists.
(tags-completion-table): Update the docstring.
2015-05-30 Eli Zaretskii <eliz@gnu.org>
Restore EOL format testing in etags
* test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
test-case changes below.
* test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
* test/etags/cp-src/c.C (B): Add back stray CR character.
* test/etags/c-src/dostorture.c: Add back.
* test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
2015-05-30 Vitaly Takmazov <vitalyster@gmail.com> (tiny change)
Declare Emacs on MS-Windows to be DPI-aware
* nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
* nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
This avoids Windows entering compatibility mode for Emacs,
which causes fonts to look less nice.
2015-05-30 Michael Albinus <michael.albinus@gmx.de>
Improve Tramp traces.
* lisp/net/trampver.el (tramp-repository-get-version): New defun.
* lisp/net/tramp.el (tramp-debug-message): Use it.
2015-05-30 Paul Eggert <eggert@cs.ucla.edu>
backup-buffer minor reworking of internals
* lisp/files.el (backup-buffer): Rework to avoid a couple of
unused locals inadvertently introduced in the previous change.
backup-buffer now reports .emacs.d/%backup% ills
* lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
fails due to disk space exhaustion or whatever, do not pretend
that it succeeded. More generally, do a better job of checking
for I/O failures, and limit the scope of the condition-case to
just the operations where file errors should be caught and ignored
(Bug#20595). Also, don't bother trying to delete later backups if
an earlier deletion fails, as this is a sign of trouble and it's
better to stop when there's trouble.
copy-file now truncates output after writing
* src/fileio.c (Fcopy_file): Truncate output after writing rather
than before. This is more likely to work than truncation before
writing, if the file system is out of space or the user is over
disk quota (Bug#20595). Also, check for read errors.
2015-05-29 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Don't load from parent dir
(package-load-all-descriptors): Don't load descriptors from
directories above the package directories.
2015-05-29 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib
This incorporates the following (Bug#20681):
2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
* lib/set-permissions.c: Copy from gnulib.
2015-05-29 Michael Albinus <michael.albinus@gmx.de>
Improve Tramp traces.
* lisp/net/tramp.el (tramp-call-process-region): New defun.
* lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
2015-05-29 Glenn Morris <rgm@gnu.org>
* test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
2015-05-29 Wolfgang Jenkner <wjenkner@inode.at>
* src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
The signature was changed in the cairo branch, merged on 2015-05-23.
This oversight broke compiling only the non-toolkit X version.
2015-05-29 Samer Masterson <samer@samertm.com>
* doc/lispref/os.texi: Update initial-buffer-choice docs.
2015-05-29 Glenn Morris <rgm@gnu.org>
* test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
Mark as an expected failure.
2015-05-29 Paul Eggert <eggert@cs.ucla.edu>
Change package test to look for curved quotes
* test/automated/package-test.el (package-test-describe-package)
(package-test-signed): Search for curved single quotes as well as
for grave accent and apostrophe.
2015-05-28 Katsumi Yamaoka <yamaoka@jpl.org>
gnus-art.el: Re-revert last change
* lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
2015-05-28 Samer Masterson <samer@samertm.com>
Show files when `initial-buffer-choice' is non-nil
* startup.el (command-line-1): When Emacs is given a file as an
argument and `initial-buffer-choice' is non-nil, display both the file
and `initial-buffer-choice'. For more than one file, show
`initial-buffer-choice' and *Buffer List*. Refactor display-changing
commands out of the command line arg parser.
(initial-buffer-choice): Clarify docstring.
2015-05-28 Eli Zaretskii <eliz@gnu.org>
Fix last commit
* nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
(gnulib module qcopy-acl): Add back, as it is harmless. This
minimizes differences wrt lib/gnulib.mk.
Fix the MS-Windows build as followup to gnulib update
* nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
set-permissions.c, as they don't compile on MinGW.
(gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
2015-05-28 Paul Eggert <eggert@cs.ucla.edu>
Revert my change to gnus-art.el
* lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
It wasn't that important, and it caused a Gnus build to fail. See:
http://www.randomsample.de:4456/builders/emacs-devel/builds/734
New minor mode Electric Quote
This lets you easily insert quotes like this by typing
quotes `like this', and similarly you can easily insert
quotes “like this” by typing quotes ``like this'' (Bug#20545).
* doc/emacs/basic.texi (Inserting Text):
* doc/emacs/modes.texi (Minor Modes):
* etc/NEWS: Document it.
* doc/emacs/text.texi (Quotation Marks): New section.
* lisp/electric.el (electric-quote-comment)
(electric-quote-string, electric-quote-paragraph):
New custom vars.
(electric--insertable-p)
(electric-quote-post-self-insert-function): New functions.
(electric-quote-mode, electric-quote-local-mode): New minor modes.
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
Add curved single quotes to electric-pair-text-pairs.
Set electric-quote-string in this buffer.
A few more doc string fixes (Bug#20385)
Accept curved quotes in doc strings
* lisp/info-look.el (info-lookup-guess-custom-symbol):
(info-lookup-alist): Treat like `' when parsing help buffers etc.
Generate curved quotes in pseudo-info nodes
* lisp/info.el (Info-virtual-index-find-node)
(Info-virtual-index, Info-apropos-find-node, info-apropos):
Quote like this, not `like this', when generating pseudo-info nodes.
Fix minor quoting problems in doc strings
Most of these fixes involve escaping grave accents that are
actually intended to be grave accents, not left quotes.
(Bug#20385)
Support curved quotes in doc strings
Emacs's traditional doc string style has been to quote symbols
`like this'. This worked well on now-obsolete terminals where
` and ' were symmetric quotes, but nowadays curved quotes
like this look better. Support quoting the new way too.
(Bug#20385)
* doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
like-this as well as `like-this'.
* etc/NEWS: Mention this.
* lisp/cedet/mode-local.el (overload-docstring-extension)
(mode-local-print-binding, mode-local-describe-bindings-2):
* lisp/cus-theme.el (describe-theme-1):
* lisp/descr-text.el (describe-text-properties-1, describe-char):
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
* lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
* lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
(eieio-help-constructor):
* lisp/emacs-lisp/package.el (describe-package-1):
* lisp/faces.el (describe-face):
* lisp/help-fns.el (help-fns--key-bindings)
(help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
(help-fns--interactive-only, describe-function-1):
(describe-variable):
* lisp/help.el (describe-mode):
* lisp/international/mule-cmds.el (describe-input-method)
(describe-language-environment):
* lisp/international/mule-diag.el (describe-character-set)
(print-coding-system-briefly, list-input-methods)
(list-input-methods-1):
Insert curved quotes rather than grave accent and apostrophe.
* lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
(checkdoc-proper-noun-region-engine):
* lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
(lisp-cl-font-lock-keywords-2):
* lisp/finder.el (finder-font-lock-keywords):
* lisp/gnus/gnus-art.el (gnus-button-alist):
* lisp/help-fns.el (help-do-arg-highlight)
(describe-function-1, describe-variable):
* lisp/help-mode.el (help-xref-symbol-regexp)
(help-xref-info-regexp, help-xref-url-regexp):
* lisp/help.el (describe-mode):
* lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
* lisp/wid-edit.el (widget-documentation-link-regexp):
Parse symbols quoted like-this as well as `like-this'.
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
Add "" and "" to electric-pair-text-pairs.
(elisp--form-quoted-p): Also allow "" as a quoting char.
(elisp-completion-at-point, elisp--preceding-sexp):
Also treat "" and "" as quoting chars.
substitute-command-keys now curves quotes
So, for example, it turns "`abc'" into "abc" (Bug#20385).
* doc/lispref/help.texi (Keys in Documentation):
* etc/NEWS: Document this.
* src/doc.c (Fsubstitute_command_keys): Implement it.
2015-05-28 Glenn Morris <rgm@gnu.org>
* lisp/mail/rmailsum.el (rmail-summary-by-recipients)
(rmail-summary-by-topic, rmail-summary-by-senders):
No longer strip leading/trailing whitespace.
* lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
(f90-no-block-limit): Add "enum". (Bug#20680)
* test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
New tests.
2015-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/isearch.el (isearch--current-buffer): Give a default value.
Un-revert changes mistakenly dropped by f9fabb2b
2015-05-27 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib
This incorporates:
2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
2015-05-26 stdio: fix probe on mingw under gcc 5.1
* admin/merge-gnulib (GNULIB_MODULES):
Replace qacl with qcopy-acl, since we don't need the rest of qacl.
* doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
* lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
* lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
Get latest versions from gnulib.
* lib/get-permissions.c, lib/set-permissions.c: New files.
* lib/gnulib.mk, m4/gnulib-comp.m4:
Regenerate.
* nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
2015-05-27 Dmitry Gutov <dgutov@yandex.ru>
Delete the old process in vc-setup-buffer
* lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
process here.
(vc-do-command): Rather than here (bug#20608).
2015-05-27 Ivan Shmakov <ivan@siamics.net>
Avoid gratuitous delete-dups in face-at-point.
* lisp/faces.el (face-at-point): Do not compute the properly
ordered, duplicate-free list if only a single value is
requested anyway. (Bug#20519)
Show the exact C-x 8 RET invocation in describe-char.
* lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
invocation instead of a template. (Bug#20522)
2015-05-27 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Don't erase tags on refresh
(package-menu--post-refresh): Call `tabulated-list-print' with the
UPDATE argument. This only affects the refresh action, the revert
action still erases tags.
(package-menu-get-status): Change `assq' to `assoc'.
(package-menu--mark-upgrades-1): New function.
(package-menu--mark-upgrades-pending): New variable.
(package-menu-mark-upgrades): Use them to delay marking until
after refresh is done.
(package-menu--post-refresh): Call mark-upgrades-1 if
mark-upgrades-pending is non-nil.
2015-05-27 Michael Albinus <michael.albinus@gmx.de>
Fix typo in commit 3953c4be2816537be95520605d45b866dc731f4b
2015-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/isearch.el (isearch--current-buffer): New var
(isearch-update): Set cursor-sensor-inhibit here.
(isearch-done): Unset cursor-sensor-inhibit in the right buffer (bug#20532).
Change inhibit-point-motion-hooks to t
* src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
to t and document it as obsolete.
2015-05-27 Eli Zaretskii <eliz@gnu.org>
Support ZIP files that use Zip64 extensions
* lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
format of central directory offsets used by Zip64 extensions.
(Bug#20665)
2015-05-27 Michael Albinus <michael.albinus@gmx.de>
New test tramp-test30-make-auto-save-file-name
* tramp-tests.el (tramp-test30-make-auto-save-file-name): New test.
(tramp-test31-special-characters)
(tramp-test31-special-characters-with-stat)
(tramp-test31-special-characters-with-perl)
(tramp-test31-special-characters-with-ls, tramp-test32-utf8)
(tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
(tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
(tramp-test34-recursive-load, tramp-test35-unload): Rename.
Improve tramp-handle-make-auto-save-file-name
* tramp.el (tramp-auto-save-directory): Add :tags.
(tramp-handle-make-auto-save-file-name): Let native
`make-auto-save-file-name' use `auto-save-file-name-transforms',
if `tramp-auto-save-directory' is not set.
2015-05-27 Glenn Morris <rgm@gnu.org>
No longer set dired-directory in eshell. (Bug#16477)
* lisp/eshell/esh-mode.el (eshell-mode):
* lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
* lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
Make c-submit-bug-report file reports at debbugs.gnu.org. (Bug#15784)
* lisp/progmodes/cc-mode.el (c-mode-help-address):
Change to submit@debbugs.
(c-mode-bug-package): New constant.
(mail-position-on-field): Declare.
(c-submit-bug-report): Insert X-Debbugs-Package header.
* doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
Mention debbugs.gnu.org.
2015-05-26 Glenn Morris <rgm@gnu.org>
* lisp/mail/rmailsum.el: Commas no longer separate regexps. (Bug#19026)
(rmail-summary-by-recipients, rmail-summary-by-topic)
(rmail-summary-by-senders): No longer use mail-comma-list-regexp.
* doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
2015-05-26 Paul Eggert <eggert@cs.ucla.edu>
Handle curved quotes in info files
* lisp/calc/calc-help.el (calc-describe-thing):
* lisp/info.el (Info-find-index-name)
(Info-try-follow-nearest-node, Info-fontify-node):
* lisp/vc/ediff-help.el (ediff-help-for-quick-help):
In info files, process quotes like this the same way we process
quotes `like this'. This catches a few places we missed earlier.
2015-05-26 Dmitry Gutov <dgutov@yandex.ru>
xref-prompt-for-identifier: Use a list value
* lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
value, to be interpreted as a list of commands.
(xref--prompt-p): New function.
(xref--read-identifier): Use it.
2015-05-26 Eli Zaretskii <eliz@gnu.org>
Teach MS-Windows font back-end return per-glyph ascent/descent
* src/w32font.h (struct w32_metric_cache): Add ascent and descent
values.
* src/w32font.c (w32font_text_extents): Compute, cache, and
accumulate per-glyph ascent and descent values, instead of copying
global values from the font. If the values are not available from
the font data, i.e., non-TTF fonts, fall back on font-global values.
(compute_metrics): Compute and return per-glyph ascent and descent
values, if returned by GetGlyphOutlineW, falling back on
font-global values. (Bug#20628)
* src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
height of rectangle to be drawn, to be compatible with
XDrawRectangle. Fixes glyphless-char display as hex codes in a
box, when per-glyph ascent/descent values are used.
2015-05-26 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/tabulated-list.el: Don't sort without sorter
(tabulated-list-print): Don't sort if sorter is nil
2015-05-26 Michael Albinus <michael.albinus@gmx.de>
Fix Bug#20621
* lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it. There
are major modes which set `auto-save-mode' on their own rules;
Tramp shall not overwrite such settings.
(Bug#20621)
2015-05-26 Glenn Morris <rgm@gnu.org>
* lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
(desktop-load-file): Guess that "foobar" defines "foobar-mode".
(desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
Doc updates.
(vc-dir-mode): Remove unnecessary autoload.
2015-05-25 Philipp Stephani <phst@google.com>
* lisp/term/xterm.el: Add gui-get-selection support via OSC-52
(xterm--extra-capabilities-type): Add `getSelection'.
(xterm--query): Add `no-async' argument.
(xterm--init-activate-get-selection): New function.
(terminal-init-xterm): Use it.
(xterm--init-modify-other-keys): Rename from
terminal-init-xterm-modify-other-keys.
(xterm--init-bracketed-paste-mode): Rename from
terminal-init-xterm-bracketed-paste-mode.
(xterm--init-activate-set-selection): Rename from
terminal-init-xterm-activate-set-selection.
(xterm--selection-char): New function.
(gui-backend-set-selection): Use it. Use the &context to only apply
this method in terminals where we enabled the feature.
(gui-backend-get-selection): New method.
2015-05-25 Daniel Colascione <dancol@dancol.org>
Add C-language keyword constants to C++
* lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
keyword constants to C++.
2015-05-25 Paul Eggert <eggert@cs.ucla.edu>
Make TAGS files more portable to MS-Windows
* etc/NEWS: Document this.
* lib-src/etags.c (readline_internal) [DOS_NT]:
Don't treat CRs differently from GNUish hosts.
* lisp/progmodes/etags.el (etags-goto-tag-location):
Adjust STARTPOS to account for the skipped CRs in dos-style files.
2015-05-25 Michael Albinus <michael.albinus@gmx.de>
Improve fix of debbugs:20634 in tramp-sh.el
2015-05-25 Eli Zaretskii <eliz@gnu.org>
Fix a typo in last commit
* lib-src/etags.c (C_entries): Fix a typo.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/CTAGS.good: Update due to the change in etags.c.
Fix tagging of class members in C-like OO languages
* lib-src/etags.c (longopts): Add new option --class-qualify and
its shorthand -Q.
(print_help): Add help text for --class-qualify.
(main): Add handling of -Q.
(consider_token, C_entries) <omethodparm>: Append argument types
to Objective C methods only if --class-qualify was specified.
Qualify C++, Objective C, and Java class members with their class
names only if --class-qualify was specified.
(C_entries): If --class-qualify was not specified, remove the
namespace and class qualifiers from tag names of C++ methods.
This allows to use etags.el as xref back-end without the
tag-symbol-match-p method, which greatly increases the number of
potentially false positives. (Bug#20629)
* doc/man/etags.1: Update to document the new --class-qualify
option.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5:
* test/etags/CTAGS.good: Update due to changes in etags.c.
2015-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
(cl-generic-define-method): Side effects are evil (bug#20644)
* lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
cons-cells that might be used as keys in an `equal' hash-table.
2015-05-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
Make erc timestamps visible again
* lisp/erc/erc-stamp.el (erc-munge-invisibility-spec): Make
timestamps visible again (if requested).
2015-05-25 Eli Zaretskii <eliz@gnu.org>
Fix last change in etags.c that broke tagging compresed files
* lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
quoting of decompression shell command for MS-Windows/MS-DOS.
2015-05-25 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist
(Bug#20639)
2015-05-25 Michael Albinus <michael.albinus@gmx.de>
Fix typo in 89035e247591c8d688fce922b7079881aa110f33
2015-05-25 Orivej Desh <orivej@gmx.fr> (tiny change)
Fix IPv6 addresses in Tramp
* lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
Add sqare brackets around host name.
2015-05-25 Michael Albinus <michael.albinus@gmx.de>
Inhibit `epa-file-handler' in Tramp
(Bug#20634)
* lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
(tramp-sh-handle-insert-file-contents-literally): Inhibit also
`epa-file-handler'.
2015-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring
(pcase-let): Document the behavior in case the pattern doesn't match.
2015-05-24 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/tabulated-list.el: New optional print method
(tabulated-list-print): New optional argument, UPDATE. If
non-nil, the list is printed by only adding and deleting the
changed entries, instead of erasing the whole buffer. This method
is much faster when few or no entries have changed.
* doc/lispref/modes.texi (Tabulated List Mode): Document it.
* etc/NEWS: Document it.
* lisp/emacs-lisp/tabulated-list.el: Improve printing
(tabulated-list--get-sorter): New function.
(tabulated-list-print): Restore window-line when remember-pos is
passed and optimize away the `nreverse'.
2015-05-24 Paul Eggert <eggert@cs.ucla.edu>
Simpilify etags TEX mode scanning
* lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
Remove static vars.
(TeX_commands): Deduce escapes here instead.
(TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
This removes the need for a reset_input call.
Improve etags I/O error reporting
* lib-src/etags.c:
Don't include sys/types.h and sys/stat.h; no longer needed.
(infilename): New static var.
(process_file_name): Don't call 'stat'. Instead, just open the
file for reading and report any errors. Don't bother making
a copy of the file argument; it's not needed. Be more careful to
use the failing errno when reporting an error.
Quote the real name better (though no perfectly)
when passing it to the shell.
(reset_input): New function, which reports I/O errors.
All uses of 'rewind' changed to use this function.
(perhaps_more_input): New function, which also checks for
I/O errors. All uses of 'feof' changed to use this function.
(analyze_regex): Report an error if fclose fails.
(readline_internal): Report an error if getc fails.
(etags_mktmp): Return an error if close fails.
etags.c: avoid side effects in 'if'
* lib-src/etags.c (process_file_name, Perl_functions)
(TEX_decode_env): Hoist side effects into previous statement.
.gitignore tweaks
* .gitignore: Ignore all *.stamp files. Sort.
Ignore [0-9]*.txt (commonly used name for git patches)
and /vc-dwim-log-* (vc-dwim temporary).
2015-05-24 Eli Zaretskii <eliz@gnu.org>
Fix last change in etags.c, which failed the test suite
* lib-src/etags.c (intoken): Add '$' to the set, as it was there
before the last change.
2015-05-23 Glenn Morris <rgm@gnu.org>
Remove charset map files from repository, generate in first bootstrap
* admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
(all): Create the stamp file.
(extraclean): Delete the stamp file.
* src/Makefile.in (lispintdir, charsets): New variables.
(${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
New rules.
(emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
* lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
* etc/charsets/*.map: Remove from repository.
2015-05-23 Paul Eggert <eggert@cs.ucla.edu>
Cleanup etags.c to use locale-independent code
Although this doesn't alter behavior (as etags doesn't use
setlocale), the new version is more clearly locale-independent and
the executable is a bit smaller on my platform.
* lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
Include <c-ctype.h> instead of <ctype.h>.
(CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
(begtk, midtk):
Remove; no longer needed.
(iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
c_islower, c_tolower, respectively.
(notinname, begtoken, intoken, endtoken): Rewrite as functions
instead of macros, and initialize the tables at compile-time
rather than at run-time.
Put default action first in src/Makefile
* src/Makefile.in (all): Put this rule before lisp.mk.
That way, plain 'make' works in the src directory again.
2015-05-23 Glenn Morris <rgm@gnu.org>
* Makefile.in: Fix extraclean rule.
(extraclean_dirs): New.
(extraclean): Use it.
2015-05-23 Eli Zaretskii <eliz@gnu.org>
Avoid compiler warning in image.c on MS-Windows
* src/w32term.h (x_query_color): Add prototype, to avoid compiler
warning in image.c.
2015-05-23 Glenn Morris <rgm@gnu.org>
Fix --without-toolkit-scroll-bars builds.
* src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
Add new argument to x_clear_area1.
(XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
Update x_clear_area arguments.
* admin/charsets/glibc/: New directory, imported from glibc 2.21.
* admin/charsets/Makefile.in (GLIBC_CHARMAPS):
Change to included version.
(LOCAL, local, totalclean): Remove.
(extraclean): Delete all generated files.
2015-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume CVS/Entries exists.
* lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
tags-completion-at-point-function: Don't trust the find-tag function
* lisp/progmodes/etags.el (tags-completion-at-point-function):
Don't trust the find-tag function.
2015-05-23 Paul Eggert <eggert@cs.ucla.edu>
Pacify --enable-gcc-warnings
* src/frame.h (x_query_color): Remove redundant extern decl.
* src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
(ftcrfont_match, ftcrfont_open, ftcrfont_close)
(ftcrfont_text_extents, ftcrfont_draw):
* src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
(XTframe_up_to_date, x_clear_area1, x_clear_frame)
(x_ins_del_lines, frame_highlight, frame_unhighlight)
(x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
(x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
(x_update_window_begin, x_connection_closed)
(x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
(x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
(*x_gc_get_ext_data, x_extension_initialize)
(x_cr_accumulate_data):
Remove redundant static decl. Many of these GCC doesn't complain
about, but we might as well clean out the duplication while we're
in the neighborhood.
* src/xterm.c (x_fill_trapezoid_for_relief):
Remove decl of nonexistent function.
2015-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
Replace gui-method macros with cl-generic with &context
* lisp/frame.el (gui-method--name, gui-method, gui-method-define)
(gui-method-declare, gui-call): Remove.
(frame-creation-function): Use cl-defgeneric.
(make-frame): Adjust callers.
* lisp/menu-bar.el (menu-bar-edit-menu):
Use gui-backend-selection-exists-p.
* lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
(gui-backend-get-selection): New cl-generic to replace
gui-get-selection method.
(gui-backend-set-selection): New cl-generic to replace
gui-set-selection method.
(gui-selection-owner-p): New cl-generic to replace
gui-selection-owner-p method.
(gui-backend-selection-exists-p): New cl-generic to replace
gui-selection-exists-p method. Adjust all callers.
* lisp/server.el (server-create-window-system-frame): Don't ignore
window-system spec even when unsupported.
* lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
* lisp/startup.el (handle-args-function, window-system-initialization):
Use cl-defgeneric.
(command-line): Adjust calls accordingly.
* lisp/term/ns-win.el (ns-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.
* lisp/term/pc-win.el (w16-get-selection-value): Turn into
a gui-backend-get-selection method.
(gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
Use cl-defmethod on the new functions instead.
(msdos-window-system-initialization): Turn into
a window-system-initialization method.
(frame-creation-function, handle-args-function): Use cl-defmethod.
* lisp/term/w32-win.el (w32-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.
* lisp/term/x-win.el (x-window-system-initialization): Turn into
a window-system-initialization method.
(handle-args-function, frame-creation-function): Use cl-defmethod.
(gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
(gui-get-selection): Use cl-defmethod on the new functions instead.
* lisp/term/xterm.el (xterm--set-selection): Turn into
a gui-backend-set-selection method.
* src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
(Fns_selection_owner_p): Remove unused arg `terminal'.
(Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
2015-05-23 Eli Zaretskii <eliz@gnu.org>
Revert "Fix etags Bug#20629 that broke C++ support."
This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
2015-05-23 Jan D <jan.h.d@swipnet.se>
Fix etags Bug#20629 that broke C++ support.
* etags.el (etags-xref-find-definitions-tag-order): Revert commit
from Sun May 10 (Bug#20629).
Merge branch 'cairo'.
Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
Merge branch 'master' into cairo
Fixes to compile cairo branch without cairo.
* src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
first argument.
* src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
USE_CAIRO.
2015-05-23 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Always update selected-packages
(package--update-selected-packages): New function.
(package-menu-execute): Use it before starting the transaction,
this way the list of selected packages is updated even when the
transaction fails.
(package-menu--perform-transaction): Don't edit selected-packages.
2015-05-23 Eli Zaretskii <eliz@gnu.org>
Fix etags reading of compressed files
* lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
Include fcntl.h, for O_CLOEXEC.
(process_file_name): Don't use 'popen', whose streams cannot be
rewound. Instead, uncompress the file to a temporary file,
created by 'etags_mktmp', and read from that as usual.
(etags_mktmp): New function.
* test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2:
* test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4:
* test/etags/ETAGS.good_5: Update to be consistent with latest
changes in etags.c regarding reading compressed files.
Improve documentation of 'set-fontset-font'
* doc/lispref/display.texi (Fontsets): Document the value of nil
for the 3rd argument of 'set-fontset-font'.
Fix documentation of forward-line
* src/cmds.c (Fforward_line): Clarify the return value if the line
at end of accessible portion of the buffer has no newline.
* doc/lispref/positions.texi (Text Lines): Document what happens
if the line at end of accessible portion of buffer has no newline.
(Bug#20587)
2015-05-22 Glenn Morris <rgm@gnu.org>
* admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
* admin/charsets/mapconv (LC_ALL): Set to C.
* Makefile.in: Add admin/charsets into top-level clean rules.
(clean): Add admin/charsets.
(maybeclean_dirs): New variable.
(distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
* admin/charsets/Makefile.in (LOCAL, local): Fix members.
2015-05-22 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package-selected-packages): Fix doc
2015-05-22 Glenn Morris <rgm@gnu.org>
Generate admin/charsets Makefile via configure, and make more portable.
* configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
(admin/charsets/Makefile): Generate it.
* admin/charsets/Makefile.in: Rename from Makefile.
(AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
New variables, set by configure.
(charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
(am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
(am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
(cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
(TRANS_TABLE, CHARSETS): Add directory prefix to value.
(all): Declare PHONY.
(local): New PHONY target.
(map_template): New template. Use to define short PHONY aliases.
(*.map): Add directory prefixes to targets and prerequisites.
Respect make verbosity.
(JISC6226.map): Replace non-portable sed append without newline.
(install): Remove rule.
(clean): Only delete temporary sedscript.
(bootstrap-clean, distclean, maintainer-clean, extraclean)
(totalclean): New PHONY rules.
* admin/charsets/mapconv (BASE): Replace basename with expr.
(FILE): Add "mapfiles" subdirectory.
(AWK): New variable. Use throughout in place of "awk".
(main): Use "gunzip -c" in place of "zcat".
Don't leave whitespace before "p", for older sed.
* admin/charsets/mapfiles/PTCP154: Add final newline,
to make older sed versions happy.
2015-05-22 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/autorevert.el: Use lexical-binding. Fix hook usage.
(global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
(auto-revert-notify-watch-descriptor): Use defvar-local.
(find-file-hook, auto-revert-tail-mode, )
(auto-revert-notify-add-watch): Use setq-local.
(auto-revert-notify-add-watch): Don't call make-local-variable on
kill-buffer-hook (bug#20601).
2015-05-21 Stefan Monnier <monnier@iro.umontreal.ca>
Change defgeneric so it doesn't completely redefine the function
* lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
previously defined methods.
(cl-generic-define-method): Let-bind purify-flag instead of using `fset'.
(cl--generic-prefill-dispatchers): Only define during compilation.
(cl-method-qualifiers): Remove redundant alias.
(help-fns-short-filename): Silence byte-compiler.
* test/automated/cl-generic-tests.el: Adjust to new defgeneric semantics.
2015-05-21 Artur Malabarba <bruce.connor.am@gmail.com>
(package-menu-execute): Remove reference to remove-dups
2015-05-21 kwhite <kwhite@gnu.org>
* lisp/erc/erc.el: Hide network/channel messages
(erc-network-hide-list, etc-channel-hide-list): New lists to define
message types per network/channel.
(erc-add-targets): New function to parse list of targets
(erc-hide-current-message-p): Modified to check for new targets
2015-05-21 Paul Eggert <eggert@cs.ucla.edu>
Don't quote nil and t in doc strings
This is as per "Tips for Documentation Strings" in the elisp manual.
For consistency, do the same in diagnostics and comments.
2015-05-21 Eli Zaretskii <eliz@gnu.org>
Fix a minor problem with mouse-face on mode line
* src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
mouse face also if the mouse pointer hovers above mode-line glyphs
that don't come from any Lisp string. (Bug#20620)
2015-05-21 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Fix selected-package logic
(package-menu-execute): Mark as selected all non-upgrade packages
being installed.
(package-menu--perform-transaction): Don't mark anything.
* lisp/emacs-lisp/package.el: Mode-line progress report
(package-menu--transaction-status): New variable.
(package-menu-mode, package-menu--perform-transaction): Use it.
* lisp/emacs-lisp/package.el: Better transaction messages
(package-menu--partition-transaction): New function.
(package-menu--prompt-transaction-p, package-menu-execute): Use
it.
(package-menu--perform-transaction): Don't do any messaging.
* lisp/emacs-lisp/package.el: Revert async package transactions
(package-menu-async): Update doc.
(package-install-from-archive, package-download-transaction)
(package-install, package-menu--perform-transaction)
(package-menu-execute): Remove asynchronous functionality.
2015-05-21 Paul Eggert <eggert@cs.ucla.edu>
Revert doc string changes to f90.el
Problem reported by Glenn Morris in:
http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
* lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
Revert recent changes to doc strings, as it's intended that they
use grave accent, not quote.
2015-05-20 Bozhidar Batsov <bozhidar@batsov.com>
Improve parameter name
Add new inline function `hash-table-empty-p'
2015-05-20 Paul Eggert <eggert@cs.ucla.edu>
Don't require help-fns when not needed
* lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
* lisp/emacs-lisp/elint.el:
Don't require help-fns at the top level.
* lisp/emacs-lisp/advice.el (ad-arglist):
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
Don't require help-fns. (Bug#17001)
2015-05-20 Eli Zaretskii <eliz@gnu.org>
Fix slash collapsing in etags on MS-Windows
* lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
MS-Windows code from the Posix code, and support collapsing both
forward- and back-slashes on MS-Windows. Fixes a regression found
by the test suite.
Improve documentation of glyphless-char-display
* doc/lispref/display.texi (Glyphless Chars): Improve
documentation of glyphless character display.
Fix "acronym" display of glyphless characters on w32
* src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
ignore "acronym" substitutes of 1 character for glyphless characters.
2015-05-20 Oleh Krehel <ohwoeowho@gmail.com>
Add an automated test for let-when-compile
* test/automated/subr-tests.el (let-when-compile): New test.
Add let-when-compile macro instead of using pcase-let
* lisp/subr.el (let-when-compile): New let-like macro that makes its
bindings known to macros like `eval-when-compile' in the body.
* lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to a
`let-when-compile'. Also comment out the unused lexical var
`el-kws-re'.
The change greatly improves readability, while providing almost the
same (even shorter) byte code: instead of pre-evaluating 10 variables,
tossing them into a list, and destructuring that list a full screen
page later, the variables are simply bound as they are evaluated,
wrapped individually in `eval-when-compile'.
2015-05-20 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: "Delete" button in Help buffer
(package-delete-button-action): New function.
(describe-package-1): Add Delete button.
* lisp/emacs-lisp/package.el: Better dependency description
(package--used-elsewhere-p): New optional arg, ALL, and return
package-desc objects instead of names.
(package-delete): Update accordingly.
(describe-package-1): Describe which packages require the package.
2015-05-20 Martin Rudalics <rudalics@gmx.at>
Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
* src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
Fix doc-string (Bug#20533).
Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
* lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
(switch-to-buffer): If the selected window is strongly dedicated
to its buffer, signal error before prompting for buffer name. Handle
`switch-to-buffer-in-dedicated-window'. (Bug#20472)
* doc/lispref/windows.texi (Switching Buffers): Document
`switch-to-buffer-in-dedicated-window'.
2015-05-19 Paul Eggert <eggert@cs.ucla.edu>
Prefer "this" to “this” in doc strings
This mostly just straightens quotes introduced in my previous patch.
Suggested by Dmitry Gutov in:
http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
* lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
* lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
* lisp/textmodes/artist.el, lisp/textmodes/rst.el:
* lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
* lisp/vc/log-edit.el, lisp/xt-mouse.el:
Prefer straight double quotes to curved double quotes in doc strings.
Fix minor quoting problems in doc strings
These were glitches regardless of how or whether we tackle the
problem of grave accent in doc strings.
* lisp/calc/calc-aent.el (math-restore-placeholders):
* lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
* lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
* lisp/leim/quail/hebrew.el ("hebrew-new")
("hebrew-biblical-sil"):
* lisp/leim/quail/thai.el ("thai-kesmanee"):
* lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
Used curved quotes to avoid ambiguities like `'' in doc strings.
* lisp/calendar/calendar.el (calendar-month-abbrev-array):
* lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
* lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
* lisp/cedet/semantic/tag.el (semantic-tag-copy)
(semantic-tag-components):
* lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
* lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
* lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
* lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
* lisp/emacs-lisp/generator.el (iter-next):
* lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
(gnus-article-mode-syntax-table):
* lisp/net/rlogin.el (rlogin-directory-tracking-mode):
* lisp/net/soap-client.el (soap-wsdl-get):
* lisp/net/telnet.el (telnet-mode):
* lisp/org/org-compat.el (org-number-sequence):
* lisp/org/org.el (org-remove-highlights-with-change)
(org-structure-template-alist):
* lisp/org/ox-html.el (org-html-link-org-files-as-html):
* lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
(handwrite-12pt, handwrite-13pt):
* lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
* lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
* lisp/progmodes/verilog-mode.el (verilog-tool)
(verilog-string-replace-matches, verilog-preprocess)
(verilog-auto-insert-lisp, verilog-auto-insert-last):
* lisp/textmodes/makeinfo.el (makeinfo-options):
* src/font.c (Ffont_spec):
Fix minor quoting problems in doc strings, e.g., missing quote,
``x'' where `x' was meant, etc.
* lisp/erc/erc-backend.el (erc-process-sentinel-2):
Fix minor quoting problem in other string.
* lisp/leim/quail/ethiopic.el ("ethiopic"):
* lisp/term/tvi970.el (tvi970-set-keypad-mode):
Omit unnecessary quotes.
* lisp/faces.el (set-face-attribute, set-face-underline)
(set-face-inverse-video, x-create-frame-with-faces):
* lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
* lisp/mail/supercite.el (sc-attribs-%@-addresses)
(sc-attribs-!-addresses, sc-attribs-<>-addresses):
* lisp/net/tramp.el (tramp-methods):
* lisp/recentf.el (recentf-show-file-shortcuts-flag):
* lisp/textmodes/artist.el (artist-ellipse-right-char)
(artist-ellipse-left-char, artist-vaporize-fuzziness)
(artist-spray-chars, artist-mode, artist-replace-string)
(artist-put-pixel, artist-text-see-thru):
* lisp/vc/ediff-util.el (ediff-submit-report):
* lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
Use double-quotes rather than TeX markup in doc strings.
* lisp/skeleton.el (skeleton-pair-insert-maybe):
Reword to avoid the need for grave accent and apostrophe.
* lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
Don't use grave and acute accents to quote.
2015-05-19 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/generator.el (cps--gensym, cps--transform-1): Silence compiler
2015-05-19 Paul Eggert <eggert@cs.ucla.edu>
Try to port new etags tests to MS-Windows
* test/etags/CTAGS.good, test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
Adjust to test-case changes below.
* test/etags/Makefile (CSRC): Remove dostorture.c.
Whatever it was trying to test, wasn't working portably.
(LC_ALL): Remove. Apparently there wasn't an encoding problem,
just a line-ending problem.
* test/etags/c-src/dostorture.c: Remove.
* test/etags/cp-src/c.C: Remove stray CR.
* test/etags/html-src/algrthms.html: Remove trailing CRs.
State UTF-8 as the encoding. The file is ASCII so it doesn't matter,
but if someone edits it later it should stay UTF-8-compatible.
2015-05-19 Eli Zaretskii <eliz@gnu.org>
Fix display of overlapping window-specific overlays
* src/keyboard.c (adjust_point_for_property): When adjusting point
due to display strings, ignore overlays that are specific to
windows other than the currently selected one.
* src/xdisp.c (handle_single_display_spec): If the display
property comes from an overlay, arrange for buffer iteration to
resume only after the end of that overlay. (Bug#20607)
2015-05-19 Dmitry Gutov <dgutov@yandex.ru>
New command icomplete-force-complete-and-exit
* lisp/icomplete.el (icomplete-force-complete-and-exit):
New command
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
(icomplete-minibuffer-map): Bind C-j to it.
(icomplete-forward-completions, icomplete-backward-completions):
Mention the new command in the docstring.
* lisp/minibuffer.el (minibuffer-force-complete-and-exit): Revert
the previous fix for bug#17545.
2015-05-19 Martin Rudalics <rudalics@gmx.at>
Fix last commit
In Elisp manual explain how to override window manager positioning (Bug#20552)
* doc/lispref/frames.texi (Position Parameters): Give example of
how to override a window manager positioning decision.
Clarify concept of "surrogate minibuffer frames" (Bug#20538)
* src/frame.c (Fdelete_frame): In doc-string mention that frame
can't be deleted if it has a surrogate minibuffer.
* doc/lispref/frames.texi (Minibuffers and Frames)
(Deleting Frames): Explain "surrogate minibuffer frames".
In w32heap.c bump DUMPED_HEAP_SIZE to 19/12 MB
* emacs-git/quick/src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
2015-05-18 Glenn Morris <rgm@gnu.org>
Add option to ignore commit lines matching a pattern in ChangeLog.
* build-aux/gitlog-to-changelog: Add --ignore-line option.
* build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
2015-05-18 Paul Eggert <eggert@cs.ucla.edu>
Don't skip new etags tests on non-UTF-8 hosts
Problem reported by Eli Zaretskii for MS-Windows.
* test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
(LC_ALL): Set to C if the current locale isn't UTF-8.
(.PHONY): Remove ediff_1 thru ediff_5.
(check): Always run.
2015-05-18 Glenn Morris <rgm@gnu.org>
* lisp/calculator.el (calculator-funcall):
* lisp/textmodes/artist.el (artist-spray-random-points):
Use standard degree/radian conversion utilities.
Further lisp-complete-symbol related cleanup.
* lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
Unadvertise non-functional argument. Replace obsolete alias.
2015-05-18 Dmitry Gutov <dgutov@yandex.ru>
Add a test case for Maven warning ouput
* test/automated/compile-tests.el
(compile-tests--test-regexps-data): Add a case for Maven warning
ouput.
(compile--test-error-line): Check the compilation message type, if
it's specified in the test data.
2015-05-18 Paul Pogonyshev <pogonyshev@gmail.com>
Update Maven compilation-mode entry to distinguish warnings
* lisp/progmodes/compile.el
(compilation-error-regexp-alist-alist): Update Maven entry to
distinguish warnings (bug#20556).
2015-05-18 Przemysław Wojnowski <esperanto@cumego.com>
* test/automated/sgml-mode-tests.el: New file.
2015-05-18 Dmitry Gutov <dgutov@yandex.ru>
Improve handling of the first Git revision
* lisp/vc/log-view.el (log-view-toggle-entry-display): When
there's no next entry, delete until the end of the buffer.
(log-view-end-of-defun-1): Stop at eob.
* lisp/vc/vc-annotate.el
(vc-annotate-show-diff-revision-at-line-internal): Don't give up
when previous-revision is nil.
* lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
with `--' to avoid ambiguity.
(vc-git-annotate-extract-revision-at-line): Exclude `^' from the
returned revision string.
(vc-git-annotate-time): Expect `^' before the first revision.
* lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
REV1 is nil, and REV2 is not.
* lisp/vc/vc.el: Update the description of the `diff' function.
2015-05-18 Oleh Krehel <ohwoeowho@gmail.com>
Allow checkdoc to be called in batch
* lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
is non-nil, echo the error with `warn'.
How it can be used in -batch:
(with-current-buffer (find-file "checkdoc.el")
(checkdoc-current-buffer t))
2015-05-18 Glenn Morris <rgm@gnu.org>
* lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
2015-05-17 Paul Eggert <eggert@cs.ucla.edu>
* admin/notes/unicode: New section "binary files".
Change new etags test to use UTF-8 encoding
* test/etags/CTAGS.good, test/etags/ETAGS.good_1:
* test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
* test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
* test/etags/html-src/index.shtml, test/etags/html-src/software.html:
* test/etags/html-src/softwarelibero.html:
Switch to UTF-8 encoding.
* test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
Remove Makefile, as it's too incestuous to have the test input
include the build procedure.
(UTF8_LOCALE, UTF_ENCODING): New macros.
(LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
(check): Skip if not UTF-8.
(.PHONY): New rule.
(FRC): Remove, as superseded by .PHONY. All uses removed.
(regexfile): Prefer printf to echo when outputting oddball chars.
(.PRECIOUS): Remove, as these files are not built.
Rename 'foo-gzipped' to 'foo.gz'
* test/automated/data/decompress/foo.gz:
Rename from test/automated/data/decompress/foo-gzipped,
to make it easier for other tools to tell that it's compressed.
* test/automated/zlib-tests.el (zlib--decompress):
Adjust to renamed file.
2015-05-17 Dmitry Gutov <dgutov@yandex.ru>
Set up default-directory
* lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
binding for `v'.
(vc-annotate-show-changeset-diff-revision-at-line): Set up an
appropriate value for default-directory.
2015-05-17 Samer Masterson <samer@samertm.com>
* lisp/eshell/em-term.el (eshell-term-sentinel):
No-op by default, only kills term buffer if
`eshell-destroy-buffer-when-process-dies' is non-nil. (Bug#18108)
(eshell-destroy-buffer-when-process-dies): New custom to preserve
previous behavior.
eshell: Introduce new buffer syntax
The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
buffer-name>'. Remove `eshell-buffer-shorthand', as it is no longer
needed (Bug#19319).
* lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
(eshell-get-target): Remove shorthand-specific code.
* lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
'#<buffer-name>'.
2015-05-17 Jan D <jan.h.d@swipnet.se>
Merge branch 'master' into cairo
2015-04-26 Jan D <jan.h.d@swipnet.se>
Merge branch 'master' into cairo
Add PBM support for cairo.
* src/image.c (xcolor_to_argb32): New function.
(get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
(pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
XImagePtr if ! USE_CAIRO.
(pbm_load): Add cairo support.
2015-04-12 Jan D <jan.h.d@swipnet.se>
x_free_cr_resources: Renamed from x_prepare_for_xlibdraw.
* src/xterm.c (x_free_cr_resources): Renamed from x_prepare_for_xlibdraw.
(x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
(x_free_frame_resources): Rename x_prepare_for_xlibdraw to
x_free_cr_resources.
Handle specified bg in images. Use generic libpng code for PNG:s.
* src/image.c (get_spec_bg_or_alpha_as_argb)
(create_cairo_image_surface): New functions when USE_CAIRO.
(xpm_load): Call the above functions. Handle XPM without mask
when USE_CAIRO.
(png_load_body): Handle USE_CAIRO case.
(png_load): Remove USE_CAIRO specific fuction, modify png_load_body
instead.
(jpeg_load_body): Call create_cairo_image_surface.
(gif_load, svg_load_image): Handle specified background, call
create_cairo_image_surface.
* src/xterm.c (x_draw_image_glyph_string): Added missing USE_CAIRO.
2015-04-11 Jan D <jan.h.d@swipnet.se>
Support GIF and Tiff with cairo.
* configure.ac: Allow jpeg with cairo.
Allow tiff and gif with cairo.
* src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
(tiff_load): Create cairo image surface if USE_CAIRO.
(gif_load): Ditto.
Support JPEG with USE_CAIRO.
* configure.ac: Allow jpeg with cairo.
* src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
2015-04-05 Jan D <jan.h.d@swipnet.se>
Support RSVG and cairo.
* configure.ac: Allow rsvg with cairo. Move back HAVE_RSVG.
* src/dispextern.h (struct image): add cr_data2 if cairo.
* src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
(x_clear_image): Free cr_data and cr_data2 if set.
(xpm_load): Assign data to cr_data2.
(svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
2015-04-03 Jan D <jan.h.d@swipnet.se>
Introduce limited Xpm support (32 bit ZPixmap) for Cairo.
* configure.ac (HAVE_RSVG): Move after cairo.
(USE_CAIRO): Disable rsvg, don't disable Xpm.
* src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
(x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
don't return early.
(ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
(xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
and create a surface.
Tool tips for menus did not show any text.
* src/xterm.c (x_update_begin): Don't create any surface for non-visible
tip frames, the geometry may be wrong.
Merge branch 'master' into cairo, fixes tooltips not shown.
Merge branch 'master' into cairo
Add CAIRO_CFLAGS to lwlib/Makefile.in
* Makefile.in (CAIRO_CFLAGS): Add.
2015-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
2015-02-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Draw outermost line using black relief and erase corners also for cairo.
* xterm.c [USE_CAIRO]: Include math.h.
(enum corners) [USE_CAIRO]: New enum.
(x_erase_corners_for_relief) [USE_CAIRO]: New function.
(x_draw_relief_rect) [USE_CAIRO]: Use it. If box width is larger
than 1, draw the outermost line using the black relief.
* xterm.c (x_fill_trapezoid_for_relief): Remove unnecessary cairo_close_path.
2015-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
* xterm.c (x_draw_stretch_glyph_string): Call x_reset_clip_rectangles instead of XSetClipMask.
Use int instead of unsigned int for width and height args.
* xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
(x_fill_trapezoid_for_relief): Use int instead of unsigned int for
width and height args.
Modernize k&r cairo-related function declarations.
* gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
(xg_print_frames_dialog): Modernize k&r declarations.
* xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
(Fx_print_frames_dialog): Modernize k&r declarations.
* xterm.c (x_gc_get_ext_data, x_extension_initialize, x_begin_cr_clip)
(x_end_cr_clip, x_set_cr_source_with_gc_foreground)
(x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
(x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
(x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
(x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
(x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
(x_clear_area): Modernize k&r declarations.
Implement wave-style variant of underlining for cairo.
* xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
(x_draw_underwave) [USE_CAIRO]: Use it.
* xterm.c (x_draw_window_divider): Use x_fill_rectangle instead of XFillRectangle.
2015-02-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Fix fringe bitmap initialization for cairo.
* fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap data for
cairo image surface.
* xterm.c (x_cr_define_fringe_bitmap): Call cairo_surface_mark_dirty.
2015-02-11 Jan D <jan.h.d@swipnet.se>
Add cairo drawing.
* configure.ac (with-cairo): New option.
(USE_CAIRO): Default to yes for Gtk+ 3. Add code to test for cairo,
set CAIRO_CFLAGS, CAIRO_LIBS. Add ftcrfonto to FONT_OBJ if cairo.
Output "Does Emacs use cairo?".
* lisp/version.el (emacs-version): Add cairo version.
* src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
(FONT_OBJ): Add comment about ftcrfont.
(ALL_CFLAGS): Add CAIRO_CFLAGS.
(LIBES): Add CAIRO_LIBS.
* src/dispextern.h (struct image): Add cr_data for cairo.
(x_cr_init_fringe): Declare.
* src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
* src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
* src/fringe.c (x_cr_init_fringe): New function name that shares code
with w32_init_fringe.
* src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
* src/ftfont.c (ftfont_info_size); New global variable.
(ftfont_open2): New extern function almost the same as old ftfont_open,
but takes the font_object as argument.
(ftfont_open): Build font object and call ftfont_open2.
* src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
* src/gtkutil.c (xg_clear_under_internal_border)
(xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos): Only
queue_draw if not cairo. Change args to x_clear_area.
(xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
(xg_page_setup_dialog, xg_get_page_setup, draw_page)
(xg_print_frames_dialog): New functions for printing.
* src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
(xg_print_frames_dialog): Declare.
* src/image.c: Add defined (USE_CAIRO) for PNG.
Add !defined USE_CAIRO for W32 PNG code.
(x_clear_image): If cairo, destroy the surface in cr_data.
(png_load): Add new cairo compatible implementation.
(lookup_image_type): Add defined (USE_CAIRO) for define png_type.
* src/xfns.c: New section Printing.
(x-export-frames, x-page-setup-dialog, x-get-page-setup)
(x-print-frames-dialog): New printing functions.
(Fx_create_frame, x_create_tip_frame): Register ftcrfont if
cairo.
(syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
(syms_of_xfns): Provide cairo and defvar cairo-version-string.
defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
* src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
(x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
(x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
(x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
Declare.
(FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
(max_fringe_bmp, fringe_bmp): New variables.
(x_gc_get_ext_data, x_extension_initialize)
(x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
(x_set_cr_source_with_gc_foreground)
(x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
(x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
(x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
(x_prepare_for_xlibdraw, x_set_clip_rectangles)
(x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
(x_clear_window, x_fill_trapezoid_for_relief): New functions.
(x_update_begin): Create cairo surface if needed.
(x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
(x_update_end): Paint cairo drawing surface to xlib surface.
(x_clear_under_internal_border, x_after_update_window_line): Adjust
arguments to x_clear_area.
(x_draw_fringe_bitmap): Call x_fill_rectangle. Get GC values and
call x_cr_draw_image for cairo. Call x_reset_clip_rectangles instead
of XSetClipMask.
(x_set_glyph_string_clipping)
(x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
instead of XSetClipRectangles.
(x_clear_glyph_string_rect, x_draw_glyph_string_background): Use
x_fill_rectangle instead of XFillRectangle.
(x_draw_glyph_string_foreground)
(x_draw_composite_glyph_string_foreground)
(x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle instead
of XDrawRectangle.
(x_draw_relief_rect): Add code for USE_CAIRO.
Call x_reset_clip_rectangles instead of XSetClipMask.
(x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
instead of XSetClipMask.
(x_draw_image_foreground, x_draw_image_foreground_1):
x_draw_rectangle instead of XDrawRectangle.
(x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
XFillRectangle.
(x_draw_image_glyph_string): If img has cr_data, use it as
a cairo surface.
(x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
(x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
x_reset_clip_rectangles instead of XSetClipMask.
(x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
(x_clear_area1): New function that calls XClearArea.
(x_clear_area): Takes frame as parameter, calls x_clear_area1 for
non-cairo.
(x_clear_frame): x_clear_window instead of XClearWindow.
(x_scroll_run): Set frame garbaged if cairo.
(XTmouse_position): Initialize *part to 0.
(x_scroll_bar_create): Adjust arguments to x_clear_area.
(x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
x_fill_rectangle instead of XFillRectangle.
(XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
arguments to x_clear_area.
(x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
(handle_one_xevent): Adjust arguments to x_clear_area.
Destroy cairo surface for frame if ConfigureNotify.
(x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
(x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
x_reset_clip_rectangles instead of XSetClipMask.
(x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
x_reset_clip_rectangles instead of XSetClipMask.
(x_clear_frame_area): Adjust arguments to x_clear_area.
(x_free_frame_resources): Call x_prepare_for_xlibdraw.
(x_term_init): Call x_extension_initialize if cairo.
(x_redisplay_interface): Add x_cr_define_fringe_bitmap,
x_cr_destroy_fringe_bitmap for cairo.
(x_initialize): Call x_cr_init_fringe for cairo.
* src/xterm.h: Add include of cairo header files.
(x_bitmap_record): Add img if cairo.
(x_gc_ext_data): New struct for cairo.
(x_display_info): Add ext_codes for cairo.
(x_output): Add cr_context and cr_surface for cairo.
(x_clear_area): Change arguments from Display*/Window to frame pointer.
(x_query_color, x_begin_cr_clip, x_end_cr_clip)
(x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
(x_cr_draw_frame, x_cr_export_frames): Declare.
2015-05-17 Johan Bockgård <bojohan@gnu.org>
Fix integer-valued `mouse-highlight' (Bug#20590)
* src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
2015-05-17 Eli Zaretskii <eliz@gnu.org>
MS-Windows followup for ASCIIfication of curved quotes
* lisp/term/w32console.el (terminal-init-w32console): Repeat the
test for curved quotes being displayable, after switching the
terminal encoding. (Bug#20545)
2015-05-17 Paul Eggert <eggert@cs.ucla.edu>
Spelling fixes
2015-05-17 Jan D <jan.h.d@swipnet.se>
Add comment that x_shift_glyphs_for_insert is never called.
* xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface): Add
comment that this function is never called.
2015-05-16 Glenn Morris <rgm@gnu.org>
* src/lisp.mk: Remove from repository and generate at build-time.
* src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
(shortlisp_filter): New variable.
(emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
(distclean): Remove lisp.mk.
* Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
* lisp/loadup.el: Tweak layout to make it easier to parse.
* make-dist: Do not distribute src/lisp.mk.
2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
Display shorter dates in Git annotate output
* lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
format (when not overridden with vc-git-annotate-switches).
(vc-git-annotate-time): Support the short format, as well as ISO
8601 that has been used until now (bug#5428).
2015-05-16 Paul Eggert <eggert@cs.ucla.edu>
ASCIIfy curved quotes on displays lacking them
* lisp/international/mule-cmds.el (set-locale-environment):
If curved quotes don't work, display straight ASCII approximations
(Bug#20545).
2015-05-16 Glenn Morris <rgm@gnu.org>
Small src/Makefile simplification.
* src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
* src/Makefile.in (lisp): Derive from shortlisp.
($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
2015-05-16 Eli Zaretskii <eliz@gnu.org>
* lisp/help-mode.el (help-go-forward): Doc fix.
(Bug#20577)
* doc/lispref/debugging.texi (Profiling): Improve indexing.
(Bug#20576)
2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
Use `unless' to have one fewer `not'
* lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
have one fewer `not'.
Remove redundant :group declarations from vc-git.el
* lisp/vc/vc-git.el (vc-git-diff-switches)
(vc-git-annotate-switches, vc-git-resolve-conflicts)
(vc-git-program, vc-git-root-log-format): Remove the redundant
:group declarations.
2015-05-16 Nicolas Petton <nicolas@petton.fr>
Removes the predicate from lisp-complete-symbol (Bug#20456)
* lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
and remove it from the docstring.
2015-05-16 Dmitry Gutov <dgutov@yandex.ru>
Add new option vc-git-resolve-conflicts
* lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
(vc-git-find-file-hook): Add to after-save-hook only when the
above is non-nil.
(vc-git-resolve-when-done): Update to honor the new variable.
(Bug#20292)
2015-05-16 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/tabulated-list.el: Don't error on nil header-string
(tabulated-list-init-header): Document new behavior.
(tabulated-list-print-fake-header): No nothing if
`tabulated-list--header-string' is nil.
(tabulated-list--header-string): Add a docstring.
* doc/lispref/modes.texi (Tabulated List Mode): Document it.
* etc/NEWS: Document it.
2015-05-15 Leo Liu <sdl.web@gmail.com>
Revert "Fix cps--gensym"
* lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
2015-05-15 Glenn Morris <rgm@gnu.org>
Replace AC_SUBST_FILE in configure with include in Makefiles.
* configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
(oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
(AUTO_DEPEND): New output variable.
* lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
(DEPFLAGS, MKDEPDIR): Set directly via conditional.
(lwlib_deps_frag): Replace by conditional include.
* lwlib/autodeps.mk: Remove file.
* oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
(DEPFLAGS, MKDEPDIR): Set directly via conditional.
(oldxmenu_deps_frag): Replace by conditional include.
* oldXMenu/autodeps.mk: Remove file.
* src/Makefile.in (AUTO_DEPEND): New, set by configure.
(DEPFLAGS, MKDEPDIR): Set directly via conditional.
(lisp_frag): Replace by an include.
(deps_frag): Replace by conditional include.
* src/autodeps.mk: Remove file.
Tweak japanese.el's loading of dependencies.
* lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
* lisp/language/japanese.el: Use require rather than load.
* lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
Provide a feature.
* admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
Provide a feature in the generated file.
2015-05-15 Jan D <jan.h.d@swipnet.se>
Fix NS warnings.
* nsmenu.m (ns_popup_dialog)
* nsimage.m (initFromXBM:width:height:fg:bg:)
* nsfns.m (Fx_create_frame): Remove unused variables.
(Fns_read_file_name): Initialize fname, remove ret.
* nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
(ns_get_color, ns_set_horizontal_scroll_bar, keyDown): Remove unused
variable.
(init): Add parantesis in if.
(ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
Fix a enum conversion warning in macfont.m
* src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
(MAC_CHARACTER_COLLECTION_*): Use the NS variants.
2015-05-15 Eli Zaretskii <eliz@gnu.org>
Support de-alt dictionary with Aspell.
* lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
Support Aspell dictionaries with names like "de-alt". (Bug#20581)
2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
cus-start.el: Add ns-confirm-quit.
* cus-start.el: Add ns-confirm-quit.
Fix warnings on OSX 10.10.
* nsfns.m (MODAL_OK_RESPONSE): New define for different OSX versions.
(Fns_read_file_name): Check against MODAL_OK_RESPONSE.
(compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
* nsmenu.m (initWithContentRect:styleMask:backing:defer:)
* nsimage.m (allocInitFromFile, setPixmapData): Only call
setScalesWhenResized for OSX < 10.6.
* nsterm.h (EmacsScroller): Declare scrollerWidth.
* nsterm.m (ns_copy_bits): New function that does not use deprecated
NSCopyBits.
(ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
(runAlertPanel): New function.
(applicationShouldTerminate:): Call runAlertPanel.
(initFrameFromEmacs, toggleFullScreen:): Only call useOptimizedDrawing
for OSX < 10.10.
(initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
(windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
(draggingEntered:): Returns NSDragOperation.
(scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
2015-05-15 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Don't ensure-init during startup
(package--init-file-ensured): New variable.
(package-initialize, package--ensure-init-file): Use it.
2015-05-15 Jan Djärv <jan.h.d@swipnet.se>
Honor :fore/background for XBM on NS (Bug#14969).
* nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
initFromXBM takes bg, fg args, remove flip arg.
(ns_image_from_XBM): Add bg, fg args.
* image.c (x_create_bitmap_from_data)
(Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
* nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to initFromXBM.
Remove flip arg.
(initFromSkipXBM): Move code to initFromXBM.
(initFromXBM): Actually set fg and bg, instead of playing alpha games.
Use fg, bg from args (Bug#14969). Remove if (length) section, was always
false.
Remove bit flipping (bitPat, swt), generated incorrect images when
width/height wasn't a multiple of 8.
(setXBMColor:): Modify planes by comparing to saved xbm_fg.
* nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args, remove
flip arg.
2015-05-15 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Be more careful with the init file
(package--ensure-init-file): Check that user-init-file is set,
exists, is readable, and is writable. (Bug#20584)
Also expand the docstring.
2015-05-14 Wilson Snyder <wsnyder@wsnyder.org>
Sync with upstream verilog-mode revision 6232468
* lisp/progmodes/verilog-mode.el (verilog-font-lock-grouping-keywords-face)
(verilog-highlight-grouping-keywords): Fix use of face when
`verilog-highlight-grouping-keywords' set. Reported by Jeff
Pompa.
(verilog-auto-reset): Fix AUTORESET to ignore member resets if
parent is reset, bug906. Reported by Ken Schmidt.
(verilog-auto-inout-module): Add fourth regexp argument to
AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match,
bug856. Reported by John Tillema.
(verilog-auto-inst-port): Fix AUTOINST interfaces to not show
modport if signal attachment is itself a modport. Reported by
Matthew Lovell.
(verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
always_comb and always_latch, bug844. Reported by Greg Hilton.
(verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
with many curly-bracket pairs, bug663.
(verilog-set-auto-endcomments): Fix end comments for functions of
type void, etc. Reported by Alex Reed.
(verilog-do-indent): Fix electric tab deleting form-feeds. Note
caused by indent-line-to deleting tabls pre 24.5.
(verilog-nameable-item-re): Fix nameable items that can have an
end-identifier to include endchecker, endgroup, endprogram,
endproperty, and endsequence. Reported by Alex Reed.
(verilog-label-be): When auto-commenting a buffer, consider
auto-comments on all known keywords (not just a subset thereof).
Reported by Alex Reed.
(verilog-auto-end-comment-lines-re)
(verilog-end-block-ordered-re, verilog-set-auto-endcomments):
Automatically comment property/endproperty blocks to match other
similar blocks like sequence/endsequence, function/endfunction,
etc. Reported by Alex Reed.
(verilog-set-auto-endcomments): Detect the function- or task-name
when auto-commenting blocks that lack an explicit
portlist. Reported by Alex Reed.
(verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
allow post-AUTO user fixups, bug826. Reported by Dennis
Muhlestein.
(verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
is nil, fix indenting initial/final to match always statements,
bug825. Reported by Tim Clapp.
(verilog-extended-complete-re): Fix indentation of DPI-C imports
with c_identifiers, and DPI-C imports, bug557. Reported by ZeDong
Mao and Jason Forkey.
(verilog-read-decls): Fix parsing typed interfaces. Fix
AUTOINOUTMODPORT missing types. Reported by Stephan Bourduas.
Fix localparam not being ignored in AUTOINSTPARAM,
bug889. Reported by Shannon Hill.
(verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
bug793. Reported by Pierre-David Pfister.
(verilog-auto-arg-format, verilog-auto-arg-ports): Add
verilog-auto-arg-format to support newlines in AUTOARG. Reported
by Jie Xiao.
(verilog-batch-execute-func): Do not batch re-auto files loaded by
Local Variables. Fix printing "no changes to be saved" with
verilog-batch. Reported by Dan Dever.
(verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
interface-only modules, bug721. Reported by Dean Hoyt.
Author: Alex Reed <acreed4@gmail.com>
* lisp/progmodes/verilog-mode.el (verilog-beg-of-statement): Don't
treat '<keyword>:<identifier>' as the start of a labeled
statement, bug905. Reported by Enzo Chi.
(verilog-directive-re, verilog-compiler-directives)
(verilog-keywords): Match full set of IEEE 2012-1800 compiler
directives (plus some extras) when determining indentation, bug
901. Reported by Bernd Beuster.
(verilog-at-constraint-p): Fix indentation of coverpoint bins if
iff expression doesn't start with word-character, bug900.
(verilog-optional-signed-range-re, verilog-optional-signed-re):
Fix incorrect indentation/alignment of unsigned declarations,
bug897.
(verilog-looking-back, verilog-in-attribute-p): Fix labling of
always constructs, bug895.
(verilog-calc-1): Fix verilog-mode constraint indentation,
bug324. Reported by Eric Mastromarchi.
(verilog-beg-of-statement): Fix indenting for some forms of
constraintsm bug433. Reported by Brad Parker. Fix indentation of
continued assignment incorrect if first line ends with ']',
bug437. Reported by Dan Dever. Fix indention of cover inside an
ifdef, bug 862. Reported by Bernd Beuster Fix labeling do-while
blocks, bug842.
(verilog-preprocessor-re): Fix fork/end UNMATCHED warning,
bug859. Reported by Kaushal Modi.
(verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
(verilog-backward-token): Fix indenting sensitivity lists with
named events, bug840. Reed.
(verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
nil not honoring 'forever', 'foreach', and 'do' keywords.
2015-05-14 Paul Eggert <eggert@cs.ucla.edu>
Check for invalid GTK+ monitor scales
* src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
INT_MAX for too-large scales. All callers changed to assume the
result is valid (Bug#20432).
(xg_frame_set_char_size, xg_update_scrollbar_pos):
Calculate scale only if needed.
show ASCII approximations instead.
2015-05-14 Eli Zaretskii <eliz@gnu.org>
Fix daemon crashes when linum-mode is turned on early on
* src/window.c (Fwindow_end): Don't try calling display engine
functions on initial-frame frame. (Bug#20565)
Fix selective diff browsing in Ediff
* lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches): Go to the
beginning of the region before searching for the
ediff-regexp-focus-* regexps. (Bug#20568)
2015-05-14 Jan D <jan.h.d@swipnet.se>
Fixes Bug#20142.
* gtkutil.c (delete_cb): Don't send delete event here, it does arrive
in the main loop, even for Gtk 3 (Bug#20142).
Don't access display after i/o error (Bug#19147).
* xterm.c (x_connection_closed): Add third arg ioerror.
If ioerror, set display to 0 (Bug#19147).
(x_error_quitter): Call x_connection_closed with third arg false.
(x_io_error_quitter): Call x_connection_closed with third arg true.
Handle GTK_SCALE, fixes Bug#20432.
* gtkutil.c (xg_get_gdk_scale): New function.
(xg_frame_set_char_size)
(x_wm_set_size_hint, xg_get_default_scrollbar_width)
(xg_get_default_scrollbar_height)
(xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
when setting sizes (Bug#20432).
2015-05-13 Leo Liu <sdl.web@gmail.com>
Fix cps--gensym
* lisp/emacs-lisp/generator.el (cps--gensym): Fix.
2015-05-13 Glenn Morris <rgm@gnu.org>
Fix bootstrap (void function cl-member).
* lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
* lisp/emacs-lisp/cl-seq.el: Provide a feature.
2015-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
* src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
* lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
Avoid defalias for closures which are not immutable.
(cl--generic-prefill-dispatchers): New macro. Use it to prefill the
dispatchers table with various entries.
* lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
* lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
2015-05-13 Eli Zaretskii <eliz@gnu.org>
Improve tagging of C bindings in DEFVAR_*
* src/Makefile.in (TAGS): Add --regex options to tag the C binding
from DEFVAR_*.
2015-05-13 Paul Eggert <eggert@cs.ucla.edu>
* src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
2015-05-12 Glenn Morris <rgm@gnu.org>
* lisp/progmodes/tcl.el (tcl-filter):
Handle comint-prompt-read-only like gud.el does. (Bug#20549)
Add basic VC push support.
* lisp/vc/vc.el (vc-push): New autoloaded command.
* lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
* lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
(vc-bzr-pull): Reimplement using vc-bzr--pushpull.
(vc-bzr-push): New.
* lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
(vc-git-pull): Reimplement using vc-git--pushpull.
(vc-git-push): New.
* lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
(vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
* doc/emacs/maintaining.texi (Pulling / Pushing):
Rename from "VC Pull". Mention pushing.
(VC With A Merging VCS, VC Change Log): Update xrefs.
(Branches): Update menu.
* doc/emacs/emacs.texi: Update menu.
* etc/NEWS: Mention this.
2015-05-12 Nicolas Petton <nicolas@petton.fr>
Improve the seq pcase pattern and the `seq-let' macro
* lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
object is a sequence, and binds each element of ARGS to the
corresponding element of the sequence.
2015-05-12 Eli Zaretskii <eliz@gnu.org>
Fix tags created from DEFVAR_* declarations in C
* src/Makefile.in (TAGS): Improve the --regex argument to etags,
to make tags extracted from DEFVAR_* declarations more accurate.
Add a test suite for etags
* test/etags/: New test suite, adapted from
http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
whose original author is Francesco Potortì <pot@gnu.org>.
Fix tagging of symbols in C enumerations
* lib-src/etags.c (consider_token): Don't tag symbols in
expressions that assign values to enum constants. See
http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
for details.
(C_entries): Reset fvdef to fvnone after processing a preprocessor
conditional and after a comma outside of parentheses.
2015-05-12 Glenn Morris <rgm@gnu.org>
* lisp/url/url-handlers.el (url-file-name-completion)
(url-file-name-all-completions): Silence compiler.
* lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
* lisp/play/dunnet.el (dun-dos-boot-msg): Fix time. (Bug#20554)
2015-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
(cl--generic-mandatory-args): Remove.
(cl--generic-split-args): New function.
(cl-generic-define, cl--generic-lambda): Use it.
(cl-generic-define-method): Use it as well, and add support for
context args.
(cl--generic-get-dispatcher): Handle &context dispatch.
(cl--generic-cache-miss): `dispatch-arg' can now be a context expression.
(cl--generic-dispatchers): Pre-fill.
* test/automated/cl-generic-tests.el (sm-generic-test-12-context): New test.
2015-05-11 Glenn Morris <rgm@gnu.org>
* make-dist: Abort if "make ChangeLog" fails. Add "--no-changelog".
2015-05-11 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/term/xterm.el: Fix xterm-paste handling for rxvt
* lisp/term/rxvt.el: Require term/xterm.
(rxvt-function-map): Use xterm-rxvt-function-map.
(rxvt-standard-colors): Move before first use.
(terminal-init-rxvt): Use xterm--push-map and xterm-register-default-colors.
(rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
* lisp/term/xterm.el (xterm-rxvt-function-map): New var.
Move shared bindings between rxvt and xterm to it.
(xterm-function-map): Use it. Move the xterm-paste binding to
xterm-rxvt-function-map (bug#20444).
(xterm-standard-colors): Move before first use.
(xterm--push-map): New function.
(xterm-register-default-colors): Take standard colors as argument.
(terminal-init-xterm): Use it. Adjust call to
xterm-register-default-colors.
2015-05-11 Glenn Morris <rgm@gnu.org>
* lisp/term/x-win.el: Quieten --without-x compilation.
(x-own-selection-internal, x-disown-selection-internal)
(x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
Declare.
* Makefile.in (emacslog): Remove srcdir.
(ChangeLog): Update for the above.
2015-05-11 Paul Eggert <eggert@cs.ucla.edu>
Spelling fix
2015-05-10 Fabián Ezequiel Gallina <fgallina@gnu.org>
python.el: better limit for looking-back calls
* lisp/progmodes/python.el (python-shell-accept-process-output):
Use last comint prompt start as limit for looking-back.
2015-05-10 Stefan Monnier <monnier@iro.umontreal.ca>
CEDET (srecode-insert-fcn): Fix use of oref on a class
* lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref on
a class. Reported by Pierre Lorenzon.
(srecode-template-inserter-point): Remove declaration.
CEDET (srecode-create-dictionary): Avoid obsolete object name
* lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
Don't use a symbol as an object name. Reported by Pierre Lorenzon.
2015-05-10 Paul Eggert <eggert@cs.ucla.edu>
C-x 8 shorthands for curved quotes, Euro, etc.
Although C-x 8 lets you insert arbitrary Unicode characters,
it's awkward to use this to insert commonly used symbols such as curved
quotes, the Euro symbol, etc. This patch adds simpler sequences for
characters commonly found in English text and in basic math.
For example, assuming the Alt key works on your keyboard and iso-transl
is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
to get the character "" (U+2018 LEFT SINGLE QUOTATION MARK).
(Bug#20499)
* doc/emacs/mule.texi (Unibyte Mode):
A few other printing characters now work too.
* etc/NEWS: Document this.
* lisp/international/iso-transl.el (iso-transl-char-map):
Also support the following characters:
— ― “ ” † ‡ • ″ € № ← → ↔ ≈ ≠ ≤ ≥
2015-05-10 Dmitry Gutov <dgutov@yandex.ru>
Add xref-find-regexp
* lisp/progmodes/xref.el (xref-find-function): Describe the
`matches' action.
(xref-find-regexp): New command, using it.
(xref-collect-references): Rename to xref-collect-matches.
(xref--collect-reference): Rename to xref--collect-match.
(xref-collect-matches, xref--collect-match): Accept new argument,
KIND. Update accordingly.
(xref--regexp-to-extended): New function.
* lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
`matches' action.
(elisp--xref-find-matches): Accept new argument. Resolve a FIXME.
* lisp/progmodes/etags.el (etags-xref-find):
Support the `matches' action.
(etags--xref-find-matches): New function.
2015-05-10 Glenn Morris <rgm@gnu.org>
* Makefile.in: Fixes for recent change-history changes.
(change-history-nocommit): Update footer regexp.
Ensure output script stays executable.
2015-05-10 Nicolas Petton <nicolas@petton.fr>
New version of `seq-let' based on a pcase pattern
* lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
2015-05-10 Przemysław Wojnowski <esperanto@cumego.com>
Add basic HTML5 tags and a template
* lisp/textmodes/sgml-mode.el: Basic HTML5 support.
(html-tag-alist): Add HTML5 tags.
(html-tag-help): Add new tags descriptions.
(html-navigational-links): Template for nav links.
(html-html5-template): Template for a HTML5 page.
2015-05-10 Dmitry Gutov <dgutov@yandex.ru>
semantic/symref/grep: Don't use word boundaries
* lisp/cedet/semantic/symref/grep.el
(semantic-symref-perform-search): Instead of wrapping input in
word boundaries, check that the characters before and after are
not word constituents.
semantic/symref/grep: Support regexp search
* lisp/cedet/semantic/symref.el
(semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
the search type is regexp.
* lisp/cedet/semantic/symref/grep.el
(semantic-symref-perform-search): Support the regexp search type.
Pass -E to Grep when it's used.
semantic-symref-regexp: Allow to input an arbitrary string
* lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
Allow to input an arbitrary string interactively.
Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
* lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
Remove tag-symbol-match-p from the default value
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
Declare find-tag obsolete
* lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
xref-find-definitions.
2015-05-10 Jan D <jan.h.d@swipnet.se>
Draw composite string correctly (Bug#20537).
* nsterm.m (ns_draw_composite_glyph_string_foreground): New function.
(ns_draw_glyph_string): Call it (Bug#20537).
2015-05-09 Eli Zaretskii <eliz@gnu.org>
Avoid infloop in ERC
* lisp/simple.el (line-move-to-column): Ignore field boundaries
while computing line beginning position. (Bug#20498)
2015-05-08 Glenn Morris <rgm@gnu.org>
* Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
* build-aux/gitlog-to-emacslog: Check called from right directory.
(srcprefix): Remove.
* build-aux/gitlog-to-emacslog: Get rid of "distprefix".
* Makefile.in (ChangeLog): No longer pass "distprefix".
* make-dist: Update "make ChangeLog" syntax for the above change.
* build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
* Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
* build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
Add command-line option-parsing to gitlog-to-emacslog.
* build-aux/gitlog-to-emacslog: Add command-line options.
By default, refuse to remove an existing output file.
* Makefile.in (CHANGELOG): Update default.
(ChangeLog): Do not test for existing file.
(change-history-nocommit): Ensure temp file does not exist.
Quieten --without-x compilation.
* lisp/term/common-win.el: Provide a feature.
* lisp/term/x-win.el (term/common-win): Require it.
* lisp/dired-aux.el (dired-do-print): Require lpr.
Quieten compilation, eg in --without-x builds.
* lisp/dired-aux.el (lpr-printer-switch):
* lisp/frame.el (tool-bar-height):
* lisp/linum.el (font-info):
* lisp/window.el (font-info, overflow-newline-into-fringe)
(tool-bar-height):
* lisp/emacs-lisp/package-x.el (tar-data-buffer):
* lisp/gnus/gnus-util.el (iswitchb-mode):
* lisp/mail/rmailmm.el (libxml-parse-html-region):
* lisp/net/nsm.el (gnutls-peer-status)
(gnutls-peer-status-warning-describe):
* lisp/net/shr.el (libxml-parse-xml-region):
* lisp/url/url-http.el (gnutls-peer-status): Declare.
2015-05-08 Stefan Monnier <monnier@iro.umontreal.ca>
CEDET (srecode-pop, srecode-peek): Don't use `subclass'
* lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
`subclass' since they're never called with a class.
(srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
srecode-dictionary-child-p.
2015-05-08 Nicolas Richard <theonewiththeevillook@yahoo.fr>
help--binding-locus: Document argument POSITION.
* lisp/help.el (help--binding-locus): Document argument POSITION. (bug#20530)
2015-05-08 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib.
* doc/misc/texinfo.tex: Get latest version.
2015-05-08 Oleh Krehel <ohwoeowho@gmail.com>
ffap.el (ffap-read-file-or-url): Fix completing-read call
* lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
`completing-read' should be a symbol.
2015-05-08 Eli Zaretskii <eliz@gnu.org>
Verify file modifications by other programs
* src/filelock.c (lock_file): Check whether the file was modified
since it was visited even if 'create-lockfiles' is nil. (Bug#18828)
Fix keyboard macros that include function keys
* src/keyboard.c (read_char_minibuf_menu_prompt): Record function
keys in the macro before returning. (Bug#20454)
2015-05-08 Glenn Morris <rgm@gnu.org>
* build-aux/gitlog-to-changelog: Treat "Tiny-change" like
"Copyright-paperwork-exempt". (Bug#20324)
* lisp/vc/log-edit.el: Handle "(tiny change)". (Bug#20324)
(log-edit-rewrite-tiny-change): New variable.
(log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
(log-edit-changelog-ours-p): Set log-edit-author to a cons.
* etc/NEWS: Mention this.
* lisp/calc/calc.el (math-zerop): Declare.
* lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
2015-05-07 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec
Support the case when BINDINGS is a single tuple. (Bug#20525)
* etc/NEWS: Fix typo in commit 14bb519
2015-05-07 Jan D <jan.h.d@swipnet.se>
Warn for multiple display crash for all Gtk+ versions.
* configure.ac: Warn for multiple display crash for all Gtk+
versions. Output URL to Gtk+ bug (Bug#20452).
ns-win.el (ns-paste-secondary): Use gui-get-selection.
* ns-win.el (ns-paste-secondary): Use gui-get-selection.
2015-05-07 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: New "external" package status
An external package is any installed package that's not built-in
and not from `package-user-dir', which usually means it's from an
entry in `package-directory-list'. They are treated much like
built-in packages, in that they cannot be through the Package Menu
deleted and are not considered for upgrades.
(package-desc-status): Identify if a package is installed outside
`package-user-dir'.
(package-menu--print-info-simple)
(package-menu--status-predicate): Add support for it.
* etc/NEWS: Document it.
2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/mail/rmail.el: Use lexical-binding
(rmail-bury): Remove unused var `buffer-to-bury'.
(rmail-get-new-mail): Remove unused vars `opoint' and `success'.
(rmail-parse-url): Remove unused var `proto', `user', and `host'.
(rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
(rmail-insert-inbox-text): Remove unused var `movemail'.
(rmail-add-mbox-headers): Remove unused var `limit'.
(rmail-undelete-previous-message): Remove unused var `value'.
(rmail-reply): Remove unused vars `resent-to', `resent-cc',
`resent-reply-to'.
(rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
(rmail-restore-desktop-buffer): Rename arguments.
2015-05-06 Glenn Morris <rgm@gnu.org>
* Makefile.in (change-history-commit): Add missing piece of previous.
Avoid unnecessary bumping of Makefile.in's timestamp.
* Makefile.in (gen_origin): Move to gitlog-to-emacslog.
(emacslog): New variable.
(ChangeLog): Use $emacslog. Don't pass $gen_origin.
(unchanged-history-files): Use $emacslog rather than Makefile.in.
(change-history-nocommit): Store hash in $emacslog.
* build-aux/gitlog-to-emacslog (gen_origin): Move default here.
* admin/update_autogen (changelog_files): Update for the above.
* Makefile.in: Don't always insist on removing existing "ChangeLog".
(CHANGELOG): New variable.
(no-ChangeLog): Remove.
(ChangeLog): Replace "no-ChangeLog"; pass output file to script.
(change-history-nocommit): Use a temp file rather than insisting
on deletion of any existing "ChangeLog".
* build-aux/gitlog-to-emacslog: Allow specification of output.
* admin/update_autogen: Add option to update ChangeLog.
(usage): Mention -H.
(changelog_flag, changelog_n, changelog_files): New variables.
(main): Check for -H, and maybe run change-history-nocommit.
2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/subr.el (delete-dups): Pre-size the hashtable.
(define-modify-macro): Make sure cl--arglist-args is defined
* lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
cl--arglist-args is defined (bug#20517).
2015-05-06 Glenn Morris <rgm@gnu.org>
* Makefile.in (change-history-nocommit): New.
2015-05-06 Dmitry Gutov <dgutov@yandex.ru>
Only cancel timer when it is non-nil
* lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
timer when it is non-nil
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
2015-05-06 Glenn Morris <rgm@gnu.org>
Quieten cedet compilation
* lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
Invert fboundp test to quieten on current Emacs.
* lisp/cedet/ede/config.el (ede-shell-run-something)
(semanticdb-file-table-object, semanticdb-needs-refresh-p)
(semanticdb-refresh-table): Declare.
(ede-preprocessor-map): Require semantic/db.
Quieten cc-mode compilation
* lisp/progmodes/cc-awk.el (c-forward-sws):
* lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
Declare.
2015-05-06 Oleh Krehel <ohwoeowho@gmail.com>
lisp/subr.el (delete-dups): Avoid nreverse.
2015-05-06 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/subr.el (delete-dups): Make it destructive again.
2015-05-06 Paul Eggert <eggert@cs.ucla.edu>
* doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487)
* lisp/emacs-lisp/testcover.el: Use lexical-binding.
(testcover--read): Rename from testcover-read. Change calling convention.
Use edebug-read-and-maybe-wrap-form now that edebug-read is gone.
(testcover-start): Use add-function. Move edebug-all-defs binding to
testcover--read.
(testcover-this-defun): Tighten scope of edebug-all-defs binding.
(testcover-mark): Remove unused var `item'.
* src/lread.c (syms_of_lread): Default load-read-function to `read'.
2015-05-06 Oleh Krehel <ohwoeowho@gmail.com>
lisp/subr.el (delete-dups): Use a hash table
* lisp/subr.el (delete-dups): When there are more than 100 candidates,
use a hash table. This can result in ~500 times speed-up for typical
collections of size 5000, like that of `load-library'.
2015-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
CEDET: Avoid `oref' on classes in a few more cases
* lisp/cedet/ede/generic.el (ede-find-target):
* lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
* lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
var `prefix'.
* lisp/cedet/semantic/symref/grep.el: Fix unused var warnings
* lisp/cedet/semantic/symref/grep.el (grepflags, greppattern): Declare.
(semantic-symref-perform-search): Remove unused var `pat'.
CEDET (srecode-compile-inserter): Avoid `oref' on classes
* lisp/cedet/srecode/compile.el (srecode-compile-inserter):
Avoid `oref' on classes (bug#20491).
(srecode-compile-split-code): Remove unused var `key'.
2015-05-06 Dmitry Gutov <dgutov@yandex.ru>
Clean up pulse.el a little
* lisp/cedet/pulse.el (pulse): Remove.
(pulse-momentary-timer): Save instead of the stop time.
(pulse-momentary-highlight-overlay): Call
pulse-momentary-unhighlight first thing. Treat
pulse-momentary-overlay as a single value, not a list. Save the
created timer. Only pass the stop time to the timer.
(pulse-tick): Update accordingly.
(pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
single value. Cancel the timer.
2015-05-06 Tassilo Horn <tsdh@gnu.org>
Support the biblatex journaltitle field
* lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
Support the biblatex journaltitle field.
2015-05-05 Glenn Morris <rgm@gnu.org>
Minor declare-function improvement
* lisp/emacs-lisp/bytecomp.el
(byte-compile-macroexpand-declare-function):
Handle declarations after calls. (Bug#20509)
* lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
* lisp/w32-fns.el (w32-shell-name): Silence compiler.
2015-05-05 Dmitry Gutov <dgutov@yandex.ru>
Pulse using a timer
* lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
(pulse-momentary-highlight-overlay): Set up the timer instead of
calling `pulse'
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
(pulse-tick): New function.
(pulse-momentary-unhighlight): Cut off the stop time.
(pulse-delay): Update the docstring WRT to not using sit-for.
Add semantic/symref/grep file patterns for ruby-mode
* lisp/cedet/semantic/symref/grep.el
(semantic-symref-filepattern-alist): Add patterns for
ruby-mode. Clarify the docstring.
Don't require match
* lisp/progmodes/xref.el (xref--read-identifier): Don't require
match. That doesn't work for every command, and some identifier
completion tables are bound to be imperfect anyway.
2015-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505)
(semantic-grammar--template-expand): New function.
(semantic-grammar-header, semantic-grammar-footer): Use it.
(semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
(semantic-grammar-file-regexp): Refine regexp.
(semantic-grammar-eldoc-get-macro-docstring):
Use elisp-get-fnsym-args-string when available.
(semantic-idle-summary-current-symbol-info): Use new elisp-* names
instead of the old eldoc-* names.
* lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
from elisp-mode.el. Tweak calling convention.
* lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
(elisp-get-fnsym-args-string): Add `prefix' argument. Rename from
elisp--get-fnsym-args-string.
(elisp--highlight-function-argument): Add `prefix' arg.
(elisp-get-var-docstring): Rename from elisp--get-var-docstring.
(elisp--docstring-format-sym-doc): Move back to eldoc.el.
2015-05-05 Glenn Morris <rgm@gnu.org>
* lisp/help-fns.el (describe-function-1):
Handle builtins with advertised calling conventions. (Bug#20479)
2015-05-05 Nicolas Petton <nicolas@petton.fr>
Merge branch 'seq-let'
Update `seq-let' documentation
* doc/lispref/sequences.texi: Update the documentation of `seq-let'
with the support of `&rest'.
Add support for &rest in `seq-let'
* lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
in the argument list.
* test/automated/seq-tests.el: Add a test for parsing and binding
`&rest' in `seq-let'.
2015-05-05 Paul Eggert <eggert@cs.ucla.edu>
Spelling fixes
2015-05-05 (tiny change) Pierre Lorenzon <devel@pollock-nageoire.net>
* eieio-custom.el (eieio-object-value-get): Add missing increment
(Bug#20467)
(eieio-object-value-create): Adjust to new slots representation
(Bug#20467)
* eieio-custom.el (eieio-object-value-create):
Fix missed adjustment to new representation of slots metadata.
2015-05-05 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
2015-05-05 Dmitry Gutov <dgutov@yandex.ru>
Work around "Attempt to modify read-only object"
* lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
elisp--xref-find-definitions, to work around "Attempt to modify
read-only object" error.
Only skip some variables that have function counterparts
* lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
Only skip minor-mode-named variable if it's defined in a Lisp
file, and it's in minor-mode-list (bug#20506).
* test/automated/elisp-mode-tests.el
(elisp-xref-finds-both-function-and-variable)
(elisp-xref-finds-only-function-for-minor-mode): New tests.
2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
Buttonize the whole line, including the number at the beginning
* lisp/progmodes/xref.el (xref--location-at-point): Revert the
previous change.
(xref--insert-xrefs): Buttonize the whole line, including the
number at the beginning.
Make sure we're inside the let bindings
* lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
Make sure we're inside the let bindings.
* test/automated/elisp-mode-tests.el
(elisp-completes-functions-after-let-bindings): New test.
2015-05-04 Glenn Morris <rgm@gnu.org>
* lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
(eldoc-docstring-format-sym-doc, eldoc-last-data-store)
(eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
Remove outdated declarations.
Replace instances of "(eval-when-compile (autoload ...))"
* lisp/gnus/gnus-art.el (nneething-get-file-name):
Declare rather than autoload.
* lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
Remove pointless autoload.
* lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
(gnus-topic-create-topic, gnus-topic-enter-dribble):
Declare rather than autoload.
* lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
(mailcap-extension-to-mime): Autoload at run-time.
* lisp/gnus/mm-util.el (latin-unity-massage-name)
(latin-unity-maybe-remap, latin-unity-representations-feasible-region)
(latin-unity-representations-present-region):
Declare rather than autoload.
* lisp/gnus/mml-smime.el (epg-make-context)
(epg-passphrase-callback-function): Autoload at run-time.
(epg-context-set-signers, epg-context-result-for)
(epg-new-signature-digest-algorithm)
(epg-verify-result-to-string, epg-list-keys, epg-verify-string)
(epg-sign-string, epg-encrypt-string)
(epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
(epg-configuration, epg-expand-group, epa-select-keys):
Declare rather than autoload.
* lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
Autoload at run-time.
(gnus-group-topic-name, nnimap-buffer, nnimap-command)
(gnus-registry-get-id-key, gnus-registry-action):
Declare rather than autoload.
* lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
* lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
(spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
(spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
(spam-stat-split-fancy): Remove pointless autoloads.
* lisp/net/mairix.el: Load gnus-util when compiling.
(gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
(message-field-value): Declare rather than autoload.
(mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
Check gnus-alive-p is fbound.
(vm-quit, vm-visit-folder, vm-select-folder-buffer)
(vm-check-for-killed-summary, vm-error-if-folder-empty)
(vm-get-header-contents, vm-select-marked-or-prefixed-messages):
Declare rather than autoload.
* lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
* lisp/gnus/mml-smime.el (epg-key-sub-key-list)
(epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
* lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
* lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
* lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
* lisp/emacs-lisp/package.el (epg-signature-status):
Fix declarations.
* lisp/play/gametree.el (gametree-show-children-and-entry)
(gametree-apply-layout, gametree-mouse-show-subtree)
(gametree-mouse-hide-subtree): Replace obsolete outline aliases.
* lisp/emacs-lisp/check-declare.el (check-declare-verify):
Handle cl-defgeneric, cl-defmethod.
2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
Highlight both type and symbol name
* lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
Highlight both type and symbol name.
Insert, highlight and align line numbers in xref output
* lisp/progmodes/etags.el (xref-location-line): Specialize for
xref-etags-location.
* lisp/progmodes/xref.el (xref-location-line): New generic method.
(xref-file-location): Add reader for the line slot.
(xref--location-at-point): Skip to the `xref-location' property.
(xref--collect-reference): Drop the line number from description.
(xref--insert-xrefs): Insert, highlight and align line numbers.
2015-05-04 Daniel Colascione <dancol@dancol.org>
Fix previous commit
2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
Don't pulse the indentation, or the newline
* lisp/cedet/pulse.el (pulse-lighten-highlight)
(pulse-reset-face): Fall back to the inherited background
attribute in FACE.
(pulse-momentary-highlight-region): Add autoload cookie.
* lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
indentation, or the newline, if the line's non-empty
(http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
2015-05-04 Daniel Colascione <dancol@dancol.org>
Add `save-mark-and-excursion', which has the old `save-excursion' behavior
* doc/lispref/positions.texi (Excursions): Document
`save-mark-and-excursion'.
* lisp/font-lock.el (font-lock-fontify-block): Use
`save-mark-and-excursion' instead of `save-excursion', restoring
Emacs 24 behavior.
* lisp/simple.el (save-mark-and-excursion--save)
(save-mark-and-excursion--restore): New functions.
(save-mark-and-excursion): New user macro.
* src/editfns.c (Fsave_excursion): Mention
`save-mark-and-excursion' in `save-excursion' documentation.
2015-05-04 Dmitry Gutov <dgutov@yandex.ru>
Classify lone symbol inside let varlist as variable
* lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
Classify lone symbol inside let varlist as variable.
* test/automated/elisp-mode-tests.el (completest-variables-in-let-bindings):
New test.
Add xref-pulse-on-jump
* lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
Add autoload cookie.
* lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
(xref--maybe-pulse): New function.
(xref-pop-marker-stack, xref--pop-to-location)
(xref--display-position): Use it.
(xref--location-at-point): Use back-to-indentation.
2015-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/org/org-{macs,list}.el: Fix lexical warnings
* lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
(org-list-get-next-item, org-list-get-prev-item)
(org-list-get-children): Mark unused arg `struct'.
(org-list-use-alpha-bul-p): Remove unused var `bul'.
(org-toggle-checkbox): Mark unused var.
(org-update-checkbox-count): Remove unused var `box-num'.
(org-adapt-indentation): Declare.
(org-list-parse-list): Declare var instead of adding a dummy duplicate.
(org-list-send-list): Remove unused var `txt'.
(org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
(org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
* lisp/org/org-macs.el: Use `declare'.
(org-with-limited-levels): Declare dyn-bound vars.
2015-05-04 Eli Zaretskii <eliz@gnu.org>
Fix minor issues with CEDET on MS-Windows
* lisp/cedet/semantic/symref/idutils.el
(semantic-symref-parse-tool-output-one-line): Fix the search
regexp to match MS-Windows file names with drive letters.
(Bug#19468)
* lisp/cedet/semantic/symref/grep.el
(semantic-symref-grep-use-template): Remove "--color=always" from
Grep switches on MS-Windows.
(semantic-symref-grep-shell): Use shell-file-name as the default
value, so this works not only on Posix platforms.
(semantic-symref-perform-search): Use shell-quote-argument instead
of literal '..' for portable quoting of Grep command-line
argument. Use shell-command-switch instead of a literal "-c".
* lisp/cedet/semantic/bovine/gcc.el
(semantic-gcc-get-include-paths): Use file-name-absolute-p to test
for an absolute file name in a portable way.
2015-05-04 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Remove `package--silence' variable
(package-import-keyring, package-refresh-contents)
(package-compute-transaction, package--save-selected-packages)
(package-install-from-archive, package-delete)
(package-menu--perform-transaction): Use `inhibit-message'
instead.
(package--compile): Set `warning-minimum-level' to :error.
2015-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/term/screen.el (xterm-screen-extra-capabilities): New custom
(terminal-init-screen): Use it (bug#20356).
* lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
(xterm--extra-capabilities-type): New const.
(xterm-extra-capabilities): Use it.
(xterm--version-handler): Lower the pseudo-version for `screen'.
2015-05-03 Dmitry Gutov <dgutov@yandex.ru>
xref--insert-xrefs: Tweak the faces
* lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
Always insert a newline at the end (to avoid mouse-face background
tail at the last line).
elisp-completion-at-point: Prioritize being quoted over funpos
* lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
Only consider function position when not inside quoted form
(bug#20425).
* test/automated/elisp-mode-tests.el: New file.
Stop vc-print-log from jumping to the top
* lisp/vc/vc.el (vc-print-log-internal): Pass nil
GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
is not specified.
(vc-incoming-outgoing-internal): Always pass nil.
(vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
call it, and don't set vc-sentinel-movepoint (bug#15322).
(vc-print-root-log): Don't fetch the root working revision, nor
pass it to vc-print-log-internal.
2015-05-02 Michael Vehrs <Michael.Burschik@gmx.de>
Fix display of keyboard layouts for right-to-left scripts
* lisp/international/quail.el (quail-insert-kbd-layout): Force
left-to-right paragraph direction.
2015-05-02 K. Handa <handa@gnu.org>
* cmds.c (internal_self_insert): When we insert spaces for
padding, set point before the padding spaces, not after them.
2015-05-02 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
2015-05-02 Dmitry Gutov <dgutov@yandex.ru>
Fix etags-xref-find for references
* lisp/progmodes/elisp-mode.el (elisp--xref-find-references): Use `cl-mapcan'.
* lisp/progmodes/etags.el (etags-xref-find): Ditto. Prompt for
directory if no tags tables are loaded (bug#19468).
2015-05-02 Philipp Stephani <phst@google.com>
Update the options in whitespace-style defcustom
* lisp/whitespace.el (whitespace-style): Use `set' instead of a
`repeat' because the option is really set-like. Add missing
options. Reorder options to match the order in the
documentation. (Bug#20346)
2015-05-02 Eli Zaretskii <eliz@gnu.org>
Fix error diagnostics of c-macro-expand
* lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
too early if no start-marker string was found -- that generally
means cpp exited abnormally, and we still want to show its error
messages to the user.
Don't require Texinfo 5.0 for Emacs documentation
* doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
"@set txicodequotebacktick" instead of "@codequotebacktick on" and
"@codequoteundirected on", respectively, to avoid requiring
Texinfo 5.x for Emacs documentation.
2015-05-01 Simen Heggestøyl <simenheg@gmail.com>
* lisp/files.el (pwd):
When called with a prefix argument, insert the current default
directory at point.
2015-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/isearch.el (isearch-mode-map): Allow backspace remapping
* lisp/isearch.el (isearch-mode-map): Don't inhibit
function-key-map remapping for backspace (bug#20466).
2015-05-01 Dmitry Gutov <dgutov@yandex.ru>
Implement xref-find-references in etags and elisp-mode
* lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
(elisp-xref-find): Use it.
* lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
* lisp/progmodes/xref.el (xref-collect-references):
(xref--collect-reference): New functions.
2015-05-01 Paul Eggert <eggert@cs.ucla.edu>
Prefer plain characters to Texinfo circumlocutions
For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
Fix single-quoting style in PDF manuals
The PDF versions of the GNU manuals used curved single quotes to
represent grave accent and apostrophe, which made it a pain to cut
and paste code examples from them. Fix the PDF versions to use
grave accent and apostrophe for Lisp source code, keystrokes, etc.
This change does not affect the info files, nor does it affect
ordinary uses of curved single quotes in PDF.
* doc/emacs/docstyle.texi: New file, which specifies treatment for
grave accent and apostrophe, as well as the document encoding.
* doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
* doc/lispintro/emacs-lisp-intro.texi:
* doc/lispref/back.texi, doc/lispref/book-spine.texi:
* doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
* doc/misc/ada-mode.texi, doc/misc/auth.texi:
* doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
* doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
* doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
* doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
* doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
* doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
* doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
* doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
* doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
* doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
* doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
* doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
* doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
* doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
* doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
* doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
* doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
* doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
* doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
* doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
* doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
* doc/misc/woman.texi:
Use it instead of '@documentencoding UTF-8', to lessen the need for
global changes like this in the future.
* doc/emacs/Makefile.in (EMACS_XTRA):
* doc/lispintro/Makefile.in (srcs):
* doc/lispref/Makefile.in (srcs):
Add dependency on docstyle.texi.
* doc/misc/Makefile.in (style): New macro.
(${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
(${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
Use it.
2015-05-01 Glenn Morris <rgm@gnu.org>
* test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
* lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
(help-fns--signature): Declare.
* lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
2015-05-01 Nicolas Petton <nicolas@petton.fr>
New macro seq-let, providing destructuring support to seq.el
* lisp/emacs-lisp/seq.el (seq-let): New macro. `seq-let' is similar
to `cl-destructuring-bind' but works on all sequence types supported
by `seq.el'. Bump version number to 1.6.
* test/automated/seq-tests.el: Add tests for seq-let.
* doc/lispref/sequences.texi: Add documentation for seq-let.
2015-05-01 Pontus Michael <m.pontus@gmail.com>
* lisp/simple.el (blink-matching-open): Better behavior in minibuffer
2015-05-01 Glenn Morris <rgm@gnu.org>
* lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
2015-05-01 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
(Bug#20445).
2015-05-01 K. Handa <handa@gnu.org>
* mule-cmds.el (input-method-use-echo-area): Change :type to
'boolean.
2015-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
Start using proportional fonts in eww by default
* lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
it seems to work well.
Fix links in tables in shr
* lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
makes (some) links in tables not work.
2015-05-01 Jan D <jan.h.d@swipnet.se>
(ns-get-cut-buffer-internal): Remove this alias.
* lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
2015-04-30 Glenn Morris <rgm@gnu.org>
* lisp/emacs-lisp/ert.el (ert--special-operator-p):
Update for 2015-02-08 change to indirect-function.
* lisp/term/ns-win.el (ns-get-selection-internal):
Remove declaration for function deleted 2014-10-21.
* lisp/dom.el: Load subr-x when compiling, for when-let.
Silence some compilation warnings
* lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
* lisp/emulation/cua-base.el (delete-active-region):
* lisp/net/net-utils.el (w32-get-console-output-codepage):
* lisp/term/ns-win.el (ns-own-selection-internal)
(ns-disown-selection-internal, ns-selection-owner-p)
(ns-selection-exists-p, ns-get-selection):
Declare for compiler..
Function declaration updates prompted by 'make check-declare'
* lisp/emacs-lisp/package.el (lm-homepage):
* lisp/gnus/gnus-util.el (iswitchb-read-buffer):
* lisp/gnus/mm-decode.el (libxml-parse-html-region):
* lisp/gnus/mml.el (libxml-parse-html-region):
* lisp/gnus/nnrss.el (libxml-parse-html-region):
* lisp/net/eww.el (libxml-parse-html-region):
* lisp/net/shr.el (libxml-parse-html-region):
* lisp/vc/vc-bzr.el (vc-annotate-convert-time):
* lisp/vc/vc-cvs.el (vc-annotate-convert-time):
* lisp/vc/vc-git.el (vc-annotate-convert-time):
* lisp/vc/vc-hg.el (vc-annotate-convert-time):
* lisp/vc/vc-mtn.el (vc-annotate-convert-time):
* lisp/vc/vc-rcs.el (vc-annotate-convert-time):
Update declaration.
Remove compatibility code for 20-year old function renaming
* lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
Make it an obsolete alias.
(idlwave-shell-filter): Change all uses to comint-output-filter.
2015-04-30 Tassilo Horn <tsdh@gnu.org>
Add ace-window face config
* etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
configuration.
2015-04-30 Paul Eggert <eggert@cs.ucla.edu>
Unclutter 'make doc' output a bit
* Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
Use make subst rather than sh IFS to split target string apart.
This makes 'make' output easier to follow.
Merge from gnulib
* doc/misc/texinfo.tex: Update from gnulib.
2015-04-30 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh
(package-menu--print-info): Obsolete.
(package-menu--print-info-simple): New function.
(package-menu--refresh): Use it, simplify code, and improve
performance.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
Tiny performance improvement.
* lisp/emacs-lisp/package.el (package--message): inhibit-message
2015-04-29 Paul Eggert <eggert@cs.ucla.edu>
Omit -Wstrict-overflow workaround in GCC 5
* src/process.c: Remove workaround for GCC -Wstrict-overflow bug
if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
Merge from gnulib
This incorporates:
2015-04-29 extern-inline: no need for workaround in GCC 5.1
2015-04-26 file-has-acl: port to CentOS 6
* m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
2015-04-29 Helmut Eller <eller.helmut@gmail.com>
Set next-error-* in xref--xref-buffer-mode
* xref.el (xref--xref-buffer-mode): Set `next-error-function' and
`next-error-last-buffer'.
(xref--next-error-function): New function.
(http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
2015-04-29 Fabián Ezequiel Gallina <fgallina@gnu.org>
python.el: Fix warnings on looking-back calls missing LIMIT
* lisp/progmodes/python.el (python-shell-accept-process-output):
Pass LIMIT arg to looking-back.
2015-04-29 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Use pushnew for downloads in progress
(package--download-and-read-archives): Use pushnew instead of
append. If something terrible happened during a previous
download, simply refreshing should now make things work again.
2015-04-29 Dmitry Gutov <dgutov@yandex.ru>
Introduce etags-xref-find-definitions-tag-order
* lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
New variable.
(etags--xref-find-definitions): Use it (bug#19468).
2015-04-29 Eli Zaretskii <eliz@gnu.org>
PATH- and completion-related fixes in Eshell on MS-Windows
* lisp/eshell/esh-ext.el (eshell-search-path): When running on
MS-Windows, prepend "." to list of directories produced from PATH,
as Windows always implicitly searches the current directory first.
(eshell-force-execution): Make it have a non-nil default value on
MS-Windows and MS-DOS.
* lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
eshell-force-execution is non-nil, complete on readable files and
directories, not only executables. When running on MS-Windows,
prepend "." to list of directories produced from PATH, as Windows
always implicitly searches the current directory first.
2015-04-29 Sam Steingold <sds@gnu.org>
bury RCIRC buffers when there is no activity
lisp/net/rcirc.el (rcirc-non-irc-buffer): remove
(rcirc-bury-buffers): new function
(rcirc-next-active-buffer): when there is no new activity, use
`rcirc-bury-buffers' to hide all RCIRC buffers
2015-04-29 Krzysztof Jurewicz <krzysztof.jurewicz@gmail.com> (tiny change)
Fix DBUS query result parsing for secrets-search-items
* lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
parsing. The function assumed that return value of the
SearchItems method called on a collection is a list of two lists,
however this is true only when no collection is specified. GNOME
had used to incorrectly return a list of two lists in both cases,
but this was already fixed:
https://bugzilla.gnome.org/show_bug.cgi?id=695115 . Also fix an
incorrect information in the secrets-search-items docstring.
(Bug#20449)
2015-04-29 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'
(byte-compile--message): Use `inhibit-message' instead of hiding
the previous message with (message nil).
2015-04-29 Oleh Krehel <ohwoeowho@gmail.com>
Remove the deprecated INTERNAL_FIELD macro by expanding it
* src/lisp.h (INTERNAL_FIELD): Remove.
(DEFVAR_KBOARD): Modify accordingly.
* alloc.c, buffer.c, buffer.h, category.c, keyboard.c, keyboard.h:
* syntax.c: Adjust users.
* src/buffer.c (compact_buffer): Use BVAR.
2015-04-29 Glenn Morris <rgm@gnu.org>
Replace an obsolete function alias
* lisp/isearch.el (isearch-yank-x-selection):
* lisp/mouse-copy.el (mouse-drag-secondary-pasting)
(mouse-drag-secondary-moving):
* lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
Replace obsolete alias x-get-selection with gui-get-selection.
2015-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/mail/rmailsum.el: Use lexical-binding.
2015-04-29 Glenn Morris <rgm@gnu.org>
* test/automated/package-test.el (package-test-update-archives-async):
Skip test on hydra.nixos.org.
2015-04-28 Glenn Morris <rgm@gnu.org>
* lisp/foldout.el: Update for 2015-01-30 outline.el changes.
(foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
(foldout-mouse-hide-or-exit): Use new names for outline functions.
* lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
Update for 2014-06-26 hideif.el change.
* lisp/mail/rmailsum.el: Fix search for encoded subjects. (Bug#19088)
(rmail--decode-and-apply): New function.
(rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
* lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
2015-04-28 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Fix priority-hiding corner case
(package-menu--refresh): Delegate obsolete-hiding to
`package--remove-hidden'.
(package--remove-hidden): Disregard high-priority package if it is
older than the installed one.
2015-04-28 Paul Eggert <eggert@cs.ucla.edu>
Update source file encoding list
Update admin/notes/unicode, along with coding system cookies in
other files, so that the two match each other better.
* admin/notes/unicode: lisp/language/ethio-util.el and
lisp/language/ethiopic.el also use utf-8-emacs.
* admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
* doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
* etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
* etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
* etc/refcards/sk-survival.tex:
Add "coding: utf-8" so that this file is not mishandled in a
Latin-1 or Big-5 locale.
* lisp/international/robin.el, lisp/org/ox-ascii.el:
Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
* lisp/language/ethio-util.el: Fix trailer.
2015-04-28 Eli Zaretskii <eliz@gnu.org>
Fix synchronous invocation of Ispell
* lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
value to ispell-process-directory before calling ispell-init-process.
Don't call set-process-coding-system if ispell-async-processp is nil.
(Bug#20448)
2015-04-28 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Skip space and comments in init file
(package--ensure-init-file): Insert snippet at first
non-whitespace non-comments line. Respects local-vars at the top
of the file.
2015-04-28 Glenn Morris <rgm@gnu.org>
* lisp/mail/rmail.el (rmail-copy-headers):
Handle rmail-nonignored-headers being nil. (Bug#18878)
* lisp/subr.el (delay-mode-hooks): Fix doc typo.
* lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
Don't get confused by a bzrlib version mismatch warning.
2015-04-27 Thomas Fitzsimmons <fitzsim@fitzsim.org>
Change default location of EUDC options file
* NEWS: Document change to EUDC options file's default location.
* lisp/net/eudc-vars.el (eudc-options-file): Use
`locate-user-emacs-file' to change default options file location.
2015-04-27 Glenn Morris <rgm@gnu.org>
* test/automated/package-test.el (package-test-update-archives-async):
Try to handle the test server script dying.
2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/saveplace.el (save-place-mode): New minor mode.
(save-place): Redefine as an obsolete alias.
* lisp/midnight.el: Make it a minor mode. Allow predicates.
* lisp/midnight.el: Use lexical-binding.
(midnight-mode): Make it a proper minor mode.
(midnight-buffer-display-time): Make arg non-optional.
(midnight-find): Remove.
(clean-buffer-list-kill-never-regexps)
(clean-buffer-list-kill-regexps): Tweak type for new function choice.
(clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
contain functions.
(clean-buffer-list): Use cl-find.
Allow clean-buffer-list-kill-never-regexps to contain functions.
2015-04-27 Nicolas Petton <nicolas@petton.fr>
Bump version of seq.el to 1.5
* lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
from seq-doseq. Bump version number of seq.el.
2015-04-27 Glenn Morris <rgm@gnu.org>
* lisp/mail/rmail.el (rmail-reply):
Decode subject before matching "Re:" prefix. (Bug#20396)
2015-04-27 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Small improvements
(package--with-work-buffer-async): More informative error.
(package-install-user-selected-packages): Rename to
`package-install-selected-packages'.
2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
* lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
(eieio--class-make): Remove leftover `tag'.
2015-04-27 Glenn Morris <rgm@gnu.org>
* lisp/gnus/message.el (gnus-extract-address-components):
Remove bogus declaration that was masking previous problem.
2015-04-27 Nicolas Graner <nicolas.graner@u-psud.fr> (tiny change)
* lisp/gnus/message.el (message-insert-formatted-citation-line):
Fix typo. (Bug#20318)
2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
* lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
* lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
the buffer in yet another frame.
(reftex-toc-visit-location): Make sure toc-window has focus at the end
when `final' is nil.
(reftex--rebuilding-toc): Defvar to avoid `boundp' and
silence warnings. Use `--' to clarify that it's internal.
(reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
(reftex-toc-promote): Clarify unused argument.
(reftex--pro-or-de, reftex--start-line, reftex--mark-line):
Add `reftex--' prefix. Fix all users.
(reftex-toc-promote-prepare): Use _ for dummy variable.
(reftex-toc-restore-region): Rename `m
2015-04-27 Eli Zaretskii <eliz@gnu.org>
Fix a typo in bibtex.el
* lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
last change. (Bug#20429)
Fix redisplay of frame after loading new fonts
* src/xdisp.c (redisplay_internal): When retrying redisplay of a
frame because new fonts were loaded, disable all redisplay
optimizations on that frame by calling SET_FRAME_GARBAGED.
(Bug#20410)
2015-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/info.el (Info-menu): Properly provide the `default'
(Bug#20391)
* elisp-mode.el: Catch errors from `documentation'
(Bug#20418)
* lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
Catch errors from documentation.
(emacs-lisp-mode-abbrev-table): Remove redundant defvar.
2015-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
lisp/emacs-lisp/package.el: Move variables to silence byte-compiler
Remove redundant ":group 'package".
2015-04-26 Eli Zaretskii <eliz@gnu.org>
Fix a typo in rmail.el
* lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
last commit. (Bug#20429)
2015-04-26 Dmitry Gutov <dgutov@yandex.ru>
Introduce xref-prompt-for-identifier
* lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
(xref--read-identifier): Use it
(http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
2015-04-26 João Távora <joaotavora@gmail.com>
`tex-insert-quote' after single `'' opens quotes instead of closing
Without this, it's very hard to precede double quotes with the
apostrophe character, i.e. insert the sequence '``
(quote-backquote-backquote), commonly useful in portuguese, for
instance.
* tex-mode.el (tex-insert-quote): Add ?' to the list of preceding
chars making `tex-insert-quote' be in the "opening" context.
2015-04-25 Dmitry Gutov <dgutov@yandex.ru>
Pass `id' to `completing-read' as def instead of initial input
* xref.el (xref--read-identifier): Pass `id' to `completing-read'
as the default value instead of initial input
(http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
2015-04-25 Paul Eggert <eggert@cs.ucla.edu>
Don't freeze with unreadable processes
Don't freeze if an exiting process can't be read from. (Bug#19860).
This fixes a bug I introduced in
2014-07-08T07:24:07Z@eggert@cs.ucla.edu
"* process.c: Add sanity checks for file descriptors."
Dmitry Gutov did most of the legwork in finding the problem.
* src/process.c (wait_reading_process_output):
Treat non-running processes that can't be read from
the same as other non-running processes.
2015-04-25 Alan Mackenzie <acm@muc.de>
Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
* lisp/subr.el (remove-yank-excluded-properties): put
`with-silent-modifications' around only the last three lines of code.
2015-04-25 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
(package--all-keywords): Deleted variable.
* etc/NEWS: Document package-hiding functionality
2015-04-25 Eli Zaretskii <eliz@gnu.org>
lisp/window.el (recenter-last-op): Doc fix. (Bug#20419)
Clarify the doc string of 'replace-regexp-in-string'
* lisp/subr.el (replace-regexp-in-string): Doc fix. (Bug#20395)
Improve doc string of 'insert-buffer-substring'
* src/editfns.c (Finsert_buffer_substring): Doc fix. (Bug#20421)
MS-Windows followup for the recent gnulib update
* nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
acl-internal.c.
2015-04-24 Paul Eggert <eggert@cs.ucla.edu>
Spelling fixes
Merge from gnulib
This incorporates:
2015-04-24 file-has-acl: new module, split from acl
2015-04-24 manywarnings: add GCC 5.1 warnings
2015-04-21 lstat: fix cross-compilation 'ln -s' problem
2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
2015-04-15 acl: On Linux, check for acls without libacl
2015-04-14 tempname: avoid unused parameter warnings (trivial)
* lib/acl-internal.c: New file, from gnulib.
* lib/file-has-acl.c: Remove; no longer imported from gnulib.
* lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
* m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
Update from gnulib.
Port --enable-gcc-warnings to GCC 5.1 x86-64
* lib-src/ebrowse.c (dump_sym):
* lib-src/hexl.c (main):
* src/ccl.c (ccl_driver):
* src/character.c (string_escape_byte8):
* src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
* src/gnutls.c (Fgnutls_boot):
* src/gtkutil.c (xg_check_special_colors):
* src/image.c (x_build_heuristic_mask):
* src/print.c (safe_debug_print, print_object):
* src/term.c (produce_glyphless_glyph):
* src/xdisp.c (get_next_display_element)
(produce_glyphless_glyph):
* src/xterm.c (x_draw_glyphless_glyph_string_foreground):
Don't use a signed format to print an unsigned integer, or vice
versa. GCC 5.1's new -Wformat-signedness option warns about this.
* src/image.c (png_load_body, jpeg_load_body):
Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
2015-04-24 Tassilo Horn <tsdh@gnu.org>
Add new faces to tsdh-light-theme
* etc/themes/tsdh-light-theme.el (tsdh-light): New face
definitions for Info-quoted, ace-jump-face-foreground,
hl-paren-face, show-paren-match, and show-paren-mismatch.
2015-04-24 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
2015-04-24 Glenn Morris <rgm@gnu.org>
* build-aux/gitlog-to-emacslog:
Use raw log format rather than wrapped one.
2015-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code
(seq-doseq): Fix out-of-scope binding.
Don't call `seq-length at every iteration.
Reduce `if's from 3 to 2 per iteration.
(emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
2015-04-24 Glenn Morris <rgm@gnu.org>
* lisp/textmodes/text-mode.el (text-mode-hook):
Move text-mode-hook-identify to default.
* lisp/mouse.el (minor-mode-menu-from-indicator):
Handle non-function members of minor-mode-map-alist. (Bug#20201)
* lisp/help-fns.el (describe-function): More type checking.
(describe-function-1): Handle changed symbol-function. (Bug#20201)
* build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
(Bug#20325)
2015-04-24 Andreas Schwab <schwab@linux-m68k.org>
shr: strip leading whitespace when expanding URLs
* lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
2015-04-24 Eli Zaretskii <eliz@gnu.org>
Clarify "co-authored" some more
* CONTRIBUTE: Clarify "co-authored-by". (Bug#20400)
Clarify doc strings of functions that search for properties
* src/textprop.c (Fnext_char_property_change)
(Fprevious_char_property_change)
(Fnext_single_char_property_change)
(Fprevious_single_char_property_change, Fnext_property_change)
(Fnext_single_property_change, Fprevious_property_change)
(Fprevious_single_property_change): Clarify doc strings wrt return
value and the optional LIMIT argument. (Bug#20411)
2015-04-24 Glenn Morris <rgm@gnu.org>
* test/automated/message-mode-tests.el (message-mode-propertize):
Handle non-writable HOME; eg on hydra.nixos.org.
2015-04-23 Eli Zaretskii <eliz@gnu.org>
Avoid starting threads by w32-shell-execute
* src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
local file names, before invoking ShellExecute. (Bug#20220)
2015-04-23 Martin Rudalics <rudalics@gmx.at>
Fix following doc-links in `widget-documentation-link-action'
* lisp/wid-edit.el (widget-documentation-link-action): Make
following doc-links less simplistic (Bug#20398).
2015-04-22 Thomas Fitzsimmons <fitzsim@fitzsim.org>
Improve EUDC manual
* eudc.texi (Troubleshooting): New LDAP troubleshooting subsection.
2015-04-22 Paul Eggert <eggert@cs.ucla.edu>
Omit needless "\ " after multibyte then newline
* src/print.c: Include <c-ctype.h>, for c_isxdigit.
(print_object): When print-escape-multibyte is non-nil and a
multibyte character is followed by a newline or formfeed, followed
by a hex digit, don't output a needless "\ " before the hex digit.
* test/automated/print-tests.el (print-hex-backslash): New test.
2015-04-22 Oleh Krehel <ohwoeowho@gmail.com>
Add a new `inhibit-message' variable
* src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
(message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
`inhibit_message' is non-zero.
* etc/NEWS: Add an entry.
* doc/lispref/display.texi: Add an entry for `inhibit-message',
mention it in `message'.
2015-04-22 Martin Rudalics <rudalics@gmx.at>
Fix last fix in `display-buffer-record-window'.
* lisp/window.el (display-buffer-record-window): Fix last fix.
2015-04-22 Eli Zaretskii <eliz@gnu.org>
Minor edits in CONTRIBUTE
* CONTRIBUTE: Rearrange instructions about log messages.
Use "Git" capitalized all over.
Use 2 spaces between sentences.
2015-04-22 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/files.el (basic-save-buffer): Fix argument
* lisp/cus-edit.el (custom-file): Consider init-file-had-error
In case `(and (null custom-file) init-file-had-error)' do the same
thing we'd do if `(null user-init-file)', which is to either error out
or return nil. This is in line with `custom-save-all' which would
throw an error in that situation. (bug#20355)
* lisp/emacs-lisp/package.el: Hide lower-priority packages in menu
(package-menu-hide-low-priority): New variable, see its doc.
(package-archive-priorities): Update doc.
(package-desc-priority): New function.
(package-desc-priority-version): Use it.
(package--remove-hidden): New function.
(package-menu--refresh): Use it.
* lisp/emacs-lisp/package.el: Implement displaying obsolete packages
(package-menu--hide-obsolete): New variable.
(package--remove-hidden): Use it.
(package-menu-hide-obsolete): New interactive function to toggle
the variable.
(package--quick-help-keys): Document it.
(package-menu-async): Add :version tag.
(package-menu-mode-map): Bind package-menu-hide-obsolete.
(package-desc-status): Indicate non-installed obsolete packages as
avail-obso.
(package-menu-mark-install): Allow installation of avail-obso.
(package-menu--status-predicate): Sort avail-obso with available.
2015-04-22 Alan Mackenzie <acm@muc.de>
On C-y, stop some text property entries being written into buffer-undo-list
lisp/subr.el (remove-yank-excluded-properties): enclose the code in
`with-silent-modifications'.
2015-04-22 Martin Rudalics <rudalics@gmx.at>
In display-buffer-record-window record selected window if necessary.
* lisp/window.el (display-buffer-record-window): Store selected window
if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
2015-04-22 Tassilo Horn <tsdh@gnu.org>
Fix reftex-citation bug
* reftex-cite.el (reftex-extract-bib-entries): Fix
`wrong-type-argument stringp nil' error that occurs when AUCTeX
integration is enabled and there are no citations in the document
so far.
2015-04-21 Dmitry Gutov <dgutov@yandex.ru>
Add or reset based on the presence of MERGE_HEAD
* lisp/vc/vc-git.el (vc-git-find-file-hook): Add
`vc-git-resolve-when-done' to `after-save-hook' in either case.
(vc-git-conflicted-files): Add a TODO.
(vc-git-resolve-when-done): Depending on the presence of
MERGE_HEAD, either update the resolved file in the index, or
remove it from there. (Bug#20292)
2015-04-21 Glenn Morris <rgm@gnu.org>
* lisp/custom.el (custom-declare-group): No need to purecopy
custom-current-group-alist members following recent change to set
it to nil before dumping.
* build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
(Bug#20399)
2015-04-21 Daniel Colascione <dancol@dancol.org>
Unbreak no-op buffer save message
* lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer`
(basic-save-buffer): Accept called-interactively as an argument instead of
directly invoking called-interactively-p, which will always yield nil
in that context.
2015-04-21 Alan Mackenzie <acm@muc.de>
CC Mode: Do nothing in before/after-change-functions for text property changes
Fixes bug#20266.
lisp/progmodes/cc-mode.el (c-basic-common-init): Make
yank-handled-properties buffer local, and remove 'category from it.
(c-called-from-text-property-change-p): New function.
(c-before-change): Don't do anything if a call of the new function
returns non-nil.
(c-after-change): Don't do much if a call of the new function returns
non-nil.
(c-extend-after-change-region): Put changes to text property 'fontified
inside c-save-buffer-state.
2015-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
Fix byte-compiler warnings about looking-back.
* lisp/vc/log-view.el (log-view-end-of-defun-1):
* lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
* lisp/textmodes/reftex-ref.el (reftex-goto-label):
* lisp/textmodes/bibtex.el (bibtex-insert-kill):
* lisp/progmodes/sh-script.el (sh--maybe-here-document):
* lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
* lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
* lisp/org/org.el (org-insert-heading, org-sort-entries):
* lisp/org/org-mouse.el (org-mouse-end-headline)
(org-mouse-context-menu):
* lisp/org/org-clock.el (org-clock-cancel):
* lisp/man.el (Man-default-man-entry):
* lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
(rmail-ensure-blank-line):
* lisp/mail/footnote.el (Footnote-delete-footnote):
* lisp/mail/emacsbug.el (report-emacs-bug):
* lisp/info.el (Info-follow-reference, Info-fontify-node):
* lisp/info-look.el (info-lookup-guess-custom-symbol):
* lisp/help-fns.el (help-fns--key-bindings):
* lisp/files.el (hack-local-variables):
* lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
(viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
(viper-complete-filename-or-exit):
* lisp/emulation/viper-cmd.el (viper-backward-indent):
* lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
* lisp/emacs-lisp/elint.el (elint-get-top-forms):
* lisp/cus-edit.el (custom-face-edit-value-create):
* lisp/calendar/todo-mode.el (todo-set-item-priority)
(todo-filter-items-1, todo-convert-legacy-files)
(todo-prefix-overlays): Add explicit second arg to looking-back.
2015-04-20 Glenn Morris <rgm@gnu.org>
Avoid non-nil current-load-list at startup
* src/process.c (init_process_emacs): Move Fprovide statement...
(syms_of_process): ... to here.
* lisp/loadup.el (custom-current-group-alist): Reset before dumping.
* lisp/startup.el (command-line) <site-run-file>: Avoid rogue value in emacs -Q.
2015-04-20 Ludovic Courtès <ludo@gnu.org>
* lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
(Bug#20330)
2015-04-20 Glenn Morris <rgm@gnu.org>
* lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
Tweak exec-path in uninstalled case
* src/callproc.c (init_callproc): If running uninstalled, do not
include eventual installation libexec directory in exec-path.
2015-04-20 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywords
(package-menu-filter): Accept a list of keywords.
(package--all-keywords): New variable to cache known keywords.
(package-all-keywords): Populate it if necessary.
(package-refresh-contents): Reset it.
* lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
(package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
as special keywords which match agains package archive and status
respectively.
* etc/NEWS: Document it.
2015-04-20 Eli Zaretskii <eliz@gnu.org>
Describe and index "empty overlays".
* doc/lispref/display.texi (Overlays): Improve indexing.
(Managing Overlays): Describe "empty" overlays.
(Overlay Properties, Finding Overlays): Add cross-reference to
where empty overlays are described.
2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
Spelling fixes
Quote 'like this' in top-level files
* CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
Prefer to single-quote 'like this' (instead of the older style
`like this').
* configure.ac: Fix some space-before-tab problems that 'git commit'
complained about.
Use bool for boolean in textprop.c, undo.c
* src/textprop.c (soft, hard): Now constants instead of macros.
(validate_plist): Rewrite to avoid need for boolean local.
(interval_has_all_properties, interval_has_some_properties)
(interval_has_some_properties_list, add_properties)
(remove_properties, get_char_property_and_overlay)
(Fnext_single_char_property_change)
(Fprevious_single_char_property_change, add_text_properties_1)
(Fremove_text_properties, Fremove_list_of_text_properties)
(copy_text_properties):
* src/tparam.c (tparam1):
* src/undo.c (record_change, record_property_change)
(syms_of_undo):
Use 'true' and 'false' for booleans.
2015-04-19 Dmitry Gutov <dgutov@yandex.ru>
Call `smerge-start-session' even when dealing with a stash conflict
* lisp/vc/vc-git.el (vc-git-find-file-hook):
Call `smerge-start-session' even when dealing with a stash
conflict (bug#20292).
2015-04-19 Vibhav Pant <vibhavp@gmail.com>
Add option to eshell/clear to clear scrollback.
* lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
(eshell/clear): Add an optional SCROLLBACK argument. If non-nil,
scrollback contents are cleared.
* etc/NEWS: Describe change.
* doc/misc/eshell.texi: Add entry for `clear'.
2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
* src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
where either will do.
2015-04-19 Steve Purcell <steve@sanityinc.com>
Assume package archive-contents are UTF8-encoded
* lisp/emacs-lisp/package.el (package--read-archive-file):
Set `coding-system-for-read' explicitly to 'utf-8 when reading the
downloaded and cached archive-contents files, so that non-ASCII
characters in package descriptions are displayed correctly in the
`list-packages' menu. (Bug#20231)
2015-04-19 Dmitry Gutov <dgutov@yandex.ru>
Abort when looking at stashed changes
* lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
stashed changes (bug#20292).
2015-04-19 Paul Eggert <eggert@cs.ucla.edu>
Refactor low-level printing for simplicity
* src/print.c (PRINTDECLARE): Remove. Move its contents into
PRINTPREPARE; doable now that we assume C99. All callers changed.
(PRINTCHAR): Remove, as it adds more mystery than clarity.
All callers changed.
(strout): Assume that caller computes length. All callers changed.
(print_c_string): New function.
(write_string, write_string_1): Compute length instead of asking
the caller to compute it. All callers changed.
(write_string): Simplify by using write_string_1.
(write_string_1): Simplify by using print_c_string.
(Fterpri): Compute default val more clearly.
(Fprin1_to_string, print_object):
Assume C99 to avoid unnecessary nesting.
(print_object): Prefer print_c_string to multiple printchar, or
to calling strout with -1 length. Coalesce into sprintf when
this is easy.
2015-04-18 Paul Eggert <eggert@cs.ucla.edu>
Prefer "Bug#1234" in commit messages (Bug#20325)
* .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
as this isn't useful for Git.
* CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
2015-04-18 Glenn Morris <rgm@gnu.org>
* lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
(Bug#19506)
2015-04-18 Tom Willemse <tom@ryuslash.org> (tiny change)
* lisp/elec-pair.el (electric-pair-post-self-insert-function): Do not use `chomp' as a function.
(Bug#19505)
2015-04-18 Glenn Morris <rgm@gnu.org>
* lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
* doc/emacs/misc.texi (Sorting): Small edit.
(Bug#19896)
* admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
2015-04-18 Simen Heggestøyl <simenheg@gmail.com>
css-mode.el: Support multi-line comment filling
(Bug#20256)
* lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
comment filling.
(css-adaptive-fill): New function.
(css-mode): Set `adaptive-fill-function'.
(scss-mode): Set `comment-continue'.
2015-04-18 Nicolas Petton <nicolas@petton.fr>
* lisp/emacs-lisp/seq.el (seq-concatenate, seq-into): Better error messages.
2015-04-18 Ivan Radanov Ivanov <ivanradanov@yahoo.co.uk> (tiny change)
Minor improvements in Bulgarian input methods
* lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
Replace U+042C with U+045D, as the former character is not used in
the modern Bulgarian language.
(Bug#20350)
2015-04-17 Thomas Fitzsimmons <fitzsim@fitzsim.org>
Improve EUDC manual
* eudc.texi (LDAP Configuration): Mention simple and SASL
authentication schemes. Add index items. Shorten example server
name.
2015-04-17 Dmitry Gutov <dgutov@yandex.ru>
Don't show both feature and function with the same name
* lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
Don't show both feature and function with the same name.
(elisp--xref-identifier-location): Skip variable, if it's also a functiong
* lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
Avoid returning both the variable and the function for the same
minor mode.
2015-04-17 Wolfgang Jenkner <wjenkner@inode.at>
Fix fontification of keywords clobbered by the prompt.
* lisp/comint.el (comint-output-filter): Remove the uses of
with-silent-modifications I introduced as part of the last change.
This fixes, e.g., erratically missing highlighting when running
./configure --help; ./configure in a shell-mode buffer with
compilation-shell-minor-mode turned on.
2015-04-17 Glenn Morris <rgm@gnu.org>
* admin/authors.el (authors-valid-file-names, authors-renamed-files-alist): Additions.
2015-04-17 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/indent.el (indent-region): Don't deactivate the mark
(Bug#20357)
2015-04-17 Sam Steingold <sds@gnu.org>
lisp/net/rcirc.el (defun-rcirc-command): mark `target' as ignorable
2015-04-16 Leo Liu <sdl.web@gmail.com>
* lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
2015-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/erc/erc-pcomplete.el (erc-pcomplete): Don't use `pcomplete' any more.
2015-04-16 Glenn Morris <rgm@gnu.org>
* admin/authors.el (authors-lax-changelogs): Update for erc changes.
2015-04-16 Eli Zaretskii <eliz@gnu.org>
Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
* configure.ac (LIBJPEG): Leave it empty for MinGW.
2015-04-16 Glenn Morris <rgm@gnu.org>
* lisp/replace.el (query-replace-from-to-separator): Delay initialization
to avoid rogue setting after startup.
2015-04-16 Paul Eggert <eggert@cs.ucla.edu>
Pre-4.6 GCC succeeds with unknown option
* configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
(Bug#20338)
2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
'[:graph:]' now excludes whitespace, not just ' '
* doc/lispref/searching.texi (Char Classes):
* lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
sans whitespace (not sans space).
* src/character.c (graphicp): Exclude all Unicode whitespace chars,
not just space.
* src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
(looking-back): Make the second arg non-optional.
* lisp/subr.el (substitute-key-definition-key, special-form-p)
(macrop): Drop deprecated second arg to indirect-function.
(looking-back): Make the second arg non-optional.
* lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
command is actually sent to the shell.
2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
Port jpeg configuration to Solaris 10 with Sun C
* configure.ac: Check for jpeglib 6b by trying to link it, instead
of relying on cpp magic that has problems in practice. Check for
both jpeglib.h and jerror.h features. Remove special case for
mingw32, which should no longer be needed (and if it were needed,
should now be addressable by hotwiring emacs_cv_jpeglib).
(Bug#20332)
2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
* lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
Move to elisp-mode.el.
(lisp-mode-variables): (Re)move elisp-specific settings.
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
from lisp-mode-variables.
(elisp--font-lock-flush-elisp-buffers): New function, moved from
lisp-mode.el.
* lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
Avoid pathological slowdown at top-level in large file.
2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
Standardize names of ChangeLog history files
Suggested by Glenn Morris in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
* Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
* doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
* lisp/erc/ChangeLog.1: New file, containing the old contents of ...
* lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
* lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
* lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
Remove.
Split top-level entries into pre- and post-April 7
This more clearly distingiushes pre-April-7 ChangeLog entries (which
are for top-level files only) from post-April-7 entries (which are
about files at all levels. Problem reported by Glenn Morris in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
* ChangeLog.1: Move post-April-7 entries from here ...
* ChangeLog.2: ... to this new file.
* Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
Fix recent cus-start changes that added customize-rogues
* lisp/cus-start.el (custom-delayed-init-variables): Initialize the
vars early.
* lisp/loadup.el ("cus-start"): Move to the end to reduce customize-rogue.
2015-04-15 Nicolas Petton <nicolas@petton.fr>
Define cl-concatenate as an alias to seq-concatenate
* lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
code by making cl-concatenate an alias to seq-concatenate.
2015-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
* src/lread.c (intern_1): Make sure we'd find the symbol we add
(Bug#20334)
* src/xfaces.c (resolve_face_name): Don't use `intern' with Lisp_Strings.
2015-04-15 Glenn Morris <rgm@gnu.org>
* doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
2015-04-15 Lars Magne Ingebrigtsen <larsi@gnus.org>
Clean up gnus-uu saving code slightly
* gnus-uu.el (gnus-uu-save-article): Make the
save-restriction/widen calls make more sense.
2015-04-15 Paul Eggert <eggert@cs.ucla.edu>
Make [:graph:] act like [:print:] sans space
In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
[:graph:] so that it matches everything that [:print:] does,
except for space.
* doc/lispref/searching.texi (Char Classes):
* etc/NEWS:
* lisp/emacs-lisp/rx.el (rx):
Document [:graph:] to be [:print:] sans ' '.
* src/character.c, src/character.h (graphicp): New function.
* src/regex.c (ISGRAPH) [emacs]: Use it.
(BIT_GRAPH): New macro.
(BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
(re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
Return BIT_GRAPH for RECC_GRAPH.
(re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
and ISPRINT if BIT_PRINT.
2015-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
Don't use call-next-method in a cl-defmethod.
* lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
(eieio--class-p): Remove, provided by cl-defstruct.
2015-04-14 Nicolas Petton <nicolas@petton.fr>
Add seq-intersection and seq-difference to the seq library
* lisp/emacs-lisp/seq.el (seq-intersection, seq-difference): New
functions.
* test/automated/seq-tests.el: Add tests for seq-intersection and
seq-difference.
* doc/lispref/sequences.texi: Add documentation for seq-intersection
and seq-difference.
2015-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
* eieio-core.el (class-abstract-p): Don't inline, to avoid leaking internals
2015-04-14 Sam Steingold <sds@gnu.org>
package--ensure-init-file: widen requires save-restriction
2015-04-14 Eli Zaretskii <eliz@gnu.org>
Improve the commit-msg Git hook for unibyte environments
* build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
in unibyte environments. (Suggested by Paul Eggert
<eggert@cs.ucla.edu>.) Use a more accurate approximation to
[:print:], based on UTF-8 sequences of the unprintable characters.
Describe problems with cursor caused by Windows Magnifier
* etc/PROBLEMS: Describe the problem with cursor shape on
MS-Windows due to Windows Magnifier.
(Bug#20271)
Make [:print:] support non-ASCII characters correctly
* src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
(BIT_PRINT): New bit mask.
(re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
* src/character.c (printablep): New function.
* src/character.h (printablep): Add prototype.
* lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
of 'print', 'alnum', and 'alphabetic'.
* doc/lispref/searching.texi (Char Classes): Document the new
behavior of [:print:].
* etc/NEWS: Mention the new behavior of [:print:].
Assign correct general-category and names to surrogates
* admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
surrogates. This avoids assigning them the default
general-category of 'Cn', i.e. unassigned codepoints.
(unidata-get-name): Give surrogates synthetic names.
2015-04-14 Paul Eggert <eggert@cs.ucla.edu>
Assume C89 offsetof in xterm.c, xlwmenu.c
* lwlib/xlwmenu.c (offset):
* src/xterm.c (cvt_string_to_pixel_args):
Use offsetof, not XtOffset.
2015-04-14 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
Assume C89 offsetof in widget.c
* src/widget.c (XtOffset): Remove; no longer needed.
(offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
Fix think-o in previous patch
* src/window.c (count_windows, get_leaf_windows):
Don't optimize count_windows incorrectly.
2015-04-13 Paul Eggert <eggert@cs.ucla.edu>
Avoid some int overflows in window.c
* src/print.c (print_object):
* src/window.c (sequence_number):
* src/window.h (struct window.sequence_number):
Don't assume window sequence number fits in int.
* src/window.c (window_select_count):
* src/window.h (struct window.use_time, window_select_count):
Don't assume window use time fits in int.
* src/window.c (Fsplit_window_internal):
Don't assume user-supplied integer, or sum, fits in int.
(Fset_window_configuration, count_windows, get_leaf_windows)
(save_window_save, Fcurrent_window_configuration):
Use ptrdiff_t for object counts.
(Fset_window_configuration): Omit unused local 'n'.
(count_windows): Simplify by writing in terms of get_leaf_windows.
(get_leaf_windows): Don't store through FLAT if it's null.
(extract_dimension): New static function.
(set_window_margins, set_window_fringes, set_window_scroll_bars):
Use it to avoid undefined behavior when converting user-supplied
integer to 'int'.
2015-04-13 Glenn Morris <rgm@gnu.org>
Minor doc copyedits
* doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
* doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
2015-04-13 Katsumi Yamaoka <yamaoka@jpl.org>
[Gnus] Catch the invalid-operation that idna.el will issue
* lisp/gnus/gnus-art.el (gnus-use-idna):
* lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
* lisp/gnus/message.el (message-use-idna):
Catch the invalid-operation that idna.el will issue.
2015-04-13 Paul Eggert <eggert@cs.ucla.edu>
* doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
2015-04-13 Sam Steingold <sds@gnu.org>
package--ensure-init-file: widen before looking for "(package-initialize)"
2015-04-13 Dmitry Gutov <dgutov@yandex.ru>
Change diff-switches default to `-u'
(Bug#20290)
* doc/emacs/files.texi (Comparing Files): Document the new default
value of `diff-switches'.
* doc/emacs/trouble.texi (Sending Patches): Document the preference
for unified diff format. Escape the plus in the suggested `-F' regexp
value.
* lisp/vc/diff.el (diff-switches): Change the default to `-u'.
2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
(gnus-group--setup-tool-bar-update): Fix last change
* lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
cursor-sensor-functions should be a list of functions.
2015-04-13 Katsumi Yamaoka <yamaoka@jpl.org>
Use gmm-called-interactively-p in Gnus
* lisp/gnus/gnus-topic.el (gnus-topic-mode): Use gmm-called-interactively-p.
2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp/loadup.el ("cus-start"): Load it after loaddefs.el
(Bug#20321)
* lisp/cus-start.el (read-buffer-function): Don't advertize
iswitchb-read-buffer any more.
(iswitchb): Don't tweak this obsolete group any more.
2015-04-13 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Fix package--ensure-init-file
* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings
Adding a string after a constructor's argument list will use
that string as the constructor function docstring. If this string
is absent but the struct itself was given a docstring, use that as
the constructor's docstring.
Fixes (bug#17284).
2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
Deprecate `intangible' and `point-entered' properties
* lisp/emacs-lisp/cursor-sensor.el: New file.
* lisp/simple.el (pre-redisplay-functions): New hook.
(redisplay--pre-redisplay-functions): New function.
(pre-redisplay-function): Use it.
(minibuffer-avoid-prompt): Mark obsolete.
(redisplay--update-region-highlight): Adapt it to work as a function on
pre-redisplay-functions.
* lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
(minibuffer-prompt-properties): Use it. Use cursor-intangible rather
than point-entered to make the prompt intangible.
* lisp/forms.el: Move `provide' calls to the end.
(forms-mode): Don't use `run-hooks' on a local var.
(forms--make-format, forms--make-format-elt-using-text-properties):
Use cursor-intangible rather than `intangible'.
(forms-mode): Enable cursor-intangible-mode.
* lisp/isearch.el (isearch-mode): Use defvar-local.
(cursor-sensor-inhibit): Declare.
(isearch-mode): Set cursor-sensor-inhibit.
(isearch-done): Set it back.
(isearch-open-overlay-temporary, isearch-open-necessary-overlays)
(isearch-close-unnecessary-overlays): Don't bother with `intangible'
any more.
* lisp/ses.el (ses-localvars): Remove `mode-line-process'.
(ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
Add Edebug spec.
(ses-goto-print, ses-print-cell, ses-adjust-print-width)
(ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
inhibit-point-motion-hooks any more.
(ses--cell-at-pos, ses--curcell): New functions, extracted from
ses-set-curcell.
(ses-set-curcell): Use them.
(ses-print-cell, ses-setup): Use cursor-intangible instead of
`intangible'. Make sure cursor-intangible isn't sticky at BOB.
(ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
Use ses--cell-at-pos.
(ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
extracted from ses-command-hook. Make them work with multiple windows
displaying the same buffer.
(ses-mode): Use them via mode-line-process and pre-redisplay-functions.
Enable cursor-intangible-mode.
(ses-command-hook): Remove cell highlight and mode-line update code.
(ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
Update for new name of text-property holding the cell name.
(ses-rename-cell): Don't mess with mode-line-process.
* lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
cursor-sensor-functions property instead of point-entered.
(erc-insert-timestamp-right, erc-format-timestamp):
Use cursor-intangible rather than `intangible'.
(erc-munge-invisibility-spec): Use add-to-invisibility-spec and
remove-from-invisibility-spec. Enable cursor-intangible-mode and
cursor-sensor-mode if needed.
(erc-echo-timestamp): Adapt to calling convention of
cursor-sensor-functions.
(erc-insert-timestamp-right): Remove unused vars `current-window' and
`indent'.
* lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
(gnus-update-group-mark-positions): Remove unused `topic' var.
(gnus-group-insert-group-line): Remove unused var `header'.
(gnus-group--setup-tool-bar-update): New function.
(gnus-group-insert-group-line): Use it.
(gnus-group-update-eval-form): Declare local
dynamically-bound variables.
(gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
* lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
(gnus-group-prepare-topics, gnus-topic-update-topic)
(gnus-topic-change-level, gnus-topic-catchup-articles)
(gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
Use inhibit-read-only.
(gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
(gnus-topic-mode): Use define-minor-mode and derived-mode-p.
* lisp/textmodes/reftex-index.el (reftex-display-index):
Use cursor-intangible-mode if available.
(reftex-index-post-command-hook): Check cursor-intangible.
* lisp/textmodes/reftex-toc.el (reftex-toc):
Use cursor-intangible-mode if available.
(reftex-toc-recenter, reftex-toc-post-command-hook):
Check cursor-intangible.
* lisp/textmodes/sgml-mode.el: Use lexical-binding.
(sgml-tag): Use cursor-sensor-functions instead of point-entered.
(sgml-tags-invisible): Use with-silent-modifications and
inhibit-read-only. Enable cursor-sensor-mode.
(sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
calling convention of cursor-sensor-functions.
* lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
(table-point-entered-cell-hook, table-point-left-cell-hook):
Don't autoload.
(table-cell-entered-state): Remove var.
(table--put-cell-point-entered/left-property)
(table--remove-cell-properties):
Use cursor-sensor-functions rather than point-entered/left.
(table--point-entered/left-cell-function): Merge
table--point-entered-cell-function and table--point-left-cell-function
and adjust to calling convention of cursor-sensor-functions.
Update ldef-boots.el
* lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
* doc/misc/eieio.texi: Don't advertize now obsolete constructs
Collapse successive char deletions in the undo log
* src/cmds.c (remove_excessive_undo_boundaries): New function,
extracted from Fself_insert_command.
(Fdelete_char, Fself_insert_command): Use it.
* src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
* src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
xterm and OSC 52: Add NEWS entry, and tweak the code
* lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition to
top-level.
(terminal-init-xterm-activate-set-selection): Set a terminal property.
(xterm--set-selection): Use it instead of checking the value of
`terminal-initted'. Don't use string-bytes.
2015-04-13 Philipp Stephani <p.stephani2@gmail.com>
xterm.el: Implement OSC-52 functionality for setting the X selection
* lisp/term/xterm.el (xterm-max-cut-length): New var.
(xterm--set-selection, terminal-init-xterm-activate-set-selection): New funs.
(terminal-init-xterm, xterm--version-handler): Use them.
2015-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
Remove left over code from when we used an obsolete/loaddefs.el file
* lisp/subr.el (do-after-load-evaluation): Remove left over code from when
we used an obsolete/loaddefs.el file.
* cedet/semantic/fw.el: Use declare.
* cedet/semantic/fw.el (semantic-exit-on-input)
(semanticdb-without-unloaded-file-searches): Use declare.
(semantic-fw-add-edebug-spec): Remove.
(completion-lisp-mode-hook): Use completion-separator-chars
* lisp/completion.el (completion-lisp-mode-hook):
Use completion-separator-chars rather than local key binding.
* src/*.c: Set deactivate_mark buffer-locally
(Bug#20260)
* src/insdel.c (prepare_to_modify_buffer_1):
* src/fileio.c (Finsert_file_contents): Set deactivate_mark
buffer-locally.
2015-04-12 Fabián Ezequiel Gallina <fgallina@gnu.org>
python.el: Keep symmetry on sexp navigation with parens
(Bug#19954)
* lisp/progmodes/python.el
(python-nav--forward-sexp): Add argument skip-parens-p.
(python-nav-forward-sexp, python-nav-backward-sexp)
(python-nav-forward-sexp-safe)
(python-nav-backward-sexp-safe): Use it.
* test/automated/python-tests.el
(python-nav-forward-sexp-1): Fix test.
2015-04-12 João Távora <joaotavora@gmail.com>
Don't use `setq-local' in Gnus code
This might break upstream builds with older Emacsen
* lisp/gnus/message.el (message-mode): Use `set' and
`make-local-variable' instead of `setq-local'.
2015-04-12 Paul Eggert <eggert@cs.ucla.edu>
Update Makefile.in's .PHONY dependencies
* Makefile.in (change-history-commit, master-branch-is-current)
(no-ChangeLog): Now phony.
Remove configure's --with-mmdf option
* configure.ac (MAIL_USE_MMDF): Remove.
* etc/NEWS: Document this.
* lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
(Bug#20308)
* doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
That way, 'make install' won't think it's a man page.
Reported by Ashish SHUKLA in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
Improve 'make change-history' prereq tests
* Makefile.in (gen_origin): Fix to match what's in the master branch.
(no-ChangeLog, master-branch-is-current): New rules.
(change-history): Depend on them, to avoid similar future problems.
Escape the local-variables string to pacify Emacs when editing
Makefile.in.
2015-04-12 Artur Malabarba <bruce.connor.am@gmail.com>
* test/automated/package-test.el (with-package-test): Kill Packages buffer
* lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt
(package-menu--prompt-transaction-p): Prompt for "Delete" first,
"Upgrade" last, and use capitalized instead of all-caps.
* lisp/emacs-lisp/package.el: Completely silence async operations
(package--make-autoloads-and-stuff): Silence autoloads.
(package--save-selected-packages): New function, silences
`customize-save-variable'.
(package--user-selected-p, package-install-from-buffer)
(package-delete, package-install): Use it.
(package-install-from-archive)
(package-menu--perform-transaction): Silence.
(package-menu-execute): Feedback when operation starts.
Use delay-mode-hooks when visiting the init-file
* lisp/emacs-lisp/package.el (package--ensure-init-file):
delay-mode-hooks
* lisp/cus-edit.el (custom-save-all): delay-mode-hooks
* lisp/files.el: Only message when saving if save-silently is nil
(save-silently): New variable.
(files--message): New function.
(find-file-noselect, save-buffer, basic-save-buffer)
(basic-save-buffer-2, save-some-buffers, not-modified)
(append-to-file): Use them.
2015-04-12 Johan Bockgård <bojohan@gnu.org>
Support debug declarations in pcase macros
* lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
(pcase-UPAT): Use it. Remove "`".
(pcase--edebug-match-macro): New function.
(pcase-defmacro): Support debug declarations.
* lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
* lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
* lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>: Add debug declaration.
pcase.el: Edebug support for `app' and vector patterns
* lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
(pcase-UPAT): Use it. Support `app' patterns.
(pcase-QPAT): Support vector patterns.
edebug.el: Disambiguate vector specifications
* lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
`(vector ...)' as a vector specification, not as a sublist.
(gnus-summary-refer-thread): Don't clobber unread articles
This fixes a bug where `A T' causes "random" articles to become marked
as read.
* lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
gnus-newsgroup-unreads remains sorted.
mouse-sel.el: Fix mouse-sel-get-selection-function
* lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
Use gui--last-selected-text-primary instead of no longer existing
gui-last-selected-text.
* lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
* lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
2015-04-12 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate
* lisp/emacs-lisp/package.el (list-packages): Call refresh in right buffer
* lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations
(byte-compile--interactive): New var.
(byte-compile--message): New function.
(byte-compile-log-1, byte-force-recompile)
(byte-recompile-directory, byte-recompile-file)
(byte-compile-file, compile-defun)
(byte-compile-file-form-defmumble, byte-compile)
(byte-compile-file-form-defalias, display-call-tree): Use it.
* lisp/files.el: Don't message when nothing happened
(save-some-buffers, basic-save-buffer): Before messaging to say
"nothing was saved" check if (called-interactively-p 'any).
2015-04-12 João Távora <joaotavora@gmail.com>
Summary: Improve sexp-based movement in message-mode
Works by giving citations and smileys a different syntax. This helps
modes like `show-paren-mode', `electric-pair-mode', and C-M-*
sexp-based movement.
* lisp/gnus/message.el (message--syntax-propertize): New function.
(message-mode): Set syntax-related vars.
(message-smileys): New variable.
* test/automated/message-mode-tests.el: New file
2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
Use bool for boolean in window.c
* src/window.c: Omit unnecessary static function decls.
(adjust_window_count, select_window, Fselect_window)
(window_body_width, Fwindow_body_height, Fwindow_body_width)
(set_window_hscroll, check_window_containing, Fwindow_at)
(Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
(unshow_buffer, replace_window, recombine_windows)
(add_window_to_list, candidate_window_p, next_window)
(Fnext_window, Fprevious_window, window_loop, check_all_windows)
(Fget_buffer_window, Fdelete_other_windows_internal)
(replace_buffer_in_windows_safely, set_window_buffer)
(Fset_window_buffer, Fforce_window_update)
(temp_output_buffer_show, make_parent_window)
(window_resize_check, window_resize_apply, Fwindow_resize_apply)
(resize_frame_windows, Fsplit_window_internal)
(Fdelete_window_internal, grow_mini_window, shrink_mini_window)
(Fresize_mini_window_internal, mark_window_cursors_off)
(window_scroll, window_scroll_pixel_based)
(window_scroll_line_based, scroll_command, Fscroll_other_window)
(Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
(Fmove_to_window_line, Fset_window_configuration)
(delete_all_child_windows, apply_window_adjustment)
(set_window_fringes, set_window_scroll_bars)
(Fset_window_vscroll, foreach_window, foreach_window_1)
(compare_window_configurations, Fcompare_window_configurations):
Prefer 'bool', 'true', and 'false' for booleans.
* src/window.h (WINDOW_MODE_LINE_LINES)
(WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
2015-04-11 Artur Malabarba <bruce.connor.am@gmail.com>
Speed up byte-compilation and autoload generation by avoiding mode-hooks
This prevents emacs-lisp-mode-hook from being run everytime an
autoload file is generated, which can account for a fraction of
package installation time depending on the hooks the user has
configured.
* lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
* lisp/emacs-lisp/autoload.el (autoload-find-file)
(autoload-find-generated-file): Use delay-mode-hooks.
* lisp/emacs-lisp/package.el: Improve `package-menu-refresh'
(package-menu-refresh): Respect async and do new package checking.
(list-packages): Use `package-menu-refresh' instead of repeating code.
* lisp/emacs-lisp/package.el: Improve package-menu-quick-help
(package--quick-help-keys): New variable.
(package--prettify-quick-help-key): New function.
(package-menu-quick-help): Use it.
* lisp/emacs-lisp/package.el: Fix initially wrong compat table
(package--build-compatibility-table): require finder
* test/automated/package-test.el: Fix new test
* lisp/emacs-lisp/package.el: Silence async operations
(package--silence): New variable.
(package--message): New function.
(package-import-keyring, package-refresh-contents)
(package-compute-transaction, package-install, package-delete)
(package-menu--perform-transaction, package-menu-execute): Use it.
* test/automated/package-test.el: Test async functionality
(package-test-update-archives-async): New test
2015-04-11 Daiki Ueno <ueno@gnu.org>
Utilize `make-process' in epg.el
* lisp/epg.el (epg-error-output): Abolish.
(epg-context): New slot `error-buffer'.
(epg--start): Use `make-process' and `make-pipe-process'.
(epg--process-filter): Remove code separating stderr from stdout.
(epg-wait-for-completion): Simplify `error-output' handling.
(epg-reset): Dispose error buffer.
2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
* .gitignore: Ignore doc temps and outputs.
Port commit-msg to MSYS Bash+Gawk
See Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
* build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
(cent_sign, print_at_sign, at_sign): Revert previous change.
(print_at_sign): Prepend "BEGIN".
(at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
Port commit-msg to broken MS-Windows shell
* build-aux/git-hooks/commit-msg (cent_sign):
Just use UTF-8 here rather than ASCII + printf, as the latter fails
on a broken MS-Windows shell. Reported by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
2015-04-11 Chris Zheng <chriszheng99@gmail.com> (tiny change)
Support GnuTLS v3.4 and later on MS-Windows
* src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
* lisp/term/w32-win.el (dynamic-library-alist): Determine which
GnuTLS DLL to load according to value of libgnutls-version.
(Bug#20294)
2015-04-11 Paul Eggert <eggert@cs.ucla.edu>
Minor quoting etc. fixes to misc manuals
Fix some minor quoting and spacing issues. Distinguish more
clearly among grave accent and apostrophe (which are ASCII) and
single quote (which is not). Prefer the standard terms
"apostrophe" and "grave accent" to alternative names that can be
confusing. Use apostrophes to single-quote ASCII text.
* doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
rather than approximating it in ASCII with grave accent.
2015-04-11 Daiki Ueno <ueno@gnu.org>
Respect more keyword args in `make-process'
* process.c (Fmake_process): Respect `:sentinel' and `:filter'
keywords as documented.
2015-04-10 Dmitry Gutov <dgutov@yandex.ru>
Extract ChangeLog entries when committing a directory
* lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
* lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
Add a FIXME comment.
(log-edit-changelog-entries): Extract from
`log-edit-changelog-entries', handle FILE being a directory
(http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
2015-04-10 Paul Eggert <eggert@cs.ucla.edu>
Fix problems found by --enable-gcc-warnings
* src/process.c (create_process, Fmake_pipe_process)
(Fmake_network_process): Omit unused locals.
Fix commit-msg to handle scissors lines
* build-aux/git-hooks/commit-msg:
Ignore every line after a scissors line, such as a line generated
by 'git commit -v'. Problem reported by Johan Bockgård in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
port commit-msg to Gawk 3.0.4 (1999)
* build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
(print_at_sign, at_sign): New vars. Use them to avoid problems
Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS. See:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
Have commit-msg report commit failure
* build-aux/git-hooks/commit-msg: If the commit is aborted,
say so. Simplify by doing this at the end. Problem reported
by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
2015-04-10 Thomas Fitzsimmons <fitzsim@fitzsim.org>
Clean up LDAP Configuration section of EUDC manual
* doc/misc/eudc.texi: Combine indices.
(LDAP Configuration): Use command markup. Add index entries.
Change formatting. Wrap long lines. Add noindent markup.
2015-04-10 Daiki Ueno <ueno@gnu.org>
Add facility to collect stderr of async subprocess
* src/w32.h (register_aux_fd): New function declaration.
* src/w32.c (register_aux_fd): New function.
* src/process.h (struct Lisp_Process): New member stderrproc.
* src/process.c (PIPECONN_P): New macro.
(PIPECONN1_P): New macro.
(Fdelete_process, Fprocess_status, Fset_process_buffer)
(Fset_process_filter, Fset_process_sentinel, Fstop_process)
(Fcontinue_process): Handle pipe process specially.
(create_process): Respect p->stderrproc.
(Fmake_pipe_process): New function.
(Fmake_process): Add new keyword argument :stderr.
(wait_reading_process_output): Specially handle a pipe process when
it gets an EOF.
(syms_of_process): Register Qpipe and Smake_pipe_process.
* doc/lispref/processes.texi (Asynchronous Processes): Document
`make-pipe-process' and `:stderr' keyword of `make-process'.
* lisp/subr.el (start-process): Suggest to use `make-process' handle
standard error separately.
* test/automated/process-tests.el (process-test-stderr-buffer)
(process-test-stderr-filter): New tests.
* etc/NEWS: Mention new process type `pipe' and its usage with the
`:stderr' keyword of `make-process'.
2015-04-10 Paul Eggert <eggert@cs.ucla.edu>
Minor quoting etc. fixes to lispref manual
* doc/lispref/tips.texi (Documentation Tips):
Distinguish more clearly among grave accent, apostrophe,
and single quote.
* doc/lispref/README, doc/lispref/buffers.texi:
* doc/lispref/commands.texi, doc/lispref/control.texi:
* doc/lispref/customize.texi, doc/lispref/display.texi:
* doc/lispref/elisp.texi, doc/lispref/files.texi:
* doc/lispref/frames.texi, doc/lispref/hash.texi:
* doc/lispref/help.texi, doc/lispref/internals.texi:
* doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
* doc/lispref/markers.texi, doc/lispref/modes.texi:
* doc/lispref/nonascii.texi, doc/lispref/objects.texi:
* doc/lispref/os.texi, doc/lispref/positions.texi:
* doc/lispref/strings.texi, doc/lispref/syntax.texi:
* doc/lispref/text.texi, doc/lispref/tips.texi:
* doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
Use American-style double quoting in ordinary text,
and quote 'like this' when single-quoting in ASCII text.
Also, fix some minor spacing issues.
2015-04-10 Michael Albinus <michael.albinus@gmx.de>
Handle symlinked test directory in tramp-tests.el
* test/automated/tramp-tests.el (tramp-test18-file-attributes)
(tramp--test-check-files): Use `file-truename' for directories.
2015-04-10 Eli Zaretskii <eliz@gnu.org>
Fix 'recenter' when visual-line-mode is turned on
* src/window.c (Frecenter): Use the same code for GUI and TTY
frames alike; use vmotion only for "initial" frames. This is
because vmotion doesn't support visual-line-mode. Rewrite the
'iarg >= 0' case to use move_it_* functions instead of using
vmotion, for the same reason. Fix the clipping of the argument
value to support scroll-margin in all cases and avoid unwarranted
recentering. Reported by Milan Stanojević <milanst@gmail.com> in
http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
which see.
2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
* abbrev.el (define-abbrev-table): Refine last change.
cl-lib.el: Partial revert of "2015-04-05 Rationalize c[ad]+r"
* lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
use of c[ad]+r", so as to keep the "cl-" prefix on all
cl-lib definitions.
* vhdl-mode.el (vhdl-prepare-search-2): Use inhibit-point-motion-hooks
* lisp/cedet/semantic: Remove some dead code
* lisp/cedet/semantic/util-modes.el
(semantic-stickyfunc-header-line-format): Emacs<22 is not supported
any more.
* lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
not supported any more.
(semantic-safe): Use `declare'.
* lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
(semantic-tag-intangible-p): Remove unused functions.
* lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
Remove unused function.
* lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
(gnus-article-hide-text, gnus-article-unhide-text)
(gnus-article-unhide-text-type): Remove special handling of
`intangible' since that property is not used any more.
(gnus-article-treat-body-boundary): Use gnus-hidden-properties.
2015-04-09 Dmitry Gutov <dgutov@yandex.ru>
Use the VC root in `log-edit-listfun'
* lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
`log-edit-listfun'.
2015-04-09 Jay Belanger <jay.p.belanger@gmail.com>
Fix description of Unix time, mention new function.
* lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
Unix time.
* doc/misc/calc.texi (Date Forms): Fix description of Unix time.
(Basic Operations on Units): Mention `calc-convert-exact-units'.
2015-04-09 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el: Use mode-line-process for notification
2015-04-09 Dmitry Gutov <dgutov@yandex.ru>
(log-edit-insert-changelog-entries): Don't add newline after the last entry
* lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
Don't add newline after the last entry.
2015-04-09 Simen Heggestøyl <simenheg@gmail.com>
css-mode.el: Add "not" pseudo-class
(Bug#20267)
* lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
list of CSS pseudo-classes.
2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
etc/NEWS: Add missing entry for "Stop messing with the EMACS env var"
2015-04-09 Michael Albinus <michael.albinus@gmx.de>
Stop messing with the EMACS env var
* misc.texi (Interactive Shell): Remove description of EMACS env var.
2015-04-09 Paul Eggert <eggert@cs.ucla.edu>
Adapt 'make change-history' to coding cookie
* Makefile.in (change-history): Adjust to change of format of
ChangeLog file, which now has a coding cookie before an indented
copyright notice.
2015-04-09 Paul Eggert <eggert@cs.ucla.edu>
Adapt 'make change-history' to coding cookie
* Makefile.in (change-history): Adjust to change of format of
ChangeLog file, which now has a coding cookie before an indented
copyright notice.
gitlog-to-changelog coding cookie and mv -i
* build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
for copyright notice prototype, so that we get a proper "coding:"
cookie. Use 'mv -i' to avoid unconditionally overwriting an
existing ChangeLog. Problems reported by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
Merge from gnulib
* build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
2015-04-09 gitlog-to-changelog: port to MS-Windows
2015-04-09 Boruch Baum <boruch_baum@gmx.com> (tiny change)
* lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
(Bug#20212)
2015-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
Stop messing with the EMACS env var
(Bug#20202)
* lisp/net/tramp-sh.el (tramp-remote-process-environment):
* lisp/comint.el (comint-exec-1):
* lisp/term.el (term-exec-1): Don't set EMACS envvar.
* lisp/progmodes/compile.el (compilation-start): Same and bring
INSIDE_EMACS's format in line with other users.
css-mode.el (css-smie-rules): Fix indentation after complex selectors
(Bug#20282)
* lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
inner structure of selectors.
2015-04-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
python.el: Indent docstring lines to base-indent
(Bug#19595)
Thanks to immerrr <immerrr@gmail.com> for reporting and providing
an initial patch.
* lisp/progmodes/python.el
(python-indent-context): Add :inside-docstring context.
(python-indent--calculate-indentation): Handle :inside-docstring.
(python-indent-region): Re-indent docstrings.
* test/automated/python-tests.el (python-indent-region-5)
(python-indent-inside-string-2): Fix tests.
python.el: Increase native completion robustness
(Bug#19755)
Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
this and providing useful ideas.
* lisp/progmodes/python.el
(python-shell-completion-native-output-timeout): Increase value.
(python-shell-completion-native-try-output-timeout): New var.
(python-shell-completion-native-try): Use it.
(python-shell-completion-native-setup): New readline setup avoids
polluting current context, ensures output when no-completions are
available and includes output end marker.
(python-shell-completion-native-get-completions): Trigger with one
tab only. Call accept-process-output until output end is found or
python-shell-completion-native-output-timeout is exceeded.
2015-04-08 Samer Masterson <samer@samertm.com>
* lisp/eshell: Make backslash a no-op in front of normal chars
(Bug#8531)
* lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
(eshell-parse-backslash): Return escaped character after backslash
if it is special. Otherwise, if the backslash is not in a quoted
string, ignore the backslash and return the character after; if
the backslash is in a quoted string, return the backslash and the
character after.
* test/automated/eshell.el (eshell-test/escape-nonspecial)
(eshell-test/escape-nonspecial-unicode)
(eshell-test/escape-nonspecial-quoted)
(eshell-test/escape-special-quoted): Add tests for new
`eshell-parse-backslash' behavior.
2015-04-08 Gustav Hållberg <gustav@gmail.com> (tiny change)
* lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
after the file name.
(Bug#20276)
2015-04-08 Paul Eggert <eggert@cs.ucla.edu>
Minor quoting etc. fixes to Emacs manual
* doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
* doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
* doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
* doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
* doc/emacs/indent.texi, doc/emacs/macos.texi:
* doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
* doc/emacs/programs.texi, doc/emacs/rmail.texi:
* doc/emacs/search.texi, doc/emacs/trouble.texi:
* doc/emacs/vc1-xtra.texi:
Use American-style double quoting in ordinary text,
and quote 'like this' when single-quoting in ASCII text.
Also, fix some minor spacing issues.
Minor quoting etc. fixes to elisp intro
* doc/lispintro/emacs-lisp-intro.texi: Consistently use
American-style double quoting in ordinary text. In ASCII text,
consistently quote 'like this' instead of `like this', unless
Emacs requires the latter.
2015-04-08 Dmitry Gutov <dgutov@yandex.ru>
* CONTRIBUTE: Mention log-edit-insert-changelog.
* CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
2015-04-08 Paul Eggert <eggert@cs.ucla.edu>
* doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
2015-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
(eieio-copy-parents-into-subclass): Fix inheritance of initargs
(Bug#20270)
* lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
Fix inheritance of initargs.
2015-04-08 Artur Malabarba <bruce.connor.am@gmail.com>
* lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
while dowloading information.
* lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
(package--ensure-init-file): Check file contents before visiting.
(package-initialize): Call it.
(package-install-from-buffer, package-install): Don't call it.
2015-04-08 Eli Zaretskii <eliz@gnu.org>
* src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800
(Bug#17517)
2015-04-08 Michael Albinus <michael.albinus@gmx.de>
Fix nasty scoping bug in tramp-cache.el
* lisp/net/tramp-cache.el (tramp-flush-file-property): Fix nasty scoping bug.
2015-04-08 Tassilo Horn <tsdh@gnu.org>
Add notice to visual commands section
* doc/misc/eshell.texi (Input/Output): Add notice that some tools
such as git call less with its -F option which omits pagination if
the contents is less than one page long. This interferes with
eshell's visual (sub-)commands.
2015-04-07 Dmitry Gutov <dgutov@yandex.ru>
ffap: Support environment variable expansion in file names
(Bug#19839)
* lisp/ffap.el (ffap-string-at-point-mode-alist): Support
environment variable expansion in file names.
2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
Prefer double-quote to accent-grave in man pages
2015-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
(Bug#20257)
* lisp/files.el (set-visited-file-name): Clear auto-save if nil.
2015-04-07 Ivan Shmakov <ivan@siamics.net>
Update etc/PROBLEMS.
* etc/PROBLEMS: Mention visible-cursor; a few more mentions of
~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
respectively); other minor updates and tweaks. (Bug#20011)
2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
Add doc strings for some Isearch state vars
* lisp/misearch.el (multi-isearch-buffer-list)
(multi-isearch-file-list): Add doc strings.
(Bug#20232)
2015-04-07 Alan Mackenzie <acm@muc.de>
Always mark "<" and ">" in #include directives with text properties.
* lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock "anchored
matcher" with an invocation of c-make-font-lock-search-function to allow
fontification when there's no trailing space on an "#include <..>" line.
2015-04-07 Paul Eggert <eggert@cs.ucla.edu>
Generate a ChangeLog file from commit logs
* .gitignore: Add 'ChangeLog'.
* build-aux/gitlog-to-changelog: New file, from Gnulib.
* build-aux/gitlog-to-emacslog: New file.
* CONTRIBUTE: Document the revised workflow.
* Makefile.in (clean): Remove *.tmp and etc/*.tmp*
instead of just special cases.
(CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
(ChangeLog, unchanged-history-files, change-history)
(change-history-commit): New rules.
* admin/admin.el (make-manuals-dist--1):
Don't worry about doc/ChangeLog.
* admin/authors.el: Add a FIXME.
* admin/make-tarball.txt:
* lisp/calendar/icalendar.el:
* lisp/gnus/deuglify.el:
* lisp/obsolete/gulp.el:
* lwlib/README:
Adjust to renamed ChangeLog history files.
* admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
* admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
Remove obsolete discussion of merging ChangeLog files.
New section "Maintaining ChangeLog history".
* build-aux/git-hooks/pre-commit:
Reject attempts to commit files named 'ChangeLog'.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* make-dist: Make and distribute top-level ChangeLog if there's a
.git directory. Distribute the new ChangeLog history files
instead of scattered ChangeLog files. Distribute the new files
gitlog-to-changelog and gitlog-to-emacslog.
(Bug#19113)
Rename ChangeLogs for gitlog-to-changelog
This patch was implemented via the following shell commands:
find * -name ChangeLog |
sed 's,.*,git mv & &.1,
s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
s, src/ChangeLog\.1$, src/ChangeLog.13,' |
sh
git commit -am"[this commit message]"
This file records repository revisions from
commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
commit e1e33f201698229ae30a29c7008c3f6a3635d71f (inclusive).
See ChangeLog.1 for earlier changes.
;; Local Variables:
;; coding: utf-8
;; End:
Copyright (C) 2015 Free Software Foundation, Inc.
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 <http://www.gnu.org/licenses/>.