#+TITLE: Ivy CHANGELOG #+OPTIONS: H:4 num:nil toc:3 #+SETUPFILE: ~/git/Emacs/org-html-themes/setup/theme-readtheorg.setup #+HTML_HEAD: * 0.6.0 :PROPERTIES: :CUSTOM_ID: 0.6.0 :END: ----- ** Fixes :PROPERTIES: :CUSTOM_ID: 0-6-0-fixes :END: *** =swiper-avy= should use only the current window :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-swiper-avy-should-use-only-the-current-window :END: Not all windows. See [[https://github.com/abo-abo/swiper/issues/117][#117]]. ----- *** fix wrap-around for =ivy-next-line= :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-fix-wrap-around-for-ivy-next-line :END: See [[https://github.com/abo-abo/swiper/issues/118][#118]]. ----- *** =swiper-avy= should do nothing for empty input :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-swiper-avy-should-do-nothing-for-empty-input :END: See [[https://github.com/abo-abo/avy/issues/50][#50]]. ----- *** =ivy-alt-done= should require TRAMP if necessary :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-ivy-alt-done-should-require-tramp-if-necessary :END: See [[https://github.com/abo-abo/swiper/pull/145][#145]]. ----- *** =swiper-query-replace= shouldn't miss the first occurrence :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-swiper-query-replace-shouldnt-miss-the-first-occurrence :END: See [[https://github.com/abo-abo/swiper/pull/144][#144]]. ----- *** =swiper= should not deactivate mark :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-swiper-should-not-deactivate-mark :END: *** =ivy-mode= should not switch to TRAMP for certain input :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-ivy-mode-should-not-switch-to-tramp-for-certain-input :END: See [[https://github.com/abo-abo/swiper/pull/145][#145]]. ----- *** =counsel-find-file= should work better with TRAMP :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-counsel-find-file-should-work-better-with-tramp :END: "/ssh:foo" should not be cut off See [[https://github.com/abo-abo/swiper/pull/145][#145]]. ----- *** =counsel-find-file= supports Windows drive letters :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-counsel-find-file-supports-windows-drive-letters :END: See [[https://github.com/abo-abo/swiper/pull/155][#155]]. ----- *** =counsel-file-file= should work better with files that contain "~" :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-counsel-file-file-should-work-better-with-files-that-contain- :END: See [[https://github.com/abo-abo/swiper/pull/157][#157]]. ----- *** =counsel-M-x= should respect =ivy-format-function= :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-counsel-m-x-should-respect-ivy-format-function :END: See [[https://github.com/abo-abo/swiper/pull/150][#150]]. ----- *** =counsel-git-grep= should position better on exit :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-counsel-git-grep-should-position-better-on-exit :END: See [[https://github.com/abo-abo/swiper/pull/153][#153]]. ----- *** =ivy-mode= should re-scale text to minibuffer height :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-ivy-mode-should-re-scale-text-to-minibuffer-height :END: See [[https://github.com/abo-abo/swiper/pull/151][#151]]. ----- *** =counsel-unicode-char= should use action-style call :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-counsel-unicode-char-should-use-action-style-call :END: See [[https://github.com/abo-abo/swiper/pull/160][#160]]. ----- *** =ivy-read= should allow % in prompt string :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-ivy-read-should-allow--in-prompt-string :END: See [[https://github.com/abo-abo/swiper/pull/171][#171]]. ----- *** =ivy-call= should execute in proper window :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-ivy-call-should-execute-in-proper-window :END: See [[https://github.com/abo-abo/swiper/pull/176][#176]]. ** New Features :PROPERTIES: :CUSTOM_ID: 0-6-0-fx-new-features :END: *** =ivy-mode= :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-ivy-mode :END: **** Open an Info file on the file system When in =Info-mode=, press ~g~ and select either "(./)" or "(../)" to switch to file name completion. That file will be opened with Info. ----- **** Account for =minibuffer-depth-indication-mode= If you have =minibuffer-depth-indication-mode= on, the minibuffer prompt will indicate the current depth. See [[https://github.com/abo-abo/swiper/pull/134][#134]]. ----- **** Add fuzzy matching function To enable fuzzy matching, set your =ivy-re-builders-alist= accordingly: #+begin_src elisp (setq ivy-re-builders-alist '((t . ivy--regex-fuzzy))) #+end_src See [[https://github.com/abo-abo/swiper/pull/136][#136]]. See also [[https://github.com/abo-abo/swiper/pull/142][#142]] for toggling fuzzy matching with ~C-o m~. ----- **** =case-fold-search= optimization Bind case-fold-search to t when the input is all lower-case: - input "the" matches both "the" and "The". - input "The" matches only "The". See [[https://github.com/abo-abo/swiper/pull/166][#166]]. ----- **** Allow to see the candidate index a la =anzu= via =ivy-count-format= To have this feature, use something like this: #+begin_src elisp (setq ivy-count-format "(%d/%d) ") #+end_src See [[https://github.com/abo-abo/swiper/pull/167][#167]]. You can also set this to "", if you don't want any count, see [[https://github.com/abo-abo/swiper/pull/188][#188]]. ----- **** Allow to add additional exit points for any command Example for =ivy-switch-to-buffer=: #+begin_src elisp (ivy-set-actions 'ivy-switch-buffer '(("k" (lambda (x) (kill-buffer x) (ivy--reset-state ivy-last)) "kill") ("j" ivy--switch-buffer-other-window-action "other"))) #+end_src After this: - use ~M-o k~ to kill a buffer - use ~M-o j~ to switch to a buffer in other window You can always use ~M-o o~ to access the default action. When there is only one action, ~M-o~ does the same as ~C-m~. See [[https://github.com/abo-abo/swiper/pull/164][#164]]. ----- *** =counsel-describe-function= and =counsel-decribe-variable= :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-counsel-describe-function-and-counsel-decribe-variable :END: **** Add a binding to look up the symbol in info Press ~C-,~ to look up the symbol in info, instead of the default describe action. See [[https://github.com/abo-abo/swiper/pull/121][#121]]. ----- **** Handle symbol-at-point better in non-Elisp buffers See [[https://github.com/abo-abo/swiper/pull/126][#126]]. ----- *** =ivy-switch-buffer= :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-ivy-switch-buffer :END: **** New face =ivy-virtual= See [[https://github.com/abo-abo/swiper/pull/129][#129]]. ----- **** Deal better with invisible buffers See [[https://github.com/abo-abo/swiper/pull/135][#135]]. ----- **** Add custom keymap You can customize =ivy-switch-buffer-map=. See [[https://github.com/abo-abo/swiper/pull/164][#164]]. ----- **** Add extra actions Add a =kill-buffer= action, and =switch-to-buffer-other-window= action. ----- *** =counsel-git-grep= :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-counsel-git-grep :END: **** Add Async Make it fully async: the process =git grep= will be killed and restarted on new input. This results in almost no keyboard delay. ----- **** Own history variable *** =swiper= :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-swiper :END: **** Own history variable Having own history variable allows to get more use of ~M-p~, ~M-n~ and ~C-r~. ----- *** =counsel-el= :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-counsel-el :END: **** Switch to action-style call This allows to make use of ~C-M-n~ and ~C-M-p~. ----- *** =counsel-locate= :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-counsel-locate :END: **** Add Async **** Add extra actions In addition to the default action of opening a file add: - =xdg-open= action - =dired= action Press ~M-o~ or ~C-o~ to access these actions. ----- **** Add own history ----- *** API :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-api :END: **** Add :matcher A matcher is a function that accepts a regexp and a list of candidates and returns the filtered list of candidates. The default matcher is basically =cl-remove-if-not= + =string-match=. If you'd like to customize this, pass your own matcher. See =counsel-git-grep-matcher= for an example. ----- **** Allow to customize the initial input for all commands Customize =ivy-initial-inputs-alist= for this. See [[https://github.com/abo-abo/swiper/pull/140][#140]]. ----- **** =ivy-sort-functions-alist= should also examine =this-command= **** :dynamic-collection is now a boolean Pass the collection function as the second var instead. ** New Commands :PROPERTIES: :CUSTOM_ID: 0-6-0-nf-new-commands :END: *** =ivy-call= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-ivy-call :END: Execute the current action for the current candidate without exiting the minibuffer. Bound to ~C-M-m~ or ~M-RET~ or ~C-o g~. ----- *** =counsel-find-file= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-counsel-find-file :END: Forward to =find-file= with Ivy completion. =ivy-next-line-and-call= as well as =ivy-resume= should work for this command. The variable =counsel-find-file-ignore-regexp= allows to ignore certain files, like dot files. Input a leading dot to see all files. The variable =counsel-find-file-at-point= allows to automatically use =ffap=. You also can do it manually with ~M-n~ when the point is on a file name. The variable =counsel-find-file-map= allows to customize the minibuffer key bindings for this command. Recommended binding: #+begin_src elisp (global-set-key (kbd "C-x C-f") 'counsel-find-file) #+end_src You can peek at files with ~C-M-n~ and ~C-M-p~. See [[https://github.com/abo-abo/swiper/issues/122][#122]] and [[https://github.com/abo-abo/swiper/issues/123][#123]]. See [[https://github.com/abo-abo/swiper/pull/152][#152]] about ~M-n~, ~M-p~ and ~M-i~ switching directories when necessary. ----- *** =ivy-recentf= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-ivy-recentf :END: Find a file on =recentf-list=. Note that if your set =ivy-use-virtual-buffers=, =recentf-list= is merged into candidates list for =ivy-switch-buffer=. But if you want it separately, you can use this command. See [[https://github.com/abo-abo/swiper/issues/124][#124]]. ----- *** =ivy-yank-word= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-ivy-yank-word :END: Add word at point to minibuffer input. This is similar to what ~C-w~ does for =isearch=. However it's bound to ~M-j~ instead of ~C-w~, since ~C-w~ is bound to =kill-region= - a useful command. See [[https://github.com/abo-abo/swiper/issues/125][#125]]. ----- *** =counsel-M-x= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-counsel-m-x :END: Forward to =execute-extended-command= with Ivy completion. The candidate list will also display the key binding for each bound command. This command will piggyback on =smex= for sorting, if =smex= is installed. Use =counsel-M-x-initial-input= to customize the initial input for this command. By default, it's "^" - the regex character that indicates beginning of string. This results in much faster matching, since you usually type the command name from the start. See [[https://github.com/abo-abo/swiper/pull/136][#136]] and [[https://github.com/abo-abo/swiper/pull/138][#138]]. ----- *** =hydra-ivy= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-hydra-ivy :END: Press ~C-o~ to toggle the Hydra for Ivy. It gives access to shorter bindings and many customizable options. Use ~C-o >~ to grow the minibuffer. Use ~C-o <~ to shrink the minibuffer. See [[https://github.com/abo-abo/swiper/pull/151][#151]]. ----- *** =ivy-toggle-calling= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-ivy-toggle-calling :END: Toggle executing the current action each time a new candidate is selected. This command is bound to ~C-o c~. To explain how this is useful: ~C-M-m C-M-f C-M-f C-M-f~ is equivalent to ~C-o cjjj~. ----- *** =ivy-insert-current= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-ivy-insert-current :END: Inserts the current candidate into the minibuffer. Press ~M-i~ if you want something close to the current candidate. You can follow up with an edit and select. I find this very useful when creating new files with a similar name to the existing file: ~C-x C-f M-i~ + a bit of editing is very fast. See [[https://github.com/abo-abo/swiper/pull/141][#141]]. ----- *** =counsel-load-theme= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-counsel-load-theme :END: Forward to =load-theme= with Ivy completion. Allows to rapidly try themes (e.g. with ~C-M-n~). ----- *** =ivy-reverse-i-search= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-ivy-reverse-i-search :END: Allow to recursively match history with ~C-r~. I like this command from bash shell. The usual way to search through history is with ~M-p~ and ~M-n~. Using =ivy-reverse-i-search= will open a recursive completion session with the current history as the candidates. ----- *** =counsel-rhythmbox= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-counsel-rhythmbox :END: [[https://oremacs.com/2015/07/09/counsel-rhythmbox/][Control Rhythmbox from Emacs.]] ----- *** =ivy-dispatching-done= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-ivy-dispatching-done :END: Select an action for the current candidate and execute it. Bound to ~M-o~. Some commands that support ~M-o~: - =counsel-rhythmbox= - =counsel-describe-function= - =counsel-describe-variable= - =ivy-switch-buffer= - =counsel-locate= ----- *** =counsel-org-tag= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-counsel-org-tag :END: Forward to =org-set-tags= with Ivy completion. Selecting any tag each time will toggle it on/off. The current list of selected tags will be displayed in the prompt. See [[https://github.com/abo-abo/swiper/pull/177][#177]] and [[https://github.com/abo-abo/swiper/pull/91][#91]]. ----- *** =counsel-org-tag-agenda= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-counsel-org-tag-agenda :END: Forward to =org-agenda-set-tags= with Ivy completion. See [[https://github.com/abo-abo/swiper/pull/177][#177]]. ----- *** =counsel-ag= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-counsel-ag :END: Interactively =ag= using Ivy completion. ----- *** =counsel-recoll= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-counsel-recoll :END: Use =recoll= with Ivy completion. See [[https://oremacs.com/2015/07/27/counsel-recoll/][Using Recoll desktop search database with Emacs]]. Install recoll with =sudo apt-get install recoll=. ----- *** =swiper-from-isearch= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-swiper-from-isearch :END: Start =swiper= from the current =isearch= input. ----- *** =ivy-immediate-done= :PROPERTIES: :CUSTOM_ID: 0-6-0-nc-ivy-immediate-done :END: Use this command to exit the minibuffer choosing not the current candidate, but the current text. Bound to ~C-M-j~ or ~C-u C-j~. See [[https://github.com/abo-abo/swiper/pull/183][#183]]. ----- * 0.7.0 :PROPERTIES: :CUSTOM_ID: 0.7.0 :END: ----- ** Fixes :PROPERTIES: :CUSTOM_ID: 0-7-0-fixes :END: *** Fix :dynamic-collection not being sorted :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-fix-dynamic-collection-not-being-sorted :END: *** When :initial-input contains a plus, escape it :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-when-initial-input-contains-a-plus,-escape-it :END: See [[https://github.com/abo-abo/swiper/issues/195][#195]]. ----- *** Set line-spacing to 0 in the minibuffer :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-set-line-spacing-to-0-in-the-minibuffer :END: See [[https://github.com/abo-abo/swiper/issues/198][#198]]. ----- *** Enlarge the minibuffer window if the candidate list doesn't fit :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-enlarge-the-minibuffer-window-if-the-candidate-list-doesnt-fit :END: See [[https://github.com/abo-abo/swiper/issues/198][#198]] and [[https://github.com/abo-abo/swiper/issues/161][#161]] and [[https://github.com/abo-abo/swiper/issues/220][#220]]. ----- *** Fix minibuffer collapsing to one line :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-fix-minibuffer-collapsing-to-one-line :END: See [[https://github.com/abo-abo/swiper/issues/237][#237]], [[https://github.com/abo-abo/swiper/issues/229][#229]] and [[https://github.com/abo-abo/swiper/issues/77][#77]]. ----- *** Use minibuffer-allow-text-properties :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-use-minibuffer-allow-text-properties :END: Allows =ivy-read= to return a propertized string. ----- *** Improve ~C-g~ out of a long-running async process :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-improve-c-g-out-of-a-long-running-async-process :END: Use =counsel-delete-process= as =:unwind=. ----- *** Don't regexp-quote :preselect :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-dont-regexp-quote-preselect :END: See [[https://github.com/abo-abo/swiper/issues/245][#245]]. ----- *** Fix ivy-partial for fuzzy completion :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-fix-ivy-partial-for-fuzzy-completion :END: See [[https://github.com/abo-abo/swiper/issues/266][#266]]. ----- *** ivy-resume should pass :caller :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-ivy-resume-should-pass-caller :END: See [[https://github.com/abo-abo/swiper/issues/245][#245]]. ----- *** Fix the regression in perfect match logic :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-fix-the-regression-in-perfect-match-logic :END: See [[https://github.com/abo-abo/swiper/issues/270][#270]]. ----- *** Fix pasting file paths on Windows :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-fix-pasting-file-paths-on-windows :END: *** ~C-j~ should no stop completion for a pasted file path :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-c-j-should-no-stop-completion-for-a-pasted-file-path :END: *** ~C-M-j~ should use =ivy--directory= :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-c-m-j-should-use-ivy--directory :END: When completing file names, expand the file name properly. See [[https://github.com/abo-abo/swiper/issues/275][#275]]. ----- *** Use a specific blend method for dark themes :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-use-a-specific-blend-method-for-dark-themes :END: See [[https://github.com/abo-abo/swiper/issues/278][#278]]. ----- *** Fix one-off bug in =ivy-scroll-up-command= and =ivy-scroll-down-command= :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-fix-one-off-bug-in-ivy-scroll-up-command-and-ivy-scroll-down-command :END: *** ~M-o~ shouldn't set the action permanently :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-m-o-shouldnt-set-the-action-permanently :END: So now it's possible to e.g. =counsel-describe-function= -> ~M-o d~ -> =ivy-resume= -> ~M-o o~ -> =ivy-resume= -> ~M-o i~. ----- *** Fix swiper preselect issue with similar or identical lines :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-fix-swiper-preselect-issue-with-similar-or-identical-lines :END: See [[https://github.com/abo-abo/swiper/issues/290][#290]]. ----- *** Make ivy-completing-read handle history as cons :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-make-ivy-completing-read-handle-history-as-cons :END: See [[https://github.com/abo-abo/swiper/issues/295][#295]]. ----- *** Perform string-match in the original buffer :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-perform-string-match-in-the-original-buffer :END: The syntax for whitespace, separators etc. is different for modes. See [[https://github.com/abo-abo/swiper/issues/298][#298]]. ** New Features :PROPERTIES: :CUSTOM_ID: 0-7-0-fx-new-features :END: *** =swiper= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-swiper :END: **** Make line numbers into display properties Each candidate is now a single space plus the original string. The display property of the single space holds the line number. This means that it's no longer possible to match line numbers in queries, which is a good thing if you're searching for numbers. ----- **** Extend =swiper-font-lock-ensure= Add =mu4e-view-mode=, =mu4e-headers-mode=, =help-mode=, =elfeed-show-mode=, =emms-stream-mode=, =debbugs-gnu-mode=, =occur-mode=, =occur-edit-mode=, =bongo-mode=, =eww-mode=, =vc-dir-mode=. ----- **** Add support for =evil-jumper/backward= See [[https://github.com/abo-abo/swiper/issues/268][#268]]. ----- **** Make compatible with =visual-line-mode= =swiper= will split the lines when =visual-line-mode= is on. This is convenient for small buffers. For large buffers, it can be very slow, since =visual-line-mode= is slow. See [[https://github.com/abo-abo/swiper/issues/227][#227]]. ----- **** Add =swiper-toggle-face-matching= Bound to ~C-c C-f~. At each start of =swiper=, the face at point will be stored. Use this command to toggle matching only the candidates with that face. See [[https://github.com/abo-abo/swiper/issues/288][#288]]. ----- **** =push-mark= only if exited the minibuffer ~C-M-n~ and ~C-M-p~ will no longer push mark and annoy with messages. ----- **** =ivy-resume= should restore the buffer for =swiper= See [[https://github.com/abo-abo/swiper/issues/302][#302]]. ----- **** Enable recursive =swiper= calls While you =swiper= buffer-1, you can switch out of the minibuffer into buffer-2 and call =swiper= again. Exiting the second minibuffer will restore the first minibuffer. To use this, you need to enable recursive minibuffers. #+begin_src elisp (setq enable-recursive-minibuffers t) #+end_src It's also useful to indicate the current depth: #+begin_src elisp (minibuffer-depth-indicate-mode 1) #+end_src See [[https://github.com/abo-abo/swiper/issues/309][#309]]. ----- **** Fix for =twittering-mode= The =field= text property is now removed before inserting text into the minibuffer. This fixes the =swiper= problems with =twittering-mode=. See [[https://github.com/abo-abo/swiper/issues/310][#310]]. ----- *** =ivy= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-ivy :END: **** Add manual In the current state, the manual covers the most basic topics, like the minibuffer key bindings and the regexp builders. ----- **** Make and behave as in fundamental-mode **** Truncate minibuffer prompts longer than window-width See [[https://github.com/abo-abo/swiper/issues/240][#240]]. ----- **** ~C-M-n~ should not leave the minibuffer Make sure that the minibuffer window remains selected as long as the completion hasn't finished. For example, ~ f~ to call =counsel-describe-function=, input "forward" and spam ~C-M-n~ to read the doc for each function that starts with "forward". The =*Help*= window popup would move the window focus, but this change moves it back to the minibuffer. ----- **** Add =flx= sorting See [[https://github.com/abo-abo/swiper/issues/207][#207]]. Since flx is costly, move the caching to an earlier point. This means immediate return for when the input hasn't changed, i.e. for ~C-n~ or ~C-p~. When =flx= is installed, and =(eq ivy--regex-function 'ivy--regex-fuzzy)= for current function (through =ivy-re-builders-alist=), then sort the final candidates with =ivy--flx-sort=. In the worst case, when some error pops up, return the same list. In the best case sort the =cands= that all match =name= by closeness to =name=. How to use: 1. Have =flx= installed - =(require 'flx)= should succeed. 2. Configure =ivy-re-builders-alist= appropriately to use =ivy--regex-fuzzy=. For example: #+begin_src elisp (setq ivy-re-builders-alist '((t . ivy--regex-fuzzy))) #+end_src ----- **** Support hash tables Since =all-completions= also works for hash tables, no reason not to support them. ----- **** Improve documentation of =ivy-count-format= Now possible to set it with Customize. ----- **** Add =ivy-index-functions-alist= Customize this to decide how the index, i.e. the currently selected candidate, is updated with new input. For example, one strategy is not reset it to 0 after each change. Another strategy, used for =swiper=, is to try to select the first appropriate candidate after (inclusive) the first previously selected candidate. This way, if you're typing something that matches what is currently selected, the selection won't change. See [[https://github.com/abo-abo/swiper/issues/253][#253]]. ----- **** Add =ivy-virtual-abbreviate= The mode of abbreviation for virtual buffer names. ----- **** Add =ivy-case-fold-search= Used to override =case-fold-search=. See [[https://github.com/abo-abo/swiper/issues/259][#259]]. ----- **** Add feedback for long-running async processes Each time 0.5s pass after the last input, if the external process hasn't finished yet, update minibuffer with the amount of candidates collected so far. This is useful to see that long running commands like =counsel-locate= or =counsel-ag= (when in a very large directory) aren't stuck. ----- **** Promote =ivy-extra-directories= to defcustom **** Promote =ivy-sort-function-alist= to defcustom **** ~M-n~ should prefer url at point to symbol at point **** ~C-x C-f M-n~ calls =ffap-url-fetcher= when at URL **** Highlight modified file buffers with =ivy-modified-buffer= face This new face is blank by default, but you can use e.g.: #+begin_src elisp (custom-set-faces '(ivy-modified-buffer ((t (:background "#ff7777"))))) #+end_src ----- **** Work with =enable-recursive-minibuffers= Store the old =ivy-last= in case =ivy-read= is called while inside the minibuffer. Restore it after =ivy-call=. ----- **** Allow user-specified matched candidate sorting New defcustom =ivy-sort-matches-functions-alist=. See [[https://github.com/abo-abo/swiper/issues/269][#269]] [[https://github.com/abo-abo/swiper/issues/265][#265]] [[https://github.com/abo-abo/swiper/issues/213][#213]]. By default, Ivy doesn't sort the matched candidates, they remain in the same order as in the original collection. This option is the default, since it's fast and simple. A small problem with this approach is that we usually want prefix matches to be displayed first. One solution to this is to input "^" to see only the prefix matches. Now, another solution is to can set: #+begin_src elisp (setq ivy-sort-matches-functions-alist '((t . ivy--prefix-sort))) #+end_src Here's another example of using this defcustom: #+begin_src elisp (add-to-list 'ivy-sort-matches-functions-alist '(read-file-name-internal . ivy--sort-files-by-date)) #+end_src After this, during file name completion, most recently changed files will be ahead. ----- **** =ivy-display-style= Adds fancy highlighting to the minibuffer. See [[https://github.com/abo-abo/swiper/issues/212][#212]], [[https://github.com/abo-abo/swiper/issues/217][#217]], . ----- *** =ivy-hydra= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-ivy-hydra :END: **** Bind ~t~ to =toggle-truncate-lines= See [[https://github.com/abo-abo/swiper/issues/214][#214]]. ----- **** Bind ~a~ to =ivy-read-action= *** =ivy-switch-buffer= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-ivy-switch-buffer :END: **** Make ~M-o r~ rename the buffer instead of switching. See [[https://github.com/abo-abo/swiper/issues/233][#233]]. ----- *** =counsel-locate= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-counsel-locate :END: **** Allow customizing locate options See =counsel-locate-options=. The current setting is: #+begin_src elisp (setq counsel-locate-options '("-i" "--regex")) #+end_src ----- **** Support OSX Use =open= instead of =xdg-open=. Modify =counsel-locate-options= for OSX, since there =locate= doesn't support =--regex=. ----- **** Use single quotes for the regex See [[https://github.com/abo-abo/swiper/issues/194][#194]]. ----- **** Add initial-input argument See [[https://github.com/abo-abo/swiper/issues/289][#289]]. ----- *** =counsel-org-tag= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-counsel-org-tag :END: **** Now works in agenda See [[https://github.com/abo-abo/swiper/issues/200][#200]]. ----- *** =counsel-unicode-char= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-counsel-unicode-char :END: **** Add own history *** =counsel-M-x= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-counsel-m-x :END: **** Add "definition" action Use ~M-o d~ to jump to definition. ----- **** Show =current-prefix-arg= in the prompt See [[https://github.com/abo-abo/swiper/issues/287][#287]]. ----- *** =counsel-find-file= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-counsel-find-file :END: **** Input '/sudo::' goes to current directory instead of root's home See [[https://github.com/abo-abo/swiper/issues/283][#283]]. ----- **** Fix directory validity check See [[https://github.com/abo-abo/swiper/issues/283][#283]] [[https://github.com/abo-abo/swiper/issues/284][#284]]. ----- **** Improve TRAMP support Selecting items after ~//~ now works properly. ----- *** =counsel-git-grep= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-counsel-git-grep :END: **** Use prefix arg to specify the shell command. Remember to use ~M-i~ to insert the current candidate into the minibuffer. See [[https://github.com/abo-abo/swiper/issues/244][#244]]. ----- **** Allow =counsel-git-grep= -> =ivy-occur= -> =wgrep= Using ~C-c C-o~ (=ivy-occur=) while in =counsel-git-grep= will produce a =wgrep=-compatible buffer. ----- **** =ivy-occur= gives full candidates This means that the =" | head -n 200"= speed-up isn't used and full candidates are returned. ----- *** =counsel--find-symbol= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-counsel--find-symbol :END: **** Allow to jump back with pop-tag-mark Using ~C-.~ in: - =counsel-describe-function= - =counsel-describe-variable= - =counsel-load-library= will change the current buffer. The buffer and point can be restored with ~M-*~ (=pop-tag-mark=). I also recommend this binding: #+begin_src elisp (global-set-key (kbd "M-,") 'pop-tag-mark) #+end_src ----- **** Resolve the name clash better When the symbol is both bound and fbound, prefer the fbound one, unless the =:caller= is =counsel-describe-variable=. ----- *** =counsel-ag= :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-counsel-ag :END: **** Add =initial-directory= Support alternative initial directory which helps other packages call this function with their unique starting directory. ----- **** Fix on Windows Using the "--vimgrep" argument improves things. ** New Commands :PROPERTIES: :CUSTOM_ID: 0-7-0-nf-new-commands :END: *** =ivy-occur= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-ivy-occur :END: Bound to ~C-c C-o~. Store the current completion session to its own buffer. You can have an unlimited amount of these buffers. ----- *** =ivy-avy= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-ivy-avy :END: Bound to ~C-'~. Speeds up selecting a candidate that's currently visible in the minibuffer. ----- *** =ivy-kill-ring-save= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-ivy-kill-ring-save :END: Bound to ~M-w~. When the region is active, call =kill-ring-save=. Otherwise, store all selected candidates to the kill ring. ----- *** =ivy-dispatching-call= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-ivy-dispatching-call :END: Bound to ~C-M-o~. This is a non-exiting version of ~M-o~ (=ivy-dispatching-done=). ----- *** =ivy-read-action= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-ivy-read-action :END: Bound to ~C-M-a~. Select the current action. Don't call it yet. ----- *** =swiper-multi= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-swiper-multi :END: Use =swiper= in multiple buffers. See [[https://github.com/abo-abo/swiper/issues/182][#182]]. Basic usage tips for selecting multiple buffers: - Use ~C-M-m~ (=ivy-call=) to add or remove one more buffer without exiting. - Use ~C-m~ (=ivy-done=) to add one last buffer. - Or use ~C-M-j~ (=ivy-immediate-done=) to finish without adding more buffers. - Hold ~C-M-n~ (=ivy-next-line-and-call=) to add a lot of buffers at once. ----- *** =swiper-mc= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-swiper-mc :END: Open multiple cursors at all selected candidates. ----- *** =swiper-all= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-swiper-all :END: New command to launch =swiper= for all open file buffers. Note that this can be excruciatingly slow if you don't clean up your buffer list often. ----- *** =counsel-grep= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-counsel-grep :END: This is essentially =swiper= for huge files. It's not as smooth as =swiper= for small files, but has a faster startup and faster matching for files that measure in megabytes. ----- *** =counsel-git-grep-query-replace= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-counsel-git-grep-query-replace :END: Bound to ~M-q~. Perform =query-replace= on all matches in all buffers. ----- *** =counsel-jedi= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-counsel-jedi :END: Complete Python symbols using Jedi. ----- *** =counsel-cl= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-counsel-cl :END: Complete Common Lisp symbols using SLIME. ----- *** =counsel-yank-pop= :PROPERTIES: :CUSTOM_ID: 0-7-0-nc-counsel-yank-pop :END: Give completion for inserting from the kill ring. See =counsel-yank-pop-truncate= defcustom and [[https://github.com/abo-abo/swiper/issues/218][#218]]. ----- * 0.8.0 :PROPERTIES: :CUSTOM_ID: 0.8.0 :END: ----- ** Package rename :PROPERTIES: :CUSTOM_ID: 0-8-0-package-rename :END: Due to popular demand, =swiper-0.7.0= is succeeded by =ivy-0.8.0= in GNU ELPA. The contents of the package don't change, only the name. Make sure to remove the =~/.emacs.d/elpa/swiper-0.7.0= directory if you have it and ~M-x~ =package-install ivy=. ** Documentation :PROPERTIES: :CUSTOM_ID: 0-8-0-documentation :END: HTML documentation is available at [[https://oremacs.com/swiper/]]. Texinfo documentation is in doc/ivy.texi. The HTML file shouldn't be in this repository to avoid bloat, instead it's in the gh-pages branch at https://github.com/abo-abo/swiper/tree/gh-pages. ** Fixes :PROPERTIES: :CUSTOM_ID: 0-8-0-fixes :END: *** =ivy-read= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-read :END: **** Fix recursive minibuffer exit with ~C-g~ Make it so e.g. ~C-h f C-h v C-g~ goes back to the =describe-function= selection. ----- **** Ensure the return result In some cases, =read-from-minibuffer= will return the whole minibuffer contents (i.e. all available candidates). Return =ivy--current= instead. ----- **** Properly support matching ignoring order See [[https://github.com/abo-abo/swiper/issues/296][#296]] and [[https://github.com/abo-abo/swiper/issues/329][#329]]. ----- **** Insert intermediate candidates during async completions See [[https://github.com/abo-abo/swiper/issues/340][#340]]. ----- **** Initialize =ivy-last= to empty state See [[https://github.com/abo-abo/swiper/issues/352][#352]]. ----- **** Fix extra actions for =completing-read= See [[https://github.com/abo-abo/swiper/issues/337][#337]]. ----- **** Support a list of symbols as collection See [[https://github.com/abo-abo/swiper/issues/375][#375]]. ----- **** Define =setq-local= and =defvar-local= unless defined With this commit, Ivy works on emacs-24.2. See [[https://github.com/abo-abo/swiper/issues/415][#415]]. ----- **** Make ~M-o~ not modify the action See [[https://github.com/abo-abo/swiper/issues/454][#454]]. ----- **** Make sure user keybindings are respected See [[https://github.com/abo-abo/swiper/issues/466][#466]]. ----- **** Fix =read-file-name= with a specified dir See [[https://github.com/abo-abo/swiper/issues/475][#475]]. ----- **** Don't highlight the match in the file part See [[https://github.com/abo-abo/swiper/issues/483][#483]]. ----- **** Add a few tests for alists ----- *** =ivy-occur= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-occur :END: **** Fix =default-directory= This way, =next-error= etc will work properly. ----- *** =ivy--resize-minibuffer-to-fit= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy--resize-minibuffer-to-fit :END: **** Fix for small delta See [[https://github.com/abo-abo/swiper/issues/339][#339]]. ----- **** Check =frame-root-window-p= See [[https://github.com/abo-abo/swiper/issues/380][#380]]. ----- *** =ivy-completing-read= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-completing-read :END: **** Use =completing-read-default= for tmm See [[https://github.com/abo-abo/swiper/issues/316][#316]]. ----- *** =ivy--regex-plus= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy--regex-plus :END: **** Recognize ! at the beginning of the str See [[https://github.com/abo-abo/swiper/issues/318][#318]]. ----- **** Prettify a bit See [[https://github.com/abo-abo/swiper/issues/344][#344]]. ----- **** Don't consider =\\(?...\)= a group See [[https://github.com/abo-abo/swiper/issues/393][#393]]. ----- *** =ivy--get-window= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy--get-window :END: **** Always return a valid window Even if =state= is invalid. ----- *** =ivy--recompute-index= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy--recompute-index :END: **** Update =cl-position= logic See [[https://github.com/abo-abo/swiper/issues/207][#207]]. ----- *** =ivy-reverse-i-search= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-reverse-i-search :END: **** Fix due to recursive update See [[https://github.com/abo-abo/swiper/issues/323][#323]]. ----- *** =ivy--reset-state= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy--reset-state :END: **** Don't null =initial-input= This is specifically for ='read-file-name-internal= collection. The input needs to be set to nil for e.g. =rgrep=, which supplies the *absolute* path as =initial-input=, resulting in a mess. For now, don't set input to nil if =:action= was passed to =ivy-read=. See [[https://github.com/abo-abo/swiper/issues/336][#336]]. ----- **** Don't deactivate region See [[https://github.com/abo-abo/swiper/issues/377][#377]]. ----- *** =ivy-completion-in-region= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-completion-in-region :END: **** Use =completion-all-completions= See [[https://github.com/abo-abo/swiper/issues/341][#341]]. ----- **** Optimize for 1 candidate When there's only one candidate, call the action immediately. ----- **** Add feedback for 1 candidate When the sole completion is the same as the input, notify the user. See [[https://github.com/abo-abo/swiper/issues/350][#350]]. ----- **** Bind =completion-ignore-case= It's convenient to have it the same value as =case-fold-search=. ----- *** =ivy-read-action= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-read-action :END: **** Give enough minibuffer space See [[https://github.com/abo-abo/swiper/issues/402][#402]]. ----- **** Allow to customize the action hint formatter See [[https://github.com/abo-abo/swiper/issues/469][#469]]. ----- *** =ivy-count-format= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-count-format :END: **** Fix for nil value See [[https://github.com/abo-abo/swiper/issues/349][#349]]. ----- *** =ivy-switch-buffer= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-switch-buffer :END: **** Don't fall back to =switch-to-buffer= See [[https://github.com/abo-abo/swiper/issues/410][#410]]. ----- *** =ivy-next-history-element= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-next-history-element :END: **** No "\\_<" for dynamic-collection "\\_<" regex is Emacs-specific and should only be done if =:dynamic-collection= is nil. It is nil for =counsel-git-grep= with repositories < 20000 lines, but non-nil for larger ones. Fixes [[https://github.com/abo-abo/swiper/issues/409][#409]]. ----- *** =ivy-occur-press= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-occur-press :END: **** Pulse no longer Repeated pulses within a short time span resulted in horrible window flickering. ----- *** =ivy-resume= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-resume :END: **** Add a guard against null =:action= ----- *** =ivy-avy= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-avy :END: **** Make ~C-g~ cancel gracefully See abo-abo/avy[[https://github.com/abo-abo/swiper/issues/140][#140]]. ----- *** =ivy-dispatching-done= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-ivy-dispatching-done :END: Allow to exit with no candidates. ----- *** =swiper= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-swiper :END: **** Improve for multiple occurrences on one line See [[https://github.com/abo-abo/swiper/issues/314][#314]]. ----- **** Fix "backward" search When none of the previous candidates after the point match the current input, instead of returning 0, return the index of the last matching candidate. This is a good choice, because that candidate is the closest to the point of the initial search start. See [[https://github.com/abo-abo/swiper/issues/319][#319]]. ----- **** Return point See [[https://github.com/abo-abo/swiper/issues/370][#370]]. ----- **** Update =regexp-search-ring= See [[https://github.com/abo-abo/swiper/issues/89][#89]]. ----- **** Always remove '(field) text property Allows to search better in modes for shell interaction. ----- *** =swiper-font-lock-ensure= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-swiper-font-lock-ensure :END: **** Add modes Add bongo-library-mode, bongo-playlist-mode, sauron-mode. See [[https://github.com/abo-abo/swiper/issues/19][#19]]. ----- **** Don't fail when font-lock is off See [[https://github.com/abo-abo/swiper/issues/400][#400]]. ----- *** =swiper--multi-candidates= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-swiper--multi-candidates :END: **** Add check for =make-string= See [[https://github.com/abo-abo/swiper/issues/481][#481]]. ----- *** =counsel--async-sentinel= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-counsel--async-sentinel :END: **** Fix issue with =ivy--regex-ignore-order= See [[https://github.com/abo-abo/swiper/issues/342][#342]]. ----- **** Re-display when no cands **** Recognize error codes other than 1 See [[https://github.com/abo-abo/swiper/issues/394][#394]]. ----- *** =counsel-git= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-counsel-git :END: **** Fix window selection. Use =with-ivy-window=, so that each new file chosen with e.g. ~C-M-n~ is selected in the same window. ----- *** =counsel-recoll= :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-counsel-recoll :END: **** Add =:unwind= See [[https://github.com/abo-abo/swiper/issues/403][#403]]. ----- *** compilation warnings :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-compilation-warnings :END: See [[https://github.com/abo-abo/swiper/issues/324][#324]]. ----- ** New Features :PROPERTIES: :CUSTOM_ID: 0-8-0-fx-new-features :END: *** =ivy-read= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-read :END: **** Use =flx= for highlighting fuzzy matches See [[https://github.com/abo-abo/swiper/issues/207][#207]]. ----- **** Simplify the signature for =:dynamic-collection= functions When given =:dynamic-collection=, assume the collection function only needs one argument - the string input. ----- **** Modify ~M-n~ prediction when region is active When the region is active and ~M-n~ is called, insert the region contents into the minibuffer and deactivate the region. The region deactivation is done for =swiper=, to make it easier to search for multiple words or a subword. ----- **** Allow to compose collections ***** Example 1: async collection Stack =recentf= on top of =counsel-locate=: #+begin_src elisp (defun small-test () (cl-subseq recentf-list 0 10)) (ivy-set-sources 'counsel-locate '((small-test) (original-source))) #+end_src Here, (original-source) represents the async candidates of =counsel-locate=. All extra sources are static - each function is called once to generate a list of strings, which will be filtered later. The order matters, so you can have e.g.: #+begin_src elisp (ivy-set-sources 'counsel-locate '((original-source) (small-test))) #+end_src See [[https://github.com/abo-abo/swiper/issues/373][#373]]. ----- ***** Example 2: sync collection #+begin_src elisp (defun my-extra-source () (append (when (eq 'Git (vc-backend (buffer-file-name))) (list "git1" "git2" "git3")) (when (file-exists-p "doc/Changelog.org") (list (propertize "doc/Changelog.org" 'face '(:background "red")))))) (defun my-find-file () (interactive) (ivy-read "Find file: " 'read-file-name-internal :action (lambda (x) (with-ivy-window (find-file (expand-file-name x ivy--directory)))) :require-match 'confirm-after-completion :history 'file-name-history :caller 'my-find-file)) (ivy-set-sources 'my-find-file '((my-extra-source) (original-source))) #+end_src The function =my-find-file= knows nothing about the extra source, it's only purpose is to introduce a =:caller= to attach things to, as to not to mess up e.g. =counsel-find-file=. The function =my-extra-source= gets called once in =ivy-read= via =ivy--reset-state=. It takes no args and returns a list of strings, possibly empty. ----- **** Improve documentation UI Bind ~C-h m~ to =ivy-help=. =ivy-help-file= is a new defvar pointing to the ivy-help.org file. Bind ~D~ in =hydra-ivy= to go to hydra's definition. See [[https://github.com/abo-abo/swiper/issues/376][#376]] and [[https://github.com/abo-abo/swiper/issues/379][#379]]. ----- **** Add ignore pattern toggling ~C-c C-a~ is bound to =ivy-toggle-ignore= - a new command to toggle ignore patterns (user-configured filtering). If the ignore patterns are enabled and there are zero candidates after ignoring, display the ones that match the current text. This feature currently works for =ivy-switch-buffer= and =counsel-find-file=. See [[https://github.com/abo-abo/swiper/issues/369][#369]]. ----- *** =ivy-mode= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-mode :END: **** Set =completion-in-region-function= See [[https://github.com/abo-abo/swiper/issues/331][#331]]. ----- **** Improve ~M-n~ for ='read-file-name-internal= ----- *** =ivy-set-occur= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-set-occur :END: Allows to customize =ivy-occur= per-command. ----- **** Add custom occur for =ivy-switch-buffer= See [[https://github.com/abo-abo/swiper/issues/438][#438]] and [[https://github.com/abo-abo/swiper/issues/440][#440]]. ----- *** =ivy-occur-mode= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-occur-mode :END: **** New commands on ~j~, ~k~, ~c~ (ivy-occur-toggle-calling): New command bound to ~c~. (ivy-occur-next-line): New command bound to ~j~. (ivy-occur-previous-line): New command bound to ~k~. This makes =ivy-occur= much more convenient, instead of ~gjgjgjg~, just ~cjjj~. Especially good for commands that change the contents of the other window, like =describe-function= or =counsel-git-grep=. Example: - ~C-h f~ (=describe-funtion=) - =run= (=self-insert-command=) - ~C-c C-o~ (=ivy-occur=); ~C-o u~ also works. - ~cjjjjkkkk~ ----- **** New command =ivy-occur-revert-buffer= on ~g~ Does what e.g. =revert-buffer= does for *Help* buffers. Has special handling for =counsel-git-grep=, =counsel-ag= and =counsel-grep=: will run the shell command once more and reflect the updates in files. Move =ivy-occur-press= from ~g~ to ~f~. ----- **** Improve the feedback for ~j~ and ~k~ The overlays will be more responsive now. ----- *** =ivy-re-builders-alist= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-re-builders-alist :END: **** Allow =this-command= to be a key Example: #+begin_src elisp (defun asdf () (interactive) (completing-read "prompt: " '("abc" "abcd" "def"))) (global-set-key (kbd "C-c t") 'asdf) (setq ivy-re-builders-alist '( (asdf . ivy--regex-fuzzy) (t . ivy--regex-plus))) #+end_src This is useful for commands that you didn't write. For new commands that you write, consider using =ivy-read= and =:caller=. See [[https://github.com/abo-abo/swiper/issues/330][#330]]. ----- *** =ivy-set-actions= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-set-actions :END: **** Call with =t= to affect all commands Example: #+begin_src elisp (ivy-set-actions t '(("i" insert "insert"))) #+end_src Now an "insert" action will be available for all =ivy-read= sessions when pressing ~M-o~. See [[https://github.com/abo-abo/swiper/issues/337][#337]]. ----- *** =ivy-faces= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-faces :END: New defcustom group. See [[https://github.com/abo-abo/swiper/issues/389][#389]]. ----- *** =ivy-flx-limit= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-flx-limit :END: New variable. Configure when =flx= is used. See [[https://github.com/abo-abo/swiper/issues/207][#207]]. ----- *** =ivy-inhibit-action= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-inhibit-action :END: New variable. See [[https://github.com/abo-abo/swiper/issues/363][#363]]. ----- *** =ivy-do-completion-in-region= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-do-completion-in-region :END: New defcustom. See [[https://github.com/abo-abo/swiper/issues/367][#367]]. ----- *** =ivy-fixed-height-minibuffer= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-fixed-height-minibuffer :END: New defcustom. When non nil, fix the height of the minibuffer during ivy completion at =ivy-height=. This effectively sets the minimum height at this level and tries to ensure that it does not change depending on the number of candidates. See [[https://github.com/abo-abo/swiper/issues/353][#353]]. ----- *** =ivy-set-display-transformer= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-set-display-transformer :END: New API function. Now used by =switch-to-buffer= and =read-file-name=. See [[https://github.com/abo-abo/swiper/issues/399][#399]]. ----- *** =ivy-ignore-buffers= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-ignore-buffers :END: New defcustom similar to =ido-ignore-buffers=. See [[https://github.com/abo-abo/swiper/issues/382][#382]] and [[https://github.com/abo-abo/swiper/issues/366][#366]]. ----- *** =ivy-add-newline-after-prompt= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-add-newline-after-prompt :END: New defcustom. See [[https://github.com/abo-abo/swiper/issues/451][#451]]. ----- *** =ivy-switch-buffer= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-switch-buffer :END: **** Add virtual views =ivy-views= variable stores pre-defined views. Allows to set a window configuration with many buffers from =ivy-switch-buffer=. How to use: just set =ivy-views= appropriately. An example value is provided (but nulled, so that it's empty initially). ----- *** =ivy-use-ignore-default= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-ivy-use-ignore-default :END: New defcustom See [[https://github.com/abo-abo/swiper/issues/477][#477]]. ----- *** =swiper= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-swiper :END: **** Improve =swiper-query-replace= To replace a symbol with a similar symbol, 1. Press ~C-s M-n~ for =swiper= and select the symbol at point as input. 2. Press ~M-q~ for =swiper-query-replace= 3. Press ~M-n~ to yank the symbol to replace. 4. Edit the replacement and ~RET~. Here step-3 was modified to yank e.g. "symbol" instead of "\_" previously. ----- *** =swiper-font-lock-exclude= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-swiper-font-lock-exclude :END: New variable for major modes that misbehave with =font-lock-ensure=. See [[https://github.com/abo-abo/swiper/issues/346][#346]]. ----- *** =swiper-all= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-swiper-all :END: **** New auto-updates position See [[https://github.com/abo-abo/swiper/issues/401][#401]]. ----- *** =counsel-mode= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-mode :END: A minor-mode that remaps built-in functions that have counsel replacements available. See [[https://github.com/abo-abo/swiper/issues/414][#414]]. ----- **** Allow use of describe-prefix-bindings See [[https://github.com/abo-abo/swiper/issues/441][#441]]. ----- *** =counsel-find-file= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-find-file :END: **** Add =initial-input= See [[https://github.com/abo-abo/swiper/issues/336][#336]]. ----- **** Change tramp prompt from "Find File: " to "user@host: " **** Bind =counsel-up-directory= to ~C-DEL~ New function that moves up to the parent directory and at the same time preselects the current directory. This is useful for moving up and down a file tree quickly. See [[https://github.com/abo-abo/swiper/issues/343][#343]]. ----- **** Customize =M-n= action This feature allows to quickly visit Github issues from either =magit-commit-mode= or from a version-controlled file. The point has to be at the "#" char in e.g. "[[https://github.com/abo-abo/swiper/issues/123][#123]]", that represents an issue. It's possible to customize =ivy-ffap-url-functions= to do a similar thing for places other than Github. The ~C-x C-f M-n~ key binding will work better with =counsel-find-file=, for plain =find-file= it will open a =dired= buffer in addition to opening the URL. ----- **** Can un-ignore dotfiles with a leading dot input When =ivy-text= starts with a dot, don't use =counsel-find-file-ignore-regexp=. The generic way to do this is with ~C-c C-a~ (=ivy-toggle-ignore=), but this is faster and more convenient. See [[https://github.com/abo-abo/swiper/issues/408][#408]]. ----- **** Bind ~M-o f~ to =find-file-other-window= **** Correctly expand file name at point See [[https://github.com/abo-abo/swiper/issues/430][#430]]. ----- **** Add display transformer See [[https://github.com/abo-abo/swiper/issues/458][#458]]. ----- **** Add magic slash that changes the directory Update to the behavior: the slash ("/") will enter a directory even if its name isn't completely typed out if either: 1. It's the only candidate. 2. The candidate index isn't 0, i.e. "C-n" has been typed at least once. 3. The input isn't "/". The above rules still allow to keep the old behavior with "//" moving to root and "/ssh:" opening tramp. This is an experimental feature, please report if it breaks someone's workflow. See [[https://github.com/abo-abo/swiper/issues/321][#321]] and [[https://github.com/abo-abo/swiper/issues/480][#480]]. ----- *** =counsel-git-grep= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-git-grep :END: **** Bind ~C-c C-m~ to =counsel-git-grep-switch-cmd= The initial command always runs on all files. To run only on *.el files, ~C-c C-m~ followed by ~M-i~ =-- *.el=. To run on *.c and *.h files, ~C-c C-m~ followed by ~M-i~ =-- *.c *.h=. To switch to all files again, ~C-c C-m~ and select the appropriate entry. See [[https://github.com/abo-abo/swiper/issues/420][#420]]. ----- *** =counsel-locate= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-locate :END: **** counsel-locate-cmd New defcustom that replaces =counsel-locate-options=. See [[https://github.com/abo-abo/swiper/issues/385][#385]]. ----- **** counsel-locate-cmd-mdfind New function. See [[https://github.com/abo-abo/swiper/issues/390][#390]]. ----- **** counsel-locate-cmd-es New function. See [[https://github.com/abo-abo/swiper/issues/426][#426]]. ----- *** =counsel-yank-pop= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-yank-pop :END: **** Truncate during display During the completion, only the context around the match will be shown. By default, the context is +2 lines above and +2 lines below the match. It can be adjusted with =counsel-yank-pop-truncate-radius=. Additionally, =ivy-height= is temporarily bound to 5 during completion. This way, the maximum minibuffer height should be 1+4*5=21 lines. See [[https://github.com/abo-abo/swiper/issues/315][#315]]. ----- *** =counsel-unicode-char= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-unicode-char :END: Display hex codes in left column. ----- *** =counsel-rhythmbox= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-rhythmbox :END: **** Preselect the current song ----- *** =counsel-ag= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-ag :END: **** =counsel-ag-base-command= Allows the command run by =counsel-ag-function= to be customized. There are several reasons to allow this: The vimgrep option is a recent addition; on windows it's more convenient to use pt; and the user might want to customize ignored files. Standard value: #+begin_src elisp (setq counsel-ag-base-command "ag --nocolor --nogroup %s -- .") #+end_src See [[https://github.com/abo-abo/swiper/issues/335][#335]]. ----- **** Add dir prompt for ~C-u~ See [[https://github.com/abo-abo/swiper/issues/429][#429]]. ----- **** Add =counsel-ag-map= See [[https://github.com/abo-abo/swiper/issues/462][#462]]. ----- *** =counsel-async-split-string-re= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-async-split-string-re :END: New defcustom. ----- *** =counsel--async-cmd= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel--async-cmd :END: **** Add optional exit-code table This argument can be used to associate exit codes with the underlying reason. Used in counsel-ag-function to signal that an exit code of 1 means that no matches were found. See [[https://github.com/abo-abo/swiper/issues/421][#421]]. ----- *** =counsel-prompt-function= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-prompt-function :END: New defcustom See [[https://github.com/abo-abo/swiper/issues/424][#424]] and [[https://github.com/abo-abo/swiper/issues/425][#425]]. ----- *** =counsel-grep= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-grep :END: **** Reveal outlines Just like =swiper=. ----- **** Should pick candidates closest to point Fixes the algorithm selecting the first matching candidate in case there are 0 matching candidates following point. Now the last matching candidate will be selected, resulting in less scrolling. ----- **** Speed up x40 times The default shell command will not use =--ignore-case= switch for =grep=. It's a bit less convenient, but results in a huge speed-up. ----- *** =counsel-M-x= :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-counsel-m-x :END: **** Add help action Bound to ~M-o h~ by default. See [[https://github.com/abo-abo/swiper/issues/452][#452]]. ** New Commands :PROPERTIES: :CUSTOM_ID: 0-8-0-nf-new-commands :END: *** =counsel-tmm= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-tmm :END: Completion for the menu bar items. For example: =counsel-tmm= -> =Options= -> =Set Default Font...=. Thanks to completion, the latter stages of the chain would look like: =op= ~RET~ =set= ~RET~. ----- *** =counsel-imenu= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-imenu :END: Jump to a buffer position indexed by imenu. ----- *** =counsel-decbinds= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-decbinds :END: Show a list of all defined keys, and their definitions. Describe the selected candidate. See [[https://github.com/abo-abo/swiper/issues/332][#332]]. ----- *** =counsel-list-processes= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-list-processes :END: Offer completion for =process-list= The default action deletes the selected process. An extra action allows to switch to the process buffer. See [[https://github.com/abo-abo/swiper/issues/357][#357]] and [[https://github.com/abo-abo/swiper/issues/398][#398]]. ----- *** =ivy-switch-buffer-other-window= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-ivy-switch-buffer-other-window :END: Remap =switch-to-buffer-other-window= to =ivy-switch-buffer-other-window= for =ivy-mode=. See [[https://github.com/abo-abo/swiper/issues/361][#361]]. ----- *** =counsel-git-stash= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-git-stash :END: Search through all available git stashes. See [[https://github.com/abo-abo/swiper/issues/374][#374]]. ----- *** =counsel-git-log= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-git-log :END: Call the =git log --grep= shell command and search through the output. ----- *** =counsel-pt= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-pt :END: Grep for a string in the current directory using pt. See [[https://github.com/abo-abo/swiper/issues/434][#434]]. ----- *** =counsel-linux-app= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-linux-app :END: Launch a Linux desktop application, similar to Alt-. See [[https://github.com/abo-abo/swiper/issues/446][#446]]. ----- *** =counsel-ace-link= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-ace-link :END: Ivy completion for =ace-link=. ----- *** =counsel-esh-history= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-esh-history :END: Browse Eshell history. See [[https://github.com/abo-abo/swiper/issues/459][#459]]. ----- *** =counsel-shell-history= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-shell-history :END: Browse shell history. ----- *** =counsel-grep-or-swiper= :PROPERTIES: :CUSTOM_ID: 0-8-0-nc-counsel-grep-or-swiper :END: New command: automatically use =swiper= for smaller buffers and =counsel-grep= for larger buffers. Adjust with: #+begin_src elisp (setq counsel-grep-swiper-limit 300000) #+end_src By default, the splitting predicate is 300K bytes in a file. ----- #+BEGIN_EXPORT html


















































