Aquesta és la versió actual. · Data de publicació:
Fitxers d’instal·lació 0.6.0
| Arquitectura | Tipus | Àmbit | Mida del fitxer | Baixa | SHA256 |
|---|---|---|---|---|---|
| 64 bits | ZIP → Portable | — | — | github.com | VirusTotal |
L’enllaç i l’SHA256 provenen del manifest comunitari del Gestor de paquets del Windows. Convé comparar el hash del fitxer baixat abans d’executar-lo.
Notes de la versió
v0.6.0 - 24 Feb 2026
[Breaking Changes]
* Migrated terminal backend from termbox-go to tcell (#567).
* Removed deprecated config fields `Matcher`, `InitialMatcher`, and
`CustomMatcher`. Use `InitialFilter` and `CustomFilter` instead.
Note: `CustomFilter` uses a different format than `CustomMatcher`:
Before: "CustomMatcher": { "MyFilter": ["/path/to/cmd", "$QUERY"] }
After: "CustomFilter": { "MyFilter": { "Cmd": "/path/to/cmd", "Args": ["$QUERY"] } }
* Removed deprecated CLI option `--initial-matcher`.
Use `--initial-filter` instead.
* The action `ViewArround` has been renamed to `ViewAround` (fix typo).
The old name still works but shows a deprecation notice. If you have
`"ViewArround"` in your config, please update it to `"ViewAround"`.
* Removed `Use256Color` config field. After the tcell migration,
256-color and truecolor support is automatic via terminfo detection.
Existing configs with this field will continue to load without error.
* Shift+Tab is now mapped to Tab internally. Use `M-[,Z` in your
keymap config if you need a distinct Shift+Tab binding.
* Default key bindings for `GoToNextSelection` and
`GoToPreviousSelection` have changed. `GoToNextSelection` was
previously unbound (it silently conflicted with `KillEndOfLine` on
Ctrl+K in v0.5.x) and is now bound to Alt+j. `GoToPreviousSelection`
was previously bound to Ctrl+J and is now bound to Alt+k.
* ANSI color support is now enabled by default (`--color=auto`).
ANSI escape sequences in input are now parsed and rendered with
colors preserved. To disable, use `--color=none` or set
`"Color": "none"` in your config file.
* Query terms starting with `-` are now interpreted as negative
(exclusion) filters. In v0.5.x, `foo -bar` searched for lines
matching both "foo" and literal "-bar"; in v0.6.0 it searches for
"foo" while excluding lines containing "bar". To match a literal
hyphen prefix, escape it with a backslash: `\-bar`.
[Features]
* Added YAML configuration file support. You can now use
`~/.config/peco/config.yaml` in addition to JSON (#576).
* Added negative filter terms. Prefix a search term with `-` to exclude
matching lines, e.g. `-unittests SSO` matches "SSO" but excludes
lines containing "unittests" (#434, #592).
* Added `peco.FreezeResults` / `peco.UnfreezeResults` actions.
Freezing locks the current result set so you can clear the query,
switch filters, and continue filtering against the frozen subset (#424, #596).
* Added `--height` option for inline display. Accepts a line count
(e.g. `--height 5`) or a percentage (e.g. `--height 50%`) and
renders peco inline instead of taking over the full screen
(#471, #598).
* Added `peco.ZoomIn` / `peco.ZoomOut` actions that expand visible
context around matched lines, showing surrounding lines (#289, #600).
* Added ANSI color rendering support via `--color=auto|none` CLI flag
and `"Color"` config field. Colored output from tools like
`git log --color` or `rg --color` is now displayed with colors
preserved. Default is `auto` (enabled) (#398, #602).
* Added `IRegexp` filter for case-insensitive regexp matching, so you
no longer need to manually type `(?i)` in regex queries. `IRegexp`
can also be used as a value for `--initial-filter` / `InitialFilter`
(#564).
* Added `--exit-0` option to immediately exit with non-zero status
when the input is empty, analogous to `--select-1` (#538, #582).
* Added Ctrl+Shift key modifier and CSI u / fixterms escape sequence
support for modern terminals (#529, #581).
* Added Page Up/Down and Home/End key support (#428, #584).
* Added a new `top-down-query-bottom` layout: top-down list with
query prompt at the bottom. Use `--layout top-down-query-bottom`
or `"Layout": "top-down-query-bottom"` in config (#445, #595).
* Added man page (`peco.1`) for offline documentation (#467, #587).
* Added support for ANSI color codes in the `--prompt` string (#294, #586).
* Added `--select-all` option to select all input lines and immediately
exit without displaying the selection view. When combined with
`--query`, only matching lines are selected.
* Added `SuppressStatusMsg` config field to suppress the status message
bar at the bottom of the screen.
* Added `FilterBufSize` config field to control the internal buffer
size (in lines) used during filtering. Default is 1000.
* Added `Prompt` and `Context` style targets. `Prompt` controls the
appearance of the query prompt prefix (e.g. `QUERY>`). `Context`
controls the appearance of context lines shown by ZoomIn (default:
bold).
* Added `#RRGGBB` truecolor support in style configuration. You can
now use hex color values like `"#ff6600"` for foreground and
`"on_#003366"` for background colors.
* Added `QueryCursor` style for explicit control over the query prompt
cursor appearance. When not configured, the cursor is derived from
the `Query` style by swapping fg/bg colors.
[Bugs/Fixes]
* Fixed `ToggleQuery` (C-t) not working correctly (#563).
* Fixed fuzzy sort producing incorrect order with >1000 lines of
input due to chunk-size boundary (#557, #589).
* Fixed matched highlight style bleeding to the right edge of the
terminal (#460, #583).
* Fixed screen not being properly redrawn when stderr output from
piped commands corrupts the display (#455, #588).
* Suppressed flickering "Running query..." status message (#511, #585).
* Fixed `--null` not working correctly with custom filters (#312, #577).
* Fixed `doGoToNextSelection` and `doGoToPreviousSelection` sharing
the same default key binding (#575, #579). `GoToNextSelection` is
now bound to Alt+j and `GoToPreviousSelection` to Alt+k. The
previous Ctrl+J and Ctrl+K bindings have been removed (Ctrl+K
remains bound to `KillEndOfLine`). If you relied on Ctrl+J or
Ctrl+K for selection navigation, update your keymap config.
* Fixed `GoToPreviousSelection` being registered with a malformed
internal name (`\tdoGoToPreviousSelection`) in v0.5.x. Users who
had `"peco.GoToPreviousSelection"` in their config keymap will find
that it now correctly binds to the action.
* Fixed `lastLine` tracking variable not being updated (#574, #578).
* Fixed tab rendering off-by-one error (#672).
* Restored mouse support lost during the tcell migration (#735).
* Fixed Ctrl-C not properly exiting peco due to meta character
handling (#715, #716).
* Fixed `--select-1` not triggering on interactive queries and not
respecting context for streaming sources (#726).
* Fixed filter cache not being invalidated on freeze/unfreeze,
causing stale results (#727).
* Fixed external filters (`CustomFilter`) incorrectly running in
parallel, which could produce garbled results. They now run
sequentially (#722).
* Removed redundant Esc key timer; Escape should now feel more
responsive (#728).
* Filter errors are now reported to the status bar instead of being
silently swallowed (#682).
* Fixed screen Init error being swallowed on suspend/resume (#681).
* Fixed I/O errors during stdin read being silently ignored (#680).
* Fixed ANSI SGR parser not handling malformed escape sequences
gracefully (#692).
* Fixed potential panic on negative index in FilteredBuffer (#770).
* Fixed errors from external filters being silently dropped
(#752, #766).
* Fixed various internal race conditions, resource leaks, and
potential deadlocks.
[Performance]
* Optimized filtering for large inputs with parallelized workers,
achieving 7-30x speedup for ~1M lines (#454, #590).
* Reduced overall memory consumption (#572).
* Reduced per-query allocation overhead and GC pauses: sync.Pool for
match structs, in-place merge, slice reuse in regexp/fuzzy filters,
closure elimination, stack-allocated ANSI parsing, and fast-path
ANSI stripping (#781-#789, #765).