help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

tab completion barfs in inferior process


From: tyler
Subject: tab completion barfs in inferior process
Date: Tue, 21 Oct 2008 15:29:47 -0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux)

Hi,

I am running R in an ESS buffer in Emacs 23.0.60.1. ESS provides tab
completion for objects, but sometimes it barfs up multiple lines of
elisp in the mini-buffer instead of actually doing any completing. I
thought this was an ESS problem, until I realized that the same thing
was happening in *shell*, so I figure it has something to do with comint
mode (which ESS uses).

The problem is not consistently reproducible, but this is what I see now
in my *shell* buffer:

tyler:r-> ls h*
hubbell.R  hubbell.R~  hump4com.csv  hump4.csv  hump4env.csv  hump4pcnm.csv  
hump4XY.csv

If I type h<tab> at the prompt I see the following message in the
minibuffer (recovered from the *Messages* buffer):

Completing command name...
comint-dynamic-simple-complete: Wrong number of arguments: (lambda 
(completions) "List in help buffer sorted COMPLETIONS.
Typing SPC flushes the help buffer." (let ((window (get-buffer-window 
"*Completions*"))) (setq completions (sort completions (quote string-lessp))) 
(if (and (eq last-command this-command) window (window-live-p window) 
(window-buffer window) (buffer-name (window-buffer window)) (equal completions 
(buffer-local-value (quote comint-displayed-dynamic-completions) (window-buffer 
window)))) (with-current-buffer (window-buffer window) (if 
(pos-visible-in-window-p (point-max) window) (set-window-start window 
(point-min)) (save-selected-window (select-window window) (scroll-up)))) (setq 
comint-dynamic-list-completions-config (current-window-configuration)) 
(with-output-to-temp-buffer "*Completions*" (display-completion-list 
completions)) (message "Type space to flush; repeat completion command to 
scroll")) (let (key first) (if (with-current-buffer (get-buffer 
"*Completions*") (set (make-local-variable (quote 
comint-displayed-dynamic-completions)) completions) (setq key 
(read-key-sequence nil) first (aref key 0)) (and (consp first) (consp 
(event-start first)) (eq (window-buffer (posn-window (event-start first))) 
(get-buffer "*Completions*")) (eq (key-binding key) (quote 
mouse-choose-completion)))) (progn (mouse-choose-completion first) 
(set-window-configuration comint-dynamic-list-completions-config)) (unless (eq 
first 32) (setq unread-command-events (listify-key-sequence key))) (unless (eq 
first 9) (set-window-configuration 
comint-dynamic-list-completions-config)))))), 2
Mark set

If I open up a new instance of emacs, M-x shell, and go to the same
directory, h<tab> gives me a completion buffer, although it only
contains possible commands in my path, and none of the files in the
directory that start with h.

Any ideas what I've done wrong, or is this a bug of some sort?

Thanks,

Tyler
-- 





reply via email to

[Prev in Thread] Current Thread [Next in Thread]