bpt/emacs.git
11 years agoImplement cygw32
Daniel Colascione [Mon, 17 Sep 2012 11:55:02 +0000 (03:55 -0800)]
Implement cygw32

Here, we use the generic window-system configuration system we just
implemented to support the w32 window-system in the mainline build
under Cygwin.  (Previously, the w32 window system could only be
compiled as part of the NT-native Emacs build process.)

The changes in this patch need to be applied atomically in order to
avoid breaking Emacs.  The changes include:

  - Changes throughout the Lisp and C code to not assume that
      NT Emacs and the w32 window system are synonymous.

  - Wiring up the regular select(2) event loop to Windows messages

  - Cleaning up the w32 drag-and-drop receiving code.

  - Exposing Cygwin path conversion functions to elisp.

  - Unicode file dialog support when compiling for Cygwin.

  - Splitting the w32 term lisp initialization code into code
    applicable to any w32 window-system and code specific to
    system-type windows-nt.

  - Integrating the old and new w32 code into the build system.

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 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 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 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 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/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

11 years ago* composite.c, data.c, dbusbind.c, dired.c: Use bool for booleans.
Paul Eggert [Mon, 27 Aug 2012 17:23:48 +0000 (10:23 -0700)]
* composite.c, data.c, dbusbind.c, dired.c: Use bool for booleans.

* composite.c (find_composition, composition_gstring_p)
(composition_reseat_it, find_automatic_composition):
* data.c (let_shadows_buffer_binding_p)
(let_shadows_global_binding_p, set_internal, make_blv)
(Fmake_variable_buffer_local, Fmake_local_variable)
(Fmake_variable_frame_local, arithcompare, cons_to_unsigned)
(cons_to_signed, arith_driver):
* dbusbind.c (xd_in_read_queued_messages):
* dired.c (directory_files_internal, file_name_completion):
Use bool for booleans.
* dired.c (file_name_completion):
* process.h (fd_callback):
Omit int (actually boolean) argument.  It wasn't being used.
All uses changed.
* composite.h, lisp.h: Reflect above API changes.

11 years ago* cmds.c, coding.c: Use bool for booleans.
Paul Eggert [Mon, 27 Aug 2012 16:19:34 +0000 (09:19 -0700)]
* cmds.c, coding.c: Use bool for booleans.

* cmds.c (move_point, Fself_insert_command):
* coding.h (struct composition status, struct coding_system):
* coding.c (detect_coding_utf_8, encode_coding_utf_8)
(detect_coding_utf_16, encode_coding_utf_16, detect_coding_emacs_mule)
(emacs_mule_char, decode_coding_emacs_mule)
(encode_coding_emacs_mule, detect_coding_iso_2022)
(decode_coding_iso_2022, encode_invocation_designation)
(encode_designation_at_bol, encode_coding_iso_2022)
(detect_coding_sjis, detect_coding_big5, decode_coding_sjis)
(decode_coding_big5, encode_coding_sjis, encode_coding_big5)
(detect_coding_ccl, encode_coding_ccl, decode_coding_raw_text)
(encode_coding_raw_text, detect_coding_charset)
(decode_coding_charset, encode_coding_charset, detect_eol)
(detect_coding, get_translation_table, produce_chars)
(consume_chars, reused_workbuf_in_use)
(make_conversion_work_buffer, code_conversion_save)
(decode_coding_object, encode_coding_object)
(detect_coding_system, char_encodable_p)
(Funencodable_char_position, code_convert_region)
(code_convert_string, code_convert_string_norecord)
(Fset_coding_system_priority):
* fileio.c (Finsert_file_contents):
Use bool for booleans.
* coding.h, lisp.h: Reflect above API changes.
* coding.c: Remove unnecessary static function decls.
(detect_coding): Use unsigned, not signed, to copy an unsigned field.
(decode_coding, encode_coding, decode_coding_gap): Return 'void',
not a boolean 'int', since callers never look at the return value.
(ALLOC_CONVERSION_WORK_AREA): Assume caller returns 'void', not 'int'.
* coding.h (decoding_buffer_size, encoding_buffer_size)
(emacs_mule_string_char): Remove unused extern decls.
(struct iso_2022_spec, struct coding_system):
Use 'unsigned int : 1' for boolean fields, since there's more than one.
(struct emacs_mule_spec): Remove unused field 'full_support'.
All initializations removed.
* cmds.c (internal_self_insert): Don't assume EMACS_INT fits in 'int'.

11 years agoFix broken completion in sh-mode
Leo Liu [Mon, 27 Aug 2012 12:33:05 +0000 (20:33 +0800)]
Fix broken completion in sh-mode

