]> code.delx.au - gnu-emacs/log
gnu-emacs
11 years agoMerge from emacs-24; up to 2012-05-05T02:50:20Z!monnier@iro.umontreal.ca
Glenn Morris [Wed, 5 Sep 2012 07:05:56 +0000 (00:05 -0700)]
Merge from emacs-24; up to 2012-05-05T02:50:20Z!monnier@iro.umontreal.ca

11 years agoChangeLog fixes
Glenn Morris [Wed, 5 Sep 2012 06:56:55 +0000 (23:56 -0700)]
ChangeLog fixes

11 years ago* xdisp.c (set_message): Simplify and reindent last change.
Paul Eggert [Wed, 5 Sep 2012 03:37:32 +0000 (20:37 -0700)]
* xdisp.c (set_message): Simplify and reindent last change.

11 years agosrc/makefile.w32-in ($(BLD)/sysdep.$(O)): Update dependencies.
Juanma Barranquero [Wed, 5 Sep 2012 00:30:14 +0000 (02:30 +0200)]
src/makefile.w32-in ($(BLD)/sysdep.$(O)): Update dependencies.

11 years agont/config.nt: Sync with autogen/config.in.
Juanma Barranquero [Wed, 5 Sep 2012 00:17:57 +0000 (02:17 +0200)]
nt/config.nt: Sync with autogen/config.in.

11 years agoImplement `debug-on-message'.
Lars Ingebrigtsen [Tue, 4 Sep 2012 21:21:00 +0000 (23:21 +0200)]
Implement `debug-on-message'.

This allows tracking down what piece of code is outputting stuff in
the echo area.

* eval.c (call_debugger): Make the function non-static so that we
can call it from set_message.

* xdisp.c (set_message): Implement the new variable `debug-on-message'.
(syms_of_xdisp): Defvar it and `inhibit-debug-on-message'.

