1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-15 09:47:20 +00:00
Commit Graph

69652 Commits

Author SHA1 Message Date
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
Noam Postavsky
5980de3727 Disable python native completion on w32 (Bug#28580)
* lisp/progmodes/python.el
(python-shell-completion-native-disabled-interpreters): For windows-nt
systems, put an empty string to match interpreters.
2017-10-15 13:58:45 -04:00
Noam Postavsky
616b4c5956 Let select-frame-by-name choose any frame when called from lisp (Bug#25521)
* lisp/frame.el (select-frame-by-name): Choose from the whole list of
frames in the non-interactive part, if not found on the current
display.
2017-10-15 13:58:45 -04:00
Eli Zaretskii
8eb3c01dbd * lisp/dired-aux.el (dired-create-directory): Doc fix. 2017-10-15 19:36:58 +03:00
K. Handa
f95cd5cd70 Improve customization of arabic-shaper-ZWNJ-handling.
Make the effect of customizing arabic-shaper-ZWNJ-handling appear
immediately.
* lisp/language/misc-lang.el (arabic-shaper-ZWNJ-handling): Add :set
value.
* src/composite.c (Fclear_composition_cache): New function.
(syms_of_composite): Defsubr it.
2017-10-15 23:15:47 +09:00
Charles A. Roelli
a7f154688d Improve customization type of 'mouse-drag-and-drop-region'
* lisp/mouse.el (mouse-drag-and-drop-region): Provide a more
precise customization type.
2017-10-15 12:40:34 +02:00
Paul Eggert
864734d112 ; Prefer https: to http: in GNU URLs 2017-10-14 19:19:24 -07:00
Simen Heggestøyl
ff33053012 Fix indentation bug in multi-line CSS selectors
* lisp/textmodes/css-mode.el (css--colon-inside-selector-p): Fix
indentation of multi-line CSS selectors that include both a
pseudo-class and parenthesis.

* test/manual/indent/css-mode.css: Add test for the above change.
2017-10-13 21:57:52 +02:00
João Távora
413978727c Simplify Flymake user documentation
Fix some confusing parts of Flymake user documentation, like a
repeated listing of situations leading to a syntax check.
Documentation is now divided into three chapters only: "Using
Flymake", "Extending Flymake", and a chapter for the legacy backend.

Obsolete mention of "errors" and "lines" is replaced by
"diagnostics/problems" and "regions" where appropriate.

* doc/misc/flymake.texi (Overview of Flymake): Delete chapter.
(Using Flymake): Merge with chapter "Overview of Flymake".
(Installing Flymake): Delete chapter.
(Flymake mode, Running the syntax check)
(Navigating to error lines): Delete sections.
(Syntax check statuses): Review and augment with x-references.
(Backend exceptions): Mention shortcut in menu.

* lisp/progmodes/flymake.el (flymake-menu): Tweak minor mode
menu to not speak of "errors".
(flymake-goto-next-error, flymake-goto-prev-error): Fix
wording.
2017-10-12 12:30:23 +01:00
Noam Postavsky
b78332c3c6 Don't use (format "%s" ...) for string copying (Bug#28774)
As of 2017-10-04 'Speed up (format "%s" STRING) and the like', (format
"%s" STRING) no longer produces a new string.
* lisp/ido.el (ido-completions): Use `copy-sequence' to make a new
string, so that we can add text properties to (copies of) symbol
names.
2017-10-11 20:53:22 -04:00
Nicolas Petton
906224eba1
; * Update ldefs-boot.el 2017-10-11 22:55:13 +02:00
João Távora
0526aac4eb Unbreak the button in the Flymake diagnostics buffer again
Adding the 'keymap' property enabled RET but broke the mouse-action.

* lisp/progmodes/flymake.el
(flymake--diagnostics-buffer-entries): Use 'action' instead of 'keymap'.
2017-10-10 17:21:14 +01:00
Mark Oteiza
c89f001de1 Add mode map to Flymake diagnostic button
* lisp/progmodes/flymake.el (flymake--diagnostics-buffer-entries): Add
keymap propery.
2017-10-10 17:21:04 +01:00
João Távora
f9cd8ee681 Tweak the Flymake diagnostics buffer again
* lisp/progmodes/flymake.el
(flymake-diagnostics-buffer-mode-map): Don't bind [mouse-1].
(flymake-show-diagnostic): Rename from
flymake-show-diagnostic-at-point.  Really use another window.
(flymake-goto-diagnostic): Rename from
flymake-goto-diagnostic-at-point.
(flymake--diagnostics-buffer-entries): Use a button just for
the message bit.
2017-10-10 17:20:01 +01:00
Mark Oteiza
0e83f5f279 Simplify Flymake diagnostics buffer UX
Don't create text-buttons unnecessarily, just bind RET and SPC in the
diagnostics buffer to a command that figures out which diagnostic it
was invoked on.

* lisp/progmodes/flymake.el
(flymake--diagnostics-buffer-mode-keymap): Renamed from
flymake--diagnostics-buffer-button-keymap.
(flymake-show-diagnostic-at-point): Don't take a button.
(flymake-goto-diagnostic-at-point): Don't pass button to
flymake-show-diagnostic-at-point.
(flymake--diagnostics-buffer-entries): Simplify.
2017-10-10 17:20:01 +01:00
João Távora
cf4a15b9b6 First stab at a Flymake diagnostics buffer
The diagnostics buffer summarizes the diagnostics of a buffer in a
tabulated list and is permanently updated after each Flymake check.

* lisp/progmodes/flymake.el (flymake--handle-report): Call
flymake-show-diagnostics-buffer under certain conditions.
(flymake-menu, flymake--diagnostics-buffer-source)
(flymake--diagnostics-buffer-button-keymap)
(flymake-show-diagnostic-at-point)
(flymake-goto-diagnostic-at-point)
(flymake--diagnostics-buffer-entries)
(flymake-diagnostics-buffer-mode)
(flymake--diagnostics-buffer-name)
(flymake-show-diagnostics-buffer): New definitions.
2017-10-10 17:20:01 +01:00
João Távora
042b3cfbd2 Fix two Flymake bugs
* lisp/progmodes/flymake.el (define-fringe-bitmap): Protect
against --without-x.
(flymake--mode-line-format): Ensure mode-line's mouse-4 and mouse-5 work
in their own windows.
2017-10-10 13:08:41 +01:00
João Távora
3dfa2ca4dc Don't log "emergencies" in the Flymake legacy backend
* lisp/progmodes/flymake-proc.el (flymake-proc--panic)
(flymake-proc-legacy-flymake): Don't log "emergencies"
2017-10-10 13:08:41 +01:00
João Távora
1c2e188440 Add full documentation on new Flymake API
Also, as a minor addition to this API, set flymake-text
on the diagnostic overlay.  This enables a good example in
the section "Customization Flymake annotations".

* doc/misc/flymake.texi (Overview of Flymake)
(Syntax check statuses): Rework.
(Backend exceptions): Rename from "Troubleshooting"
(Customizable variables): Add flymake-start-on-flymake-mode. Rework.
(Extending Flymake): Write chapter.
(Customizing Flymake annotations, Flymake backends)
(Flymake utility functions, An annotated example backend):
New sections and subsections

* lisp/progmodes/flymake.el (flymake-diagnostic-functions)
(flymake-diagnostic-types-alist): Rework docstring.
(flymake--highlight-line): Set and use flymake-text property in overlay.
(flymake-goto-next-error, flymake-goto-prev-error): Fix funny quotes.
2017-10-10 13:08:41 +01:00
João Távora
0f7f677f82 Fix some Flymake docstrings and messages
* lisp/progmodes/flymake.el
(flymake-start-on-flymake-mode): fix typo.
(flymake-mode): Add docstring.
(flymake-mode-line-format): Fix help-echo indications. mouse-2
describes flymake-mode.
2017-10-10 13:08:41 +01:00
João Távora
21e7075781 Make three new Flymake commands for debugging common problems
* lisp/progmodes/flymake.el (flymake-running-backends)
(flymake-disabled-backends)
(flymake-reporting-backends): Make interactive.
(flymake--collect): Take optional arg.
2017-10-10 13:08:41 +01:00
Paul Eggert
5d51403ceb ; Typo fixes, mostly repeated words 2017-10-09 22:55:06 -07:00
Paul Eggert
0d004ed01a ; Spelling fixes 2017-10-09 22:55:05 -07:00
Stefan Monnier
6c2b1e89ef * lisp/gnus/message.el: Improve last commit
(message-clone-locals): Don't mistakenly match other variables whose
name happens to include "message-default-charset".
2017-10-09 12:33:07 -04:00
Ken Olum
7ed7360855 Fix problems when editing raw undecoded message (Bug#28671)
* lisp/mail/rmailedit.el (rmail-cease-edit): If rmail-old-mime-state
is set, meaning that we are editing the raw message, do not
encode it again.  Delete old body after, not before, inserting
new, to avoid moving marker at beginning of next message.
2017-10-09 16:54:00 +03:00
Eli Zaretskii
aca5f0072b Avoid encoding errors in message.el
* lisp/gnus/message.el (message-clone-locals): Don't clone
message-default-charset.  (Bug#25645)
2017-10-09 16:46:23 +03:00
Eli Zaretskii
0c36663db5 Improve doc string and prompt of 'grep-read-files'
* lisp/progmodes/grep.el (grep-read-files): Clarify in the doc
string and in the prompt that shell wildcards can be used.
Suggested by Allen Li <vianchielfaura@gmail.com>.  (Bug#28615)
2017-10-09 16:39:25 +03:00
Glenn Morris
5b81f65ad0 ; * lisp/emacs-lisp/rmc.el: Minor fix for copyright and license. 2017-10-09 07:44:37 -04:00
João Távora
11b37b4a9f Be lazy when starting Flymake checks
Don't start the check immediately if the buffer is not being
displayed.  Wait until it is, using window-configuration-change-hook.

This enables the user to batch-enable flymake-mode on many buffers and
not have that operation exhaust system resources for checking each
one.  Likewise, an editing or save operation in a currently
non-displayed buffer does not immediately start a check.

* lisp/progmodes/flymake.el (flymake-start-on-flymake-mode):
Rename from flymake-start-syntax-check-on-find-file.
(flymake-start-syntax-check-on-find-file): Obsolete alias for
flymake-start-on-flymake-mode.
(flymake-start): Redesign.  Affect the global post-command-hook
and local window-configuraiton-change-hook.
(flymake--schedule-timer-maybe)
(flymake-after-change-function, flymake-after-save-hook): Pass
t to flymake-start.

* test/lisp/progmodes/flymake-tests.el (flymake-tests--call-with-fixture)
(dummy-backends, recurrent-backend): Start flymake check
explicitly and immediately.
2017-10-09 11:12:57 +01:00
Eli Zaretskii
36ed9a9ede Fix last change in frameset.el
* lisp/frameset.el (frameset-filter-font-param): Fix a thinko in
filtering the 'font' parameter.  (Bug#17352)
2017-10-09 10:40:37 +03:00
Alexander Gramiak
e2150d994a Add line-number faces to the display-line-numbers group
See https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00151.html
and its resulting thread.

* lisp/display-line-numbers.el (display-line-numbers): Add to the
convenience group.
* lisp/faces.el (line-number):
(line-number-current-line): Add to the display-line-numbers group.
2017-10-08 17:53:38 -06:00
Alexander Gramiak
89b0023044 Increase xterm click count only within double-click-fuzz
* lisp/xt-mouse.el (xterm-mouse-event): Save the last click's position
and check it against the current click's position.  (Bug#28658)
2017-10-08 17:20:46 -06:00
Alan Third
745aea2296 Change pause in fullscreen toggling for NS port (bug#28496)
* lisp/frame.el (toggle-frame-fullscreen): Replace sit-for with
sleep-for, and reduce time.
2017-10-08 19:26:34 +01:00
Michael Albinus
1cd334cd47 Handle PARENTS properly in tramp-*-handle-make-directory
* lisp/net/tramp-adb.el (tramp-adb-handle-make-directory):
* lisp/net/tramp-gvfs.el (tramp-gvfs-handle-make-directory):
Handle PARENTS properly.

* test/lisp/net/tramp-tests.el (tramp-test13-make-directory):
Extend test.
2017-10-08 13:55:20 +02:00
K. Handa
a9b72976de Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into emacs-26 2017-10-08 11:56:06 +09:00
K. Handa
64baaff8c5 New option for handling ZWNJ in Arabic text rendering
Provide a new option 'arabic-shaper-ZWNJ-handling' that controls how
to display ZWNJ in Arabic text rendering (Bug#28339).
* lisp/language/misc-lang.el: Register arabic-shape-gstring in
composition-function-table.
(arabic-shaper-ZWNJ-handling): New variable.
(arabic-shape-log): New variable.
(arabic-shape-gstring): New function.
* lisp/composite.el (lgstring-remove-glyph): New function.
2017-10-08 11:48:01 +09:00
Noam Postavsky
c194fb61c6 Make python prettify symbols into a defvar (Bug#28713)
* lisp/progmodes/python.el (python-prettify-symbols-alist): New
variable.
(python--prettify-symbols-alist): Make into obsolete alias for
`python-prettify-symbols-alist'.
2017-10-07 19:19:05 -04:00
Alan Third
6dfc778d54 Fix fullscreen crash on macOS (bug#28496)
* lisp/frame.el (toggle-frame-fullscreen): Wait for animation to
complete on macOS.
2017-10-07 21:57:16 +01:00
Michael Albinus
bc80da5bd3 Support gio tool in Tramp
"gvfs-<command>" utilities have been deprecated in GVFS 1.31.1.  We
must use "gio <command>" tool instead.

* lisp/net/tramp-gvfs.el (tramp-gvfs-gio-mapping): New defconst.
(tramp-gvfs-handle-file-notify-add-watch): Support also "gio monitor"
(tramp-gvfs-gio-tool-p): New defun.
(tramp-gvfs-send-command): Use it.  Call gio tool if available.
2017-10-07 20:17:32 +02:00
João Távora
349e0eb5ff Fix flymake-goto-next-error when message has %-constructs
* lisp/progmodes/flymake.el (flymake-goto-next-error): Fix
message call.  Add missing period in docstring.
2017-10-07 16:57:33 +01: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
Eli Zaretskii
2d58d51329 Avoid byte-compilation warnings in message.el
* lisp/gnus/message.el: Require 'subr-x' when compiling, to
avoid compiler warnings.
2017-10-06 20:49:39 +03:00
João Távora
fa92f0c447 Cleanup emacs-lisp-mode's use of Flymake
* lisp/progmodes/elisp-mode.el (elisp-flymake--checkdoc-1):
Delete.
(elisp-flymake-checkdoc): Incorporate old
elisp-flymake--checkdoc-1.
(elisp-flymake--byte-compile-done): Simplify.  Don't cleanup
here.
(elisp-flymake-byte-compile): Remove spurious interactive spec.
Simplify.  Cleanup on every possible exit.
2017-10-06 18:12:58 +01: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
Lele Gaifax
9655937da4 Fix typos in Flymake documentation
* doc/misc/flymake.texi (Syntax check statuses)
(Adding support for a new syntax check tool)
(Implementation overview, Locating the buildfile): Fix typos.

* lisp/progmodes/flymake-proc.el (flymake-proc--report-fn)
(flymake-proc--find-possible-master-files):Fix typos.
(flymake-proc--panic)
(flymake-proc-legacy-flymake): Fix function reference in doc.

* lisp/progmodes/flymake.el (flymake-error)
(flymake-diagnostic-functions): Fix typos.
(flymake-diagnostic-types-alist): Rephrase and fix typos.
(flymake--backend-state): Fix typos and rephrase.
(flymake--handle-report): Delete empty line.
(flymake--disable-backend)
(flymake--run-backend): Fix typos.
(flymake-goto-next-error, flymake-goto-prev-error): Rephrase.
2017-10-06 14:09:49 +01:00
Eli Zaretskii
e5bff696bc Revert last change in 'shr-descend'
* lisp/net/shr.el (shr-descend): Revert the part of the last
change which introduced calls to shr-indirect-call into this
function.  Add a comment explaining the rationale for that.
(Bug#28402)
2017-10-06 15:42:22 +03:00
João Távora
6b88f78aa1 Don't error when turning on Flymake with no known backends
Leave it to the mode line indicator to inform the user that there
is still some configuration to do.

* lisp/progmodes/flymake.el (flymake-mode): Simplify.
2017-10-06 00:07:53 +01:00
João Távora
03eab7a05e Delete a Flymake obsolete alias that can't possibly work
The function `flymake-ler-make-ler' can't possibly work as an backward
compatible interface to existing extensinos (even purely hypothetical
ones, since none are known).  This is because every diagnostic
considered by Flymake has to passed to a report-fn function.

* lisp/progmodes/flymake.el (flymake-ler-make-ler): Delete.
2017-10-06 00:07:03 +01: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