Paul Eggert [Wed, 11 Jun 2014 20:03:46 +0000 (13:03 -0700)]
Backport fcntl.h AIX fix from the trunk.
This fixes a bug with the shell freezing. See:
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=17598#185
Merge from gnulib, incorporating:
2014-05-31 dup2, fcntl, fcntl-h: port to AIX 7.1
* lib/fcntl.in.h, m4/dup2.m4, m4/fcntl.m4:
Update from gnulib.
Eli Zaretskii [Wed, 11 Jun 2014 16:11:32 +0000 (19:11 +0300)]
Fix bug #17744 with cursor motion near overlay string with 'cursor' prop.
src/xdisp.c (set_cursor_from_row): Fix an off-by-one error when
matching overlay strings with 'cursor' property against buffer
positions traversed in the glyph row.
Karl Berry [Sun, 8 Jun 2014 19:30:13 +0000 (22:30 +0300)]
Simplify info.info for the stand-alone reader
doc/misc/info.texi (Help-^L): "mode line", "screenful",
stand-alone and Emacs Info both use the mode line.
Use x instead of weird C-x 0 to get rid of help msg
in standalone Info.
Glenn Morris [Sun, 8 Jun 2014 07:00:20 +0000 (00:00 -0700)]
info.texi tweaks re S-SPC
* doc/misc/info.texi (Help-Small-Screen): Clarify details of S-SPC.
(Help-Small-Screen, Help-]): Do not mention S-SPC.
(Emacs Info Variables): Markup fix.
Paul Eggert [Sat, 7 Jun 2014 06:10:39 +0000 (23:10 -0700)]
Port better to AIX.
* configure.ac (with_xpm_set): New shell var.
(_THREAD_SAFE): Define on AIX if HAVE_PTHREAD.
(with_xpm): Default to 'no' on AIX.
(LIBXPM): Append -lXpm if -lXaw is also used, as the latter
requires the former on AIX.
Juri Linkov [Fri, 6 Jun 2014 23:38:40 +0000 (02:38 +0300)]
* lisp/desktop.el: Activate auto-saving on window configuration changes.
(desktop-save-mode, desktop-auto-save-timeout): Add/remove
`desktop-auto-save-set-timer' to/from `window-configuration-change-hook'.
(desktop-auto-save-set-timer): Change REPEAT arg of
`run-with-idle-timer' from t to nil.
http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00147.html
Eli Zaretskii [Wed, 4 Jun 2014 09:16:46 +0000 (12:16 +0300)]
Attempt to solve bug #17497 by minimizing cursor motion during TTY menu updates.
src/term.c (tty_menu_display): Don't position cursor here. Instead,
pass the cursor coordinates to update_frame_with_menu.
(tty_menu_activate): Send the hide cursor command only once in an
iteration through the outer 'while' loop.
src/dispnew.c (update_frame_1): Accept an additional argument
SET_CURSOR_P, and position the cursor at the end of the frame
update only if that argument is non-zero. All callers changed to
provide the additional argument as non-zero, except for
update_frame_with_menu.
(update_frame_with_menu): Accept 2 additional arguments ROW and
COL; if they are non-negative, instruct update_frame_1 not to
position the cursor, and instead position it according to ROW and
COL.
src/dispextern.h (update_frame_with_menu): Update prototype.
Paul Eggert [Sun, 1 Jun 2014 07:06:28 +0000 (00:06 -0700)]
Bring back the changes to GDB-visible symbols, but only on AIX.
And only if it's not pre-4.2 GCC.
* lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
(ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
(ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
New macros.
Paul Eggert [Fri, 30 May 2014 20:19:29 +0000 (13:19 -0700)]
Fix port to 32-bit AIX with xlc.
This doesn't fix Bug#17598, but it does fix a regression since Emacs
built with xlc until recently, and perhaps it'll help us fix Bug#17598.
* configure.ac (GC_SETJMP_WORKS): Define for AIX, too.
Merge from gnulib, incorporating:
2014-05-30 ftoastr: work around compiler bug in IBM xlc 12.1
* lib/ftoastr.c: Update from gnulib.
* src/alloc.c (gdb_make_enums_visible): Remove FLOAT_TO_STRING_BUFSIZE.
* src/conf_post.h (FLEXIBLE_ARRAY_MEMBER) [__IBMC__]: Don't define to empty.
* src/lisp.h (FLOAT_TO_STRING_BUFSIZE): Make it a macro, instead of an enum,
to work around a compiler bug in IBM xlc 12.1.
Eli Zaretskii [Thu, 29 May 2014 16:47:49 +0000 (19:47 +0300)]
Fix bug #17588 with mouse highlight when an X frame is redisplayed frequently.
src/xterm.c (x_update_window_end): Don't invalidate the entire
mouse-highlight info, just signal frame_up_to_date_hook that mouse
highlight needs to be redisplayed.
Paul Eggert [Thu, 29 May 2014 05:31:43 +0000 (22:31 -0700)]
Port the GDB-visible symbols to AIX.
Without them, GDB doesn't work to debug Emacs, since the AIX linker
optimizes away the relevant external symbols. Use enums instead;
this suffices for the AIX port, which is 32-bit-only anyway.
* lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
(ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
(ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
New macros.
Stefan Monnier [Tue, 27 May 2014 14:59:08 +0000 (10:59 -0400)]
* lisp/simple.el (deactivate-mark): Set mark-active to nil even if deactivation
is done via setting transient-mark-mode to nil, since one is
buffer-local and the other is global.
Paul Eggert [Mon, 26 May 2014 15:48:28 +0000 (08:48 -0700)]
Include sources used to create macuvs.h.
* admin/unidata/IVD_Sequences.txt: New file.
* admin/unidata/Makefile.in (${top_srcdir}/src/macuvs.h): New rule.
(all): Build it.
(extraclean): Remove it.
* admin/unidata/README: Mention BidiMirroring.txt and IVD_Sequences.txt.
* admin/unidata/copyright.html: Update to current version from Unicode
Consortium.
* admin/unidata/uvs.el: Rename from admin/mac/uvs.el.
(uvs-print-table-ivd): Output a header in the form that
unidata-gen.el generates.
* lisp/international/README: Refer to the Unicode Terms of Use rather
than copying it bodily here, as that simplifies maintenance.
* src/Makefile.in ($(srcdir)/macuvs.h): New rule.
* src/macuvs.h: Use automatically-generated header.
Stefan Monnier [Sat, 24 May 2014 15:50:05 +0000 (11:50 -0400)]
* src/xdisp.c: Bind inhibit-quit during pre-redisplay-function.
(safe__call, safe__call1, safe__eval): New functions.
(safe_call): Use it.
(prepare_menu_bars): Use it for pre-redisplay-function.
(display_mode_element): Same for `:eval'.
Stephen Berman [Fri, 23 May 2014 16:54:35 +0000 (18:54 +0200)]
todo-mode.el: Remove dependence on auto-mode-alist.
* calendar/todo-mode.el: Remove dependence on auto-mode-alist,
to avoid errors when trying to create or visit a file foo.todo
located outside to todo-directory, and to allow having such files
without them being tied to Todo mode.
(todo-show, todo-move-category, todo-merge-category, todo-find-archive)
(todo-archive-done-item, todo-find-filtered-items-file)
(todo-filter-items, todo-find-item, todo-diary-goto-entry)
(todo-category-completions, todo-read-category): When visiting a
Todo file, make sure we're in the right mode and the buffer local
variables are set.
(todo-make-categories-list, todo-reset-nondiary-marker)
(todo-reset-done-string, todo-reset-comment-string): After
processing all Todo files, kill the buffers of those files that
weren't being visited before the processing.
(todo-display-as-todo-file, todo-add-to-buffer-list)
(todo-visit-files-commands): Comment out.
(todo-modes-set-3, todo-mode): Comment out additions to find-file-hook.
(auto-mode-alist): Remove add-to-list calls making Todo file
extensions unrestrictedly tied to Todo modes.
* doc/misc/todo-mode.texi: Update in light of changes due to bug#17482.
Replace numerous mistaken uses of literal quotes with proper
Texinfo markup.
(Todo Mode Entry Points): Comment out reference to using find-file
or Dired to visit Todo files, since this has been disabled (bug#17482).
Stefan Monnier [Fri, 23 May 2014 16:17:14 +0000 (12:17 -0400)]
* lisp/emacs-lisp/nadvice.el (advice--member-p): Change second arg.
(advice-function-member-p): Tell it to check both names and functions.
(advice--add-function): Adjust call accordingly.
Stephen Berman [Fri, 23 May 2014 12:10:50 +0000 (14:10 +0200)]
* calendar/todo-mode.el: Miscellaneous bug fixes.
(todo-delete-file): When deleting an archive but not its todo
file, make sure to update the todo file's category sexp.
(todo-move-category): Keep the moved category's name unless the
file moved to already has a category with that name. If the
numerically last category of the source file was moved, make the
first category current to avoid selecting a nonexisting category.
(todo-merge-category): Fix implementation to make merging to a
category in another file work as documented. Eliminate now
insufficient and unnecessary renaming of archive category, correct
document string accordingly, and clarify it. If the numerically
last category of the source file was merged, make the first
category current to avoid selecting a nonexisting category.
(todo-archive-done-item): When there are marked items and point
happens to be on an unmarked item, ignore the latter. Don't leave
point below last item after archiving marked items.
(todo-unarchive-items): Fix logic to ensure unarchiving an item
from an archive with only one category deletes the archive only
when the category is empty after unarchiving. Make sure the todo
file's category sexp is updated.
(todo-read-file-name): Allow an existing file name even when it is
not required (todo-move-category needs this to work as documented).
(todo-add-file): Call todo-validate-name to reject the name of an
existing todo file (needed due to fix in todo-read-file-name).
(todo-reset-nondiary-marker): Also reset in filtered items files.
(todo-reset-done-string, todo-reset-comment-string): Also reset in
regexp filtered items files.
(todo-reset-highlight-item): Also reset in filtered items files.
Fix incorrect variable reference in document string.
Paul Eggert [Thu, 22 May 2014 05:00:39 +0000 (22:00 -0700)]
Fix port to 32-bit AIX.
* configure.ac (opsys): On Power Architecture, treat release 7 of
AIX like releases 5 and 6.
* src/unexaix.c (copy_text_and_data): Don't add text_scnptr to ptr
twice. _text already includes this offset.
(unrelocate_symbols): Don't cast 64-bit integer to pointer.