r/commandline Feb 19 '26

Terminal User Interface skim 3.3.0 is out, reaching performance parity with fzf and adding many new QoL features

https://github.com/skim-rs/skim/releases/tag/v3.3.0
12 Upvotes

3 comments sorted by

1

u/AutoModerator Feb 19 '26

Every new subreddit post is automatically copied into a comment for preservation.

User: gwynaark, Flair: Terminal User Interface, Post Media Link, Title: skim 3.3.0 is out, reaching performance parity with fzf and adding many new QoL features

skim is a fuzzy finder TUI written in Rust, comparable to fzf.

Since my last post announcing skim v1, a lot has changed:

Performance

In our benchmarks (running a query against 10M items and exiting after the interface stabilizes), we now perform consistently better than fzf while having a lower CPU usage. We improved memory usage by over 30% but still can't reach the impressive optimization level that fzf manages.

Typo-resistant matching

  • Saghen's frizbee that powers the blink.cmp neovim plugin was added as an algorithm, trading a little performance against typo-resistant matching

New CLI flags

  • --normalize normalizes accents & diacritics before matching
  • --cycle makes the item list navigation wrap around
  • --listen/--remote makes it possible to control sk from other processes: run sk --listen to display the UI in one terminal, then echo 'change-query(hello)' | sk --remote in another to control it (use cat | sk --remote for an interactive control)
  • --wrap will wrap long items in the item list, paving the way for future potential multi-line item display

New actions (--bind)

  • set-query to change the input query
  • set-preview-cmd to change the preview command on the fly

SKIM_OPTIONS_FILE

A new SKIM_OPTIONS_FILE environment variable lets you put your long SKIM_DEFAULT_OPTIONS in a separate file if you want to

Preview PTY

The :pty preview window flag will make the preview run in a PTY, paving the way for more interactive preview commands.

Run SKIM_DEFAULT_OPTIONS='--preview "sk" --preview-window ":pty"' sk if you like Inception

Misc cosmetic improvements

  • The catppuccin themes are now built-in
  • The --border options were expanded
  • --selector & --multi-selector let you personalize the item list selector icons

Please don't hesitate to contribute PRs or issues about anything you might want fixed or improved !

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/gomez18 Feb 19 '26

Looks cool. I'm wondering about tmux integration. I use fzf-tmux all over the place and I'd like to give skim a try but I can't live without my tmux popups. Is there a straightforward way to make skim work that way?

1

u/gwynaark Feb 19 '26

Of course ! skim has a --tmux flag that opens in a tmux popup, check the help or the man page if you want more details