1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-28 07:50:48 -08:00
Commit graph

130436 commits

Author SHA1 Message Date
Eli Zaretskii
3566644a33 Fix infloop in redisplay due to truncated lines and invisible text
* src/xdisp.c (forward_to_next_line_start): Don't call
'get_next_display_element' after finding the end of line.  This
avoids setting the row's end position to the wrong value when the
next screen line begins with invisible text; that wrong value
caused set_cursor_from_row position the cursor in the wrong screen
line, and eventually triggered bug#24109.
2016-10-08 10:52:52 +03:00
Tassilo Horn
1686a0cde3 Fix unescaped \begin{...} in docstring
* lisp/textmodes/reftex-cite.el (reftex-bib-or-thebib): Fix unescaped
\begin{...} in docstring.
2016-10-07 18:29:57 +02:00
David Engster
a6e0a67701 gitmerge: Add cherry pick to gitmerge-skip-regexp
* gitmerge.el (gitmerge-skip-regexp): Add "cherry picked from commit",
  which is the string appended by 'git cherry-pick -x'.

(cherry picked from commit f648e48669)
2016-10-06 21:39:55 -04:00
Noah Friedman
51558effdc Update comment. 2016-10-06 18:32:59 -07:00
Noam Postavsky
fb12af2084 ; Merge: some backports from master
Regression in Emacs 25.1
* "Don't require isearch-update before isearch-done"

This bug actually crashes in emacs-25
* "Avoid error in icalendar--read-element"

Doc fixes
* "Make a menu less ambiguous"
* "Doc fix for url-http"
2016-10-06 21:20:32 -04:00
Eli Zaretskii
c4a5e7e18d Improve documentation of 'menu-bar-open'
* lisp/term/w32-win.el (w32-menu-bar-open): Clarify that sometimes
two ESC keypresses are needed to exit the menu.

