Eli Zaretskii [Tue, 1 Mar 2016 16:41:04 +0000 (18:41 +0200)]
Fix reordering of bidi text in an isolate inside an override
* src/bidi.c (bidi_resolve_explicit): Override the orig_type value
of FSI with either LRI or RLI, as determined by the first strong
directional character in the isolate. This prevents failure to
isolate when the FSI...PDI text is inside a directional override.
(Bug#22786)
Alan Mackenzie [Tue, 1 Mar 2016 15:01:46 +0000 (15:01 +0000)]
Document c-guess-basic-syntax in the CC Mode manual.
* doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
pxrefs to Custom Line-Up and Other Indentation.
(Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
Syntactic Analysis.
Eli Zaretskii [Thu, 25 Feb 2016 19:59:57 +0000 (21:59 +0200)]
Remove unneeded workaround in xftfont.c
* src/xftfont.c (xftfont_open): Remove "dirty workaround" for
XftTextExtents8 behavior, as it is no longer needed. Suggested by
Fangwen Yu <yynyygy@gmail.com>. (Bug#22383)
Stefan Monnier [Wed, 24 Feb 2016 20:50:54 +0000 (15:50 -0500)]
* src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
* src/keyboard.c (read_key_sequence): Don't inadvertently set
immediate_echo when we don't want any echo-keystrokes.
(echo_keystrokes_p): Move earlier.
Dima Kogan [Wed, 24 Feb 2016 02:54:17 +0000 (13:54 +1100)]
Make `insert-pair' always leave the cursor where documented
* lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
insert-pair states that after insertion, the point ends up
after the opening character. This was not true if the pair was
inserted to surround a region (bug#16949).
Michael Albinus [Tue, 23 Feb 2016 12:51:36 +0000 (13:51 +0100)]
Further adaptions in file-notify-tests.el for w32notify
* test/automated/file-notify-tests.el
(file-notify--test-read-event-timeout, file-notify--test-timeout):
Decrease values.
(file-notify-test03-autorevert)
(file-notify-test04-file-validity)
(file-notify-test05-dir-validity): Run tests also for w32notify.
(file-notify-test08-watched-file-in-watched-dir):
Adapt expected events for w32notify.
Dmitry Gutov [Tue, 23 Feb 2016 00:27:49 +0000 (02:27 +0200)]
Make $, : and @ "prefix characters" in ruby-mode
* lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
syntax classes of $, : and @ to "prefix character"
(http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
(ruby-syntax-propertize): Undo that specifically for colons
followed by an opening paren or bracket.
(ruby-font-lock-keyword-beg-re): Include colon character.
(ruby-font-lock-keywords): Adjust the constants matcher for `:'
not being a symbol constituent anymore.
Michael Albinus [Mon, 22 Feb 2016 17:52:37 +0000 (18:52 +0100)]
Additional fixes for file notification
* lisp/filenotify.el (top): Require 'cl when compiling.
(file-notify--event-watched-file): New defun.
(file-notify--rm-descriptor, file-notify-callback):
Handle case of several monitors running in parallel.
* test/automated/file-notify-tests.el
(file-notify--test-event-test): Simplify test.
(file-notify--test-with-events): Get rid of outer definition.
Check also results of tests performed in callbacks.
(file-notify-test02-events): No wrapping when calling
`file-notify-rm-watch'. No special checking for callback tests.
(file-notify-test07-backup): Adapt expected events for gfilenotify.
(file-notify-test08-watched-file-in-watched-dir): Improve.
Daiki Ueno [Mon, 22 Feb 2016 02:28:11 +0000 (11:28 +0900)]
Set file modes of pinentry socket for extra safety
* lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
(pinentry-start): Change the file modes of the socket file to 0700.
This is just for extra safety since the parent directory is already
protected with `server-ensure-safe-dir'.
Dmitry Gutov [Sun, 21 Feb 2016 22:40:53 +0000 (00:40 +0200)]
Kill off xref--display-history
Now that the core workflow keeps the xref window visible, there's
less value in storing this history. And it never was
comprehensive enough to undo scrolling changes.
* lisp/progmodes/xref.el (xref--display-history)
(xref--save-to-history, xref-quit): Remove.
(xref--show-pos-in-buf): Update accordingly.
(xref--xref-buffer-mode-map): Remove xref-quit binding.
Dmitry Gutov [Sun, 21 Feb 2016 22:26:24 +0000 (00:26 +0200)]
Keep the xref buffer visible until the user quits it explicitly
* lisp/progmodes/xref.el (xref--pop-to-location):
Rename WINDOW argument to ACTION.
(xref--with-dedicated-window): New macro.
(xref--show-pos-in-buf): Rename from `xref--display-position'.
Add and handle new argument, SELECTED. Use the above macro.
(xref--show-location): Add SELECTED argument.
(xref-show-location-at-point): Make an effort to avoid the
original window when showing the location.
(xref-goto-xref): Don't quit the xref window (bug#20487 and
http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
(xref--query-replace-1): Use xref--with-dedicated-window as well.
(xref--next-error-function): Call xref--show-location instead of
xref--pop-to-location.
(xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
Only pass that value to xref--pop-to-location. Pass the current
selected window to xref-show-xrefs-function as the `window'
property.
(xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
to DISPLAY-ACTION as well.
Daiki Ueno [Sun, 21 Feb 2016 21:06:50 +0000 (06:06 +0900)]
Change the default socket location for pinentry
* lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
(pinentry--socket-dir): Change the default from /tmp/emacsXXX to
~/.emacs.d/pinentry.
(pinentry-start): Change the file modes of the socket file to 0700.
This is just for extra safety since the parent directory is already
protected with `server-ensure-safe-dir'.
David Engster [Sun, 21 Feb 2016 16:16:45 +0000 (17:16 +0100)]
Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
* lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
`semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
not an idle hook, so it's not appropriate to call it there. It will
already be called in the `semantic-idle-work-core-handler', which
runs when Emacs is actually idle.
David Engster [Sun, 21 Feb 2016 16:11:01 +0000 (17:11 +0100)]
Restore point when writing semantic table to disk
* lisp/cedet/semantic/db-file.el (object-write): Wrap call to
`semantic-fetch-tags' in `save-excursion', since it might move point
in current buffer. (Bug #22287)
Daiki Ueno [Sun, 21 Feb 2016 09:20:40 +0000 (18:20 +0900)]
Mention pinentry.el in epa manual
* doc/misc/epa.texi (GnuPG version compatibility): New chapter,
describing the differences between three GnuPG branches, and how
to enable pinentry.el.
(Caching Passphrases): Add xref to the compatibility chapter.
Eli Zaretskii [Sat, 20 Feb 2016 16:59:14 +0000 (18:59 +0200)]
Fix memory reservation on MS-Windows
* src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
units. This avoids leaving gaps in reserved memory regions that
no one can use, since memory reservation must produce 64KB-aligned
addresses. (Bug#22526)
Anders Lindgren [Sat, 20 Feb 2016 15:24:40 +0000 (16:24 +0100)]
Update NextStep readme and add wish list.
* nextstep/README: Rewritten from scratch. New sections on
"History", "Overview of Cocoa and Objective-C", "Guidelines",
"Tracing Support", and "GNUStep". Expanded the "See Also" section.
* nextstep/WISHLIST: New file containing list of issues and ideas
associated with the NS port of Emacs.
* test/automated/file-notify-tests.el (file-notify--test-desc2):
New variable.
(file-notify--test-cleanup): Use it.
(file-notify--test-event-handler): Enable trace.
(file-notify-test08-watched-file-in-watched-dir): Tag it as
:expensive-test. Rewrite callbacks to use
`file-notify--test-event-handler'. Read events in loop. Check
`file-notify--test-results'.
(file-notify-test08-watched-file-in-watched-dir): Fix docstring.
Stephen Berman [Sat, 20 Feb 2016 12:44:47 +0000 (13:44 +0100)]
Fix todo-mode item date editing bugs
* lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
range error by making sure the value of the numerical month date
component cannot be nil. Prevent wrong type error on trying to edit
day number in February by making sure numerical instead of string
value of the year component is passed to todo-read-date.
(todo-read-date): When using the numerical month date component make
sure to use `*' for an arbitrary month instead of its numerical value.
Ari Roponen [Sat, 20 Feb 2016 07:57:44 +0000 (18:57 +1100)]
Use pop-to-buffer-same-window in woman.el
* lisp/woman.el (woman-really-find-file): Work around going to
the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
(WoMan-find-buffer): Ditto.
Martin Rudalics [Thu, 18 Feb 2016 10:25:07 +0000 (11:25 +0100)]
Fix bugs in window resizing code
* lisp/window.el (adjust-window-trailing-edge): Fix mismatched
parenthesis.
(shrink-window, enlarge-window): Fix bug#22723 where windows
with preserved size would not get resized. Also now signal an
error when the window cannot be shrunk or enlarged as requested.
Daiki Ueno [Wed, 17 Feb 2016 07:32:25 +0000 (16:32 +0900)]
Make GnuPG version check robuster
We changed the default gpg program to "gpg2" from "gpg" in the commit f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1. However, there are two
maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
series. Check the actual version of "gpg2" at run time, and properly
divert to "gpg" if necessary.
* lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
(epg-config--program-alist): New variable.
(epg--configurations): New variable.
(epg-configuration-find): New function.
(epg-config--make-gpg-configuration): New function.
(epg-config--make-gpgsm-configuration): New function.
(epg-configuration): Mark as obsolete.
* lisp/epg.el (epg-context): Use `epg-configuration-find'.