Project

General

Profile

Filter » History » Version 6

Per Amundsen, 08/13/2014 10:18 AM

1 1 Per Amundsen
_Added in 1.9.4_
2
3
*/filter [-asdfkwxnpriocteubglLz] [n-n2] [c s] <infile | dialog id> <outfile | dialog id | alias> [alias] <matchtext>*
4 2 Per Amundsen
5 3 Per Amundsen
Scans lines of text in a window, file or dialog control, any matches are then written out to another window, file, or dialog control. 
6
The order of the switch are important, they define what is the infile and what is the outfile, see the examples for more information. 
7
8 6 Per Amundsen
You can filter blank lines by specifying [[$crlf]] for the matchtext.
9
10 3 Per Amundsen
The [[$filtered]] identifier will retrieve the number of matches found.
11
12 1 Per Amundsen
*Switches*
13
14 5 Per Amundsen
-w - indicates the parameter is a window
15
-f - indicates the parameter is a file
16
-a - sorts filtered lines by calling the optional [alias] parameter, the alias is passed two lines, $1 and $2, it must compare both and return -1, 0, or 1 to indicate relative sort order of these lines to each other
17
-x - excludes matching lines
18
-n - prefixes lines with a line number (the Nth match)
19
-d - TODO
20
-s - indicates the status window will be used
21
-p - TODO
22
-r - specifies the range of lines n to n2 for filtering
23
-b - strips BURK codes when matching text
24
-g - indicates the matchtext is a regular expression
25
-z - TODO
26
-k - indicates that you have specified an <alias> as the output instead of a window name. The alias will be called with the result of each filtered line with the form $<alias>($1) where $1 is the matched line
27
-i - indicates that you have provided a [dialog id] custom dialog control as the input
28
-o - indicates that you have provided a [dialog id] custom dialog control as the output
29
-c - switch clears the output window/file before writing to it
30
-t - TODO
31
-e - TODO
32
-u - TODO
33
-l - filters from the side-listbox in the first window
34
-L - filters to the side-listbox in the second window 
35 3 Per Amundsen
36
*Parameters*
37
38
[n-n2] - if -r is used, indicates the range of lines to be scanned*
39
[c s] - if -t is used, indicates how to do the sort
40
<infile | dialog id> - if no switch implies a window's name to be use as the infile, you must provide an infile (a window, a file, or a dialog control)
41
<outfile | dialog id | alias> - if no switch implies a window's name to be used as the outfile, you must provide an outfile (a window, a file, a dialog control, or an alias name if -k is used)
42 1 Per Amundsen
[alias] - optional alias called if -a is used
43 6 Per Amundsen
<matchtext> - the expression used for the search, if [[$null]] is used, it matches everything. 
44 3 Per Amundsen
45
<pre>
46
;filter from the file "c:\my file.txt" to the custom window @mywin
47
/filter -fw "c:\my file.txt" @mywin *findthis*
48
49
;filter from the custom window @mywin to the file "c:\my file.txt"
50
filter -wf @mywin "c:\my file.txt" *findthat*
51
52
;filter from the status window to the single message window
53
/filter -sd *findthis*
54
55
;filter from the single message window to the status window
56
/filter -ds *findthat*
57
58
;filter from the filename @this_is_a_file to the dialog 'dialog', id '1'
59
/filter -fo @this_is_a_file dialog 1 *findthis*
60
61
;filter from a file and call an alias for each line
62
/filter -fk file myalias *findthat*
63
64
;filter from a file to a file using regex
65
/filter -ffg file1 file2 /regex here/
66
</pre>