bpt/emacs.git
14 years agoEmulate POSIX_SIGNALS on MS-Windows.
Eli Zaretskii [Sat, 1 May 2010 18:28:00 +0000 (21:28 +0300)]
Emulate POSIX_SIGNALS on MS-Windows.

 w32.c (sigemptyset, sigaddset, sigfillset, sigprocmask): New stubs.
 sysdep.c (sys_signal) [WINDOWSNT]: #ifdef away.
 (wait_for_termination) [WINDOWSNT]: Move MS-Windows specific code
 from non-POSIX_SIGNALS section to POSIX_SIGNALS section.
 s/ms-w32.h (POSIX_SIGNALS, struct sigaction, SIG_BLOCK)
 (SIG_SETMASK, SIG_UNBLOCK): Define.

14 years agoFix cursor positioning in partial width windows on TTY.
Eli Zaretskii [Sat, 1 May 2010 15:53:35 +0000 (18:53 +0300)]
Fix cursor positioning in partial width windows on TTY.

 xdisp.c (set_cursor_from_row): Don't place cursor on the vertical border
 glyph between adjacent windows.
 (try_cursor_movement): Don't assume that row->end == (row+1)->start,
 test for that explicitly.

14 years agoFix display of truncated R2L lines on a TTY.
Eli Zaretskii [Sat, 1 May 2010 13:39:44 +0000 (16:39 +0300)]
Fix display of truncated R2L lines on a TTY.

 xdisp.c (display_line): Fix prepending of truncation glyphs to R2L rows.
 (insert_left_trunc_glyphs): Support addition of left truncation glyphs
 to R2L rows.

14 years agoFix display of R2L continued lines in partial-width windows on a TTY.
Eli Zaretskii [Sat, 1 May 2010 10:49:09 +0000 (13:49 +0300)]
Fix display of R2L continued lines in partial-width windows on a TTY.

 xdisp.c: (extend_face_to_end_of_line): In almost-filled rows, extend only
 if the row is R2L and not continued.

14 years agoRefactor code that determines row->start and row->end.
Eli Zaretskii [Sat, 1 May 2010 08:50:01 +0000 (11:50 +0300)]
Refactor code that determines row->start and row->end.

 xdisp.c (find_row_end): New function, refactored from display_line.
 (display_line): Use it.

14 years agoFix a crash when a display string is continued to the next line.
Eli Zaretskii [Tue, 27 Apr 2010 19:40:05 +0000 (22:40 +0300)]
Fix a crash when a display string is continued to the next line.

 xdisp.c (set_cursor_from_row): When looping over a display string,
 don't overstep the end of the glyph row.

14 years agoStart fixing cursor positioning in bidi buffers with display properties.
Eli Zaretskii [Sun, 25 Apr 2010 19:33:31 +0000 (22:33 +0300)]
Start fixing cursor positioning in bidi buffers with display properties.

 xdisp.c (set_cursor_from_row): Don't return zero if cursor was
 found by `cursor' property of a display string.
 (display_line): Preserve overlay and string info in row->end.

14 years agoMove code that bidi-iterates out of display property to a separate function.
Eli Zaretskii [Sun, 25 Apr 2010 16:55:59 +0000 (19:55 +0300)]
Move code that bidi-iterates out of display property to a separate function.

 xdisp.c (iterate_out_of_display_property): New function, body from pop_it.
 (pop_it): Use it.

14 years agoFix crash with bidi display on the last empty line (bug#6030).
Eli Zaretskii [Sun, 25 Apr 2010 14:42:34 +0000 (17:42 +0300)]
Fix crash with bidi display on the last empty line (bug#6030).

 xdisp.c (display_line): Don't assume 2nd call to
 get_next_display_element cannot return zero.

14 years agoFix cursor motion at end of line that ends with a composite character.
Eli Zaretskii [Sat, 24 Apr 2010 11:07:27 +0000 (14:07 +0300)]
Fix cursor motion at end of line that ends with a composite character.

 xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
 use `get_next_display_element' and `set_iterator_to_next' to
 advance to the next character, when looking for the character that
 begins the next row.

14 years agoFix GDB startup with .gdbinit.
Eli Zaretskii [Sat, 24 Apr 2010 07:32:48 +0000 (10:32 +0300)]
Fix GDB startup with .gdbinit.

 .gdbinit: Add a "set Fmake_symbol" line to force GDB to load the
 definition of "struct Lisp_Symbol".

14 years agoFix display of composed characters from L2R scripts in bidi buffers.
Eli Zaretskii [Fri, 23 Apr 2010 18:10:31 +0000 (21:10 +0300)]
Fix display of composed characters from L2R scripts in bidi buffers.

 xdisp.c (set_iterator_to_next, next_element_from_composition): After
 advancing IT past the composition, resync the bidi iterator with
 IT's position.  (Bug#5977)

