Commit graph

13 commits

Author SHA1 Message Date
Loric ANDRE 42fa8e143b chore: add image tests & examples 2026-06-17 13:56:37 +02:00
Loric ANDRE c7860a1a16 chore: crate-level lints 2026-05-21 18:19:40 +02:00
LoricAndre e531182a2b
feat: allow negative sizes (closes #1040) (#1043)
* feat: allow negative sizes (closes #1040)

* chore: generate completions & manpage

---------

Co-authored-by: Skim bot <skim-bot@skim-rs.github.io>
2026-04-10 16:17:07 +02:00
LoricAndre 9d12e9d420
feat: windows support (#1010)
* wip: windows support

* feat: windows support

* feat: add windows target to CI

* chore: generate completions & manpage

* Update src/util.rs

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: cleanup & doc

* chore: generate completions & manpage

* chore: generate dist

* fix: reduplicate default test

* chore: regate tmux

* chore: remove useless test-utils feature

* fix(windows): ignore dirs in default_command

* docs: update shell docs for windows

* chore: generate completions & manpage

* chore(justfile): do not ignore failed tests

* fix: upload correct junit after profile change

* fix: always execute exit commands

* fix: windows-specific ctrl-c handling

* chore: misc docs & other updates

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: generate completions & manpage

* chore: include license in MSI installer

---------

Co-authored-by: Skim bot <skim-bot@skim-rs.github.io>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Your Name <you@example.com>
2026-03-29 21:46:42 +00:00
LoricAndre a08f6ac9b3
feat!: interactive pty preview & concurrency optimizations (#952)
This PR has grown beyond its initial scope due to me over-optimizing everything, but it leads to:

    Paving the way for future actually interactive previews
    Consistently better performance than fzf in our bench thanks to thread and concurrency optimizations as well as the use of kanal for the items channels

Given the scope, I'm marking this as breaking because:

    setting wrap in the preview window layout disables the pty since we don't want to manipulate the raw buffer to word-wrap it manually
    kanal channels work slightly differently and might break library usage, even though switching to them did not require any modifications of the examples so it's unlikely that users will see anything break


* fix: force cwd for preview

* fix: correctly set cwd & kill pty child in the right order

* fix: use std threads & reopen new pty for each preview

* feat: use tui-term for displaying

* feat: scroll in pty

* fix: make nested skim previews work

* fix: clippy mistake

* feat: reactive preview triggering

* chore: generate completions & manpage

* chore: optimizations & thread cleanup

* chore: use kanal for faster channels

* fix: tests

* fix: only send items if the matcher hasn't been killed in the meantime (#947)

* tests: add coverage

* tests: fix bin path with coverage

* tests: upload tests to codecov

* chore: make pty opt-in through preview-window

* chore: generate completions & manpage

---------

Co-authored-by: Skim bot <skim-bot@skim-rs.github.io>
2026-02-09 21:43:04 +00:00
LoricAndre ee0d6dcd19
fix(linux): run preview in a PTY (closes #894) (#897)
* Reapply "fix: run preview in a PTY (closes #894)"

This reverts commit c5eb948500.

* chore: use pty only on linux

* chore: add test
2026-02-01 15:57:41 +01:00
Loric ANDRE 47e547a9ad tests: remove insta_ prefixes after finalizing tests migration 2026-01-23 17:58:05 +01:00
LoricAndre 3c5b2d4209
fix: correctly expand {+} to current when no items are selected (cl… (#913)
* fix: correctly expand `{+}` to current when no items are selected (closes #910)

* chore: generate completions & manpage

* test: add printf_plus unit tests

---------

Co-authored-by: Skim bot <skim-bot@skim-rs.github.io>
2026-01-22 11:28:58 +00:00
LoricAndre 6d0c310bea
test: use insta for applicable integration tests, making them cross-p… (#903)
* test: use insta for applicable integration tests, making them cross-platform

* fix: remove @cmd from insta tests

* fix: remove @cmd from insta tests

* fix: use printf instead of echo
2026-01-21 15:41:20 +01:00
Loric ANDRE 52bf6a247b fix: use ansi-stripped raw item in preview expansion 2026-01-20 09:48:06 +01:00
Loric ANDRE 102f7c79f2 test: fix preview_nul 2026-01-19 22:59:48 +01:00
Loric ANDRE 577025224e fix: correctly parse wrap arg in preview options 2026-01-16 16:27:20 +01:00
LoricAndre c364c5f128
chore: remove workspace (#883)
* chore: remove workspace

* chore: regen dist config

* fix: readme path

* chore: extra-artifacts as files

* chore: generate dist CI

* chore: prepare for prerelease

* chore: switch to include + generate-files

* chore: use run step for generate-files

---------

Co-authored-by: Loric André <loric.andre@noreply.me>
2026-01-13 11:34:10 +01:00
Renamed from skim/tests/preview.rs (Browse further)