is a completion method that’s similar to
, but with emphasis on simplicity and customizability.
The current release constitutes of 280 commits and 8 months of progress since
. Many issues ranging from #952
were fixed. The number of people who contributed code as grown to 91
; thanks, everyone!
Details on changes
has been a part of the repository since
, you can get the details of the current and past changes:
- in org-mode
Many improvements are incremental and don’t require any extra code to enable. I’ll go over a few selected features that require a bit of information to make a good use of them.
Off by default. You can turn it on like so:
(setq ivy-use-selectable-prompt t)
After this, your current input becomes selectable as a candidate. Press C-p
when you’re on the first candidate to select your input instead.
This solves the long standing issue of e.g. creating a file or a directory
when a file
already exists. Previously, the only solution was to use C-M-j
. It’s still available, but now you can also select your input with C-p
and press RET
New global actions for ivy
was used to enable the following bindings:
- Press M-o w
to copy the current candidate to the kill ring.
- Press M-o i
to insert the current candidate into the buffer.
These bindings are valid for any completion session by default.
in ivy-occur buffers
Here’s an example use-case: search your source code for a variable name with e.g.
( C-c C-o
). Suppose you get 10 results, only 4 of which are interesting. You can now delete the uninteresting ones with C-d
. Then maybe check off the others with C-d
as well as you complete them one by one. A sort of a TODO list.
Similarly, if you want to go over variables to customize, you can call
and then check off the ones you have already examined with C-d
Defcustoms to play with
Here’s the list of new
that might be interesting to review:
14 new commands were added by me and many contributors. Here’s the list:
– completion for ack
– completion for apropos
– completion for file registers
– completion for fzf
– completion for git-worktree
– completion for git-checkout
– generalization of
– completion for org-capture
– browse all attachments for the current Org file
– completion for Org headings
– completion for Org headings in all open buffers
– switch to a shell buffer, or create one
– delete current candidate in
– select awindow configuration, decoupled from
My personal favorites are
Again, thanks to all the contributors. Happy hacking!
P.S. Please consider joining my 74 patrons
to give me the opportunity to work on Free Software a lot more. We are currently at 30% of the goal.