X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?a=blobdiff_plain;f=selector.1;h=d463ab876cfbeff16709a9f7c65e1cada3eae9b4;hb=4940e37a8ae56beb0720577e44c469460a9af845;hp=2f675a433d20fa5672feda4eb0ee587a2952d421;hpb=121d07099a627160ebfdbd1adfd16c8de296065c;p=selector.git diff --git a/selector.1 b/selector.1 index 2f675a4..d463ab8 100644 --- a/selector.1 +++ b/selector.1 @@ -1,28 +1,41 @@ -.TH "SELECTOR" 1 "" "Francois Fleuret" +\" This man page was written by Francois Fleuret +\" and is distributed under a Creative Commons Attribution-Share Alike +\" 3.0 License. + +.TH "SELECTOR" 1 "July 2009" "Francois Fleuret" "User Commands" + .SH "NAME" + selector \- A simple command line utility for dynamic pattern selection + .SH "SYNOPSIS" -.PP -\fBselector\fP [\fBoptions\fP] [ [ ...]] + +\fBselector\fP [\fIoptions\fR] [\fI\fR [\fI\fR ...]] + .SH "DESCRIPTION" -.PP -\fBselector\fP is a command line utility for dynamic string -selection. As you type a list of strings separated by ";" or a regexp, -the display is updated in real time to show only the lines containing -all the said strings, or matching the regexp. -The main usage of selector is as an efficient search in the shell -command history. With the correct option, it will inject the selected -line into the virtual tty input buffer, hence allowing the user to +\fBselector\fP is a command line utility for dynamic string +selection. It reads the content of the specified files, and as the +user types a list of strings separated by ";" (or a regexp), the +display is updated in real time to show only the lines containing all +the said strings (or matching the regexp). + +This command was mainly designed as a way to search in the shell +history, for which it is substantially more efficient than the +standard readline ^R binding. With the -v option, it injects the +selected line into the tty input buffer, hence allowing the user to edit the line and execute it as a standard command. -Selector is also a good tool to test regexps, or a way to display -menus. The -x option allows to specify a label delimiter: the part of -each line before that character will appear during the selection, and -the part after that character will be returned. +Selector is also a handy tool to test regexps, or to display menus +with many possible choices. For the latter, the -x option allows to +specify a label delimiter: the part of each line before that character +will appear during the selection, but only the part after that +character will be returned. -.SH "KEYS" -.PP +Note that because this is an interactive command, the standard input +can not be used as one of the input files. + +.SH "KEY BINDINGS" Keys corresponding to ASCII codes between " " and "~" add a character to the pattern string. The Backspace key, "^H" and "^?" delete the @@ -59,31 +72,31 @@ remove the time prefix from zsh history remove duplicated lines (note that you can have two different lines with the same visible part if you use the -x option) .IP "\fB-e\fP" 10 -start in the regexp mode +start in regexp mode .IP "\fB-a\fP" 10 -start in the case-sensitive mode +start in case sensitive mode .IP "\fB-q\fP" 10 make a flash instead of a beep when there is an edition error .IP "\fB--\fP" 10 state that all following arguments are filenames -.IP "\fB-t \fP" 10 +.IP "\fB-t \fI<title>\fP" 10 add a title in the modeline -.IP "\fB-c <fg modeline> <bg modeline> <fg highlight> <bg highlight>\fP" 10 +.IP "\fB-c \fI<fg_modeline> <bg_modeline> <fg_highlight> <bg_highlight>\fP" 10 select the modeline and highlight color numbers .IP "\fB-v\fP" 10 inject the selected line into the tty input buffer .IP "\fB-w\fP" 10 add ^Q between characters during tty injection to quote control characters -.IP "\fB-o <output filename>\fP" 10 +.IP "\fB-o \fI<output_filename>\fP" 10 write the selected line into the specified file -.IP "\fB-s <pattern separator>\fP" 10 +.IP "\fB-s \fI<pattern_separator>\fP" 10 specify the symbol to separate the substrings in the search pattern -.IP "\fB-x <label separator>\fP" 10 +.IP "\fB-x \fI<label_separator>\fP" 10 specify the symbol to separate what to show to the user during the selection from the line to return -.IP "\fB-l <max number of lines>\fP" 10 +.IP "\fB-l \fI<max_number_of_lines>\fP" 10 specify the maximum number of lines to take into account -.IP "\fB-f <input filename>\fP" 10 +.IP "\fB-f \fI<input_filename>\fP" 10 specify a file to search into (option kept for compatibility reasons) .SH "EXAMPLE" @@ -92,7 +105,7 @@ To use selector to search into your bash history, you can use .B selector -q -b -i -d -v -w -l ${HISTSIZE} <(history) -.SH "KEY-BINDING IN BASH" +.SH "KEYBINDING IN BASH" You can associate selector to a single key in bash by using the command 'bind' in your bash initialization file. For instance, to @@ -101,7 +114,8 @@ just add something like bind '"\\C-[r":"\\C-a\\C-kselector -q -b -i -d -v -w -l ${HISTSIZE} <(history)\\C-m"' -in your ~/.bashrc. +in your +.IR ~/.bashrc . Note that depending on the configuration of your system, the sequence associated to the M-r key, which is here "C-[r", may differ. To figure @@ -117,6 +131,9 @@ There are modeline display problems if the pattern is too long. This program does not handle multibyte characters. .SH "AUTHOR" -.PP -Written by Francois Fleuret <francois@fleuret.org>, and distributed -under a Creative Commons Attribution-Share Alike 3.0 License. + +The selector command was written by Francois Fleuret +<francois@fleuret.org> and is distributed under the terms of the GNU +General Public License version 3 as published by the Free Software +Foundation. This is free software: you are free to change and +redistribute it. There is NO WARRANTY, to the extent permitted by law.