Mercurial > emacs
changeset 91509:ce9d394589c2
(ido-magic-forward-char, ido-magic-backward-char)
(ido-magic-delete-char): Use prefix arg.
author | Kim F. Storm <storm@cua.dk> |
---|---|
date | Mon, 04 Feb 2008 09:57:16 +0000 |
parents | 73c67c7aa435 |
children | 5f67edbc76c0 |
files | lisp/ido.el |
diffstat | 1 files changed, 16 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ido.el Mon Feb 04 09:56:53 2008 +0000 +++ b/lisp/ido.el Mon Feb 04 09:57:16 2008 +0000 @@ -2537,17 +2537,18 @@ ;;; Magic C-f -(defun ido-magic-forward-char () +(defun ido-magic-forward-char (arg) "Move forward in user input or perform magic action. If no user input is present, or at end of input, perform magic actions: C-x C-b ... C-f switch to ido-find-file. C-x C-f ... C-f fallback to non-ido find-file. C-x C-d ... C-f fallback to non-ido brief dired. C-x d ... C-f fallback to non-ido dired." - (interactive) + (interactive "P") (cond - ((not (eobp)) - (forward-char 1)) + ((or arg (not (eobp))) + (forward-char (min (prefix-numeric-value arg) + (- (point-max) (point))))) ((memq ido-cur-item '(file dir)) (ido-fallback-command)) (ido-context-switch-command @@ -2557,17 +2558,19 @@ ;;; Magic C-b -(defun ido-magic-backward-char () +(defun ido-magic-backward-char (arg) "Move backward in user input or perform magic action. If no user input is present, or at start of input, perform magic actions: C-x C-f C-b switch to `ido-switch-buffer'. C-x C-d C-b switch to `ido-switch-buffer'. C-x d C-b switch to `ido-switch-buffer'. C-x C-b C-b fallback to non-ido `switch-to-buffer'." - (interactive) + (interactive "P") (cond - ((> (point) (minibuffer-prompt-end)) - (forward-char -1)) + ((or arg (> (point) (minibuffer-prompt-end))) + (forward-char + (- (min (prefix-numeric-value arg) + (- (point) (minibuffer-prompt-end)))))) ((eq last-command this-command) (when (and (memq ido-cur-item '(file dir)) (not (bobp))) @@ -2581,14 +2584,15 @@ ;;; Magic C-d -(defun ido-magic-delete-char () +(defun ido-magic-delete-char (arg) "Delete following char in user input or perform magic action. If at end of user input, perform magic actions: C-x C-f ... C-d enter dired on current directory." - (interactive) + (interactive "P") (cond - ((not (eobp)) - (delete-char 1)) + ((or arg (not (eobp))) + (delete-char (min (prefix-numeric-value arg) + (- (point-max) (point))))) (ido-context-switch-command nil) ((memq ido-cur-item '(file dir))