14 years agoSupport `display' text properties and overlays.
Eli Zaretskii [Fri, 23 Apr 2010 15:05:23 +0000 (18:05 +0300)]
Support `display' text properties and overlays.

 xdisp.c (pop_it): When the stack is popped after displaying
 from a string, bidi-iterate to exit from the text portion covered
 by the `display' property or overlay.  (Bug#5988, bug#5920)

14 years ago* s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
Dan Nicolaescu [Fri, 23 Apr 2010 07:37:42 +0000 (00:37 -0700)]
* s/netbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure sets nocombreloc.
* s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Remove.

14 years agoSimplify STARTFILES definition.
Dan Nicolaescu [Fri, 23 Apr 2010 07:21:18 +0000 (00:21 -0700)]
Simplify STARTFILES definition.
* s/hpux10-20.h (START_FILES): Explicitly define here instead of
relying on Makefile.in to define it.
* s/cygwin.h (START_FILES): Likewise.
* Makefile.in (STARTFILES): Remove conditional code, not needed anymore.

14 years agoClean up Solaris code.
Dan Nicolaescu [Fri, 23 Apr 2010 07:00:38 +0000 (00:00 -0700)]
Clean up Solaris code.
* s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS, C_SWITCH_X_SYSTEM)
(LIB_MOTIF): Remove, configure takes care of this.
(NOT_USING_MOTIF): Remove, unused.
* xrdb.c: Remove #if 0-ed #include.
(SYSV): Remove conditional for old SysV.
* sysdep.c (closedir): Remove conditional code for Solaris,
Solaris has closedir.

14 years ago* etc/NEWS: More SELinux details and some minor fixes.
Glenn Morris [Fri, 23 Apr 2010 05:43:48 +0000 (22:43 -0700)]
* etc/NEWS: More SELinux details and some minor fixes.

14 years agoChangeLog fixes.
Glenn Morris [Fri, 23 Apr 2010 05:40:33 +0000 (22:40 -0700)]
ChangeLog fixes.

14 years agoRestore 0644 file permissions, which were changed accidently.
Michael Albinus [Fri, 23 Apr 2010 02:46:53 +0000 (04:46 +0200)]
Restore 0644 file permissions, which were changed accidently.

14 years agoRegenerate configure.
Dan Nicolaescu [Thu, 22 Apr 2010 20:32:43 +0000 (13:32 -0700)]
Regenerate configure.

14 years agoFix Bug#6001.
Jan Djärv [Thu, 22 Apr 2010 17:23:18 +0000 (19:23 +0200)]
Fix Bug#6001.

* xsettings.c (read_and_apply_settings): Check if current_font is
  NULL before strcmp (Bug#6001).

14 years ago* configure.in (REAL_CFLAGS, CFLAGS): Restore -g for gcc.
Dan Nicolaescu [Thu, 22 Apr 2010 16:37:58 +0000 (09:37 -0700)]
* configure.in (REAL_CFLAGS, CFLAGS): Restore -g for gcc.

14 years agoSynchronize with Tramp repository.
Michael Albinus [Thu, 22 Apr 2010 12:07:37 +0000 (14:07 +0200)]
Synchronize with Tramp repository.

* net/tramp.el (with-connection-property, tramp-completion-mode-p)
(tramp-action-process-alive, tramp-action-out-of-band)
(tramp-check-for-regexp, tramp-file-name-p, tramp-equal-remote)
(tramp-exists-file-name-handler): Fix docstring.
(with-progress-reporter): New defmacro.
(tramp-do-copy-or-rename-file, tramp-handle-dired-compress-file)
(tramp-maybe-open-connection): Use it.

14 years agoDetect ssh 'ControlMaster' argument automatically in some cases.
Michael Albinus [Thu, 22 Apr 2010 11:21:39 +0000 (13:21 +0200)]
Detect ssh 'ControlMaster' argument automatically in some cases.

* net/tramp.el (tramp-detect-ssh-controlmaster): New defun.
(tramp-default-method): Use it.

14 years ago* net/tramp.el (tramp-handle-copy-file): Add new optional
Michael Albinus [Thu, 22 Apr 2010 09:15:27 +0000 (11:15 +0200)]
* net/tramp.el (tramp-handle-copy-file): Add new optional
parameter `preserve-selinux-context'.
(tramp-file-name-for-operation): Add `set-file-selinux-context'.

14 years ago(message-generate-headers): Record insertion of optional headers as well.
Katsumi Yamaoka [Thu, 22 Apr 2010 08:24:25 +0000 (08:24 +0000)]
(message-generate-headers): Record insertion of optional headers as well.
Otherwise the check to prevent repeated insertion of optional headers
is a no-op.  By Andreas Seltenreich <seltenreich@gmx.de>.

14 years ago* net/tramp.el(tramp-completion-handle-file-name-all-completions):
Michael Albinus [Thu, 22 Apr 2010 04:30:16 +0000 (06:30 +0200)]
* net/tramp.el(tramp-completion-handle-file-name-all-completions):
Ensure, that non remote files are still checked.  Oops.

14 years agoUpdate ChangeLog
Miles Bader [Thu, 22 Apr 2010 00:15:20 +0000 (09:15 +0900)]
Update ChangeLog

14 years agoUpdate configure
Miles Bader [Thu, 22 Apr 2010 00:10:43 +0000 (09:10 +0900)]
Update configure

14 years agoget rid of "unix" pre-defined macro when preprocessing Makefile
Miles Bader [Thu, 22 Apr 2010 00:10:30 +0000 (09:10 +0900)]
get rid of "unix" pre-defined macro when preprocessing Makefile

14 years agoAvoid non-portable shell command negation
Andreas Schwab [Wed, 21 Apr 2010 21:44:48 +0000 (23:44 +0200)]
Avoid non-portable shell command negation
* configure.in: Revert last change.

14 years agoFix Bug#5840.
Michael Albinus [Wed, 21 Apr 2010 19:48:42 +0000 (21:48 +0200)]
Fix Bug#5840.

* icomplete.el (icomplete-completions): Use `non-essential'.

* net/tramp.el (tramp-connectable-p): New defun.
(tramp-handle-expand-file-name)
(tramp-completion-handle-file-name-all-completions)
(tramp-completion-handle-file-name-completion): Use it.

14 years agoClean up HP-UX files.
Dan Nicolaescu [Wed, 21 Apr 2010 19:32:54 +0000 (12:32 -0700)]
Clean up HP-UX files.
* m/hp800.h (NO_REMAP, VIRT_ADDR_VARIES, DATA_SEG_BITS)
(DATA_START, TEXT_START, LOAD_AVE_TYPE, LOAD_AVE_CVT)
(LDAV_SYMBOL, index, rindex): Move definitions only used in HP-UX ...
* s/hpux10-20.h: ... to the only user, here.

14 years ago* xsettings.c: Move misplaced HAVE_GCONF
Jan Djärv [Wed, 21 Apr 2010 18:25:13 +0000 (20:25 +0200)]
* xsettings.c: Move misplaced HAVE_GCONF

14 years agoFix bug #5992.
Eli Zaretskii [Wed, 21 Apr 2010 17:59:39 +0000 (20:59 +0300)]
Fix bug #5992.

 bidi.c (bidi_find_paragraph_start, bidi_at_paragraph_end): Don't
 use buffer-local values of paragraph-start and paragraph-separate.
 <paragraph_start_re, paragraph_separate_re>: Rename from
 fallback_paragraph_start_re and fallback_paragraph_separate_re.

