Stefan Monnier [Fri, 14 Aug 2015 19:29:11 +0000 (15:29 -0400)]
* src/keyboard.c: Use false/true instead of 0/1 for booleans
* src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
Michael Albinus [Fri, 14 Aug 2015 19:14:15 +0000 (21:14 +0200)]
* tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect stderr
to /dev/null, this is done in `tramp-send-command-and-check'.
Jürgen Hötzel [Fri, 14 Aug 2015 19:11:51 +0000 (21:11 +0200)]
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.
Ronnie Schnell [Fri, 14 Aug 2015 16:29:58 +0000 (12:29 -0400)]
Fixed typo in manual.
Ronnie Schnell [Fri, 14 Aug 2015 16:29:28 +0000 (12:29 -0400)]
Fixed typo in manual.
Eli Zaretskii [Fri, 14 Aug 2015 10:34:18 +0000 (13:34 +0300)]
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.
Stefan Monnier [Thu, 13 Aug 2015 21:05:44 +0000 (17:05 -0400)]
* lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049)
Magnus Henoch [Thu, 13 Aug 2015 20:59:16 +0000 (16:59 -0400)]
* 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).
Stefan Monnier [Thu, 13 Aug 2015 20:53:49 +0000 (16:53 -0400)]
(uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
* lisp/uniquify.el: Remove redundant `:group's.
Paul Eggert [Thu, 13 Aug 2015 20:48:28 +0000 (13:48 -0700)]
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.
Paul Eggert [Thu, 13 Aug 2015 19:16:25 +0000 (12:16 -0700)]
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).
Jürgen Hötzel [Thu, 13 Aug 2015 18:59:16 +0000 (20:59 +0200)]
; Fix caching problem in tramp-adb.el
* lisp/net/tramp-adb.el
(tramp-adb-handle-directory-files-and-attributes): Make a copy of
result to prevent modification of the tramp-cache by side effects.
Use the correct cache key.
Stephen Leake [Thu, 13 Aug 2015 17:54:39 +0000 (12:54 -0500)]
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.
Eli Zaretskii [Thu, 13 Aug 2015 14:36:38 +0000 (17:36 +0300)]
Improve warning about purecopy of strings with properties
* src/alloc.c (purecopy): Show the offending string with the
warning about removing its text properties.
Alan Mackenzie [Wed, 12 Aug 2015 21:28:55 +0000 (21:28 +0000)]
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.
Oleh Krehel [Wed, 12 Aug 2015 18:12:14 +0000 (20:12 +0200)]
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.
David Kastrup [Wed, 28 Jan 2015 10:53:54 +0000 (11:53 +0100)]
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.
Eli Zaretskii [Wed, 12 Aug 2015 15:55:38 +0000 (18:55 +0300)]
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)
Richard Stallman [Wed, 12 Aug 2015 15:25:26 +0000 (11:25 -0400)]
Offer to combine multiple To or CC fields.
* sendmail.el (mail-combine-fields): New function.
(mail-send): Call 'mail-combine-fields'.
Richard Stallman [Wed, 12 Aug 2015 15:24:30 +0000 (11:24 -0400)]
Don't decrypt encrypted files.
* mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
Richard Stallman [Wed, 12 Aug 2015 15:23:11 +0000 (11:23 -0400)]
Handle encrypted mbox files.
* rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt the mbox
file if necessary.
Richard Stallman [Wed, 12 Aug 2015 15:21:49 +0000 (11:21 -0400)]
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.
Richard Stallman [Wed, 12 Aug 2015 15:19:47 +0000 (11:19 -0400)]
epa-inhibit inhibits auto-recognition of .gpg files
* lisp/epa-file.el (epa-inhibit): New variable.
(epa-file-handler): Check epa-inhibit.
Artur Malabarba [Wed, 12 Aug 2015 07:52:42 +0000 (08:52 +0100)]
* emacs-lisp/lisp-mnt.el (lm-header): save-excursion
Fabián Ezequiel Gallina [Wed, 12 Aug 2015 02:56:25 +0000 (23:56 -0300)]
; python.el: Emacs 24.x compatibility fixes
* lisp/progmodes/python.el: Provide compatibility alternatives for
prog-widen and prog-first-column.
Fabián Ezequiel Gallina [Wed, 12 Aug 2015 02:04:11 +0000 (23:04 -0300)]
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.
Paul Eggert [Tue, 11 Aug 2015 22:53:18 +0000 (15:53 -0700)]
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.
Stephen Leake [Tue, 11 Aug 2015 19:28:17 +0000 (14:28 -0500)]
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.
Stefan Monnier [Tue, 11 Aug 2015 15:43:10 +0000 (11:43 -0400)]
* 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.
Jürgen Hötzel [Tue, 11 Aug 2015 06:57:45 +0000 (08:57 +0200)]
; Fix prompt in tramp-adb.el
* lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
sequence. Recent adb version send initial escape sequences, even
when terminal type is set to TERM=dumb.
Stephen Leake [Tue, 11 Aug 2015 02:53:19 +0000 (21:53 -0500)]
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.
Phillip Lord [Mon, 10 Aug 2015 22:04:05 +0000 (23:04 +0100)]
* ChangeLog.2: Formatting update.
Formatting for one change entry did not follow standard ChangeLog
conventions and has now been updated.
Eli Zaretskii [Mon, 10 Aug 2015 18:16:13 +0000 (21:16 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Mon, 10 Aug 2015 18:15:03 +0000 (21:15 +0300)]
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.
Samer Masterson [Mon, 10 Aug 2015 18:09:50 +0000 (11:09 -0700)]
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)
Eli Zaretskii [Mon, 10 Aug 2015 17:01:31 +0000 (20:01 +0300)]
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)
Alan Mackenzie [Mon, 10 Aug 2015 16:54:35 +0000 (16:54 +0000)]
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.
Paul Eggert [Mon, 10 Aug 2015 06:23:14 +0000 (23:23 -0700)]
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.
Dmitry Gutov [Mon, 10 Aug 2015 01:30:33 +0000 (04:30 +0300)]
; Fix xref--show-location, after regression in
ee50e62
Dmitry Gutov [Mon, 10 Aug 2015 01:04:57 +0000 (04:04 +0300)]
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.
Paul Eggert [Sun, 9 Aug 2015 23:21:05 +0000 (16:21 -0700)]
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 `...'.
Paul Eggert [Sun, 9 Aug 2015 23:12:11 +0000 (16:12 -0700)]
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
Nicolas Richard [Thu, 6 Aug 2015 08:54:50 +0000 (10:54 +0200)]
Use kpsewhich in ffap-latex-mode, if available
* lisp/ffap.el (ffap-latex-guess-rules): New variable.
(ffap-latex-mode): Use kpsewhich if available.
Nicolas Richard [Thu, 6 Aug 2015 11:05:11 +0000 (13:05 +0200)]
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.
Nicolas Richard [Wed, 5 Aug 2015 17:04:44 +0000 (19:04 +0200)]
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.
Nicolas Richard [Wed, 5 Aug 2015 16:57:20 +0000 (18:57 +0200)]
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.
Paul Eggert [Sun, 9 Aug 2015 14:48:00 +0000 (07:48 -0700)]
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.
Daiki Ueno [Sun, 9 Aug 2015 12:30:57 +0000 (14:30 +0200)]
Utilize `quit-window' in epa.el
* epa.el (epa-exit-buffer-function): Set to `quit-window'.
Fixes: debbugs:21210
Glenn Morris [Sun, 9 Aug 2015 10:25:42 +0000 (06:25 -0400)]
; Auto-commit of ChangeLog files.
Ivan Kanis [Sun, 9 Aug 2015 09:27:38 +0000 (10:27 +0100)]
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.
Artur Malabarba [Sun, 9 Aug 2015 08:56:33 +0000 (09:56 +0100)]
* isearch.el (isearch-search-fun-default): (Bug#21164)
Respect `isearch-lax-whitespace' when searching through
`isearch-word'.
Stefan Monnier [Sat, 8 Aug 2015 23:43:14 +0000 (19:43 -0400)]
* test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
Stefan Monnier [Sat, 8 Aug 2015 23:41:57 +0000 (19:41 -0400)]
* 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.
Nicolas Petton [Sat, 8 Aug 2015 19:54:45 +0000 (21:54 +0200)]
Merge remote-tracking branch 'origin/fix/subsequence-error-with-negative-sequences'
Eli Zaretskii [Sat, 8 Aug 2015 17:42:53 +0000 (20:42 +0300)]
; Fix some of my ChangeLog entries
Paul Eggert [Sat, 8 Aug 2015 16:47:37 +0000 (09:47 -0700)]
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.
David Kastrup [Sat, 8 Aug 2015 16:00:17 +0000 (18:00 +0200)]
; Add missing ChangeLog entry
Eli Zaretskii [Sat, 8 Aug 2015 15:54:10 +0000 (18:54 +0300)]
; Remove accidentally duplicated redisplay test.
; * test/redisplay-testsuite.el (test-redisplay-4): Remove
accidentally duplicated test.
Paul Eggert [Sat, 8 Aug 2015 15:25:51 +0000 (08:25 -0700)]
* configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
Eli Zaretskii [Sat, 8 Aug 2015 13:55:26 +0000 (16:55 +0300)]
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.
Eli Zaretskii [Sat, 8 Aug 2015 08:12:06 +0000 (11:12 +0300)]
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.
Phillip Lord [Fri, 7 Aug 2015 21:12:59 +0000 (22:12 +0100)]
Improve error signalling for seq-subseq.
The existing behaviour for seq-subseq 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 of
seq-subseq, and also to cl-subseq which largely defers to
seq-subseq (and is therefore also impacted by this change).
Tests have been added for these exceptional cases, as well as one non
exceptional base case.
Jürgen Hötzel [Fri, 7 Aug 2015 18:24:45 +0000 (20:24 +0200)]
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".
Stefan Monnier [Fri, 7 Aug 2015 17:34:34 +0000 (13:34 -0400)]
* lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
non-struct vectors.
Stephen Leake [Fri, 7 Aug 2015 15:32:05 +0000 (10:32 -0500)]
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
Stephen Leake [Fri, 7 Aug 2015 15:03:59 +0000 (10:03 -0500)]
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.
Eli Zaretskii [Fri, 7 Aug 2015 13:42:24 +0000 (16:42 +0300)]
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.
Artur Malabarba [Thu, 6 Aug 2015 10:24:16 +0000 (11:24 +0100)]
* 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.
Artur Malabarba [Thu, 6 Aug 2015 08:37:27 +0000 (09:37 +0100)]
* 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.
Paul Eggert [Thu, 6 Aug 2015 02:06:57 +0000 (19:06 -0700)]
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 ‘%’.
Artur Malabarba [Wed, 5 Aug 2015 17:58:38 +0000 (18:58 +0100)]
* lisp/replace.el (replace-character-fold): Default to nil
Artur Malabarba [Wed, 5 Aug 2015 17:51:34 +0000 (18:51 +0100)]
* 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.
Dmitry Gutov [Wed, 5 Aug 2015 12:18:25 +0000 (15:18 +0300)]
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.
Dmitry Gutov [Wed, 5 Aug 2015 12:08:00 +0000 (15:08 +0300)]
* lisp/progmodes/project.el: Add a paragraph to the front matter.
Ingo Lohmar [Tue, 4 Aug 2015 16:26:57 +0000 (18:26 +0200)]
; Fix wrong/duplicate ChangeLog entries
Ingo Lohmar [Tue, 4 Aug 2015 16:01:57 +0000 (18:01 +0200)]
; * doc/emacs/calendar.texi (Move to Beginning or End): Fix punctuation.
David Kastrup [Sat, 25 Jul 2015 16:54:42 +0000 (18:54 +0200)]
; Do not overwrite preexisting contents of unread-command-events
Daniel Colascione [Tue, 4 Aug 2015 03:06:04 +0000 (20:06 -0700)]
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
Artur Malabarba [Mon, 3 Aug 2015 23:39:04 +0000 (00:39 +0100)]
* 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.
Jürgen Hötzel [Mon, 3 Aug 2015 17:40:25 +0000 (19:40 +0200)]
* lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
Ingo Lohmar [Mon, 3 Aug 2015 16:49:55 +0000 (18:49 +0200)]
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: Document the new variable.
* lisp/calendar/calendar.el (calendar-generate-month): New variable
calendar-weekend-days to customize day header fontification.
Paul Eggert [Sun, 2 Aug 2015 22:58:02 +0000 (15:58 -0700)]
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'.
Nikolaus Rath [Sun, 2 Aug 2015 22:33:38 +0000 (22:33 +0000)]
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.
Nikolaus Rath [Sun, 2 Aug 2015 22:28:21 +0000 (22:28 +0000)]
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.
Paul Eggert [Sun, 2 Aug 2015 21:55:15 +0000 (14:55 -0700)]
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.
Paul Eggert [Sun, 2 Aug 2015 19:43:20 +0000 (12:43 -0700)]
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.
Ingo Lohmar [Sun, 2 Aug 2015 15:20:53 +0000 (17:20 +0200)]
Add option `calendar-weekend-days'
Previously, the face `calendar-weekend-header' was invariably applied to
Sundays and Saturdays, although weekend days differ by region/culture.
Making the days freely customizable, independent of
`calendar-week-start-day', should cover all possible scenarios.
Paul Eggert [Sun, 2 Aug 2015 15:27:13 +0000 (08:27 -0700)]
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.
Eli Zaretskii [Sun, 2 Aug 2015 14:56:39 +0000 (17:56 +0300)]
Whitespace fixes
; * src/w32fns.c (get_wm_chars, deliver_wm_chars, w32_wnd_proc):
Whitespace fixes.
Evgeny Fraimovitch [Sun, 2 Aug 2015 14:48:42 +0000 (17:48 +0300)]
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.
Copyright-paperwork-exempt: yes
Eli Zaretskii [Sun, 2 Aug 2015 14:40:19 +0000 (17:40 +0300)]
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)
Glenn Morris [Sun, 2 Aug 2015 10:23:54 +0000 (06:23 -0400)]
; Auto-commit of ChangeLog files.
Paul Eggert [Sun, 2 Aug 2015 07:04:51 +0000 (00:04 -0700)]
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.
Dmitry Gutov [Sat, 1 Aug 2015 22:01:28 +0000 (01:01 +0300)]
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.
Eli Zaretskii [Sat, 1 Aug 2015 12:32:48 +0000 (15:32 +0300)]
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.
Dmitry Gutov [Sat, 1 Aug 2015 11:40:14 +0000 (14:40 +0300)]
Don't pass NOVISIT to find-file
* lisp/progmodes/etags.el (next-file):
Don't pass NOVISIT to find-file (bug#21175).
Dmitry Gutov [Sat, 1 Aug 2015 11:21:02 +0000 (14:21 +0300)]
Ignore buffer restriction for tags-loop-eval
* lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
restriction (bug#21167).
Glenn Morris [Sat, 1 Aug 2015 10:18:42 +0000 (06:18 -0400)]
; Auto-commit of loaddefs files.
Eli Zaretskii [Sat, 1 Aug 2015 09:33:48 +0000 (12:33 +0300)]
Fix a thinko in 'ffap-gopher-at-point'
* lisp/ffap.el (ffap-gopher-at-point): Fix last change. (Bug#21168)
Eli Zaretskii [Sat, 1 Aug 2015 09:10:45 +0000 (12:10 +0300)]
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)