Commit Graph

130750 Commits

Author SHA1 Message Date
Michael Albinus
e8a7c41b4e Format shell commands in tramp.texi
* doc/misc/tramp.texi (Obtaining Tramp, Remote shell setup):
Format shell commands better.
2017-10-11 10:57:29 +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
e4a1556392 * etc/NEWS (Flymake): Rewrite entry. 2017-10-10 15:57:52 +01:00
Eli Zaretskii
00adeb43e9 Improve the Flymake manual
* doc/misc/flymake.texi: Add a 'coding' cookie.  Add a
@syncodeindex directive for @vindex.  Use 2 spaces between
sentences.  Lower-case @cindex entries.
(Overview of Flymake): Fix use of @itemize and @pxref.  Fix
punctuation and markup.
(Backend exceptions): Use @emph instead of @dfn.  Add more
indexing.
(Customizable variables, Extending Flymake): Improve wording.
(Flymake error types): Fix usage of @itemize.  Improve wording.
(Backend functions): Fix punctuation.  Fix markup.  Add a
cross-reference to ELisp manual.
(Flymake utility functions): Add a cross-reference to ELisp manual.
(An annotated example backend): Fix punctuation and typos.
(Flymake mode, Running the syntax check)
(Navigating to error lines, Backend exceptions)
(Customizable variables, Flymake error types, Backend functions)
(Flymake utility functions, Proc customization variables)
(Locating a master file, Locating the buildfile)
(Starting the syntax check process, Parsing the output)
(Interaction with other modes): Fix indexing.  Add index entries
for functions, variables, and concepts.
2017-10-10 17:08:51 +03:00
Eli Zaretskii
44c6401733 ; * etc/NEWS: Clarify the description of "---" and "+++". 2017-10-10 15:24:09 +03: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
Noam Postavsky
c9be9a3678 ; INSTALL.REPO: Add -d to "thorough cleaning" suggestion. 2017-10-10 05:36:59 -04: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
Alexander Gramiak
0485aa76c9 ; * src/lread.c (syms_of_lread) <module-file-suffix>: Fix typo 2017-10-09 14:30:29 -06:00
Nicolas Petton
ba7fb37d6a * admin/authors.el (authors-renamed-files-alist): addition. 2017-10-09 21:51:44 +02:00
Nicolas Petton
14dca4a79a ; ChangeLog.3 fixes 2017-10-09 21:51:44 +02:00
Paul Eggert
f352d0257c Fix PWD check on DOS_NT
* src/sysdep.c (get_current_dir_name_or_unreachable):
Do not consider a file name like "a:b" to be absolute on DOS_NT.
2017-10-09 10:48:56 -07:00
Paul Eggert
934f08f3de Fix unlikely overflows with wd length
* src/sysdep.c (get_current_dir_name_or_unreachable):
Avoid integer overflow if working directory name is absurdly long.
When allocating memory for getcwd, do not exceed MAXPATHLEN.
2017-10-09 10:48:55 -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
Eli Zaretskii
2da83c9d36 Avoid assertion violations when line numbers are displayed
* src/xdisp.c (redisplay_window): Clear the window's desired glyph
matrix before calling try_window with the same starting	point.
This avoids assertion violations when switching from a buffer
without line numbers to a buffer with line numbers.  (Bug28710)
2017-10-09 15:28:16 +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
Martin Rudalics
62e5c119af Describe how window dividers can replicate vertical borders (Bug#27830)
* doc/emacs/frames.texi (Scroll Bars): Describe how window
dividers can be used to replicate vertical borders when scroll
bars are disabled (Bug#27830).
* doc/emacs/frames.texi (Window Dividers): Mention their use
in replicating vertical borders.
2017-10-09 09:29:52 +02: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
Paul Eggert
f1c73de47d ; Merge from Gnulib (comment changes only) 2017-10-07 23:08:46 -07:00
Paul Eggert
7c2c117c91 Improve test for unreachable dirs
* src/sysdep.c (get_current_dir_name_or_unreachable):
New function, with most of the old contents of
emacs_get_current_dir_name.
(emacs_get_current_dir_name): Use it.  Use a simpler
test for unreachable directory strings, and also apply
it to getcwd etc. (Bug#27871)
2017-10-07 22:57:12 -07:00
Paul Eggert
2202952b83 * src/xsmfns.c (x_session_initialize): Fix memory leak. 2017-10-07 22:57:11 -07: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
Alan Third
3db0dc2168 Fix crash when closing fullscreen frame on macOS (bug#28661)
* src/nsterm.m (EmacsView::windowWillResize): Return new frame size
unmodified if the frame isn't live.
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
Piotr Trojanek
0fa353b504 * src/gnutls.c (syms_of_gnutls): Remove duplicated call to DEFSYM.
Copyright-paperwork-exempt: yes.
2017-10-07 17:54:36 +03:00
Eli Zaretskii
dc6ae15a8d Move the entry about 'format' into Incompatible Lisp Changes
* etc/NEWS: Move the entry about 'format' refraining from allocating
new strings into Incompatible Lisp Changes.  (Bug#28625)
2017-10-07 14:32:12 +03:00
Eli Zaretskii
75174a632d Fix glitches in displaying TTY menus
* src/dispnew.c (update_frame_line): Accept an additional argument
UPDATING_MENU_P; if non-zero, home the cursor before updating a
frame's line.  All callers changed.
(update_frame_1): Accept an additional argument UPDATING_MENU_P,
and pass it to update_frame_line.  All callers changed.
(update_frame_with_menu): Call update_frame_1 with last argument
non-zero.  (Bug#17497)
2017-10-07 14:20:42 +03: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