dotemacs

My Emacs configuration
git clone git://git.entf.net/dotemacs
Log | Files | Refs | LICENSE

CHANGELOG.org (20235B)


      1 #+title: consult.el - Changelog
      2 #+author: Daniel Mendler
      3 #+language: en
      4 
      5 * Version 1.4 (2024-03-08)
      6 
      7 - Bugfix: File preview: Ensure that binary files are not previewed partially.
      8   Otherwise ~pdf-view-mode~ may observe corrupted PDF files.
      9 - ~consult--async-refresh-timer~: Optimize timer reuse and efficiency. This change
     10   improves the performance of commands like ~consult-ripgrep~ for small values of
     11   ~consult-async-refresh-delay~.
     12 - ~consult-completion-in-region~: Remove ~:cycle-threshold~ and ~:completion-styles~
     13   customization options.
     14 
     15 * Version 1.3 (2024-02-23)
     16 
     17 - ~consult-bookmark-narrow~: More flexible grouping which supports multiple
     18   bookmark handlers per group.
     19 - Bugfix: Ensure that preview is always executed in a non-minibuffer window.
     20 - Bugfix: File preview: Do not preview ~hexl-mode~ buffers.
     21 - Bugfix: File preview: use ~error-message-string~ to access error string.
     22 - Bugfix: Buffer preview: Retrieve original window correctly.
     23 - Bugfix: Fix ~consult-global-mark~ for ~embark-export~.
     24 
     25 * Version 1.2 (2024-01-23)
     26 
     27 - =consult-buffer=: Bugfix. Ensure that null completion works properly.
     28 - File preview: Add indication if previewed file got truncated.
     29 
     30 * Version 1.1 (2023-12-27)
     31 
     32 - Bugfixes:
     33   + ~consult-xref~: Do not error for an empty location list.
     34   + ~consult--read~: Catch null completion if require-match is non-nil.
     35   + ~consult--multi~: Ensure that :new action is invoked on visible source.
     36 - File preview: Check for long lines when previewing files partially.
     37 - Use ~minibuffer-local-filename-syntax~ and ~read-file-name-completion-ignore-case~
     38   for directory prompt of the ~consult-grep~ and ~consult--find~ family of commands.
     39 - Remove obsolete variables ~consult-preview-max-size~ and
     40   ~consult-preview-raw-size~.
     41 
     42 * Version 1.0 (2023-12-01)
     43 
     44 - Bugfixes.
     45 - Preview large files partially. Add new customization variables
     46   =consult-preview-partial-chunk= and =consult-preview-partial-limit=. This new
     47   feature is experimental. Please report any issues you observe.
     48 - Obsoleted =consult-preview-max-size= and =consult-preview-raw-size=.
     49 - =consult-buffer-other-tab=: New command.
     50 - =consult-fd=: New command based on the fast =fd/fdfind= search utility.
     51 - =consult-outline=: New prefix argument to specify initial narrowing level.
     52 - =consult-org-heading=: Specify category =org-heading= such that Embark provides
     53   appropriate Org heading actions.
     54 - =consult-org-heading=: Add annotation.
     55 - =consult-locate=: Split input into multiple words.
     56 - Remove unreliable =consult--maybe-recenter=.
     57 - Save input history even when using =embark-export= or when aborting from a
     58   command via C-g. This change affects commands like =consult-line= and
     59   =consult-grep=.
     60 - Unify history of =consult-line=, =consult-keep-lines= and =consult-focus-lines=.
     61 
     62 * Version 0.35 (2023-07-02)
     63 
     64 - Bugfixes.
     65 - =consult--read= now accepts programmable completion tables as argument, e.g.,
     66   =completion-table-dynamic= or =completion--file-name-table=. This allows you to
     67   reuse existing completion tables to write completion commands enhanced with
     68   Consult candidate preview.
     69 - Replace =consult-preview-cursor= face with =cursor-highlight-mark=.
     70 - Change calling convention of =consult-focus-lines= and =consult-keep-lines=.
     71 - The regexps in =consult-buffer-filter= are matched case sensitively now.
     72   Similarly, the =INCLUDE= and =EXCLUDE= arguments of =consult--buffer-query= are also
     73   case sensitive.
     74 - Do not preview remote files by default, see =consult-preview-excluded-files=.
     75 - Use =consult--maybe-recenter= instead of =recenter= in =consult-after-jump-hook=.
     76 - =consult-goto-line=: Support =line:column= input.
     77 
     78 * Version 0.34 (2023-04-21)
     79 
     80 - Bugfixes.
     81 - =consult-org-heading=: Support tag inheritance.
     82 - Use pure =consult--fast-abbreviate-file-name= function to abbreviate file names
     83   in =consult-buffer= and =consult-recent-file=. This ensures that abbreviation does
     84   not access the file system (or worse remote hosts via Tramp) and is always
     85   fast. The downside is that some paths may not get abbreviated.
     86 - Introduce buffer sources =consult--source-project-buffer-hidden= and
     87   =consult--source-project-recent-file-hidden=. Set the buffer sources of
     88   =consult-project= to =consult--source-project-buffer= and
     89   =consult--source-project-recent-file= to ease customization.
     90 - =consult-buffer=: Explicitly save =window-next-buffers= and =window-prev-buffers=.
     91 - When previewing files literally (=consult-preview-raw-size=), set the multi byte
     92   flag of the previewed buffer, such that UTF-8 buffers are not garbled.
     93 - Do not create preview cursor overlay. Instead display the actual point by
     94   ensuring that =cursor-in-non-selected-windows= is set.
     95 
     96 * Version 0.33 (2023-03-11)
     97 
     98 - BREAKING: The key convention has been updated. The old key convention is not
     99   supported anymore. Keys must now be strings valid according to =key-valid-p=.
    100   This changes affects the keys =consult-narrow-key=, =consult-widen-key=,
    101   =consult-preview-key= and the =:preview-key= of sources and passed as keyword
    102   argument to =consult--read=. See the example configurations in the manual.
    103 - BREAKING: Remove the "." argument from  =consult-grep-args= and
    104   =consult-ripgrep-args=, since directories or files to search are appended by the
    105   command line builder. Take this change into account, when you use a customized
    106   version of those variables.
    107 - =consult-grep=: Add support for grep and find over multiple files or directory.
    108   If the prefix argument DIR is a single C-u, prompt for comma separated
    109   directories or files to search recursively via =completing-read-multiple=.
    110 - =consult-buffer= and =consult-isearch-history=: Align annotations dynamically
    111   depending on candidate width, instead of computing the alignment beforehand.
    112 - Add the full path as =help-echo= property to abbreviated directory paths and
    113   project names. Enable =tooltip-mode= and hover with the mouse over the
    114   abbreviated directory path to see the full path.
    115 - =consult-grep/find/etc=: Print first line of stderr output if command failed.
    116 
    117 * Version 0.32 (2023-02-06)
    118 
    119 - Bugfixes
    120 - Deprecate the old key convention. Keys must now be strings valid according to
    121   =key-valid-p=. This changes affects the keys =consult-narrow-key=,
    122   =consult-widen-key=, =consult-preview-key= and the =:preview-key= of sources and
    123   passed as keyword argument to =consult--read=. See the example configurations in
    124   the manual.
    125 - Add =consult-info= command (#634, #727).
    126 - =consult-buffer=: Always select the first candidate when narrowing (#714).
    127 - =consult-locate-args=: Remove =--existing=, which is not supported by =plocate= on
    128   Debian stable.
    129 - =consult-ripgrep-args=: Add =--search-zip= option to automatically search through
    130   compressed files. This will allow you to search Elisp files bundled with your
    131   Emacs installation. Move to an Elisp library via =find-library=, then invoke
    132   =consult-ripgrep=.
    133 - Drop obsolete =consult-apropos=. Alternatives: =describe-symbol= in combination
    134   with =embark-export=. See also =consult-info= and =consult-ripgrep= to search
    135   through info manuals and Elisp source code.
    136 - Drop obsolete =consult-multi-occur=. Alternative: Built-in =multi-occur=,
    137   =multi-occur-in-matching-buffers= or =consult-line-multi=.
    138 - Drop obsolete =consult-file-externally=. The command has been moved to Embark
    139   under the name =embark-open-externally=.
    140 
    141 * Version 0.31 (2023-01-06)
    142 
    143 - Version bump to update the Compat package dependency (29.1.0.1)
    144 
    145 * Version 0.30 (2023-01-02)
    146 
    147 - Bugfixes
    148 - Drop Selectrum support
    149 - Deprecate =consult-file-externally= in favor of =embark-open-externally=
    150 - Deprecate =consult-multi-occur=. The =multi-occur= command should be improved
    151   upstream to take advantage of =completing-read-multiple=. Consult provides the
    152   command =consult-line-multi= as an alternative.
    153 - =consult-history=: Use input as initial completion input
    154 
    155 * Version 0.29 (2022-12-03)
    156 
    157 - Bugfixes
    158 - =consult-line-multi= has been rewritten completely. The candidates are computed
    159   on demand based on the input. This reduces startup speed greatly. The command
    160   behaves like =consult-grep=, but operates on buffers instead of files.
    161 - Add =consult--source-file-register=, and make the registers available in
    162   =consult-buffer=. Registers are often used as quick access keys for files, e.g.,
    163   =(add-to-list 'register-alist '(?i file . "~/.emacs.d/init.el")))=.
    164 - Remove obsolete =consult-line-point-placement=
    165 - =consult-grep/find=: Always show directory in the prompt
    166 - Add variable =consult-yank-rotate=, =consult-yank-from-kill-ring= rotates kill ring
    167 - Emacs 29: =consult-register= supports =buffer= register type
    168 - Emacs 29: Support =outline-search-function=
    169 - Org 9.6: Support new =org-fold-core= API (both overlays and text-properties)
    170 - Support abbreviated file names in =recentf-list=, see =recentf-filename-handler=.
    171 - Deprecate =consult-apropos=
    172 
    173 * Version 0.20 (2022-10-16)
    174 
    175 - Bugfixes
    176 - Allow =consult-*-args= to be a string, or a list of strings or expressions.
    177 - Introduce face =consult-highlight-match= to highlight grep matches in the
    178   completion buffer.
    179 - Highlight full matches in =consult-line=, =consult-outline=, =consult-*grep= and
    180   =consult-flymake=.
    181 - Remove face =consult-preview-error=.
    182 - Deprecate =consult-line-point-placement= in favor of more general
    183   =consult-point-placement=, which is also used by the =consult-*grep= commands.
    184 - =consult-imenu=: Support imenu-after-jump-hook and non-default
    185   =imenu-default-goto-function=
    186 - =consult-history=: Add support for history index variables, which are updated
    187   after selection.
    188 - Deprecate support for Selectrum in favor of Vertico. If you use Selectrum
    189   consider switching to Vertico, Icomplete, Mct or default completion.
    190 
    191 * Version 0.19 (2022-09-09)
    192 
    193 - Bugfixes
    194 - Allow =consult-flymake= to work across all buffers in a project
    195 - Remove deprecated =consult-completing-read-multiple=
    196 - =consult-grep/git-grep/ripgrep=: Add =--fixed-strings= support
    197 - =consult-grep=: Respect =grep-find-ignored-directories/files=
    198 - =consult-org-heading=: Add tags to completion candidates
    199 - Add =consult-preview-excluded-files=
    200 - =consult-themes=: Support regexps
    201 
    202 * Version 0.18 (2022-05-25)
    203 
    204 - Bugfixes
    205 - Removed obsolete =consult-recent-file-filter= and =consult-preview-excluded-hooks=
    206 - Deprecate =consult-completing-read-multiple=. See #567 for details.
    207 - Add =consult--source-modified-buffer=
    208 
    209 * Version 0.17 (2022-04-22)
    210 
    211 - Bugfixes
    212 - Drop Emacs 26 support.
    213 - =consult-goto-line=: Use =goto-line-history= on Emacs 28.
    214 - =consult-customize=: Evaluate settings at runtime. This change makes it possible
    215   to use =thing-at-point= to overwrite the =:initial= and =:add-history= settings.
    216 - Rename =consult--read-config= to =consult--customize-alist= and change the format.
    217   The configuration is an alist. The car must be a command symbol. The cdr must
    218   be a plist of keys and expressions, where the expressions evaluate to the
    219   actual configuration values.
    220 - Mode hooks in previewed file buffers are delayed. The buffer is only fully
    221   initialized when leaving the minibuffer for recursive editing.
    222 - Increase =consult-preview-raw-size=.
    223 - Replace =consult-preview-excluded-hooks= by =consult-preview-allowed-hooks=.
    224 - Add =consult-preview-variables= to bind variables for file preview.
    225 - BREAKING API CHANGE of =consult--read=, =consult--prompt=, =consult--multi=: The
    226   state function protocol changed. The function gets notified of more completion
    227   state changes. See the docstring of =consult--with-preview= for details.
    228 - BREAKING API CHANGE of =consult--read=: The lookup function protocol changed.
    229   The function must now accept four or more arguments.
    230 - Remove unused =consult-preview-map=.
    231 - Remove unnecessary =consult-recent-file-filter=. Use =recentf-exclude= instead.
    232 - =consult--multi= sources can have a =:new= function to create candidates.
    233   When narrowed to a source, new candidates will be created by calling the
    234   respective =:new= function.
    235 - =consult--multi= returns =:match= information. =:match= can be nil, t, or new,
    236   depending on if the candidate does not exist, exists or has been created.
    237 - =consult-locate= treats the input literally to take advantage of the db index.
    238 
    239 * Version 0.16 (2022-03-08)
    240 
    241 - Bugfixes
    242 - Deprecate =consult-project-root-function= in favor of =consult-project-function=.
    243 - Preconfigure =consult-project-function= with a default function based
    244   on project.el.
    245 - Add =consult-project-buffer=, a variant of =consult-buffer= restricted to the
    246   current project.
    247 - Add =consult-register-prefix= option.
    248 - Introduced a generic and extensible =consult-register= implementation.
    249 - Lazy marker creation in =consult-line/outline= (performance improvements)
    250 
    251 * Version 0.15 (2022-01-31)
    252 
    253 - Bugfixes
    254 - =consult-xref=: Prettify the group titles, use =xref--group-name-for-display=
    255   if available.
    256 - =consult-focus-lines=: Thanks to @jdtsmith, the command is much faster and
    257   actually useable in large files.
    258 - Added Mct integration, auto refreshing of asynchronous Consult commands.
    259 
    260 * Version 0.14 (2021-12-31)
    261 
    262 - Bugfixes
    263 - Add =consult-recent-file-filter=
    264 - Rename =consult--source-(project-)file= to =consult-source-(project-)recent-file=
    265 - =consult-keep-lines= makes read-only buffers temporarily writable if confirmed
    266 
    267 * Version 0.13 (2021-11-12)
    268 
    269 - Bugfixes
    270 - =consult-register=: Add support for file register values.
    271 - Rename =consult-isearch= to =consult-isearch-history=. The command is a history
    272   browsing command and not a replacement for Isearch.
    273 - =consult-grep= support -[ABC] grep options
    274 - Add =consult-grep-context= face
    275 
    276 * Version 0.12 (2021-10-11)
    277 
    278 - Bugfixes
    279 - Removed obsolete =consult-project-imenu= and =consult-x-command= variables
    280 - =consult-grep=: Use ~--null~ argument to support file names with colons
    281 
    282 * Version 0.11 (2021-08-18)
    283 
    284 - Bugfixes only
    285 
    286 * Version 0.10 (2021-08-11)
    287 
    288 - =consult-mark=, =consult-global-mark=: Add optional marker list argument
    289 - =consult-completing-read-multiple=: New function
    290 - Rename =consult-project-imenu= to =consult-imenu-multi=
    291 - Add =consult-line-multi= to search multiple buffers
    292 - Removed obsolete =consult-yank=, =consult-async-default-split=, =consult-config=
    293 - =consult-ripgrep=: Use =--smart-case=
    294 - =consult-grep/git-grep=: Use =--ignore-case=
    295 - Deprecate =consult-<cmd>-command= in favor of =consult-<cmd>-config.=
    296 - =consult-find=: Use regular expressions instead of globbing/wildcards by default.
    297   Due to the changes to =consult-find= it is not possible anymore to configure
    298   =fd= as backend for =consult-find=. A replacement is documented in the wiki.
    299 - =consult-find/locate/man=: Add highlighting to the matching file/man page names.
    300 - =consult-grep/git-grep/ripgrep/find/locate=: Add support for multiple unordered
    301   patterns. Each of the input patterns must be matched. For example,
    302   =consult-find= transforms the input "first second third" to "first -and second
    303   -and third".
    304 - =consult-grep/git-grep/ripgrep=: Compute the highlighting based on the input,
    305   instead of relying on the ANSI-escaped output. This works better with multiple
    306   patterns, but may occasionally produce false highlighting.
    307 - Deprecate =consult-x-command= configuration variables in favor of =consult-x-args=.
    308   The variables have been renamed since the configuration format changed.
    309 - =consult-async-split-styles-alist=: Remove the =space= splitting style, since
    310   it has been obsoleted by the support for multiple unordered patterns.
    311 
    312 * Version 0.9 (2021-06-22)
    313 
    314 - Add =consult-preview-excluded-hooks=
    315 - =consult--read/consult--prompt=: Add =:inherit-input-method= argument
    316 - Add debouncing support for preview
    317 
    318 * Version 0.8 (2021-05-30)
    319 
    320 - Async commands: Do not fix vertical height in Selectrum.
    321 - =consult-imenu=: Deduplicate items (some imenu backends generate duplicates).
    322 - =consult-org-heading=: Deduplicate items.
    323 - =consult-buffer-filter=: Hide more buffers.
    324 - =consult-line=: Matching line preview overlay only in the selected window.
    325 - =consult-yank/completion-in-region=: Insertion preview only in selected window.
    326 - =consult-yank=: Rename to =consult-yank-from-kill-ring= (Emacs 28 naming).
    327 - =consult-yank= commands: =delete-selection-mode= support, added properties.
    328 - =consult-preview-at-point=, =consult-preview-at-point-mode=: New command and
    329   minor mode to preview candidate at point in =*Completions*= buffer.
    330 - Add =consult-async-split-style= and =consult-async-split-styles-alist=.
    331 - =consult-async-default-split=: Obsoleted in favor of =consult-async-split-style=.
    332 - Deprecate =consult-config= in favor of new =consult-customize= macro.
    333 - =consult-buffer=: Enable previews for files and bookmarks by default.
    334 - =consult-buffer=/=consult--multi=: Add support for =:preview-key= per source.
    335 - =consult-buffer=: Push visible buffers down in the buffer list.
    336 - =consult-flycheck=: Moved to separate repository prior to ELPA submission.
    337 - Submitted Consult to ELPA.
    338 
    339 * Version 0.7 (2021-04-29)
    340 
    341 - Bugfixes
    342 - =consult-buffer=: Respect =confirm-nonexistent-file-or-buffer=
    343 - =consult-widen-key=: Change default setting to twice the =consult-narrow-key=
    344 - =consult-flycheck=: Sort errors first
    345 - Added support for the Vertico completion system
    346 - Consult adds disambiguation suffixes as suffix instead of as prefix now
    347   for the commands =consult-line=, =consult-buffer=, etc.
    348   This enables support for the =basic= completion style and TAB completion.
    349 - =consult--read=: The =:title= function must accept two arguments now,
    350   the candidate string and a flag. If the flag is nil, the function should
    351   return the title of the candidate, otherwise the function should return the
    352   transformed candidate.
    353 - =consult-grep= and related commands: Strip the file name if grouping is used.
    354 - =consult-find/grep=: Ensure that the commands work with Tramp
    355 - =consult-outline=: Add narrowing
    356 - Added =consult-org-heading= and =consult-org-agenda=
    357 - =consult-line=: Highlight visual line during jump preview
    358 - =consult-line=: Start search at current line, add configuration variable
    359   =consult-start-from-top=. The starting point can be toggled by the prefix
    360   argument =C-u=.
    361 
    362 * Version 0.6 (2021-03-02)
    363 
    364 - Bugfixes
    365 - =consult-keep/focus-lines=: Align behavior on regions with built-in =keep-lines=.
    366 - =consult-buffer=: Enable file sources only when =recentf-mode= is enabled
    367 - =consult--multi=: Add =:default= flag, use flag for =consult--source-buffer=
    368 - Add =consult-grep-max-columns= to prevent performance issues for long lines
    369 - Add =consult-fontify-preserve= customization variable
    370 - =consult-line=: Quits Isearch, when started from an Isearch session
    371 - =consult-register-load=: Align prefix argument handling with =insert-register=
    372 - Rename =consult-error= to =consult-compile-error=
    373 - =consult-compile-error=: Allow calling the command from any buffer,
    374   use the errors from all compilation buffers related to the current buffer.
    375 - =consult-man=: Handle aggregated entries returned by mandoc
    376 - =consult-completion-in-region=: Added preview and =consult-preview-region= face
    377 - Added =consult-completion-in-region-styles= customization variable
    378 - Added =consult-xref=. The function can be set as =xref-show-xrefs-function=
    379   and =xref-show-definitions-function=.
    380 - Added support for the candidate grouping function =x-group-function=
    381 
    382 * Version 0.5 (2021-02-09)
    383 
    384 - Bugfixes
    385 - =consult-keep/focus-lines=: If region is active, operate only on the region.
    386 - =consult-register-format=: Do not truncate register strings.
    387 - =consult-buffer= multi sources: Ensure that original buffer is
    388   shown, when the currently selected source does not perform preview.
    389 - Add =consult-preview-raw-size=
    390 - Expose preview functionality for multi-source bookmarks/files
    391 - Multi sources: Add =:enabled=, =:state= and =:action= fields
    392 - =consult-imenu=: Add faces depending on item types
    393 
    394 * Version 0.4 (2021-02-01)
    395 
    396 - Bugfixes
    397 - Introduce multi sources, reimplement =consult-buffer= with multi sources
    398 - =consult-isearch=: Add preview highlighting
    399 - =consult-line=: Use =isearch-string= when invoked from running isearch
    400 
    401 * Version 0.3 (2021-01-28)
    402 
    403 - Bugfixes
    404 - New command =consult-isearch=
    405 - New functions =consult-register-format=, =consult-register-window=,
    406   removed =consult-register-preview=
    407 
    408 * Version 0.2 (2021-01-16)
    409 
    410 - Initial stable release