* doc/emacs/screen.texi (Menu Bar): Qualify the description of how
to exit menus.  (Bug#24596)
2016-10-06 21:46:48 +03:00
Eli Zaretskii
d48369db9c Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
* nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
defining to avoid redefinition warnings.

* nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
inclusion of sys/stat.h from the system headers, which could then
lead to compilation errors due to redefinition of 'struct stat'
etc.  This is needed because latest versions of MinGW runtime
include sys/stat.h from wchar.h.

* src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
redefine to 4 to avoid conflict between 2 definitions of
MemoryBarrier.  (Bug#24613)
2016-10-06 18:11:43 +03:00
Eli Zaretskii
34b6df19a4 Fix compilation with MinGW runtime 3.22.2 and w32api 3.18.2
* nt/inc/ms-w32.h (_WIN32_WINNT) [!MINGW_W64]: Undefine before
defining to avoid redefinition warnings.

* nt/inc/sys/stat.h (_SYS_STAT_H, _INC_STAT_H): Define, to avoid
inclusion of sys/stat.h from the system headers, which could then
lead to compilation errors due to redefinition of 'struct stat'
etc.  This is needed because latest versions of MinGW runtime
include sys/stat.h from wchar.h.

* src/image.c (__MINGW_MAJOR_VERSION) [WINDOWSNT]: Temporarily
redefine to 4 to avoid conflict between 2 definitions of
MemoryBarrier.  (Bug#24613)

Do not merge to master!
2016-10-06 18:08:31 +03:00
Mark Oteiza
6e6c088153 * lisp/url-url-parse.el (url-generic-parse-url): Unquote macro URL argument. 2016-10-05 22:52:20 -04:00
Mark Oteiza
b9a6314914 Autoload entry point testcover-start
* lisp/emacs-lisp/testcover.el: Add autoload cookie for
testcover-start.
2016-10-05 22:49:14 -04:00
Thomas Fitzsimmons
1add5ec3a2 Bump version of ntlm.el to 2.1.0
* lisp/net/ntlm.el: Bump version to 2.1.0.
2016-10-05 20:18:18 -04:00
Thomas Fitzsimmons
33c607aab5 lisp/net/ntlm.el: Fix comment and docstring formatting 2016-10-05 20:18:18 -04:00
Thomas Fitzsimmons
680e3986ad lisp/net/ntlm.el: Match Mozilla Type 1 and 3 message behavior
* lisp/net/ntlm.el (ntlm-build-auth-request): Only set
"negotiate domain supplied" bit when a domain is supplied.  Do
not set "negotiate workstation supplied" bit.
(ntlm-build-auth-response): Set domain to empty string by
default.  Set workstation name to "WORKSTATION".  Set flags to
logical and of Type 1 and Type 2 message flags.  Remove four
trailing 0 bytes.  Always set LM response.  Hard-code domain
offset.  Reorder buffer fields.
2016-10-05 20:18:17 -04:00
John Wiegley
4ef9ea2b2a
Add documentation note from Alex 2016-10-05 09:15:18 -07:00
Martin Rudalics
9adfb021df Document return value of `display-buffer-in-side-window'
* doc/lispref/windows.texi (Displaying Buffers in Side Windows):
* lisp/window.el (display-buffer-in-side-window): Describe
return value of `display-buffer-in-side-window'.
2016-10-05 16:12:19 +02:00
Eli Zaretskii
0709b900f5 Improve wording in side windows documentation
* doc/lispref/windows.texi (Displaying Buffers in Side Windows)
(Side Window Options and Functions)
(Frame Layouts with Side Windows): Minor wording improvements.
2016-10-05 16:01:19 +03:00
Martin Rudalics
b8fd71d570 Document and fix some bugs with side windows
Add a documentation for side windows and fix some bugs
found when testing their behavior.  Also add a new window
parameter `no-delete-other-window', a new `display-buffer'
alist member called `window-parameters', and functions to
toggle and reverse side windows on a frame.  Add new function
`window-swap-states' to exchange states of two live windows.

* lisp/window.el (display-buffer-in-atom-window): Use
`split-window-no-error'.
(window-sides-vertical): Maybe change layouts when setting this
variable.
(window-sides-reversed): New option.
(window-sides-slots): Rewrite doc-string and help echoes.
(window-sides-shown): New buffer-local variable set when showing
a buffer in a side window.
(window--sides-inhibit-check): New variable.
(window--sides-reverse-on-frame-p, window-toggle-side-windows)
(window--sides-reverse-all, window--sides-reverse-frame)
(window--sides-reverse-side, window--sides-reverse)
(window--sides-verticalize-frame, window--sides-verticalize)
(window--sides-check-failed): New functions.
(window--side-window-p): Remove function.
(window--major-non-side-window): Rename to `window-main-window',
adjust callers, rewrite doc-string.
(window--major-side-window): Rename to
`window--make-major-side-window-next-to', adjust caller, fix
doc-string.
(display-buffer-in-major-side-window): Rename to
`window--make-major-side-window', adjust
caller, rewrite doc-string.  Make `window-side' and
`window-slot' parameters persistent (Bug#23858).  Don't set
`delete-window' parameter.  Add `preserve-size' entry to ALIST.
(delete-side-window): Remove function.
(display-buffer-in-side-window): Fix doc-string.  Don't set
`delete-window' parameter.  Add `preserve-size' entry to ALIST.
(window--side-check): Rename to window--sides-check.  Rewrite
completely.  Adjust caller.
(window-resize-no-error): Don't describe PIXELWISE argument.
(adjust-window-trailing-edge): Fix bug that disallowed
re-enlarging windows that were too small.
(window-deletable-p): Don't tell that a minibuffer window on a
non-minibuffer-only frame can be deleted.  Fix doc-string.
(delete-window): Handle deleting a side window here (the
`delete-window' parameter is no more set for side windows).
(delete-other-windows): Handle ‘no-delete-other-window'
parameter. Don't treat side windows separately (see discussion
of Bug#24368) but keep optimization that makes the main window
the root window of its frame.
(switch-to-prev-buffer, switch-to-next-buffer): Handle side
windows and buffers shown in side windows separately.
(split-window-no-error): New function.
(window--state-get-1): Use right buffer when storing window
point and start positions and WRITABLE is nil (Bug#24368).
(window--state-put-1): Fix handling of `window-combination-limit'.
Use `split-window-no-error'.
(window--state-put-2): Try to restore windows with preserved
size to their original size.  Fix bug where a fixed window's width
was not preserved.
(window-state-put): When reducing an internal window to a live
one, don't choose a side window.
(window-swap-states): New function.
(window-splittable-p): Don't call `window--side-window-p'.
(window--display-buffer): Handle `window-parameters' ALIST entry.
Minor rewrite.
(display-buffer): Mention `window-parameters' entry in
doc-string.
(display-buffer-at-bottom): Call `split-window-no-error'.

* doc/lispref/elisp.texi (Top): New section "Side Windows".
* doc/lispref/windows.texi (Deleting Windows): Fix descriptions
of `delete-window' and `delete-other-windows' wrt window
parameters and side windows.
(Display Action Functions): Mention `window-parameters' ALIST
entry.
(Side Windows): New section (Bug#18170).
(Window Configurations): Describe new function `window-swap-states'.
(Window Parameters): Say that functions may behave specially when
their homonymous window parameter has been set.  Mention new
parameter `no-delete-other-window'.  Add cross reference for
`window-side' and `window-slot' parameters.
2016-10-05 10:28:36 +02:00
Aurelien Aptel
9d6026d8ec * src/alloc.c: call only non-null finalizers 2016-10-05 10:01:36 +02:00
John Wiegley
13ba5af742
Add documentation note from Alex 2016-10-04 14:47:43 -07:00
Karl Fogel
4b347fe536 Clarify that doc fixes are okay in feature freeze
* CONTRIBUTE (branches): Explain that doc fixes are always safe, even
on a release branch in feature freeze.  Tweak wording of paragraph
after that to avoid a misleading contrast.
2016-10-04 16:03:27 -05:00
Eli Zaretskii
01669ad9a6 Avoid crashes when setting the cursor
* src/xdisp.c (display_and_set_cursor): Don't index glyphs of a
glyph row if hpos is out of valid bounds.  This avoids crashes in
some rare cases.  (Bug#24614)
2016-10-04 22:12:08 +03:00
Philippe Vaucher
f2144eef19 Restore 'command-debug-status' functionality
* src/callint.c (Fcall_interactively): Bind command-debug-status
to nil.  This restores functionality inadvertently removed in
Emacs 25.1.  (Bug#24555)

* lisp/subr.el (command-debug-status): Declare obsolete.

* doc/lispref/debugging.texi (Internals of Debugger): Document
that 'command-debug-status' is obsolete.
2016-10-04 17:34:51 +03:00
Mark Oteiza
6d6c93f4cc Avoid dynamic binding on a symbol
Instead, bind history in the default minibuffer-history.
Fixes bug#24580.
* lisp/replace.el (query-replace-read-from): Let-bind
minibuffer-history.  Change read-regexp and read-from-minibuffer's
HISTORY arguments to nil so that they use minibuffer-history.
2016-10-04 10:26:38 -04:00
Eli Zaretskii
ec6e4b9d1e ; Minor addition to CONTRIBUTE
* CONTRIBUTE (http): Mention that doc fixes should always go to
the release branch.
2016-10-04 08:59:37 +03:00
Karl Fogel
e1b2918c7c Document yank behavior in the right place
* lisp/simple.el (yank): Document the handling of the
`yank-handled-properties' and `yank-excluded-properties' variables,
and the `yank-handler' text property.
(yank-pop): Refer to `yank' now (bug#286)

* lisp/subr.el (insert-for-yank): Refer to `yank' now.
(insert-for-yank-1): Refer to `insert-for-yank' now.

See this thread for discussion:

  https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
  From: Karl Fogel
  To: Emacs Devel
  Subject: Question about intended behavior of 'insert-for-yank-1'.
  Date: Mon, 12 Sep 2016 00:17:14 -0500
  Message-ID: <874m5lr92d.fsf@red-bean.com>
2016-10-03 14:13:43 -05:00
Stefan Monnier
e2913dc880 * src/fileio.c (Finsert_file_contents): Fix hook handling (bug#24340)
* src/fileio.c (Finsert_file_contents): Run before-change-hooks before
deleting the old buffer content.
* src/lisp.h (del_range_byte):
* src/insdel.c (del_range_byte): Drop the last argument.
* src/fns.c (Fbase64_encode_region): Adjust accordingly.
2016-10-03 09:47:46 -04:00
Tino Calancha
a7e9d1cce3 Ibuffer: 'w' and 'B' default to buffer at current line
See discussion in:
https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00384.html
* lisp/ibuffer.el (ibuffer--near-buffers): New defun;
return buffers near current line.
* lisp/ibuf-ext.el (ibuffer-copy-buffername-as-kill): Use it.
Add argument ARG; if a non-zero integer, return next ARG buffers.
Otherwise return the marked buffers.
If there are not marked buffers, return buffer at current line
without prompting the user.
Use ibuffer-get-marked-buffers instead of ibuffer-map-marked-lines.
Append to kill ring when last command was a kill-region.
(ibuffer-copy-filename-as-kill): Idem.
Simplify the code.
Use ibuffer-buffer-file-name instead of buffer-file-name to
include buffers in Dired mode.
2016-10-03 21:16:00 +09:00
Tino Calancha
3b6eb9489d dired-mark-extension: Unmark if called with C-u prefix
See discussion in #Bug2518 and:
https://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00711.html
* lisp/dired-x.el (dired-mark-extension):
Update interactive calls: a prefix arg C-u unmark files;
a prefix C-u C-u prompt for MARKER-CHAR and mark files with it.
(dired-mark-sexp):
Show in the prompt that we are unmarking if called with a prefix argument.
* doc/misc/dired-x.texi (Advanced Mark Commands):
Update documentation for 'dired-mark-extension'.
2016-10-03 20:02:54 +09:00
Philipp Stephani
74b4f13842 Document nil args of compare-buffer-substrings
* editfns.c (Fcompare_buffer_substrings): Document behavior when
the arguments are nil.
2016-10-03 12:10:41 +02:00
Katsumi Yamaoka
9fc81bcf74 * doc/misc/message.texi (Bcc Warning): Fix markup. 2016-10-03 03:03:40 +00:00
Katsumi Yamaoka
95baa25ff0 * doc/misc/message.texi (Bcc Warning):
Document mml-secure-safe-bcc-list.
2016-10-03 02:43:20 +00:00
Karl Fogel
8cd975cebd Document yank behavior in the right place
* lisp/simple.el (yank): Document the handling of the
`yank-handled-properties' and `yank-excluded-properties' variables,
and the `yank-handler' text property.
(yank-pop): Refer to `yank' now (bug#286)

* lisp/subr.el (insert-for-yank): Refer to `yank' now.
(insert-for-yank-1): Refer to `insert-for-yank' now.

See this thread for discussion:

  https://lists.gnu.org/archive/html/emacs-devel/2016-09/threads.html#00329
  From: Karl Fogel
  To: Emacs Devel
  Subject: Question about intended behavior of 'insert-for-yank-1'.
  Date: Mon, 12 Sep 2016 00:17:14 -0500
  Message-ID: <874m5lr92d.fsf@red-bean.com>
2016-10-02 19:47:27 -05:00
Philipp Stephani
2dfa330169 ; Fix build by reordering definitions 2016-10-02 22:21:01 +02:00
Philipp Stephani
e0ac09906b Restart blink cursor timers on interval changes
This prevents surprising behavior when timer interval customizations are
only applied whenever the timers happen to be restarted (see Bug#24372).

* lisp/frame.el (blink-cursor--start-idle-timer)
(blink-cursor--start-timer): New functions.
(blink-cursor-start, blink-cursor-check, blink-cursor-mode): Use
the new helper functions.
(blink-cursor-delay, blink-cursor-interval): Restart timers when
the value is changed.
2016-10-02 19:49:37 +02:00
Noam Postavsky
623401267a Don't require isearch-update before isearch-done
It is useful to be able to call `isearch-done' unconditionally to
ensure a non-isearching state.

* lisp/isearch.el (isearch-done): Check that `isearch--current-buffer'
is a live buffer before using it (Bug #21091).
* test/lisp/isearch-tests.el (isearch--test-done): Test it.

(cherry picked from commit 68f4b52927)
2016-10-02 12:27:33 -04:00
Peder O. Klingenberg
5e50114d24 Avoid error in icalendar--read-element
* lisp/calendar/icalendar.el (icalendar--read-element): Avoid a regex
stack overflow by not using regex to extract values from calendar
events. (Bug#24315)

(cherry picked from commit 55dde6c1a2)
2016-10-02 12:27:33 -04:00
Lars Ingebrigtsen
ace9d227dd Make a menu less ambiguous
* doc/emacs/custom.texi (Key Bindings): The Modifier Keys node
is about using modifier keys, not binding them (bug#10942).

(cherry picked from commit 214f85a0a6)
2016-10-02 12:27:33 -04:00
Devon Sean McCullough
e6834952ed Doc fix for url-http
* lisp/url/url-http.el (url-http): Document better return values
  (bug#13187) (tiny change)

(cherry picked from commit 344303c8d9)
2016-10-02 12:27:32 -04:00
Philipp Stephani
08b386db1f Use a simple keyword for a non-nil argument
The second argument of `run-with-idle-timer' is Boolean, i.e. only nil
and non-nil values are distinguished.  Passing a number here is
confusing.  Pass a descriptive symbol instead.

* lisp/frame.el (blink-cursor-mode, blink-cursor-check): Use
:repeat symbol instead of number for second argument of
`run-with-idle-timer'
2016-10-01 20:13:53 +02:00
Philipp Stephani
b661efd90d Make querying to kill processes customizable
Introduce a new customization option, `confirm-kill-processes', that
users can set to nil if they don't want Emacs to nag them about killing
processes.

* lisp/files.el (confirm-kill-processes): New customization option.
(save-buffers-kill-emacs): Use customization option.

* test/lisp/files-tests.el
(files-test--save-buffers-kill-emacs--confirm-kill-processes): Add
test for new customization option.

* doc/emacs/entering.texi (Exiting): Document new user option.

* doc/lispref/processes.texi (Query Before Exit): Document new
user option.

* etc/NEWS: Document new user option.
2016-10-01 14:25:27 +02:00
Glenn Morris
e1c5422e7b ; Auto-commit of loaddefs files. 2016-10-01 06:22:45 -04:00
Eli Zaretskii
f1247f069e * lisp/frame.el (blink-cursor-delay): Doc fix. (Bug#24372) 2016-10-01 11:23:18 +03:00
Eli Zaretskii
4431eff775 Set :version of 'debugger-stack-frame-as-list'
* lisp/cus-start.el (debugger-stack-frame-as-list): Give value to
the ':version' attribute.
2016-10-01 11:17:23 +03:00
Eli Zaretskii
787b525f36 Bump Emacs version to 26.0.50
* README:
* configure.ac:
* etc/NEWS:
* etc/refcards/ru-refcard.tex:
* msdos/sed2v2.inp:
* src/msdos.c: Increment Emacs version to 26.0.50.
* etc/NEWS.25: New file, copied from etc/NEWS with post-25.1 stuff
moved to etc/NEWS.
2016-10-01 11:14:05 +03:00
Eli Zaretskii
bb2ef5c6f7 Avoid compilation warning on MinGW
* src/w32.c: Include string.h, needed for the prototype of
'strerror', shadowed by 'sys_strerror'.  This avoids a compiler
warning about "no previous prototype".  The string.h header
must be included after ms-w32.h, but before "#undef strerror".
2016-10-01 10:12:53 +03:00
Alan Third
25dca60d5e Fix compatibility with macOS 10.12 pmset (bug#24537)
* lisp/battery.el (battery-pmset): Recognise and ignore battery id if
present in output.
2016-09-30 21:43:38 +01:00
Paul Eggert
f4eb890029 Limit <config.h>’s includes
This follows up on recent problems with the fact that config.h
includes stdlib.h etc.; some files need to include stdlib.h later.
config.h generally should limit itself to includes that are
universally safe; outside of MS-Windows, only stdbool.h makes
the cut among the files currently included.  So, move the
other includes to just the files that need them (Bug#24506).
* configure.ac (config_opsysfile): Remove, as this generic hook
is no longer needed.
* lib-src/etags.c, src/unexmacosx.c, src/w32.c, src/w32notify.c:
* src/w32proc.c (_GNU_SOURCE):
Remove, as it’s OK for config.h to do this now.
* src/conf_post.h: Include <ms-w32.h>, instead of the generic
config_opsysfile, for simplicity as this old way of configuring is
now done only for the MS-Windows port.  Do not include <ms-w32.h>
if DEFER_MS_W32_H, for the benefit of the few files that want its
effects later.  Do not include <alloca.h>, <string.h>, or
<stdlib.h>.  Other files modified to include these headers as
needed, or to not include headers that are no longer needed.
* src/lisp.h: Include <alloca.h> and <string.h> here, since
some of the inline functions need them.
* src/regex.c: Include <alloca.h> if not emacs.  (If emacs,
we can rely on SAFE_ALLOCA.)  There is no longer any need to
worry about HAVE_ALLOCA_H.
* src/unexmacosx.c: Rely on config.h not including stdlib.h.
* src/w32.c, src/w32notify.c, src/w32proc.c (DEFER_MS_W32_H):
Define before including <config.h> first, and include <ms-w32.h>
after the troublesome headers.
2016-09-30 12:38:52 -07:00
Vasilij Schneidermann
d1890a3a4a New user option 'debugger-stack-frame-as-list'
* src/eval.c (syms_of_eval) <debugger-stack-frame-as-list>: New
variable.
* lisp/cus-start.el (standard): Add debugger-stack-frame-as-list.
* lisp/emacs-lisp/debug.el (debugger-setup-buffer): Adjust
backtrace processing for the value of debugger-stack-frame-as-list.
* lisp/emacs-lisp/edebug.el (edebug-backtrace): Adjust backtrace
processing for the value of debugger-stack-frame-as-list.
* doc/lispref/debugging.texi (Internals of Debugger): Document
debugger-stack-frame-as-list.
* etc/NEWS: Mention 'debugger-stack-frame-as-list'.
2016-09-30 16:22:26 +03:00
Eli Zaretskii
97f3540177 ; src/image.c (imagemagick_load_image): Fix a typo. 2016-09-30 15:27:07 +03:00
Aurelien Aptel
d9ce9c8f4f * src/alloc.c: call only non-null finalizers 2016-09-30 14:03:14 +02:00