]> git.eshelyaron.com Git - emacs.git/log
emacs.git
7 years agoFix fontification of ALIGN_STACK functions
Eli Zaretskii [Sat, 14 Oct 2017 08:17:34 +0000 (11:17 +0300)]
Fix fontification of ALIGN_STACK functions

* .dir-locals.el (c-mode) <c-noise-macro-names>: Add
"ALIGN_STACK", to correctly fontify functions with this attribute.

7 years agoMake sure thread stack is properly aligned on MS-Windows
Eli Zaretskii [Sat, 14 Oct 2017 08:13:47 +0000 (11:13 +0300)]
Make sure thread stack is properly aligned on MS-Windows

* src/systhread.c: Include w32term.h instead of windows.h.
(w32_beginthread_wrapper): Add ALIGN_STACK attribute, to ensure
the thread's stack is correctly aligned.
* src/w32term.h (ALIGN_STACK): Update commentary.

7 years agoDo not under-align pseudovectors
Paul Eggert [Sat, 14 Oct 2017 07:55:25 +0000 (00:55 -0700)]
Do not under-align pseudovectors

Problem reported by Fabrice Popineau in:
https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00357.html
Also see diagnosis by Eli Zaretskii in:
https://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00476.html
* src/alloc.c (vector_alignment):
Now a multiple of alignof (max_align_t).

7 years agoFix indentation bug in multi-line CSS selectors
Simen Heggestøyl [Fri, 13 Oct 2017 19:48:12 +0000 (21:48 +0200)]
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.

7 years ago; * etc/NEWS: Grammar and spelling fixes
Charles A. Roelli [Fri, 13 Oct 2017 18:51:13 +0000 (20:51 +0200)]
; * etc/NEWS: Grammar and spelling fixes

* etc/NEWS (Changes in Specialized Modes and Packages in Emacs 26.1)
(Lisp Changes in Emacs 26.1): Fix the grammar and spelling of some
entries.

7 years agognutls_mac_get_nonce_size has been added in gnutls 3.3
Andreas Schwab [Fri, 13 Oct 2017 09:47:29 +0000 (11:47 +0200)]
gnutls_mac_get_nonce_size has been added in gnutls 3.3

* src/gnutls.c (HAVE_GNUTLS_MAC_GET_NONCE_SIZE)
[GNUTLS_VERSION_NUMBER >= 0x030300]: Define.
(gnutls_mac_get_nonce_size): Depend on
HAVE_GNUTLS_MAC_GET_NONCE_SIZE.
(Fgnutls_macs): Use 0 for :mac-algorithm-noncesize if
!HAVE_GNUTLS_MAC_GET_NONCE_SIZE.

7 years ago; * CONTRIBUTE: More suggestions for using US English.
Eli Zaretskii [Fri, 13 Oct 2017 09:04:40 +0000 (12:04 +0300)]
; * CONTRIBUTE: More suggestions for using US English.

7 years ago* CONTRIBUTE: Suggest American English.
Paul Eggert [Fri, 13 Oct 2017 05:38:28 +0000 (22:38 -0700)]
* CONTRIBUTE: Suggest American English.

7 years agoFix this-command-keys for "M-x foo" commands
Eli Zaretskii [Thu, 12 Oct 2017 20:38:48 +0000 (23:38 +0300)]
Fix this-command-keys for "M-x foo" commands