#+END_EXPORT * 0.9.0 :PROPERTIES: :CUSTOM_ID: 0.9.0 :END: ----- ** Fixes :PROPERTIES: :CUSTOM_ID: 0-9-0-fixes :END: *** =colir-parse-color= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-colir-parse-color :END: Fix color parsing in terminal. See [[https://github.com/abo-abo/swiper/issues/541][#541]] and [[https://github.com/abo-abo/swiper/issues/543][#543]]. ----- *** =counsel--gg-sentinel= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel--gg-sentinel :END: Check for an additional 141 return code. ----- *** =counsel-ace-link= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-ace-link :END: Use =cdr= for action. See [[https://github.com/abo-abo/swiper/issues/835][#835]]. ----- *** =counsel-ag= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-ag :END: **** Use sync on remote See [[https://github.com/abo-abo/swiper/issues/669][#669]]. **** Add missing parameter See [[https://github.com/abo-abo/swiper/issues/858][#858]], [[https://github.com/abo-abo/swiper/issues/861][#861]]. ----- *** =counsel-find-file= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-find-file :END: **** Improve stability on arcane systems It can happen that =(all-completions "" 'read-file-name-internal)= may fail on systems with symlinks. I think it's related to the file functions trying to compute occupied space. In any case, a plain =directory-files= is roughly the equivalent and is less likely to fail. **** Check compat between preselect and initial-input See [[https://github.com/abo-abo/swiper/issues/514][#514]], [[https://github.com/abo-abo/swiper/issues/515][#515]]. **** Prevent expand-file-name nil See [[https://github.com/abo-abo/swiper/issues/518][#518]]. **** Don't crash if default-directory is nil See [[https://github.com/abo-abo/swiper/issues/586][#586]]. **** Allow to ~C-y~ a "/ssh:" file **** Press ~M-n~ on issue works for newer magit version See [[https://github.com/abo-abo/swiper/issues/692][#692]]. **** Fix when initial input is a file name See [[https://github.com/abo-abo/swiper/issues/744][#744]]. **** Account for =file-name-directory= returning nil See [[https://github.com/abo-abo/swiper/issues/780][#780]]. **** Fix ~RET~ on no input See [[https://github.com/abo-abo/swiper/issues/782][#782]]. **** Fix ~RET~ when file exists See [[https://github.com/abo-abo/swiper/issues/792][#792]]. ----- *** =counsel-git= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-git :END: **** Add a better error message. See [[https://github.com/abo-abo/swiper/issues/537][#537]]. **** Add ~x~ action To open externally. ----- *** =counsel-grep= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-grep :END: Quote =:preselect=. ----- *** =counsel-grep-or-swiper= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-grep-or-swiper :END: Don't grep on compressed files. See [[https://github.com/abo-abo/swiper/issues/536][#536]]. ----- *** =counsel-imenu= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-imenu :END: **** Improve readability See [[https://github.com/abo-abo/swiper/issues/558][#558]]. **** Force rescan if requested See [[https://github.com/abo-abo/swiper/issues/631][#631]]. ----- *** =counsel-info-lookup-symbol= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-info-lookup-symbol :END: Fix doc, see [[https://github.com/abo-abo/swiper/issues/721][#721]]. Add preselect, see [[https://github.com/abo-abo/swiper/issues/722][#722]]. ----- *** =counsel-linux-app= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-linux-app :END: **** Don't quit on bad data See [[https://github.com/abo-abo/swiper/issues/604][#604]]. **** Check if dir exists See [[https://github.com/abo-abo/swiper/issues/896][#896]]. ----- *** =counsel-load-theme= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-load-theme :END: Add noconfirm flag in =counsel-load-theme-action=. ----- *** =counsel-locate= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-locate :END: **** Make =counsel-locate-action-extern= interactive See [[https://github.com/abo-abo/swiper/issues/605][#605]]. **** Add w32 support to =counsel-locate-action-extern= See [[https://github.com/abo-abo/swiper/issues/607][#607]], [[https://github.com/abo-abo/swiper/issues/688][#688]]. ----- *** =counsel-M-x= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-m-x :END: **** Fix interaction with =repeat= See [[https://github.com/abo-abo/swiper/issues/564][#564]]. **** Preserve =last-command= See [[https://github.com/abo-abo/swiper/issues/891][#891]], [[https://github.com/abo-abo/swiper/issues/893][#893]]. ----- *** =counsel-org-tag-action= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-org-tag-action :END: Perform in the minibuffer. See [[https://github.com/abo-abo/swiper/issues/890][#890]]. ----- *** =counsel-recoll= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-recoll :END: Add =shell-quote-argument=. See [[https://github.com/abo-abo/swiper/issues/713][#713]]. ----- *** =counsel-rhythmbox= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-rhythmbox :END: No longer depends on =helm-rhythmbox=. ----- *** =counsel-yank-pop= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-counsel-yank-pop :END: Fix candidates not showing sometimes. ----- *** doc :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-doc :END: **** Fixed typos in the doc See [[https://github.com/abo-abo/swiper/issues/497][#497]], [[https://github.com/abo-abo/swiper/issues/809][#809]]. **** Added =ivy-format-function= to the doc See [[https://github.com/abo-abo/swiper/issues/577][#577]]. **** Added info on generating the doc See [[https://github.com/abo-abo/swiper/issues/601][#601]]. **** Added info on associating values See [[https://github.com/abo-abo/swiper/issues/714][#714]]. **** Update package names on GNU ELPA / MELPA See [[https://github.com/abo-abo/swiper/issues/833][#833]]. ----- *** =ivy--filter= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy--filter-recompute-index-after-filter :END: Recompute index after filter. See [[https://github.com/abo-abo/swiper/issues/491][#491]]. ----- *** =ivy--flx-sort= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy--flx-sort :END: Improve. See [[https://github.com/abo-abo/swiper/issues/843][#843]]. ----- *** =ivy--format-minibuffer-line= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy--format-minibuffer-line :END: Fix for =ivy-display-style= nil. See [[https://github.com/abo-abo/swiper/issues/828][#828]]. ----- *** =ivy--minibuffer-setup= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy--minibuffer-setup :END: Fix =max-mini-window-height=. See [[https://github.com/abo-abo/swiper/issues/732][#732]]. ----- *** =ivy--occur-insert-lines= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy--occur-insert-lines :END: Scroll to first command. See [[https://github.com/abo-abo/swiper/issues/829][#829]]. ----- *** =ivy--regex-ignore-order= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy--regex-ignore-order :END: Ensure it returns legal regexps. See [[https://github.com/abo-abo/swiper/issues/765][#765]]. ----- *** =ivy--reset-state= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy--reset-state :END: Simplify. See [[https://github.com/abo-abo/swiper/issues/827][#827]]. ----- *** =ivy--virtual-buffers= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy--virtual-buffers :END: Don't modify recentfs or bookmarks. See [[https://github.com/abo-abo/swiper/issues/821][#821]]. ----- *** =ivy-call= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-call :END: Set =default-directory=, see [[https://github.com/abo-abo/swiper/issues/717][#717]], [[https://github.com/abo-abo/swiper/issues/760][#760]], [[https://github.com/abo-abo/swiper/issues/779][#779]], [[https://github.com/abo-abo/swiper/issues/810][#810]]. Recursive logic, see [[https://github.com/abo-abo/swiper/issues/924][#924]], [[https://github.com/abo-abo/swiper/issues/937][#937]]. ----- *** =ivy-completion-in-region= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-completion-in-region :END: Fix double insert bug. Fix common length bug. See [[https://github.com/abo-abo/swiper/issues/528][#528]]. Remove =:require-match=, see [[https://github.com/abo-abo/swiper/issues/907][#907]]. ----- *** =ivy-completion-in-region-action= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-completion-in-region-action :END: Remove string properties, see [[https://github.com/abo-abo/swiper/issues/517][#517]]. Remove =with-ivy-window=, see [[https://github.com/abo-abo/swiper/issues/928][#928]]. ----- *** =ivy-fixed-height-minibuffer= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-fixed-height-minibuffer :END: Add correction. See [[https://github.com/abo-abo/swiper/issues/737][#737]]. ----- *** =ivy-help-file= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-help-file :END: Define with =defconst=, see [[https://github.com/abo-abo/swiper/issues/938][#938]]. ----- *** =ivy-hydra= is now a separate package on MELPA :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-hydra-is-now-a-separate-package-on-melpa :END: See [[https://github.com/abo-abo/swiper/issues/464][#464]], [[https://github.com/abo-abo/swiper/issues/512][#512]]. ----- *** =ivy-immediate-done= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-immediate-done :END: Update docstring, see [[https://github.com/abo-abo/swiper/issues/525][#525]]. ----- *** =ivy-minibuffer-map= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-minibuffer-map :END: **** Move =ivy-toggle-regexp-quote= from ~M-q~ to ~M-r~. See [[https://github.com/abo-abo/swiper/issues/566][#566]]. **** Remap scroll-up/down-command Instead of assigning ~C-v~ / ~M-v~ so page up/down works. See [[https://github.com/abo-abo/swiper/issues/797][#797]], [[https://github.com/abo-abo/swiper/issues/798][#798]]. **** Remap =backward-delete-char-untabify= to =ivy-backward-delete-char= **** Rebind ~C-v~ and ~M-v~ The ultimate solution to have PgUp and PgDown and whatever else was mapped to =scroll-up-command= bound in =ivy-minibuffer-map=. While still having the standard ~C-v~ and ~M-v~ bindings. See [[https://github.com/abo-abo/swiper/issues/797][#797]], [[https://github.com/abo-abo/swiper/issues/798][#798]], [[https://github.com/abo-abo/swiper/issues/535][#535]]. ----- *** =ivy-occur-press= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-occur-press :END: Pass the whole cons cell to action, see [[https://github.com/abo-abo/swiper/issues/634][#634]]. ----- *** =ivy-partial= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-partial :END: Fix for =:dynamic-collection=. See [[https://github.com/abo-abo/swiper/issues/946][#946]]. ----- *** =ivy-read= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-read :END: **** Document all args See [[https://github.com/abo-abo/swiper/issues/533][#533]]. **** Use predicate when reading file names See [[https://github.com/abo-abo/swiper/issues/804][#804]]. ----- *** =ivy-remote= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-remote :END: Use a lighter color for dark themes, see [[https://github.com/abo-abo/swiper/issues/646][#646]]. ----- *** =ivy-resume= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-resume :END: The original =default-directory= will be restored, see [[https://github.com/abo-abo/swiper/issues/591][#591]]. ----- *** =ivy-sort-functions-alist= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-sort-functions-alist :END: Improve. See [[https://github.com/abo-abo/swiper/issues/870][#870]]. ----- *** =ivy-switch-buffer= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-switch-buffer :END: **** Reset index to 0 on input See [[https://github.com/abo-abo/swiper/issues/522][#522]], [[https://github.com/abo-abo/swiper/issues/513][#513]]. ----- *** =ivy-switch-buffer-other-window= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-ivy-switch-buffer-other-window :END: Obey =ivy-ignore-buffers=. See [[https://github.com/abo-abo/swiper/issues/745][#745]]. ----- *** Recursive minibuffers with two emacsclients :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-recursive-minibuffers-with-two-emacsclients :END: See [[https://github.com/abo-abo/swiper/issues/738][#738]]. ----- *** shrink minibuffer after reading actions :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-shrink-minibuffer-after-reading-actions :END: See [[https://github.com/abo-abo/swiper/issues/764][#764]], [[https://github.com/abo-abo/swiper/issues/402][#402]]. ----- *** =swiper= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-swiper :END: **** Fix "foo!bar" syntax See [[https://github.com/abo-abo/swiper/issues/565][#565]]. **** Now respects =ivy-re-builders-alist= See [[https://github.com/abo-abo/swiper/issues/613][#613]]. Example: #+begin_src (setq ivy-re-builders-alist '((swiper . ivy--regex-fuzzy) (t . ivy--regex-plus))) #+end_src ----- *** =swiper-avy= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-swiper-avy :END: Require =avy=, see [[https://github.com/abo-abo/swiper/issues/593][#593]]. ----- *** =swiper-font-lock-exclude= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-swiper-font-lock-exclude :END: Add =forth-mode=, see [[https://github.com/abo-abo/swiper/issues/526][#526]]. Add =forth-block-mode=, see [[https://github.com/abo-abo/swiper/issues/527][#527]]. Add =bookmark-bmenu-mode=. Add =nix-mode=, see [[https://github.com/abo-abo/swiper/issues/879][#879]]. Add =circe-mode=, see [[https://github.com/abo-abo/swiper/issues/900][#900]], [[https://github.com/abo-abo/swiper/issues/901][#901]]. ----- *** =swiper-multi= :PROPERTIES: :CUSTOM_ID: 0-9-0-fx-swiper-multi :END: Fix regression, See [[https://github.com/abo-abo/swiper/issues/673][#673]]. Don't use virtual buffers, See [[https://github.com/abo-abo/swiper/issues/705][#705]]. ----- ** New Features :PROPERTIES: :CUSTOM_ID: 0-9-0-new-features :END: *** =counsel-ag= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-ag :END: **** Extend more See [[https://github.com/abo-abo/swiper/issues/576][#576]]. **** Prompt for extra args when using prefix arg See [[https://github.com/abo-abo/swiper/issues/774][#774]]. **** Support limiting in files See [[https://github.com/abo-abo/swiper/issues/820][#820]], [[https://github.com/abo-abo/swiper/issues/822][#822]], [[https://github.com/abo-abo/swiper/issues/823][#823]]. **** =counsel-grep-post-action-hook= New hook for counsel-ag/grep/pt. See [[https://github.com/abo-abo/swiper/issues/800][#800]], [[https://github.com/abo-abo/swiper/issues/751][#751]]. ----- *** =counsel-bookmark= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-bookmark :END: **** =counsel-bookmark-avoid-dired= When non-nil and a directory is selected from =counsel-bookmark=, forward the choice to =counsel-find-file= instead of opening a =dired= buffer. See [[https://github.com/abo-abo/swiper/issues/813][#813]]. ----- *** =counsel-find-file= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-find-file :END: **** Add binding to jump to a bookmarked directory without quit Press ~M-o b~ to set the current directory to one of the virtual buffers' directories. You continue to select a file from that directory. See [[https://github.com/abo-abo/swiper/issues/531][#531]]. **** Add =counsel-find-file-root= Press ~M-o r~ to find the current file as root. See [[https://github.com/abo-abo/swiper/issues/948][#948]]. ----- *** =counsel-git= **** Add =counsel-git-cmd= See [[https://github.com/abo-abo/swiper/issues/590][#590]]. *** =counsel-git-grep= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-git-grep :END: **** Support custom per-project commands The idea is to grep several Git repositories at once. For example, my Emacs config is a Git repository with many Git submodule repositories inside. When used with ~C-u~, and inside =counsel-git-grep-projects-alist=, use the corresponding command instead. Additionally, =counsel-git-grep-proj-function= is used. For a possible implementation of the custom git-grep command, see: https://github.com/abo-abo/oremacs/commit/c7effdb94749dc600b1204ea7a9db319ebdb0f00 See [[https://github.com/abo-abo/swiper/issues/616][#616]]. **** Reveal text hidden in outlines **** Works with "Git for Windows" and native Emacs build **** Fix for files with spaces in the name See [[https://github.com/abo-abo/swiper/issues/700][#700]]. **** Fix ~g~ (=counsel-git-grep-occur=) Things go wrong when `ivy-text' is changed from the original value. Extract =ivy-text= from the buffer name. Quote the directory name. See [[https://github.com/abo-abo/swiper/issues/811][#811]]. **** Update quoting See [[https://github.com/abo-abo/swiper/issues/876][#876]]. **** =counsel-git-grep-cmd-default= The initial value for =counsel-git-grep-cmd=. ----- *** =counsel-git-log= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-git-log :END: **** Add =counsel-git-log-cmd= Allows to customize the command, see [[https://github.com/abo-abo/swiper/issues/652][#652]]. ----- *** =counsel-linux-app= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-linux-app :END: **** =counsel-linux-apps-directories= Customize the search path. ----- *** =counsel-load-library= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-load-library :END: **** Allow to find library with an action See [[https://github.com/abo-abo/swiper/issues/873][#873]]. ----- *** =counsel-mode= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-mode :END: **** Bind =counsel-info-lookup-symbol= Substitutes =info-lookup-symbol=, see [[https://github.com/abo-abo/swiper/issues/493][#493]]. **** Bind ~C-r~ for =eval-expression= and =shell-command= Press ~C-r~ while inside the minibuffer during =eval-expression= or =shell-command= to get completion for history. ----- *** =counsel-pt= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-pt :END: Add =initial-input= arg. See [[https://github.com/abo-abo/swiper/issues/757][#757]]. ----- *** =counsel-unicode-char= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-unicode-char :END: **** Add leading zeros to the display See [[https://github.com/abo-abo/swiper/issues/662][#662]]. **** Support universal argument See [[https://github.com/abo-abo/swiper/issues/868][#868]]. ----- *** =counsel-yank-pop= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-counsel-yank-pop :END: **** Add =counsel-yank-pop-separator= Allows to customize the separator. See [[https://github.com/abo-abo/swiper/issues/660][#660]]. ----- *** =ivy= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-ivy :END: **** completion at point - =ivy-display-functions-alist= :: New defcustom, which decides how to display the candidates. =ivy-completion-in-region= will use completion at point by default. Related: [[https://github.com/abo-abo/swiper/issues/707][#707]], [[https://github.com/abo-abo/swiper/issues/712][#712]], [[https://github.com/abo-abo/swiper/issues/788][#788]]. **** =ivy-action-wrap= Set this to have =ivy-next-action= and =ivy-prev-action= wrap around. **** =ivy-add-actions= This is a convenience extension to the existing =ivy-set-actions=. See [[https://github.com/abo-abo/swiper/issues/470][#470]]. **** =ivy-case-fold-search= additional value ='always= If the value of ivy-case-fold-search is set to 'always, the search is always case-insensive, regardless of the input. See [[https://github.com/abo-abo/swiper/issues/916][#916]]. **** =ivy-completion-in-region-action= Add support for =multiple-cursors=, see [[https://github.com/abo-abo/swiper/issues/547][#547]]. **** =ivy-highlight-functions-alist= Customize the highlighters. See [[https://github.com/abo-abo/swiper/issues/691][#691]], [[https://github.com/abo-abo/swiper/issues/654][#654]], [[https://github.com/abo-abo/swiper/issues/827][#827]]. **** =ivy-magic-tilde= New defcustom. Decide if =~= or =~/= should cd home. See [[https://github.com/abo-abo/swiper/issues/687][#687]], [[https://github.com/abo-abo/swiper/issues/679][#679]]. **** =ivy-set-prompt= Allow to set the prompt using the =:caller= as key. **** =ivy-set-prompt-text-properties-function= An advanced override of the prompt string. **** =ivy-sort-file-function-using-ido= Extends the options for sorting file names. See [[https://github.com/abo-abo/swiper/issues/498][#498]]. ----- *** =ivy-completing-read= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-ivy-completing-read :END: **** Set =:caller= to =this-command= Improves sorting customization. See [[https://github.com/abo-abo/swiper/issues/899][#899]]. **** Don't =:require-match= for null See [[https://github.com/abo-abo/swiper/issues/909][#909]]. **** =ivy-completing-read-handlers-alist= New defcustom. See [[https://github.com/abo-abo/swiper/issues/892][#892]]. ----- *** =ivy-minibuffer-map= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-ivy-minibuffer-map :END: **** Alternative action list ~M-o~ using Hydra Not hiding the candidates and using a single line for actions results in a more distraction-free experience. Use this code to turn it on: #+begin_src elisp (require 'ivy-hydra) #+end_src ----- *** =ivy-occur-mode= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-ivy-occur-mode :END: **** ~RET~ now switches to candidate window **** =read-only-mode= is enabled See [[https://github.com/abo-abo/swiper/issues/720][#720]]. **** Set =view-read-only= locally See [[https://github.com/abo-abo/swiper/issues/789][#789]]. **** Run =wgrep-setup= See [[https://github.com/abo-abo/swiper/issues/904][#904]]. ----- *** =ivy-read= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-ivy-read :END: **** Make key binding for other window action consistent By default, ~M-o j~ will select the file or buffer in other window, for both =ivy-switch-buffer= and =counsel-find-file=. **** Facilitate sorting of cons cells See [[https://github.com/abo-abo/swiper/issues/554][#554]]. #+begin_src elisp (defvar ivy-sorter-data '(("b 1" . 1) ("a 2" . 2) ("d 0" . 0) ("c 5" . 5))) (defun isn (a b) (< (cdr a) (cdr b))) (add-to-list 'ivy-sort-functions-alist '(ivy-sorter . isn)) (ivy-read "string: " ivy-sorter-data :sort t :caller 'ivy-sorter) #+end_src **** Add prefix arg for action functions See [[https://github.com/abo-abo/swiper/issues/552][#552]]. Single actions: | C-m | ivy-done | store prefix | | M-o | ivy-dispatching-done | store prefix | | C-j | ivy-alt-done | store prefix | | C-M-j | ivy-immediate-done | store prefix | | TAB TAB | ivy-partial-or-done | unsupported | | C-' | ivy-avy | unsupported | Multiple actions: | C-M-m | ivy-call | store prefix, type prefix again for next call | | C-M-o | ivy-dispatching-call | store prefix, type prefix again for next call | | C-M-n | ivy-next-line-and-call | store prefix, type prefix again for next call | | C-M-p | ivy-previous-line-and-call | store prefix, type prefix again for next call | An example application: no prefix prints first number in a message-box one prefix prints last number in a message-box numeric prefix selects the index to print in a message-box #+begin_src elisp (ivy-read "choose: " '(("a" 1 2 3) ("b" 3 4 5)) :action (lambda (x) (message-box "%s" (cond ((null ivy-current-prefix-arg) (elt x 0)) ((equal '(4) ivy-current-prefix-arg) (car (last x))) (t (elt x (prefix-numeric-value ivy-current-prefix-arg))))))) #+end_src **** Breaking change for alist type collection actions The action will be called with collection's =ITEM=, instead of =(cdr ITEM)= like before. This allows to simplify the logic of complex action functions: they don't have to look up the full item by string in their own collection, moreover they don't have to know anything about their collection. **** Implement unique index for alist completion The uniqueness assumption is that the completion system is passed a list of /unique/ strings, of which one (or more) are selected. Unlike plain string completion, alists may require violating the uniqueness assumption: there may be two elements with the same =car= but different =cdr=. Example: C function declaration and definition for tag completion. Until now, whenever two equal strings were sent to =ivy-read=, only the first one could be selected. Now, each alist car gets an integer index assigned to it as a text property ='idx=. So it's possible to differentiate two alist items with the same key. **** Make =with-ivy-window= not necessary in the action function This allows for a lot of simplification, e.g. use =insert= instead of =(lambda (x) (with-ivy-window (insert x)))=. See [[https://github.com/abo-abo/swiper/issues/639][#639]]. ----- *** =ivy-switch-buffer= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-ivy-switch-buffer :END: **** Add =ivy-sort-function-buffer= Puts e.g. the =*scratch*= buffer ahead of the =misc= buffer if the input is "sc", since it's almost like a prefix match. See [[https://github.com/abo-abo/swiper/issues/595][#595]]. **** Sort virtual buffers after open buffers See [[https://github.com/abo-abo/swiper/issues/706][#706]], [[https://github.com/abo-abo/swiper/issues/743][#743]]. **** =ivy-switch-buffer-faces-alist= Allow to customize faces in =ivy-switch-buffer= by the mode of each buffer. Example: #+begin_src elisp (setq ivy-switch-buffer-faces-alist '((emacs-lisp-mode . swiper-match-face-1) (dired-mode . ivy-subdir) (org-mode . org-level-4))) #+end_src ----- *** =swiper= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-swiper :END: **** Add option for swiper line number to be searchable See =swiper-include-line-number-in-search= and [[https://github.com/abo-abo/swiper/issues/562][#562]]. **** Restore window position after using swiper. Relevant for high settings of =scroll-conservatively=. See [[https://github.com/abo-abo/swiper/issues/643][#643]]. **** Improve fuzzy highlight If you've set the regex builder to fuzzy (non-default), you'll get a highlight quality on par with the default one. See [[https://github.com/abo-abo/swiper/issues/651][#651]], [[https://github.com/abo-abo/swiper/issues/653][#653]]. **** Add =char-fold-to-regexp= See [[https://github.com/abo-abo/swiper/issues/622][#622]]. **** Add compatibility with =evil-ex-search= See [[https://github.com/abo-abo/swiper/issues/887][#887]]. **** Apply =evil= search highlighting See [[https://github.com/abo-abo/swiper/issues/888][#888]]. **** Set =evil-ex-search-direction= See [[https://github.com/abo-abo/swiper/issues/947][#947]]. **** =swiper-goto-start-of-match= New defcustom. When non-nil, swiper default action will go to the beginning of the match instead of on its end. This behavior is inspired by vim's and evil's way of searching. See [[https://github.com/abo-abo/swiper/issues/944][#944]], [[https://github.com/abo-abo/swiper/issues/942][#942]]. **** =swiper-avy= works with more regexp builders See [[https://github.com/abo-abo/swiper/issues/932][#932]]. ----- *** =swiper-all= :PROPERTIES: :CUSTOM_ID: 0-9-0-nf-swiper-all :END: **** Is now async This means extremely fast startup time. Additionally, the feedback to input is quite fast even with a hundred buffers. This is because, unlike =swiper=, line numbers are not computed. Computing line numbers, while situationally useful, is really slow for huge buffers, and even slower for dozens of huge buffers. See [[https://github.com/abo-abo/swiper/issues/620][#620]]. **** Press ~M-q~ for query-replace See [[https://github.com/abo-abo/swiper/issues/623][#623]]. **** Ignore TAGS buffers See [[https://github.com/abo-abo/swiper/issues/787][#787]]. **** Consider magit stash buffers See [[https://github.com/abo-abo/swiper/issues/819][#819]]. **** Fix =case-fold-search= See [[https://github.com/abo-abo/swiper/issues/880][#880]]. ----- ** New Commands :PROPERTIES: :CUSTOM_ID: 0-9-0-new-commands :END: *** =counsel-bookmark= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-bookmark :END: Completion for =bookmark-jump=. Can delete and rename bookmarks, see [[https://github.com/abo-abo/swiper/issues/758][#758]]. ----- *** =counsel-colors-emacs= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-colors-emacs :END: See [[https://github.com/abo-abo/swiper/issues/815][#815]], [[https://github.com/abo-abo/swiper/issues/921][#921]]. ----- *** =counsel-colors-web= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-colors-web :END: See [[https://github.com/abo-abo/swiper/issues/815][#815]]. ----- *** =counsel-command-history= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-command-history :END: See [[https://github.com/abo-abo/swiper/issues/826][#826]]. ----- *** =counsel-company= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-company :END: Picks up company's candidates and inserts the result into the buffer. See [[https://github.com/abo-abo/swiper/issues/331][#331]], [[https://github.com/abo-abo/swiper/issues/547][#547]]. ----- *** =counsel-describe-face= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-describe-face :END: See [[https://github.com/abo-abo/swiper/issues/585][#585]], [[https://github.com/abo-abo/swiper/issues/703][#703]]. ----- *** =counsel-dired-jump= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-dired-jump :END: Like, =counsel-file-jump=, but for directories. ----- *** =counsel-dpkg= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-dpkg :END: Completion for =dpkg -l=. ----- *** =counsel-faces= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-faces :END: See [[https://github.com/abo-abo/swiper/issues/815][#815]]. ----- *** =counsel-file-jump= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-file-jump :END: Jump to a file from a list of all files in the current directory, see [[https://github.com/abo-abo/swiper/issues/609][#609]], [[https://github.com/abo-abo/swiper/issues/610][#610]]. ----- *** =counsel-find-library= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-find-library :END: A helpful and unsurprising alternative to using ~C-.~ with =counsel-load-library=. See [[https://github.com/abo-abo/swiper/issues/794][#794]], [[https://github.com/abo-abo/swiper/issues/801][#801]]. ----- *** =counsel-hydra-heads= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-hydra-heads :END: Call a head of the current/last hydra by name. See [[https://github.com/abo-abo/swiper/issues/696][#696]]. ----- *** =counsel-irony= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-irony :END: Inline C++ completion using Irony. ----- *** =counsel-mark-ring= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-mark-ring :END: See [[https://github.com/abo-abo/swiper/issues/834][#834]]. ----- *** =counsel-org-agenda-headlines= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-org-agenda-headlines :END: See [[https://github.com/abo-abo/swiper/issues/825][#825]]. ----- *** =counsel-outline= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-outline :END: Completion for outlines in the current buffer. ----- *** =counsel-package= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-package :END: Manage packages. Allows installing, deleting, describing etc. See [[https://github.com/abo-abo/swiper/issues/869][#869]], [[https://github.com/abo-abo/swiper/issues/872][#872]]. ----- *** =counsel-recentf= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-recentf :END: Renamed from =ivy-recentf=, see [[https://github.com/abo-abo/swiper/issues/624][#624]]. Added actions in [[https://github.com/abo-abo/swiper/issues/701][#701]]: - ~j~ for =find-file-other-window= - ~x~ for =counsel-find-file-extern= Remove text properties, see [[https://github.com/abo-abo/swiper/issues/770][#770]]. ----- *** =counsel-rg= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-rg :END: Grep for a string in the current directory using =rg=. Use =counsel-rg-base-command= to customize. See [[https://github.com/abo-abo/swiper/issues/784][#784]], [[https://github.com/abo-abo/swiper/issues/785][#785]], [[https://github.com/abo-abo/swiper/issues/795][#795]], [[https://github.com/abo-abo/swiper/issues/796][#796]]. ----- *** =counsel-rpm= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-rpm :END: Call the =rpm= shell command. See [[https://github.com/abo-abo/swiper/issues/695][#695]]. ----- *** =counsel-semantic= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-semantic :END: Completion for semantic tags. ----- *** =counsel-set-variable= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-set-variable :END: Completion for setting a variable to a value. See [[https://github.com/abo-abo/swiper/issues/544][#544]], [[https://github.com/abo-abo/swiper/issues/546][#546]], [[https://github.com/abo-abo/swiper/issues/549][#549]], [[https://github.com/abo-abo/swiper/issues/550][#550]], [[https://github.com/abo-abo/swiper/issues/556][#556]]. ----- *** =counsel-shell-command-history= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-counsel-shell-command-history :END: Search through history in =shell-mode=. See [[https://github.com/abo-abo/swiper/issues/689][#689]]. When =counsel-mode= is on, ~M-! C-r~ will call =counsel-shell-command-history=. ----- *** =ivy-push-view= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-ivy-push-view :END: And =ivy-pop-view=. 1. Use =ivy-push-view= to store a view - your current window tree. This contains: all windows on the current frame, and their configuration w.r.t. horizontal or vertical splits. The point positions in each window are stored as well. 2. Use =ivy-switch-buffer= to select stored views. 3. Use =ivy-pop-view= to delete a stored view that you don't want any more. See [[https://github.com/abo-abo/swiper/issues/584][#584]]. ----- *** =ivy-rotate-sort= :PROPERTIES: :CUSTOM_ID: 0-9-0-nc-ivy-rotate-sort :END: Modify =ivy-sort-functions-alist= to allow a list of sorting functions to apply to a collection. The car of this list is the current one. =ivy-rotate-sort= then rotates this list through the different possibilities. Bound to ~C-c C-s~. Here is a simple example to illustrate. #+begin_src elisp (setq ivy-sort-functions-alist '((read-file-name-internal . (ivy-sort-file-function-default string-lessp string-greaterp)) (internal-complete-buffer . nil) (counsel-git-grep-function . nil) (Man-goto-section . nil) (org-refile . nil) (t . string-lessp))) #+end_src ~M-x~ =find-file= ~RET C-c C-s~ now switches from the default sorting to using =string-lessp=. ~C-c C-s~ again switches to =string-greaterp= and so on. See [[https://github.com/abo-abo/swiper/issues/845][#845]], [[https://github.com/abo-abo/swiper/issues/927][#927]]. ----- #+BEGIN_EXPORT html


















































