Skip to content

prescient.el 5.2

Compare
Choose a tag to compare
@raxod502 raxod502 released this 28 Dec 04:18

New features

  • Two new user options, selectrum-prescient-enable-filtering and selectrum-prescient-enable-sorting, which allow the user to selectively disable the filtering or sorting functionalities of selectrum-prescient.el (#100).
  • New command selectrum-prescient-toggle-char-fold, bound to M-s ' in the minibuffer.
  • To configure match highlighting you can use the faces selectrum-prescient-primary-highlight and selectrum-prescient-secondary-highlight. The previously used Selectrum faces selectrum-primary-highlight and selectrum-secondary-highlight will get removed from Selectrum proper (#94, #97).
  • The user option prescient-sort-full-matches-first was added. If non-nil, candidates that are fully matched are sorted before partially matched candidates, though all candidates still follow the order of recency, frequency, and length. See #95.
  • The user option prescient-use-char-folding was added. If non-nil, the literal and literal-prefix filter methods will use character folding. See #98. This can be used to help avoid the problems reported in #92 and #93.
  • The user option prescient-use-case-folding was added. This feature affects the use of all filters. It can be one of nil, t, or smart (the default). If smart, then case folding is disabled when upper-case characters are sought. In Selectrum, the toggling command selectrum-prescient-toggle-case-fold was bound to M-s c. See #105.
  • The command prescient-forget was added. When used, prescient.el will immediately forget a candidate (#109).

Enhancements

  • prescient-filter-method accepts a function which returns the desired filter methods (#110).
  • selectrum-prescient.el: Match faces are now combined with faces that might be already present on candidates instead of replacing them which gives better visual results in these cases (#101, #103).

Internal changes

  • The user option selectrum-should-sort-p was deprecated in Selectrum 3.1 in favor of selectrum-should-sort. selectrum-prescient.el now uses the updated option name (#99).

Bugs fixed

  • A typo was fixed that prevented secondary highlighting (such as the initials in initialism matching) from being applied. Functions in prescient-filter-alist were being passed the keyword argument :with-groups instead of the correct :with-group. For consistency, the with-groups argument of prescient-filter-regexps was changed to with-group. See #106.
  • Previously, when char folding was enabled, long queries could cause a crash with the error "Regular expression too big". This has now been fixed (#71).