Commit graph

268 commits

Author SHA1 Message Date
John Wiegley
2a07afc5fe Fixed duplicate names appearing in IDO buffer list (using virtuals)
* ido.el (ido-add-virtual-buffers-to-list): Fixed duplicated names
appearing in buffer list (if a live buffer name matched a recentf
file basename).  Should use uniqify to offer a real solution.
2010-04-06 03:02:57 -04:00
John Wiegley
f9a27d8615 Minor fixes to a recent contribution to ido.el
* ido.el (ido-use-virtual-buffers, ido-virtual): Moved a ChangeLog
comment to code, and added a :version tag.
(ido-virtual-buffers): Moved defvar to fix byte-compiler warning.
2010-04-05 23:38:56 -04:00
Juanma Barranquero
9caf8a8f7f Enable recentf-mode if using virtual buffers.
* ido.el (recentf-list): Declare for byte-compiler.
  (ido-virtual-buffers): Move up to silence byte-compiler.  Add docstring.
  (ido-make-buffer-list): Simplify.
  (ido-add-virtual-buffers-to-list): Simplify.  Enable recentf-mode.
2010-04-06 04:26:37 +02:00
John Wiegley
0523d11710 2010-04-04 John Wiegley <jwiegley@gmail.com>
* ido.el (ido-use-virtual-buffers): New variable to indicate
	whether "virtual buffer" support is enabled for IDO.  Essentially
	it works as follows: Say you are visiting a file and the buffer
	gets cleaned up by mignight.el.  Later, you want to switch to that
	buffer, but find it's no longer open.  With virtual buffers
	enabled, the buffer name stays in the buffer list (using the
	ido-virtual face, and always at the end), and if you select it, it
	opens the file back up again.  This allows you to think less about
	whether recently opened files are still open or not.  Most of the
	time you can quit Emacs, restart, and then switch to a file buffer
	that was previously open as if it still were.  NOTE: This feature
	has been present in iswitchb for several years now, and I'm
	porting the same logic to IDO.
	(ido-virtual): Face used to indicate virtual buffers in the list.
	(ido-buffer-internal): If a buffer is chosen, and no such buffer
	exists, but a virtual buffer of that name does (which would be why
	it was in the list), recreate the buffer by reopening the file.
	(ido-make-buffer-list): If virtual buffers are being used, call
	`ido-add-virtual-buffers-to-list' before the make list hook.
	(ido-virtual-buffers): New variable which contains a copy of the
	current contents of the `recentf-list', albeit pared down for the
	sake of speed, and with proper faces applied.
	(ido-add-virtual-buffers-to-list): Using the `recentf-list',
	create a list of "virtual buffers" to present to the user in
	addition to the currently open set.  Note that this logic could
	get rather slow if that list is too large.  With the default
	`recentf-max-saved-items' of 200, there is little speed penalty.
