diff options
Diffstat (limited to 'man/man1')
-rw-r--r-- | man/man1/fzf-tmux.1 | 2 | ||||
-rw-r--r-- | man/man1/fzf.1 | 165 |
2 files changed, 138 insertions, 29 deletions
diff --git a/man/man1/fzf-tmux.1 b/man/man1/fzf-tmux.1 index 03a3d729..84fb1bcf 100644 --- a/man/man1/fzf-tmux.1 +++ b/man/man1/fzf-tmux.1 @@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. .. -.TH fzf-tmux 1 "Apr 2024" "fzf 0.49.0" "fzf-tmux - open fzf in tmux split pane" +.TH fzf-tmux 1 "Jun 2024" "fzf 0.53.0" "fzf-tmux - open fzf in tmux split pane" .SH NAME fzf-tmux - open fzf in tmux split pane diff --git a/man/man1/fzf.1 b/man/man1/fzf.1 index fc621c3e..0a541ca6 100644 --- a/man/man1/fzf.1 +++ b/man/man1/fzf.1 @@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. .. -.TH fzf 1 "Apr 2024" "fzf 0.49.0" "fzf - a command-line fuzzy finder" +.TH fzf 1 "Jun 2024" "fzf 0.53.0" "fzf - a command-line fuzzy finder" .SH NAME fzf - a command-line fuzzy finder @@ -30,7 +30,10 @@ fzf - a command-line fuzzy finder fzf [options] .SH DESCRIPTION -fzf is a general-purpose command-line fuzzy finder. +fzf is an interactive filter program for any kind of list. + +It implements a "fuzzy" matching algorithm, so you can quickly type in patterns +with omitted characters and still get the results you want. .SH OPTIONS .SS Note @@ -46,10 +49,10 @@ it with \fB+x\fR or \fB--no-extended\fR. .B "-e, --exact" Enable exact-match .TP -.B "-i" +.B "-i, --ignore-case" Case-insensitive match (default: smart-case match) .TP -.B "+i" +.B "+i, --no-ignore-case" Case-sensitive match .TP .B "--literal" @@ -58,14 +61,32 @@ Do not normalize latin script letters for matching. .BI "--scheme=" SCHEME Choose scoring scheme tailored for different types of input. -.br -.BR default " Generic scoring scheme designed to work well with any type of input" -.br -.BR path " Scoring scheme well suited for file paths -.br -.BR history " Scoring scheme well suited for command history or any input where chronological ordering is important - Sets \fB--tiebreak=index\fR as well. -.br +.RS +.B default +.RS +Generic scoring scheme designed to work well with any type of input. +.RE +.RE + +.RS +.B path +.RS +Additional bonus point is only given to the characters after path separator. +You might want to choose this scheme over \fBdefault\fR if you have many files +with spaces in their paths. +.RE +.RE + +.RS +.B history +.RS +Scoring scheme well suited for command history or any input where chronological +ordering is important. No additional bonus points are given so that we give +more weight to the chronological ordering. This also sets +\fB--tiebreak=index\fR. +.RE +.RE + .TP .BI "--algo=" TYPE Fuzzy matching algorithm (default: v2) @@ -85,7 +106,8 @@ See \fBFIELD INDEX EXPRESSION\fR for the details. Transform the presentation of each line using field index expressions .TP .BI "-d, --delimiter=" "STR" -Field delimiter regex for \fB--nth\fR and \fB--with-nth\fR (default: AWK-style) +Field delimiter regex for \fB--nth\fR, \fB--with-nth\fR, and field index +expressions (default: AWK-style) .TP .BI "--disabled" Do not perform search. With this option, fzf becomes a simple selector @@ -96,6 +118,16 @@ interface rather than a "fuzzy finder". You can later enable the search using .B "+s, --no-sort" Do not sort the result .TP +.B "--tail=NUM" +Maximum number of items to keep in memory. This is useful when you want to +browse an endless stream of data (e.g. log stream) with fzf while limiting +memory usage. +.RS +e.g. + \fB# Interactive filtering of a log stream + tail -f *.log | fzf --tail 100000 --tac --no-sort --exact\fR +.RE +.TP .B "--track" Make fzf track the current selection when the result list is updated. This can be useful when browsing logs using fzf with sorting disabled. It is @@ -162,13 +194,16 @@ the details. .B "--cycle" Enable cyclic scroll .TP +.B "--no-multi-line" +Disable multi-line display of items when using \fB--read0\fR +.TP .B "--keep-right" Keep the right end of the line visible when it's too long. Effective only when the query string is empty. .TP .BI "--scroll-off=" "LINES" Number of screen lines to keep above or below when scrolling to the top or to -the bottom (default: 0). +the bottom (default: 3). .TP .B "--no-hscroll" Disable horizontal scroll @@ -204,18 +239,42 @@ height minus the given value. fzf --height=-1 When prefixed with \fB~\fR, fzf will automatically determine the height in the -range according to the input size. Note that adaptive height is not compatible -with top/bottom margin and padding given in percent size. It is also not -compatible with a negative height value. +range according to the input size. # Will not take up 100% of the screen seq 5 | fzf --height=~100% +Adaptive height has the following limitations: +.br +* Cannot be used with top/bottom margin and padding given in percent size +.br +* Negative value is not allowed +.br +* It will not find the right size when there are multi-line items + .TP .BI "--min-height=" "HEIGHT" Minimum height when \fB--height\fR is given in percent (default: 10). Ignored when \fB--height\fR is not specified. .TP +.BI "--tmux" "[=[center|top|bottom|left|right][,SIZE[%]][,SIZE[%]]]" +Start fzf in a tmux popup (default \fBcenter,50%\fR). Requires tmux 3.3 or +later. This option is ignored if you are not running fzf inside tmux. + +e.g. + \fB# Popup in the center with 70% width and height + fzf --tmux 70% + + # Popup on the left with 40% width and 100% height + fzf --tmux right,40% + + # Popup on the bottom with 100% width and 30% height + fzf --tmux bottom,30% + + # Popup on the top with 80% width and 40% height + fzf --tmux top,80%,40%\fR + +.TP .BI "--layout=" "LAYOUT" Choose the layout (default: default) @@ -420,10 +479,14 @@ Do not display scrollbar. A synonym for \fB--scrollbar=''\fB Input prompt (default: '> ') .TP .BI "--pointer=" "STR" -Pointer to the current line (default: '>') +Pointer to the current line (default: '▌' or '>' depending on \fB--no-unicode\fR) .TP .BI "--marker=" "STR" -Multi-select marker (default: '>') +Multi-select marker (default: '┃' or '>' depending on \fB--no-unicode\fR) +.TP +.BI "--marker-multi-line=" "STR" +Multi-select marker for multi-line entries. 3 elements for top, middle, and bottom. +(default: '╻┃╹' or '.|'' depending on \fB--no-unicode\fR) .TP .BI "--header=" "STR" The given string will be printed as the sticky header. The lines are displayed @@ -455,7 +518,7 @@ color mappings. .RS .B BASE SCHEME: - (default: dark on 256-color terminal, otherwise 16) + (default: \fBdark\fR on 256-color terminal, otherwise \fB16\fR; If \fBNO_COLOR\fR is set, \fBbw\fR) \fBdark \fRColor scheme for dark 256-color terminal \fBlight \fRColor scheme for light 256-color terminal @@ -464,14 +527,17 @@ color mappings. .B COLOR NAMES: \fBfg \fRText + \fBselected-fg \fRSelected line text \fBpreview-fg \fRPreview window text \fBbg \fRBackground + \fBselected-bg \fRSelected line background \fBpreview-bg \fRPreview window background \fBhl \fRHighlighted substrings - \fBfg+ \fRText (current line) - \fBbg+ \fRBackground (current line) + \fBselected-hl \fRHighlighted substrings in the selected line + \fBcurrent-fg (fg+) \fRText (current line) + \fBcurrent-bg (bg+) \fRBackground (current line) \fBgutter \fRGutter on the left - \fBhl+ \fRHighlighted substrings (current line) + \fBcurrent-hl (hl+) \fRHighlighted substrings (current line) \fBquery \fRQuery string \fBdisabled \fRQuery string when search is disabled (\fB--disabled\fR) \fBinfo \fRInfo line (match counters) @@ -534,6 +600,9 @@ color mappings. --color='pointer:#E12672,marker:#E17899,prompt:#98BEDE,hl+:#98BC99'\fR .RE .TP +.B "--highlight-line" +Highlight the whole current line +.TP .B "--no-bold" Do not use bold text .TP @@ -788,6 +857,14 @@ list. e.g. \fBfzf --expect=ctrl-v,ctrl-t,alt-s --expect=f1,f2,~,@\fR .RE + +This option is not compatible with \fB--bind\fR on the same key and will take +precedence over it. To combine the two, use \fBprint\fR action. + +.RS +e.g. + \fBfzf --multi --bind 'enter:print()+accept,ctrl-y:select-all+print(ctrl-y)+accept'\fR +.RE .TP .B "--read0" Read input delimited by ASCII NUL characters instead of newline characters @@ -812,12 +889,22 @@ e.g. .TP .B "--sync" Synchronous search for multi-staged filtering. If specified, fzf will launch -ncurses finder only after the input stream is complete. +the finder only after the input stream is complete. .RS e.g. \fBfzf --multi | fzf --sync\fR .RE .TP +.B "--with-shell=STR" +Shell command and flags to start child processes with. On *nix Systems, the +default value is \fB$SHELL -c\fR if \fB$SHELL\fR is set, otherwise \fBsh -c\fR. +On Windows, the default value is \fBcmd /s/c\fR when \fB$SHELL\fR is not +set. + +.RS +e.g. \fBgem list | fzf --with-shell 'ruby -e' --preview 'pp Gem::Specification.find_by_name({1})'\fR +.RE +.TP .B "--listen[=[ADDR:]PORT]" "--listen-unsafe[=[ADDR:]PORT]" Start HTTP server and listen on the given address. It allows external processes to send actions to perform via POST method. @@ -855,9 +942,16 @@ e.g. # Choose port automatically and export it as $FZF_PORT to the child process fzf --listen --bind 'start:execute-silent:echo $FZF_PORT > /tmp/fzf-port' \fR +.SS Help .TP .B "--version" Display version information and exit +.TP +.B "--help" +Show help message +.TP +.B "--man" +Show man page .SS Directory traversal .TP @@ -895,7 +989,7 @@ e.g. \fBeval "$(fzf --bash)"\fR .B "--zsh" Print script to set up Zsh shell integration -e.g. \fBeval "$(fzf --zsh)"\fR +e.g. \fBsource <(fzf --zsh)\fR .TP .B "--fish" @@ -932,6 +1026,10 @@ you need to protect against DNS rebinding and privilege escalation attacks. .br .BR 2 " Error" .br +.BR 126 " Permission denied error from \fBbecome\fR action" +.br +.BR 127 " Invalid shell command for \fBbecome\fR action" +.br .BR 130 " Interrupted with \fBCTRL-C\fR or \fBESC\fR" .SH FIELD INDEX EXPRESSION @@ -972,6 +1070,8 @@ fzf exports the following environment variables to its child processes. .br .BR FZF_SELECT_COUNT " Number of selected items" .br +.BR FZF_POS " Vertical position of the cursor in the list starting from 1" +.br .BR FZF_QUERY " Current query string" .br .BR FZF_PROMPT " Prompt string" @@ -1264,6 +1364,15 @@ e.g. \fBfzf --bind space:jump,jump:accept,jump-cancel:abort\fR .RE +\fIclick-header\fR +.RS +Triggered when a mouse click occurs within the header. Sets \fBFZF_CLICK_HEADER_LINE\fR and \fBFZF_CLICK_HEADER_COLUMN\fR environment variables starting from 1. + +e.g. + \fBprintf "head1\\nhead2" | fzf --header-lines=2 --bind 'click-header:transform-prompt:printf ${FZF_CLICK_HEADER_LINE}x${FZF_CLICK_HEADER_COLUMN}'\fR + +.RE + .SS AVAILABLE ACTIONS: A key or an event can be bound to one or more of the following actions. @@ -1282,6 +1391,8 @@ A key or an event can be bound to one or more of the following actions. \fBcancel\fR (clear query string if not empty, abort fzf otherwise) \fBchange-border-label(...)\fR (change \fB--border-label\fR to the given string) \fBchange-header(...)\fR (change header to the given string; doesn't affect \fB--header-lines\fR) + \fBchange-multi\fR (enable multi-select mode with no limit) + \fBchange-multi(...)\fR (enable multi-select mode with a limit or disable it with 0) \fBchange-preview(...)\fR (change \fB--preview\fR option) \fBchange-preview-label(...)\fR (change \fB--preview-label\fR to the given string) \fBchange-preview-window(...)\fR (change \fB--preview-window\fR option; rotate through the multiple option sets separated by '|') @@ -1331,7 +1442,7 @@ A key or an event can be bound to one or more of the following actions. \fBpreview-half-page-up\fR \fBpreview-bottom\fR \fBpreview-top\fR - \fBprint-query\fR (print query and exit) + \fBprint(...)\fR (add string to the output queue and print on exit) \fBput\fR (put the character to the prompt) \fBput(...)\fR (put the given string to the prompt) \fBrefresh-preview\fR @@ -1439,8 +1550,6 @@ call. \fBfzf --bind "enter:become(vim {})"\fR -\fBbecome(...)\fR is not supported on Windows. - .SS RELOAD INPUT \fBreload(...)\fR action is used to dynamically update the input list |