HuntnGather – Blame information for rev 26

Subversion Repositories:
Rev:
Rev Author Line No. Line
1 office 1 Short: File indexing and search utilities.
2 Author: Wizardry and Steamworks
3 Uploader: "Wizardry and Steamworks" <office@grimore.org>
4 Type: util/dir
5 Replaces: util/dir/HuntnGather.lha
24 office 6 Version: 1.7.3
1 office 7 Architecture: m68k-amigaos
8  
9 Hunt & Gather - File search and indexing utilities.
10 (or Hunt'n'Gather bro, ghetto style)
11  
12 © Copyright 2021 by Wizardry and Steamworks
13  
14 Released under the MIT License, all rights reserved.
15  
22 office 16 -=:[ Changes ]:=-
1 office 17  
26 office 18 TBA:
19 * Use locale for string comparisons.
20 * Gather now requires either of -a (add), -r (remove), -c (create).
21 * Allow specifying multiple paths when gathering.
20 office 22  
1 office 23 -=:[ Introduction ]:=-
24  
25  
26 Hunt and Gather are two utiltities for indexing and then searching
27 fileswithin a drive or directory designed to speed up searching files.
28  
29 The Gather utility is meant to index any path and generate a search
30 database. The Hunt utility will then open the database generated by
31 Gather and look for files matching the string provided to Hunt as
32 parameter.
33  
34 The utility was designed to check large collections of icons but the
35 indexing and the fast search results proved indispensable enough for a
36 self-standing program.
37  
38 -=:[ Design ]:=-
39  
40 Hunt and Gather are designed with constant memory usage in order to be
41 suitable for all Amiga models. Namely, the Gather utility will search
42 all files in a given path, sort the files in ascending order by using
43 an external merge sort (tailored down to a 256KiB memory limit).
44  
45 Conversely, Hunt uses brute force to search for files but by reading
46 lines from the database without loading the entire database in RAM.
47 Perhaps ulterior versions of Hunt might partition the database file
48 just like Gather does and then build Tries in oder to speed up finding
49 files on the filesystem.
50  
51 The project adheres to the ANSI C standard and Amiga-centric semantics
52 are compiled conditionally (in case the "___AmigaOS__" macro is
53 defined at compile time).Otherwise, Hunt & Gather should run under any
54 platform that benefits from an ANSI C compiler.
55  
56 -=:[ Usage ]:=-
57  
3 office 58 First the Gather utility is used to index a path:
1 office 59  
60  
61 Gather RAM:
62  
63  
64 which will create a file in the S: directory named "gahter.db". While
65 Gather is running, the utility will display the number of indexed
66 directories and files on the command line.
67  
22 office 68 In order to look for a file, the Hunt utility is invoked with an
69 Amiga search pattern:
1 office 70  
71  
3 office 72 Hunt #?test#?
1 office 73  
74  
22 office 75 in this case, "#?test#?", that will be compared to all the files
76 indexed previously by Gather. In case any of the files previously
77 indexed by Gather contain the term "test", then the Hunt utility will
78 display the path to the file.
1 office 79  
80 -=:[ Gather ]:=-
81  
82 The Gather utility takes one single parameter representing the path
83 to be indexed; for example, all the following paths are valid:
84  
85  
86 RAM:
87 DH0:System/
88  
89  
90 When Gather runs, a database is created at "S:gather.db" by
91 overwriting the previous database. For best results, Gather should
92 run periodically and should scan a path that is most frequently
93 searched for files.
94  
95 -=:[ Hunt ]:=-
96  
97 Hunt is the counterpart to Gather and will search the database at
98 "S:gather.db" for files matching the terms passed to Hunt on the
99 command line.
100  
3 office 101 For instance:
1 office 102  
3 office 103 Hunt #?test#?
1 office 104  
105 will search all files in the Gather database "S:gather.db" for the
106 term "test". If any file within the database partially matches the
107 term "test", then Hunt will display the path on the command line.
3 office 108  
109 Hunt uses Amiga-style pattern for matching the file names.
110  
111 -=:[ Source ]:=-
1 office 112  
3 office 113 The project is open sourced and licensed under MIT. The source code
114 is included in the AmiNET release or can be checked out via subversion
115 from the Wizardry and Steamworks repository:
1 office 116  
3 office 117 svn co http://svn.grimore.org/HuntnGather
118  
4 office 119 -=:[ Mentions ]:=-
120  
121 The code includes a shim for "getopt" in order to process command line
22 office 122 parameters on Amiga without changing the semantics. The shim is
123 created by Daniel J. Barrett, barrett@cs.umass.edu and is available on
124 AmiNET:
4 office 125  
126 http://aminet.net/package/dev/misc/GetOpt-1.3
127  
1 office 128 -=:[ Contact ]:=-
129  
22 office 130 E-Mail(tor):
131  
132 office@3wymlmcsvxiaqzmbepsdawqpk6o2qsk65jhms72qqjulk5u4bgmvs3qd.onion
133  
1 office 134 Website: https://grimore.org/amiga/hunt_and_gather
22 office 135 Website(tor):
136  
137 http://3wymlmcsvxiaqzmbepsdawqpk6o2qsk65jhms72qqjulk5u4bgmvs3qd.onion/
138  
1 office 139 Discord: https://discord.gg/k9kyDsa
140