[readme] unfill lines, add todo remarks

This commit is contained in:
contrapunctus 2021-02-16 22:11:45 +05:30
parent 4033724ea8
commit 7c1d60e139
1 changed files with 14 additions and 29 deletions

View File

@ -8,24 +8,19 @@ Ido's -
meets helm-mini's - meets helm-mini's -
- informatively-colored candidates list - informatively-colored candidates list
- convenience of a single command to switch to buffers, open recentf - convenience of a single command to switch to buffers, open recentf files, and create new buffers.
files, and create new buffers.
Plus, some improvements of its own - Plus, some improvements of its own -
1. If a recentf entry is already visited by a buffer, put the entry at 1. If a recentf entry is already visited by a buffer, put the entry at the end of the (recentf?) candidates list.
the end of the (recentf?) candidates list. 2. (planned) tweak `ido-mini-use-paths` to search and display not just buffer names but also their file paths, wherever applicable.
2. (planned) tweak `ido-mini-use-paths` to search and display not just 3. (planned) show documentation of functions from smex, akin to C-j in helm-M-x
buffer names but also their file paths, wherever applicable.
3. (planned) show documentation of functions from smex, akin to C-j in
helm-M-x
## Installation ## Installation
`ido-mini` requires [dash.el](https://github.com/magnars/dash.el) and `ido`. `ido-mini` requires [dash.el](https://github.com/magnars/dash.el) and `ido`.
`ido-vertical-mode` can be used to view candidates vertically. `ido-vertical-mode` can be used to view candidates vertically.
`ido-mini` uses Emacs' built-in `recentf-mode` for recent files. If `ido-mini` uses Emacs' built-in `recentf-mode` for recent files. If not, simply add `(recentf-mode)` to your init.
not, simply add `(recentf-mode)` to your init.
## Customization ## Customization
### Keys ### Keys
@ -41,13 +36,9 @@ For fuzzy matching, install the flex-ido package. It's not always useful, so you
and bind it to a key. and bind it to a key.
### ido-mini behaviour ### ido-mini behaviour
ido-mini tries to let the user modify core behaviour without ido-mini tries to let the user modify core behaviour without redefining entire functions. This is done by providing variables which hold lists of functions (like typical Emacs hooks).
redefining entire functions. This is done by providing variables which
hold lists of functions (like typical Emacs hooks).
The functions are run in sequence, and each accepting the output of The functions are run in sequence, and each accepting the output of the previous. Changing the functions in the list or even the order of the functions will change behaviour.
the previous. Changing the functions in the list or even the order of
the functions will change behaviour.
Currently, there are two such variables - Currently, there are two such variables -
`ido-mini-buffer-list-functions` and `ido-mini-buffer-list-functions` and
@ -60,25 +51,19 @@ flx-ido and recent versions of ido override ido-mini's candidate coloring. As of
## TODO ## TODO
1. When called twice in succession, quit ido-mini 1. When called twice in succession, quit ido-mini
2. color the matched substring in the candidates? 2. color the matched substring in the candidates?
3. store only search terms in input history, not the selected buffer * already a thing if you're using ivy
names/file paths 3. [ ] store only search terms in input history, not the selected buffer names/file paths
4. Mimic exact C-j (`ido-select-text`) and RET behaviour 4. Mimic exact C-j (`ido-select-text`) and RET behaviour (`ido-exit-minibuffer`)
(`ido-exit-minibuffer`) 5. What if we search for files (perhaps only in user-specified directories, when provided) when there are no matches in the buffer list as well as in recentf?
5. What if we search for files (perhaps only in user-specified
directories, when provided) when there are no matches in the buffer
list as well as in recentf?
6. Add animated 6. Add animated
7. Add indicator if flx-ido-mode is enabled 7. Add indicator if flx-ido-mode is enabled
8. Add tests 8. Add tests
9. Don't fail if recentf-list is nil 9. Don't fail if recentf-list is nil
10. Create user-redefinable function to return final list of 10. Create user-redefinable function to return final list of candidates.
candidates.
- Why not modularize candidate sources themselves? That way, users can customize _what_ the candidates are as well as _how_ they're prioritized. (...doesn't that effectively make this helm, then?) - Why not modularize candidate sources themselves? That way, users can customize _what_ the candidates are as well as _how_ they're prioritized. (...doesn't that effectively make this helm, then?)
- Maybe a macro to define a candidate source, automatically defining the filter function variable for it. - Maybe a macro to define a candidate source, automatically defining the filter function variable for it.
11. Create global variable to store prompt function 11. Create global variable to store prompt function (ido-completing-read) and to permit users to change it.
(ido-completing-read) and to permit users to change it. 12. I'm often opening certain folders. It'd be nice if ido-mini allowed me to recall them quickly, too.
12. I'm often opening certain folders. It'd be nice if ido-mini
allowed me to recall them quickly, too.
## Contributions and contact ## Contributions and contact
Feedback and MRs very welcome. 🙂 Feedback and MRs very welcome. 🙂