14 years ago(lisp-completion-at-point): Try and handle errors.
Stefan Monnier [Wed, 21 Apr 2010 17:53:03 +0000 (13:53 -0400)]
(lisp-completion-at-point): Try and handle errors.

14 years agoconfigure.in: Change "if test ! -f" to "if ! test -f".
Jan Djärv [Wed, 21 Apr 2010 16:41:29 +0000 (18:41 +0200)]
configure.in: Change "if test ! -f" to "if ! test -f".
Regenerate configure.

14 years agoDocument tool-bar-style
Jan Djärv [Wed, 21 Apr 2010 16:25:15 +0000 (18:25 +0200)]
Document tool-bar-style

14 years agoGtk tool bars can be text, icons with text or just icons.
Jan Djärv [Tue, 20 Apr 2010 18:52:07 +0000 (20:52 +0200)]
Gtk tool bars can be text, icons with text or just icons.

* xsettings.c: Qmonospace_font_name, Qtool_bar_style and
current_tool_bar_style are new.
(store_config_changed_event): Rename from store_font_changed_event.
(XSETTINGS_TOOL_BAR_STYLE): New define.
(SEEN_FONT, SEEN_TB_STYLE): New enum values.
(struct xsettings): Add font and tb_style, set xft stuff inside #ifdef
HAVE_XFT.
(something_changedCB): store_font_changed_event is now
store_config_changed_event
(parse_settings): Rename from parse_xft_settings.  Read
non-xft xsettings outside #ifdef HAVE_XFT.
(read_settings): Renamed from read_xft_settings.
(apply_xft_settings): Take current settings as parameter.  Do not
call read_(xft)_settings.
(read_and_apply_settings): New function.
(xft_settings_event): Do non-xft stuff out of HAVE_XFT.  Call
read_and_apply_settings if there are settings to be read.
(init_xsettings): Renamed from init_xfd_settings.
Call read_and_apply_settings unconditionally.
(xsettings_initialize): Call init_xsettings.
(Ftool_bar_get_system_style): New function.
(syms_of_xsettings): Define Qmonospace_font_name and
Qtool_bar_style.  Initialize current_tool_bar_style to nil.
defsubr Stool_bar_get_system_style. Fprovide on
dynamic-setting.

* xsettings.h (Ftool_bar_get_system_style): Declare.

* xdisp.c: Vtool_bar_style, tool_bar_max_label_size,
Qtext, Qboth, Qboth_horiz are new.
(syms_of_xdisp): Intern Qtext, Qboth, Qboth_horiz, DEFVAR
Vtool_bar_style, tool_bar_max_label_size.

* lisp.h: Extern declare Qtext, Qboth, Qboth_horiz.

* keyboard.c: QClabel is new.
(parse_tool_bar_item): Take out QClabel from tool bar items.
Try to construct a label if ther is no QClabel.
(syms_of_keyboard): Intern :label as QClabel.

* dispextern.h (tool_bar_item_idx): TOOL_BAR_ITEM_LABEL is new.
(Vtool_bar_style, tool_bar_max_label_size, DEFAULT_TOOL_BAR_LABEL_SIZE):
New.

* Makefile.in (SOME_MACHINE_LISP): font-setting.el renamed to
dynamic-setting.el.

* gtkutil.c (xg_tool_bar_menu_proxy): Handle label in tool bar item.
(xg_make_tool_item, xg_show_toolbar_item): New function.
(update_frame_tool_bar): Take label from TOOL_BAR_ITEM_LABEL.
Call xg_make_tool_item to make a tool bar item.
Call xg_show_toolbar_item.  Use wtoolbar instead of x->toolbar_widget.

* xterm.c (x_draw_image_relief): Take Vtool_bar_button_margin
into account for toolbars.

* vc-dir.el (vc-dir-tool-bar-map): Add :label on some tool bar items.

* tool-bar.el (tool-bar-setup): Add :label on some tool bar items.

* loadup.el: Load dynamic-setting.el if feature dynamic-setting
is present.

* info.el (info-tool-bar-map): Add labels.

* cus-start.el (all): Add tool-bar-style and tool-bar-max-label-size.

* cus-edit.el (custom-commands): Add labels for tool bar.
(custom-buffer-create-internal, Custom-mode): Adjust for
labels in custom-commands.

* dynamic-setting.el: Renamed from font-setting.el.