11 years agoGive more-useful info on a fatal error (Bug#12328).
Paul Eggert [Tue, 4 Sep 2012 18:29:04 +0000 (11:29 -0700)]
Give more-useful info on a fatal error (Bug#12328).

* doc/emacs/trouble.texi (Crashing): New section, documenting this.
* etc/NEWS: Document the change.
* src/alloc.c [ENABLE_CHECKING]: Do not include <execinfo.h>.
(die) [ENABLE_CHECKING]: Call fatal_error_backtrace instead
of doing the work ourselves.
* src/emacs.c (fatal_error_signal): Let fatal_error_backtrace
do most of the work.
(fatal_error_backtrace): New function, taken from the guts
of the old fatal_error_signal, but with a new option to output
a backtrace.
(shut_down_emacs) [!DOS_NT]: Use strsignal to give more-useful
info about the signal than just its number.
* src/lisp.h (fatal_error_backtrace, emacs_backtrace): New decls.
* src/sysdep.c: Include <execinfo.h>
(emacs_backtrace): New function, taken partly from the previous
code of the 'die' function.
(emacs_abort): Call fatal_error_backtrace rather than abort.

11 years agoMacro-expand interpreted code during load.
Stefan Monnier [Tue, 4 Sep 2012 17:40:25 +0000 (13:40 -0400)]
Macro-expand interpreted code during load.
* src/lread.c (readevalloop): Call internal-macroexpand-for-load to perform
eager (load-time) macro-expansion.
* src/lisp.mk (lisp): Add macroexp.
* lisp/loadup.el: Load macroexp.  Remove hack.
* lisp/emacs-lisp/macroexp.el (macroexp--eval-if-compile): New function.
(macroexp--expand-all): Use it to get better warnings.
(macroexp--backtrace, macroexp--trim-backtrace-frame)
(internal-macroexpand-for-load): New functions.
(macroexp--pending-eager-loads): New var.
(emacs-startup-hook): New hack to replace one in loadup.el.
* lisp/emacs-lisp/cl-macs.el (cl--compiler-macro-list*)
(cl--compiler-macro-cXXr): Move to top, before they can be used.
(cl-psetf): Simplify.
(cl-defstruct): Add indent rule.

11 years agoSimplify redefinition of 'abort' (Bug#12316).
Paul Eggert [Tue, 4 Sep 2012 17:34:54 +0000 (10:34 -0700)]
Simplify redefinition of 'abort' (Bug#12316).

Do not try to redefine the 'abort' function.  Instead, redo
the code so that it calls 'emacs_abort' rather than 'abort'.
This removes the need for the NO_ABORT configure-time macro
and makes it easier to change the abort code to do a backtrace.
* configure.ac (NO_ABRT): Remove.
* admin/CPP-DEFINES (NO_ABORT): Remove.
* nt/inc/ms-w32.h (w32_abort) [HAVE_NTGUI]: Remove.
* src/.gdbinit: Just stop at emacs_abort, not at w32_abort or abort.
* src/emacs.c (abort) [!DOS_NT && !NO_ABORT]:
Remove; sysdep.c's emacs_abort now takes its place.
* src/lisp.h (emacs_abort): New decl.  All calls from Emacs code to
'abort' changed to use 'emacs_abort'.
* src/msdos.c (dos_abort) [defined abort]: Remove; not used.
(abort) [!defined abort]: Rename to ...
(emacs_abort): ... new name.
* src/sysdep.c (emacs_abort) [!HAVE_NTGUI]: New function, taking
the place of the old 'abort' in emacs.c.
* src/w32.c, src/w32fns.c (abort): Do not #undef.
* src/w32.c (emacs_abort): Rename from w32_abort.

11 years agoFix display of Arabic diacriticals on Windows, per bug #11860.
Eli Zaretskii [Tue, 4 Sep 2012 17:15:45 +0000 (20:15 +0300)]
Fix display of Arabic diacriticals on Windows, per bug #11860.

 src/w32uniscribe.c (uniscribe_shape): Reverse the sign of
 offsets[j].dv, since the y axis of the screen coordinates points
 down, while the y axis of the font definition coordinates points
 up.  This fixes display of Arabic diacritics such as KASRA and
 KASRATAN.

11 years agoHave smtpmail.el prefer the From: header for the MAIL FROM envelope
Lars Ingebrigtsen [Tue, 4 Sep 2012 16:00:10 +0000 (18:00 +0200)]
Have smtpmail.el prefer the From: header for the MAIL FROM envelope

* mail/smtpmail.el (smtpmail-send-it): Prefer the From: header
over `user-mail-address' for the SMTP MAIL FROM envelope.
(smtpmail-via-smtp): Ditto.

11 years agoAuto-commit of generated files.
Glenn Morris [Tue, 4 Sep 2012 10:17:39 +0000 (06:17 -0400)]
Auto-commit of generated files.

11 years agoBe more systematic about _setjmp vs setjmp.
Paul Eggert [Tue, 4 Sep 2012 06:34:19 +0000 (23:34 -0700)]
Be more systematic about _setjmp vs setjmp.

* alloc.c (test_setjmp, mark_stack):
* image.c (PNG_LONGJMP) [PNG_LIBPNG_VER < 10500]:
(PNG_JMPBUF) [! (PNG_LIBPNG_VER < 10500)]:
(png_load, my_error_exit, jpeg_load):
* process.c (send_process_trap, send_process):
Uniformly prefer _setjmp and _longjmp to setjmp and longjmp.
The underscored versions are up to 30x faster on some hosts.
Formerly, the code used setjmp+longjmp sometimes and
_setjmp+_longjmp at other times, with no particular reason to
prefer setjmp+longjmp.

11 years ago* configure.ac (_setjmp, _longjmp): Check by compiling
Paul Eggert [Tue, 4 Sep 2012 06:25:44 +0000 (23:25 -0700)]
* configure.ac (_setjmp, _longjmp): Check by compiling

instead of by guessing.  The guesses were wrong for
recent versions of Solaris, such as Solaris 11.

11 years ago* progmodes/ruby-mode.el: Clean up keybindings (ChangeLog entry).
Dmitry Gutov [Tue, 4 Sep 2012 04:44:43 +0000 (08:44 +0400)]
* progmodes/ruby-mode.el: Clean up keybindings (ChangeLog entry).

11 years ago* ruby-mode.el: Clean up keybindings.
Dmitry Gutov [Tue, 4 Sep 2012 04:42:47 +0000 (08:42 +0400)]
* ruby-mode.el: Clean up keybindings.
(ruby-mode-map): Don't bind ruby-electric-brace,
ruby-beginning-of-defun, ruby-end-of-defun, ruby-mark-defun,
backward-kill-word, reindent-then-newline-and-indent.
(ruby-mark-defun): Remove.
(ruby-electric-brace): Remove.  Obsoleted by electric-indent-chars.
(ruby-mode): Set local beginning-of-defun-function and
end-of-defun-function values.

11 years ago[Gnus] Silence XEmacs compilation warnings
Lars Ingebrigtsen [Mon, 3 Sep 2012 22:12:02 +0000 (22:12 +0000)]
[Gnus] Silence XEmacs compilation warnings

11 years agoRevert changes prompted only by gcc -Wjump-misses-init.
Paul Eggert [Mon, 3 Sep 2012 19:36:09 +0000 (12:36 -0700)]
Revert changes prompted only by gcc -Wjump-misses-init.

11 years ago* configure.ac (WARN_CFLAGS): Omit -Wjump-misses-init.
Paul Eggert [Mon, 3 Sep 2012 19:34:49 +0000 (12:34 -0700)]
* configure.ac (WARN_CFLAGS): Omit -Wjump-misses-init.

It generates false alarms in doc.c, regex.c, xdisp.c.  See
<http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00040.html>.

11 years agoAuto-commit of generated files.
Glenn Morris [Mon, 3 Sep 2012 10:17:43 +0000 (06:17 -0400)]
Auto-commit of generated files.

11 years agoMerge from gnulib.
Paul Eggert [Mon, 3 Sep 2012 09:26:56 +0000 (02:26 -0700)]
Merge from gnulib.

This incorporates:
2012-08-29 stdbool: be more compatible with mixed C/C++ compiles
2011-11-30 manywarnings: update the list of "all" warnings

11 years agoFix minor problems found by static checking.
Paul Eggert [Mon, 3 Sep 2012 09:22:43 +0000 (02:22 -0700)]
Fix minor problems found by static checking.

* buffer.c (Fdelete_all_overlays): Return nil.
* doc.c (Fsubstitute_command_keys):
* regex.c (WEAK_ALIAS):
* xdisp.c (redisplay_internal):
Move initialization down, to pacify GCC 4.7.1 -Wjump-misses-init.

11 years agoNew macro with-temp-buffer-window and related fixes.
Martin Rudalics [Mon, 3 Sep 2012 08:54:25 +0000 (10:54 +0200)]
New macro with-temp-buffer-window and related fixes.

* buffer.c (Fdelete_all_overlays): New function.

* window.el (temp-buffer-window-setup-hook)
(temp-buffer-window-show-hook): New hooks.
(temp-buffer-window-setup, temp-buffer-window-show)
(with-temp-buffer-window): New functions.
(fit-window-to-buffer): Remove unused optional argument
OVERRIDE.
(special-display-popup-frame): Make sure the window used shows
BUFFER.

* help.el (temp-buffer-resize-mode): Fix doc-string.
(resize-temp-buffer-window): New optional argument WINDOW.

* files.el (recover-file, save-buffers-kill-emacs):
* dired.el (dired-mark-pop-up): Use with-temp-buffer-window.

11 years ago* gtkutil.c: Add extern decl for Qxft.
Chong Yidong [Mon, 3 Sep 2012 08:13:33 +0000 (16:13 +0800)]
* gtkutil.c: Add extern decl for Qxft.

11 years ago* emacs.c, eval.c: Use bool for boolean.
Paul Eggert [Sun, 2 Sep 2012 17:10:35 +0000 (10:10 -0700)]
* emacs.c, eval.c: Use bool for boolean.

* emacs.c (initialized, inhibit_window_system, running_asynch_code):
(malloc_using_checking) [DOUG_LEA_MALLOC]:
(display_arg) [HAVE_X_WINDOWS || HAVE_NS]:
(noninteractive, no_site_lisp, fatal_error_in_progress, argmatch)
(main, decode_env_path, Fdaemon_initialized):
* eval.c (call_debugger, Finteractive_p, interactive_p):
(unwind_to_catch, Fsignal, wants_debugger, skip_debugger)
(maybe_call_debugger, Fbacktrace):
* process.c (read_process_output, exec_sentinel):
Use bool for booleans.
* emacs.c (shut_down_emacs): Omit unused boolean argument NO_X.
All callers changed.
* eval.c (interactive_p): Omit always-true boolean argument
EXCLUDE_SUBRS_P.  All callers changed.
* dispextern.h, lisp.h: Reflect above API changes.
* firstfile.c (dummy): Use the address of 'main', whose signature
won't change, instead of the address of 'initialize', whose
signature just changed from int to bool.
* lisp.h (fatal_error_in_progress): New decl of boolean, moved here ...
* msdos.c (fatal_error_in_progress): ... from here.
* xdisp.c (redisplaying_p): Now a boolean.  Set it to 1 instead
of incrementing it.
(redisplay_internal, unwind_redisplay): Simply clear
REDISPLAYING_P when unwinding, instead of saving its previous,
always-false value and then restoring it.

11 years agoClean up some extern decls.
Paul Eggert [Sun, 2 Sep 2012 16:56:31 +0000 (09:56 -0700)]
Clean up some extern decls.

Mostly, this hoists extern decls out of .c files and into .h files.
That way, we're more likely to catch errors if the interfaces change.
* alloc.c [USE_GTK]: Include "gtkutil.h" so that we need not
declare xg_mark_data.
* dispextern.h (x_frame_parm_handlers):
* font.h (Qxft):
* lisp.h (Qlexical_binding, Qinternal_interpreter_environment)
(Qextra_light, Qlight, Qsemi_light, Qsemi_bold, Qbold, Qextra_bold)
(Qultra_bold, Qoblique, Qitalic):
Move extern decl here from .c file.
* alloc.c (xg_mark_data) [USE_GTK]:
* doc.c (Qclosure):
* eval.c (Qlexical_binding):
* fns.c (time) [!HAVE_UNISTD_H]:
* gtkutil.c (Qxft, Qnormal, Qextra_light, Qlight, Qsemi_light)
(Qsemi_bold, Qbold, Qextra_bold, Qultra_bold, Qoblique, Qitalic):
* image.c (Vlibrary_cache, QCloaded_from) [HAVE_NTGUI]:
* lread.c (Qinternal_interpreter_environment):
* minibuf.c (Qbuffer):
* process.c (QCfamily, QCfilter):
* widget.c (free_frame_faces):
* xfaces.c (free_frame_menubar) [USE_X_TOOLKIT]:
* xfont.c (x_clear_errors):
* xterm.c (x_frame_parm_handlers):
Remove now-redundant extern decls.
* keyboard.c, keyboard.h (ignore_mouse_drag_p) [USE_GTK || HAVE_NS]:
* xfaces.c (Qultra_light, Qreverse_oblique, Qreverse_italic):
Now static.
* xfaces.c: Remove unnecessary static decls.
* xterm.c (updating_frame): Remove decl of nonexistent object.

11 years ago* Makefile.in (gl-stamp): Don't scan $(SOME_MACHINE_OBJECTS)
Paul Eggert [Sun, 2 Sep 2012 14:26:47 +0000 (07:26 -0700)]
* Makefile.in (gl-stamp): Don't scan $(SOME_MACHINE_OBJECTS)

when building globals.h, as the objects that are not built on
this host are not needed to compile C files on this host.

11 years ago* configure.ac (HAVE_GOBJECT): Check for gobject-2.0.
Jan Djärv [Sun, 2 Sep 2012 11:13:24 +0000 (13:13 +0200)]
* configure.ac (HAVE_GOBJECT): Check for gobject-2.0.

Fixes: debbugs:12332
11 years agoPrototype for x_wm_set_size_hint restored.
Jan Djärv [Sun, 2 Sep 2012 10:53:46 +0000 (12:53 +0200)]
Prototype for x_wm_set_size_hint restored.

* frame.h: Add missing prototype for x_wm_set_size_hint.

* gtkutil.h: Remove prototype for x_wm_set_size_hint.

11 years agoAuto-commit of generated files.
Glenn Morris [Sun, 2 Sep 2012 10:19:02 +0000 (06:19 -0400)]
Auto-commit of generated files.

11 years ago* eshell/em-unix.el (eshell/sudo): When we have an ad-hoc
Michael Albinus [Sun, 2 Sep 2012 09:57:19 +0000 (11:57 +0200)]
* eshell/em-unix.el (eshell/sudo): When we have an ad-hoc
remote definition of `default-directory', ensure we can connect.

11 years agoToggle whitespace matching mode with M-s SPC.
Juri Linkov [Sun, 2 Sep 2012 09:31:45 +0000 (12:31 +0300)]
Toggle whitespace matching mode with M-s SPC.
http://lists.gnu.org/archive/html/emacs-devel/2012-09/msg00008.html

* lisp/isearch.el (search-whitespace-regexp): Doc fix.
Remove cons cell customization.
(isearch-mode-map): Bind "\M-s " to isearch-toggle-lax-whitespace.
(isearch-lax-whitespace, isearch-regexp-lax-whitespace):
New variables.
(isearch-forward, isearch-forward-regexp): Doc fix.
(isearch-toggle-lax-whitespace): New command.
(search-forward-lax-whitespace, search-backward-lax-whitespace)
(re-search-forward-lax-whitespace)
(re-search-backward-lax-whitespace): New functions.
(isearch-whitespace-regexp): Remove function.
(isearch-query-replace): Let-bind replace-search-function and
replace-re-search-function.
(isearch-occur): Let-bind search-spaces-regexp according to the
value of isearch-lax-whitespace and isearch-regexp-lax-whitespace.
(isearch-quote-char): Check isearch-regexp-lax-whitespace in the
condition for C-q SPC.
(isearch-search-fun-default): Use new functions mentioned above.
(isearch-search-forward, isearch-search-backward): Remove functions.
(isearch-search): Don't let-bind search-spaces-regexp.
(isearch-lazy-highlight-space-regexp): Remove variable.
(isearch-lazy-highlight-lax-whitespace)
(isearch-lazy-highlight-regexp-lax-whitespace): New variables.
(isearch-lazy-highlight-new-loop): Use them.
(isearch-lazy-highlight-search): Don't let-bind search-spaces-regexp.

11 years ago* doc.c, editfns.c, insdel.c, intervals.c: Use bool for boolean.
Paul Eggert [Sun, 2 Sep 2012 07:10:10 +0000 (00:10 -0700)]
* doc.c, editfns.c, insdel.c, intervals.c: Use bool for boolean.

* doc.c (read_bytecode_char, get_doc_string, reread_doc_file)
(Fdocumentation, Fdocumentation_property, Fsnarf_documentation)
(Fsubstitute_command_keys):
* editfns.c (region_limit, find_field, Fconstrain_to_field)
(save_excursion_save, save_excursion_restore)
(disassemble_lisp_time, decode_time_components, emacs_nmemftime)
(format_time_string, general_insert_function)
(make_buffer_string, make_buffer_string_both)
(Fsubst_char_in_region, Ftranslate_region_internal, Fformat):
* insdel.c (check_markers, gap_left, adjust_markers_for_insert)
(copy_text, insert_1, insert_1_both, insert_from_string)
(insert_from_string_before_markers, insert_from_string_1)
(insert_from_buffer, insert_from_buffer_1, replace_range)
(replace_range_2, del_range_1, del_range_byte, del_range_both)
(del_range_2, modify_region):
* intervals.c (intervals_equal, balance_possible_root_interval)
(adjust_intervals_for_insertion, merge_properties_sticky)
(graft_intervals_into_buffer, lookup_char_property)
(adjust_for_invis_intang, set_point_both)
(get_property_and_range, compare_string_intervals)
(set_intervals_multibyte_1, set_intervals_multibyte):
* keyboard.c (decode_timer):
Use bool for boolean.
* intervals.h, lisp.h, systime.h: Reflect above API changes.
* editfns.c (struct info): Use 1-bit unsigned bitfields for booleans.

11 years agoRecommand against save-window-excursion in Lisp manual.
Chong Yidong [Sun, 2 Sep 2012 04:47:28 +0000 (12:47 +0800)]
Recommand against save-window-excursion in Lisp manual.

* windows.texi (Window Configurations): Recommend against using
save-window-excursion.

* control.texi (Catch and Throw):
* positions.texi (Excursions): Don't mention it.

Fixes: debbugs:12075
11 years ago* keymap.c (push_key_description): Print M-TAB as C-M-i.
Chong Yidong [Sun, 2 Sep 2012 03:50:29 +0000 (11:50 +0800)]
* keymap.c (push_key_description): Print M-TAB as C-M-i.

Fixes: debbugs:11758
11 years ago* dired.el (dired-mode-map): Menu string fixes.
Chong Yidong [Sun, 2 Sep 2012 02:47:02 +0000 (10:47 +0800)]
* dired.el (dired-mode-map): Menu string fixes.

Fixes: debbugs:11616
11 years agoExpand on NEWS entry about deletion of `z' from special-mode-map.
Chong Yidong [Sun, 2 Sep 2012 02:30:06 +0000 (10:30 +0800)]
Expand on NEWS entry about deletion of `z' from special-mode-map.

11 years agosrc/makefile.w32-in: Update dependencies.
Juanma Barranquero [Sun, 2 Sep 2012 02:22:33 +0000 (04:22 +0200)]
src/makefile.w32-in: Update dependencies.
(CCL_H, W32FONT_H): New macros.
(ATIMER_H, FONT_H, $(BLD)/alloc.$(O), $(BLD)/callproc.$(O))
($(BLD)/editfns.$(O), $(BLD)/ccl.$(O), $(BLD)/chartab.$(O))
($(BLD)/coding.$(O), $(BLD)/sysdep.$(O), $(BLD)/fontset.$(O))
($(BLD)/sysdep.$(O), $(BLD)/w32fns.$(O), $(BLD)/keyboard.$(O))
($(BLD)/w32term.$(O), $(BLD)/w32menu.$(O), $(BLD)/process.$(O))
($(BLD)/w32font.$(O), $(BLD)/w32uniscribe.$(O)): Update.

11 years agont/config.nt: Sync with autogen/config.in.
Juanma Barranquero [Sun, 2 Sep 2012 02:00:47 +0000 (04:00 +0200)]
nt/config.nt: Sync with autogen/config.in.
(HAVE_EXECINFO_H, TERM_HEADER): New macros.

11 years ago* lisp/simple.el (undo): Tweak message in undo-only case.
Glenn Morris [Sun, 2 Sep 2012 00:56:03 +0000 (17:56 -0700)]
* lisp/simple.el (undo): Tweak message in undo-only case.

Fixes: debbugs:12283
11 years agoTidy up term.el menu handling
Glenn Morris [Sat, 1 Sep 2012 22:03:06 +0000 (15:03 -0700)]
Tidy up term.el menu handling

* lisp/term.el: (term-mode-map): Use easymenu for In/Out, Complete menus.
(term-pager-break-map): Initialize in the defvar.
(term-terminal-menu, term-signals-menu): Define with easymenu.
(term-terminal-menu): Also show it in line-mode.
(term-pager-menu): New, extracted from term-process-pager.
(term-mode, term-char-mode, term-process-pager): Use easymenu-add.
(term-update-mode-line): Propertize line/char and page items.
(term-process-pager): Move keymap initialization elsewhere.

Fixes: debbugs:11957
11 years ago* configure.ac (_FORTIFY_SOURCE): Define only when optimizing.
Paul Eggert [Sat, 1 Sep 2012 18:54:38 +0000 (11:54 -0700)]
* configure.ac (_FORTIFY_SOURCE): Define only when optimizing.

This ports to glibc 2.15 or later, when configured with
--enable-gcc-warnings.  See Eric Blake in
<http://lists.gnu.org/archive/html/bug-grep/2012-09/msg00000.html>.

11 years agoRewrite switch-to-prev-/next-buffer and quit-window; add display-buffer-below-selected.
Martin Rudalics [Sat, 1 Sep 2012 16:47:09 +0000 (18:47 +0200)]
Rewrite switch-to-prev-/next-buffer and quit-window; add display-buffer-below-selected.

* window.el (switch-to-prev-buffer): Handle additional values of
BURY-OR-KILL argument.  Don't switch in minibuffer window.
(switch-to-next-buffer): Don't switch in minibuffer window.
(quit-restore-window): New function based on quit-window.
Handle additional values of former KILL argument.
(quit-window): Call quit-restore-window with appropriate
interpretation of KILL argument.
(display-buffer-below-selected): New buffer display action
function.

11 years agoFurther fix for bug #11860 with Arabic display on Windows.
Eli Zaretskii [Sat, 1 Sep 2012 13:54:27 +0000 (16:54 +0300)]
Further fix for bug #11860 with Arabic display on Windows.

 src/w32uniscribe.c (uniscribe_shape): Handle correctly the case of
 more than one grapheme cluster passed to the shaper: compute the
 offset adjustment values separately for each cluster.

11 years agoRemove conflict markers and fix entries for 2012-09-01T06:38:52Z!dancol@dancol.org.
Eli Zaretskii [Sat, 1 Sep 2012 12:23:50 +0000 (15:23 +0300)]
Remove conflict markers and fix entries for 2012-09-01T06:38:52Z!dancol@dancol.org.

11 years agoAuto-commit of loaddefs files.
Glenn Morris [Sat, 1 Sep 2012 11:17:44 +0000 (07:17 -0400)]
Auto-commit of loaddefs files.

11 years agoAuto-commit of loaddefs files.
Glenn Morris [Sat, 1 Sep 2012 10:20:47 +0000 (06:20 -0400)]
Auto-commit of loaddefs files.

11 years agoAuto-commit of generated files.
Glenn Morris [Sat, 1 Sep 2012 10:17:31 +0000 (06:17 -0400)]
Auto-commit of generated files.

11 years agoFix last changes related to w32 and Cygwin.
Eli Zaretskii [Sat, 1 Sep 2012 09:29:17 +0000 (12:29 +0300)]
Fix last changes related to w32 and Cygwin.

 src/image.c: Restore mistakenly removed inclusion of w32.h.  Without
 it, GCC doesn't see prototypes of w32_delayed_load, and complains
 about implicit conversions from integer to pointer.

11 years agoPrevent crash if w32 used before it's initialized
Daniel Colascione [Sat, 1 Sep 2012 08:22:10 +0000 (00:22 -0800)]
Prevent crash if w32 used before it's initialized

11 years agoMerge from cygw32 branch
Daniel Colascione [Sat, 1 Sep 2012 08:01:36 +0000 (00:01 -0800)]
Merge from cygw32 branch

11 years agoRefactor window-system configuration
Daniel Colascione [Sat, 1 Sep 2012 06:38:52 +0000 (22:38 -0800)]
Refactor window-system configuration

This change streamlines the window system selection code in
configure.in and moves many common function declarations from
window-specific headers to frame.h.  It introduces a new TERM_HEADER
macro in config.h: we set this macro to the right header to use for
the window system for which we're compiling Emacs and have source
files include it indirectly.  This way, we don't have to teach every
file about every window system.

11 years ago* lisp/minibuffer.el (completion-at-point-functions): Complete docstring.
Stefan Monnier [Sat, 1 Sep 2012 04:28:24 +0000 (00:28 -0400)]
* lisp/minibuffer.el (completion-at-point-functions): Complete docstring.

Fixes: debbugs:12254
11 years ago* sysdep.c (seed_random): Fix typo: HAV_LRAND48 -> HAVE_LRAND48.
Paul Eggert [Sat, 1 Sep 2012 01:13:50 +0000 (18:13 -0700)]
* sysdep.c (seed_random): Fix typo: HAV_LRAND48 -> HAVE_LRAND48.

This fixes a bug on old systems that do not have the 'random' function.

11 years agoBetter seed support for (random).
Paul Eggert [Sat, 1 Sep 2012 01:04:26 +0000 (18:04 -0700)]
Better seed support for (random).

* doc/lispref/numbers.texi (Random Numbers): Document new behavior of
the calls (random) and (random STRING).
* etc/NEWS: Document new behavior of (random), (random "string").
* lisp/play/5x5.el, lisp/play/animate.el, lisp/play/cookie1.el:
* lisp/play/dissociate.el, lisp/play/doctor.el, lisp/play/dunnet.el:
* lisp/play/gomoku.el, lisp/play/landmark.el, lisp/play/mpuz.el:
* lisp/play/tetris.el, lisp/play/zone.el:
* lisp/calc/calc-comb.el (math-init-random-base):
* lisp/play/blackbox.el (bb-init-board):
* lisp/play/life.el (life):
* lisp/server.el (server-use-tcp):
* lisp/type-break.el (type-break):
Remove unnecessary call to (random t).
* lisp/net/sasl.el (sasl-unique-id-function):
Change (random t) to (random), now that the latter is more random.
* lisp/play/life.el (life-initialized): Remove no-longer-needed var.
* lisp/gnus/gnus-sync.el (gnus-sync-lesync-setup):
* lisp/gnus/message.el (message-canlock-generate, message-unique-id):
Change (random t) to (random), now that the latter is more random.
* lisp/org/org-id.el (org-id-uuid):
Change (random t) to (random), now that the latter is more random.
* src/emacs.c (main): Call init_random.
* src/fns.c (Frandom): Set the seed from a string argument, if given.
Remove long-obsolete Gentzel cruft.
* src/lisp.h, src/sysdep.c (seed_random): Now takes address and size, not long.
(init_random): New function.

11 years agoFix right and left key remapping issue (bug#12317)
Glenn Morris [Fri, 31 Aug 2012 17:38:50 +0000 (13:38 -0400)]
Fix right and left key remapping issue (bug#12317)

* lisp/emulation/cua-rect.el (cua--init-rectangles):
* lisp/textmodes/picture.el (picture-mode-map):
* lisp/play/blackbox.el (blackbox-mode-map):
Remap right-char and left-char like forward-char and backward-char.

11 years agoFixes: debbugs:12306
Andreas Schwab [Fri, 31 Aug 2012 16:53:48 +0000 (18:53 +0200)]
Fixes: debbugs:12306
* etags.c (consider_token): Always zero-terminate token buffer.

11 years agoConsider frame's buffer predicate in switch-to-prev-/next-buffer.
Martin Rudalics [Fri, 31 Aug 2012 16:51:49 +0000 (18:51 +0200)]
Consider frame's buffer predicate in switch-to-prev-/next-buffer.

* window.el (switch-to-prev-buffer, switch-to-next-buffer):
Consider frame's buffer predicate when choosing the buffer.
(Bug#12081)

11 years ago* eshell/esh-ext.el: Explain, why we suppress the check in
Michael Albinus [Fri, 31 Aug 2012 11:11:06 +0000 (13:11 +0200)]
* eshell/esh-ext.el: Explain, why we suppress the check in
  `eshell-external-command'.

11 years agoRemove mark_ttys function and fix tty_display_info initialization.
Dmitry Antipov [Fri, 31 Aug 2012 10:53:19 +0000 (14:53 +0400)]
Remove mark_ttys function and fix tty_display_info initialization.
* lisp.h (mark_ttys): Remove prototype.
* alloc.c (Fgarbage_collect): Remove redundant (and the only) call
to mark_ttys because all possible values of 'top_frame' slot are
the frames which are reachable from Vframe_list.
* term.c (mark_ttys): Remove.
(init_tty): Safely initialize 'top_frame' slot with Qnil.

11 years ago[Gnus] Miscellaneous fixes by Dave Abrahams
Dave Abrahams [Fri, 31 Aug 2012 04:39:30 +0000 (04:39 +0000)]
[Gnus] Miscellaneous fixes by Dave Abrahams

11 years agoChange struct frame bitfields from unsigned char to unsigned.
Dmitry Antipov [Fri, 31 Aug 2012 04:40:52 +0000 (08:40 +0400)]
Change struct frame bitfields from unsigned char to unsigned.
* frame.h (struct frame): Change type of 'display_preempted',
'visible', 'iconified', 'has_minibuffer', 'wants_modeline',
'auto_raise', 'auto_lower', 'no_split', 'explicit_name',
'window_sizes_changed', 'mouse_moved' and 'pointer_invisible'
bitfields from unsigned char to unsigned.

11 years agoRemove unused member of struct x_output and struct w32_output.
Dmitry Antipov [Fri, 31 Aug 2012 04:14:59 +0000 (08:14 +0400)]
Remove unused member of struct x_output and struct w32_output.
* xterm.h (struct x_output): Remove unused field 'needs_exposure'.
* w32term.h (struct w32_output): Likewise.

11 years ago* lisp/gnus/gnus-notifications.el (gnus-notifications-action): Avoid CL-ism.
Stefan Monnier [Fri, 31 Aug 2012 00:46:01 +0000 (20:46 -0400)]
* lisp/gnus/gnus-notifications.el (gnus-notifications-action): Avoid CL-ism.

11 years agognus-notifications.el: Add defcustom for timeout and actions support
Julien Danjou [Thu, 30 Aug 2012 22:14:27 +0000 (22:14 +0000)]
gnus-notifications.el: Add defcustom for timeout and actions support

11 years agoDelete z binding in special-mode-map.
Richard M. Stallman [Thu, 30 Aug 2012 17:09:51 +0000 (13:09 -0400)]
Delete z binding in special-mode-map.

11 years agoDelete `z' in special-mode-map.
Richard M. Stallman [Thu, 30 Aug 2012 17:09:11 +0000 (13:09 -0400)]
Delete `z' in special-mode-map.

11 years ago* gtkutil.c (x_wm_set_size_hint): Use 1 col for base_width so it
Jan Djärv [Thu, 30 Aug 2012 16:07:44 +0000 (18:07 +0200)]
* gtkutil.c (x_wm_set_size_hint): Use 1 col for base_width so it
does not become zero.

Fixes: debbugs:12234
11 years ago* dispnew.c (update_frame_1): Pacify gcc -Wstrict-overflow
Paul Eggert [Thu, 30 Aug 2012 15:07:00 +0000 (08:07 -0700)]
* dispnew.c (update_frame_1): Pacify gcc -Wstrict-overflow

for GCC 4.7.1 x86-64.

11 years agoqp.el (quoted-printable-decode-region): Decode multiple bytes at once.
Kenichi Handa [Thu, 30 Aug 2012 12:16:38 +0000 (21:16 +0900)]
qp.el (quoted-printable-decode-region): Decode multiple bytes at once.

11 years agomerge trunk
Kenichi Handa [Thu, 30 Aug 2012 12:07:42 +0000 (21:07 +0900)]
merge trunk

11 years agoExtract "^[wW]arning" into a new var flymake-warning-re
Leo Liu [Thu, 30 Aug 2012 11:41:40 +0000 (19:41 +0800)]
Extract "^[wW]arning" into a new var flymake-warning-re

11 years ago* progmodes/compile.el (compilation-always-kill): Doc fix.
Andreas Schwab [Thu, 30 Aug 2012 08:22:24 +0000 (10:22 +0200)]
* progmodes/compile.el (compilation-always-kill): Doc fix.

11 years agoImprove obsolescence message of display-buffer-reuse-frames.
Chong Yidong [Thu, 30 Aug 2012 03:45:51 +0000 (11:45 +0800)]
Improve obsolescence message of display-buffer-reuse-frames.

* lisp/window.el (display-buffer-reuse-frames): Make the obsolescence
message more informative.

11 years ago* lisp/paren.el (show-paren-delay): Add a :set function. Doc fix. (Bug#12297)
Glenn Morris [Thu, 30 Aug 2012 01:44:11 +0000 (21:44 -0400)]
* lisp/paren.el (show-paren-delay): Add a :set function.  Doc fix.  (Bug#12297)

11 years ago* holidays.el (holiday-christian-holidays): Rename an entry (bug#12289)
Glenn Morris [Thu, 30 Aug 2012 01:18:41 +0000 (21:18 -0400)]
* holidays.el (holiday-christian-holidays): Rename an entry (bug#12289)
(Not worth a :version bump.)

11 years agoinit_lread fix for bug#12302
Glenn Morris [Thu, 30 Aug 2012 00:47:33 +0000 (20:47 -0400)]
init_lread fix for bug#12302

* src/lread.c (init_lread): For out-of-tree builds, only add the
source directory's site-lisp dir to the load-path if it exists,
consistent with in-tree builds.

11 years agoAdd gnus-notifications.el
Julien Danjou [Wed, 29 Aug 2012 22:04:05 +0000 (22:04 +0000)]
Add gnus-notifications.el

11 years ago* lisp/progmodes/sh-script.el (sh-font-lock-paren): Don't burp at BOB.
Stefan Monnier [Wed, 29 Aug 2012 18:33:35 +0000 (14:33 -0400)]
* lisp/progmodes/sh-script.el (sh-font-lock-paren): Don't burp at BOB.

Fixes: debbugs:12222
11 years ago* lisp/progmodes/compile.el (compilation-always-kill): New var.
Martin Blais [Wed, 29 Aug 2012 18:15:12 +0000 (14:15 -0400)]
* lisp/progmodes/compile.el (compilation-always-kill): New var.
(compilation-start): Use it.

11 years ago* lisp/simple.el (read-only-mode): Move from lisp/files.el for bootstrapping.
Stefan Monnier [Wed, 29 Aug 2012 17:36:49 +0000 (13:36 -0400)]
* lisp/simple.el (read-only-mode): Move from lisp/files.el for bootstrapping.
* files.el (read-only-mode): Move to simple.el.

11 years ago* lisp/files.el (read-only-mode): New minor mode.
Stefan Monnier [Wed, 29 Aug 2012 15:11:51 +0000 (11:11 -0400)]
* lisp/files.el (read-only-mode): New minor mode.
(toggle-read-only): Use it and mark obsolete.
(find-file--read-only):
* lisp/vc/vc.el (vc-next-action, vc-checkout):
* lisp/vc/vc-cvs.el (vc-cvs-checkout):
* lisp/obsolete/vc-mcvs.el (vc-mcvs-update):
* lisp/ffap.el (ffap--toggle-read-only): Update callers.

11 years ago* eshell/esh-ext.el (eshell-external-command): Do not examine
Michael Albinus [Wed, 29 Aug 2012 12:49:44 +0000 (14:49 +0200)]
* eshell/esh-ext.el (eshell-external-command): Do not examine
remote shell scripts.  See
<https://bugs.launchpad.net/ubuntu/+source/emacs23/+bug/1035790>.

* net/tramp-sh.el (tramp-remote-path): Add "/sbin" and
"/usr/local/sbin".

11 years ago* cl-lib.el (buffer-string): Simplify last change.
Stefan Monnier [Tue, 28 Aug 2012 20:14:21 +0000 (16:14 -0400)]
* cl-lib.el (buffer-string): Simplify last change.

Fixes: debbugs:12293
11 years ago* lisp/emacs-lisp/cl-lib.el (buffer-string): Fix setter macro.
Stefan Monnier [Tue, 28 Aug 2012 19:35:35 +0000 (15:35 -0400)]
* lisp/emacs-lisp/cl-lib.el (buffer-string): Fix setter macro.

Fixes: debbugs:12293
11 years ago* admin/bzrmerge.el (bzrmerge-merges): Allow unversioned files in the tree.
Glenn Morris [Tue, 28 Aug 2012 19:26:41 +0000 (15:26 -0400)]
* admin/bzrmerge.el (bzrmerge-merges): Allow unversioned files in the tree.

11 years ago* admin/charsets/mule-charsets.el (header): Fix typo.
Andreas Schwab [Tue, 28 Aug 2012 16:08:50 +0000 (18:08 +0200)]
* admin/charsets/mule-charsets.el (header): Fix typo.

* etc/charsets/MULE-ethiopic.map: Fix typo in comment.
* etc/charsets/MULE-ipa.map: Likewise.
* etc/charsets/MULE-is13194.map: Likewise.
* etc/charsets/MULE-lviscii.map: Likewise.
* etc/charsets/MULE-sisheng.map: Likewise.
* etc/charsets/MULE-tibetan.map: Likewise.
* etc/charsets/MULE-uviscii.map: Likewise.

11 years agoImprove NS dialogs. Add close button, remove ugly casts.
Jan Djärv [Tue, 28 Aug 2012 16:05:17 +0000 (18:05 +0200)]
Improve NS dialogs.  Add close button, remove ugly casts.

* nsmenu.m (initWithContentRect:styleMask:backing:defer:): Initialize
button_values to NULL. Call setStykeMask so dialogs get a close button.
(windowShouldClose:): Set window_closed.
(dealloc): New member, free button_values.
(process_dialog:): Make member function. Remove window argument,
replace window with self. Count buttons and allocate and store values
in button_values.
(addButton:value:row:): value is int with the name tag.  Call setTag
with tag. Remove return self, declare return value as void.
(addString:row:): Remove return self, declare return value as void.
(addSplit): Remove return self, declare return value as void.
(clicked:): Remove return self, declare return value as void.
Set dialog_return to button_values[seltag]. Code formatting change.
(initFromContents:isQuestion:): Adjust call to process_dialog.
Code formatting change.
(timeout_handler:): Set timer_fired to YES.
(runDialogAt:): Set timer_fired to NO.
Handle click on close button as quit.

* nsterm.h (EmacsDialogPanel): Make timer_fired BOOL.
Add window_closed and button_values.  Add void as return value for
add(Button|String|Split).  addButton takes int instead of Lisp_Object.
Add process_dialog as new member.

11 years agoMerge from emacs-24; up to 2012-05-04T19:17:01Z!monnier@iro.umontreal.ca
Glenn Morris [Tue, 28 Aug 2012 16:01:59 +0000 (09:01 -0700)]
Merge from emacs-24; up to 2012-05-04T19:17:01Z!monnier@iro.umontreal.ca

11 years agoIn Fset_window_configuration install revison of reverted fix.
Martin Rudalics [Tue, 28 Aug 2012 14:09:43 +0000 (16:09 +0200)]
In Fset_window_configuration install revison of reverted fix.

* window.c (Fset_window_configuration): Install revision of reverted
fix.

11 years agoRemove handling of auto-buffer-name window parameter.
Martin Rudalics [Tue, 28 Aug 2012 13:51:09 +0000 (15:51 +0200)]
Remove handling of auto-buffer-name window parameter.

* window.c (Fset_window_configuration): Remove handling of
auto-buffer-name window parameter.

11 years agomerge trunk
Kenichi Handa [Tue, 28 Aug 2012 13:44:20 +0000 (22:44 +0900)]
merge trunk

11 years agoDo not allow to set major mode for a dead buffer.
Dmitry Antipov [Tue, 28 Aug 2012 10:59:17 +0000 (14:59 +0400)]
Do not allow to set major mode for a dead buffer.
* buffer.c (Fset_buffer_major_mode): Signal an error
if the buffer is dead.
(Fother_buffer, other_buffer_safely): Remove redundant
nested declaration.

11 years agognus-sum.el (gnus-summary-enter-digest-group): Work for encoding and charset
Katsumi Yamaoka [Tue, 28 Aug 2012 09:40:11 +0000 (09:40 +0000)]
gnus-sum.el (gnus-summary-enter-digest-group): Work for encoding and charset

11 years ago* lisp/info.el (Info-fontify-node): Hide empty lines at the end of the node.
Juri Linkov [Tue, 28 Aug 2012 09:01:54 +0000 (12:01 +0300)]
* lisp/info.el (Info-fontify-node): Hide empty lines at the end of the node.

Fixes: debbugs:12272
11 years agoAlways use set_buffer_if_live to restore original buffer at unwind.
Dmitry Antipov [Tue, 28 Aug 2012 06:20:08 +0000 (10:20 +0400)]
Always use set_buffer_if_live to restore original buffer at unwind.
* buffer.h (record_unwind_current_buffer): New function.
* bytecode.c, dispnew.c, editfns.c, fileio.c, fns.c, insdel.c:
* keyboard.c, keymap.c, minibuf.c, print.c, process.c, textprop.c:
* undo.c, window.c: Adjust users.
* buffer.c (set_buffer_if_live): Fix comment.

11 years agoFix usage of set_buffer_internal.
Dmitry Antipov [Tue, 28 Aug 2012 05:49:02 +0000 (09:49 +0400)]
Fix usage of set_buffer_internal.
* buffer.h (set_buffer_internal): Make it BUFFER_INLINE.
* buffer.c (set_buffer_if_live): Use set_buffer_internal.
* coding.c (decode_coding): Omit redundant test.
* fileio.c (decide_coding_unwind): Likewise.
* fns.c (secure_hash): Likewise.
* insdel.c (modify_region): Likewise.
* keyboard.c (command_loop_1): Likewise.
* print.c (PRINTFINISH): Likewise.
* xdisp.c (run_window_scroll_functions): Use set_buffer_internal.

11 years ago* dispnew.c: Use bool for boolean.
Paul Eggert [Tue, 28 Aug 2012 00:33:56 +0000 (17:33 -0700)]
* dispnew.c: Use bool for boolean.

(frame_garbaged, display_completed, delayed_size_change)
(fonts_changed_p, add_window_display_history)
(add_frame_display_history, verify_row_hash)
(adjust_glyph_matrix, clear_window_matrices, glyph_row_slice_p)
(row_equal_p, realloc_glyph_pool)
(allocate_matrices_for_frame_redisplay)
(showing_window_margins_p)
(adjust_frame_glyphs_for_frame_redisplay)
(build_frame_matrix_from_leaf_window, make_current)
(mirrored_line_dance, mirror_line_dance, update_frame)
(update_window_tree, update_single_window)
(check_current_matrix_flags, update_window, update_text_area)
(update_window_line, set_window_update_flags, scrolling_window)
(update_frame_1, scrolling, buffer_posn_from_coords)
(do_pending_window_change, change_frame_size)
(change_frame_size_1, sit_for):
Use bool for boolean.
(clear_glyph_matrix_rows): Rename from enable_glyph_matrix_rows,
and remove last int (actually boolean) argument, which was always 0.
All callers changed.
* dispextern.h, frame.h, lisp.h: Reflect above API changes.
* dispextern.h (struct composition_it): Use bool for boolean.
(struct glyph_matrix): Don't assume buffer sizes can fit in 'int'.
(struct bidi_it): Use unsigned:1, not int, for boolean prev_was_pdf.
* dired.c (file_name_completion):
Use bool for boolean.  (This was missed in an earlier change.)

11 years agoIn Fset_window_configuration revert first part of last change.
Martin Rudalics [Mon, 27 Aug 2012 21:07:32 +0000 (23:07 +0200)]
In Fset_window_configuration revert first part of last change.

* window.c (Fset_window_configuration): Revert first part of
last change.

11 years ago* nsmenu.m (initWithContentRect:styleMask:backing:defer:): Initialize
Jan Djärv [Mon, 27 Aug 2012 18:53:10 +0000 (20:53 +0200)]
* nsmenu.m (initWithContentRect:styleMask:backing:defer:): Initialize
dialog_return.
(windowShouldClose:): Use stop instead of stopModalWithCode.
(clicked:): Ditto, and also set dialog_return.
(timeout_handler:): Use stop instead of abortModal.  Send a dummy
event.
(runDialogAt:): Make ret Lisp_Object.  Set it from dialog_return when
modal loop returns.

* nsterm.h (NSPanel): New class variable dialog_return.

Fixes: debbugs:12258