Subject: CVS commit: pkgsrc/sysutils/fzf
From: Iku Iwasa
Date: 2023-05-04 08:22:02
Message id: 20230504062202.89CDBFA87@cvs.NetBSD.org

Log Message:
fzf: update to 0.40.0

0.40.0
------
- Added `zero` event that is triggered when there's no match
- New actions
    - Added `track` action which makes fzf track the current item when the
      search result is updated. If the user manually moves the cursor, or the
      item is not in the updated search result, tracking is automatically
      disabled. Tracking is useful when you want to see the surrounding items
      by deleting the query string.
    - Added `change-header(...)`
    - Added `transform-header(...)`
    - Added `toggle-track` action
- Fixed `--track` behavior when used with `--tac`
    - However, using `--track` with `--tac` is not recommended. The resulting
      behavior can be very confusing.
- Bug fixes and improvements

0.39.0
------
- Added `one` event that is triggered when there's only one match
- Added `--track` option that makes fzf track the current selection when the
  result list is updated. This can be useful when browsing logs using fzf with
  sorting disabled.
- If you use `--listen` option without a port number fzf will automatically
  allocate an available port and export it as `$FZF_PORT` environment
  variable.
- A carriage return and a line feed character will be rendered as dim ␍ and
  ␊ respectively.
- fzf will stop rendering a non-displayable characters as a space. This will
  likely cause less glitches in the preview window.
- Bug fixes and improvements

0.38.0
------
- New actions
    - `become(...)` - Replace the current fzf process with the specified
      command using `execve(2)` system call.
      See https://github.com/junegunn/fzf#turning-into-a-different-process for
      more information.
        - This action is not supported on Windows
    - `show-preview`
    - `hide-preview`
- Bug fixes
    - `--preview-window 0,hidden` should not execute the preview command until
      `toggle-preview` action is triggered

0.37.0
------
- Added a way to customize the separator of inline info
- New event
    - `focus` - Triggered when the focus changes due to a vertical cursor
      movement or a search result update
- New actions
    - `change-border-label`
    - `change-preview-label`
    - `transform-border-label`
    - `transform-preview-label`
- Bug fixes and improvements

0.36.0
------
- Added `--listen=HTTP_PORT` option to start HTTP server. It allows external
  processes to send actions to perform via POST method.
- Added draggable scrollbar to the main search window and the preview window
- New event
    - Added `load` event that is triggered when the input stream is complete
      and the initial processing of the list is complete.
- New actions
    - Added `pos(...)` action to move the cursor to the numeric position
        - `first` and `last` are equivalent to `pos(1)` and `pos(-1)` respectively
    - Added `reload-sync(...)` action which replaces the current list only after
      the reload process is complete. This is useful when the command takes
      a while to produce the initial output and you don't want fzf to run against
      an empty list while the command is running.
    - Added `next-selected` and `prev-selected` actions to move between selected
      items
    - Added `change-query(...)` action that simply changes the query string to the
      given static string. This can be useful when used with `--listen`.
    - Added `transform-prompt(...)` action for transforming the prompt string
      using an external command
    - Added `transform-query(...)` action for transforming the query string using
      an external command
    - `put` action can optionally take an argument string
- Added color name `preview-label` for `--preview-label` (defaults to `label`
  for `--border-label`)
- Better support for (Windows) terminals where each box-drawing character
  takes 2 columns. Set `RUNEWIDTH_EASTASIAN` environment variable to `0` or `1`.
    - On Vim, the variable will be automatically set if `&ambiwidth` is `double`
- Behavior changes
    - fzf will always execute the preview command if the command template
      contains `{q}` even when it's empty. If you prefer the old behavior,
      you'll have to check if `{q}` is empty in your command.
    - `double-click` will behave the same as `enter` unless otherwise specified,
      so you don't have to repeat the same action twice in `--bind` in most cases.
    - If the color for `separator` is not specified, it will default to the
      color for `border`. Same holds true for `scrollbar`. This is to reduce
      the number of configuration items required to achieve a consistent color
      scheme.
    - If `follow` flag is specified in `--preview-window` option, fzf will
      automatically scroll to the bottom of the streaming preview output. But
      when the user manually scrolls the window, the following stops. With
      this version, fzf will resume following if the user scrolls the window
      to the bottom.
    - Default border style on Windows is changed to `sharp` because some
      Windows terminals are not capable of displaying `rounded` border
      characters correctly.
