Eli Zaretskii [Fri, 26 Oct 2012 09:46:46 +0000 (11:46 +0200)]
Avoid hourglass mouse pointer when a tooltip for menu item is shown.
src/w32fns.c (w32_wnd_proc) <WM_MOUSEMOVE>: Don't enable tracking of
mouse movement events if the menu bar is active. This avoids
producing a busy "hour-glass" cursor by Windows if the mouse
pointer is positioned over a tooltip shown for some menu item.
Glenn Morris [Fri, 26 Oct 2012 07:32:40 +0000 (00:32 -0700)]
Misc fixes for make uninstall
* Makefile.in (uninstall): Don't abort if some directories are missing.
Apply transformation rules to manual pages, desktop and icon files.
No more emacs22 icons to uninstall.
David Engster [Thu, 25 Oct 2012 20:13:16 +0000 (22:13 +0200)]
Merge CEDET upstream.
* emacs-lisp/eieio.el (eieio-update-lisp-imenu-expression):
Removed. This feature is already integrated in imenu.
* emacs-lisp/eieio-opt.el: Remove require for `button' since it is
always loaded. Require `speedbar' unconditionally.
* semantic/analyze.el (semantic-analyze-dereference-alias): New
function to dereference aliases.
(semantic-analyze-current-context-default): Use it.
* semantic/grammar.el (semantic-grammar-create-package):
* srecode/compile.el (srecode-compile-templates): Throw a proper
error if semantic-mode is not enabled (bug#9968).
Compiler warning fixes:
* semantic.el (semantic-elapsed-time): Make it a defsubst.
* srecode/dictionary.el (srecode-adebug-dictionary): Remove
require for `semantic'.
* srecode/map.el:
* srecode/insert.el: Declare functions from `data-debug'.
* semantic/grammar.el: Require `help-fns'. Declare functions from
`eldoc', which is required in function body.
Paul Eggert [Thu, 25 Oct 2012 04:35:39 +0000 (21:35 -0700)]
Don't assume process IDs fit in int.
* emacs.c (shut_down_emacs) [!DOS_NT]:
* sysdep.c (sys_suspend) [SIGTSTP && !MSDOS]:
* term.c (dissociate_if_controlling_tty) [!DOS_NT]:
Use pid_t, not int, to store process IDs, as 'int'
is not wide enough on a few platforms (e.g., AIX and IRIX).
Glenn Morris [Wed, 24 Oct 2012 21:53:47 +0000 (17:53 -0400)]
Remove some old information from cl.texi that is no longer relevant
* doc/misc/cl.texi (Overview, Multiple Values, Creating Symbols)
(Numerical Functions): Say less/nothing about the original cl.el.
(Old CL Compatibility): Remove.
(Assertions): Remove ignore-errors (standard Elisp for some time).
Chong Yidong [Wed, 24 Oct 2012 14:38:49 +0000 (22:38 +0800)]
Document some Emacs 24.3 changes.
* doc/emacs/dired.texi (Dired Deletion, Marks vs Flags): Document Emacs 24.3
changes to the mark and unmark commands.
(Comparison in Dired): Document chages to dired-diff. Remove M-=,
which is no longer bound to dired-backup-diff.
* doc/emacs/mule.texi (Text Coding): set-buffer-file-coding-system can now
be invoked from the mode line.
Paul Eggert [Wed, 24 Oct 2012 05:12:23 +0000 (05:12 +0000)]
Update manual for new time stamp format.
These instances were missed the first time around.
Problem reported by Glenn Morris in <http://bugs.gnu.org/12706#25>.
* doc/lispintro/emacs-lisp-intro.texi (Files List):
* doc/lispref/buffers.texi (Modification Time):
* doc/lispref/files.texi (Testing Accessibility, File Attributes):
* doc/lispref/intro.texi (Version Info):
* doc/lispref/os.texi (Time of Day):
* doc/misc/emacs-mime.texi (time-date):
Update for new time stamp format (HIGH LOW MICROSEC PICOSEC).
* doc/misc/emacs-mime.texi (time-date):
Also, fix bogus time stamp and modernize a bit.
Stefan Monnier [Wed, 24 Oct 2012 03:18:32 +0000 (23:18 -0400)]
* lisp/minibuffer.el (completion--all-sorted-completions-location): New var.
(completion--cache-all-sorted-completions)
(completion--flush-all-sorted-completions): Use it.
(completion-in-region, completion-in-region--postch)
(completion-at-point, completion-help-at-point): Use markers in
completion-in-region--data.
Michael Albinus [Tue, 23 Oct 2012 14:26:30 +0000 (16:26 +0200)]
* net/tramp-smb.el (tramp-smb-maybe-open-connection): Set
`tramp-chunksize' to 1. This improves the performance.
(tramp-smb-wait-for-output): Add timeout to
`tramp-accept-process-output' calls.
Paul Eggert [Tue, 23 Oct 2012 07:57:42 +0000 (00:57 -0700)]
Fix outdated timestamp documentation in Elisp manual.
* doc/lispref/files.texi (File Attributes):
* doc/lispref/text.texi (Undo):
Time stamp resolution is now 1 picosecond, not 1 second.
* etc/NEWS: Document increased precision in undo list.
Glenn Morris [Tue, 23 Oct 2012 07:43:39 +0000 (00:43 -0700)]
Start updating cl.texi for cl-lib changes
* doc/misc/cl.texi: Include emacsver.texi.
Use Emacs version number rather than unchanging cl.el version number.
End all menu descriptions with a period.
Do not use @dfn{CL} for every instance of "CL".
(Overview): Remove no-runtime caveat, and note about foo* names.
(Usage): Use cl-lib rather than cl.
(Organization, Naming Conventions): Update for cl-lib.el.
(Installation): Remove long-irrelevant node.
(Program Structure, Predicates, Control Structure):
Start updating for cl-lib namespace.
* doc/misc/Makefile.in ($(buildinfodir)/cl$(INFO_EXT), cl.dvi, cl.pdf):
Depend on emacsver.texi.
Stefan Monnier [Mon, 22 Oct 2012 12:43:54 +0000 (08:43 -0400)]
Rework the last delsel/electric fix.
* lisp/delsel.el (delete-selection-helper): Use a function instead of a hook.
(delete-selection-pre-hook): Use use-region-p.
(delete-selection-self-insert-function): Remove.
(self-insert-command): Obey self-insert-uses-region-functions.
(self-insert-iso): Revert to previous setting, since we don't actually
know what that command does.
(delete-selection-self-insert-hooks): Remove.
* lisp/electric.el (electric-pair-delete-selection-self-insert-function):
Rename to electric-pair-will-use-region, return a boolean.
(electric-pair-mode): Adjust accordingly. Don't require delsel.
Simon Law [Mon, 22 Oct 2012 03:15:44 +0000 (23:15 -0400)]
* lisp/delsel.el (delete-selection-helper): New function, extracted from
delete-selection-pre-hook.
(delete-selection-pre-hook): Use it.
(delete-selection-self-insert-function): New function.
(delete-selection-self-insert-hooks): New hook.
(self-insert-command, self-insert-iso): Use it.
* lisp/electric.el (electric-pair-syntax): New function, extracted from
electric-pair-post-self-insert-function.
(electric-pair-post-self-insert-function): Use it.
(electric-pair-delete-selection-self-insert-function): New function.
(electric-pair-mode): Require delsel and setup
delete-selection-self-insert-hooks.
Paul Eggert [Sat, 20 Oct 2012 21:30:51 +0000 (14:30 -0700)]
Port to OpenBSD 5.1.
* frame.c (Fmouse_position, Fmouse_pixel_position):
* xdisp.c (produce_stretch_glyph):
Declare local vars only when they're needed.
This is clearer and avoids a warning on OpenBSD about unused vars.
* frame.h (FRAME_WINDOW_P): Always evaluate its argument.
This is safer, and avoids OpenBSD warnings about unused vars.
* keyboard.c (record_menu_key): Remove unnecessary decl.
(poll_timer): Define only if POLL_FOR_INPUT is defined.
* unexelf.c (ELFSIZE) [!ElfW]: Do not define if already defined,
as our definition clashes with OpenBSD's.
* xfaces.c (load_face_colors, check_lface_attrs)
(get_lface_attributes_no_remap, get_lface_attributes)
(lface_fully_specified_p, x_supports_face_attributes_p)
(tty_supports_face_attributes_p, face_fontset, realize_face)
(realize_x_face, realize_tty_face):
Declare parameters to be Lisp_Object[LFACE_VECTOR_SIZE], not
merely Lisp_Object *. This is more informative and avoids
a warning on OpenBSD about accessing beyond an object's size.
Eli Zaretskii [Sat, 20 Oct 2012 15:26:10 +0000 (17:26 +0200)]
Fix last changes in make-docfile.c.
lib-src/make-docfile.c (IS_SLASH, DEF_ELISP_FILE): New macros.
(scan_lisp_file): Only pass a .el file if its basename matches a
known file in its entirety. Use IS_SLASH and DEF_ELISP_FILE.
Eli Zaretskii [Sat, 20 Oct 2012 10:01:19 +0000 (12:01 +0200)]
Fix bug #12395 with doc strings silently omitted from DOC on MS-Windows.
lib-src/make-docfile.c (scan_lisp_file): Barf if called with a .el file
other than one of a small list of supported un-compiled files.
lib-src/makefile.w32-in (lisp1, lisp2): Name .elc files wherever they
exist.
lisp/loadup.el: Update comment about uncompiled Lisp files.
Paul Eggert [Fri, 19 Oct 2012 16:52:02 +0000 (09:52 -0700)]
Use faccessat, not access, when checking file permissions.
* .bzrignore: Add lib/fcntl.h.
* configure.ac (euidaccess): Remove check; gnulib does this for us now.
(gl_FCNTL_O_FLAGS): Define a dummy version.
* lib/at-func.c, lib/euidaccess.c, lib/faccessat.c, lib/fcntl.in.h:
* lib/getgroups.c, lib/group-member.c, lib/root-uid.h:
* lib/xalloc-oversized.h, m4/euidaccess.m4, m4/faccessat.m4:
* m4/fcntl_h.m4, m4/getgroups.m4, m4/group-member.m4:
New files, from gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* admin/merge-gnulib (GNULIB_MODULES): Add faccessat.
(GNULIB_TOOL_FLAGS): Avoid at-internal, fchdir, malloc-posix,
openat-die, openat-h, save-cwd. Do not avoid fcntl-h.
Omit gnulib's m4/fcntl-o.m4.
* nt/inc/ms-w32.h (AT_FDCWD, AT_EACCESS): New symbols.
(access): Remove.
(faccessat): New macro.
* src/Makefile.in (LIB_EACCESS): New macro.
(LIBES): Use it.
* src/callproc.c (init_callproc):
* src/charset.c (init_charset):
* src/fileio.c (check_existing, check_executable):
* src/lread.c (openp, load_path_check):
* src/process.c (allocate_pty):
* src/xrdb.c (file_p):
Use faccessat, not access or euidaccess. Use symbolic names
instead of integers for the flags, as they're portable now.
* src/charset.c, src/xrdb.c: Include <fcntl.h>, for the new flags used.
* src/fileio.c (Ffile_readable_p):
Use faccessat, not stat + open + close.
(file_directory_p): New function, which uses 'stat' on most places
but 'access' (for efficiency) if WINDOWSNT.
* src/fileio.c (Ffile_directory_p, Fset_file_times):
* src/xrdb.c (file_p): Use file_directory_p.
* src/lisp.h (file_directory_p): New decl.
* src/lread.c (openp): When opening a file, use fstat rather than
stat, as that avoids a permissions race. When not opening a file,
use file_directory_p rather than stat.
* src/process.c, src/sysdep.c, src/term.c: All uses of '#ifdef O_NONBLOCK'
changed to '#if O_NONBLOCK', to accommodate gnulib O_* tyle.
* src/w32.c (sys_faccessat): Rename from sys_access and switch to
faccessat's API. All uses changed.
Eli Zaretskii [Fri, 19 Oct 2012 10:05:09 +0000 (12:05 +0200)]
Increase the value of BASE_PURESIZE to avoid pure space overflow.
src/puresize.h (BASE_PURESIZE): Bump the base value to 1700000. See
http://lists.gnu.org/archive/html/emacs-devel/2012-10/msg00593.html
for the reasons.