From: Francois Fleuret Date: Wed, 15 Apr 2009 07:40:16 +0000 (+0200) Subject: Merge branch 'master' of ssh://fleuret@login.idiap.ch/homes/fleuret/public/git/selector X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=selector.git;a=commitdiff_plain;h=6bfacc5594cad8647f454cc3aab15068663d7bbb;hp=38e62ee50d9f4b6f77a34f6841a2db635e2553df Merge branch 'master' of ssh://fleuret@login.idiap.ch/homes/fleuret/public/git/selector Conflicts: REVISION_NUMBER --- diff --git a/Makefile b/Makefile index c753693..822005c 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,7 @@ # -# selector is a simple shell command for selection of strings with a -# dynamic pattern-matching. +# selector is a simple command line utility for selection of strings +# with a dynamic pattern-matching. # # Copyright (c) 2009 Francois Fleuret # Written by Francois Fleuret diff --git a/REVISION_NUMBER b/REVISION_NUMBER index aaacbe6..87f6629 100644 --- a/REVISION_NUMBER +++ b/REVISION_NUMBER @@ -1 +1,5 @@ +<<<<<<< HEAD:REVISION_NUMBER +143 +======= 142 +>>>>>>> 38e62ee50d9f4b6f77a34f6841a2db635e2553df:REVISION_NUMBER diff --git a/mkdeb.sh b/mkdeb.sh index 55ef95e..291c677 100755 --- a/mkdeb.sh +++ b/mkdeb.sh @@ -1,8 +1,8 @@ #!/bin/bash # -# selector is a simple shell command for selection of strings with a -# dynamic pattern-matching. +# selector is a simple command line utility for selection of strings +# with a dynamic pattern-matching. # # Copyright (c) 2009 Francois Fleuret # Written by Francois Fleuret @@ -47,11 +47,11 @@ Version: ${VERSION} Maintainer: Francois Fleuret Architecture: i386 Depends: ${LIB_DEPENDS} -Description: A command line for dynamic string-matching - This is a command line for dynamic string selection. As you type a - list of substrings separated by ';', or a regexp, the display is - updated in real time to show only the matching lines. The main usage - of selector is as an efficient search in the shell command +Description: A command line utility for dynamic string-matching + This is a command line utility for dynamic string selection. As you + type a list of substrings separated by ';', or a regexp, the display + is updated in real time to show only the matching lines. 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 tty input buffer, hence allowing the user to edit the line and execute it as a standard command. diff --git a/selector.1 b/selector.1 index c349ace..903c428 100644 --- a/selector.1 +++ b/selector.1 @@ -1,31 +1,30 @@ .TH "SELECTOR" "1" .SH "NAME" -selector - A simple command line for dynamic pattern selection +selector - A simple command line utility for dynamic pattern selection .SH "SYNOPSIS" .PP \fBselector\fP [\fBoptions\fP] [ [ ...]] .SH "DESCRIPTION" .PP -\fBselector\fP is a command line 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 ^R key switches between the standard multi-substring mode and the -regexp mode, and ^I between the case-sensitive and case-insensitive -modes. +\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 edit the line and execute it as a standard command. -Selector is also a good tool to test regexp quickly. +Selector is also a good tool to test regexps. + +.SH "KEYS" +.PP Keys corresponding to ASCII codes between ' ' and '~' add a character to the pattern string. The Backspace key, ^H and ^? delete the -character on the left of the cursor, while Delete key and ^D delete -the character at cursor location. +character immediately on the left of the cursor, while the Delete key +and ^D delete the character at cursor location. The Up and Down cursor keys move the selected line accordingly, and PageUp and PageDown move by ten lines. The Home and End key move to @@ -33,8 +32,12 @@ the top and the bottom of the list respectively. The return key selects the current line and exits. The shortcuts ^A, ^E, ^U, and ^K do somehow what they do in readline, -and you can cancel the selection by either interrupting the command -with ^C or by typing ^G. +and you can exit selector without doing anything by either +interrupting the command with ^C or by typing ^G. + +The ^R key switches between the standard multi-substring mode and the +regexp mode, and ^I between the case-sensitive and case-insensitive +modes. .SH "OPTIONS" .IP "\fB-h\fP" 10 @@ -78,8 +81,8 @@ To use selector to search into your bash history, you can use .SH "BUGS" -Modeline display problems if the pattern is too long. Probably many -others. +There are modeline display problems if the pattern is too +long. .SH "AUTHOR" .PP diff --git a/selector.cc b/selector.cc index fff8f56..4950c90 100644 --- a/selector.cc +++ b/selector.cc @@ -1,7 +1,7 @@ /* - * selector is a simple shell command for selection of strings with a - * dynamic pattern-matching. + * selector is a simple command line utility for selection of strings + * with a dynamic pattern-matching. * * Copyright (c) 2009 Francois Fleuret * Written by Francois Fleuret @@ -824,9 +824,6 @@ int main(int argc, char **argv) { noecho(); - // Hide the cursor - // curs_set(0); - // So that the arrow keys work keypad(stdscr, TRUE); @@ -838,7 +835,6 @@ int main(int argc, char **argv) { color_fg_highlight < 0 || color_bg_highlight >= COLORS || color_bg_highlight < 0 || color_bg_highlight >= COLORS) { echo(); - // curs_set(1); endwin(); cerr << "Color numbers have to be between 0 and " << COLORS - 1 << "." << endl; exit(1); @@ -942,7 +938,6 @@ int main(int argc, char **argv) { } while(key != '\n' && key != KEY_ENTER && key != '\007'); // ^G echo(); - // curs_set(1); endwin(); //////////////////////////////////////////////////////////////////////