#+END_EXPORT * 0.10.0 :PROPERTIES: :CUSTOM_ID: 0.10.0 :END: ----- ** Fixes :PROPERTIES: :CUSTOM_ID: 0-10-0-fixes :END: *** counsel-ag :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-ag :END: Fix default ag command on Windows, see [[https://github.com/abo-abo/swiper/issues/1221][#1221]]. ----- *** counsel-ag-occur :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-ag-occur :END: Don't break when search string begins with "-", see [[https://github.com/abo-abo/swiper/issues/1048][#1048]]. Fix quoting, see [[https://github.com/abo-abo/swiper/issues/1240][#1240]]. ----- *** counsel-company :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-company :END: Various fixes, see [[https://github.com/abo-abo/swiper/issues/969][#969]]. ----- *** counsel-descbinds :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-descbinds :END: Fix regex, see [[https://github.com/abo-abo/swiper/issues/1089][#1089]]. ----- *** counsel-dired-jump :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-dired-jump :END: Obey =find-program=, see [[https://github.com/abo-abo/swiper/issues/1181][#1181]]. ----- *** counsel-find-file :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-find-file :END: Fix ~C-y~ when pasting a file path. Fix magic slash regression, see [[https://github.com/abo-abo/swiper/issues/1027][#1027]]. Don't quote regex for =initial-input=. Don't bind =find-file-hook= if not necessary, see [[https://github.com/abo-abo/swiper/issues/627][#627]], [[https://github.com/abo-abo/swiper/issues/1118][#1118]]. Fix completion of relative directories, see [[https://github.com/abo-abo/swiper/issues/1055][#1055]]. Make sure foo/ directory goes before foo-bar/ directory, see [[https://github.com/abo-abo/swiper/issues/1315][#1315]]. ----- *** counsel-find-file-occur :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-find-file-occur :END: Use =xargs -d '\n'=, see [[https://github.com/abo-abo/swiper/issues/1323][#1323]]. ----- *** counsel-git-grep :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-git-grep :END: Fix error on 24.5, see [[https://github.com/abo-abo/swiper/issues/1107][#1107]]. Fix for Windows, see [[https://github.com/abo-abo/swiper/issues/1176][#1176]]. ----- *** counsel-git-grep-occur :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-git-grep-occur :END: Fix output with negative pattern, see [[https://github.com/abo-abo/swiper/issues/1173][#1173]]. Fix bug, see [[https://github.com/abo-abo/swiper/issues/1225][#1225]]. ----- *** counsel-git-grep-recenter :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-git-grep-recenter :END: Fix warning, see [[https://github.com/abo-abo/swiper/issues/1097][#1097]]. ----- *** counsel-git-grep-transformer :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-git-grep-transformer :END: Optimize text props, see [[https://github.com/abo-abo/swiper/issues/1264][#1264]]. ----- *** counsel-git-log :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-git-log :END: Ignore blank candidates, see [[https://github.com/abo-abo/swiper/issues/1122][#1122]]. ----- *** counsel-git-occur :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-git-occur :END: Fix regex, see [[https://github.com/abo-abo/swiper/issues/1299][#1299]]. ----- *** counsel-grep-base-command :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-grep-base-command :END: Add "--", see [[https://github.com/abo-abo/swiper/issues/1266][#1266]]. ----- *** counsel-imenu :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-imenu :END: Add trailing space to prompt, see [[https://github.com/abo-abo/swiper/issues/1245][#1245]]. ----- *** counsel-irony :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-irony :END: Various fixes, see [[https://github.com/abo-abo/swiper/issues/1018][#1018]]. ----- *** counsel-locate-action-extern :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-locate-action-extern :END: Handle cygwin, see [[https://github.com/abo-abo/swiper/issues/1314][#1314]]. ----- *** counsel-M-x :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-m-x :END: Don't rebuild cache on every call, see [[https://github.com/abo-abo/swiper/issues/1085][#1085]]. Add own history, see [[https://github.com/abo-abo/swiper/issues/1185][#1185]]. ----- *** counsel-package :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-package :END: Fix package removal, see [[https://github.com/abo-abo/swiper/issues/970][#970]]. ----- *** counsel-set-variable :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-set-variable :END: Handle defcustom with multiple entries, see [[https://github.com/abo-abo/swiper/issues/960][#960]]. ----- *** counsel-shell-history :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-shell-history :END: Work around =ring-elements=, see [[https://github.com/abo-abo/swiper/issues/1148][#1148]]. ----- *** counsel-unquote-regex-parens :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-counsel-unquote-regex-parens :END: Handle cons arg, see [[https://github.com/abo-abo/swiper/issues/1322][#1322]]. ----- *** ivy :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy :END: Various fixes, see [[https://github.com/abo-abo/swiper/issues/997][#997]], [[https://github.com/abo-abo/swiper/issues/1327][#1327]], [[https://github.com/abo-abo/swiper/issues/1334][#1334]], [[https://github.com/abo-abo/swiper/issues/1336][#1336]]. Don't add =:preselect= to collection, see [[https://github.com/abo-abo/swiper/issues/1017][#1017]]. Avoid setting ivy window as minibuffer, see [[https://github.com/abo-abo/swiper/issues/1051][#1051]], [[https://github.com/abo-abo/swiper/issues/1053][#1053]]. Init index with 0, see [[https://github.com/abo-abo/swiper/issues/1080][#1080]]. =ivy-initial-inputs-alist= should use =:caller= first, see [[https://github.com/abo-abo/swiper/issues/1068][#1068]]. =ivy--sorted-files= should always use predicate, see [[https://github.com/abo-abo/swiper/issues/1121][#1121]]. Simplify re-builder / highlight, see [[https://github.com/abo-abo/swiper/issues/1147][#1147]]. Ensure bookmarks are loaded, see [[https://github.com/abo-abo/swiper/issues/1160][#1160]]. Fix arrows not working for =ivy--regex-ignore-order=, see [[https://github.com/abo-abo/swiper/issues/1159][#1159]]. Fix ~C-M-j~ for =ivy-completion-in-region-action=, see [[https://github.com/abo-abo/swiper/issues/1178][#1178]]. Correct spelling, see [[https://github.com/abo-abo/swiper/issues/1179][#1179]]. Ensure action and display transformer are called from initial buffer. See [[https://github.com/abo-abo/swiper/issues/1182][#1182]]. Allow "!" and space to be escaped in =ivy--regex-ignore-order=. See [[https://github.com/abo-abo/swiper/issues/976][#976]]. Call =ivy-overlay-cleanup= only when needed, see [[https://github.com/abo-abo/swiper/issues/1211][#1211]]. Don't require prompt to end in ": ", see [[https://github.com/abo-abo/swiper/issues/1207][#1207]]. Remove empty string from collection, see [[https://github.com/abo-abo/swiper/issues/1230][#1230]], [[https://github.com/abo-abo/swiper/issues/1236][#1236]]. Fix "/sudo::" in current dir, see [[https://github.com/abo-abo/swiper/issues/1232][#1232]]. Fix prefix issue, see [[https://github.com/abo-abo/swiper/issues/1244][#1244]]. Update prompt even if there are no candidates. See [[https://github.com/abo-abo/swiper/issues/1183][#1183]]. Also check =this-command= for sorting, see [[https://github.com/abo-abo/swiper/issues/1294][#1294]]. ----- *** ivy-add-actions :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-add-actions :END: Delete action duplicates by key, see [[https://github.com/abo-abo/swiper/issues/1296][#1296]]. ----- *** ivy-avy :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-avy :END: Fix logic when scrolled, see [[https://github.com/abo-abo/swiper/issues/1004][#1004]]. Exit silently, see [[https://github.com/abo-abo/swiper/issues/1073][#1073]]. Select correct candidate when using display transformer, see [[https://github.com/abo-abo/swiper/issues/1255][#1255]]. ----- *** ivy-completing-read-handlers-alist :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-completing-read-handlers-alist :END: Add some entries, and tests. See [[https://github.com/abo-abo/swiper/issues/1049][#1049]]. ----- *** ivy-completion-in-region :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-completion-in-region :END: Fix length bug, see [[https://github.com/abo-abo/swiper/issues/1251][#1251]]. Fix sole match case, see [[https://github.com/abo-abo/swiper/issues/1252][#1252]]. ----- *** ivy-display-function-overlay :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-display-function-overlay :END: Fall back when there's no space, see [[https://github.com/abo-abo/swiper/issues/1136][#1136]]. Fall back when there's no vertical space, see [[https://github.com/abo-abo/swiper/issues/1136][#1136]]. Check for point-min, see [[https://github.com/abo-abo/swiper/issues/1267][#1267]]. Fix for =org-indent-mode=. ----- *** ivy-ffap-url-functions :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-ffap-url-functions :END: Check if git is present, see [[https://github.com/abo-abo/swiper/issues/1216][#1216]]. ----- *** ivy-format-function-arrow :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-format-function-arrow :END: Fixup, see [[https://github.com/abo-abo/swiper/issues/1004][#1004]]. ----- *** ivy-initial-inputs-alist :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-initial-inputs-alist :END: Fix entry for man, see [[https://github.com/abo-abo/swiper/issues/1226][#1226]]. ----- *** ivy-occur :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-occur :END: Fix double =pop-to-buffer= issue, see [[https://github.com/abo-abo/swiper/issues/1284][#1284]]. Don't fail if buffer was killed. Fix regex passed to grep, see [[https://github.com/abo-abo/swiper/issues/1299][#1299]]. Use =setq-local=, see [[https://github.com/abo-abo/swiper/issues/1318][#1318]]. Add =ivy--dirname-p=, see [[https://github.com/abo-abo/swiper/issues/1317][#1317]]. ----- *** ivy-partial :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-partial :END: Fix interaction with case-folding, see [[https://github.com/abo-abo/swiper/issues/1019][#1019]], [[https://github.com/abo-abo/swiper/issues/1021][#1021]]. Fix downcase for non-string, see [[https://github.com/abo-abo/swiper/issues/1024][#1024]], [[https://github.com/abo-abo/swiper/issues/1036][#1036]]. ----- *** ivy-previous-line-or-history :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-previous-line-or-history :END: Should not insert the last history item unless the currently-selected completion candidate is the first in the list, otherwise it's impossible to navigate back up with successive applications of this command, see [[https://github.com/abo-abo/swiper/issues/1137][#1137]]. ----- *** ivy-re-builders-alist :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-re-builders-alist :END: Extend docstring, see [[https://github.com/abo-abo/swiper/issues/1308][#1308]]. ----- *** ivy-with-r :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-ivy-with-r :END: Use =with-output-to-string=, see [[https://github.com/abo-abo/swiper/issues/1300][#1300]]. ----- *** swiper :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-swiper :END: Protect against =match-beginning= / =match-end= not integerp. See [[https://github.com/abo-abo/swiper/issues/1188][#1188]], [[https://github.com/abo-abo/swiper/issues/1192][#1192]]. ----- *** swiper--init :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-swiper--init :END: Turn off =reveal-mode= for the duration, see [[https://github.com/abo-abo/swiper/issues/1312][#1312]]. ----- *** swiper-all-buffer-p :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-swiper-all-buffer-p :END: Various mode additions. ----- *** swiper-font-lock-exclude :PROPERTIES: :CUSTOM_ID: 0-10-0-fx-swiper-font-lock-exclude :END: Add treemacs-mode, see [[https://github.com/abo-abo/swiper/issues/1212][#1212]]. Add magit-popup-mode, see [[https://github.com/abo-abo/swiper/issues/1274][#1274]]. Add adoc-mode, see [[https://github.com/abo-abo/swiper/issues/1275][#1275]]. Add bbdb-mode, see [[https://github.com/abo-abo/swiper/issues/1276][#1276]]. ----- ** New Features :PROPERTIES: :CUSTOM_ID: 0-10-0-new-features :END: *** counsel :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel :END: When an external program output is used, first check if the program is installed, see [[https://github.com/abo-abo/swiper/issues/1076][#1076]]. Allow async commands on Tramp buffers, see [[https://github.com/abo-abo/swiper/issues/1229][#1229]], [[https://github.com/abo-abo/swiper/issues/1233][#1233]]. ----- *** counsel-async-filter-update-time :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-async-filter-update-time :END: Configure async delay. See [[https://github.com/abo-abo/swiper/issues/1149][#1149]]. ----- *** counsel-async-ignore-re :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-async-ignore-re :END: New defcustom. See [[https://github.com/abo-abo/swiper/issues/1122][#1122]]. ----- *** counsel-describe-function :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-describe-function :END: Highlight interactive functions, see [[https://github.com/abo-abo/swiper/issues/981][#981]], [[https://github.com/abo-abo/swiper/issues/982][#982]]. ----- *** counsel-describe-function-function :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-describe-function-function :END: Customize =counsel-describe-function=. Useful for https://github.com/Wilfred/helpful. See [[https://github.com/abo-abo/swiper/issues/1321][#1321]]. ----- *** counsel-describe-function-preselect :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-describe-function-preselect :END: Customize which symbol will be initial for =counsel-describe-function=, see [[https://github.com/abo-abo/swiper/issues/1088][#1088]], [[https://github.com/abo-abo/swiper/issues/1330][#1330]]. ----- *** counsel-describe-variable :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-describe-variable :END: Highlight custom variables, see [[https://github.com/abo-abo/swiper/issues/980][#980]], [[https://github.com/abo-abo/swiper/issues/982][#982]]. ----- *** counsel-find-file-ignore-regexp :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-find-file-ignore-regexp :END: Offer =completion-ignored-extensions=, see [[https://github.com/abo-abo/swiper/issues/1092][#1092]]. ----- *** counsel-fzf-dir-function :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-fzf-dir-function :END: Allow to customize fzf work directory. ----- *** counsel-git :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-git :END: Add optional =initial-input=, see [[https://github.com/abo-abo/swiper/issues/1074][#1074]]. ----- *** counsel-git-grep-skip-counting-lines :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-git-grep-skip-counting-lines :END: New defcustom, see [[https://github.com/abo-abo/swiper/issues/524][#524]], [[https://github.com/abo-abo/swiper/issues/1042][#1042]]. ----- *** counsel-git-log-split-string-re :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-git-log-split-string-re :END: New defcustom. See [[https://github.com/abo-abo/swiper/issues/1122][#1122]]. ----- *** counsel-grep-or-swiper :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-grep-or-swiper :END: Don't attempt to save readonly files, see [[https://github.com/abo-abo/swiper/issues/999][#999]]. Prevent opening an already opened file, see [[https://github.com/abo-abo/swiper/issues/1001][#1001]]. Improve logic, see [[https://github.com/abo-abo/swiper/issues/1290][#1290]]. More uniform interface, see [[https://github.com/abo-abo/swiper/issues/1313][#1313]]. ----- *** counsel-imenu-map :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-imenu-map :END: Allows to use ~C-l~ to recenter. See [[https://github.com/abo-abo/swiper/issues/1180][#1180]]. ----- *** counsel-linux-app :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-linux-app :END: Various improvements, see [[https://github.com/abo-abo/swiper/issues/897][#897]], [[https://github.com/abo-abo/swiper/issues/959][#959]]. Press ~M-o d~ to open the desktop file, see [[https://github.com/abo-abo/swiper/issues/897][#897]]. ----- *** counsel-mark-ring :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-mark-ring :END: Sort by location, see [[https://github.com/abo-abo/swiper/issues/1006][#1006]]. Fixes, see [[https://github.com/abo-abo/swiper/issues/1328][#1328]], [[https://github.com/abo-abo/swiper/issues/1329][#1329]]. ----- *** counsel-mode-map :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-mode-map :END: Add =counsel-faces=, see [[https://github.com/abo-abo/swiper/issues/1259][#1259]]. ----- *** counsel-rg :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-rg :END: Limit results to 150 columns, see [[https://github.com/abo-abo/swiper/issues/988][#988]]. Never use color results, see [[https://github.com/abo-abo/swiper/issues/1060][#1060]]. Search whole Git repository, not the current directory. ----- *** counsel-unicode-char :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-unicode-char :END: Show candidates in order, see [[https://github.com/abo-abo/swiper/issues/1003][#1003]]. Adapt to =ucs-names= being a hash table in emacs-26, see [[https://github.com/abo-abo/swiper/issues/1223][#1223]]. Make lazy, see [[https://github.com/abo-abo/swiper/issues/1204][#1204]]. ----- *** counsel-up-directory :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-up-directory :END: If the current directory is remote and it's not possible to go up any further, make the remote prefix editable. See [[https://github.com/abo-abo/swiper/issues/1242][#1242]], [[https://github.com/abo-abo/swiper/issues/1227][#1227]]. ----- *** counsel-url-expand :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-url-expand :END: Added to =ivy-ffap-url-functions= by default. Customize =counsel-url-expansions= to be able to browse various links with ~C-x C-f M-n~. See [[https://github.com/abo-abo/swiper/issues/1164][#1164]]. ----- *** counsel-yank-pop :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-counsel-yank-pop :END: Don't restrict to 3 chars or more, see [[https://github.com/abo-abo/swiper/issues/973][#973]]. Press ~M-o d~ to remove an item from the kill ring. Ignore empty candidates, see [[https://github.com/abo-abo/swiper/issues/1043][#1043]]. ----- *** ivy :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy :END: **** Add ~i~ and ~w~ as global actions :PROPERTIES: :CUSTOM_ID: add-~i~-and-~w~-as-global-actions :END: In any completion session: - 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. **** Bind ~~ and ~~ :PROPERTIES: :CUSTOM_ID: bind-~~-and-~~ :END: **** Add CONTRIBUTING.org :PROPERTIES: :CUSTOM_ID: add-contributing.org :END: See [[https://github.com/abo-abo/swiper/issues/1260][#1260]], [[https://github.com/abo-abo/swiper/issues/1332][#1332]]. ----- *** ivy-auto-select-single-candidate :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-auto-select-single-candidate :END: Off by default. When on, and there's only one candidate, use it automatically without a completion session. ----- *** ivy-backward-delete-char :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-backward-delete-char :END: Preselect last dir, see [[https://github.com/abo-abo/swiper/issues/1257][#1257]]. ----- *** ivy-completion-in-region :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-completion-in-region :END: Use =:initial-input= and =:unwind=. Previously, Ivy's "prefixing" and "perfect match" index logic was messed up for completion-in-region. The reason being is that the initial prefix was never passed to Ivy: instead, the collection was pre-filtered on the prefix and a "new" completion session didn't know about it. ----- *** ivy-dispatching-done-hydra :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-dispatching-done-hydra :END: Quit with ~C-g~, see [[https://github.com/abo-abo/swiper/issues/922][#922]]. Break hint into columns, see [[https://github.com/abo-abo/swiper/issues/953][#953]]. ----- *** ivy-magic-slash-non-match-action :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-magic-slash-non-match-action :END: Customize what ~/~ does when completing file names, see [[https://github.com/abo-abo/swiper/issues/998][#998]], [[https://github.com/abo-abo/swiper/issues/1009][#1009]]. ----- *** ivy-occur :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-occur :END: When completing file names, =counsel-cmd-to-dired= is called, resulting in a Dired buffer. ----- *** ivy-occur-mode-map :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-occur-mode-map :END: Bind ~R~ to =read-only-mode=, see [[https://github.com/abo-abo/swiper/issues/1273][#1273]]. ----- *** ivy-read :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-read :END: Add new argument =def=, see [[https://github.com/abo-abo/swiper/issues/1047][#1047]], [[https://github.com/abo-abo/swiper/issues/1049][#1049]], [[https://github.com/abo-abo/swiper/issues/1052][#1052]], [[https://github.com/abo-abo/swiper/issues/1112][#1112]]. ----- *** ivy-read-action :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-read-action :END: Allow to quit with ~ESC~ for better work with evil, see [[https://github.com/abo-abo/swiper/issues/952][#952]]. ----- *** ivy-rotate-preferred-builders :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-rotate-preferred-builders :END: Bound to ~C-o m~. Customize with =ivy-preferred-re-builders=. See [[https://github.com/abo-abo/swiper/issues/1093][#1093]], [[https://github.com/abo-abo/swiper/issues/1094][#1094]]. ----- *** ivy-switch-buffer :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-switch-buffer :END: Compose faces better, see [[https://github.com/abo-abo/swiper/issues/992][#992]]. ~M-o f~ will call =counsel-find-file= from current directory, see [[https://github.com/abo-abo/swiper/issues/1298][#1298]], [[https://github.com/abo-abo/swiper/issues/1295][#1295]]. ----- *** ivy-truncate-lines :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-truncate-lines :END: New defcustom. See [[https://github.com/abo-abo/swiper/issues/1110][#1110]]. ----- *** ivy-use-selectable-prompt :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-ivy-use-selectable-prompt :END: When non-nil, make the prompt line selectable like a candidate. Calling =ivy-done= or =ivy-alt-done= on a selected prompt forwards to =ivy-immediate-done=, thus exiting with the current user input instead of the selected candidate. See [[https://github.com/abo-abo/swiper/issues/1059][#1059]], [[https://github.com/abo-abo/swiper/issues/1063][#1063]], [[https://github.com/abo-abo/swiper/issues/1090][#1090]]. ----- *** swiper-query-replace :PROPERTIES: :CUSTOM_ID: 0-10-0-nf-swiper-query-replace :END: Disable read-only for the duration, see [[https://github.com/abo-abo/swiper/issues/1273][#1273]]. ----- ** New Commands :PROPERTIES: :CUSTOM_ID: 0-10-0-new-commands :END: *** counsel-ack :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-ack :END: Like =counsel-ag=, but with [[https://beyondgrep.com/][ack]]. See [[https://github.com/abo-abo/swiper/issues/1075][#1075]]. ----- *** counsel-apropos :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-apropos :END: Completion for [[https://www.gnu.org/software/emacs/manual/html_node/emacs/Apropos.html][apropos]], see [[https://github.com/abo-abo/swiper/issues/1014][#1014]]. ----- *** counsel-file-register :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-file-register :END: Completion for [[https://www.gnu.org/software/emacs/manual/html_node/emacs/File-Registers.html][file registers]], see [[https://github.com/abo-abo/swiper/issues/1057][#1057]], [[https://github.com/abo-abo/swiper/issues/1066][#1066]]. ----- *** counsel-fzf :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-fzf :END: Completion for [[https://github.com/junegunn/fzf][fzf]]. See [[https://github.com/abo-abo/swiper/issues/1151][#1151]], [[https://github.com/abo-abo/swiper/issues/1263][#1263]]. ----- *** counsel-git-change-worktree :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-git-change-worktree :END: Completion for [[https://git-scm.com/docs/git-worktree][git-worktree]]. See [[https://github.com/abo-abo/swiper/issues/989][#989]], [[https://github.com/abo-abo/swiper/issues/1114][#1114]], [[https://github.com/abo-abo/swiper/issues/1115][#1115]]. ----- *** counsel-git-checkout :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-git-checkout :END: Completion for [[https://git-scm.com/docs/git-checkout][git-checkout]]. See [[https://github.com/abo-abo/swiper/issues/1187][#1187]]. ----- *** counsel-minibuffer-history :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-minibuffer-history :END: Supersedes =counsel-expression-history= and =counsel-shell-command-history=. See [[https://github.com/abo-abo/swiper/issues/1237][#1237]]. ----- *** counsel-org-capture :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-org-capture :END: Completion for [[https://orgmode.org/manual/Capture.html][org-capture]]. See [[https://github.com/abo-abo/swiper/issues/1320][#1320]]. ----- *** counsel-org-file :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-org-file :END: Browse all attachments for the current Org file. ----- *** counsel-org-goto :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-org-goto :END: Completion for Org headings. See [[https://github.com/abo-abo/swiper/issues/1005][#1005]], [[https://github.com/abo-abo/swiper/issues/1008][#1008]], [[https://github.com/abo-abo/swiper/issues/1011][#1011]], [[https://github.com/abo-abo/swiper/issues/1012][#1012]], [[https://github.com/abo-abo/swiper/issues/1013][#1013]]. ----- *** counsel-org-goto-all :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-org-goto-all :END: Completion for Org headings in all open buffers. See [[https://github.com/abo-abo/swiper/issues/1005][#1005]]. ----- *** counsel-switch-to-shell-buffer :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-counsel-switch-to-shell-buffer :END: Switch to a shell buffer, or create one. See [[https://github.com/abo-abo/swiper/issues/990][#990]]. ----- *** ivy-occur-delete-candidate :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-ivy-occur-delete-candidate :END: Bound to ~C-d~ in =ivy-occur-mode=. Allows a sort of a todo-list workflow. ----- *** ivy-switch-view :PROPERTIES: :CUSTOM_ID: 0-10-0-nc-ivy-switch-view :END: Switch to one of the window views stored by =ivy-push-view=. You can use it separately from =ivy-switch-buffer= now. See [[https://github.com/abo-abo/swiper/issues/929][#929]], [[https://github.com/abo-abo/swiper/issues/1109][#1109]]. ----- * 0.11.0 :PROPERTIES: :CUSTOM_ID: 0.11.0 :END: ----- ** Fixes :PROPERTIES: :CUSTOM_ID: 0-11-0-fixes :END: *** colir-blend-face-foreground :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-colir-blend-face-foreground :END: Add hack for =:foreground=. Related to =ansi-color-apply=. See [[https://github.com/abo-abo/swiper/issues/1293][#1293]]. ----- *** counsel :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel :END: Make process sentinels more robust. See [[https://github.com/abo-abo/swiper/issues/1483][#1483]]. Fix behavior on remote. See [[https://github.com/abo-abo/swiper/issues/1522][#1522]]. Extend unquote-regex-parens tests. See [[https://github.com/abo-abo/swiper/issues/1704][#1704]], [[https://github.com/abo-abo/swiper/issues/1708][#1708]], [[https://github.com/abo-abo/swiper/issues/1863][#1863]]. Use =counsel-async-split-string-re= more. See [[https://github.com/abo-abo/swiper/issues/1384][#1384]], [[https://github.com/abo-abo/swiper/issues/1778][#1778]]. Use =start-file-process= for =counsel--async-command=. See [[https://github.com/abo-abo/swiper/issues/1821][#1821]]. =counsel--async-filter= should write candidates only in the minibuffer. See [[https://github.com/abo-abo/swiper/issues/1772][#1772]], [[https://github.com/abo-abo/swiper/issues/1837][#1837]], [[https://github.com/abo-abo/swiper/issues/1857][#1857]]. Robustify grep-like ivy-occur. See [[https://github.com/abo-abo/swiper/issues/1845][#1845]], [[https://github.com/abo-abo/swiper/issues/1800][#1800]], [[https://github.com/abo-abo/swiper/issues/1835][#1835]]. ----- *** counsel-ag :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-ag :END: Allow no space before "--" when specifying extra args. See [[https://github.com/abo-abo/swiper/issues/1498][#1498]]. Allow to override the minimum search term length. See [[https://github.com/abo-abo/swiper/issues/1780][#1780]]. Fix "./" issue. See [[https://github.com/abo-abo/swiper/issues/1841][#1841]]. ----- *** counsel-bookmark :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-bookmark :END: Specify =:history=. See [[https://github.com/abo-abo/swiper/issues/1698][#1698]]. ----- *** counsel-colors-list :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-colors-list :END: Improve the display of the current candidate. See [[https://github.com/abo-abo/swiper/issues/921][#921]], [[https://github.com/abo-abo/swiper/issues/1436][#1436]]. Protect against invalid input. See [[https://github.com/abo-abo/swiper/issues/1854][#1854]]. ----- *** counsel-company :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-company :END: Unwind with =company-abort=. See [[https://github.com/abo-abo/swiper/issues/1793][#1793]]. ----- *** counsel-describe-face :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-describe-face :END: Add caller. See [[https://github.com/abo-abo/swiper/issues/1619][#1619]]. ----- *** counsel-describe-function :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-describe-function :END: Fix erroring. See [[https://github.com/abo-abo/swiper/issues/1647][#1647]], [[https://github.com/abo-abo/swiper/issues/1649][#1649]]. Describe also unbound but documented function symbols. See [[https://github.com/abo-abo/swiper/issues/1707][#1707]]. ----- *** counsel-find-file :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-find-file :END: Don't treat URLs as dirs. See [[https://github.com/abo-abo/swiper/issues/1398][#1398]]. Allow use of "$" in dirs. See [[https://github.com/abo-abo/swiper/issues/1316][#1316]]. Fix for ignore-order. See [[https://github.com/abo-abo/swiper/issues/1466][#1466]]. Fix file expansion. See [[https://github.com/abo-abo/swiper/issues/1494][#1494]]. Fix =ivy-resume= not working when the current candidate was a directory. See [[https://github.com/abo-abo/swiper/issues/1508][#1508]]. =counsel-find-file-mkdir-action= should use =ivy-text=. See [[https://github.com/abo-abo/swiper/issues/1513][#1513]]. Fix dir or file logic error. See [[https://github.com/abo-abo/swiper/issues/1103][#1103]], [[https://github.com/abo-abo/swiper/issues/1623][#1623]]. Fix inability to create a file. See [[https://github.com/abo-abo/swiper/issues/1623][#1623]]. Fix issue of minibuffer height 1. See [[https://github.com/abo-abo/swiper/issues/1667][#1667]]. Remove the change to =post-command-hook= by ESS. See [[https://github.com/abo-abo/swiper/issues/1660][#1660]]. Update minibuffer state after =counsel-find-file-delete=. See [[https://github.com/abo-abo/swiper/issues/1726][#1726]]. Fix for partial match of TRAMP method. Fix Emacs26 regression when completing TRAMP methods. See [[https://github.com/abo-abo/swiper/issues/1733][#1733]]. Fix Emacs25/26 compat for =ivy--cd=. Avoid TRAMP related errors in ZIP files. See [[https://github.com/abo-abo/swiper/issues/1797][#1797]]. ----- *** counsel-find-library :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-find-library :END: Check if dirs in =load-path= exist. See [[https://github.com/abo-abo/swiper/issues/1720][#1720]]. ----- *** counsel-fzf :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-fzf :END: Add quotes to =counsel-fzf-cmd=. See [[https://github.com/abo-abo/swiper/issues/1544][#1544]]. Remove 2nd prompt colon. See [[https://github.com/abo-abo/swiper/issues/1768][#1768]]. ----- *** counsel-git-grep :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-git-grep :END: Fix conflicting directories in two ivy-occur buffers. See [[https://github.com/abo-abo/swiper/issues/1392][#1392]]. Run count in base directory. See [[https://github.com/abo-abo/swiper/issues/1402][#1402]]. Rely on =du -s= for repo size. See [[https://github.com/abo-abo/swiper/issues/1402][#1402]]. Ignore =du= errors. See [[https://github.com/abo-abo/swiper/issues/1502][#1502]]. Run =du= only on =.git=. Call =du= directly. See [[https://github.com/abo-abo/swiper/issues/1502][#1502]], [[https://github.com/abo-abo/swiper/issues/1827][#1827]]. ----- *** counsel-grep :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-grep :END: Reject file-less buffers. See [[https://github.com/abo-abo/swiper/issues/1343][#1343]]. Don't pass too long lines as =:preselect=. See [[https://github.com/abo-abo/swiper/issues/1644][#1644]]. Obey current matcher. See [[https://github.com/abo-abo/swiper/issues/1801][#1801]]. ----- *** counsel-list-processes :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-list-processes :END: Don't mess up the current buffer with a header line. ----- *** counsel-locate :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-locate :END: Fix for es.exe. Fixes [[https://github.com/abo-abo/swiper/issues/1633][#1633]]. Fix =xdg-open= on Ubuntu. See [[https://github.com/abo-abo/swiper/issues/863][#863]], [[https://github.com/abo-abo/swiper/issues/1401][#1401]], [[https://github.com/abo-abo/swiper/issues/1759][#1759]]. Simplify =xdg-open= call. See [[https://github.com/abo-abo/swiper/issues/1537][#1537]], [[https://github.com/abo-abo/swiper/issues/1759][#1759]], [[https://github.com/abo-abo/swiper/issues/1760][#1760]]. ----- *** counsel-locate-action-extern :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-locate-action-extern :END: Use =start-process-shell-command=. See [[https://github.com/abo-abo/swiper/issues/1401][#1401]]. ----- *** counsel-minibuffer-history :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-minibuffer-history :END: Add =delete-dups=. See [[https://github.com/abo-abo/swiper/issues/1358][#1358]]. ----- *** counsel-M-x :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-m-x :END: Prefer "" over "C-x 6". See [[https://github.com/abo-abo/swiper/issues/1534][#1534]]. Add =counsel-key-binding= face. See [[https://github.com/abo-abo/swiper/issues/1548][#1548]]. ----- *** counsel-org-agenda-headlines :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-org-agenda-headlines :END: Require org. See [[https://github.com/abo-abo/swiper/issues/1642][#1642]]. ----- *** counsel-org-capture :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-org-capture :END: Don't overlook templates contexts. See [[https://github.com/abo-abo/swiper/issues/1669][#1669]]. ----- *** counsel-org-files :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-org-files :END: Support =org-attach-directory= variable. See [[https://github.com/abo-abo/swiper/issues/1340][#1340]]. Use =org-attach= API. See [[https://github.com/abo-abo/swiper/issues/1345][#1345]]. ----- *** counsel-org-goto :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-org-goto :END: Increase org-goto/org-agenda-headlines UI consistency. See [[https://github.com/abo-abo/swiper/issues/1324][#1324]]. Support older Org. See [[https://github.com/abo-abo/swiper/issues/1422][#1422]], 1431. ----- *** counsel-org-tag :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-org-tag :END: Fix for Org 9. See [[https://github.com/abo-abo/swiper/issues/1654][#1654]], [[https://github.com/abo-abo/swiper/issues/1656][#1656]], [[https://github.com/abo-abo/swiper/issues/1896][#1896]]. No need to bind =org-setting-tags=. See [[https://github.com/abo-abo/swiper/issues/1656][#1656]]. ----- *** counsel-outline :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-outline :END: Only look for outline regexp at bol. See [[https://github.com/abo-abo/swiper/issues/1681][#1681]]. ----- *** counsel-rg :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-rg :END: Store command persistently. See [[https://github.com/abo-abo/swiper/issues/1474][#1474]]. ----- *** counsel-switch-to-shell-buffer :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-switch-to-shell-buffer :END: Various improvements. See [[https://github.com/abo-abo/swiper/issues/1570][#1570]]. ----- *** counsel-unicode-char :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-unicode-char :END: Optimize. See [[https://github.com/abo-abo/swiper/issues/1704][#1704]]. ----- *** counsel-yank-pop :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-counsel-yank-pop :END: Liken to =yank-pop=. Respects =kill-ring-yank-pointer=. See [[https://github.com/abo-abo/swiper/issues/1190][#1190]], [[https://github.com/abo-abo/swiper/issues/1356][#1356]]. Interoperate better with =kill-ring=. See [[https://github.com/abo-abo/swiper/issues/1133][#1133]], [[https://github.com/abo-abo/swiper/issues/1360][#1360]]. Save =window-start= to avoid recentering of the buffer. See [[https://github.com/abo-abo/swiper/issues/1370][#1370]]. Make position more robust. See [[https://github.com/abo-abo/swiper/issues/1420][#1420]]. Make it work in read-only buffers. See [[https://github.com/abo-abo/swiper/issues/1523][#1523]]. Work with =interprogram-paste-function=. See [[https://github.com/abo-abo/swiper/issues/1523][#1523]]. ----- *** docs :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-docs :END: Fixed typos. See [[https://github.com/abo-abo/swiper/issues/1405][#1405]], [[https://github.com/abo-abo/swiper/issues/1412][#1412]], [[https://github.com/abo-abo/swiper/issues/1448][#1448]], [[https://github.com/abo-abo/swiper/issues/1477][#1477]], [[https://github.com/abo-abo/swiper/issues/1483][#1483]], [[https://github.com/abo-abo/swiper/issues/1519][#1519]], [[https://github.com/abo-abo/swiper/issues/1521][#1521]], [[https://github.com/abo-abo/swiper/issues/1535][#1535]], [[https://github.com/abo-abo/swiper/issues/1539][#1539]], [[https://github.com/abo-abo/swiper/issues/1540][#1540]], [[https://github.com/abo-abo/swiper/issues/1575][#1575]], [[https://github.com/abo-abo/swiper/issues/1602][#1602]], [[https://github.com/abo-abo/swiper/issues/1612][#1612]], [[https://github.com/abo-abo/swiper/issues/1620][#1620]], [[https://github.com/abo-abo/swiper/issues/1624][#1624]], [[https://github.com/abo-abo/swiper/issues/1625][#1625]], [[https://github.com/abo-abo/swiper/issues/1627][#1627]], [[https://github.com/abo-abo/swiper/issues/1629][#1629]], [[https://github.com/abo-abo/swiper/issues/1630][#1630]], [[https://github.com/abo-abo/swiper/issues/1672][#1672]], [[https://github.com/abo-abo/swiper/issues/1675][#1675]], [[https://github.com/abo-abo/swiper/issues/1677][#1677]], [[https://github.com/abo-abo/swiper/issues/1678][#1678]], [[https://github.com/abo-abo/swiper/issues/1682][#1682]], [[https://github.com/abo-abo/swiper/issues/1684][#1684]], [[https://github.com/abo-abo/swiper/issues/1700][#1700]], [[https://github.com/abo-abo/swiper/issues/1710][#1710]], [[https://github.com/abo-abo/swiper/issues/1715][#1715]], [[https://github.com/abo-abo/swiper/issues/1717][#1717]], [[https://github.com/abo-abo/swiper/issues/1738][#1738]], [[https://github.com/abo-abo/swiper/issues/1804][#1804]], [[https://github.com/abo-abo/swiper/issues/1816][#1816]], 1794, [[https://github.com/abo-abo/swiper/issues/1817][#1817]], [[https://github.com/abo-abo/swiper/issues/1828][#1828]], [[https://github.com/abo-abo/swiper/issues/1849][#1849]]. ----- *** ivy :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy :END: Disable =ivy-auto-select-single-candidate= for user@host entry. See [[https://github.com/abo-abo/swiper/issues/1326][#1326]], [[https://github.com/abo-abo/swiper/issues/1338][#1338]]. Handle =ivy-state-buffer= getting killed. See [[https://github.com/abo-abo/swiper/issues/572][#572]]. Correct highlighting for negation, e.g. =counsel-M-x= "vi mo!ew". See [[https://github.com/abo-abo/swiper/issues/1418][#1418]]. Fold case during index recomputation. See [[https://github.com/abo-abo/swiper/issues/1447][#1447]], [[https://github.com/abo-abo/swiper/issues/1449][#1449]]. Simplify string splitting logic. See [[https://github.com/abo-abo/swiper/issues/1453][#1453]]. Fix =:preselect= getting deselected with new input. When there's new input, and it still matches =:preselect=, the current candidate should not change. Handle fallback in =ivy--sort-function=. See [[https://github.com/abo-abo/swiper/issues/1561][#1561]], [[https://github.com/abo-abo/swiper/issues/1565][#1565]], [[https://github.com/abo-abo/swiper/issues/1567][#1567]]. =ivy--sort-function= should handle anonymous fns. See [[https://github.com/abo-abo/swiper/issues/1574][#1574]]. Use =ivy-sort-max-size= for collection functions. See [[https://github.com/abo-abo/swiper/issues/1592][#1592]]. Use =copy-sequence= when sorting to avoid corrupting external data. See [[https://github.com/abo-abo/swiper/issues/1617][#1617]]. Default =:caller= to =this-command=. See [[https://github.com/abo-abo/swiper/issues/1297][#1297]], [[https://github.com/abo-abo/swiper/issues/1606][#1606]], [[https://github.com/abo-abo/swiper/issues/1619][#1619]], [[https://github.com/abo-abo/swiper/issues/1621][#1621]]. =ivy-call= should restore previous buffer. See [[https://github.com/abo-abo/swiper/issues/1607][#1607]]. =ivy--insert-prompt= should use =ivy-add-face-text-property= for compat. See [[https://github.com/abo-abo/swiper/issues/1634][#1634]]. Use compat shim for =add-face-text-property=. See [[https://github.com/abo-abo/swiper/issues/1635][#1635]]. Move =colir= require to top-level to improve performance. See [[https://github.com/abo-abo/swiper/issues/1571][#1571]]. Fix =:predicate= not getting applied. See [[https://github.com/abo-abo/swiper/issues/1158][#1158]]. Drop preselected candidate after input. See [[https://github.com/abo-abo/swiper/issues/1563][#1563]], [[https://github.com/abo-abo/swiper/issues/1573][#1573]]. Fix =ivy-left-pad= when there's horizontal scroll. Fix =ivy-state-collection= alist idx not in sync. See [[https://github.com/abo-abo/swiper/issues/1680][#1680]]. Support :annotation-function of completion-extra-properties. See [[https://github.com/abo-abo/swiper/issues/1489][#1489]]. Fix for alists that require sorting. See [[https://github.com/abo-abo/swiper/issues/1687][#1687]]. Fontify completion annotations. See [[https://github.com/abo-abo/swiper/issues/1489][#1489]], [[https://github.com/abo-abo/swiper/issues/1702][#1702]]. Filter sorted alist. See [[https://github.com/abo-abo/swiper/issues/1705][#1705]]. Avoid modifying alist collection. See [[https://github.com/abo-abo/swiper/issues/1706][#1706]]. Use =string-match-p= where applicable. See [[https://github.com/abo-abo/swiper/issues/1517][#1517]]. Strip text properties from returned alist candidate. See [[https://github.com/abo-abo/swiper/issues/1706][#1706]], [[https://github.com/abo-abo/swiper/issues/1724][#1724]]. Don't trigger =ivy--magic-file-slash= from ~TAB~. See [[https://github.com/abo-abo/swiper/issues/1716][#1716]]. Fix for terminals. See [[https://github.com/abo-abo/swiper/issues/199][#199]], [[https://github.com/abo-abo/swiper/issues/1528][#1528]], [[https://github.com/abo-abo/swiper/issues/1728][#1728]]. Fix overlay interacting with org-mode src blocks. See [[https://github.com/abo-abo/swiper/issues/1732][#1732]]. Don't restore buffer after action. See [[https://github.com/abo-abo/swiper/issues/1766][#1766]], [[https://github.com/abo-abo/swiper/issues/1767][#1767]]. Remove webjump =completing-read= handler. See [[https://github.com/abo-abo/swiper/issues/1802][#1802]], [[https://github.com/abo-abo/swiper/issues/1049][#1049]]. Use =ivy-truncate-lines= also for non-graphical Emacs. See [[https://github.com/abo-abo/swiper/issues/1809][#1809]]. For non-graphical Emacs set resize-mini-windows to 'grow-only. See [[https://github.com/abo-abo/swiper/issues/1809][#1809]]. Fix minibuffer truncation and resizing. See [[https://github.com/abo-abo/swiper/issues/1811][#1811]]. Work around void =Info-complete-menu-buffer=. See [[https://github.com/abo-abo/swiper/issues/1814][#1814]]. Handle Windows path separator for =ivy-occur=. See [[https://github.com/abo-abo/swiper/issues/1817][#1817]]. Don't switch to a killed buffer for =ivy-occur-press=. See [[https://github.com/abo-abo/swiper/issues/1834][#1834]], [[https://github.com/abo-abo/swiper/issues/1842][#1842]]. Improve performance =ivy--select-occur-buffer= by avoiding =pop-to-buffer=. Use =all-completions= and add test. See [[https://github.com/abo-abo/swiper/issues/1832][#1832]]. Do not let ivy virtual buffer faces creep into the recentf file. See [[https://github.com/abo-abo/swiper/issues/1898][#1898]]. ----- *** ivy-completing-read :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy-completing-read :END: Add compat for non-string defaults. See [[https://github.com/abo-abo/swiper/issues/1526][#1526]], [[https://github.com/abo-abo/swiper/issues/1810][#1810]]. Simplify. See [[https://github.com/abo-abo/swiper/issues/1606][#1606]]. ----- *** ivy-completion-in-region :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy-completion-in-region :END: Expand =(s-c-t-s)= appropriately. See [[https://github.com/abo-abo/swiper/issues/1361][#1361]]. Allow sorting. See [[https://github.com/abo-abo/swiper/issues/1432][#1432]]. Don't apply predicate twice. See [[https://github.com/abo-abo/swiper/issues/1648][#1648]]. ----- *** ivy--kill-buffer-action :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy--kill-buffer-action :END: Remove virtual buffers from =recentf-list=. See [[https://github.com/abo-abo/swiper/issues/1888][#1888]]. -----*** ivy--magic-file-slash Misc fixes. See [[https://github.com/abo-abo/swiper/issues/1831][#1831]]. ----- *** ivy--occur-insert-lines :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy--occur-insert-lines :END: Fix incorrect regexp. See [[https://github.com/abo-abo/swiper/issues/1846][#1846]]. Speed up regex from 5s to 0.01s for 4000 cands. ----- *** ivy-occur-press :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy-occur-press :END: Don't hard-code =display-buffer=. See [[https://github.com/abo-abo/swiper/issues/1838][#1838]], [[https://github.com/abo-abo/swiper/issues/1865][#1865]]. ----- *** ivy-overlay-show-after :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy-overlay-show-after :END: Don't inherit existing face. See [[https://github.com/abo-abo/swiper/issues/1488][#1488]], [[https://github.com/abo-abo/swiper/issues/1547][#1547]], [[https://github.com/abo-abo/swiper/issues/1016][#1016]], 1520, [[https://github.com/abo-abo/swiper/issues/1808][#1808]], [[https://github.com/abo-abo/swiper/issues/1825][#1825]]. ----- *** ivy-partial :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy-partial :END: Can change current dir when completing files. See [[https://github.com/abo-abo/swiper/issues/86][#86]]. ----- *** ivy--regex-fuzzy :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy--regex-fuzzy :END: Regexp-quote chars to improve performance for searches like ".env.foo". See [[https://github.com/abo-abo/swiper/issues/1435][#1435]]. Generalize. Fix =ivy-occur= highlighting. See [[https://github.com/abo-abo/swiper/issues/1795][#1795]]. Optimize regex "(a).*?(b)" -> "(a)[^b]*(b)". See [[https://github.com/abo-abo/swiper/issues/848][#848]]. ----- *** ivy--regex-ignore-order :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy--regex-ignore-order :END: Improve handling of invalid regexes. See [[https://github.com/abo-abo/swiper/issues/1545][#1545]]. ----- *** ivy--regex-plus :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy--regex-plus :END: Update and add test for "add path!" input. See [[https://github.com/abo-abo/swiper/issues/1418][#1418]]. Search "defun \([^ ]+\)" now works. ----- *** ivy-rotate-preferred-builders :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy-rotate-preferred-builders :END: Update in the documentation. See [[https://github.com/abo-abo/swiper/issues/1376][#1376]]. ----- *** ivy-string< :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy-string< :END: Handle heterogeneous args. See [[https://github.com/abo-abo/swiper/issues/1743][#1743]], [[https://github.com/abo-abo/swiper/issues/1744][#1744]]. ----- *** ivy-thing-at-point :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-ivy-thing-at-point :END: Prevent error when =url-handler-mode= is on. See [[https://github.com/abo-abo/swiper/issues/1446][#1446]]. Strip text properties. See [[https://github.com/abo-abo/swiper/issues/1594][#1594]]. ----- *** swiper :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-swiper :END: Fix history modified on each char. Fix history duplicate. See [[https://github.com/abo-abo/swiper/issues/1391][#1391]]. Don't replace tabs with spaces (prevents =wgrep= from working correctly). See [[https://github.com/abo-abo/swiper/issues/1468][#1468]]. Allow =scroll-other-window= use. See [[https://github.com/abo-abo/swiper/issues/1504][#1504]]. Replace obsolete =isearch-lazy-highlight-face=. See [[https://github.com/abo-abo/swiper/issues/1591][#1591]]. Highlight multiple regexps correctly. See [[https://github.com/abo-abo/swiper/issues/654][#654]], [[https://github.com/abo-abo/swiper/issues/1550][#1550]], [[https://github.com/abo-abo/swiper/issues/1551][#1551]], [[https://github.com/abo-abo/swiper/issues/1587][#1587]], [[https://github.com/abo-abo/swiper/issues/1600][#1600]]. Fix when re-builder returns list. See [[https://github.com/abo-abo/swiper/issues/1692][#1692]]. Add =inhibit-field-text-motion=. See [[https://github.com/abo-abo/swiper/issues/1713][#1713]]. Fix incorrect jump to first match. See [[https://github.com/abo-abo/swiper/issues/1791][#1791]]. ----- *** swiper-avy :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-swiper-avy :END: Fix when there's scroll. See [[https://github.com/abo-abo/swiper/issues/1541][#1541]]. Fix off-by-one. See [[https://github.com/abo-abo/swiper/issues/1775][#1775]]. Fix for =ivy-format-function-arrow=. See [[https://github.com/abo-abo/swiper/issues/1885][#1885]]. ----- *** swiper-multi :PROPERTIES: :CUSTOM_ID: 0-11-0-fx-swiper-multi :END: Add text property =buffer= to candidates. See [[https://github.com/abo-abo/swiper/issues/1491][#1491]], [[https://github.com/abo-abo/swiper/issues/1492][#1492]]. ----- ** New Features :PROPERTIES: :CUSTOM_ID: 0-11-0-new-features :END: *** counsel :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel :END: New var =counsel-more-chars-alist= to customize per-function the minimum amount of chars. See [[https://github.com/abo-abo/swiper/issues/1663][#1663]]. New face =counsel-variable-documentation=, =counsel-application-name=, =counsel-outline-1=, ..., =counsel-outline-8=, =counsel-outline-default=. See [[https://github.com/abo-abo/swiper/issues/1847][#1847]]. ----- *** counsel-bookmark :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-bookmark :END: Add two actions. See [[https://github.com/abo-abo/swiper/issues/948][#948]], [[https://github.com/abo-abo/swiper/issues/1385][#1385]]. ----- *** counsel-dired-jump :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-dired-jump :END: New var =counsel-dired-jump-args=. See [[https://github.com/abo-abo/swiper/issues/1889][#1889]]. -----*** counsel-find-file New var =counsel-find-file-occur-cmd=. Use it to customize what ~C-c C-o~ calls. See [[https://github.com/abo-abo/swiper/issues/1299][#1299]], [[https://github.com/abo-abo/swiper/issues/1351][#1351]], [[https://github.com/abo-abo/swiper/issues/1441][#1441]]. New var =counsel-preselect-current-file=. When non-nil, preselect the current file in the list of candidates. See [[https://github.com/abo-abo/swiper/issues/1363][#1363]]. Bind ~C-M-y~ to =counsel-yank-directory=. Useful when you want to edit part of the directory name. See [[https://github.com/abo-abo/swiper/issues/1333][#1333]]. Bind ~M-o d~ to new action =counsel-find-file-mkdir-action=. See [[https://github.com/abo-abo/swiper/issues/1471][#1471]]. Bind ~M-o f~ to =find-file-other-frame=. See [[https://github.com/abo-abo/swiper/issues/1510][#1510]]. Bind ~M-o k~ to =counsel-find-file-delete=. See [[https://github.com/abo-abo/swiper/issues/1671][#1671]]. Bind ~M-o m~ to =counsel-find-file-move=. See [[https://github.com/abo-abo/swiper/issues/1671][#1671]]. =counsel-find-file-occur-use-find= defaults to t on Linux. See [[https://github.com/abo-abo/swiper/issues/1686][#1686]]. Make =counsel-find-file-delete= ask for confirmation. See [[https://github.com/abo-abo/swiper/issues/1774][#1774]]. Make =counsel-find-file-delete= clean up buffers. See [[https://github.com/abo-abo/swiper/issues/1779][#1779]]. ----- *** counsel-find-file-jump :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-find-file-jump :END: New var =counsel-file-jump-args=. See [[https://github.com/abo-abo/swiper/issues/1889][#1889]]. ----- *** counsel-fzf :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-fzf :END: Support =universal-argument=. See [[https://github.com/abo-abo/swiper/issues/1281][#1281]], [[https://github.com/abo-abo/swiper/issues/1279][#1279]]. ----- *** counsel-git-grep :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-git-grep :END: Also works on remote. See [[https://github.com/abo-abo/swiper/issues/1463][#1463]]. New var =counsel--git-grep-count-threshold=. See [[https://github.com/abo-abo/swiper/issues/1470][#1470]]. Add "-I" to =counsel-git-grep-cmd-default= to ignore binaries. Files are marked as binary in =.gitattributes=. Calculate the repo size correctly for submodules. See [[https://github.com/abo-abo/swiper/issues/1558][#1558]]. ----- *** counsel-grep :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-grep :END: New var =counsel-grep-map=. Bind =swiper-avy= there. See [[https://github.com/abo-abo/swiper/issues/1711][#1711]]. ----- *** counsel-imenu :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-imenu :END: Show functions as "Functions: func". See [[https://github.com/abo-abo/swiper/issues/775][#775]]. ----- *** counsel-linux-app :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-linux-app :END: Add =~/.local/share/applications/=. See [[https://github.com/abo-abo/swiper/issues/1390][#1390]]. Add guixsd's application directory. See [[https://github.com/abo-abo/swiper/issues/1476][#1476]]. Call =gtk-launch= asynchronously. See [[https://github.com/abo-abo/swiper/issues/1537][#1537]]. Add dir for flatpack. See [[https://github.com/abo-abo/swiper/issues/1754][#1754]]. Ignore non-readable desktop files. See [[https://github.com/abo-abo/swiper/issues/1757][#1757]]. Show also hidden desktop files with prefix arg. Add XDG defaults. See [[https://github.com/abo-abo/swiper/issues/1851][#1851]]. Truncate Exec to 45 chars. ----- *** counsel-locate :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-locate :END: Bind ~M-o r~ to =counsel-find-file-as-root=. See [[https://github.com/abo-abo/swiper/issues/1676][#1676]]. Works over TRAMP. See [[https://github.com/abo-abo/swiper/issues/1735][#1735]]. ----- *** counsel-mode :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-mode :END: Add =counsel-bookmark=. See [[https://github.com/abo-abo/swiper/issues/1381][#1381]]. Add more info to the docs. See [[https://github.com/abo-abo/swiper/issues/1400][#1400]]. Add =counsel-apropos=. See [[https://github.com/abo-abo/swiper/issues/1582][#1582]]. Display local keymap in mode doc. See [[https://github.com/abo-abo/swiper/issues/1718][#1718]]. ----- *** counsel-M-x :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-m-x :END: Support =amx= in addition to =smex=. See [[https://github.com/abo-abo/swiper/issues/1557][#1557]], [[https://github.com/abo-abo/swiper/issues/1585][#1585]], [[https://github.com/abo-abo/swiper/issues/1613][#1613]], [[https://github.com/abo-abo/swiper/issues/1615][#1615]]. Filter obsolete commands. See [[https://github.com/abo-abo/swiper/issues/1843][#1843]], [[https://github.com/abo-abo/swiper/issues/1844][#1844]]. ----- *** counsel-rg :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-rg :END: Read extra args when =current-prefix-arg= is given. See [[https://github.com/abo-abo/swiper/issues/851][#851]]. Use smart case "-S" in =counsel-rg-base-command=. See [[https://github.com/abo-abo/swiper/issues/1393][#1393]]. To look for e.g. "map}", input "map\}". See [[https://github.com/abo-abo/swiper/issues/1566][#1566]]. Interactively specify switches. Example in this repo: "-g*.el -- require", "-g*.org -- require", "-g!*.el -- require". See [[https://github.com/abo-abo/swiper/issues/1408][#1408]], [[https://github.com/abo-abo/swiper/issues/1512][#1512]], [[https://github.com/abo-abo/swiper/issues/1688][#1688]], [[https://github.com/abo-abo/swiper/issues/1559][#1559]]. ----- *** counsel-rhythmbox :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-rhythmbox :END: Refresh list with prefix arg. Re-launch rhythmbox if not playing. Bind ~M-o s~ to =counsel-rhythmbox-toggle-shuffle=. ----- *** counsel-semantic :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-semantic :END: Add pretty formatting, expand types recursively. See [[https://github.com/abo-abo/swiper/issues/702][#702]]. ----- *** counsel-set-variable :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-set-variable :END: Can also be used non-interactively. See [[https://github.com/abo-abo/swiper/issues/1409][#1409]]. Show docstring if =lv= is available. See [[https://github.com/abo-abo/swiper/issues/1595][#1595]]. Add prefix arg behavior: filter out vars without custom-type properties. See [[https://github.com/abo-abo/swiper/issues/1643][#1643]]. ----- *** counsel-yank-pop :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-counsel-yank-pop :END: New var =counsel-yank-pop-height=: configure =ivy-height=. See [[https://github.com/abo-abo/swiper/issues/1365][#1365]]. New var =counsel-yank-pop-filter=: All elements of =kill-ring= for which this function returns nil will be permanently deleted from =kill-ring= before completion. See [[https://github.com/abo-abo/swiper/issues/1356][#1356]], [[https://github.com/abo-abo/swiper/issues/1367][#1367]]. New var =counsel-yank-pop-preselect-last=: customize whether preselect the last kill by default. See [[https://github.com/abo-abo/swiper/issues/1371][#1371]], [[https://github.com/abo-abo/swiper/issues/1373][#1373]], [[https://github.com/abo-abo/swiper/issues/1374][#1374]]. New var =counsel-yank-pop-after-point=. See [[https://github.com/abo-abo/swiper/issues/884][#884]], [[https://github.com/abo-abo/swiper/issues/1761][#1761]], [[https://github.com/abo-abo/swiper/issues/1762][#1762]]. New face =ivy-separator=. See [[https://github.com/abo-abo/swiper/issues/1815][#1815]]. ----- *** ivy :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-ivy :END: Interpret mouse events in the minibuffer managed by ivy. You can now scroll with the mouse wheel and click to select a candidate. See [[https://github.com/abo-abo/swiper/issues/1278][#1278]], [[https://github.com/abo-abo/swiper/issues/1279][#1279]]. Support multi-character action keys. See [[https://github.com/abo-abo/swiper/issues/1394][#1394]]. =ivy-display-functions-alist= can use t key as fallback. See [[https://github.com/abo-abo/swiper/issues/1443][#1443]]. New var =ivy-display-functions-props= useful when customizing display functions. See [[https://github.com/abo-abo/swiper/issues/1443][#1443]]. New cmd =ivy-kill-whole-line= overrides =kill-whole-line= in the minibuffer. See [[https://github.com/abo-abo/swiper/issues/1456][#1456]]. New option for =ivy-virtual-abbreviate=: ='abbreviate=. See [[https://github.com/abo-abo/swiper/issues/1460][#1460]]. New var =ivy-height-alist=. Customize =ivy-height= per-command. See [[https://github.com/abo-abo/swiper/issues/1531][#1531]], [[https://github.com/abo-abo/swiper/issues/1722][#1722]]. New var =ivy-completing-read-dynamic-collection=. See [[https://github.com/abo-abo/swiper/issues/1524][#1524]]. New cmd =ivy-yank-char= similar to =isearch-yank-char=. See [[https://github.com/abo-abo/swiper/issues/1588][#1588]]. New cmd =ivy-yank-symbol=. See [[https://github.com/abo-abo/swiper/issues/1604][#1604]]. Bind ~~ to =ivy-forward-char=. See [[https://github.com/abo-abo/swiper/issues/1622][#1622]]. New var =ivy-highlight-grep-commands= that lists counsel grep-like commands. See [[https://github.com/abo-abo/swiper/issues/1661][#1661]]. New face =ivy-modified-outside-buffer=. See [[https://github.com/abo-abo/swiper/issues/1742][#1742]], [[https://github.com/abo-abo/swiper/issues/1745][#1745]]. Propertize matches in =ivy-occur= buffers. See [[https://github.com/abo-abo/swiper/issues/1795][#1795]]. =ivy-immediate-done= with empty input will return the default. See [[https://github.com/abo-abo/swiper/issues/1170][#1170]], [[https://github.com/abo-abo/swiper/issues/1719][#1719]]. =ivy-read= argument =prompt= is no longer a format string. Use only =ivy-count-format= to add/remove candidate count. See [[https://github.com/abo-abo/swiper/issues/1350][#1350]]. New face =ivy-grep-info= and =ivy-grep-line-number=. See [[https://github.com/abo-abo/swiper/issues/1839][#1839]], [[https://github.com/abo-abo/swiper/issues/1840][#1840]]. New face =ivy-org=, =ivy-completions-annotations=. See [[https://github.com/abo-abo/swiper/issues/1847][#1847]]. Highlight yanked word. New face =ivy-yanked-word=. See [[https://github.com/abo-abo/swiper/issues/1581][#1581]], [[https://github.com/abo-abo/swiper/issues/1850][#1850]], [[https://github.com/abo-abo/swiper/issues/1856][#1856]], [[https://github.com/abo-abo/swiper/issues/1859][#1859]], [[https://github.com/abo-abo/swiper/issues/1861][#1861]]. New var =ivy-pulse-delay=. See [[https://github.com/abo-abo/swiper/issues/1859][#1859]]. =ivy-initial-inputs-alist= entries can be functions. See [[https://github.com/abo-abo/swiper/issues/1867][#1867]], [[https://github.com/abo-abo/swiper/issues/1868][#1868]]. New var =ivy-hooks-alist=. See [[https://github.com/abo-abo/swiper/issues/1899][#1899]]. ----- *** ivy-occur-grep-mode :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-ivy-occur-grep-mode :END: Press ~w~ for =ivy-wgrep-change-to-wgrep-mode=. See [[https://github.com/abo-abo/swiper/issues/1341][#1341]]. ----- *** ivy-occur-next-line :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-ivy-occur-next-line :END: Useful also in the original buffer. Jump to first candidate when in header. ----- *** ivy-preferred-re-builders :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-ivy-preferred-re-builders :END: Renamed from =ivy-preferred-re-builders=. ----- *** ivy-push-view :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-ivy-push-view :END: Overwrite view with prefix arg. See [[https://github.com/abo-abo/swiper/issues/1737][#1737]]. ----- *** ivy-switch-buffer :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-ivy-switch-buffer :END: Extract all actions to defuns so that they can be advised or reused. See [[https://github.com/abo-abo/swiper/issues/1490][#1490]]. ----- *** swiper :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-swiper :END: Add test to history even for ~C-g~. See [[https://github.com/abo-abo/swiper/issues/1305][#1305]]. New var =swiper-stay-on-quit=. When non-nil don't go back to search start on abort. See [[https://github.com/abo-abo/swiper/issues/1319][#1319]]. Add integration with evil s expressions. See [[https://github.com/abo-abo/swiper/issues/1406][#1406]], [[https://github.com/abo-abo/swiper/issues/1452][#1452]]. Obey =dired-isearch-filenames=. See [[https://github.com/abo-abo/swiper/issues/1415][#1415]]. Better negation highlighting. For example, in ivy.el search for "ivy len!--". See [[https://github.com/abo-abo/swiper/issues/1418][#1418]]. ----- *** swiper-all :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-swiper-all :END: Add optional =initial-input= arg. See [[https://github.com/abo-abo/swiper/issues/1375][#1375]]. ----- *** swiper-font-lock-exclude :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-swiper-font-lock-exclude :END: Add =eshell-mode=, =helpful-mode=. See [[https://github.com/abo-abo/swiper/issues/1416][#1416]]. Add =matrix-client-mode=. See [[https://github.com/abo-abo/swiper/issues/1886][#1886]]. Add =deadgrep-mode=. See [[https://github.com/abo-abo/swiper/issues/1902][#1902]]. ----- *** swiper-occur :PROPERTIES: :CUSTOM_ID: 0-11-0-nf-swiper-occur :END: Allow to capture groups from input. Example: "defvar \([a-z-]+\)" ~C-c C-o~. ----- ** New Commands :PROPERTIES: :CUSTOM_ID: 0-11-0-new-commands :END: ----- *** counsel-bookmarked-directory :PROPERTIES: :CUSTOM_ID: 0-11-0-nc-counsel-bookmarked-directory :END: Completion for bookmarked directories. See [[https://github.com/abo-abo/swiper/issues/1657][#1657]]. ----- *** counsel-down-directory :PROPERTIES: :CUSTOM_ID: 0-11-0-nc-counsel-down-directory :END: Descend into a directory for =counsel-find-file=. See [[https://github.com/abo-abo/swiper/issues/1891][#1891]]. ----- *** counsel-evil-registers :PROPERTIES: :CUSTOM_ID: 0-11-0-nc-counsel-evil-registers :END: Ivy replacement for =evil-show-registers=. See [[https://github.com/abo-abo/swiper/issues/1368][#1368]]. ----- *** counsel-ibuffer :PROPERTIES: :CUSTOM_ID: 0-11-0-nc-counsel-ibuffer :END: Completion for =ibuffer=. See [[https://github.com/abo-abo/swiper/issues/1467][#1467]], [[https://github.com/abo-abo/swiper/issues/1569][#1569]]. ----- *** counsel-org-entity :PROPERTIES: :CUSTOM_ID: 0-11-0-nc-counsel-org-entity :END: Insert an Org entity using ivy. See [[https://github.com/abo-abo/swiper/issues/1459][#1459]]. ----- *** counsel-semantic-or-imenu :PROPERTIES: :CUSTOM_ID: 0-11-0-nc-counsel-semantic-or-imenu :END: New command that uses either =counsel-semantic= or =counsel-imenu=. See [[https://github.com/abo-abo/swiper/issues/702][#702]], [[https://github.com/abo-abo/swiper/issues/1389][#1389]]. ----- *** counsel-wmctrl :PROPERTIES: :CUSTOM_ID: 0-11-0-nc-counsel-wmctrl :END: Select a desktop window with completion. ----- *** ivy-switch-buffer-kill :PROPERTIES: :CUSTOM_ID: 0-11-0-nc-ivy-switch-buffer-kill :END: New command bound to ~C-c C-k~ for =ivy-switch-buffer=. Use this to kill one or more buffers while still in the minibuffer. ----- #+BEGIN_EXPORT html


















































