|
@@ -1,4 +1,4 @@
|
|
|
-# ido-ubiquitous
|
|
|
+# ido-ubiquitous #
|
|
|
|
|
|
[](https://gitter.im/DarwinAwardWinner/ido-ubiquitous?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
|
|
|
@@ -8,7 +8,7 @@ without breaking things.
|
|
|
|
|
|
Get it from MELPA: http://melpa.org/#/ido-ubiquitous
|
|
|
|
|
|
-## Version 3.0 changes
|
|
|
+## Version 3.0 changes ##
|
|
|
|
|
|
ido-ubiquitous version 3.0 is a major update, including a split into
|
|
|
two packages, and some of the configuration options have changed in
|
|
@@ -17,42 +17,42 @@ be sure to check out `M-x customize-group ido-ubiquitous` and `M-x
|
|
|
customize-group ido-completing-read+` after updating to 3.0 and make
|
|
|
sure the new settings are to your liking.
|
|
|
|
|
|
-# How to enable ido in as many places as possible
|
|
|
+# How to enable ido in as many places as possible #
|
|
|
|
|
|
If you are using this package, you probably want to enable ido
|
|
|
everywhere that it is possible to do so. Here are all the places to
|
|
|
enable ido that I'm aware of. (Note that most of these variables can
|
|
|
also be set via `M-x customize-variable` if you prefer that.)
|
|
|
|
|
|
-## Ido itself
|
|
|
+## Ido itself ##
|
|
|
|
|
|
First, enable `ido-mode` and `ido-everywhere`.
|
|
|
|
|
|
(ido-mode 1)
|
|
|
(ido-everywhere 1)
|
|
|
|
|
|
-## ido-ubiquitous (this package)
|
|
|
+## ido-ubiquitous (this package) ##
|
|
|
|
|
|
Install this package and then turn on `ido-ubiquitous-mode`:
|
|
|
|
|
|
(require 'ido-ubiquitous)
|
|
|
(ido-ubiquitous-mode 1)
|
|
|
|
|
|
-## Smex
|
|
|
+## Smex ##
|
|
|
|
|
|
Smex allows you to use ido for completion of commands in M-x, with
|
|
|
enhancements like putting your most-used commands at the front of the
|
|
|
list. First install the [smex](https://github.com/nonsequitur/smex)
|
|
|
package, then follow the directions to set up key-bindings for it.
|
|
|
|
|
|
-## ido-yes-or-no
|
|
|
+## ido-yes-or-no ##
|
|
|
|
|
|
If you want to use ido for yes-or-no questions, even though it's
|
|
|
massive overkill, install the ido-yes-or-no package (soon to be
|
|
|
available from MELPA):
|
|
|
https://github.com/DarwinAwardWinner/ido-yes-or-no
|
|
|
|
|
|
-## ido for `describe-face` and certain other commands
|
|
|
+## ido for `describe-face` and certain other commands ##
|
|
|
|
|
|
Some commands, such as `describe-face`, use `completing-read-multiple`
|
|
|
instead of `completing-read`. You can get ido completion for these
|
|
@@ -72,7 +72,7 @@ empty input, which terminates the completion. (Due to this quirk, I do
|
|
|
not find this mode to be very useful in conjunction with ido, but it
|
|
|
does work.)
|
|
|
|
|
|
-## Packages with built-in ido support
|
|
|
+## Packages with built-in ido support ##
|
|
|
|
|
|
Finally, some packages implement their own completion customizations,
|
|
|
and ido-ubiquitous specifically avoids interfering with these, so you
|
|
@@ -85,7 +85,7 @@ need to enable them separately.
|
|
|
(You can also use `M-x customize-variable` to set all of these
|
|
|
options.)
|
|
|
|
|
|
-## "But some commands still aren't using ido! What gives?"
|
|
|
+## "But some commands still aren't using ido! What gives?" ##
|
|
|
|
|
|
There are some features of `completing-read` that ido cannot handle,
|
|
|
and by default ido-ubiquitous tries to get out of the way whenever it
|
|
@@ -100,7 +100,7 @@ commands are safe for ido completion, or you can customize
|
|
|
ido in ambiguous cases. Be aware, this could cause certain commands
|
|
|
not to work correctly or at all.
|
|
|
|
|
|
-# How ido-ubiquitous decides when to replace `completing-read`
|
|
|
+# How ido-ubiquitous decides when to replace `completing-read` #
|
|
|
|
|
|
Emacs' `completing-read` is a complex function with many advanced
|
|
|
features and some quirks that are only maintained for backwards
|
|
@@ -123,7 +123,7 @@ old-style default selection; and
|
|
|
The following describes how ido-ubiquitous selects the appropriate
|
|
|
mode, and what to do when you think it is making the wrong choice.
|
|
|
|
|
|
-## When the collection is a function
|
|
|
+## When the collection is a function ##
|
|
|
|
|
|
One feature of `completing-read` is that the collection argument can
|
|
|
be a function. This function could simply return a list of all
|
|
@@ -143,14 +143,14 @@ If you run across a command that unexpectedly uses normal Emacs
|
|
|
completion instead of ido completion, it's likely that either this or
|
|
|
the following option is to blame.
|
|
|
|
|
|
-## When the collection is very large
|
|
|
+## When the collection is very large ##
|
|
|
|
|
|
Ido can get slow on very large collections, so by default
|
|
|
ido-ubiquitous disables itself for collections with more than 30,000
|
|
|
items in them. You can change this threshold by customizing
|
|
|
`ido-cr+-max-items`.
|
|
|
|
|
|
-## Old-style default selection
|
|
|
+## Old-style default selection ##
|
|
|
|
|
|
The `enable-old` mode of operation is required because the old way for
|
|
|
`completing-read` to indicate that the user simply pressed RET and
|
|
@@ -176,7 +176,7 @@ for that command. Luckily, since this is an obsolete usage pattern, it
|
|
|
is unlikely that any Elisp functions written since 1990 or so will
|
|
|
need to be added to this list.
|
|
|
|
|
|
-## "A command is not working the way I expect it to! What should I do?"
|
|
|
+## "A command is not working the way I expect it to! What should I do?" ##
|
|
|
|
|
|
First, invoke the `ido-ubiquitous-debug-mode` and `ido-cr+-debug-mode`
|
|
|
commands (ido-cr+ is a lower-level package underlying ido-ubiquitous
|