- Minor bug fixes and improvements

0.35.1
------
- Fixed a bug where fzf with `--tiebreak=chunk` crashes on inverse match query
- Fixed a bug where clicking above fzf would paste escape sequences

0.35.0
------
- Added `start` event that is triggered only once when fzf finder starts.
  Since fzf consumes the input stream asynchronously, the input list is not
  available unless you use `--sync`.
  ```sh
  seq 100 | fzf --multi --sync --bind 'start:last+select-all+preview(echo welcome)'
  ```
- Added `--border-label` and `--border-label-pos` for putting label on the border
- Also added `--preview-label` and `--preview-label-pos` for the border of the
  preview window
- Info panel (match counter) will be followed by a horizontal separator by
  default
    - Use `--no-separator` or `--separator=''` to hide the separator
    - You can specify an arbitrary string that is repeated to form the
      horizontal separator. e.g. `--separator=╸`
    - The color of the separator can be customized via `--color=separator:...`
    - ANSI color codes are also supported
- Added `--border=bold` and `--border=double` along with
  `--preview-window=border-bold` and `--preview-window=border-double`

0.34.0
------
- Added support for adaptive `--height`. If the `--height` value is prefixed
  with `~`, fzf will automatically determine the height in the range according
  to the input size.
    - There are a few limitations
        - Not compatible with percent top/bottom margin/padding
        - fzf will not start until it can determine the right height for the input
- Fixed tcell renderer used to render full-screen fzf on Windows
- `--no-clear` is deprecated. Use `reload` action instead.

0.33.0
------
- Added `--scheme=[default|path|history]` option to choose scoring scheme
    - (Experimental)
    - We updated the scoring algorithm in 0.32.0, however we have learned that
      this new scheme (`default`) is not always giving the optimal result
    - `path`: Additional bonus point is only given to the characters after
      path separator. You might want to choose this scheme if you have many
      files with spaces in their paths.
    - `history`: No additional bonus points are given so that we give more
      weight to the chronological ordering. This is equivalent to the scoring
      scheme before 0.32.0. This also sets `--tiebreak=index`.
- ANSI color sequences with colon delimiters are now supported.
- Support `border-{up,down}` as the synonyms for `border-{top,bottom}` in
  `--preview-window`
- Added support for ANSI `strikethrough`

0.32.1
------
- Fixed incorrect ordering of `--tiebreak=chunk`
- fzf-tmux will show fzf border instead of tmux popup border (requires tmux 3.3)

0.32.0
------
- Updated the scoring algorithm
    - Different bonus points to different categories of word boundaries
      (listed higher to lower bonus point)
        - Word after whitespace characters or beginning of the string
        - Word after common delimiter characters (`/,:;|`)
        - Word after other non-word characters
- Added a new tiebreak `chunk`
    - Favors the line with shorter matched chunk. A chunk is a set of
      consecutive non-whitespace characters.
    - Unlike the default `length`, this scheme works well with tabular input
    - If the input does not contain any spaces, `chunk` is equivalent to
      `length`. But we're not going to set it as the default because it is
      computationally more expensive.
- Bug fixes and improvements

0.31.0
------
- Added support for an alternative preview window layout that is activated
  when the size of the preview window is smaller than a certain threshold.
- fzf now uses SGR mouse mode to properly support mouse on larger terminals
- You can now use characters that do not satisfy `unicode.IsGraphic` constraint
  for `--marker`, `--pointer`, and `--ellipsis`. Allows Nerd Fonts and stuff.
  Use at your own risk.
- Bug fixes and improvements
- Shell extension
    - `kill` completion now requires trigger sequence (`**`) for consistency

0.30.0
------
- Fixed cursor flickering over the screen by hiding it during rendering
- Added `--ellipsis` option. You can take advantage of it to make fzf
  effectively search non-visible parts of the item.
- Added `rebind` action for restoring bindings after `unbind`
- Bug fixes and improvements

Files:
RevisionActionfile
1.66modifypkgsrc/sysutils/fzf/Makefile
1.14modifypkgsrc/sysutils/fzf/distinfo
1.3modifypkgsrc/sysutils/fzf/go-modules.mk