See: http://debbugs.gnu.org/12220

11 years ago* skeleton.el (skeleton-untabify): Change to nil.
Leo Liu [Mon, 27 Aug 2012 11:02:23 +0000 (19:02 +0800)]
* skeleton.el (skeleton-untabify): Change to nil.

Fixes: debbugs:12223

11 years agoChange sh-indent-comment to t
Leo Liu [Mon, 27 Aug 2012 10:51:17 +0000 (18:51 +0800)]
Change sh-indent-comment to t

See: http://debbugs.gnu.org/12267

11 years agoFix spare memory change.
Dmitry Antipov [Mon, 27 Aug 2012 09:30:26 +0000 (13:30 +0400)]
Fix spare memory change.
* alloc.c (mark_maybe_pointer): Handle MEM_TYPE_SPARE.
(valid_lisp_object_p): Likewise.

11 years agoIn dired-pop-to-buffer make window start at beginning of buffer (Bug#12281).
Martin Rudalics [Mon, 27 Aug 2012 09:05:55 +0000 (11:05 +0200)]
In dired-pop-to-buffer make window start at beginning of buffer (Bug#12281).

* dired.el (dired-pop-to-buffer): Make window start at beginning
of buffer (Bug#12281).

11 years agoAddress two problems in Fset_window_configuration (Bug#8789) and (Bug#12208).
Martin Rudalics [Mon, 27 Aug 2012 08:31:19 +0000 (10:31 +0200)]
Address two problems in Fset_window_configuration (Bug#8789) and (Bug#12208).

* window.c (Fset_window_configuration): Record any window's old
buffer if it's replaced (see Bug#8789).  If the new current
buffer doesn't appear in the selected window, go to its old
point (Bug#12208).

11 years agoSpecial MEM_TYPE_SPARE to denote reserved memory.
Dmitry Antipov [Mon, 27 Aug 2012 04:15:33 +0000 (08:15 +0400)]
Special MEM_TYPE_SPARE to denote reserved memory.
* alloc.c (enum mem_type): New memory type.
(refill_memory_reserve): Use new type for spare memory.
This prevents live_cons_p and live_string_p from incorrect
detection of uninitialized objects from spare memory as live.

11 years agoMake special-display-* and display-buffer-reuse-frames obsolete.
Chong Yidong [Sun, 26 Aug 2012 13:42:18 +0000 (21:42 +0800)]
Make special-display-* and display-buffer-reuse-frames obsolete.

* lisp/window.el (special-display-regexps, special-display-frame-alist)
(special-display-buffer-names, special-display-function)
(display-buffer-reuse-frames): Mark as obsolete.

* lisp/progmodes/compile.el: Don't use display-buffer-reuse-frames.

* help.el (help-print-return-message): Don't treat
display-buffer-reuse-frames specially.

11 years agoSpelling fixes.
Paul Eggert [Sun, 26 Aug 2012 10:29:37 +0000 (03:29 -0700)]
Spelling fixes.

* Makefile.in (.PHONY): versioclean -> versionclean.

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

11 years agoRemove unused external symbols.
Paul Eggert [Sun, 26 Aug 2012 10:04:27 +0000 (03:04 -0700)]
Remove unused external symbols.

* data.c (Qcons, Qfloat, Qmisc, Qstring, Qvector):
* window.c (Qwindow_valid_p, decode_valid_window):
Now static, not extern.
* data.c (Qinterval): Remove; unused.
(syms_of_data): Do not define 'interval'.
* lisp.h (Qinteger, Qstring, Qmisc, Qvector, Qfloat, Qcons):
* window.h (decode_valid_window):
Remove decls.

11 years ago* fns.c (Fstring_to_unibyte): Adjust to str_to_unibyte change.
Paul Eggert [Sun, 26 Aug 2012 09:26:45 +0000 (02:26 -0700)]
* fns.c (Fstring_to_unibyte): Adjust to str_to_unibyte change.

11 years agoClean up gdb-mi's usage of display-buffer.
Chong Yidong [Sun, 26 Aug 2012 09:16:48 +0000 (17:16 +0800)]
Clean up gdb-mi's usage of display-buffer.

* progmodes/gdb-mi.el (gdb-display-buffer-other-frame-action): New
variable, replacing gdb-frame-parameters.
(gdb-frame-io-buffer, gdb-frame-breakpoints-buffer)
(gdb-frame-threads-buffer, gdb-frame-memory-buffer)
(gdb-frame-disassembly-buffer, gdb-frame-stack-buffer)
(gdb-frame-locals-buffer, gdb-frame-registers-buffer): Use it.
(def-gdb-frame-for-buffer): Macro deleted.  It is easier to define
the functions directly with gdb-display-buffer-other-frame-action.
(gdb-display-breakpoints-buffer, gdb-display-threads-buffer)
(gdb-display-memory-buffer, gdb-display-disassembly-buffer)
(gdb-display-stack-buffer, gdb-display-locals-buffer)
(gdb-display-registers-buffer): Define directly.
(def-gdb-display-buffer): Macro deleted.
(gdb-display-buffer): Remove second and third args, callers don't
use them.  Defer to the default display-buffer behavior, apart
from making windows dedicated.
(gdb-setup-windows): Don't call display-buffer unnecessarily.

* window.el (display-buffer-pop-up-frame): Handle a
pop-up-frame-parameters alist entry.
(display-buffer): Document it.

* progmodes/gud.el (gud-display-line): Just use display-buffer.

11 years ago* character.c, charset.c, chartab.c: Use bool for booleans.
Paul Eggert [Sun, 26 Aug 2012 08:41:36 +0000 (01:41 -0700)]
* character.c, charset.c, chartab.c: Use bool for booleans.

* character.c (lisp_string_width, string_count_byte8)
(string_escape_byte8):
* charset.c (charset_map_loaded, load_charset_map, read_hex):
(load_charset_map_from_file, map_charset_chars)
(Fdefine_charset_internal, define_charset_internal)
(Fdeclare_equiv_charset, find_charsets_in_text)
(Ffind_charset_region, char_charset, Fiso_charset):
* chartab.c (sub_char_table_ref, sub_char_table_ref_and_range)
(sub_char_table_set, sub_char_table_set_range)
(char_table_set_range, optimize_sub_char_table)
(map_sub_char_table):
Use bool for boolean.
* character.c (str_to_unibyte): Omit last boolean argument; it was
always 0.  All callers changed.
* character.h, charset.h: Adjust to match previous changes.
* character.h (char_printable_p): Remove decl of nonexistent function.
* charset.h (struct charset): Members code_linear_p, iso_chars_96,
ascii_compatible_p, supplementary_p, compact_codes_p, unified_p
are all boolean, so make them single-bit bitfields.

11 years ago* lisp.h (ASET): Remove attempt to detect side effects.
Paul Eggert [Sun, 26 Aug 2012 05:21:04 +0000 (22:21 -0700)]
* lisp.h (ASET): Remove attempt to detect side effects.

It was meant to be temporary and it often doesn't work,
because when IDX has side effects the behavior of IDX==IDX
is undefined.  See Stefan Monnier in
<http://lists.gnu.org/archive/html/emacs-devel/2012-08/msg00762.html>.

11 years ago* configure.ac (CFLAGS): Prefer -g3 to -g if -g3 works
Paul Eggert [Sun, 26 Aug 2012 04:37:40 +0000 (21:37 -0700)]
* configure.ac (CFLAGS): Prefer -g3 to -g if -g3 works

and if the user has not specified CFLAGS.  -g3 simplifies
debugging, since it makes macros visible to the debugger.

11 years agoDoc fix for last change.
Chong Yidong [Sun, 26 Aug 2012 04:08:32 +0000 (12:08 +0800)]
Doc fix for last change.

11 years agoMake ordinary isearch obey search-whitespace-regexp too.
Chong Yidong [Sun, 26 Aug 2012 03:57:55 +0000 (11:57 +0800)]
Make ordinary isearch obey search-whitespace-regexp too.

* lisp/isearch.el (search-whitespace-regexp): Make string and nil
values apply to both ordinary and regexp search.  Allow a cons
cell value to distinguish between the two.
(isearch-whitespace-regexp, isearch-search-forward)
(isearch-search-backward): New functions.
(isearch-occur, isearch-search-fun-default, isearch-search)
(isearch-lazy-highlight-new-loop): Use them.
(isearch-forward, isearch-forward-regexp): Doc fix.

11 years ago* src/lisp.h (functionp): New function (extracted from Ffunctionp).
Barry O'Reilly [Sun, 26 Aug 2012 03:30:56 +0000 (23:30 -0400)]
* src/lisp.h (functionp): New function (extracted from Ffunctionp).
(FUNCTIONP): Use it.
* src/eval.c (Ffunctionp): Use it.

11 years ago* faces.el (help-argument-name): Always inherit from italic.
Chong Yidong [Sun, 26 Aug 2012 02:57:07 +0000 (10:57 +0800)]
* faces.el (help-argument-name): Always inherit from italic.

Fixes: debbugs:12213

11 years ago* xgselect.c (xg_select): Use auto storage for the GPollFD buffer
Paul Eggert [Sat, 25 Aug 2012 20:31:04 +0000 (13:31 -0700)]
* xgselect.c (xg_select): Use auto storage for the GPollFD buffer

as that's faster and simpler than static storage.  Don't bother
with the g_main_context_query overhead if g_main_context_pending
says no events are pending.
(gfds, gfds_size): Remove these static vars.
(xgselect_initialize): Remove; no longer needed.
All uses and decls removed.

11 years agoHandle evening window heights more correctly (Bug#11880) and (Bug#12091).
Martin Rudalics [Sat, 25 Aug 2012 14:52:02 +0000 (16:52 +0200)]
Handle evening window heights more correctly (Bug#11880) and (Bug#12091).

* window.el (window--even-window-heights): Even heights when
WINDOW and the selected window form a vertical combination.
(display-buffer-use-some-window): Provide that window used gets
sized back by quit-window.  (Bug#11880) and (Bug#12091)

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

11 years agolib/makefile.w32-in ($(BLD)/execinfo.$(O)): Update dependencies.
Juanma Barranquero [Sat, 25 Aug 2012 10:04:17 +0000 (12:04 +0200)]
lib/makefile.w32-in ($(BLD)/execinfo.$(O)): Update dependencies.

11 years ago* emacs.c (fatal_error_signal_hook): Remove.
Paul Eggert [Sat, 25 Aug 2012 06:38:43 +0000 (23:38 -0700)]
* emacs.c (fatal_error_signal_hook): Remove.

All uses removed.  This leftover from old code was always 0.

11 years ago* casefiddle.c, casetab.c, category.c: Use bool for boolean.
Paul Eggert [Sat, 25 Aug 2012 06:25:00 +0000 (23:25 -0700)]
* casefiddle.c, casetab.c, category.c: Use bool for boolean.

* casefiddle.c (casify_object, casify_region):
* casetab.c (set_case_table):
* category.c, category.h (word_boundary_p):
* category.h (CHAR_HAS_CATEGORY):
Use bool for booleans, instead of int.

11 years agoMS-Windows adaptations for 2012-08-25T04:04:08Z!eggert@cs.ucla.edu and 2012-08-25T04...
Eli Zaretskii [Sat, 25 Aug 2012 05:55:32 +0000 (08:55 +0300)]
MS-Windows adaptations for 2012-08-25T04:04:08Z!eggert@cs.ucla.edu and 2012-08-25T04:27:32Z!eggert@cs.ucla.edu.

 lib/makefile.w32-in ($(BLD)/execinfo.$(O), execinfo.h): New targets.
 (GNULIBOBJS): Add $(BLD)/execinfo.$(O).
 src/makefile.w32-in ($(BLD)/alloc.$(O)): Depend on $(GNU_LIB)/execinfo.h.

11 years ago* lib/execinfo.c, lib/execinfo.in.h, m4/execinfo.m4: New files.
Paul Eggert [Sat, 25 Aug 2012 04:27:32 +0000 (21:27 -0700)]
* lib/execinfo.c, lib/execinfo.in.h, m4/execinfo.m4: New files.

11 years agoOn assertion failure, print backtrace if available.
Paul Eggert [Sat, 25 Aug 2012 04:04:08 +0000 (21:04 -0700)]
On assertion failure, print backtrace if available.

Merge from gnulib, incorporating:
2012-08-24 execinfo: port to FreeBSD
2012-08-22 execinfo: new module
* admin/merge-gnulib (GNULIB_MODULES): Add execinfo.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib/execinfo.c, lib/execinfo.in.h, m4/execinfo.m4: New files.
* src/alloc.c [ENABLE_CHECKING]: Include <execinfo.h>.
(die) [ENABLE_CHECKING]: Print a backtrace if available.
* src/Makefile.in (LIB_EXECINFO): New macro.
(LIBES): Use it.

11 years ago* bytecode.c, callint.c, callproc.c: Use bool for boolean.
Paul Eggert [Sat, 25 Aug 2012 03:11:12 +0000 (20:11 -0700)]
* bytecode.c, callint.c, callproc.c: Use bool for boolean.

* bytecode.c (exec_byte_code):
* callint.c (check_mark, Fcall_interactively):
* callproc.c (Fcall_process, add_env, child_setup, getenv_internal_1)
(getenv_internal, sync_process_alive, call_process_exited):
* lisp.h (USE_SAFE_ALLOCA):
Use bool for booleans, instead of int.
* lisp.h, process.h: Adjust prototypes to match above changes.
* callint.c (Fcall_interactively): Don't assume the mark's
offset fits in 'int'.