Stefan Monnier [Wed, 24 Nov 2010 02:21:55 +0000 (21:21 -0500)]
* progmodes/which-func.el (which-func-imenu-joiner-function):
Return a string, as expected.
(which-function-mode): Make sure we stop any previous timer before
starting a new one.
Bob Rogers [Tue, 23 Nov 2010 08:18:26 +0000 (00:18 -0800)]
Small VC fixes for doc/emacs.
* doc/emacs/maintaining.texi (VC With A Locking VCS, VC Directory Commands):
* doc/emacs/vc1-xtra.texi (Customizing VC, General VC Options): Small fixes.
Fix image cache marking bug (Bug#6301).
* src/alloc.c (mark_terminals): Ensure that the image cache is marked
even if the terminal object was marked earlier (Bug#6301).
* strings.texi (Creating Strings): Don't mention semi-obsolete
function char-to-string.
(String Conversion): Shorten discussion of semi-obsolete function
string-to-char. Link to Converting Representations.
Chong Yidong [Sun, 21 Nov 2010 17:04:43 +0000 (12:04 -0500)]
Backport fixes for Bug#5390 and Bug#5694 from trunk.
* progmodes/python.el: Add Ipython support (Bug#5390).
(python-shell-prompt-alist)
(python-shell-continuation-prompt-alist): New options.
(python--set-prompt-regexp): New function.
(inferior-python-mode, run-python, python-shell): Require
ansi-color. Use python--set-prompt-regexp to set the comint
prompt based on the Python interpreter.
(python--prompt-regexp): New var.
(python-check-comint-prompt)
(python-comint-output-filter-function): Use it.
(run-python): Use a pipe (Bug#5694).
Chong Yidong [Sun, 21 Nov 2010 16:52:05 +0000 (11:52 -0500)]
Make the sys.path remove in Python mode customizable (Bug#7454).
* progmodes/python.el (run-python): Doc fix.
(python-keep-current-directory-in-path): New var (Bug#7454).
Jan Djärv [Sat, 20 Nov 2010 13:50:55 +0000 (14:50 +0100)]
Fix bug 7425.
NOTE: When merging to trunk: xg_height_changed is xg_height_or_width_changed
in trunk.
* src/gtkutil.c (menubar_map_cb): New function.
(xg_update_frame_menubar): Connect signal map to menubar_map_cb.
Use 23 as menubar height if 0. (Bug#7425).
Stefan Monnier [Thu, 18 Nov 2010 02:09:41 +0000 (21:09 -0500)]
Make the yank-handler argument obsolete.
* simple.el (kill-new, kill-append, kill-region):
* comint.el (comint-kill-region): Make the yank-handler argument obsolete.
Chong Yidong [Sat, 13 Nov 2010 21:01:10 +0000 (16:01 -0500)]
Fix picture-mouse-set-point calculation (Bug#7390).
* lisp/textmodes/picture.el (picture-mouse-set-point): Don't use
posn-col-row; explicitly compute the motion based on the posn at
the window-start (Bug#7390).
Dan Nicolaescu [Sat, 13 Nov 2010 17:22:52 +0000 (12:22 -0500)]
Backport fix for Bug#6170 from trunk.
Fix alloca definition when using gcc on non-gnu systems.
* configure.in: Use the code sequence indicated by "info autoconf"
for alloca (bug#6170).
Michael Albinus [Sat, 13 Nov 2010 10:08:21 +0000 (11:08 +0100)]
* net/tramp.el (tramp-remote-coding-commands): Add an alternative
using "base64 -d -i". This is needed for older base64 versions
from GNU coreutils. Reported by Klaus Reichl
<Klaus.Reichl@thalesgroup.com>.
Stefan Monnier [Thu, 11 Nov 2010 05:08:25 +0000 (00:08 -0500)]
* lisp/emacs-lisp/smie.el (smie-rule-parent, smie-indent--rule):
Use smie-indent-virtual when indenting relative to an opener.
(smie-rule-separator): Use smie-rule-parent.
(smie-indent-keyword): Consult rules, even for openers at bol.
(smie-indent-comment-close): Try to align closer's content.
Eli Zaretskii [Tue, 9 Nov 2010 18:36:21 +0000 (20:36 +0200)]
Fix 2010-05-05T22:14:15Z!lekktu@gmail.com.
keyboard.c (kbd_buffer_nr_stored): Define only ifdef subprocesses.
(kbd_buffer_store_event_hold, kbd_buffer_get_event)
(tty_read_avail_input): Call kbd_buffer_nr_stored only ifdef
subprocesses. Use buffer_free only ifdef subprocesses.
process.c (init_process) [subprocesses]: Init kbd_is_on_hold in
the subprocesses version, not in the non-subprocesses one.
Eli Zaretskii [Sat, 6 Nov 2010 10:08:33 +0000 (12:08 +0200)]
Back-port from trunk the fix for bug #6294.
ls-lisp.el (ls-lisp-classify-file): New function.
(ls-lisp-insert-directory): Call it if switches include -F.
(ls-lisp-classify): Call ls-lisp-classify-file.
(insert-directory): Remove blanks from switches.
Wilson Snyder [Sat, 6 Nov 2010 07:54:19 +0000 (00:54 -0700)]
* progmodes/verilog-mode.el (verilog-insert-one-definition)
(verilog-read-decls, verilog-read-sub-decls-sig): Fix AUTOWIRE and
AUTOINOUT for SV style multidimensional arrays, bug294. Reported
by Eric Mastromarchi.
(verilog-preprocess): Use with-current-buffer and
font-lock-fontify-buffer to cleanup style issues.
Chong Yidong [Fri, 5 Nov 2010 18:28:19 +0000 (14:28 -0400)]
Fix the fix for Bug#6426 (Bug#7210), avoiding frame garbaging loop.
* image.c (free_image): Don't garbage the frame here, since this
function can be called while redisplaying (Bug#7210).
(uncache_image): Garbage the frame here (Bug#6426).
* dispextern.h (TRY_WINDOW_CHECK_MARGINS)
(TRY_WINDOW_IGNORE_FONTS_CHANGE): New defines.
* xdisp.c (try_window): Change arg from CHECK_MARGINS to FLAGS.
Don't abort with fonts change if TRY_WINDOW_IGNORE_FONTS_CHANGE is
set in FLAGS. Callers with non-zero CHECK_MARGINS changed to use
TRY_WINDOW_CHECK_MARGINS.
* xfns.c (Fx_show_tip): Undo last change. Call try_window with
TRY_WINDOW_IGNORE_FONTS_CHANGE (Bug#2423).
Glenn Morris [Wed, 3 Nov 2010 18:55:19 +0000 (14:55 -0400)]
Fix for Bug#5655, backported from trunk.
* configure.in (CRT_DIR): New output variable.
(--with-crt-dir): New option. (Bug#5655)
(HAVE_LIB64_DIR): Remove.
* src/Makefile.in (CRT_DIR): New variable, set by configure.
* src/m/amdx86-64.h, m/ibms390x.h (START_FILES, LIB_STANDARD):
Use $CRT_DIR rather than HAVE_LIB64_DIR. (Bug#5655)
Jan Djärv [Mon, 1 Nov 2010 11:30:33 +0000 (12:30 +0100)]
Backport fix for Bug#6571 from trunk. NOTE: May cause merge conflicts.
* src/keyboard.c (input_available_signal): Declare.
(kbd_buffer_nr_stored): New function.
(kbd_buffer_store_event_hold): If kbd_buffer_nr_stored returns
more than KBD_BUFFER_SIZE/2, stop reding input (Bug#6571).
(kbd_buffer_get_event): If input is suspended and kbd_buffer_nr_stored
returns less than KBD_BUFFER_SIZE/4, resume reding input (Bug#6571).
(tty_read_avail_input): If input is on hold, return.
Don't read more that free slots in kbd_buffer (Bug#6571).
* src/process.c (kbd_is_on_hold): New variable.
(hold_keyboard_input, unhold_keyboard_input, kbd_on_hold_p):
New functions.
(wait_reading_process_output): If kbd_on_hold_p returns non-zero,
select on empty input mask.
(init_process): Initialize kbd_is_on_hold to 0.
Chong Yidong [Mon, 1 Nov 2010 03:35:06 +0000 (23:35 -0400)]
Prevent server-mode from issuing a prompt in kill-emacs-hook.
* server.el (server-start): New arg INHIBIT-PROMPT prevents asking
user for confirmation.
(server-force-stop): Use it.
(server-start): Use server-force-stop for kill-emacs-hook, to
avoid user interaction while killing Emacs.
Chong Yidong [Mon, 1 Nov 2010 03:13:42 +0000 (23:13 -0400)]
Backport VC improvements from trunk.
* vc/log-edit.el (log-edit-rewrite-fixes): New var.
(log-edit-author): New dynamic var.
(log-edit-changelog-ours-p, log-edit-insert-changelog-entries):
Use it to return the author if different from committer.
(log-edit-insert-changelog): Use them to add Author: and Fixes headers.
* vc/vc.el (vc-deduce-backend): New fun. Handle diff buffers.
(vc-root-diff, vc-print-root-log, vc-log-incoming)
(vc-log-outgoing): Use it.
(vc-diff-internal): Set diff-vc-backend.
* vc/diff-mode.el (diff-vc-backend): New var.
* vc/vc.el (vc-diff-internal): Set `revert-buffer-function'
buffer-locally to lambda that re-runs the vc diff command.
(Bug#6447)
Make 'g' (AKA revert-buffer) rerun VC log, log-incoming and
log-outgoing commands.
* vc/vc.el (vc-log-internal-common): Add a new argument and use it
to create a buffer local revert-buffer-function variable.
(vc-print-log-internal, vc-log-incoming, vc-log-outgoing): Pass a
revert-buffer-function lambda.
Improve VC create/retrieve tag/branch.
* vc.el (vc-create-tag): Do not read the directory name for VCs
with repository revision granularity. Adjust the tag/branch
prompt. Reset VC properties.
(vc-retrieve-tag): Do not read the directory name for VCs
with repository revision granularity. Reset VC properties.
Add optional support for resetting VC properties.
* vc-dispatcher.el (vc-resynch-window): Add new optional argument,
call vc-file-clearprops when true.
(vc-resynch-buffer): Add new optional argument, pass it down.
(vc-resynch-buffers-in-directory): Likewise.
Improve support for special markup in the VC commit message.
* vc-mtn.el (vc-mtn-checkin): Support Author: and Date: markup.
* vc-hg.el (vc-hg-checkin): Add support for Date:.
* vc-git.el (vc-git-checkin):
* vc-bzr.el (vc-bzr-checkin): Likewise.
Add support for vc-log-incoming, improve vc-log-outgoing for Git.
* vc-git.el (vc-git-log-view-mode): Fix font lock for
incoming/outgoing logs.
(vc-git-log-outgoing, vc-git-log-incoming): New functions.
* vc-git.el (vc-git-log-outgoing): Use the same format as the
short log.
(vc-git-log-incoming): Likewise. Run "git fetch" before the log
command
Add bindings for vc-log-incoming and vc-log-outgoing.
* vc-hooks.el (vc-prefix-map): Add bindings for vc-log-incoming
and vc-log-outgoing.
* vc-dir.el (vc-dir-menu-map): Add menu bindings for vc-log-incoming
and vc-log-outgoing.
Improve state updating for VC tag commands.
* vc.el (vc-create-tag, vc-retrieve-tag): Call vc-resynch-buffer
to update the state of all buffers in the directory.
* 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-git.el (vc-git-checkin): 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-bzr.el (vc-bzr-checkin): Use log-edit-extract-headers.
(vc-bzr-conflicted-files): New function.
* log-edit.el (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-edit-extract-headers): New function to replace it.
* vc-dispatcher.el (vc-finish-logentry): Don't mess so badly with
the windows/frames.
* vc-bzr.el (vc-bzr-shelve-apply): Don't use *vc-bzr-shelve*.
* vc-dir.el (vc-dir-kill-line): New command.
(vc-dir-mode-map): Bind it to C-k.
(vc-dir-headers): Abbreviate the working dir.
* vc-git.el (vc-git-revision-table): Include remote branches.
New VC methods: vc-log-incoming and vc-log-outgoing.
* vc.el (vc-print-log-setup-buttons, vc-log-internal-common)
(vc-incoming-outgoing-internal, vc-log-incoming, vc-log-outgoing):
New functions.
(vc-print-log-internal): Just call vc-log-internal-common.
(vc-log-view-type): New permanent local variable.
* vc-hooks.el (vc-menu-map): Bind vc-log-incoming and vc-log-outgoing.
* vc-bzr.el (vc-bzr-log-view-mode): Use vc-log-view-type instead
of the dynamic bound vc-short-log.
(vc-bzr-log-incoming, vc-bzr-log-outgoing): New functions.
* vc-git.el (vc-git-log-outgoing): New function.
(vc-git-log-view-mode): Use vc-log-view-type instead
of the dynamic bound vc-short-log.
* vc-hg.el (vc-hg-log-view-mode): Use vc-log-view-type instead of
the dynamic bound vc-short-log. Highlight the tag.
(vc-hg-log-incoming, vc-hg-log-outgoing): New functions.
(vc-hg-outgoing, vc-hg-incoming, vc-hg-outgoing-mode):
(vc-hg-incoming-mode): Remove.
(vc-hg-extra-menu-map): Do not bind vc-hg-incoming and vc-hg-outgoing.
Fix default-directory for vc-root-diff.
* vc.el (vc-root-diff): Bind default-directory to the root
directory for the diff command.
* vc-hg.el (vc-hg-push, vc-hg-pull): Use `apply' when calling
`vc-hg-command' with a list of flags.
* vc-bzr.el (vc-bzr-log-edit-mode): Add --fixes support to
log-edit-before-checkin-process.
* vc.el (vc-modify-change-comment): Pass MODE to vc-start-logentry.
Add special markup processing for commit logs.
* log-edit.el (log-edit): Add new argument MODE. Use that mode
when non-nil instead of the log-view-mode.
* vc.el (vc-default-log-edit-mode): New function.
* vc-dispatcher.el (vc-log-edit): Add a mode argument, pass it to
log-edit.
Support for shelving snapshots and for showing shelves.
* vc-bzr.el (vc-bzr-shelve-show, vc-bzr-shelve-show-at-point)
(vc-bzr-shelve-apply-and-keep-at-point, vc-bzr-shelve-snapshot):
New functions.
(vc-bzr-shelve-map, vc-bzr-shelve-menu-map)
(vc-bzr-extra-menu-map): Map them.