2010-04-04 02:55:19 -04:00
Óscar Fuentes
2acfb95436 ido.el: Consider the possibility of buffer names changing after kill-buffer. 2010-01-18 20:34:55 +01:00
Glenn Morris
114f9c9679 Add 2010 to copyright years. 2010-01-13 00:35:10 -08:00
Glenn Morris
b2d5f31abf Andreas Politz <politza at fh-trier.de> (tiny change)
(ido-file-internal): Handle filenames at point that do not have a
directory part.  (Bug#5049)
2009-12-02 03:00:41 +00:00
Stefan Monnier
7fdbcd8387 * x-dnd.el (x-dnd-maybe-call-test-function):
* window.el (split-window-vertically):
* whitespace.el (whitespace-help-on):
* vc-rcs.el (vc-rcs-consult-headers):
* userlock.el (ask-user-about-lock-help)
(ask-user-about-supersession-help):
* type-break.el (type-break-force-mode-line-update):
* time-stamp.el (time-stamp-conv-warn):
* terminal.el (te-set-output-log, te-more-break, te-filter)
(te-sentinel,terminal-emulator):
* term.el (make-term, term-exec, term-sentinel, term-read-input-ring)
(term-write-input-ring, term-check-source, term-start-output-log):
(term-display-buffer-line, term-dynamic-list-completions):
(term-ansi-make-term, serial-term):
* subr.el (selective-display):
* strokes.el (strokes-xpm-to-compressed-string, strokes-decode-buffer)
(strokes-encode-buffer, strokes-xpm-for-compressed-string):
* speedbar.el (speedbar-buffers-tail-notes, speedbar-buffers-item-info)
(speedbar-reconfigure-keymaps, speedbar-add-localized-speedbar-support)
(speedbar-remove-localized-speedbar-support)
(speedbar-set-mode-line-format, speedbar-create-tag-hierarchy)
(speedbar-update-special-contents, speedbar-buffer-buttons-engine)
(speedbar-buffers-line-directory):
* simple.el (shell-command-on-region, append-to-buffer)
(prepend-to-buffer):
* shadowfile.el (shadow-save-todo-file):
* scroll-bar.el (scroll-bar-set-window-start, scroll-bar-drag-1)
(scroll-bar-maybe-set-window-start):
* sb-image.el (speedbar-image-dump):
* saveplace.el (save-place-alist-to-file, save-places-to-alist)
(load-save-place-alist-from-file):
* ps-samp.el (ps-print-message-from-summary):
* ps-print.el (ps-flush-output, ps-insert-file, ps-get-boundingbox)
(ps-background-image, ps-begin-job, ps-do-despool):
* ps-bdf.el (bdf-find-file, bdf-read-font-info):
* printing.el (pr-interface, pr-ps-file-print, pr-find-buffer-visiting)
(pr-ps-message-from-summary, pr-lpr-message-from-summary):
(pr-call-process, pr-file-list, pr-interface-save):
* novice.el (disabled-command-function)
(enable-command, disable-command):
* mouse.el (mouse-buffer-menu-alist):
* mouse-copy.el (mouse-kill-preserving-secondary):
* macros.el (kbd-macro-query):
* ledit.el (ledit-go-to-lisp, ledit-go-to-liszt):
* informat.el (batch-info-validate):
* ido.el (ido-copy-current-word, ido-initiate-auto-merge):
* hippie-exp.el (try-expand-dabbrev-visible):
* help-mode.el (help-make-xrefs):
* help-fns.el (describe-variable):
* generic-x.el (bat-generic-mode-run-as-comint):
* finder.el (finder-mouse-select):
* find-dired.el (find-dired-sentinel):
* filesets.el (filesets-file-close):
* files.el (list-directory):
* faces.el (list-faces-display, describe-face):
* facemenu.el (list-colors-display):
* ezimage.el (ezimage-image-association-dump, ezimage-image-dump):
* epg.el (epg--process-filter, epg-cancel):
* epa.el (epa--marked-keys, epa--select-keys, epa-display-info)
(epa--read-signature-type):
* emerge.el (emerge-copy-as-kill-A, emerge-copy-as-kill-B)
(emerge-file-names):
* ehelp.el (electric-helpify):
* ediff.el (ediff-regions-wordwise, ediff-regions-linewise):
* ediff-vers.el (rcs-ediff-view-revision):
* ediff-util.el (ediff-setup):
* ediff-mult.el (ediff-append-custom-diff):
* ediff-diff.el (ediff-exec-process, ediff-process-sentinel)
(ediff-wordify):
* echistory.el (Electric-command-history-redo-expression):
* dos-w32.el (find-file-not-found-set-buffer-file-coding-system):
* disp-table.el (describe-display-table):
* dired.el (dired-find-buffer-nocreate):
* dired-aux.el (dired-rename-subdir, dired-dwim-target-directory):
* dabbrev.el (dabbrev--same-major-mode-p):
* chistory.el (list-command-history):
* apropos.el (apropos-documentation):
* allout.el (allout-obtain-passphrase):
(allout-copy-exposed-to-buffer):
(allout-verify-passphrase): Use with-current-buffer.
2009-11-13 22:19:45 +00:00
Stefan Monnier
d5e637154f Replace completion-base-size by completion-base-position to fix bugs
such as (bug#4699).
* simple.el (completion-base-position): New var.
(completion-base-size): Mark as obsolete.
(choose-completion): Make it work for mouse events as well.
Pass the new base-position to choose-completion-string.
(choose-completion-guess-base-position): New function, extracted from
choose-completion-delete-max-match.
(choose-completion-delete-max-match): Use it.  Make obsolete.
(choose-completion-string): Use the new base-position info.
(completion-root-regexp): Delete.
(completion-setup-function): Preserve completion-base-position.
Eliminate obsolete base-size manipulation.
* minibuffer.el (display-completion-list): Don't mess with base-size.
(minibuffer-completion-help): Set completion-base-position instead.
* mouse.el (mouse-choose-completion): Redefine as a mere alias to
choose-completion.
* textmodes/bibtex.el (bibtex-complete):
* emacs-lisp/crm.el (crm--choose-completion-string):
Adjust to new calling convention.
* complete.el (partial-completion-mode): Use minibufferp to avoid
bumping into incompatible change to choose-completion-string-functions.
* ido.el (ido-choose-completion-string): Make its calling convention
more permissive.
* comint.el (comint-dynamic-list-input-ring-select): Remove obsolete
base-size manipulation.
(comint-dynamic-list-input-ring): Use dotimes and push.
* iswitchb.el (iswitchb-completion-help): Remove dead-code call to
fundamental-mode.  Use `or'.
2009-10-15 01:50:17 +00:00
Stefan Monnier
e78e280d7d (ido-everywhere): Use define-minor-mode. 2009-10-14 14:53:36 +00:00
Glenn Morris
9940702bcb Comment. 2009-08-22 21:46:56 +00:00
Kim F. Storm
5b54c385e9 Fix last change. 2009-05-10 21:23:26 +00:00
Kim F. Storm
11c238b380 Add proper support for confirm-nonexistent-file-or-buffer
values `confirm' and `confirm-after-completion'.
(ido-read-internal, ido-buffer-internal, ido-file-internal):
Setup and handle require-match arg according to c-n-f-o-b.
(ido-show-confirm-message): New dynamic variable.
(ido-exit-minibuffer): Request confirmation for non-existing file
or buffer according to confirm-nonexistent-file-or-buffer.
(ido-decorations): Add 11th element for "confirm" message.
(ido-completions): Show confirmation message when requested.
2009-05-10 21:22:00 +00:00
Glenn Morris
ae940284fa Add 2009 to copyright years. 2009-01-05 03:18:22 +00:00
Chong Yidong
7d61c21112 (ido-read-internal): Handle confirm' and confirm-after-completion'
values for the require-match argument.
2008-12-20 10:30:06 +00:00
Lute Kamstra
9201cc281b * align.el:
* allout.el:
* apropos.el:
* arc-mode.el:
* autoinsert.el:
* avoid.el:
* battery.el:
* bookmark.el:
* buff-menu.el:
* calculator.el:
* chistory.el:
* cmuscheme.el:
* comint.el:
* compare-w.el:
* dabbrev.el:
* delim-col.el:
* desktop.el:
* diff-mode.el:
* diff.el:
* dired-aux.el:
* dired-x.el:
* dired.el:
* dos-vars.el:
* ediff-diff.el:
* ediff-help.el:
* ediff-init.el:
* ediff-merg.el:
* ediff-mult.el:
* ediff-ptch.el:
* ediff-vers.el:
* ediff-wind.el:
* ediff.el:
* emerge.el:
* facemenu.el:
* faces.el:
* ffap.el:
* filecache.el:
* find-dired.el:
* font-core.el:
* font-lock.el:
* forms.el:
* fringe.el:
* help-at-pt.el:
* hippie-exp.el:
* ido.el:
* image-file.el:
* imenu.el:
* indent.el:
* info.el:
* isearchb.el:
* iswitchb.el:
* jit-lock.el:
* jka-compr.el:
* log-edit.el:
* lpr.el:
* ls-lisp.el:
* man.el:
* menu-bar.el:
* midnight.el:
* mouse-sel.el:
* mouse.el:
* msb.el:
* outline.el:
* paren.el:
* pcmpl-cvs.el:
* pcmpl-gnu.el:
* pcomplete.el:
* pcvs-info.el:
* pcvs-parse.el:
* printing.el:
* ps-mule.el:
* ps-print.el:
* replace.el:
* ruler-mode.el:
* saveplace.el:
* sb-image.el:
* scroll-bar.el:
* sha1.el:
* shadowfile.el:
* shell.el:
* sort.el:
* speedbar.el:
* strokes.el:
* tempo.el:
* term.el:
* terminal.el:
* time-stamp.el:
* time.el:
* tree-widget.el:
* type-break.el:
* vc-cvs.el:
* vc-hg.el:
* vc-mcvs.el:
* vc-rcs.el:
* vc-sccs.el:
* vc.el:
* view.el:
* w32-vars.el:
* whitespace.el:
* wid-edit.el: Remove leading * from docstrings of defcustoms,
deffaces, defconsts and defuns.
2008-12-03 05:48:14 +00:00
Eli Zaretskii
dee11cd2a6 (ido-save-directory-list-file): Run file names that begin with a period thru
`convert-standard-filename'.
2008-10-19 10:07:39 +00:00
Glenn Morris
7103fd599b (ido-mode): Initialize with custom-initialize-default. (Bug#947). 2008-09-11 06:12:06 +00:00
Juanma Barranquero
4e3e159bdd * ido.el (ido-unload-function): New function. 2008-09-09 14:00:58 +00:00
Juanma Barranquero
79164cf45d * ido.el (ido-file-internal): Fix typo in prompt.
(ido-merge-ftp-work-directories, ido-max-work-file-list): Doc fixes.
  (ido-max-prospects, ido-max-file-prompt-width, ido-ignore-buffers)
  (ido-enable-prefix, ido-setup-hook, ido-rewrite-file-prompt-functions)
  (ido-magic-forward-char, ido-magic-delete-char, ido-pop-dir):
  Fix typos in docstrings.
2008-09-08 14:19:37 +00:00
Kim F. Storm
7d046dbbac (ido-buffer-internal, ido-file-internal): Pass on other-window
and other-frame methods when switching between file and buffer modes.
2008-09-04 10:01:45 +00:00
Chong Yidong
403dae9d06 Move provide statement to the end of the file. 2008-08-31 13:57:48 +00:00
Chong Yidong
7ff90407d0 (ido-mode): Add toggle notification. 2008-08-02 21:50:11 +00:00
Glenn Morris
fffa137cb7 American English spelling fix. 2008-06-27 07:34:53 +00:00
Michael Olson
a22467fed0 edo: do not emit trailing newline 2008-05-17 06:22:22 +00:00
Glenn Morris
eb3fa2cfcf Switch to recommended form of GPLv3 permissions notice. 2008-05-06 08:06:51 +00:00
Kim F. Storm
a9dbdeceb0 (ido-magic-forward-char, ido-magic-backward-char)
(ido-magic-delete-char): Use prefix arg.
2008-02-04 09:57:16 +00:00
Stefan Monnier
3da360a745 * progmodes/ada-xref.el (ada-prj-find-prj-file):
* progmodes/ada-mode.el (comment-region):
* calendar/todo-mode.el (todo-insert-item):
* bookmark.el (bookmark-buffer-name): Test major-mode rather than mode-name.
2008-01-04 06:18:31 +00:00
Glenn Morris
2c52d7a3b2 Remove directory part from filenames in function declarations. 2007-12-06 04:05:51 +00:00
Juanma Barranquero
efccebb574 (ido-save-history): Set the `coding' local
variable in the first line of the file.
2007-12-04 15:48:25 +00:00
Michael Albinus
d9e43b70c6 * ido.el (ido-file-name-all-completions-1): Check for fboundp of
`tramp-completion-mode-p' as it is in Tramp 2.1.  Let-bind
`tramp-completion-mode'.
2007-11-24 15:40:09 +00:00
Dan Nicolaescu
004a00f4ae * progmodes/octave-mod.el (inferior-octave-send-list-and-digest):
* play/yow.el (doctor-ret-or-read):
* vc-hooks.el (vc-dired-resynch-file):
* vc-hg.el (log-view-get-marked):
* smerge-mode.el (ediff-cleanup-mess):
* pcvs.el (vc-editable-p, vc-checkout):
* pcomplete.el (comint-bol):
* informat.el (texinfo-format-refill):
* ido.el (tramp-tramp-file-p):
* ibuffer.el (ibuffer-mark-on-buffer, ibuffer-format-qualifier)
(ibuffer-generate-filter-groups)
(ibuffer-format-filter-group-data):
* add-log.el (c-beginning-of-defun, c-end-of-defun): Declare as
functions.

* ido.el (ido-file-internal): Move with-no-warnings to include the
ffap-string-at-point call.

* pcomplete.el (pcomplete-executables): Move defsubst before first
use.

* vc-hg.el (vc-hg-revision-table): Fix last change.
2007-11-19 08:50:04 +00:00
Juanma Barranquero
d725608c0e (ido-save-history): Save the history file in UTF-8,
not the current filename coding system.
2007-11-10 00:19:44 +00:00
Juanma Barranquero
edcc53d147 (ido-save-history): Write the history file in the current filename
coding system, and add `coding' file-local variable.
2007-11-06 12:25:06 +00:00
Juanma Barranquero
db99576a91 (ido-to-end, ido-set-matches-1): Use mapc' rather than mapcar'. 2007-09-25 11:08:45 +00:00
Glenn Morris
4837b516ea Replace `iff' in doc-strings and comments. 2007-08-08 07:40:09 +00:00
Glenn Morris
b4aa60262c Switch license to GPLv3 or later. 2007-07-25 04:50:21 +00:00
Juanma Barranquero
72a75b41db (ido-find-file-in-dir): Don't signal an error for empty directories. 2007-06-20 15:19:37 +00:00
Kim F. Storm
79ef576382 (ido-kill-buffer-at-head, ido-delete-file-at-head):
Don't use kill-line.
2007-04-22 10:37:08 +00:00
Kim F. Storm
523c54f5a7 (ido-read-internal): When reading file or dir, only override
minibuffer-local-filename-completion-map, otherwise only override
minibuffer-local-completion-map.
2007-03-29 22:33:22 +00:00
Chong Yidong
874985512d (ido-init-completion-maps): Remap delete-backward-char. 2007-03-17 18:04:50 +00:00
Kim F. Storm
16f462c5f9 (ido-buffer-internal): Set this-command to fallback command.
Add selected buffer to buffer-name-history.
(ido-file-internal): Set this-command to fallback command.
Add file names to to file-name-history.
2007-02-25 23:48:54 +00:00
Kim F. Storm
74a5d578f1 Doc fixes. 2007-02-05 22:36:13 +00:00
Juanma Barranquero
ccaa42ede5 (ido-set-common-completion): Use let', not let*'. 2007-01-31 15:31:15 +00:00
Kim F. Storm
155943b98e (ido-initial-position): New variable.
(ido-read-internal): Set it if default item is specified.
(ido-minibuffer-setup): Position cursor accordingly if set.
(ido-edit-input): C-e moves to end of input if not already there.
(ido-magic-backward-char): C-b does like M-b if prev char is /.
Don't switch to buffer mode if repeating C-b at start of input.
(ido-toggle-ignore): C-a only toggles ignore at start or end of
input; else it moves to start of input.
(ido-kill-buffer-at-head, ido-delete-file-at-head): If cursor is
not at end of input, delete rest of input, rather than normal op.
2007-01-24 00:07:34 +00:00
Kim F. Storm
cba9a3a5ee (ido-active): Add xemacs test from ido-minibuffer-setup.
(ido-initiate-auto-merge, ido-exhibit, ido-minibuffer-setup)
(ido-tidy): Use ido-active.
2007-01-22 22:37:25 +00:00
Glenn Morris
d7a0267c8d Add 2007 to copyright years. 2007-01-21 03:53:13 +00:00
Kim F. Storm
3d37467b44 (ido-set-matches-1): Fix last change. If default item is
current buffer, it is ok to be first.
2006-12-27 02:22:36 +00:00
Kim F. Storm
39449da0b4 (ido-set-matches-1): Never put current buffer first if
there are other matches.
2006-12-27 00:26:54 +00:00
Kim F. Storm
1fd1a9f248 (ido-toggle-ignore, ido-completion-help): Print message while
reading big directory.
2006-12-16 01:34:10 +00:00