14 years agoDeclarations before code (Bug#5993).
Jan Djärv [Wed, 21 Apr 2010 16:13:55 +0000 (18:13 +0200)]
Declarations before code (Bug#5993).

* data.c (make_blv): Declarations before code (Bug#5993).

* xlwmenu.c (expose_cb):
* lwlib-Xaw.c (fill_xft_data): Declarations before code (Bug#5993).

14 years agoAdded C-o keybinding to toggle use of virtual buffers
Leo Liu [Wed, 21 Apr 2010 11:00:58 +0000 (07:00 -0400)]
Added C-o keybinding to toggle use of virtual buffers
* ido.el (ido-init-completion-maps): For ido-switch-buffer, C-o
toggles the use of virtual buffers.
(ido-buffer-internal): Guard `ido-use-virtual-buffers' global
value.
(ido-toggle-virtual-buffers): New function.

14 years agoRemove NOMULTIPLEJOBS.
Dan Nicolaescu [Wed, 21 Apr 2010 06:49:28 +0000 (23:49 -0700)]
Remove NOMULTIPLEJOBS.

14 years ago* src/ChangeLog: Remove merged duplicate entry.
Glenn Morris [Wed, 21 Apr 2010 06:40:18 +0000 (23:40 -0700)]
* src/ChangeLog: Remove merged duplicate entry.

14 years agoRemove some more cpp in favor of autoconf.
Glenn Morris [Wed, 21 Apr 2010 06:35:35 +0000 (23:35 -0700)]
Remove some more cpp in favor of autoconf.

* configure.in (LIBSELINUX_LIBS): Always substitute in Makefiles.
(GTK_OBJ, DBUS_OBJ, LIBXSM, XMENU_OBJ, XOBJ): New output variables.

* src/Makefile.in (DBUS_OBJ, GTK_OBJ, XMENU_OBJ, XOBJ):
Define using autoconf, not cpp.
(LIBXSM): New variable, set by autoconf.
(LIBXT): Use $LIBXSM.

14 years agoRemove NOMULTIPLEJOBS, unused.
Dan Nicolaescu [Wed, 21 Apr 2010 05:47:56 +0000 (22:47 -0700)]
Remove NOMULTIPLEJOBS, unused.
* s/template.h (NOMULTIPLEJOBS):
* s/msdos.h (NOMULTIPLEJOBS): Remove, unused.

14 years agoSimplify LD_SWITCH_SYSTEM_TEMACS usage.
Dan Nicolaescu [Wed, 21 Apr 2010 05:33:24 +0000 (22:33 -0700)]
Simplify LD_SWITCH_SYSTEM_TEMACS usage.
* s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS):
* s/gnu-linux.h (LD_SWITCH_SYSTEM_TEMACS): Remove, configure
detects -znocombreloc and passes it to the linker
* s/hpux10-20.h (LD_SWITCH_SYSTEM_TEMACS): Remove, empty.

14 years agotetris.el: Use `define-derived-mode'; fix window selection; doc fixes.
Juanma Barranquero [Wed, 21 Apr 2010 03:53:42 +0000 (05:53 +0200)]
tetris.el: Use `define-derived-mode'; fix window selection; doc fixes.

* play/tetris.el (tetris, tetris-update-speed-function)
  (tetris-tty-colors, tetris-x-colors, tetris-move-bottom)
  (tetris-move-left, tetris-move-right, tetris-rotate-prev)
  (tetris-rotate-next, tetris-end-game, tetris-start-game)
  (tetris-pause-game): Fix typos in docstrings.
  (tetris-mode-map, tetris-null-map): Move initialization into declaration.
  (tetris-mode): Define with `define-derived-mode';
  set show-trailing-whitespace to nil.
  (tetris): Prefer window already displaying the "*Tetris*" buffer.

14 years agoRegenerate configure.
Glenn Morris [Wed, 21 Apr 2010 03:41:01 +0000 (20:41 -0700)]
Regenerate configure.

14 years agoRemove LIBSELINUX_LIBS need for cpp in Makefiles.
Glenn Morris [Wed, 21 Apr 2010 03:33:04 +0000 (20:33 -0700)]
Remove LIBSELINUX_LIBS need for cpp in Makefiles.

* configure.in (LIBSELINUX_LIBS): Always substitute in Makefiles.
* src/Makefile.in (LIBSELINUX_LIBS): Remove containing #ifdef.

14 years agoRegenerate configure, src/config.in.
Glenn Morris [Wed, 21 Apr 2010 03:11:03 +0000 (20:11 -0700)]
Regenerate configure, src/config.in.

14 years agoDoc updates for SELinux support.
Glenn Morris [Wed, 21 Apr 2010 03:08:21 +0000 (20:08 -0700)]
Doc updates for SELinux support.

* ack.texi, emacs.texi (Acknowledgments): Add SELinux support.

* etc/NEWS: Mention SELinux support.

14 years agoAdd SELinux support.
Karel Klíc [Wed, 21 Apr 2010 03:02:58 +0000 (20:02 -0700)]
Add SELinux support.

* configure.in: New option: --with(out)-selinux, on by default.
Set HAVE_LIBSELINUX if we find libselinux, and substitute
LIBSELINUX_LIBS in Makefiles.

* src/Makefile.in (LIBSELINUX_LIBS): New.
(LIBES): Add $LIBSELINUX_LIBS.
* src/eval.c, lisp.h (call7): New function.
* src/fileio.c [HAVE_LIBSELINUX]: Include selinux headers.
(Ffile_selinux_context, Fset_file_selinux_context):
New functions.
(Fcopy_file): New parameter preserve-selinux-context.
(Frename_file): Preserve selinux context when renaming by copy-file.

* lisp/files.el (backup-buffer): Handle SELinux context, and return it
if a backup was made by renaming.
(backup-buffer-copy): Set SELinux context to the target file.
(basic-save-buffer): Set SELinux context of the newly written file.
(basic-save-buffer-1): Now it also returns any SELinux context.
(basic-save-buffer-2): Set SELinux context of the newly created file,
and return it.
* lisp/net/tramp.el (tramp-file-name-for-operation):
Add file-selinux-context.

14 years agovc-bzr.el (vc-bzr-checkin): Undo spurious `async' arg change.
Stefan Monnier [Wed, 21 Apr 2010 02:10:50 +0000 (22:10 -0400)]
vc-bzr.el (vc-bzr-checkin): Undo spurious `async' arg change.

14 years agoMake the log-edit comments use RFC822 format throughout.
Stefan Monnier [Wed, 21 Apr 2010 02:05:24 +0000 (22:05 -0400)]
Make the log-edit comments use RFC822 format throughout.
* vc.el (vc-checkin, vc-modify-change-comment):
Adjust to new vc-start/finish-logentry.
(vc-find-conflicted-file): New command.
(vc-transfer-file): Adjust to new vc-checkin.
(vc-next-action): Improve scoping.

* vc-hg.el (vc-hg-log-edit-mode): Remove.
(vc-hg-checkin): Remove extra arg.  Use log-edit-extract-headers.

* vc-git.el (vc-git-log-edit-mode): Remove.
(vc-git-checkin): Remove extra arg.  Use log-edit-extract-headers.
(vc-git-commits-coding-system): Rename from git-commits-coding-system.

* vc-dispatcher.el (vc-log-edit): Shorten names for log-edit-show-files.
(vc-start-logentry): Remove argument `extra'.
(vc-finish-logentry): Remove extra args.

* vc-bzr.el (vc-bzr-log-edit-mode): Remove.
(vc-bzr-checkin): Remove extra arg.  Use log-edit-extract-headers.
(vc-bzr-conflicted-files): New function.

* log-edit.el (log-edit-extra-flags)
(log-edit-before-checkin-process): Remove.
(log-edit-summary, log-edit-header, log-edit-unknown-header): New faces.
(log-edit-headers-alist): New var.
(log-edit-header-contents-regexp): New const.
(log-edit-match-to-eoh): New function.
(log-edit-font-lock-keywords): Use them.
(log-edit): Insert a "Summary:" header as default.
(log-edit-mode): Mark font-lock rules as case-insensitive.
(log-edit-done): Cleanup headers.
(log-view-process-buffer): Remove.
(log-edit-extract-headers): New function to replace it.

14 years agoFix typos and spacing.
Juanma Barranquero [Wed, 21 Apr 2010 00:49:40 +0000 (02:49 +0200)]
Fix typos and spacing.

14 years agoDon't depend on cm.c or termcap.c on Windows, use stubs.
Juanma Barranquero [Wed, 21 Apr 2010 00:17:02 +0000 (02:17 +0200)]
Don't depend on cm.c or termcap.c on Windows, use stubs.

* makefile.w32-in (OBJ1): Remove cm.$(O) and termcap.$(O).
  ($(BLD)/cm.$(O), $(BLD)/termcap.$(O)): Remove.
* w32console.c (current_tty, cost): New vars; lifted from cm.c.
  (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear)
  (sys_tputs, sys_tgetstr): New stubs.
* s/ms-w32.h (chcheckmagic, cmcostinit, cmgoto, cmputc, Wcm_clear)
  (tputs, tgetstr): New; define to sys_*.

14 years agoRemove references to (default-)direction-reversed.
Juanma Barranquero [Tue, 20 Apr 2010 23:05:30 +0000 (01:05 +0200)]
Remove references to (default-)direction-reversed.

14 years agoWarn rather than error when making a local var inside a let.
Stefan Monnier [Tue, 20 Apr 2010 17:35:16 +0000 (13:35 -0400)]
Warn rather than error when making a local var inside a let.
* data.c (Fmake_variable_buffer_local, Fmake_local_variable):
Just signal a warning rather than an error when inside a let.
(Fmake_variable_frame_local): Add the same test.

14 years ago* font.c (syms_of_font): Make the style table vars read-only.
Stefan Monnier [Tue, 20 Apr 2010 17:17:29 +0000 (13:17 -0400)]
* font.c (syms_of_font): Make the style table vars read-only.

14 years ago* buffer.h (struct buffer): Remove unused var `direction_reversed'.
Stefan Monnier [Tue, 20 Apr 2010 17:01:39 +0000 (13:01 -0400)]
* buffer.h (struct buffer): Remove unused var `direction_reversed'.
* buffer.c (init_buffer_once, syms_of_buffer): Remove its initialization.

* bidi.c (bidi_initialize): Simplify fallback_paragraph_*_re init.

14 years ago* vc-dispatcher (vc-finish-logentry): Don't mess with the windows/frames.
Stefan Monnier [Tue, 20 Apr 2010 16:52:43 +0000 (12:52 -0400)]
* vc-dispatcher (vc-finish-logentry): Don't mess with the windows/frames.

14 years ago(lisp-completion-at-point): Complete around point.
Stefan Monnier [Tue, 20 Apr 2010 16:37:31 +0000 (12:37 -0400)]
(lisp-completion-at-point): Complete around point.
I.e. include text after point in the completion region.
Also, return nil when we're not after/in a symbol.

14 years ago* emacs.manifest: Add trustInfo section to Windows manifest.
Chong Yidong [Tue, 20 Apr 2010 15:46:52 +0000 (11:46 -0400)]
* emacs.manifest: Add trustInfo section to Windows manifest.

See http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00805.html
for details.

14 years ago(view-hello-file): Don't fiddle with the default enable-multibyte-characters.
Stefan Monnier [Tue, 20 Apr 2010 14:45:14 +0000 (10:45 -0400)]
(view-hello-file): Don't fiddle with the default enable-multibyte-characters.

14 years agoImplement GUI display of R2L lines, fix TTY display of R2L lines.
Eli Zaretskii [Tue, 20 Apr 2010 13:31:28 +0000 (16:31 +0300)]
Implement GUI display of R2L lines, fix TTY display of R2L lines.

 xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
 append_stretch_glyph.
 (set_cursor_from_row) <cursor_x>: Remove unused variable.  Fix
 off-by-one error in computing x at end of text in the row.
 (append_stretch_glyph): In reversed row, prepend the glyph rather
 than append it.  Set resolved_level and bidi_type of the glyph.
 (extend_face_to_end_of_line): If the row is reversed, prepend a
 stretch glyph whose width is such that the rightmost glyph will be
 drawn at the right margin of the window.  Fix off-by-one error on
 TTY frames in testing whether a line needs face extension.  Fix
 face extension at ZV.  If this is the last glyph row, use
 DEFAULT_FACE_ID, to avoid painting the rest of the window with the
 region face.
 (set_cursor_from_row, display_line): Use
 MATRIX_ROW_CONTINUATION_LINE_P instead of testing value of
 row->continuation_lines_width.
 (next_element_from_buffer): Don't call bidi_paragraph_init if we
 are at ZV.  Fixes a crash when reseated to ZV by
 try_window_reusing_current_matrix.
 (display_and_set_cursor, erase_phys_cursor): Handle negative HPOS,
 which happens with R2L glyph rows.  Fixes a crash when inserting a
 character at end of an R2L line.
 (set_cursor_from_row): Don't be fooled by truncated rows: don't
 treat them as having zero-width characters.  Improve comments.
 Don't reverse pos_before and pos_after for reversed glyph rows.
 Set cursor.x to negative value when the cursor might be on the
 left fringe.
 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines, consider the
 left fringe, not the right one.
 (notice_overwritten_cursor, draw_phys_cursor_glyph)
 (erase_phys_cursor): For reversed cursor_row, support cursor on
 the left fringe.
 fringe.c (update_window_fringes): For R2L rows, swap the bitmaps
 of continuation indicators on the fringes.
 (draw_fringe_bitmap): For reversed glyph rows, allow cursor on the
 left fringe.
 w32term.c (w32_draw_window_cursor): For reversed glyph rows,
 draw cursor on the left fringe.
 xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
 cursor on the left fringe.
 dispnew.c (update_text_area): Handle reversed desired rows when
 the cursor is on the left fringe.
 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
 below, not by 0, for when the cursor is on the left fringe.

 xdisp.c (unproduce_glyphs): New function.
 (display_line): Use it when produced glyphs are discarded from R2L
 glyph rows.
 (append_composite_glyph): In R2L rows, prepend the glyph rather
 than appending it.
  term.c (append_composite_glyph): In R2L rows, prepend the glyph
 rather than append it.  Set up the resolved_level and bidi_type
 attributes of the appended glyph.
 (produce_special_glyphs): Mirror the backslash continuation
 character in R2L lines.

14 years agoFix R2L paragraph display on TTY.
Eli Zaretskii [Tue, 20 Apr 2010 13:08:35 +0000 (16:08 +0300)]
Fix R2L paragraph display on TTY.

 xdisp.c (unproduce_glyphs): New function.
 (display_line): Use it when produced glyphs are discarded from R2L
 glyph rows.
 (append_composite_glyph): In R2L rows, prepend the glyph rather
 than appending it.
 term.c (append_composite_glyph): In R2L rows, prepend the glyph
 rather than append it.  Set up the resolved_level and bidi_type
 attributes of the appended glyph.

14 years agogtkutils.c (xg_event_is_for_scrollbar): Check if grabbed widget is a scrollbar.
Jan Djärv [Tue, 20 Apr 2010 11:38:30 +0000 (13:38 +0200)]
gtkutils.c (xg_event_is_for_scrollbar): Check if grabbed widget is a scrollbar.

14 years agomerge trunk
Kenichi Handa [Tue, 20 Apr 2010 07:26:02 +0000 (16:26 +0900)]
merge trunk

14 years agocharset.c (char_charset): Consider Vcharset_non_preferred_head only when the arg...
Kenichi Handa [Tue, 20 Apr 2010 06:30:26 +0000 (15:30 +0900)]
charset.c (char_charset): Consider Vcharset_non_preferred_head only when the arg CHARSET_LIST is nil.

14 years agoMake variable forwarding explicit rather the using special values.
Stefan Monnier [Tue, 20 Apr 2010 01:50:52 +0000 (21:50 -0400)]
Make variable forwarding explicit rather the using special values.
Basically, this makes the structure of buffer-local values and object
forwarding explicit in the type of Lisp_Symbols rather than use
special Lisp_Objects for that.  This tends to lead to slightly more
verbose code, but is more C-like, simpler, and makes it easier to make
sure we handled all cases, among other things by letting the compiler
help us check it.
* lisp.h (enum Lisp_Misc_Type, union Lisp_Misc):
Removing forwarding objects.
(enum Lisp_Fwd_Type, enum symbol_redirect, union Lisp_Fwd): New types.
(struct Lisp_Symbol): Make the various forms of variable-forwarding
explicit rather than hiding them inside Lisp_Object "values".
(XFWDTYPE): New macro.
(XINTFWD, XBOOLFWD, XOBJFWD, XKBOARD_OBJFWD): Redefine.
(XBUFFER_LOCAL_VALUE): Remove.
(SYMBOL_VAL, SYMBOL_ALIAS, SYMBOL_BLV, SYMBOL_FWD, SET_SYMBOL_VAL)
(SET_SYMBOL_ALIAS, SET_SYMBOL_BLV, SET_SYMBOL_FWD): New macros.
(SYMBOL_VALUE, SET_SYMBOL_VALUE): Remove.
(struct Lisp_Intfwd, struct Lisp_Boolfwd, struct Lisp_Objfwd)
(struct Lisp_Buffer_Objfwd, struct Lisp_Kboard_Objfwd):
Remove the Lisp_Misc_* header.
(struct Lisp_Buffer_Local_Value): Redefine.
(BLV_FOUND, SET_BLV_FOUND, BLV_VALUE, SET_BLV_VALUE): New macros.
(struct Lisp_Misc_Any): Add filler to get the right size.
(struct Lisp_Free): Use struct Lisp_Misc_Any rather than struct
Lisp_Intfwd.
(DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL, DEFVAR_INT)
(DEFVAR_KBOARD): Allocate a forwarding object.
* data.c (do_blv_forwarding, store_blv_forwarding): New macros.
(let_shadows_global_binding_p): New function.
(union Lisp_Val_Fwd): New type.
(make_blv): New function.
(swap_in_symval_forwarding, indirect_variable, do_symval_forwarding)
(store_symval_forwarding, swap_in_global_binding, Fboundp)
(swap_in_symval_forwarding, find_symbol_value, Fset)
(let_shadows_buffer_binding_p, set_internal, default_value)
(Fset_default, Fmake_variable_buffer_local, Fmake_local_variable)
(Fkill_local_variable, Fmake_variable_frame_local)
(Flocal_variable_p, Flocal_variable_if_set_p)
(Fvariable_binding_locus):
* xdisp.c (select_frame_for_redisplay):
* lread.c (Fintern, Funintern, init_obarray, defvar_int)
(defvar_bool, defvar_lisp_nopro, defvar_lisp, defvar_kboard):
* frame.c (store_frame_param):
* eval.c (Fdefvaralias, Fuser_variable_p, specbind, unbind_to):
* bytecode.c (Fbyte_code) <varref, varset>: Adapt to the new symbol
value structure.
* buffer.c (PER_BUFFER_SYMBOL): Move from buffer.h.
(clone_per_buffer_values): Only adjust markers into the current buffer.
(reset_buffer_local_variables): PER_BUFFER_IDX is never -2.
(Fbuffer_local_value, set_buffer_internal_1)
(swap_out_buffer_local_variables):
Adapt to the new symbol value structure.
(DEFVAR_PER_BUFFER): Allocate a Lisp_Buffer_Objfwd object.
(defvar_per_buffer): Take a new arg for the fwd object.
(buffer_lisp_local_variables): Return a proper alist (different fix
for bug#4138).
* alloc.c (Fmake_symbol): Use SET_SYMBOL_VAL.
(Fgarbage_collect): Don't handle buffer_defaults specially.
(mark_object): Handle new symbol value structure rather than the old
special Lisp_Misc_* objects.
(gc_sweep) <symbols>: Free also the buffer-local-value objects.
* term.c (set_tty_color_mode):
* bidi.c (bidi_initialize): Don't access the ->value field directly.
* buffer.h (PER_BUFFER_VAR_OFFSET): Don't bother with
a buffer_local_flags.
* print.c (print_object): Get rid of impossible forwarding objects.

14 years ago(completion-styles-alist): Fix up last merge and document `substring'.
Stefan Monnier [Mon, 19 Apr 2010 18:33:11 +0000 (14:33 -0400)]
(completion-styles-alist): Fix up last merge and document `substring'.

14 years ago* international/mule.el: Help the user choose a valid coding-system.
Stefan Monnier [Mon, 19 Apr 2010 17:05:12 +0000 (13:05 -0400)]
* international/mule.el: Help the user choose a valid coding-system.
(read-buffer-file-coding-system): New function.
(set-buffer-file-coding-system): Use it.  Prompt the user if the
coding-system cannot encode all the chars.

14 years agoCosmetic changes in src/bidi.c.
Eli Zaretskii [Mon, 19 Apr 2010 16:22:55 +0000 (19:22 +0300)]
Cosmetic changes in src/bidi.c.

 bidi.c (bidi_get_type, bidi_get_category)
 (bidi_at_paragraph_end, bidi_resolve_weak, bidi_resolve_neutral)
 (bidi_type_of_next_char, bidi_level_of_next_char): Declare
 static.  Use `INLINE' rather than `inline'.

14 years agoImprove commentary regarding redisplay.
Eli Zaretskii [Mon, 19 Apr 2010 15:35:15 +0000 (18:35 +0300)]
Improve commentary regarding redisplay.

14 years ago* vc-bzr: Use standard *vc* and *vc-diff* buffers.
Stefan Monnier [Mon, 19 Apr 2010 15:26:06 +0000 (11:26 -0400)]
* vc-bzr: Use standard *vc* and *vc-diff* buffers.
(vc-bzr-shelve-show, vc-bzr-shelve-apply)
(vc-bzr-shelve-apply-and-keep, vc-bzr-shelve-snapshot):
Don't use *vc-bzr-shelve*.

14 years agoMerge from emacs-23
Stefan Monnier [Mon, 19 Apr 2010 15:07:52 +0000 (11:07 -0400)]
Merge from emacs-23

14 years ago* tmm.el: Add missing key-binding shortcuts.
Stefan Monnier [Mon, 19 Apr 2010 14:34:01 +0000 (10:34 -0400)]
* tmm.el: Add missing key-binding shortcuts.
(tmm-prompt): Remove obsolete call to x-popup-menu.
(tmm-get-keymap): Add key-binding shortcuts now that they're not
available in the "keyseq cache" any more.

14 years agoMention in src/ChangeLog the bug number solved by 2010-04-19T12:12:13Z!eliz@gnu.org.
Eli Zaretskii [Mon, 19 Apr 2010 13:17:44 +0000 (16:17 +0300)]
Mention in src/ChangeLog the bug number solved by 2010-04-19T12:12:13Z!eliz@gnu.org.

14 years ago(completion-styles): Improve docstrings.
Stefan Monnier [Mon, 19 Apr 2010 13:17:40 +0000 (09:17 -0400)]
(completion-styles): Improve docstrings.

14 years ago.gdbinit (xsubchartable): New command.
Eli Zaretskii [Mon, 19 Apr 2010 13:05:35 +0000 (16:05 +0300)]
.gdbinit (xsubchartable): New command.

14 years agoFix crashes in GC in "emacs -nw".
Eli Zaretskii [Mon, 19 Apr 2010 12:12:13 +0000 (15:12 +0300)]
Fix crashes in GC in "emacs -nw".

 xdisp.c (display_line): Don't write beyond the last glyph row in
 the desired matrix.  Fixes crashes in "emacs -nw", see
 http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00075.html
 and http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00213.html

14 years ago* dired.c (Ffile_attributes): Fix typo in docstring.
Juanma Barranquero [Mon, 19 Apr 2010 03:06:29 +0000 (05:06 +0200)]
* dired.c (Ffile_attributes): Fix typo in docstring.

14 years ago* custom.el (defcustom): Add edebug spec.
Stefan Monnier [Mon, 19 Apr 2010 02:32:47 +0000 (22:32 -0400)]
* custom.el (defcustom): Add edebug spec.

14 years agoTest for special mode-class in view-buffer instead of view-file (bug#5513).
Juri Linkov [Sun, 18 Apr 2010 23:49:58 +0000 (02:49 +0300)]
Test for special mode-class in view-buffer instead of view-file (bug#5513).

* view.el (view-file, view-buffer): Move test for special mode-class
from view-file to view-buffer.

* tar-mode.el (tar-extract): Turn if's into one cond
like in arc-mode.el.

14 years agoSynch with Gnus trunk:
Katsumi Yamaoka [Sun, 18 Apr 2010 23:24:22 +0000 (23:24 +0000)]
Synch with Gnus trunk:
2010-04-17  Teodor Zlatanov  <tzz@lifelogs.com>
 * gnus.texi (Gnus Versions, Oort Gnus): Mention the Git repo instead of
 the CVS repo.  Put the Git repo in the news section.
 * gnus-coding.texi (Gnus Maintainance Guide): Fixed title typo.
 Removed some mentions of CVS.  Mention the new Git repo.

2010-04-17  Teodor Zlatanov  <tzz@lifelogs.com>
 * smime.el: Don't mention CVS.
 * nnrss.el (nnrss-fetch): Don't mention CVS.
 * nnir.el: Don't mention CVS.

14 years agoAdd 7z archive format support (bug#5475).
Juri Linkov [Sun, 18 Apr 2010 23:08:52 +0000 (02:08 +0300)]
Add 7z archive format support (bug#5475).

* arc-mode.el (archive-zip-extract): Try to find 7z executable.
(archive-7z-extract): New defcustom.
(archive-find-type): Add magic string for 7z.
(archive-extract-by-stdout): Add new optional arg `stderr-file'.
If `stderr-file' is non-nil, use `(t stderr-file)' for the
`buffer' arg of `call-process'.
(archive-zip-extract): Check `archive-zip-extract' for "7z" and
call the function `archive-7z-extract' with the variable
`archive-7z-extract' let-bound to `archive-zip-extract'.
(archive-7z-summarize, archive-7z-extract): New functions.

* international/mule.el (auto-coding-alist):
* files.el (auto-mode-alist): Add 7z file extension.

14 years ago* programs.texi (Semantic): New node.
Chong Yidong [Sun, 18 Apr 2010 23:02:16 +0000 (19:02 -0400)]
* programs.texi (Semantic): New node.

* maintaining.texi (EDE): New node.

* emacs.texi: Update node listing.

* misc.texi (Gnus): Use the `C-h i' keybinding for info.

14 years agoHash-cons pure data.
Stefan Monnier [Sun, 18 Apr 2010 21:49:33 +0000 (17:49 -0400)]
Hash-cons pure data.
* alloc.c (Fpurecopy): Hash-cons if requested.
(syms_of_alloc): Update purify-flag docstring.
* loadup.el: Setup hash-cons for pure data.

14 years agoFix duplicate entries in cedet's loaddefs.el files.
Stefan Monnier [Sun, 18 Apr 2010 21:45:44 +0000 (17:45 -0400)]
Fix duplicate entries in cedet's loaddefs.el files.
* emacs-lisp/autoload.el (autoload-file-load-name): Be more clever.
Should make most file-local generated-autoload-file unnecessary.
(print-readably): Silence warnings.
(autoload-find-destination): Take load-name as an arg to make sure
it's the same as the one that will be in the file.
(autoload-generate-file-autoloads): Adjust to above changes.
Try to make the dataflow a bit simpler.

14 years agoBugfix for ede-proj-makefile-insert-variables.
Chong Yidong [Sun, 18 Apr 2010 21:40:10 +0000 (17:40 -0400)]
Bugfix for ede-proj-makefile-insert-variables.

* cedet/ede/pmake.el (ede-proj-makefile-insert-variables): Don't
destroy list before using it.

14 years ago* cvs-status.el (cvs-refontify): Remove unused.
Stefan Monnier [Sun, 18 Apr 2010 21:37:29 +0000 (17:37 -0400)]
* cvs-status.el (cvs-refontify): Remove unused.

14 years ago(Mathematics): Prefer Unicode charset.
Stefan Monnier [Sun, 18 Apr 2010 21:35:20 +0000 (17:35 -0400)]
(Mathematics): Prefer Unicode charset.

14 years agoSet USER_POS in hint_flags to work around Cygwin problem.
Jan Djärv [Sun, 18 Apr 2010 11:24:59 +0000 (13:24 +0200)]
Set USER_POS in hint_flags to work around Cygwin problem.

gtkutil.c (xg_set_geometry): Set size in geometry string also.
(x_wm_set_size_hint): Set USER_POS in hint_flags (Bug#5968).

14 years agocalc-bin.el (calc-radix): Have the O option turn on twos-complement mode.
Jay Belanger [Sun, 18 Apr 2010 04:13:09 +0000 (23:13 -0500)]
calc-bin.el (calc-radix): Have the O option turn on twos-complement mode.

14 years agocalc.el (calc-mode-map): Bind O to 'calc-missing-key'.
Jay Belanger [Sun, 18 Apr 2010 03:09:18 +0000 (22:09 -0500)]
calc.el (calc-mode-map): Bind O to 'calc-missing-key'.

14 years agoSet _NET_WM_WINDOW_TYPE in menus. Looks bad with compiz otherwise.
Jan Djärv [Sat, 17 Apr 2010 18:18:12 +0000 (20:18 +0200)]
Set _NET_WM_WINDOW_TYPE in menus.  Looks bad with compiz otherwise.

xlwmenu.c (set_window_type): New function.
(make_windows_if_needed, XlwMenuRealize): Call set_window_type.

14 years agoDon't redraw lucid menus more than needed. Use double buffer to reduce flicker.
Jan D [Sat, 17 Apr 2010 17:43:03 +0000 (19:43 +0200)]
Don't redraw lucid menus more than needed.  Use double buffer to reduce flicker.

* xlwmenu.c: Include Shell.h, remove duplicate declaration of
XlwMenuRedisplay.
(display_menu_item): Replace ws->window with ws->pixmap, remove
call to XftDrawRect.
(display_menu): Remove this and that argument.  Remove
just_compute_this_one_p. Fill pixmap at start and copy it to window
at end.
(expose_cb): New function.
(make_windows_if_needed): Replace XCreateWindow with XtCreatePopup.
Add eventhandler for expose to expose_cb.  Remove creation of
xft_draw.
(create_pixmap_for_menu): New function.
(remap_menubar): Pop down menus that aren't the same as in old_stack.
Set width, heigh, x, y on widget with XtVaSetValues.  Call
create_pixmap_for_menu.
Replace XUnmapWindow with XtPopdown.
Remowe two last parameters to display_menu.
(map_event_to_widget_value, XlwMenuRedisplay, Key, Select)
(pop_up_menu): Remowe two last parameters to display_menu.
(XlwMenuRealize): Call create_pixmap_for_menu, set w and pixmap.
Remove call to XftDrawCreate.
(XlwMenuDestroy): Free pixmap.  Call XtDestroyWidget instead of
XDestroyWindow.
(handle_motion_event): Only call handle_single_motion_event once.

* xlwmenuP.h (window_state): Add pixmap and w.

14 years agoFix the version number for added files.
Dan Nicolaescu [Sat, 17 Apr 2010 16:10:19 +0000 (09:10 -0700)]
Fix the version number for added files.
* vc-hg.el (vc-hg-working-revision): Check if the file is
registered after hg parent fails (Bug#5961).

14 years agoFix cursor positioning at end of R2L line on TTY frames.
Eli Zaretskii [Sat, 17 Apr 2010 16:02:18 +0000 (19:02 +0300)]
Fix cursor positioning at end of R2L line on TTY frames.

 xdisp.c (extend_face_to_end_of_line): Fix off-by-one error on
 TTY frames in testing whether a line needs face extension.

14 years agoFix crash on NextStep terminal (Bug#5837)
Chong Yidong [Sat, 17 Apr 2010 15:53:55 +0000 (11:53 -0400)]
Fix crash on NextStep terminal (Bug#5837)

* xdisp.c (prepare_menu_bars): Don't call ns_set_doc_edited for
terminal frames (Bug#5837).