Commit graph

5387 commits

Author SHA1 Message Date
Anders Lindgren
a0e5a02125 New package, `faceup'
`faceup' is a framework for regression testing of font-lock
keywords in ert.  It is based on a human-readable markup
language.  (Bug#16063 and bug#28311).

* lisp/emacs-lisp/faceup.el:
* test/lisp/emacs-lisp/faceup-tests/faceup-test-basics.el:
* test/lisp/emacs-lisp/faceup-tests/faceup-test-files.el:
* test/lisp/emacs-lisp/faceup-resources/faceup-test-mode.el:
* test/lisp/emacs-lisp/faceup-resources/faceup-test-this-file-directory.el:
* test/lisp/emacs-lisp/faceup-resources/files/test1.txt:
* test/lisp/emacs-lisp/faceup-resources/files/test1.txt.faceup:
New files.
2017-10-26 21:31:28 +02:00
Eric Abrahamsen
64e037eb7d Fix to 2fddfb7ce7
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
  Fix bogus paren wrapping.
2017-10-22 16:46:49 -07:00
Gemini Lasswell
e07cf691de Change Edebug's behavior-changing hooks to variables
* lisp/emacs-lisp/edebug.el (edebug-after-instrumentation-functions)
(edebug-new-definition-functions): Deleted.
(edebug-after-instrumentation-function)
(edebug-new-definition-function): New variables.
(edebug-behavior-alist): Update docstring.
(edebug-read-and-maybe-wrap-form1, edebug-make-form-wrapper): Use new
variables.

* lisp/emacs-lisp/testcover.el (testcover-start)
(testcover-this-defun): Use `edebug-after-instrumentation-function' and
`edebug-new-definition-function'.
(testcover-after-instrumentation): Return passed form.
(testcover-init-definition): Use argument instead of `edebug-def-name'.

* doc/lispref/edebug.texi (Edebug Options): Replace descriptions of
`edebug-after-instrumentation-functions' and `edebug-new-definition-functions'
with `edebug-after-instrumentation-function' and
`edebug-new-definition-function'.
2017-10-22 10:47:50 -07:00
Eric Abrahamsen
2fddfb7ce7 Handle object string name in eieio-persistent-convert-list-object
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
  Starting to phase out the printing of object names in
  `object-write', handle either case.
2017-10-22 07:59:29 -07:00
Glenn Morris
cda4c74e60 Merge from origin/emacs-26
888e51f220 (origin/emacs-26) Update describe-function for recent Fdoc...
75bb482763 Make flymake's mouse-wheel interaction portable (Bug#28732)
035d7ac7e4 Prevent eldoc from changing the mode line
c9d71b31bf Fix doc strings in simple.el
0d8e4f45d6 Avoid creating inconsistent buffer states in term-char-mode
79d57f4b7a New input method 'usbek-cyrillic'
4587d8e0ef Document 'minibuffer-with-setup-hook'

# Conflicts:
#	etc/NEWS
2017-10-21 09:07:30 -07:00
Nick Helm
035d7ac7e4 Prevent eldoc from changing the mode line
* lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message): Don't
change the mode line if it is not displayed.  (Bug#28697)
2017-10-21 11:41:28 +03:00
Paul Eggert
3155cb1585 Merge from origin/emacs-26
11bd8aa24b Fix flymake's loading of subr-x
b500e06f4d Fix Bug#28896
d815de017b Skip a Flymake test for old gcc versions
fd3d8610b2 Make :align-to account for display-line-numbers
831eafc8ae Augment Flymake API for third-party extensions
ddd547fada Improve treatment of Fortran's "class default"
234b1e3864 Flymake backends must check proc obsoleteness in source bu...
3ea6a4d4ba Skip an rsync test in tramp-tests.el
25f83fa7c5 ; Indentation fixes
4d578d432d On Windows default a frame's border width to zero (Bug#28873)
6f1dea5c74 Spelling fixes
b8433b0954 Use pop-to-buffer-same-window instead of switch-to-buffer
2f7163fb72 Fix the MSDOS build.
2551d28fe8 Fix line number display after 'widen'
dc8812829b Remove resizable attribute on macOS undecorated frames (bu...
b970a4a52a Fix handling of `border-width' in `frameset--restore-frame...
445e92658f Mention how to send CC to > 1 address in a bug report
8ca6fa585a Improve format-time-string doc
2e1b3522b8 Improve documentation of 'line-number-display-width'
5b6e59cfdb Implement vc-default-dir-extra-headers for vc-rcs
22adeca42a In NEWS give advice on use of `switch-to-buffer' (Bug#28645)
2c3e6f1ddc Dont update primary selection with winner-undo
b38724ab67 Work around ImageMagick bug 825
20cc68e871 Document rectangle-preview option more (Bug#27974)
a0b7b301dd Do not reject https://gnu.org in commit messages
fb4200a875 Fix Edebug spec for cl-defun (bug#24255)
db68cefe72 Fix errors in kmacro.el post-command-hook
c63b344c3d Fix range-error in image-dired.el
081d2187c4 Fix 'line-number-display-width' in hscrolled windows
16e85456e7 Fix error in tramp-smb-handle-insert-directory
613db8d35c Don't reject PBM header whitespace unnecessarily
3205b12a78 Fix regression in display of PPM images
1ca9ae7069 Require subr-x when compiling nnimap.el
de60992053 Fix ert-test finding by symbol (Bug#28849)
51615a8082 Don't remember old debugger window (Bug#17882)
5980de3727 Disable python native completion on w32 (Bug#28580)
616b4c5956 Let select-frame-by-name choose any frame when called from...
8eb3c01dbd * lisp/dired-aux.el (dired-create-directory): Doc fix.
325dfdae13 Avoid compilation warnings in optimized builds
f79382819c ; * src/composite.c (Fclear_composition_cache): Fix last c...
f95cd5cd70 Improve customization of arabic-shaper-ZWNJ-handling.
a7f154688d Improve customization type of 'mouse-drag-and-drop-region'
864734d112 ; Prefer https: to http: in GNU URLs
3c78960a47 Encourage https: in commit messages
def9715282 ; Cleanup of etc/NEWS
4e59ecc646 Fix wording in Elisp manual's child frames section (Bug#28...
eda9f5018c Another fix for C mode fontification of w32 source files
05aadd8990 Fix fontification of ALIGN_STACK functions
aa0c38f358 Make sure thread stack is properly aligned on MS-Windows
d7038020aa Do not under-align pseudovectors
ff33053012 Fix indentation bug in multi-line CSS selectors
8968be822e ; * etc/NEWS: Grammar and spelling fixes
716b84034d gnutls_mac_get_nonce_size has been added in gnutls 3.3
55e313f7be ; * CONTRIBUTE: More suggestions for using US English.
622c675648 * CONTRIBUTE: Suggest American English.

# Conflicts:
#	etc/NEWS
#	msdos/sed2v2.inp
2017-10-20 22:44:13 -07:00
Paul Eggert
c75f505dea Prefer nil to (current-time) when either works
* doc/misc/gnus.texi (Category Syntax):
* lisp/allout-widgets.el (allout-widgets-post-command-business):
* lisp/cedet/ede/detect.el (ede-detect-qtest):
* lisp/cedet/pulse.el (pulse-momentary-highlight-overlay)
(pulse-tick):
* lisp/cedet/semantic.el (bovinate):
* lisp/cedet/semantic/analyze.el:
(semantic-analyze-current-symbol-default, semantic-adebug-analyze):
* lisp/cedet/semantic/analyze/refs.el (semantic-analyze-current-tag):
* lisp/cedet/semantic/lex.el (semantic-lex-test):
* lisp/cedet/semantic/symref/filter.el:
(semantic-symref-test-count-hits-in-tag):
* lisp/cedet/srecode/dictionary.el (srecode-adebug-dictionary):
* lisp/cedet/srecode/map.el (srecode-adebug-maps):
* lisp/desktop.el (desktop-create-buffer):
* lisp/emacs-lisp/benchmark.el (benchmark-elapse):
* lisp/emacs-lisp/elp.el (elp--make-wrapper):
* lisp/epa.el (epa--show-key):
* lisp/erc/erc.el (erc-lurker-cleanup, erc-lurker-p):
* lisp/gnus/gnus-agent.el (gnus-agent-fetch-articles)
(gnus-agent-expire-group-1, gnus-agent-store-article):
* lisp/gnus/gnus-art.el (article-lapsed-string):
* lisp/gnus/gnus-cloud.el (gnus-cloud-update-newsrc-data)
(gnus-cloud-collect-full-newsrc):
* lisp/gnus/gnus-group.el (gnus-group-timestamp-delta):
* lisp/gnus/gnus-html.el (gnus-html-cache-expired):
* lisp/gnus/gnus-score.el (gnus-score-load-file)
(gnus-decay-scores):
* lisp/gnus/nndiary.el (nndiary-expired-article-p):
* lisp/gnus/nnmail.el (nnmail-expired-article-p):
* lisp/gnus/nnmaildir.el (nnmaildir--scan):
* lisp/gnus/score-mode.el (gnus-score-edit-insert-date):
* lisp/image/gravatar.el (gravatar-cache-expired):
* lisp/net/newst-backend.el (newsticker--image-get)
(newsticker--cache-mark-expired):
* lisp/nxml/rng-maint.el (rng-time-function):
* lisp/org/org-agenda.el (org-agenda-to-appt):
* lisp/org/org-clock.el (org-clock-resolve-clock)
(org-clock-resolve, org-resolve-clocks-if-idle):
* lisp/org/org-colview.el (org-columns-edit-value, org-columns)
(org-columns-compute-all, org-agenda-columns):
* lisp/org/org-element.el (org-element--cache-interrupt-p)
(org-element--cache-sync):
* lisp/org/org-habit.el (org-habit-get-faces)
(org-habit-insert-consistency-graphs):
* lisp/org/org-indent.el (org-indent-add-properties):
* lisp/org/org-timer.el (org-timer-start)
(org-timer-pause-or-continue, org-timer-seconds)
(org-timer-show-remaining-time, org-timer-set-timer):
* lisp/org/org.el (org-babel-load-file, org-current-time)
(org-today, org-auto-repeat-maybe, org-read-date-analyze)
(org-small-year-to-year, org-goto-calendar):
* lisp/org/ox.el (org-export-insert-default-template):
* lisp/time.el (emacs-uptime):
* lisp/type-break.el (type-break-mode, type-break)
(type-break-time-warning-schedule, type-break-check):
* lisp/url/url-cache.el (url-cache-expired):
* lisp/url/url.el (url-retrieve-synchronously):
* test/lisp/char-fold-tests.el (char-fold--speed-test):
* test/manual/cedet/semantic-ia-utest.el:
(semantic-symref-test-count-hits-in-tag):
* test/manual/cedet/semantic-tests.el (semantic-idle-pnf-test)
(semantic-lex-test-full-depth):
Use nil instead of (current-time) where either will do, as nil is
a bit more efficient and should have less timing error.
2017-10-20 19:42:23 -07:00
Stefan Monnier
f44e445d6c * lisp/emacs-lisp/debug.el: Use cl-print more systematically
(debugger-return-value, debugger-eval-expression, debugger--insert-locals):
Use debugger--print.
2017-10-20 19:00:11 -04:00
Stefan Monnier
3b03124a93 * lisp/emacs-lisp/eieio.el (eieio-object-name-string): De-obsolete
This is apparently the advertised method to use for `eieio-named' objects.
Also use sxhash-eq to get a more precise default "object name".
(eieio-object-set-name-string): Clarify obsolescence message.

* lisp/emacs-lisp/eieio-base.el (eieio-object-name-string): Delegate to
the default method when applicable.
2017-10-20 17:57:37 -04:00
Eli Zaretskii
fd3d8610b2 Make :align-to account for display-line-numbers
These changes also update the various bundled packages to use
new feature, and better support customizations of the line-number
face.
* src/xdisp.c (calc_pixel_width_or_height): Improve commentary.
Make :align-to count from the end of the line-number display when
the offset or the width form reference that of the text area.
(Bug#28855)

* src/indent.c (Fline_number_display_width): Implement support for
the PIXELWISE argument being 'columns'.  Update the doc string.
(syms_of_indent): New symbol 'columns'.

* lisp/ruler-mode.el (ruler-mode-window-col, ruler-mode-ruler):
Call line-number-display-width with last argument 'columns'.

* lisp/proced.el (proced-header-line): Call
line-number-display-width with 2nd arg 'columns', which also fixes
a problem when display-line-numbers is nil.

* lisp/emacs-lisp/tabulated-list.el
(tabulated-list-line-number-width): Call line-number-display-width
with 2nd arg 'columns.
(tabulated-list-entry-lnum-width): Remove unneeded defvar.
(tabulated-list-print, tabulated-list-print-entry): No need to
account for the value of tabulated-list-entry-lnum-width.
(tabulated-list--current-lnum-width): New defvar.
(tabulated-list-watch-line-number-width): New function.
(tabulated-list-mode): Bind tabulated-list--current-lnum-width
locally, and set up tabulated-list-watch-line-number-width as
pre-redisplay-functions hook.

* doc/lispref/display.texi (Size of Displayed Text): Document the
'columns' value of the PIXELWISE argument.
(Pixel Specification): Update and improve the documentation of the
supported forms.
2017-10-20 12:36:12 +03:00
Gemini Lasswell
fb4200a875 Fix Edebug spec for cl-defun (bug#24255)
* lisp/emacs-lisp/cl-macs.el: Modify the Edebug spec for
`cl-lambda-list' to support destructuring argument lists.
(cl-defun, cl-defmacro): Fix spelling errors in docstrings.
* lisp/textmodes/rst.el: Remove alternate version of Edebug
specs for `cl-lambda-list' and `cl-type-spec'.
2017-10-16 11:09:29 -07:00
Noam Postavsky
de60992053 Fix ert-test finding by symbol (Bug#28849)
In 2017-07-28 "* lisp/subr.el (define-symbol-prop): New function", the
symbol used for ert tests in load-history was changed from
`ert-deftest' to `ert--test', but a couple of other places were not
updated accordingly.
* lisp/emacs-lisp/ert.el (ert-find-test-other-window): Pass
`ert--test' as the TYPE to `find-function-do-it'.
(top-level): Use `ert--test' as the key to the
`find-function-regexp-alist' entry.
2017-10-15 13:58:45 -04:00
Noam Postavsky
51615a8082 Don't remember old debugger window (Bug#17882)
* lisp/emacs-lisp/debug.el (debug): Unset debugger-previous-window
when `debugger-will-be-back' is nil.
2017-10-15 13:58:45 -04:00
Paul Eggert
864734d112 ; Prefer https: to http: in GNU URLs 2017-10-14 19:19:24 -07:00
Stefan Monnier
dcb86584fd * lisp/emacs-lisp/debug.el: Don't bail on errors inside cl-print
(debugger--print): New function.
(debugger-insert-backtrace, debugger-setup-buffer): Use it.
2017-10-13 22:45:41 -04:00
Paul Eggert
3d0d5b4ebd Merge from origin/emacs-26
05d0c0f802 ; * ChangeLog.3: ChangeLog fixes.
fbabae6b24 * ChangeLog.3: Update.
eab051991e Fix docstring style for 'functionp'
e8a7c41b4e Format shell commands in tramp.texi
0526aac4eb Unbreak the button in the Flymake diagnostics buffer again
c89f001de1 Add mode map to Flymake diagnostic button
f9cd8ee681 Tweak the Flymake diagnostics buffer again
0e83f5f279 Simplify Flymake diagnostics buffer UX
cf4a15b9b6 First stab at a Flymake diagnostics buffer
e4a1556392 * etc/NEWS (Flymake): Rewrite entry.
00adeb43e9 Improve the Flymake manual
44c6401733 ; * etc/NEWS: Clarify the description of "---" and "+++".
042b3cfbd2 Fix two Flymake bugs
3dfa2ca4dc Don't log "emergencies" in the Flymake legacy backend
1c2e188440 Add full documentation on new Flymake API
0f7f677f82 Fix some Flymake docstrings and messages
21e7075781 Make three new Flymake commands for debugging common problems
c9be9a3678 ; INSTALL.REPO: Add -d to "thorough cleaning" suggestion.
5d51403ceb ; Typo fixes, mostly repeated words
0d004ed01a ; Spelling fixes
0485aa76c9 ; * src/lread.c (syms_of_lread) <module-file-suffix>: Fix ...
ba7fb37d6a * admin/authors.el (authors-renamed-files-alist): addition.
14dca4a79a ; ChangeLog.3 fixes
f352d0257c Fix PWD check on DOS_NT
934f08f3de Fix unlikely overflows with wd length
6c2b1e89ef * lisp/gnus/message.el: Improve last commit
7ed7360855 Fix problems when editing raw undecoded message (Bug#28671)
aca5f0072b Avoid encoding errors in message.el
0c36663db5 Improve doc string and prompt of 'grep-read-files'
2da83c9d36 Avoid assertion violations when line numbers are displayed
5b81f65ad0 ; * lisp/emacs-lisp/rmc.el: Minor fix for copyright and li...
11b37b4a9f Be lazy when starting Flymake checks
36ed9a9ede Fix last change in frameset.el
62e5c119af Describe how window dividers can replicate vertical border...
e2150d994a Add line-number faces to the display-line-numbers group
89b0023044 Increase xterm click count only within double-click-fuzz
745aea2296 Change pause in fullscreen toggling for NS port (bug#28496)
1cd334cd47 Handle PARENTS properly in tramp-*-handle-make-directory
f1c73de47d ; Merge from Gnulib (comment changes only)
7c2c117c91 Improve test for unreachable dirs
2202952b83 * src/xsmfns.c (x_session_initialize): Fix memory leak.
a9b72976de Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs i...
64baaff8c5 New option for handling ZWNJ in Arabic text rendering
c194fb61c6 Make python prettify symbols into a defvar (Bug#28713)
6dfc778d54 Fix fullscreen crash on macOS (bug#28496)
3db0dc2168 Fix crash when closing fullscreen frame on macOS (bug#28661)
bc80da5bd3 Support gio tool in Tramp
349e0eb5ff Fix flymake-goto-next-error when message has %-constructs
0fa353b504 * src/gnutls.c (syms_of_gnutls): Remove duplicated call to...
dc6ae15a8d Move the entry about 'format' into Incompatible Lisp Changes
75174a632d Fix glitches in displaying TTY menus
238fbcb20e Create new Edebug spec for docstrings and use it in closures
2d58d51329 Avoid byte-compilation warnings in message.el

# Conflicts:
#	etc/NEWS
2017-10-12 13:44:16 -07:00
Paul Eggert
5d51403ceb ; Typo fixes, mostly repeated words 2017-10-09 22:55:06 -07:00
Philipp Stephani
6abff55b55 Revert "Raise an error when detecting old-style backquotes."
This reverts commit 9613690f6e.
2017-10-09 16:08:15 +02:00
Glenn Morris
5b81f65ad0 ; * lisp/emacs-lisp/rmc.el: Minor fix for copyright and license. 2017-10-09 07:44:37 -04:00
Gemini Lasswell
3c2e8eff8c Stop Testcover from producing spurious 1value errors
Fix bug#25351 by copying results of form evaluations for later
comparison.
* lisp/emacs-lisp/testcover.el (testcover-after): Copy the result
of a form's first evaluation and compare subsequent evaluations to
the copy. Improve the error message used when a form's value
changes.
(testcover--copy-object, testcover--copy-object1): New functions.
* test/lisp/emacs-lisp/testcover-resources/testcases.el
(by-value-vs-by-reference-bug-25351): Remove expected failure tag.
(circular-lists-bug-24402): Add another circular list case.
2017-10-08 16:13:39 -07:00
Gemini Lasswell
d79cf638f2 Rewrite Testcover's internals, fixing several bugs
* lisp/emacs-lisp/testcover.el: Rewrite the internals of Testcover
to analyze instrumented code instead of reinstrumenting it.  Use new
hooks in Edebug to collect code coverage information at runtime
using Edebug's instrumentation.
Includes fixes for: (bug#11307) (bug#24509) (bug#24688) (bug#24743)
(bug#25316) (bug#25326).
(testcover-compose-functions): Remove mapcar.
(testcover-start, testcover-this-defun): Analyze code instead of
reinstrumenting it. Set edebug-behavior for each definition.
(testcover--read, testcover-1value, testcover-reinstrument)
(testcover-reinstrument-list, testcover-reinstrument-compose):
Deleted.
(testcover-after-instrumentation, testcover-init-definition)
(testcover-before): New functions.
(testcover-enter): Change call signature to match edebug-enter.
(testcover-after, testcover-mark): Add handling of 'maybe and
'noreturn.
(testcover-analyze-coverage, testcover-analyze-coverage-progn)
(testcover-analyze-coverage-edebug-after)
(testcover-analyze-coverage-wrapped-form)
(testcover-analyze-coverage-wrapped-application)
(testcover-analyze-coverage-compose)
(testcover-analyze-coverage-backquote)
(testcover-analyze-coverage-backquote-form)
(testcover-coverage-combine): New functions to analyze instrumented
code.

* lisp/emacs-lisp/gv.el: Modify edebug-after's gv-expander to
instrument in the setter as well as the getter.

* test/lisp/emacs-lisp/testcover-tests.el
(testcover-tests-run-test-case): Use `edebug-default-enter'
instead of `edebug-enter' to detect Edebug invocation
during tests.

* test/lisp/emacs-lisp/testcover-resources/testcases.el
(constants-bug-25316)
(customize-defcustom-bug-25326)
(1-value-symbol-bug-25316)
(quotes-within-backquotes-bug-25316)
(backquote-1value-bug-24509)
(pcase-bug-24688)
(defun-in-backquote-bug-11307-and-24743)
(closure-1value-bug)
(backquoted-vector-bug-25316)
(vector-in-macro-spec-bug-25316)
(mapcar-is-not-compose): Remove expected failure tags.
(function-with-edebug-spec-bug-25316): Remove expected failure tag
and modify expected result.
(quoted-backquote): New test.

* lisp/textmodes/rst.el: Remove workarounds for bugs in Testcover.
(rst-testcover-defcustom): Deleted.

* lisp/subr.el (1value): Remove incorrect description of
testcover-1value from docstring, replace with description of
Testcover's treatment of 1value.
2017-10-08 16:08:49 -07:00
Gemini Lasswell
06e452a572 Allow Edebug's instrumentation to be used for other purposes
* lisp/emacs-lisp/edebug.el:
(edebug-after-instrumentation-functions)
(edebug-new-definition-functions): New hook variables.
(edebug-behavior-alist): New variable.
(edebug-read-and-maybe-wrap-form): Run a hook after a form is
wrapped.
(edebug-make-form-wrapper): Run a hook after a definition is
wrapped. Remove message for each definition.
(edebug-announce-definition): New function.
(edebug-enter): Rewritten to change behavior of Edebug based
on symbol property `edebug-behavior' and `edebug-behavior-alist'.
(edebug-default-enter): New function which does what `edebug-enter'
used to do.
(edebug-run-slow, edebug-run-fast): Modify edebug-behavior-alist.
(edebug-before, edebug-after): Function definitions are now set by
`edebug-enter'.
2017-10-08 16:08:49 -07:00
Stefan Monnier
85b4e88194 * lisp/emacs-lisp/checkdoc.el: cl-defstruct + minor simplifications
(checkdoc-make-overlay, checkdoc-overlay-put, checkdoc-delete-overlay)
(checkdoc-overlay-start, checkdoc-overlay-end, checkdoc-char=)
(checkdoc-mode-line-update): Remove old compatibility aliases.
(checkdoc, checkdoc-interactive-loop):
Consolidate common code in if branches.
(checkdoc-error): New struct type.
(checkdoc-error-text, checkdoc-error-start, checkdoc-error-end)
(checkdoc-error-unfixable): Now defined by cl-defstruct.
2017-10-08 15:44:49 -04:00
Philipp Stephani
9613690f6e Raise an error when detecting old-style backquotes.
They have been deprecated for a decade now.

* src/lread.c (Fload): Don't use record_unwind_protect to warn about
old-style backquotes any more.  They now generate a hard error.
(read1): Signal an error when detecting old-style backquotes.  Remove
unused label.
(syms_of_lread): Remove unused internal variable
'lread--old-style-backquotes'.
(load_error_old_style_backquotes): Rename from
'load_warn_oldstyle_backquotes'.  Signal an error.

* lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Remove check
from byte compiler.  It isn't triggered any more.

* test/src/lread-tests.el (lread-tests--old-style-backquotes): Adapt
unit test.

* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--old-style-backquotes)
(bytecomp-tests-function-put): Adapt unit tests.

* etc/NEWS: Document change.
2017-10-08 18:52:37 +02:00
Gemini Lasswell
238fbcb20e Create new Edebug spec for docstrings and use it in closures
Since (:documentation FORM) can be used to create a docstring
when lexical-binding is on, allow for that possibility in Edebug
specs (bug#24773).
* lisp/emacs-lisp/edebug.el: Define an Edebug spec for docstrings
called lambda-doc and modify the Edebug specs for defun and
defmacro to use it.
(edebug-instrument-function): Check for generic functions first,
to fix bug where edebug-step-in didn't work on methods now that
cl-defgeneric has an Edebug spec.
* lisp/subr.el (lambda): Modify Edebug spec to use lambda-doc.
* lisp/emacs-lisp/cl-generic.el (cl-defgeneric): Add Edebug spec
(bug#27747).
(cl-defmethod): Use lambda-doc in Edebug spec.
* lisp/emacs-lisp/cl-macs.el: Modify Edebug spec for
cl-declarations-or-string to use lambda-doc, and modify Edebug
spec for cl-lambda-expr to use cl-declarations-or-string.
* lisp/emacs-lisp/pcase.el (pcase-lambda): Modify Edebug spec to
use lambda-doc, as well as &define and def-body which are
necessary for using Edebug on code wrapped by lambda.
* lisp/emacs-lisp/generator.el (iter-defun, iter-lambda): Add
Edebug specs.
2017-10-06 11:31:12 -07:00
Paul Eggert
53da55b8cc Merge from origin/emacs-26
9226cf3254 Fix bug in recent styled_format change
fa92f0c447 Cleanup emacs-lisp-mode's use of Flymake
0d0265bf50 Fix @include directive in Flymake doc
295457ae52 Move read-multiple-choice to its own library
560dd9b573 * src/process.c (syms_of_process): Remove duplicated call ...
2017-10-06 10:35:07 -07:00
Mark Oteiza
295457ae52 Move read-multiple-choice to its own library
* lisp/emacs-lisp/rmc.el: New file.
* lisp/emacs-lisp/subr-x.el (read-multiple-choice): Remove.
* lisp/gnus/message.el:
* lisp/net/nsm.el: Change required library.
2017-10-06 10:42:06 -04:00
Stefan Monnier
11f9cb522f Merge emacs-26 2017-10-06 09:50:54 -04:00
Gemini Lasswell
9a10c8713b Fix dynamic binding wrapper in iter-lambda (bug#25965)
* lisp/emacs-lisp/generator.el (cps--make-dynamic-binding-wrapper):
Remove extra evaluation of form.
* test/lisp/emacs-lisp/generator-tests.el
(cps-iter-lambda-with-dynamic-binding): New test.
2017-10-05 12:43:15 -07:00
Eli Zaretskii
bd5326f879 Fix breakage due to recent change in tabulated-list-print-entry
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-printer):
Update the doc string.
(tabulated-list-print-entry): Revert to using only 2 arguments.
Update the doc string.
(tabulated-list-entry-lnum-width): New defvar.
(tabulated-list-print): Compute the width of line-number display
once, then store that value in tabulated-list-entry-lnum-width,
for tabulated-list-printer to use.  (Bug#28704)
2017-10-05 17:57:58 +03:00
Eli Zaretskii
3c4ff63bea Speed up list-packages when 'visual' line numbers are displayed
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-printer):
Update the doc string.
(tabulated-list-print-entry): Accept an additional optional
argument INDENT.  Update the doc string.
(tabulated-list-print): Compute the width of line-number display
once, then call tabulated-list-printer with that value as 3rd
argument.  (Bug#28704)
2017-10-05 12:41:36 +03:00
João Távora
30ea272fe4 Hook Flymake onto proper checkdoc and byte-compile interfaces
The interfaces in bytecomp.el and checkdoc.el are mostly boilerplate,
with little knowledge of actual internals or thought given to the
usefulness of said interfaces in contexts other than Flymake's.

* lisp/emacs-lisp/bytecomp.el
(byte-compile-log-warning-function): New variable.
(byte-compile-log-warning): Use it.
(byte-compile--log-warning-for-byte-compile): New function.

* lisp/emacs-lisp/checkdoc.el
(checkdoc-create-error-function): New variable.
(checkdoc-create-error): Use it.
(checkdoc--create-error-for-checkdoc): New function.xo

* lisp/progmodes/flymake-elisp.el (flymake-elisp--checkdoc-1):
Use checkdoc-create-error-function.
(flymake-elisp--batch-byte-compile): Use
byte-compile-log-warning-function.
2017-10-03 14:18:55 +01:00
Glenn Morris
b69bcf3452 ; * lisp/emacs-lisp/cl-print.el (cl-prin1): Whitespace fix. 2017-10-02 13:19:11 -04:00
Paul Eggert
4829a3b033 Merge from origin/emacs-26
5172fa02cc Prefer HTTPS to HTTP for gnu.org
8cdd8b920a Merge from Gnulib
60b7668b89 Keep eww buffer current when looking up CSS on MDN
bd49b6f1b3 Workaround for faulty localtime() under macOS 10.6
913808e224 Doc amendment for syntax-ppss.
98dc91fda8 Remove incorrect NEWS entry about 'find-library'
539d8626cd Remove inadvertent changes to syntax.texi in last commit.
8c18dcbc78 Amend documentation for text-quoting-style becoming a user...
5f76ac150a Make the value nil in text-quoting-style mean what it does...
d5e4e004fa Make text-quoting-style customizable.  Introduce t and new...
1ba3471b9b eshell.texi improvements
7abb5c3960 Fix ns-win.el on GNUstep
07ea5ef99a Fix reference style in org.texi
b03b4f6d79 Improve handling of iconification of child frames (Bug#28611)
ba9139c501 Revert "Don't lose arguments to eshell aliases (Bug#27954)"
43fac3beae Make "unsafe directory" error message more informative (Bu...
c59ddb2120 Fix slot typecheck in eieio-persistent
8b2ab5014b Fix semantic-ia-fast-jump
5b45e7e1c3 Bind vc-region-history
f172894595 Exit macro definition on undefined keys
289fe6c0d1 Reset bidi-paragraph-direction on article rendering
a4f7518817 Fix url-http use of url-current-object
4a755ed421 Avoid assertions in vc-hg.el on MS-Windows
cb93a6ce72 Improve documentation of 'copy-sequence'
200ef6f721 Minor update of ack.texi
cb407d3e87 * doc/emacs/emacs.texi (Acknowledgments): Add more contrib...
82b6c765ff Improve indexing of multi-file/buffer Isearch commands
645ff6c702 Add CAM02 JCh and CAM02-UCS J'a'b' conversions
157007b58e Fix uses of @kindex in the Emacs manual
63a45e8837 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
3ab2f9bbb9 Merge from gnulib
cbc8324488 Prefer HTTPS to HTTP for gnu.org
bbda601d1d ; Spelling fixes
695cf5300b Wait for frame visibility with timeout in w32term too
e1f6e3127a Bring back the busy wait after x_make_frame_visible (Bug#2...
bccf635217 ; * src/gtkutil.c (xg_check_special_colors): Add another G...
f428757cdb Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
26d58f0c58 ; Standardize license notices
73dba0f466 Fix last doc string change in simple.el
2017-10-01 21:58:52 -07:00
Paul Eggert
5172fa02cc Prefer HTTPS to HTTP for gnu.org
This fixes some URLs I omitted from my previous pass,
notably those in lists.gnu.org.  Although lists.gnu.org
does not yet support TLS 1.1, TLS 1.0 is better than nothing.
* lisp/erc/erc.el (erc-official-location):
* lisp/mail/emacsbug.el (report-emacs-bug):
Use https:, not http:.
2017-10-01 19:59:01 -07:00
Paul Eggert
20a09de953 Merge from origin/emacs-26
3ab2f9bbb9 Merge from gnulib
cbc8324488 Prefer HTTPS to HTTP for gnu.org
bbda601d1d ; Spelling fixes
695cf5300b Wait for frame visibility with timeout in w32term too
e1f6e3127a Bring back the busy wait after x_make_frame_visible (Bug#2...
bccf635217 ; * src/gtkutil.c (xg_check_special_colors): Add another G...
26d58f0c58 ; Standardize license notices
61225964ed Revert "bug#28609: simple.el"
a75ab3b3fb bug#28609: simple.el
c7a21430c1 ; * etc/NEWS: Fix last change.
33401b26b1 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
d4b2bbdc73 Merge branch 'emacs-26' into scratch/org-mode-merge
c1ac8c170f Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
af130f900f Fix ert backtrace saving for non-`signal'ed errors (Bug#28...
7476eeaa23 Revert "Fix build on macOS (bug#28571)"
fec63089d5 Fix build on macOS (bug#28571)
0f9a78e770 Add tests for `css-current-defun-name'
88a0dd71f1 In w32fullscreen_hook don't add decorations to undecorated...
18073beb14 Merge branch 'emacs-26' of git.savannah.gnu.org:/srv/git/e...
1eef11b7be Fix doc string of 'dired-listing-switches'
eaefbc26d5 ; Add files missing in ab351d442d
ab351d442d Update Org to v9.1.1
2017-09-29 22:06:33 -07:00
Paul Eggert
98ac36efe4 Merge from origin/emacs-26
1e5949642a ; * src/gtkutil.c (xg_create_frame_widgets): Add FIXME re....
e7c8da4d05 bug#28609: simple.el
827db6b559 Use a separate syntax-ppss cache for narrowed buffers
a2244f417a Improve python3-compatibility of fallback completion (Bug#...
79162cb0db Fix subr-x-tests when running from elc
66d35ae49d * lisp/eshell/esh-util.el (eshell-condition-case): Add deb...
f5e72b04d9 Make sh-indentation into an alias for sh-basic-offset (Bug...
a58d0c590a Fix loading of smie-config rules (Bug#24848)
3a68dec327 ; Update NEWS for the change in eldoc-message
5a41dd0a1f Reset default-directory inside *xref-grep* buffer
49cd561dc6 * test/lisp/tramp-tests.el (tramp-test21-file-links): Spec...
b719f6b20b Loosen strict parsing requirement for desktop files
c7a0c13777 * lisp/xdg.el (xdg-thumb-uri): Fix doc string.
dc6b3560e5 Fix documentation of `make-frame' and related variables an...
3d3778d82a Accept new `always' value for option `buffer-offer-save'
638f64c40a Improve new NS scrolling variable names
d93301242f Document 'replace-buffer-contents' in the manual.
00e4e3e9d2 Fix undecorated frame resizing issues on NS (bug#28512)
820739bbb5 ; * doc/emacs/display.texi (Display Custom): Fix wording.
f2b2201594 ; Spelling and URL fixes
0e143b1fc5 Documentation improvements for 'display-line-numbers'
f656ccdb43 ; Fix typo
d64da52d57 Fix last change in bat-mode.el
908af46abd Fix restoring in GUI sessions desktop saved in TTY sessions
51cbd85454 Improve syntax highlighting in bat-mode
0273916618 Document the 'list-FOO' convention
d24ec58540 Expose viewing conditions in CAM02-UCS metric
a81d5a3d3f Revert "Set frame size to actual requested size (bug#18215)"
0bf066d4b2 Add tests for Edebug
68baca3ee1 Catch more messages in ert-with-message-capture
28e0c410c9 ; * lisp/mouse.el (secondary-selection-exist-p): Doc fix.
31e1d9ef2f Support setting region from secondary selection and vice v...
047f02f00f Fix new copy-directory bug with empty dirs
fbd15836af * doc/lispref/strings.texi (Formatting Strings): Improve i...
f16a8d5dbd Fix 2 testsuite tests for MS-Windows
965cffd89c Rename timer-list to list-timers
a5fec62b51 Provide native touchpad scrolling on macOS
7b3d1c6beb Fix MinGW64 build broken by recent MinGW64 import libraries
c83d0c5fdf Fix crashes in 'move-point-visually' in minibuffer windows
7f3d5f929d * src/emacs.c (usage_message): Don't mention 'find-file'.
6845282200 Fix a minor inaccuracy in the Emacs manual
74d7bb9498 Fix errors in flyspell-post-command-hook
40fdbb01d0 Work on Tramp's file-truename
1a01423b3c Fix bug with make-directory on MS-Windows root
066efb8666 Fix log-view-diff-common when point is after last entry
3f006b56cd Adapt fileio-tests--symlink-failure to Cygwin
ee512e9a82 Ignore buffers whose name begins with a space in save-some...
9e1b5bd92c Improve tramp-interrupt-process robustness
8d4223e61b Minor Tramp doc update
331d0e520f Fix gensym
466df76f7d Cleanup in files-tests.el
6359fe630a Remove old cl-assert calls in 'newline'
059184e645 Avoid crash with C-g C-g in GC
541006c536 Fix format-time-string %Z bug with negative tz
679e05eeb9 message-citation-line-format %Z is now tz name
4e8888d438 Use doc-view or pdf-tools on any window-system
5f28f0db73 Fix bug with min and max and NaNs
37b5e661d2 Fix recently-introduced copy-directory bug
6bbbc38b34 Merge from Gnulib
57249fb297 Fix compatibility problem in Tramp
411bec82c4 Avoid GCC 7 compilation warning in eval.c
34a6774daa ; Partially revert c3445aed51
3003ac0469 Adapt Tramp version.  Do not merge
48d39c39e8 Search for Syntax section when viewing MDN
9d101376b4 Allow smerge-keep-current to work for empty hunks
13aba24add Call vc-setup-buffer in vc-git-log-{in,out}going
1d599df5e0 Fix last change to textmodes/page-ext.el
a726e09a9a * test/src/lcms-tests.el (lcms-cri-cam02-ucs): Skip if lcm...
546413e1ac * test/src/lcms-tests.el (lcms-whitepoint): Skip if lcms2 ...
96aaeaaffa ; * src/lcms.c: Minor stylistic changes in comments.
c3df816585 Fix compilation warning in etags.c
2017-09-29 22:06:14 -07:00
Noam Postavsky
af130f900f Fix ert backtrace saving for non-`signal'ed errors (Bug#28333)
* lisp/emacs-lisp/ert.el (ert--run-test-debugger): Take the frames
above the `debugger' frame, rather than assuming there will be a
`signal' frame.
2017-09-28 19:57:24 -04:00
Mark Oteiza
551594e951 Add indent spec to easy-mmode macros
Ideally these macros should expand to the proper code instead of
relegating all the work to a function call.
* lisp/emacs-lisp/easy-mmode.el (easy-mmode-defmap):
(easy-mmode-define-syntax): Add indent spec.
2017-09-28 07:52:00 -04:00
Mark Oteiza
1f02ae3931 Mark some functions as pure
* lisp/emacs-lisp/byte-opt.el: Add some functions that return integral
values to the builtin list of pure functions.
2017-09-27 16:32:07 -04:00
Dmitry Gutov
827db6b559 Use a separate syntax-ppss cache for narrowed buffers
* lisp/emacs-lisp/syntax.el (syntax-ppss-wide):
New variable, to contain the data from `syntax-ppss-last' and
`syntax-ppss-cache'.
(syntax-ppss-cache, syntax-ppss-last): Remove.
(syntax-ppss-narrow, syntax-ppss-narrow-start): New variables.
(syntax-ppss-flush-cache): Flush both caches.
(syntax-ppss--data): Return the appropriate last result and
buffer cache for the current restriction.
(syntax-ppss, syntax-ppss-debug): Use it (bug#22983).
2017-09-26 02:52:23 +03:00
Noam Postavsky
a58d0c590a Fix loading of smie-config rules (Bug#24848)
* lisp/emacs-lisp/smie.el (smie-config--setter): Use `set-default'
instead of `setq-default'.
(smie-config): Use `custom-initialize-set' instead of
`custom-initialize-default' as the :initialize argument.

* lisp/progmodes/sh-script.el (sh-learn-buffer-indent): Mention that
we call `smie-config-guess' so that the user will have a chance to
find the correct docstring to consult.  Remove hedging comments
regarding use of abnormal hooks.
2017-09-25 19:39:19 -04:00
Paul Eggert
f2b2201594 ; Spelling and URL fixes 2017-09-23 00:36:56 -07:00
Mark Oteiza
f656ccdb43 ; Fix typo
* lisp/emacs-lisp/subr-x.el: Nix extra parenthesis.
2017-09-22 16:34:31 -04:00
Gemini Lasswell
68baca3ee1 Catch more messages in ert-with-message-capture
* lisp/emacs-lisp/ert-x.el (ert-with-message-capture): Capture
messages from prin1, princ and print.
(ert--make-message-advice): New function.
(ert--make-print-advice): New function.
2017-09-21 13:35:45 -07:00
Mark Oteiza
965cffd89c Rename timer-list to list-timers
* doc/emacs/anti.texi (Antinews):
* doc/lispref/os.texi (Timers):
* etc/NEWS:
* lisp/emacs-lisp/timer-list.el:
(timer-list-mode): Rename timer-list to list-timers.
2017-09-19 22:24:23 -04:00
Gemini Lasswell
dee96f4a17 * lisp/emacs-lisp/cl-macs.el (cl-letf): Fix Edebug spec (bug#24765) 2017-09-16 07:36:18 -07:00
Mark Oteiza
30c955b172 Use cl-print in timer list
* lisp/emacs-lisp/timer-list.el (timer-list): Use cl-print
for handling functions.
(timer-list-mode): Capitalize major mode name.  Set bidi direction
as in tabulated-list-mode.
2017-09-15 23:18:54 -04:00
Mark Oteiza
117f28430a Bind n,p in timer-list
* lisp/emacs-lisp/timer-list.el (timer-list-mode-map): Bind n and p
to next- and previous-line, respectively.
2017-09-14 19:52:09 -04:00