Glenn Morris [Mon, 20 Aug 2012 18:13:03 +0000 (14:13 -0400)]
Use display-warning in a few places in calendar
* lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
* lisp/calendar/holidays.el (calendar-holiday-list):
Report errors with display-warning rather than beep'n'sleep.
Eli Zaretskii [Mon, 20 Aug 2012 17:32:31 +0000 (20:32 +0300)]
Avoid GDB 7.5 warnings about "set main" in src/.gdbinit.
src/.gdbinit: Use "set $dummy = ..." to avoid warnings from GDB 7.5
and later about non-assignments with no effect. See discussion at
http://sourceware.org/ml/gdb-patches/2012-08/msg00518.html for
details.
Eli Zaretskii [Mon, 20 Aug 2012 16:48:10 +0000 (19:48 +0300)]
Improve MS-Windows related commentary and log entry for 2012-08-19T21:00:09Z!eggert@cs.ucla.edu.
Josh Feinstein [Mon, 20 Aug 2012 16:08:51 +0000 (09:08 -0700)]
Hide specified message types sent by lurkers
* erc.el (erc-display-message): Abstract message hiding decision
to new function erc-hide-current-message-p.
(erc-lurker): New customization group.
(erc-lurker-state, erc-lurker-trim-nicks, erc-lurker-ignore-chars)
(erc-lurker-hide-list, erc-lurker-cleanup-interval)
(erc-lurker-threshold-time): New variables.
(erc-lurker-maybe-trim, erc-lurker-initialize, erc-lurker-cleanup)
(erc-hide-current-message-p, erc-canonicalize-server-name)
(erc-lurker-update-status, erc-lurker-p): New functions. Together
they maintain state about which users have spoken in the last
erc-lurker-threshold-time, with all other users being considered
lurkers whose messages of types in erc-lurker-hide-list will not
be displayed by erc-display-message.
Michael Albinus [Mon, 20 Aug 2012 14:06:06 +0000 (16:06 +0200)]
* net/tramp.el (tramp-accept-process-output): Accept only output
from PROC. Otherwise, process filters and sentinels might be
confused. (Bug#12145)
Chong Yidong [Mon, 20 Aug 2012 11:12:16 +0000 (19:12 +0800)]
Make C-u C-x = report on empty overlays at point.
* lisp/descr-text.el (describe-text-properties-1): Use overlays-in to
report on empty overlays.
Fixes: debbugs:3322
Glenn Morris [Mon, 20 Aug 2012 10:17:51 +0000 (06:17 -0400)]
Auto-commit of generated files.
Dmitry Antipov [Mon, 20 Aug 2012 09:39:57 +0000 (13:39 +0400)]
Inline setter functions for Lisp_Objects slots of struct specbinding.
* eval.c (set_specpdl_symbol, set_specpdl_old_value): New functions.
Adjust users.
Martin Rudalics [Mon, 20 Aug 2012 09:28:39 +0000 (11:28 +0200)]
In select_window always make selected window's buffer current.
* window.c (select_window): Always make selected window's buffer
current.
Dmitry Antipov [Mon, 20 Aug 2012 08:20:25 +0000 (12:20 +0400)]
Use AREF and ASET for docstrings of category tables.
* category.h (CATEGORY_DOCSTRING): Use AREF.
(SET_CATEGORY_DOCSTRING): Use ASET.
* category.c (Fdefine_category): Use SET_CATEGORY_DOCSTRING.
Dmitry Antipov [Mon, 20 Aug 2012 08:07:38 +0000 (12:07 +0400)]
Inline setter functions for hash table members.
* lisp.h (set_hash_key, set_hash_value, set_hash_next)
(set_hash_hash, set_hash_index): Rename with _slot suffix.
(set_hash_key_and_value, set_hash_index, set_hash_next)
(set_hash_hash): New functions.
* charset.c, fns.c: Adjust users.
Glenn Morris [Mon, 20 Aug 2012 07:45:10 +0000 (00:45 -0700)]
* lisp/mail/rmailout.el (rmail-output-read-file-name): Trap errors
in rmail-output-file-alist elements, and report them.
Dmitry Antipov [Mon, 20 Aug 2012 07:42:06 +0000 (11:42 +0400)]
Inline getter and setter functions for per-buffer values.
* buffer.h (per_buffer_default, set_per_buffer_default)
(per_buffer_value, set_per_buffer_value): New functions.
(PER_BUFFER_VALUE, PER_BUFFER_DEFAULT): Remove.
* buffer.c, data.c: Adjust users.
Glenn Morris [Mon, 20 Aug 2012 07:30:40 +0000 (00:30 -0700)]
* lisp/font-lock.el (font-lock-add-keywords): Doc fix
(quote face names since most non-font-lock faces are not also variables).
Edward Reingold [Mon, 20 Aug 2012 07:23:51 +0000 (00:23 -0700)]
* calendar/cal-tex.el (cal-tex-cursor-week-at-a-glance): New function.
(This is basically cal-tex-cursor-filofax-week with a different
papersize, mini-calendars, and color.)
Fixes: debbugs:12160
Paul Eggert [Mon, 20 Aug 2012 04:04:58 +0000 (21:04 -0700)]
Clarify recent ChangeLog entry.
Juanma Barranquero [Mon, 20 Aug 2012 01:28:35 +0000 (03:28 +0200)]
src/makefile.w32-in ($(BLD)/vm-limit.$(O)): Update dependencies.
Paul Eggert [Sun, 19 Aug 2012 23:31:24 +0000 (16:31 -0700)]
Merge from gnulib.
2012-08-19 ignore-value, stat-time, timespec: omit AC_C_INLINE
2012-08-19 mktime, sys_select: avoid 'static inline'
2012-08-19 gnulib-tool: Fix indentation.
Paul Eggert [Sun, 19 Aug 2012 21:00:09 +0000 (14:00 -0700)]
Rely on <unistd.h> to declare 'environ',
as gnulib does this if the system doesn't.
* lib-src/emacsclient.c (environ): Remove decl.
* src/callproc.c, src/editfns.c, src/process.c (environ) [!USE_CRT_DLL]:
* src/emacs.c (environ) [DOUG_LEA_MALLOC]:
* src/vm-limit.c (environ) [ORDINARY_LINK]: Remove decl.
* src/vm-limit.c: Include <unistd.h>, for 'environ'.
Paul Eggert [Sun, 19 Aug 2012 20:02:24 +0000 (13:02 -0700)]
* unexaix.c, unexcoff.c: Include "mem-limits.h".
(start_of_data): Remove decl; mem-limits.h provides it.
Paul Eggert [Sun, 19 Aug 2012 19:22:41 +0000 (12:22 -0700)]
* xdisp.c (handle_invisible_prop): Make it a bit faster
and avoid a gcc -Wmaybe-uninitialized diagnostic.
Glenn Morris [Sun, 19 Aug 2012 18:41:35 +0000 (11:41 -0700)]
Fix previous rmail-output-read-file-name change
* lisp/mail/rmailout.el (rmail-output-read-file-name):
Fix previous change (when the alist is nil or does not match).
Chong Yidong [Sun, 19 Aug 2012 16:19:05 +0000 (00:19 +0800)]
* src/xdisp.c (handle_invisible_prop): Fix ellipses at overlay string ends.
* test/redisplay-testsuite.el (test-redisplay): Use switch-to-buffer.
Fixes: debbugs:3874
Andreas Schwab [Sun, 19 Aug 2012 10:50:03 +0000 (12:50 +0200)]
* .gdbinit: Use call instead of set when calling a function in the
inferior.
Andreas Schwab [Sun, 19 Aug 2012 08:40:12 +0000 (10:40 +0200)]
* data.c (set_internal): Don't use set_blv_found.
(Fkill_local_variable): Likewise.
Chong Yidong [Sun, 19 Aug 2012 06:37:15 +0000 (14:37 +0800)]
* xml.el (xml-escape-string): Don't refer to xml-entity-alist.
Fixes: debbugs:12228
Alp Aker [Sun, 19 Aug 2012 00:53:29 +0000 (20:53 -0400)]
* nsfont.m (ns_ascii_average_width): Ensure the string
ascii_printable is initialized with a null-terminated character
array. Otherwise, it can contain undesired extra characters.
Paul Eggert [Sat, 18 Aug 2012 23:53:43 +0000 (16:53 -0700)]
port new setting code to Sun C 5.8 2005/10/13
* chartab.c, lisp.h (char_table_set, char_table_set_range):
Return void, not Lisp_Object. Otherwise, the compiler
complains about (A?B:C) where B is void and C is Lisp_Object
when compiling CHAR_TABLE_SET, due to the recent change to
the API of sub_char_table_set_contents.
Paul Eggert [Sat, 18 Aug 2012 21:36:13 +0000 (14:36 -0700)]
* lib/sigprocmask.c, m4/signalblocking.m4: Remove.
These files have been unused since the 2012-06-22 patch that
introduced high-resolution time stamps.
Chong Yidong [Sat, 18 Aug 2012 07:23:30 +0000 (15:23 +0800)]
Make display strings obey buffer-invisibility-spec.
* src/xdisp.c (handle_invisible_prop): Obey TEXT_PROP_MEANS_INVISIBLE
for the string case.
* redisplay-testsuite.el (test-redisplay-4): New test.
Fixes: debbugs:3874
Paul Eggert [Sat, 18 Aug 2012 06:06:39 +0000 (23:06 -0700)]
* buffer.h (BSET): Remove.
Replace all uses with calls to new setter functions.
(bset_bidi_paragraph_direction, bset_case_canon_table)
(bset_case_eqv_table, bset_directory, bset_display_count)
(bset_display_time, bset_downcase_table)
(bset_enable_multibyte_characters, bset_filename, bset_keymap)
(bset_last_selected_window, bset_local_var_alist)
(bset_mark_active, bset_point_before_scroll, bset_read_only)
(bset_truncate_lines, bset_undo_list, bset_upcase_table)
(bset_width_table):
* buffer.c (bset_abbrev_mode, bset_abbrev_table)
(bset_auto_fill_function, bset_auto_save_file_format)
(bset_auto_save_file_name, bset_backed_up, bset_begv_marker)
(bset_bidi_display_reordering, bset_buffer_file_coding_system)
(bset_cache_long_line_scans, bset_case_fold_search)
(bset_ctl_arrow, bset_cursor_in_non_selected_windows)
(bset_cursor_type, bset_display_table, bset_extra_line_spacing)
(bset_file_format, bset_file_truename, bset_fringe_cursor_alist)
(bset_fringe_indicator_alist, bset_fringes_outside_margins)
(bset_header_line_format, bset_indicate_buffer_boundaries)
(bset_indicate_empty_lines, bset_invisibility_spec)
(bset_left_fringe_width, bset_major_mode, bset_mark)
(bset_minor_modes, bset_mode_line_format, bset_mode_name)
(bset_name, bset_overwrite_mode, bset_pt_marker)
(bset_right_fringe_width, bset_save_length)
(bset_scroll_bar_width, bset_scroll_down_aggressively)
(bset_scroll_up_aggressively, bset_selective_display)
(bset_selective_display_ellipses, bset_vertical_scroll_bar_type)
(bset_word_wrap, bset_zv_marker):
* category.c (bset_category_table):
* syntax.c (bset_syntax_table):
New setter functions.
Fixes: debbugs:12215
Chong Yidong [Sat, 18 Aug 2012 05:11:38 +0000 (13:11 +0800)]
Add yank-handled-properties; use it for `font-lock-face' and `category'
properties, instead of hard-coding these properties' special handling.
* lisp/simple.el (yank-handled-properties): New defcustom.
(yank-excluded-properties): Add font-lock-face and category.
(yank): Doc fix.
* lisp/subr.el (remove-yank-excluded-properties): Obey
yank-handled-properties. The special handling of font-lock-face
and category is now done this way, instead of being hard-coded.
(insert-for-yank-1): Remove font-lock-face handling.
(yank-handle-font-lock-face-property)
(yank-handle-category-property): New function.
Paul Eggert [Sat, 18 Aug 2012 02:49:24 +0000 (19:49 -0700)]
* process.h (PSET): Remove.
Replace all uses with calls to new setter functions.
Use INLINE_HEADER_BEGIN, INLINE_HEADER_END.
(PROCESS_INLINE): New macro.
(pset_childp): New setter function.
(pset_gnutls_cred_type) [HAVE_GNUTLS]: New setter function.
* process.c (PROCESS_INLINE):
Define to EXTERN_INLINE, so that the corresponding functions
are compiled into code.
(pset_buffer, pset_command, pset_decode_coding_system)
(pset_decoding_buf, pset_encode_coding_system)
(pset_encoding_buf, pset_filter, pset_log, pset_mark, pset_name)
(pset_plist, pset_sentinel, pset_status, pset_tty_name)
(pset_type, pset_write_queue): New setter functions.
Fixes: debbugs:12215
Paul Eggert [Sat, 18 Aug 2012 01:42:52 +0000 (18:42 -0700)]
* window.h (WSET): Remove.
Replace all uses with calls to new setter functions.
Use INLINE_HEADER_BEGIN, INLINE_HEADER_END.
(WINDOW_INLINE): New macro.
(wset_buffer, wset_frame, wset_left_col, wset_next, wset_prev)
(wset_redisplay_end_trigger, wset_top_line, wset_total_cols)
(wset_total_lines, wset_vertical_scroll_bar)
(wset_window_end_pos, wset_window_end_valid)
(wset_window_end_vpos): New setter functions.
* window.c (WINDOW_INLINE):
Define to EXTERN_INLINE, so that the corresponding functions
are compiled into code.
(wset_combination_limit, wset_dedicated, wset_display_table)
(wset_hchild, wset_left_fringe_width, wset_left_margin_cols)
(wset_new_normal, wset_new_total, wset_next_buffers)
(wset_normal_cols, wset_normal_lines, wset_parent, wset_pointm)
(wset_prev_buffers, wset_right_fringe_width)
(wset_right_margin_cols, wset_scroll_bar_width, wset_start)
(wset_temslot, wset_vchild, wset_vertical_scroll_bar_type)
(wset_window_parameters):
* xdisp.c (wset_base_line_number, wset_base_line_pos)
(wset_column_number_displayed, wset_region_showing):
New setter functions.
Fixes: debbugs:12215
Paul Eggert [Sat, 18 Aug 2012 00:07:52 +0000 (17:07 -0700)]
* termhooks.h (TSET): Remove.
Replace all uses with calls to new setter functions.
Use INLINE_HEADER_BEGIN, INLINE_HEADER_END.
(TERMHOOKS_INLINE): New macro.
(tset_charset_list, tset_selection_alist): New setter functions.
* terminal.c (TERMHOOKS_INLINE):
Define to EXTERN_INLINE, so that the corresponding functions
are compiled into code.
(tset_param_alist): New setter function.
Fixes: debbugs:12215
Paul Eggert [Fri, 17 Aug 2012 23:38:43 +0000 (16:38 -0700)]
* keyboard.h (KSET): Remove.
Replace all uses with calls to new setter functions.
Use INLINE_HEADER_BEGIN, INLINE_HEADER_END.
(KEYBOARD_INLINE): New macro.
(kset_default_minibuffer_frame, kset_defining_kbd_macro)
(kset_input_decode_map, kset_last_command, kset_last_kbd_macro)
(kset_prefix_arg, kset_system_key_alist, kset_window_system):
New setter functions.
* keyboard.c (KEYBOARD_INLINE):
Define to EXTERN_INLINE, so that the corresponding functions
are compiled into code.
(kset_echo_string, kset_kbd_queue)
(kset_keyboard_translate_table, kset_last_prefix_arg)
(kset_last_repeatable_command, kset_local_function_key_map)
(kset_overriding_terminal_local_map, kset_real_last_command)
(kset_system_key_syms): New setter functions.
Fixes: debbugs:12215
Paul Eggert [Fri, 17 Aug 2012 21:52:15 +0000 (14:52 -0700)]
* frame.h (FSET): Remove (Bug#12215).
Replace all uses with calls to new setter functions.
Use INLINE_HEADER_BEGIN, INLINE_HEADER_END.
(FRAME_INLINE): New macro.
(fset_buffer_list, fset_buried_buffer_list, fset_condemned_scroll_bars)
(fset_current_tool_bar_string, fset_desired_tool_bar_string)
(fset_face_alist, fset_focus_frame, fset_icon_name, fset_menu_bar_items)
(fset_menu_bar_vector, fset_menu_bar_window, fset_name)
(fset_param_alist, fset_root_window, fset_scroll_bars)
(fset_selected_window, fset_title, fset_tool_bar_items)
(fset_tool_bar_position, fset_tool_bar_window): New functions.
* frame.c (FRAME_INLINE):
Define to EXTERN_INLINE, so that the corresponding functions
are compiled into code.
(fset_buffer_predicate, fset_minibuffer_window): New setter functions.
Paul Eggert [Fri, 17 Aug 2012 21:12:11 +0000 (14:12 -0700)]
A few more naming-convention fixes for getters and setters.
* buffer.c (set_buffer_overlays_before): Move here from buffer.h,
and rename from buffer_overlays_set_before.
(set_buffer_overlays_after): Move here from buffer.h, and rename
from buffer_overlays_set_after.
* buffer.h (buffer_intervals): Rename from buffer_get_intervals.
All uses changed.
(set_buffer_intervals): Rename from buffer_set_intervals.
* intervals.c (set_interval_object): Move here from intervals.h,
and rename from interval_set_object.
(set_interval_left): Move here from intervals.h, and rename from
interval_set_left.
(set_interval_right): Move here from intervals.h, and rename from
interval_set_right.
(copy_interval_parent): Move here from intervals.h, and rename from
interval_copy_parent.
* intervals.h (set_interval_parent): Rename from interval_set_parent.
(set_interval_plist): Rename from interval_set_plist.
Return void, not Lisp_Object, since no caller uses the result.
* lisp.h (string_intervals): Rename from string_get_intervals.
(set_string_intervals): Rename from string_set_intervals.
Glenn Morris [Fri, 17 Aug 2012 20:38:47 +0000 (16:38 -0400)]
rmail-output-read-file-name fix for bug#12214
This resembles the 2001-05-07 change to rmail-output-read-rmail-file-name,
which was never copied to rmail-output-read-file-name.
It's more complicated now due to Rmail's buffer swapping.
* lisp/mail/rmailout.el (rmail-output-read-file-name):
Check rmail-output-file-alist against the full message body
in the correct rmail buffer.
* lisp/mail/rmail.el: Comment.
Paul Eggert [Fri, 17 Aug 2012 17:09:45 +0000 (10:09 -0700)]
Fix typo in ChangeLog entry.
Paul Eggert [Fri, 17 Aug 2012 17:08:30 +0000 (10:08 -0700)]
* lisp.h (set_char_table_extras): Rename from char_table_set_extras.
(set_char_table_contents): Rename from char_table_set_contents.
(set_sub_char_table_contents): Rename from sub_char_table_sub_contents.
All uses changed. See the end of
<http://lists.gnu.org/archive/html/emacs-devel/2012-08/msg00549.html>.
Paul Eggert [Fri, 17 Aug 2012 16:53:03 +0000 (09:53 -0700)]
Fix ChangeLog typo.
Paul Eggert [Fri, 17 Aug 2012 16:48:22 +0000 (09:48 -0700)]
* lisp.h (CSET): Remove.
(set_char_table_ascii, set_char_table_defalt, set_char_table_parent)
(set_char_table_purpose): New functions,
replacing CSET. All uses changed. For example, replace
"CSET (XCHAR_TABLE (char_table), parent, parent);" with
"char_table_set_parent (char_table, parent);".
The old version was confusing because it used the same name
'parent' for two different things.
Fixes: debbugs:12215
Dmitry Antipov [Fri, 17 Aug 2012 14:24:43 +0000 (18:24 +0400)]
Functions to get and set Lisp_Object fields of buffer-local variables.
* lisp.h (blv_found, set_blv_found, blv_value, set_blv_value)
(set_blv_where, set_blv_defcell, set_blv_valcell): New functions.
(BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): Remove.
* data.c, eval.c, frame.c: Adjust users.
Juanma Barranquero [Fri, 17 Aug 2012 10:51:29 +0000 (12:51 +0200)]
nt/config.nt: Sync with autogen/config.in.
(HAVE_POSIX_OPENPT): New macro.
Glenn Morris [Fri, 17 Aug 2012 10:17:30 +0000 (06:17 -0400)]
Auto-commit of generated files.
Michael Albinus [Fri, 17 Aug 2012 09:18:18 +0000 (11:18 +0200)]
* net/tramp-sh.el (tramp-sh-handle-start-file-process): Eliminate
superfluous prompt. (Bug#12203)
Chong Yidong [Fri, 17 Aug 2012 09:10:31 +0000 (17:10 +0800)]
Allow face-remapping using :font, and use it in mouse-appearance-menu.
* mouse.el (mouse-appearance-menu): If x-select-font returns a
font spec, set the font directly.
* xfaces.c (merge_face_vectors): If the target font specfies a
font spec, make the font's attributes take precedence over
directly-specified attributes.
(merge_face_ref): Recognize :font.
Fixes: debbugs:3228
Daniel Bergey [Fri, 17 Aug 2012 07:28:23 +0000 (00:28 -0700)]
quail-define-inscript-package tiny change
* leim/quail/indian.el (quail-define-inscript-package):
Set kbd-translate for all Inscript layouts. It's a positional
layout: vowels should be on the left hand regardless of the
underlying characters produced by those keys.
Fixes: debbugs:12072
Glenn Morris [Fri, 17 Aug 2012 07:23:21 +0000 (00:23 -0700)]
Whitespace
Jan Beich [Fri, 17 Aug 2012 07:20:10 +0000 (00:20 -0700)]
Fix pty handling on FreeBSD 8.0 (tiny change)
* configure.ac (PTY_OPEN): Try posix_openpt on gnu-linux,
gnu-kfreebsd, freebsd, and netbsd.
Fixes: debbugs:12040
Martin Rudalics [Fri, 17 Aug 2012 06:01:17 +0000 (08:01 +0200)]
Fix latest fix of delete-window.
* window.el (delete-window): Fix last fix.
Dmitry Antipov [Fri, 17 Aug 2012 05:35:39 +0000 (09:35 +0400)]
Do not use memcpy for copying intervals.
* intervals.c (reproduce_interval): New function.
(reproduce_tree, reproduce_tree_obj): Use it.
(reproduce_tree_obj): Remove prototype.
Paul Eggert [Fri, 17 Aug 2012 05:14:06 +0000 (22:14 -0700)]
* lisp.h (duration_to_sec_usec): Remove unused decl.
Alp Aker [Fri, 17 Aug 2012 04:12:50 +0000 (00:12 -0400)]
* nsfont.m (ns_ascii_average_width): Send initWithFormat selector
to an allocated instance of NSString, not to the class itself.
Juanma Barranquero [Fri, 17 Aug 2012 01:53:29 +0000 (03:53 +0200)]
* lib-src/makefile.w32-in ($(BLD)/regex.$(O)): Update dependencies.
* src/makefile.w32-in (C_CTYPE_H): New macro.
(LISP_H, $(BLD)/ccl.$(O), $(BLD)/doc.$(O), $(BLD)/w32console.$(O)):
($(BLD)/fontset.$(O), $(BLD)/frame.$(O), $(BLD)/composite.$(O)):
($(BLD)/sysdep.$(O), $(BLD)/w32uniscribe.$(O)): Update dependencies.
Paul Eggert [Thu, 16 Aug 2012 21:58:44 +0000 (14:58 -0700)]
Use ASCII tests for character types.
* admin/merge-gnulib (GNULIB_MODULES): Add c-ctype.
* lwlib/lwlib-Xaw.c, lwlib/lwlib.c, lwlib/xlwmenu.c:
Don't include <ctype.h>; no longer needed.
* lwlib/lwlib-Xaw.c (openFont):
* lwlib/xlwmenu.c (openXftFont): Test just for ASCII digits.
* src/category.c, src/dispnew.c, src/doprnt.c, src/editfns.c, src/syntax.c
* src/term.c, src/xfns.c, src/xterm.c:
Don't include <ctype.h>; was not needed.
* src/charset.c, src/doc.c, src/fileio.c, src/font.c, src/frame.c:
* src/gtkutil.c, src/image.c, src/sysdep.c, src/xfaces.c:
Include <c-ctype.h> instead of <ctype.h>.
* src/nsterm.m: Include <c-ctype.h>.
* src/charset.c (read_hex):
* src/doc.c (Fsnarf_documentation):
* src/fileio.c (IS_DRIVE) [WINDOWSNT]:
(DRIVE_LETTER) [DOS_NT]:
(Ffile_name_directory, Fexpand_file_name)
(Fsubstitute_in_file_name):
* src/font.c (font_parse_xlfd, font_parse_fcname):
* src/frame.c (x_set_font_backend):
* src/gtkutil.c (xg_get_font):
* src/image.c (xbm_scan, xpm_scan, pbm_scan_number):
* src/nsimage.m (hexchar):
* src/nsterm.m (ns_xlfd_to_fontname):
* src/sysdep.c (system_process_attributes):
* src/xfaces.c (hash_string_case_insensitive):
Use C-locale tests instead of locale-specific tests for character
types, since we want the ASCII interpretation here, not the
interpretation suitable for whatever happens to be the current locale.
Martin Rudalics [Thu, 16 Aug 2012 17:22:36 +0000 (19:22 +0200)]
In window.el tell whether functions operate on valid, live or any windows.
* window.el (window-child, window-child-count, window-last-child)
(window-normalize-window, window-combined-p)
(window-combinations, window-atom-root, window-min-size)
(window-sizable, window-sizable-p, window-size-fixed-p)
(window-min-delta, window-max-delta, window--resizable)
(window--resizable-p, window-resizable, window-total-size)
(window-full-height-p, window-full-width-p, window-body-size)
(window-at-side-p, adjust-window-trailing-edge, maximize-window)
(minimize-window, window-deletable-p, delete-window)
(delete-other-windows, set-window-buffer-start-and-point)
(next-buffer, previous-buffer, split-window, balance-windows-2)
(set-window-text-height, window-buffer-height)
(fit-window-to-buffer, shrink-window-if-larger-than-buffer)
(truncated-partial-width-window-p): Minor code adjustments. In
doc-strings state whether the argument window has to denote a
live, valid or any window.
Kenichi Handa [Thu, 16 Aug 2012 12:25:17 +0000 (21:25 +0900)]
merge trunk
Glenn Morris [Thu, 16 Aug 2012 10:17:33 +0000 (06:17 -0400)]
Auto-commit of generated files.
Martin Rudalics [Thu, 16 Aug 2012 07:58:24 +0000 (09:58 +0200)]
Consistently check windows for validity/liveness (Bug#11984, Bug#12025, Bug#12026).
* lisp.h (CHECK_VALID_WINDOW): New macro.
* window.c (decode_window): Rename to decode_live_window.
(decode_valid_window, Fwindow_valid_p): New functions.
(Fwindow_frame, Fframe_root_window, Fwindow_minibuffer_p)
(Fframe_first_window, Fframe_selected_window, Fwindow_parent)
(Fwindow_top_child, Fwindow_left_child, Fwindow_next_sibling)
(Fwindow_prev_sibling, Fwindow_combination_limit)
(Fset_window_combination_limit, Fwindow_use_time)
(Fwindow_total_height, Fwindow_total_width, Fwindow_new_total)
(Fwindow_normal_size, Fwindow_new_normal, Fwindow_left_column)
(Fwindow_top_line, Fwindow_body_height, Fwindow_body_width)
(Fwindow_hscroll, Fset_window_hscroll)
(Fwindow_redisplay_end_trigger)
(Fset_window_redisplay_end_trigger, Fwindow_edges)
(Fwindow_pixel_edges, Fwindow_absolute_pixel_edges)
(Fwindow_inside_edges, Fwindow_inside_pixel_edges)
(Fcoordinates_in_window_p, Fwindow_point, Fwindow_start)
(Fwindow_end, Fset_window_point, Fset_window_start)
(Fpos_visible_in_window_p, Fwindow_line_height)
(Fwindow_dedicated_p, Fset_window_dedicated_p)
(Fwindow_prev_buffers, Fset_window_prev_buffers)
(Fwindow_next_buffers, Fwindow_parameters, Fwindow_parameter)
(Fset_window_parameter, Fwindow_display_table)
(Fset_window_display_table, Fdelete_other_windows_internal)
(Fset_window_buffer, Fset_window_new_total)
(Fset_window_new_normal, Fdelete_window_internal)
(Fwindow_text_height, Fset_window_margins, Fwindow_margins)
(Fset_window_fringes, Fwindow_fringes, Fset_window_scroll_bars)
(Fwindow_scroll_bars): Check whether argument window is a valid or
live window. Update doc-strings.
(syms_of_window): New symbol Qwindow_valid_p.
* keyboard.c (Fposn_at_x_y): Check whether argument
frame_or_window denotes a valid window.
* window.el (window-valid-p): Move to window.c.
Dmitry Antipov [Thu, 16 Aug 2012 07:26:18 +0000 (11:26 +0400)]
Fix previous char table change.
* lisp.h (CHAR_TABLE_SET): Use sub_char_table_set_contents.
* chartab.c (optimize_sub_char_table): Likewise.
Chong Yidong [Thu, 16 Aug 2012 06:57:48 +0000 (14:57 +0800)]
* gtkutil.c (xg_get_font): Demand an Xft font.
Fixes: debbugs:3228
Chong Yidong [Thu, 16 Aug 2012 06:40:57 +0000 (14:40 +0800)]
Fix average font width calculation on NS.
* src/nsfont.m (nsfont_open): Similar to the Xft backend, set
min_width to space_width and average_width to the average over
printable ASCII characters.
(ns_char_width): Code cleanup.
(ns_ascii_average_width): New utility function.
Chong Yidong [Thu, 16 Aug 2012 06:35:13 +0000 (14:35 +0800)]
For Xft and X font backends, set omitted max_width font fields.
* src/xfont.c (xfont_open):
* src/xftfont.c (xftfont_open): Set the font's max_width field.
* src/font.h (struct font): Update comments.
Phil Sainty [Thu, 16 Aug 2012 06:25:27 +0000 (23:25 -0700)]
Make subword.el easier to customize (tiny change)
* lisp/progmodes/subword.el (subword-forward-function)
(subword-backward-function, subword-forward-regexp, subword-backward-regexp):
New variables.
(subword-forward, subword-forward-internal, subword-backward-internal):
Use new variables, eg so that different "word" definitions can be easily used.
Fixes: debbugs:11411
Dmitry Antipov [Thu, 16 Aug 2012 03:13:44 +0000 (07:13 +0400)]
Simple interface to set Lisp_Object fields of chararcter tables.
* lisp.h (CSET): New macro.
(char_table_set_extras, char_table_set_contents)
(sub_char_table_set_contents): New function.
* casetab.c, category.c, chartab.c, fns.c, fontset.c, search.c:
* syntax.c: Adjust users.
Stefan Monnier [Thu, 16 Aug 2012 01:18:07 +0000 (21:18 -0400)]
* src/eval.c (eval_sub): Bind lexical-binding.
* src/lread.c (Qlexical_binding): Make non-static.
Stefan Monnier [Wed, 15 Aug 2012 19:20:26 +0000 (15:20 -0400)]
* lisp/vc/vc-mtn.el (vc-mtn-revision-completion-table): Handle completion
for composite selectors.
* lisp/vc/vc.el (vc-diff-build-argument-list-internal): Don't prevent
operation just because we can't find a previous revision.
Jan Djärv [Wed, 15 Aug 2012 18:58:19 +0000 (20:58 +0200)]
Improve event loop on NS so that no polling is used.
* nsmenu.m (popupSession): Remove.
(pop_down_menu): Remove endModalSession.
(timeout_handler:): New method.
(runDialogAt:): Get next timeout. Start a NSTimer with that timeout.
Call runModalForWindow. Check timer_fired when it returns.
If not set, cancel timer and break out of loop.
Otherwise loop again, with a new timeout.
* nsterm.h (EmacsApp): fd_handler takes id argument.
(EmacsDialogPanel): Add timer_fired and timeout_handler.
* nsterm.m: Include fcntl.h if present.
(fd_entry, t_readfds, inNsSelect): Remove.
(select_writefds, select_valid, select_timeout, selfds)
(select_mutex, apploopnr): Add.
(EV_TRAILER): Call kbd_buffer_store_event_hold only if q_event_ptr.
Otherwise call kbd_buffer_store_event.
(ns_send_appdefined): Remove release of fd_entry.
(ns_read_socket): Always send appdefined. Remove inNsSelect check.
Increment and decrement apploopnr.
(ns_select): If no file descriptors, just do a NSTimer.
Otherwise copy read/write masks and start select thread (fd_handler).
Start main loop and wait for application defined event.
Inform select thread to stop selecting after main loop is exited.
(ns_term_init): Create selfds pipe and set non-blocking.
Initialize select_mutex. Start the select thread (fd_handler).
(fd_handler:): Loop forever, wait for info from the main thread
to either start or stop selecting. When select returns, send
and appdefined event.
(sendScrollEventAtLoc:fromEvent:): Check if q_event_ptr is set.
If not call kbd_buffer_store_event.
Jan Djärv [Wed, 15 Aug 2012 18:34:46 +0000 (20:34 +0200)]
* gtkutil.c (xg_mark_data): Use FRAME_X_P.
Glenn Morris [Wed, 15 Aug 2012 16:33:12 +0000 (09:33 -0700)]
Reword previous NEWS change.
Glenn Morris [Wed, 15 Aug 2012 16:29:11 +0000 (09:29 -0700)]
Replace version 24.2 with 24.3 where appropriate (hopefully)
Eli Zaretskii [Wed, 15 Aug 2012 16:21:41 +0000 (19:21 +0300)]
Fix bug #12196 with incorrect memory allocations for region-cache.
src/region-cache.c (move_cache_gap): Update gap_len using the actual
growth of the boundaries array. Do not change cache_len.
Dmitry Antipov [Wed, 15 Aug 2012 14:20:16 +0000 (18:20 +0400)]
Generalize and cleanup font subsystem checks.
* font.h (FONT_DEBUG, font_assert): Remove.
* font.c, fontset.c, w32font.c, xfont.c, xftfont.c: Change
font_assert to eassert. Use eassert where appropriate.
Chong Yidong [Wed, 15 Aug 2012 13:26:30 +0000 (21:26 +0800)]
Bump version to 24.2.50
Dmitry Antipov [Wed, 15 Aug 2012 09:40:00 +0000 (17:40 +0800)]
Fix last change to xg_get_font.
* gtkutil.c (xg_get_font): Use pango_units_to_double.
Paul Eggert [Wed, 15 Aug 2012 08:57:14 +0000 (01:57 -0700)]
* etags.c (Pascal_functions): Fix parenthesization typo.
Chong Yidong [Wed, 15 Aug 2012 07:58:34 +0000 (15:58 +0800)]
Extract better font information from the GTK >= 3.2 font chooser.
* gtkutil.c (xg_get_font): Rename from xg_get_font_name. When
using the new font chooser, use gtk_font_chooser_get_font_desc to
extract the font descriptor instead of just the font name. In
that case, return a font spec instead of a string.
(x_last_font_name): Move to this file from xfns.c.
* xfns.c (Fx_select_font): The return value can also be a font
spec. Move x_last_font_name management to gtkutil.c.
* xfaces.c: Make font weight and style symbols non-static.
* lisp/frame.el (set-frame-font): Accept font objects.
Glenn Morris [Wed, 15 Aug 2012 07:01:17 +0000 (00:01 -0700)]
More CPP-DEFINES updates
Stefan Monnier [Wed, 15 Aug 2012 04:02:14 +0000 (00:02 -0400)]
* src/minibuf.c (read_minibuf): Ignore caller's inhibit-read-only.
Fixes: debbugs:12117
Stefan Monnier [Wed, 15 Aug 2012 03:46:47 +0000 (23:46 -0400)]
* lisp/textmodes/tex-mode.el (tex-insert-quote): ~ is a space.
Fixes: debbugs:12137
Wolfgang Jenkner [Wed, 15 Aug 2012 03:37:07 +0000 (23:37 -0400)]
* lisp/man.el (Man-overstrike-face, Man-underline-face)
(Man-reverse-face): Remove variables.
(Man-overstrike, Man-underline, Man-reverse): New faces.
(Man-fontify-manpage): Use them instead of the variables.
(Man-cleanup-manpage): Comment change.
(Man-ansi-color-map): New variable.
(Man-fontify-manpage): Use it.
Call ansi-color-apply-on-region to replace ad hoc code.
Fixes: debbugs:12147
Wolfgang Jenkner [Wed, 15 Aug 2012 03:33:55 +0000 (23:33 -0400)]
Implement ANSI SGR parameters 22-27.
* lisp/ansi-color.el (ansi-colors): Doc fix.
(ansi-color-context, ansi-color-context-region): Doc fix.
(ansi-color--find-face): New function.
(ansi-color-apply, ansi-color-apply-on-region): Use it.
Rename the local variable `face' to `codes' since it is now a list of
ansi codes. Doc fix.
(ansi-color-get-face): Remove.
(ansi-color-parse-sequence): New function, derived from
ansi-color-get-face.
(ansi-color-apply-sequence): Use it. Rewrite, and support ansi
codes 22-27.
Fixes: debbugs:12146
Stefan Monnier [Tue, 14 Aug 2012 21:48:52 +0000 (17:48 -0400)]
* lisp/subr.el (read-passwd): Allow use from a minibuffer.
Stefan Monnier [Tue, 14 Aug 2012 21:38:06 +0000 (17:38 -0400)]
* src/alloc.c (Fgarbage_collect): Use plural form consistently.
Eli Zaretskii [Tue, 14 Aug 2012 19:44:55 +0000 (22:44 +0300)]
Fix compiler warning in keyboard.c.
Eli Zaretskii [Tue, 14 Aug 2012 19:11:45 +0000 (22:11 +0300)]
Fix last change in keyboard.c.
Eli Zaretskii [Tue, 14 Aug 2012 18:48:39 +0000 (21:48 +0300)]
Fix and improve GUD Tooltip mode.
lisp/tooltip.el (tooltip-identifier-from-point): Don't treat tokens
inside comments and strings as identifiers.
lisp/progmodes/gud.el (gud-tooltip-print-command): Quote the
expression to evaluate. This allows to evaluate expressions with
embedded whitespace.
(gud-tooltip-tips): Add a blank before the newline in the
message-box text, for the benefit of message-box emulation on
MS-Windows.
lisp/progmodes/gdb-mi.el (gdb-tooltip-print): Don't ignore error
messages from GDB, pop them up in a tooltip to give feedback to
user.
(gdb-tooltip-print-1): Quote the expression to evaluate. This
allows to evaluate expressions with embedded whitespace.
(gdb-inferior-io--init-proc): Don't send "-inferior-tty" command
if the TTY name is nil or empty (which happens when communicating
with the inferior via pipes, e.g. on MS-Windows).
(gdb-internals): If GDB sends a "&\n" empty debugging message,
don't send that to the GUD buffer.
doc/emacs/building.texi (Debugger Operation): Correct and improve
documentation of the GUD Tooltip mode.
Eli Zaretskii [Tue, 14 Aug 2012 18:25:47 +0000 (21:25 +0300)]
Fix a problem with disabled mouse movement events.
src/keyboard.c (command_loop_1): Reset ignore_mouse_drag_p flag each
iteration through the command loop. Fixes a problem whereby mouse
movements are ignored until the first mouse click.
Glenn Morris [Tue, 14 Aug 2012 18:23:10 +0000 (14:23 -0400)]
byte-compile-setq-default fix for bug#12195
* lisp/emacs-lisp/bytecomp.el (byte-compile-setq-default):
Optimize away setq-default with no args, as is done for setq.
Paul Eggert [Tue, 14 Aug 2012 17:45:25 +0000 (10:45 -0700)]
Use bool for Emacs Lisp booleans.
This is more natural, and on my platform (GCC 4.7.1 x86-64) it
makes Emacs's text size .03% smaller and presumably a bit faster.
* admin/merge-gnulib (GNULIB_MODULES): Add stdbool. This documents a
new direct dependency; stdbool was already being used indirectly
via other gnulib modules.
* lib-src/make-docfile.c (enum global_type): Sort values roughly in
decreasing alignment, except put functions last.
(compare_globals): Use this new property of enum global_type.
(write_globals): Use bool, not int, for booleans.
* src/lisp.h: Include <stdbool.h>.
(struct Lisp_Boolfwd, defvar_bool):
* src/lread.c (defvar_bool): Use bool, not int, for Lisp booleans.
* src/regex.c [!emacs]: Include <stdbool.h>.
(false, true): Remove; <stdbool.h> does this for us now.
Chong Yidong [Tue, 14 Aug 2012 17:10:38 +0000 (01:10 +0800)]
More doc fixes.
* lisp/minibuffer.el (read-file-name): Doc fix.
* character.c (Fcharacterp): Doc fix (Bug#12076).
* data.c (Findirect_variable): Doc fix (Bug#11040).
* editfns.c (Fsave_current_buffer): Doc fix (Bug#11542).
Fixes: debbugs:11542 debbugs:11040 debbugs:12076 debbugs:10881
Chong Yidong [Tue, 14 Aug 2012 16:28:23 +0000 (00:28 +0800)]
Doc fixes.
* lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Doc fix.
* src/chartab.c (Fmap_char_table): Doc fix.
* src/editfns.c (Fformat): Doc fix.
Fixes: debbugs:12059 debbugs:12085 debbugs:12061
Juanma Barranquero [Tue, 14 Aug 2012 16:15:28 +0000 (18:15 +0200)]
nt/config.nt: Sync with autogen/config.in.
(_GL_INLINE_HEADER_BEGIN): Update.
Glenn Morris [Tue, 14 Aug 2012 15:58:46 +0000 (08:58 -0700)]
* lisp/emacs-lisp/bytecomp.el (byte-recompile-file): Doc fix.
Stefan Monnier [Tue, 14 Aug 2012 14:54:51 +0000 (10:54 -0400)]
* lisp/url/url-http.el (url-http-parse-headers): Re-enable file-name-handlers.
Fixes: debbugs:11981
Michael Albinus [Tue, 14 Aug 2012 14:48:28 +0000 (16:48 +0200)]
* net/tramp-sh.el (tramp-open-shell): Cache the shell name.
(tramp-find-shell, tramp-open-connection-setup-interactive-shell):
Use cached shell name.
Fabián Ezequiel Gallina [Tue, 14 Aug 2012 13:39:27 +0000 (10:39 -0300)]
* progmodes/python.el (python-shell-send-string):
(python-shell-send-setup-code): Do not use `format' with
`message'.
Dmitry Gutov [Tue, 14 Aug 2012 12:38:11 +0000 (08:38 -0400)]
* lisp/progmodes/ruby-mode.el (ruby-syntax-methods-before-regexp): New const.
(ruby-syntax-propertize-function): Use it to recognize regexps.
Don't look at the text after regexp, just use the whitelist.
* test/indent/ruby.rb: Rearrange examples, add new ones.
Fixes: debbugs:6286