#+END_EXPORT * 0.12.0 :PROPERTIES: :CUSTOM_ID: 0.12.0 :END: ----- ** Fixes :PROPERTIES: :CUSTOM_ID: 0-12-0-fixes :END: ----- *** counsel-ag :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-ag :END: Don't allow newlines in wildcards when using el:ivy--regex-fuzzy. See [[https://github.com/abo-abo/swiper/issues/1907][#1907]]. ----- *** counsel-company :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-company :END: Add caller. See [[https://github.com/abo-abo/swiper/issues/2051][#2051]]. Use el:company-prefix. See [[https://github.com/abo-abo/swiper/issues/2054][#2054]], [[https://github.com/abo-abo/swiper/issues/2074][#2074]]. Don't rely on el:company-point See [[https://github.com/abo-abo/swiper/issues/2071][#2071]]. ----- *** counsel-dired-jump :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-dired-jump :END: Fix "-type d". See [[https://github.com/abo-abo/swiper/issues/1965][#1965]]. Fix for OSX. See [[https://github.com/abo-abo/swiper/issues/1990][#1990]]. ----- *** counsel-file-jump :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-file-jump :END: Fix file expansion. See [[https://github.com/abo-abo/swiper/issues/1903][#1903]]. Fix dotfiles not being shown. See [[https://github.com/abo-abo/swiper/issues/1820][#1820]]. ----- *** counsel-find-file :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-find-file :END: Add nested hidden dotfiles to el:counsel-find-file-ignore-regexp. See [[https://github.com/abo-abo/swiper/issues/1820][#1820]]. Add lockfiles to el:counsel-find-file-ignore-regexp. See [[https://github.com/abo-abo/swiper/issues/2117][#2117]]. Improve mkdir action with el:ivy-call: cd into the created directory. Improve delete action with el:ivy-call: stay in the directory. Improve copy and move actions. See [[https://github.com/abo-abo/swiper/issues/2053][#2053]]. ----- *** counsel-git-checkout :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-git-checkout :END: Quote branch names. See [[https://github.com/abo-abo/swiper/issues/1905][#1905]], [[https://github.com/abo-abo/swiper/issues/1906][#1906]]. ----- *** counsel-git-log :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-git-log :END: Change el:counsel-git-log-split-string-re. See [[https://github.com/abo-abo/swiper/issues/2129][#2129]]. Fix el:ivy-resume. See [[https://github.com/abo-abo/swiper/issues/2133][#2133]]. ----- *** counsel-locate :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-locate :END: Use a non-regex locate on BSD. See [[https://github.com/abo-abo/swiper/issues/1950][#1950]]. ----- *** counsel-org-file :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-org-file :END: Handle =ATTACH_DIR= property. Re-use el:org-attach-dir. See [[https://github.com/abo-abo/swiper/issues/2042][#2042]]. ----- *** counsel-org-goto-all :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-org-goto-all :END: Use org-mode outline settings. See [[https://github.com/abo-abo/swiper/issues/1947][#1947]]. ----- *** counsel-org-tag-agenda :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-org-tag-agenda :END: Fix due to Org 9.2.3 API change. See [[https://github.com/abo-abo/swiper/issues/1997][#1997]]. Fix el:org-version testing. See [[https://github.com/abo-abo/swiper/issues/2006][#2006]]. ----- *** counsel-package :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-package :END: Strip space from the initial input. See [[https://github.com/abo-abo/swiper/issues/1998][#1998]]. ----- *** counsel-recentf :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-recentf :END: Require match. See [[https://github.com/abo-abo/swiper/issues/2043][#2043]]. ----- *** counsel-rhythmbox :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-rhythmbox :END: Add =:require-match=. ----- *** counsel-unicode-char :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-counsel-unicode-char :END: Don't sort every time. See [[https://github.com/abo-abo/swiper/issues/1204][#1204]], [[https://github.com/abo-abo/swiper/issues/1988][#1988]]. Modify copy action to use actual result. See [[https://github.com/abo-abo/swiper/issues/2075][#2075]]. ----- *** documentation :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-documentation :END: el:ivy-initial-inputs-alist is now a defcustom. el:swiper-mc docstring. See [[https://github.com/abo-abo/swiper/issues/1879][#1879]]. Update ivy.org. See [[https://github.com/abo-abo/swiper/issues/1951][#1951]], [[https://github.com/abo-abo/swiper/issues/2046][#2046]], [[https://github.com/abo-abo/swiper/issues/2143][#2143]]. Mention el:char-fold-to-regexp. See [[https://github.com/abo-abo/swiper/issues/1977][#1977]]. Mention automatically integrated packages in ivy.org. See [[https://github.com/abo-abo/swiper/issues/1674][#1674]]. Remove outdated magit customization. See [[https://github.com/abo-abo/swiper/issues/2035][#2035]]. el:ivy-read docstring. See [[https://github.com/abo-abo/swiper/issues/2107][#2107]]. el:ivy-reverse-i-search docstring. See [[https://github.com/abo-abo/swiper/issues/2126][#2126]]. Add autoloads for various commands. See [[https://github.com/abo-abo/swiper/issues/2131][#2131]]. ----- *** ivy-avy :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-avy :END: Fix when there's a scroll. ----- *** ivy-completion-in-region :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-completion-in-region :END: Don't insert initial-input if nil. See [[https://github.com/abo-abo/swiper/issues/2086][#2086]]. ----- *** ivy-display-function-overlay :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-display-function-overlay :END: Don't assume in-buffer completion. See [[https://github.com/abo-abo/swiper/issues/2048][#2048]], [[https://github.com/abo-abo/swiper/issues/2049][#2049]]. ----- *** ivy-help :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-help :END: Set el:org-hide-emphasis-markers. Reveal all Org contents. See [[https://github.com/abo-abo/swiper/issues/2021][#2021]]. Hide Org markup locally. See [[https://github.com/abo-abo/swiper/issues/2085][#2085]]. ----- *** ivy-immediate-done :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-immediate-done :END: Improve for el:make-directory. See [[https://github.com/abo-abo/swiper/issues/1170][#1170]], [[https://github.com/abo-abo/swiper/issues/1719][#1719]], [[https://github.com/abo-abo/swiper/issues/2139][#2139]]. ----- *** ivy-insert-current :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-insert-current :END: Insert text without properties. See [[https://github.com/abo-abo/swiper/issues/2040][#2040]]. ----- *** ivy-next-history-element :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-next-history-element :END: Use el:minibuffer-default for el:dired-dwim-target. #+begin_src elisp (setq dired-dwim-target t) #+end_src Is a nice productivity boost. Except for the situation when you want to copy the file to the current directory, and a different directory is preselected instead. When this happens, you can now press ~M-n~ to select the current directory. ----- *** ivy-occur :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-occur :END: Make ivy-switch-buffer-occur work with multi-pass regex builders. See [[https://github.com/abo-abo/swiper/issues/1973][#1973]]. Make find-file-occur work with multi-pass regex builders. See [[https://github.com/abo-abo/swiper/issues/1984][#1984]]. Make grep-occur work with multi-pass regex builders. See [[https://github.com/abo-abo/swiper/issues/2033][#2033]]. Make swiper occur wgrep work for narrowed buffers. See [[https://github.com/abo-abo/swiper/issues/1848][#1848]]. Don't setq-local el:ivy--directory. See [[https://github.com/abo-abo/swiper/issues/1866][#1866]]. Don't highlight the file name part. See [[https://github.com/abo-abo/swiper/issues/2073][#2073]]. Fix missing line numbers. See [[https://github.com/abo-abo/swiper/issues/2076][#2076]]. Fix for el:counsel-find-file. See [[https://github.com/abo-abo/swiper/issues/2094][#2094]]. el:ivy-occur-revert-buffer should stay on the same line. ----- *** ivy-occur-press :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-occur-press :END: Improve when the window config was changed. ----- *** ivy-partial :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-partial :END: Works better when selecting files. See [[https://github.com/abo-abo/swiper/issues/2103][#2103]]. ----- *** ivy-previous-line-or-history :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-previous-line-or-history :END: Improve. See [[https://github.com/abo-abo/swiper/issues/2137][#2137]], [[https://github.com/abo-abo/swiper/issues/2138][#2138]], [[https://github.com/abo-abo/swiper/issues/1137][#1137]]. ----- *** ivy-read :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-read :END: Allow to override global actions per command. See [[https://github.com/abo-abo/swiper/issues/1873][#1873]]. Require TRAMP earlier so that there's completion. See [[https://github.com/abo-abo/swiper/issues/1918][#1918]]. Allow all re-builders to use el:ivy-highlight-grep-commands. See [[https://github.com/abo-abo/swiper/issues/1983][#1983]]. Improve column calculation in el:ivy-dispatching-done-hydra. Allow recursive minibuffers to use el:ivy-display-functions-alist. See [[https://github.com/abo-abo/swiper/issues/1995][#1995]]. Don't use invalid =:preselect= as a regexp. See [[https://github.com/abo-abo/swiper/issues/2002][#2002]]. Allow to select "" when prompt is selectable. See [[https://github.com/abo-abo/swiper/issues/1924][#1924]]. Fix el:all-completions returning $$. See [[https://github.com/abo-abo/swiper/issues/2012][#2012]]. Fix matcher not called on input "". See [[https://github.com/abo-abo/swiper/issues/2013][#2013]]. Fix filter for el:ivy--regex-ignore-order. See [[https://github.com/abo-abo/swiper/issues/2015][#2015]]. Don't offer virtual buffers for plain el:switch-to-buffer. See [[https://github.com/abo-abo/swiper/issues/839][#839]]. el:ivy-completion-in-region-action obeys :exit-function. Shrink ivy window after reading action. See [[https://github.com/abo-abo/swiper/issues/2079][#2079]]. Use single face for highlighting adjacent groups. See [[https://github.com/abo-abo/swiper/issues/2080][#2080]]. Use el:ivy-flx-limit more. See [[https://github.com/abo-abo/swiper/issues/2081][#2081]]. Fix el:ivy-read-action. See [[https://github.com/abo-abo/swiper/issues/2082][#2082]]. Set el:line-spacing to nil in the minibuffer. See [[https://github.com/abo-abo/swiper/issues/2118][#2118]]. ----- *** ivy-reverse-i-search :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-reverse-i-search :END: Don't bind ivy-recursive-restore to nil. See [[https://github.com/abo-abo/swiper/issues/1215][#1215]]. ----- *** ivy--sort :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy--sort :END: Higher priority for el:ivy-sort-matches-functions-alist. See [[https://github.com/abo-abo/swiper/issues/2136][#2136]]. ----- *** ivy-switch-buffer :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-switch-buffer :END: Preserve the index after kill. See [[https://github.com/abo-abo/swiper/issues/1787][#1787]], [[https://github.com/abo-abo/swiper/issues/1910][#1910]]. Fix ~M-o f~ for virtual buffers. See [[https://github.com/abo-abo/swiper/issues/2111][#2111]]. ----- *** ivy-thing-at-point :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-thing-at-point :END: Extend. See [[https://github.com/abo-abo/swiper/issues/1871][#1871]]. ----- *** ivy-use-selectable-prompt :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-ivy-use-selectable-prompt :END: Don't highlight if not needed. ----- *** swiper :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-swiper :END: Fix blinks in non-graphical Emacs. See [[https://github.com/abo-abo/swiper/issues/1921][#1921]], [[https://github.com/abo-abo/swiper/issues/1923][#1923]]. Documentation. See [[https://github.com/abo-abo/swiper/issues/643][#643]]. Don't rely on el:window-start in terminal. el:window-start and el:window-end is not reliable when in a terminal. It can be made reliable if a el:redisplay is performed, but then we get annoying blinking. See [[https://github.com/abo-abo/swiper/issues/1928][#1928]]. Add extra condition to recenter in terminal. See [[https://github.com/abo-abo/swiper/issues/2059][#2059]]. Fix overlays clean up. See [[https://github.com/abo-abo/swiper/issues/2064][#2064]]. Obey el:search-invisible. See [[https://github.com/abo-abo/swiper/issues/1739][#1739]]. Improve highlighting with el:char-fold-to-regexp. See [[https://github.com/abo-abo/swiper/issues/2124][#2124]]. Add group for faces. See [[https://github.com/abo-abo/swiper/issues/2135][#2135]]. ----- *** swiper-avy :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-swiper-avy :END: If the input is 1 char, re-highlight. See [[https://github.com/abo-abo/swiper/issues/1915][#1915]]. Warn if no input. Fix for el:swiper-background-faces. See [[https://github.com/abo-abo/swiper/issues/2019][#2019]]. Handle quit. See [[https://github.com/abo-abo/swiper/issues/2062][#2062]]. Work for el:swiper-isearch. See [[https://github.com/abo-abo/swiper/issues/2134][#2134]]. ----- *** swiper-font-lock-exclude-p :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-swiper-font-lock-exclude-p :END: Exclude el:xref--xref-buffer-mode from font-lock. See [[https://github.com/abo-abo/swiper/issues/1917][#1917]]. Try checking for non prog-mode. ----- *** swiper-multi :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-swiper-multi :END: Misc fixes. See [[https://github.com/abo-abo/swiper/issues/2101][#2101]], [[https://github.com/abo-abo/swiper/issues/2102][#2102]]. ----- *** swiper-query-replace :PROPERTIES: :CUSTOM_ID: 0-12-0-fx-swiper-query-replace :END: Fix for el:ivy--regex-ignore-order. Check for empty input. See [[https://github.com/abo-abo/swiper/issues/2066][#2066]]. ** New Features :PROPERTIES: :CUSTOM_ID: 0-12-0-new-features :END: ----- *** counsel-descbinds :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-descbinds :END: Add ~M-o x~ el:counsel-descbinds-action-exec. See [[https://github.com/abo-abo/swiper/issues/2024][#2024]]. ----- *** counsel-file-jump :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-file-jump :END: Add ~M-o d~ that opens the item in el:dired. See [[https://github.com/abo-abo/swiper/issues/2057][#2057]]. ----- *** counsel-find-file :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-find-file :END: Press ~`~ to get completion for bookmarks. This allows you to efficiently jump between recent directories. See [[https://github.com/abo-abo/swiper/issues/1956][#1956]], [[https://github.com/abo-abo/swiper/issues/1958][#1958]]. Press ~$~ to get completion for your environment variables that are directories. See [[https://github.com/abo-abo/swiper/issues/1932][#1932]], [[https://github.com/abo-abo/swiper/issues/1937][#1937]]. New action: ~M-o c~ el:counsel-find-file-copy. See [[https://github.com/abo-abo/swiper/issues/1955][#1955]]. New var el:counsel-up-directory-level that customizes ~C-DEL~. See [[https://github.com/abo-abo/swiper/issues/1096][#1096]]. New var el:counsel-find-file-extern-extensions. Allows to press ~RET~ instead of ~M-o x~ for selected file types, for which it doesn't make sense to be opened in Emacs. When on a remote, ~//~ will cd to the remote root, instead of the local root. If you want to go to the local root, use ~/ C-j~. See [[https://github.com/abo-abo/swiper/issues/1487][#1487]]. When on a remote, ~~~ will cd to the remote home, instead of the local home. If you want to go to the local home, use ~/ C-j ~~. You can also try =`=. New binding when completing file names ~C-M-y~ el:ivy-insert-current-full that obsoletes el:counsel-yank-directory. See [[https://github.com/abo-abo/swiper/issues/2092][#2092]]. You can now use ~RET~ or ~C-m~ (in place of ~C-M-j~) to create a directory, even if it matches an existing file. ----- *** counsel-git-grep :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-git-grep :END: New variable el:counsel-git-grep-cmd-function. Customize how git-grep is called based on input. ----- *** counsel-git-log :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-git-log :END: Bind ~M-o v~ el:counsel-git-log-show-commit-action to visit the item in el:magit-show-commit. See [[https://github.com/abo-abo/swiper/issues/2129][#2129]], [[https://github.com/abo-abo/swiper/issues/2148][#2148]]. ----- *** counsel-grep :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-grep :END: Add el:counsel-grep-history. See [[https://github.com/abo-abo/swiper/issues/1914][#1914]]. ----- *** counsel-grep-use-swiper-p :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-grep-use-swiper-p :END: When this function returns non-nil, el:counsel-grep-or-swiper will call el:swiper, else el:counsel-grep-or-swiper. See [[https://github.com/abo-abo/swiper/issues/1908][#1908]]. ----- *** counsel-locate :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-locate :END: Automatically call =updatedb= when your home folder is encrypted. Use el:counsel-locate-db-path to customize. ----- *** counsel-mark-ring :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-mark-ring :END: Add preview and highlight by candidate. See [[https://github.com/abo-abo/swiper/issues/2078][#2078]]. New variable el:counsel-descbinds-function. See [[https://github.com/abo-abo/swiper/issues/1876][#1876]], [[https://github.com/abo-abo/swiper/issues/2091][#2091]]. ----- *** counsel-M-x :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-m-x :END: Optionally expand aliases. For example, if =rb= is aliased to el:revert-buffer, and bound to ~C-c r~, el:counsel-M-x will show: =rb (revert-buffer) (C-c r)=. Customize with el:counsel-alias-expand, enabled by default. See [[https://github.com/abo-abo/swiper/issues/1904][#1904]]. ----- *** counsel-rg :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-rg :END: Dynamically handle look-arounds. See [[https://github.com/abo-abo/swiper/issues/1935][#1935]]. Anchor pcre lookarounds to bol. See [[https://github.com/abo-abo/swiper/issues/1976][#1976]], [[https://github.com/abo-abo/swiper/issues/1979][#1979]]. Add an example of inclusion patterns to the doc. Press ~C-x C-d~ calls el:counsel-cd that allows you to change the current directory. Add dynamic case folding. Make sure el:counsel-ag-base-command or el:counsel-rg-base-command does not include "-i": it will be added automatically based on your input and el:ivy-case-fold-search. See [[https://github.com/abo-abo/swiper/issues/1869][#1869]]. ----- *** counsel-set-variable :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-counsel-set-variable :END: Better annotations for options. If the option is e.g.: #+begin_example (const :tag "Dotfiles and Lockfiles" "\\(?:\\`\\|[/\\]\\)\\(?:[#.]\\)") #+end_example then display: #+begin_example Dotfiles and Lockfiles: \(?:\`\|[/\]\)\(?:[#.]\) #+end_example instead of: #+begin_example \\(?:\\`\\|[/\\]\\)\\(?:[#.]\\) #+end_example If the option's value is nil, but a =:tag= is present, display the option. ----- *** ivy-avy :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-ivy-avy :END: Allow to scroll with ~C-v~ and ~M-v~. ----- *** ivy-dispatching-done-hydra :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-ivy-dispatching-done-hydra :END: New variable el:ivy-dispatching-done-hydra-exit-keys. In case you bind el:ivy-dispatching-done-hydra to a custom key. ----- *** ivy-read :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-ivy-read :END: Allow to mark/unmark candidates with ~m~, ~u~, ~DEL~, ~t~. The bindings are similar to what el:dired provides. They are available in the ~C-o~ hydra. See [[https://github.com/abo-abo/swiper/issues/561][#561]]. Add =:multi-action= argument. If multiple candidates are marked and this argument is present, call it with the whole list of marked candidates, instead of calling =:action= in turn for each marked candidate. See [[https://github.com/abo-abo/swiper/issues/561][#561]], [[https://github.com/abo-abo/swiper/issues/2068][#2068]]. el:ivy-inhibit-action can be a function. This allows you to effectively override the =:action= argument to el:ivy-read. New var el:ivy-dispatching-done-idle can delay the hint by a specified amount of seconds. =:update-fn= argument can now be ='auto=. This will call =:action= each time the current candidate changes. New var el:ivy-format-functions-alist that obsoletes el:ivy-format-function. See [[https://github.com/abo-abo/swiper/issues/2083][#2083]], [[https://github.com/abo-abo/swiper/issues/2084][#2084]], [[https://github.com/abo-abo/swiper/issues/2130][#2130]]. New var el:ivy-display-functions-alist that obsoletes el:ivy-display-function. See [[https://github.com/abo-abo/swiper/issues/2089][#2089]]. Add ability to resume dynamic collections. See [[https://github.com/abo-abo/swiper/issues/1095][#1095]], [[https://github.com/abo-abo/swiper/issues/2112][#2112]]. ----- *** ivy--regex :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-ivy--regex :END: Match initial dot in the input as a literal dot. This brings much more usability, e.g. enter ".org" to switch between Org-mode files, ".el" for Elisp etc. ----- *** ivy-reverse-i-search :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-ivy-reverse-i-search :END: New binding ~C-k~ el:ivy-reverse-i-search-kill. Remove elements from history. ----- *** ivy-sort-matches-functions-alist :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-ivy-sort-matches-functions-alist :END: Sort shorter matches first for el:ivy-completion-in-region. ----- *** ivy-switch-buffer :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-ivy-switch-buffer :END: Add ~M-o x~ el:counsel-open-buffer-file-externally. See [[https://github.com/abo-abo/swiper/issues/2108][#2108]], [[https://github.com/abo-abo/swiper/issues/2115][#2115]]. Move ~C-c C-k~ el:ivy-switch-buffer-kill to ~C-k~. Fix el:ivy-push-view windows layout. See [[https://github.com/abo-abo/swiper/issues/2109][#2109]]. ----- *** swiper :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-swiper :END: New variable el:swiper-use-visual-line-p. Configure to prevent el:swiper from becoming slow in huge buffers where el:visual-line-mode is enabled. Add preview overlays. See [[https://github.com/abo-abo/swiper/issues/1948][#1948]]. ----- *** swiper-query-replace :PROPERTIES: :CUSTOM_ID: 0-12-0-nf-swiper-query-replace :END: Use el:query-replace-compile-replacement to allow using Elisp in replacements. Simply use ~M-i~ to insert and edit the suggested replacement. See [[https://github.com/abo-abo/swiper/issues/2096][#2096]]. For example, suppose in swiper.el, we want to rename: #+begin_example (defTYPE swiper- to (defTYPE ivy #+end_example where TYPE is (group, face, fun, var ...). 1. el:swiper-isearch for =(def\sw+ swiper= 2. ~M-q~ to replace and ~TAB~ to get: =\,(concat \1 " " \2)= 3. Modify it to =\,(concat \1 " ivy")= ** New Commands :PROPERTIES: :CUSTOM_ID: 0-12-0-new-commands :END: ----- *** counsel-compile :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-counsel-compile :END: Call el:compile, completing with smart suggestions. See [[https://github.com/abo-abo/swiper/issues/1941][#1941]], [[https://github.com/abo-abo/swiper/issues/1963][#1963]], [[https://github.com/abo-abo/swiper/issues/1966][#1966]], [[https://github.com/abo-abo/swiper/issues/1968][#1968]], [[https://github.com/abo-abo/swiper/issues/1972][#1972]], [[https://github.com/abo-abo/swiper/issues/2077][#2077]]. Add el:counsel-compile-env. See [[https://github.com/abo-abo/swiper/issues/2030][#2030]]. ----- *** counsel-dired :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-counsel-dired :END: Like el:counsel-find-file, but open el:dired instead. See [[https://github.com/abo-abo/swiper/issues/1993][#1993]], [[https://github.com/abo-abo/swiper/issues/1999][#1999]]. ----- *** counsel-minor :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-counsel-minor :END: Toggle minor mode. The interface is similar to el:counsel-package, you enable modes with "+mode" and disable with "-mode". See [[https://github.com/abo-abo/swiper/issues/2000][#2000]], [[https://github.com/abo-abo/swiper/issues/2070][#2070]]. ----- *** counsel-register :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-counsel-register :END: Completion for registers: buffer positions, text, rectangles, window configs, frame configs, macros etc. See [[https://github.com/abo-abo/swiper/issues/2056][#2056]]. ----- *** counsel-switch-buffer :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-counsel-switch-buffer :END: Like el:ivy-switch-buffer, but you get automatic live preview. See [[https://github.com/abo-abo/swiper/issues/1895][#1895]], [[https://github.com/abo-abo/swiper/issues/1897][#1897]], [[https://github.com/abo-abo/swiper/issues/1954][#1954]], [[https://github.com/abo-abo/swiper/issues/1971][#1971]], [[https://github.com/abo-abo/swiper/issues/1959][#1959]], [[https://github.com/abo-abo/swiper/issues/2009][#2009]], [[https://github.com/abo-abo/swiper/issues/2113][#2113]]. ----- *** counsel-switch-buffer-other-window :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-counsel-switch-buffer-other-window :END: Switch to another buffer in another window, with preview. See [[https://github.com/abo-abo/swiper/issues/2022][#2022]], [[https://github.com/abo-abo/swiper/issues/2067][#2067]]. ----- *** swiper-all-thing-at-point :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-swiper-all-thing-at-point :END: Start el:swiper-all with el:symbol-at-point as input. See [[https://github.com/abo-abo/swiper/issues/2106][#2106]]. ----- *** swiper-isearch :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-swiper-isearch :END: A faster version of el:swiper that's not line-based: - Much faster startup - When there are many matches on the same line, you can select each on individually See [[https://github.com/abo-abo/swiper/issues/1931][#1931]], [[https://github.com/abo-abo/swiper/issues/2014][#2014]], [[https://github.com/abo-abo/swiper/issues/2018][#2018]], [[https://github.com/abo-abo/swiper/issues/2029][#2029]], [[https://github.com/abo-abo/swiper/issues/2031][#2031]], [[https://github.com/abo-abo/swiper/issues/2034][#2034]], [[https://github.com/abo-abo/swiper/issues/2039][#2039]], [[https://github.com/abo-abo/swiper/issues/2058][#2058]], [[https://github.com/abo-abo/swiper/issues/2069][#2069]], [[https://github.com/abo-abo/swiper/issues/2119][#2119]], [[https://github.com/abo-abo/swiper/issues/2146][#2146]], [[https://github.com/abo-abo/swiper/issues/2151][#2151]]. New variable el:swiper-isearch-highlight-delay. Used to delay matches that are just one character by 0.2s. Usually in that time frame a second key will be added to the input. Obey el:search-default-mode. See [[https://github.com/abo-abo/swiper/issues/622][#622]], [[https://github.com/abo-abo/swiper/issues/2095][#2095]]. ----- *** swiper-isearch-thing-at-point :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-swiper-isearch-thing-at-point :END: Start el:swiper-isearch with el:symbol-at-point as input. See [[https://github.com/abo-abo/swiper/issues/2025][#2025]], [[https://github.com/abo-abo/swiper/issues/2029][#2029]]. ----- *** swiper-isearch-toggle :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-swiper-isearch-toggle :END: A two-way toggle between el:swiper and el:isearch-mode. See [[https://github.com/abo-abo/swiper/issues/2061][#2061]], [[https://github.com/abo-abo/swiper/issues/2065][#2065]]. ----- *** swiper-thing-at-point :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-swiper-thing-at-point :END: Start el:swiper with el:symbol-at-point as input. See [[https://github.com/abo-abo/swiper/issues/2027][#2027]]. ----- *** swiper-backward :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-swiper-backward :END: el:isearch-backward with an overview. See [[https://github.com/abo-abo/swiper/issues/1172][#1172]], [[https://github.com/abo-abo/swiper/issues/2132][#2132]]. ----- *** counsel-grep-or-swiper-backward :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-counsel-grep-or-swiper-backward :END: See [[https://github.com/abo-abo/swiper/issues/2132][#2132]]. ----- *** swiper-isearch-backward :PROPERTIES: :CUSTOM_ID: 0-12-0-nc-swiper-isearch-backward :END: See [[https://github.com/abo-abo/swiper/issues/2125][#2125]]. ----- * 0.13.0 :PROPERTIES: :CUSTOM_ID: 0.13.0 :END: ----- ** Fixes :PROPERTIES: :CUSTOM_ID: 0.13.0-fixes :END: ----- *** counsel--async-last-command :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel--async-last-command :END: New variable. Store the last command ran by el:counsel--async-command. ----- *** counsel--async-last-error-string :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel--async-last-error-string :END: New variable. If a command that relies on el:counsel--async-command returns non-0, store the output here. See [[https://github.com/abo-abo/swiper/issues/2160][#2160]]. ----- *** counsel-cd :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-cd :END: Fix for el:counsel-ag. See [[https://github.com/abo-abo/swiper/issues/2261][#2261]]. ----- *** counsel-compile :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-compile :END: Delete duplicates. Favor project root over el:default-directory. See [[https://github.com/abo-abo/swiper/issues/2253][#2253]]. ----- *** counsel-compile-env-pattern :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-compile-env-pattern :END: Fix regex typo. See [[https://github.com/abo-abo/swiper/issues/2193][#2193]]. ----- *** counsel-file-jump :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-file-jump :END: Use temp buffer instead of el:split-string. See [[https://github.com/abo-abo/swiper/issues/2120][#2120]]. Make el:counsel--find-return-list work with or without the "./" prefix. See [[https://github.com/abo-abo/swiper/issues/2196][#2196]]. ----- *** counsel-git-grep-action :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-git-grep-action :END: Check the result of el:re-search-forward. See [[https://github.com/abo-abo/swiper/issues/2209][#2209]]. ----- *** counsel-imenu :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-imenu :END: Work with =:update-fn 'auto=. See [[https://github.com/abo-abo/swiper/issues/2188][#2188]]. ----- *** counsel-locate-cmd-es :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-locate-cmd-es :END: Encode the command to local codepage. See [[https://github.com/abo-abo/swiper/issues/2278][#2278]]. ----- *** counsel-mark-ring :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-mark-ring :END: Refactor. See [[https://github.com/abo-abo/swiper/issues/2237][#2237]]. Add the latest mark to selection. See [[https://github.com/abo-abo/swiper/issues/2252][#2252]]. Go to actual point instead of line. See [[https://github.com/abo-abo/swiper/issues/2254][#2254]]. Fix highlight line. See [[https://github.com/abo-abo/swiper/issues/2255][#2255]]. Handle read-only strings. See [[https://github.com/abo-abo/swiper/issues/2258][#2258]], [[https://github.com/abo-abo/swiper/issues/2262][#2262]]. ----- *** counsel-M-x :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-m-x :END: Respect el:counsel-describe-function-function. See [[https://github.com/abo-abo/swiper/issues/2251][#2251]]. ----- *** counsel--py-action :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel--py-action :END: Don't auto-insert parens. See [[https://github.com/abo-abo/swiper/issues/2229][#2229]]. ----- *** counsel-rg-base-command :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-counsel-rg-base-command :END: Don't include directory on non-Windows. See [[https://github.com/abo-abo/swiper/issues/795][#795]], [[https://github.com/abo-abo/swiper/issues/2180][#2180]]. Ensure =/= is the path-separator on Windows. See [[https://github.com/abo-abo/swiper/issues/2279][#2279]]. ----- *** Documentation :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-documentation :END: =ivy.info= is not installed from GNU ELPA. See [[https://github.com/abo-abo/swiper/issues/697][#697]]. Fix typo. See [[https://github.com/abo-abo/swiper/issues/2170][#2170]]. Fix el:ivy-read docstring. See [[https://github.com/abo-abo/swiper/issues/2201][#2201]]. Add full text of licences. See [[https://github.com/abo-abo/swiper/issues/2206][#2206]]. Document the marking feature. See [[https://github.com/abo-abo/swiper/issues/2214][#2214]]. Update GFDL licence. See [[https://github.com/abo-abo/swiper/issues/2187][#2187]]. Ivy now requires at least Emacs-24.5 (released on 2015-04-10). Up from Emacs-24.1 (released 2012-06-10). ----- *** hydra-ivy :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-hydra-ivy :END: Use el:ivy-read-action-by-key. See [[https://github.com/abo-abo/swiper/issues/2239][#2239]], [[https://github.com/abo-abo/swiper/issues/2250][#2250]]. ----- *** ivy :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy :END: Lazy load el:ffap. See [[https://github.com/abo-abo/swiper/issues/2215][#2215]]. ----- *** ivy-completion-in-region :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-completion-in-region :END: Add workaround for el:package-menu-filter. See [[https://github.com/abo-abo/swiper/issues/2244][#2244]]. ----- *** ivy--directory-done :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy--directory-done :END: Handle ~/ C-j~ on remote. See [[https://github.com/abo-abo/swiper/issues/2205][#2205]]. ----- *** ivy-dispatching-done-hydra :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-dispatching-done-hydra :END: Fix for el:ivy-resume. Modify the action list non-desctructively. See [[https://github.com/abo-abo/swiper/issues/2195][#2195]]. ----- *** ivy--done :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy--done :END: Check if given a string. See [[https://github.com/abo-abo/swiper/issues/2200][#2200]]. ----- *** ivy-immediate-done :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-immediate-done :END: Add el:copy-sequence to fix el:read-directory-name. See [[https://github.com/abo-abo/swiper/issues/1170][#1170]], [[https://github.com/abo-abo/swiper/issues/2149][#2149]], [[https://github.com/abo-abo/swiper/issues/2165][#2165]]. Fix for when ~C-j~ changed cwd. See [[https://github.com/abo-abo/swiper/issues/2165][#2165]]. Fix parent dirs for el:read-directory-name. See [[https://github.com/abo-abo/swiper/issues/2165][#2165]], [[https://github.com/abo-abo/swiper/issues/2198][#2198]]. ----- *** ivy--input :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy--input :END: Fix point moving in TRAMP sessions sometimes. See [[https://github.com/abo-abo/swiper/issues/2160][#2160]]. Fix for el:ediff. See [[https://github.com/abo-abo/swiper/issues/2175][#2175]]. ----- *** ivy--magic-file-slash :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy--magic-file-slash :END: Make less aggressive. Check that the prompt is not selected before performing the ivy-magic-slash-non-match-cd-selected action. See [[https://github.com/abo-abo/swiper/issues/2240][#2240]]. ----- *** ivy-occur :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-occur :END: Set up for el:next-error. See [[https://github.com/abo-abo/swiper/issues/1354][#1354]], [[https://github.com/abo-abo/swiper/issues/2257][#2257]]. ----- *** ivy-occur-revert-buffer :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-occur-revert-buffer :END: Don't error if the el:swiper buffer was killed. ----- *** ivy-overlay-show-after :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-overlay-show-after :END: Check window height better. See [[https://github.com/abo-abo/swiper/issues/2161][#2161]]. ----- *** ivy-partial :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-partial :END: Fix trailing space issue. See [[https://github.com/abo-abo/swiper/issues/2103][#2103]]. Use el:ivy--filter in place of el:all-completions. See [[https://github.com/abo-abo/swiper/issues/2199][#2199]]. ----- *** ivy-read :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-read :END: Fix conflict with an existing el:read-key session. See [[https://github.com/abo-abo/swiper/issues/2230][#2230]]. ----- *** ivy-resume :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-resume :END: Restore use-ignore setting. See [[https://github.com/abo-abo/swiper/issues/2179][#2179]]. ----- *** ivy-yank-word :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-ivy-yank-word :END: Handle case fold. See [[https://github.com/abo-abo/swiper/issues/2194][#2194]]. ----- *** swiper :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-swiper :END: Fix overlay faces using el:ivy--regex-ignore-order. See [[https://github.com/abo-abo/swiper/issues/2162][#2162]]. Fix symbol bounds with el:char-fold-to-regexp. See [[https://github.com/abo-abo/swiper/issues/2177][#2177]]. ----- *** swiper-isearch :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-swiper-isearch :END: Improve matching. See [[https://github.com/abo-abo/swiper/issues/2154][#2154]]. Fix for el:ivy-resume. See [[https://github.com/abo-abo/swiper/issues/2153][#2153]], 2154. Make el:swiper-isearch-function work with el:ivy--regex-ignore-order. See [[https://github.com/abo-abo/swiper/issues/2155][#2155]]. Fix return value. See [[https://github.com/abo-abo/swiper/issues/2163][#2163]]. Fix regexes for el:ivy--regex-ignore-order. See [[https://github.com/abo-abo/swiper/issues/2164][#2164]]. Fix scroll on ~RET~. See [[https://github.com/abo-abo/swiper/issues/2159][#2159]]. Set el:case-fold-search. See [[https://github.com/abo-abo/swiper/issues/2226][#2226]]. ----- *** swiper-isearch-action :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-swiper-isearch-action :END: Make el:ivy-previous-line-or-history work. See [[https://github.com/abo-abo/swiper/issues/2158][#2158]]. ----- *** swiper-occur :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-swiper-occur :END: Fix for el:wgrep. See [[https://github.com/abo-abo/swiper/issues/2156][#2156]]. ----- *** swiper-query-replace :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-swiper-query-replace :END: For for "^$" search term. See [[https://github.com/abo-abo/swiper/issues/2232][#2232]]. ----- *** swiper-recenter-top-bottom :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-swiper-recenter-top-bottom :END: Now works for el:swiper-isearch. ----- *** swiper-thing-at-point :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-swiper-thing-at-point :END: Fix for el:swiper-isearch. See [[https://github.com/abo-abo/swiper/issues/2157][#2157]]. ----- *** Tests :PROPERTIES: :CUSTOM_ID: 0.13.0-fx-tests :END: Keep the test files in worktree instead of in a =test= branch. See [[https://github.com/abo-abo/swiper/issues/2187][#2187]]. Fix tests using file names on Windows. See [[https://github.com/abo-abo/swiper/issues/2217][#2217]]. ----- ** New Features :PROPERTIES: :CUSTOM_ID: 0.13.0-new-features :END: ----- *** counsel-dired :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-dired :END: Filter to directories only. See [[https://github.com/abo-abo/swiper/issues/2275][#2275]]. ----- *** counsel-dired-jump-args :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-dired-jump-args :END: The variable is now a list. See [[https://github.com/abo-abo/swiper/issues/2120][#2120]]. ----- *** counsel-file-jump-args :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-file-jump-args :END: The variable is now a list. See [[https://github.com/abo-abo/swiper/issues/2120][#2120]]. ----- *** counsel-find-file :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-find-file :END: Use =~~= to move to the local home directory from remote. Using =/ RET ~= is still an option, but more cumbersome. This also works for =/sudo::=. See [[https://github.com/abo-abo/swiper/issues/2276][#2276]]. Use el:file-name-at-point-functions. See [[https://github.com/abo-abo/swiper/issues/1446][#1446]], [[https://github.com/abo-abo/swiper/issues/2181][#2181]], [[https://github.com/abo-abo/swiper/issues/2184][#2184]]. Use el:dired-current-directory if in el:dired. See [[https://github.com/abo-abo/swiper/issues/2274][#2274]]. Bind ~M-o R~ to el:find-file-read-only. See [[https://github.com/abo-abo/swiper/issues/2236][#2236]]. ----- *** counsel-find-file-mkdir-action :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-find-file-mkdir-action :END: Make parents too. See [[https://github.com/abo-abo/swiper/issues/2178][#2178]]. ----- *** counsel-git-grep :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-git-grep :END: Use ~C-x C-d~ to switch current directory. See [[https://github.com/abo-abo/swiper/issues/2259][#2259]]. Works with el:ivy--regex-fuzzy. el:ivy-occur works as well. See [[https://github.com/abo-abo/swiper/issues/2243][#2243]]. Nicer message when no match was found. See [[https://github.com/abo-abo/swiper/issues/2265][#2265]]. ----- *** counsel-M-x :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-m-x :END: Propertize names of active modes with el:counsel-active-mode. See [[https://github.com/abo-abo/swiper/issues/2189][#2189]], [[https://github.com/abo-abo/swiper/issues/2258][#2258]]. Some commands are intended to be called only via their key binding. Make them disappear from el:counsel-M-x like this: #+begin_src elisp (put 'counsel-find-symbol 'no-counsel-M-x t) #+end_src See [[https://github.com/abo-abo/swiper/issues/2270][#2270]]. ----- *** counsel-package :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-package :END: Refresh contents automatically. ----- *** counsel-rg :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-rg :END: Ivy will add "-i" appropriately, based on el:ivy-case-fold-search-default. You should remove the "-S" flag from el:counsel-rg-base-command if you customized it. When in el:dired, operate on marked files. This also applies to ivy-occur buffers of el:counsel-find-file and el:counsel-git. ----- *** counsel-switch-buffer :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-counsel-switch-buffer :END: Add actions. See [[https://github.com/abo-abo/swiper/issues/2233][#2233]]. ----- *** ivy-configure :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-configure :END: New function to configure many things at once. Example: #+begin_src elisp (ivy-configure 'counsel-find-file :occur #'counsel-find-file-occur :display-transformer-fn #'ivy-read-file-transformer) #+end_src Instead of configuring many alists separately using the =:caller= key of el:ivy-read, configure everything together. ----- *** ivy-ffap-url-functions :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-ffap-url-functions :END: Add el:vc-git-log-view-mode. ----- *** ivy-partial :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-partial :END: Obey el:completion-cycle-threshold. See [[https://github.com/abo-abo/swiper/issues/2225][#2225]]. ----- *** ivy-partial-or-done :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-partial-or-done :END: Work with el:completion-cycle-threshold. See [[https://github.com/abo-abo/swiper/issues/2225][#2225]]. If you set this to an integer, and the amount of candidates is less than that number, pressing ~TAB~ will cycle to the next candidate. ----- *** ivy-pre-prompt-function :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-pre-prompt-function :END: When non-nil, add strings before the el:ivy-read prompt. See [[https://github.com/abo-abo/swiper/issues/2185][#2185]]. ----- *** ivy-read :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-read :END: New API for asynchronous calls. See [[https://github.com/abo-abo/swiper/issues/2263][#2263]]. To use it, pass to el:ivy-read: =:dynamic-collection t=, and a collection function that takes a user input string, starts some asynchronous process based on that input, and returns 0. The 0 return result tells Ivy that no candidates were returned; instead, el:ivy-update-candidates is used in the async callback. See el:counsel-google for a reference implementation. ----- *** ivy-read-action-function :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-read-action-function :END: New defcustom that allows you to read the action via: key, or Ivy, or Hydra. See [[https://github.com/abo-abo/swiper/issues/2176][#2176]]. ----- *** ivy-restrict-to-matches :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-restrict-to-matches :END: Work for dynamic collection. See [[https://github.com/abo-abo/swiper/issues/2168][#2168]]. ----- *** ivy-update-fns-alist :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-update-fns-alist :END: Allow to customize =:update-fn=. See [[https://github.com/abo-abo/swiper/issues/2188][#2188]]. Example: #+begin_src elisp (ivy-configure 'counsel-imenu :update-fn 'auto) #+end_src ----- *** ivy-use-virtual-buffers :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-ivy-use-virtual-buffers :END: Allow to choose between: recent files, or bookmarks, or both, or none. See [[https://github.com/abo-abo/swiper/issues/2169][#2169]], [[https://github.com/abo-abo/swiper/issues/2172][#2172]]. ----- *** swiper-goto-start-of-match :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-swiper-goto-start-of-match :END: Also works for el:counsel-grep and el:counsel-git-grep. See [[https://github.com/abo-abo/swiper/issues/2209][#2209]]. ----- *** swiper-isearch :PROPERTIES: :CUSTOM_ID: 0.13.0-nf-swiper-isearch :END: Bind ~M-o w~ to copy the current line. ----- ** New Commands :PROPERTIES: :CUSTOM_ID: 0.13.0-new-commands :END: ----- *** counsel-buffer-or-recentf :PROPERTIES: :CUSTOM_ID: 0.13.0-nc-counsel-buffer-or-recentf :END: Lists buffers visiting files (highlighted) then the recentf file list. See [[https://github.com/abo-abo/swiper/issues/2182][#2182]]. ----- *** counsel-fonts :PROPERTIES: :CUSTOM_ID: 0.13.0-nc-counsel-fonts :END: Show a list of all supported font families for a particular frame. See [[https://github.com/abo-abo/swiper/issues/2220][#2220]]. ----- *** counsel-google :PROPERTIES: :CUSTOM_ID: 0.13.0-nc-counsel-google :END: Asynchronously query the Google predictive search API. ----- *** counsel-major :PROPERTIES: :CUSTOM_ID: 0.13.0-nc-counsel-major :END: Switch el:major-mode. See [[https://github.com/abo-abo/swiper/issues/378][#378]]. ----- *** counsel-slime-repl-history :PROPERTIES: :CUSTOM_ID: 0.13.0-nc-counsel-slime-repl-history :END: Browse Slime REPL history. See [[https://github.com/abo-abo/swiper/issues/2234][#2234]]. -----