* src/keyboard.c (Fset__this_command_keys): Don't assume KEYS is a
unibyte string.  (Bug#28798)

7 years agoLet rename-file rename dirs across filesystems
Paul Eggert [Thu, 12 Oct 2017 20:08:53 +0000 (13:08 -0700)]
Let rename-file rename dirs across filesystems

Problem diagnosed by Andreas Schwab (Bug#28792#65).
This fixes a bug that I introduced in
2017-09-10T22:39:24@eggert@cs.ucla.edu
"Fix race with rename-file etc. with dir NEWNAME".
* src/fileio.c (Frename_file): Copy a source directory across
file system boundaries even if its name does not end in slash.

7 years agoSimplify Flymake user documentation
João Távora [Thu, 12 Oct 2017 11:11:26 +0000 (12:11 +0100)]
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.

7 years ago* etc/NEWS: Mention the new version of Org.
Eli Zaretskii [Thu, 12 Oct 2017 07:52:44 +0000 (10:52 +0300)]
* etc/NEWS: Mention the new version of Org.

7 years agoDon't use (format "%s" ...) for string copying (Bug#28774)
Noam Postavsky [Thu, 12 Oct 2017 00:23:40 +0000 (20:23 -0400)]
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.

7 years agoMake frame-list-z-order on NS match Windows behaviour (bug#28788)
Alan Third [Wed, 11 Oct 2017 21:17:10 +0000 (22:17 +0100)]
Make frame-list-z-order on NS match Windows behaviour (bug#28788)

* src/nsfns.m (Fns_frame_list_z_order): If terminal isn't a frame,
ignore it rather than returning nil.

7 years ago; * Update ldefs-boot.el emacs-26.0.90
Nicolas Petton [Wed, 11 Oct 2017 20:55:13 +0000 (22:55 +0200)]
; * Update ldefs-boot.el

7 years agoBump Emacs version to 26.0.90
Nicolas Petton [Wed, 11 Oct 2017 20:39:17 +0000 (22:39 +0200)]
Bump Emacs version to 26.0.90

* README:
* configure.ac:
* msdos/sed2v2.inp:
* nt/README.W32: Bump Emacs version.

7 years agoUpdate authors.el
Nicolas Petton [Wed, 11 Oct 2017 13:12:09 +0000 (15:12 +0200)]
Update authors.el

* admin/authors.el (authors-valid-file-names)
(authors-renamed-files-alist): Additions.

7 years ago* admin/authors.el (authors-aliases): Additions.
Nicolas Petton [Wed, 11 Oct 2017 13:11:14 +0000 (15:11 +0200)]
* admin/authors.el (authors-aliases): Additions.

7 years ago; * ChangeLog.3: ChangeLog fixes.
Nicolas Petton [Wed, 11 Oct 2017 13:10:28 +0000 (15:10 +0200)]
; * ChangeLog.3: ChangeLog fixes.

7 years ago* ChangeLog.3: Update.
Nicolas Petton [Wed, 11 Oct 2017 13:09:02 +0000 (15:09 +0200)]
* ChangeLog.3: Update.

7 years agoFix docstring style for 'functionp'
Radon Rosborough [Wed, 11 Oct 2017 13:08:18 +0000 (16:08 +0300)]
Fix docstring style for 'functionp'

* src/eval.c (functionp): Make docstring start with verb.
(Bug#28781)

7 years agoFormat shell commands in tramp.texi
Michael Albinus [Wed, 11 Oct 2017 08:57:29 +0000 (10:57 +0200)]
Format shell commands in tramp.texi

* doc/misc/tramp.texi (Obtaining Tramp, Remote shell setup):
Format shell commands better.

7 years agoUnbreak the button in the Flymake diagnostics buffer again
João Távora [Tue, 10 Oct 2017 15:20:51 +0000 (16:20 +0100)]
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'.

7 years agoAdd mode map to Flymake diagnostic button
Mark Oteiza [Tue, 10 Oct 2017 14:24:45 +0000 (10:24 -0400)]
Add mode map to Flymake diagnostic button

* lisp/progmodes/flymake.el (flymake--diagnostics-buffer-entries): Add
keymap propery.

7 years agoTweak the Flymake diagnostics buffer again
João Távora [Sun, 8 Oct 2017 23:12:48 +0000 (00:12 +0100)]
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.

7 years agoSimplify Flymake diagnostics buffer UX
Mark Oteiza [Sun, 8 Oct 2017 21:42:31 +0000 (22:42 +0100)]
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.

7 years agoFirst stab at a Flymake diagnostics buffer
João Távora [Sat, 7 Oct 2017 15:52:45 +0000 (16:52 +0100)]
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.

7 years ago* etc/NEWS (Flymake): Rewrite entry.
João Távora [Tue, 10 Oct 2017 14:57:52 +0000 (15:57 +0100)]
* etc/NEWS (Flymake): Rewrite entry.

7 years agoImprove the Flymake manual
Eli Zaretskii [Tue, 10 Oct 2017 14:08:51 +0000 (17:08 +0300)]
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.

7 years ago; * etc/NEWS: Clarify the description of "---" and "+++".
Eli Zaretskii [Tue, 10 Oct 2017 12:24:09 +0000 (15:24 +0300)]
; * etc/NEWS: Clarify the description of "---" and "+++".

7 years agoFix two Flymake bugs
João Távora [Tue, 10 Oct 2017 11:47:46 +0000 (12:47 +0100)]
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.

7 years agoDon't log "emergencies" in the Flymake legacy backend
João Távora [Tue, 10 Oct 2017 11:30:42 +0000 (12:30 +0100)]
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"

7 years agoAdd full documentation on new Flymake API
João Távora [Tue, 10 Oct 2017 01:14:46 +0000 (02:14 +0100)]
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.

7 years agoFix some Flymake docstrings and messages
João Távora [Mon, 9 Oct 2017 20:51:02 +0000 (21:51 +0100)]
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.

7 years agoMake three new Flymake commands for debugging common problems
João Távora [Mon, 9 Oct 2017 20:33:09 +0000 (21:33 +0100)]
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.

7 years ago; INSTALL.REPO: Add -d to "thorough cleaning" suggestion.
Noam Postavsky [Tue, 10 Oct 2017 09:36:59 +0000 (05:36 -0400)]
; INSTALL.REPO: Add -d to "thorough cleaning" suggestion.

7 years ago; Typo fixes, mostly repeated words
Paul Eggert [Tue, 10 Oct 2017 05:53:19 +0000 (22:53 -0700)]
; Typo fixes, mostly repeated words

7 years ago; Spelling fixes
Paul Eggert [Tue, 10 Oct 2017 00:15:42 +0000 (17:15 -0700)]
; Spelling fixes

7 years ago; * src/lread.c (syms_of_lread) <module-file-suffix>: Fix typo
Alexander Gramiak [Mon, 9 Oct 2017 20:22:58 +0000 (14:22 -0600)]
; * src/lread.c (syms_of_lread) <module-file-suffix>: Fix typo

7 years ago* admin/authors.el (authors-renamed-files-alist): addition.
Nicolas Petton [Mon, 9 Oct 2017 19:50:53 +0000 (21:50 +0200)]
* admin/authors.el (authors-renamed-files-alist): addition.

7 years ago; ChangeLog.3 fixes
Nicolas Petton [Mon, 9 Oct 2017 19:50:44 +0000 (21:50 +0200)]
; ChangeLog.3 fixes

7 years agoFix PWD check on DOS_NT
Paul Eggert [Mon, 9 Oct 2017 17:47:56 +0000 (10:47 -0700)]
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.

7 years agoFix unlikely overflows with wd length
Paul Eggert [Mon, 9 Oct 2017 17:30:40 +0000 (10:30 -0700)]
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.

7 years ago* lisp/gnus/message.el: Improve last commit
Stefan Monnier [Mon, 9 Oct 2017 16:33:07 +0000 (12:33 -0400)]
* lisp/gnus/message.el: Improve last commit

(message-clone-locals): Don't mistakenly match other variables whose
name happens to include "message-default-charset".

7 years agoFix problems when editing raw undecoded message (Bug#28671)
Ken Olum [Mon, 9 Oct 2017 13:54:00 +0000 (16:54 +0300)]
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.

7 years agoAvoid encoding errors in message.el
Eli Zaretskii [Mon, 9 Oct 2017 13:46:23 +0000 (16:46 +0300)]
Avoid encoding errors in message.el

* lisp/gnus/message.el (message-clone-locals): Don't clone
message-default-charset.  (Bug#25645)

7 years agoImprove doc string and prompt of 'grep-read-files'
Eli Zaretskii [Mon, 9 Oct 2017 13:39:25 +0000 (16:39 +0300)]
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)

7 years agoAvoid assertion violations when line numbers are displayed
Eli Zaretskii [Mon, 9 Oct 2017 12:28:16 +0000 (15:28 +0300)]
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)

7 years ago; * lisp/emacs-lisp/rmc.el: Minor fix for copyright and license.
Glenn Morris [Mon, 9 Oct 2017 11:44:37 +0000 (07:44 -0400)]
; * lisp/emacs-lisp/rmc.el: Minor fix for copyright and license.

7 years agoBe lazy when starting Flymake checks
João Távora [Mon, 9 Oct 2017 10:12:57 +0000 (11:12 +0100)]
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.

7 years agoFix last change in frameset.el
Eli Zaretskii [Mon, 9 Oct 2017 07:40:37 +0000 (10:40 +0300)]
Fix last change in frameset.el

* lisp/frameset.el (frameset-filter-font-param): Fix a thinko in
filtering the 'font' parameter.  (Bug#17352)

7 years agoDescribe how window dividers can replicate vertical borders (Bug#27830)
Martin Rudalics [Mon, 9 Oct 2017 07:29:52 +0000 (09:29 +0200)]
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.

7 years agoAdd line-number faces to the display-line-numbers group
Alexander Gramiak [Sat, 7 Oct 2017 21:02:01 +0000 (15:02 -0600)]
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.

7 years agoIncrease xterm click count only within double-click-fuzz
Alexander Gramiak [Sat, 30 Sep 2017 21:47:56 +0000 (15:47 -0600)]
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)

7 years agoChange pause in fullscreen toggling for NS port (bug#28496)
Alan Third [Sun, 8 Oct 2017 18:26:34 +0000 (19:26 +0100)]
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.

7 years agoHandle PARENTS properly in tramp-*-handle-make-directory
Michael Albinus [Sun, 8 Oct 2017 11:55:20 +0000 (13:55 +0200)]
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.

7 years ago; Merge from Gnulib (comment changes only)
Paul Eggert [Sun, 8 Oct 2017 06:08:24 +0000 (23:08 -0700)]
; Merge from Gnulib (comment changes only)

7 years agoImprove test for unreachable dirs
Paul Eggert [Sun, 8 Oct 2017 05:56:29 +0000 (22:56 -0700)]
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)

7 years ago* src/xsmfns.c (x_session_initialize): Fix memory leak.
Paul Eggert [Sun, 8 Oct 2017 05:48:49 +0000 (22:48 -0700)]
* src/xsmfns.c (x_session_initialize): Fix memory leak.

7 years agoMerge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into emacs-26
K. Handa [Sun, 8 Oct 2017 02:56:06 +0000 (11:56 +0900)]
Merge branch 'emacs-26' of git.sv.gnu.org:/srv/git/emacs into emacs-26

7 years agoNew option for handling ZWNJ in Arabic text rendering
K. Handa [Sun, 8 Oct 2017 02:48:01 +0000 (11:48 +0900)]
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.

7 years agoMake python prettify symbols into a defvar (Bug#28713)
Noam Postavsky [Thu, 5 Oct 2017 23:16:46 +0000 (19:16 -0400)]
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'.

7 years agoFix fullscreen crash on macOS (bug#28496)
Alan Third [Sat, 30 Sep 2017 23:06:23 +0000 (00:06 +0100)]
Fix fullscreen crash on macOS (bug#28496)

* lisp/frame.el (toggle-frame-fullscreen): Wait for animation to
complete on macOS.

7 years agoFix crash when closing fullscreen frame on macOS (bug#28661)
Alan Third [Sat, 7 Oct 2017 15:00:49 +0000 (16:00 +0100)]
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.

7 years agoSupport gio tool in Tramp
Michael Albinus [Sat, 7 Oct 2017 18:17:32 +0000 (20:17 +0200)]
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.

7 years agoFix flymake-goto-next-error when message has %-constructs
João Távora [Sat, 7 Oct 2017 15:55:04 +0000 (16:55 +0100)]
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.

7 years ago* src/gnutls.c (syms_of_gnutls): Remove duplicated call to DEFSYM.
Piotr Trojanek [Sat, 7 Oct 2017 14:54:36 +0000 (17:54 +0300)]
* src/gnutls.c (syms_of_gnutls): Remove duplicated call to DEFSYM.

Copyright-paperwork-exempt: yes.

7 years agoMove the entry about 'format' into Incompatible Lisp Changes
Eli Zaretskii [Sat, 7 Oct 2017 11:32:12 +0000 (14:32 +0300)]
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)

7 years agoFix glitches in displaying TTY menus
Eli Zaretskii [Sat, 7 Oct 2017 11:20:42 +0000 (14:20 +0300)]
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)

7 years agoCreate new Edebug spec for docstrings and use it in closures
Gemini Lasswell [Fri, 6 Oct 2017 18:30:22 +0000 (11:30 -0700)]
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.

7 years agoAvoid byte-compilation warnings in message.el
Eli Zaretskii [Fri, 6 Oct 2017 17:49:39 +0000 (20:49 +0300)]
Avoid byte-compilation warnings in message.el

* lisp/gnus/message.el: Require 'subr-x' when compiling, to
avoid compiler warnings.

7 years agoFix bug in recent styled_format change
Paul Eggert [Fri, 6 Oct 2017 17:32:46 +0000 (10:32 -0700)]
Fix bug in recent styled_format change

Problem reported by Kaushal Modi in:
http://lists.gnu.org/archive/html/emacs-devel/2017-10/msg00141.html
* src/editfns.c (styled_format): Fix bug where USE_SAFE_ALLOCA was
not always followed by SAFE_FREE.  This bug was introduced in my
patch 2017-09-26T23:31:57Z!eggert@cs.ucla.edu entitled "Avoid some
unnecessary copying in Fformat etc."

7 years agoCleanup emacs-lisp-mode's use of Flymake
João Távora [Fri, 6 Oct 2017 16:51:40 +0000 (17:51 +0100)]
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.

7 years agoFix @include directive in Flymake doc
João Távora [Fri, 6 Oct 2017 15:42:37 +0000 (16:42 +0100)]
Fix @include directive in Flymake doc

* doc/misc/flymake.texi: Don't @include a relative path.

7 years agoMove read-multiple-choice to its own library
Mark Oteiza [Fri, 6 Oct 2017 14:42:06 +0000 (10:42 -0400)]
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.

7 years ago* src/process.c (syms_of_process): Remove duplicated call to DEFSYM.
Piotr Trojanek [Fri, 6 Oct 2017 14:12:31 +0000 (17:12 +0300)]
* src/process.c (syms_of_process): Remove duplicated call to DEFSYM.

Fixes: Bug#28721
Copyright-paperwork-exempt: yes.

7 years agoFix typos in Flymake documentation
Lele Gaifax [Fri, 6 Oct 2017 13:08:49 +0000 (14:08 +0100)]
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.

7 years agoRevert last change in 'shr-descend'
Eli Zaretskii [Fri, 6 Oct 2017 12:42:22 +0000 (15:42 +0300)]
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)

7 years agoDon't error when turning on Flymake with no known backends
João Távora [Thu, 5 Oct 2017 23:07:53 +0000 (00:07 +0100)]
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.

7 years agoDelete a Flymake obsolete alias that can't possibly work
João Távora [Thu, 5 Oct 2017 21:23:24 +0000 (22:23 +0100)]
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.

7 years agoFix bug with unmounted directory on GNU/Linux
Paul Eggert [Thu, 5 Oct 2017 22:55:10 +0000 (15:55 -0700)]
Fix bug with unmounted directory on GNU/Linux

* src/sysdep.c (emacs_get_current_dir_name): Do not use
get_current_dir_name result unless it is absolute (Bug#27871).

7 years ago; Update ChangeLog.3
Nicolas Petton [Thu, 5 Oct 2017 21:18:23 +0000 (23:18 +0200)]
; Update ChangeLog.3

7 years ago; * Makefile.in: set PREFERRED_BRANCH to emacs-26
Nicolas Petton [Thu, 5 Oct 2017 20:23:49 +0000 (22:23 +0200)]
; * Makefile.in: set PREFERRED_BRANCH to emacs-26

7 years agoUpdate authors.el
Nicolas Petton [Wed, 4 Oct 2017 19:49:22 +0000 (21:49 +0200)]
Update authors.el

* admin/authors.el (authors-renamed-files-alist)
(authors-valid-file-names): Additions.

7 years agoFix dynamic binding wrapper in iter-lambda (bug#25965)
Gemini Lasswell [Thu, 5 Oct 2017 19:41:35 +0000 (12:41 -0700)]
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.

7 years agoUpdate Org to v9.1.2
Rasmus [Thu, 5 Oct 2017 19:30:05 +0000 (21:30 +0200)]
Update Org to v9.1.2

Please note this is a bugfix release.  See etc/ORG-NEWS for details.

7 years agoFix irregularities with CC Mode fontification, particularly with "known types"
Alan Mackenzie [Mon, 18 Sep 2017 08:52:24 +0000 (08:52 +0000)]
Fix irregularities with CC Mode fontification, particularly with "known types"

* lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Introduce a new
optional parameter, template-class.  In "class <X = Y>", fontify "Y" as a
type.
(c-font-lock-single-decl): New variable template-class, set to non-nil when we
have a construct like the above.  Pass this as argument to
c-font-lock-declarators.
(c-font-lock-cut-off-declarators): Check more rigorously that a declaration
being processed starts before the function's starting position.
(c-complex-decl-matchers): Remove the redundant clause which fontified "types
preceded by, e.g., "struct"".

* lisp/progmodes/cc-langs.el (c-template-typename-kwds)
(c-template-typename-key): New lang defconsts and defvar.

7 years agoFix breakage due to recent change in tabulated-list-print-entry
Eli Zaretskii [Thu, 5 Oct 2017 14:57:58 +0000 (17:57 +0300)]
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)

7 years ago* lisp/ses.el (ses-print-cell): Fix alignment of text cells. (Bug#27653)
Gemini Lasswell [Thu, 5 Oct 2017 13:49:34 +0000 (16:49 +0300)]
* lisp/ses.el (ses-print-cell): Fix alignment of text cells.  (Bug#27653)

7 years agoSet xterm click count to 1 even with no last click
Alexander Gramiak [Thu, 5 Oct 2017 10:50:02 +0000 (13:50 +0300)]
Set xterm click count to 1 even with no last click

* lisp/xt-mouse.el (xterm-mouse-event): Move the check for
the last click so that click-count is initialized properly.
Handle the value of t for double-click-time.
(Bug#28658)

7 years agoSupport indirection for all shr-tag-* calls
Vasilij Schneidermann [Thu, 5 Oct 2017 10:00:13 +0000 (13:00 +0300)]
Support indirection for all shr-tag-* calls

The 'shr-external-rendering-functions' variable was previously only
honored in the shr-descend function, now all direct calls to the
shr-tag-* functions have been replaced by a call to
'shr-indirect-call' which tries using an alternative rendering
function first.

* lisp/net/shr.el (shr-indirect-call): New helper function.
(shr-descend, shr-tag-object, shr-tag-video):
(shr-collect-extra-strings-in-table): Fix callers to call via
shr-indirect-call.  (Bug#28402)

7 years ago; * etc/NEWS: Fix the "manual-update" marker of a recent addition.
Eli Zaretskii [Thu, 5 Oct 2017 09:55:47 +0000 (12:55 +0300)]
; * etc/NEWS: Fix the "manual-update" marker of a recent addition.

7 years agoSpeed up list-packages when 'visual' line numbers are displayed
Eli Zaretskii [Thu, 5 Oct 2017 09:41:36 +0000 (12:41 +0300)]
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)

7 years agoMisc. minor adjustments to Flymake
João Távora [Thu, 5 Oct 2017 01:42:01 +0000 (02:42 +0100)]
Misc. minor adjustments to Flymake

- Add a half-decent minor-mode menu;
- Fix "waiting for backends" mode line message;
- Adjust the flymake-diag-region API;
- Autoload the flymake-log macro;
- Auto-disable the legacy backend in more situations;
- Fix a couple of warnings in legacy backend.

* lisp/progmodes/flymake-proc.el
(flymake-proc--diagnostics-for-pattern): Use new
flymake-diag-region.

* lisp/progmodes/flymake-proc.el
(flymake-proc-legacy-flymake): Do error when no
buffer-file-name or not writable.
(flymake-proc-legacy-flymake)
(flymake-proc-simple-cleanup): Don't reference flymake-last-change-time

* lisp/progmodes/flymake.el (flymake-diag-region):
Autoload.  Take buffer as first argument.

* lisp/progmodes/flymake.el (flymake-switch-to-log-buffer):
New command.
(flymake-menu): Add a simple menu.
(flymake--mode-line-format): Use menu.  Fix message.  Switch to
log buffer when clicking exceptional warnings.

7 years agoFix search for ~/.Xdefaults-HOSTNAME
Johan Bockgård [Wed, 4 Oct 2017 22:24:43 +0000 (15:24 -0700)]
Fix search for ~/.Xdefaults-HOSTNAME

* src/xrdb.c (get_environ_db): Fix typo when handling
~/.Xdefaults-HOSTNAME (Bug#28708).

7 years agoSpeed up (format "%s" STRING) and the like
Paul Eggert [Wed, 4 Oct 2017 21:29:58 +0000 (14:29 -0700)]
Speed up (format "%s" STRING) and the like

Although the Lisp manual said that ‘format’ returns a
newly-allocated string, this was not true for a few cases like
(format "%s" ""), and fixing the documentation to allow reuse of
arguments lets us improve performance in common cases like
(format "foo") and (format "%s" "foo") (Bug#28625).
* doc/lispref/strings.texi (Formatting Strings):
* etc/NEWS:
Say that the result of ‘format’ might not be newly allocated.
* src/callint.c (Fcall_interactively):
* src/dbusbind.c (XD_OBJECT_TO_STRING):
* src/editfns.c (Fmessage, Fmessage_box):
* src/xdisp.c (vadd_to_log, Ftrace_to_stderr):
Just use Fformat or Fformat_message, as that’s simpler and no
longer makes unnecessary copies.
* src/editfns.c (styled_format): Remove last argument, as it
is no longer needed: all callers now want it to behave as if it
were true.  All remaining callers changed.  Make this function
static again.  Simplify the function now that we no longer
need to worry about whether the optimization is allowed.

7 years agoFontify untyped function declarations in C Mode correctly.
Alan Mackenzie [Wed, 4 Oct 2017 17:34:27 +0000 (17:34 +0000)]
Fontify untyped function declarations in C Mode correctly.

Also correct two bugs where deleting WS at a BOL could leave an untyped
function declaration unfontified.

* lisp/progmodes/cc-engine.el (c-find-decl-spots): Don't set the flag
"top-level" when we're in a macro.
(c-forward-decl-or-cast-1): Recognize top-level "foo(bar)" or "foo()" in C
Mode as a implicitly typed function declaration.
(c-just-after-func-arglist-p): Don't get confused by "defined (foo)" inside a
macro.  It's not a function plus arglist.

* lisp/progmodes/cc-langs.el (c-cpp-expr-functions-key): New defconst and
defvar.

* lisp/progmodes/cc-mode.el (c-fl-decl-end): After c-forward-declarator, move
over any following parenthesis expression (i.e. parameter list).
(c-change-expand-fl-region): When c-new-END is at a BOL, include that line in
the returned region, to cope with deletions at column 0.

7 years ago* lisp/net/tramp.el (tramp-tramp-file-p): Use `string-match-p'.
Michael Albinus [Wed, 4 Oct 2017 09:48:37 +0000 (11:48 +0200)]
* lisp/net/tramp.el (tramp-tramp-file-p): Use `string-match-p'.

Reported by Clément Pit-Claudel <cpitclaudel@gmail.com>.

7 years agoAvoid crashes on C-g when several threads wait for input
Eli Zaretskii [Wed, 4 Oct 2017 07:27:49 +0000 (10:27 +0300)]
Avoid crashes on C-g when several threads wait for input

* src/thread.h (m_getcjmp): New member of 'struct thread_state'.
(getcjmp): Define to current thread's 'm_getcjmp'.
* src/thread.c (maybe_reacquire_global_lock): Switch to main
thread, since this is called from a SIGINT handler, which always
runs in the context of the main thread.
* src/lisp.h (sys_jmp_buf, sys_setjmp, sys_longjmp): Move the
definitions before thread.h is included, as thread.h now uses
sys_jmp_buf.
* src/keyboard.c (getcjmp): Remove declaration.
(read_char): Don't call maybe_reacquire_global_lock here.
(handle_interrupt): Call maybe_reacquire_global_lock here, if
invoked from the SIGINT handler, to make sure
quit_throw_to_read_char runs with main thread's Lisp bindings and
uses the main thread's jmp_buf buffer.  (Bug#28630)

7 years ago; Spelling fixes
Paul Eggert [Tue, 3 Oct 2017 23:04:30 +0000 (16:04 -0700)]
; Spelling fixes