Fix com_lsblob().
[paraslash.git] / mysql_selector.cmd
1 OF: mysql_selector_command_list
2 SF: mysql_selector.c
3 HC: prototypes for the commands of the mysql audio file selector
4 CC: array of commands for the mysql audio file selector
5 AT: server_command
6 IN: para afh server list user_list
7 SN: list of mysql selector commands
8 ---
9 N: cam
10 P: AFS_READ | AFS_WRITE
11 D: copy all metadata
12 U: cam source dest1 [dest2 ...]
13 H: Copy attributes and other meta data from source file to destination
14 H: file(s). Useful for files that have been renamed.
15 ---
16 N: cdb
17 P: AFS_READ | AFS_WRITE
18 D: create database
19 U: cdb [name]
20 H:
21 H: Create database name containing the initial columns for basic
22 H: interoperation with server. This command has to be used only once
23 H: when you use the mysql audio file selector for the very first time.
24 H:
25 H: The optional name defaults to 'paraslash' if not given.
26 ---
27 N: clean
28 P: AFS_READ | AFS_WRITE
29 D: nuke invalid entries in database
30 U: clean
31 H: If the vrfy command shows you any invalid entries in your database,
32 H: you can get rid of them with clean. Always run 'upd' and 'vrfy'
33 H: before running this command. Use with caution!
34 ---
35 N: cs
36 P: VSS_WRITE | AFS_READ | AFS_WRITE
37 D: change stream
38 U: cs [s]
39 H: Selects stream s or prints current stream when s was not given.
40 ---
41 N: csp
42 P: VSS_WRITE | AFS_READ
43 D: change stream and play
44 U: csp s
45 H: Select stream s and start playing. If this results in a
46 H: stream-change, skip rest of current audio file.
47 ---
48 N: da
49 P: AFS_READ | AFS_WRITE
50 D: drop attribute from database
51 U: da att
52 H: Use with caution. All info on attribute att will be lost.
53 ---
54 N: hist
55 P: AFS_READ
56 D: print history
57 U: hist
58 H: Print list of all audio files together with number of days since
59 H: each file was last played.
60 ---
61 N: info
62 P: AFS_READ
63 D: print database info
64 U: info [af]
65 H: print database informations for audio file af. Current audio file
66 H: is used if af is not given.
67 ---
68 N: la
69 P: AFS_READ
70 D: list attributes
71 U: la [af]
72 H: List attributes of audio file af or of current audio file when
73 H: invoked without arguments.
74 ---
75 N: laa
76 P: AFS_READ
77 D: list available attributes
78 U: laa
79 H: print list of all attributes defined in the database
80 ---
81 N: last
82 P: AFS_READ
83 D: print list of audio files, ordered by lastplayed time
84 U: last [n]
85 H: The optional number n defaults to 10 if not specified.
86 ---
87 N: ls
88 P: AFS_READ
89 D: list all audio files that match a LIKE pattern
90 U: ls [pattern]
91 H: If pattern was not given, print list of all audio files known
92 H: to the mysql selector. See the documentation of mysql
93 H: for the definition of LIKE patterns.
94 ---
95 N: mbox
96 P: AFS_READ
97 D: dump audio file list in mbox format
98 U: mbox [p]
99 H: Dump list of audio files in mbox format (email) to stdout. If
100 H: the optional pattern p is given, only those audio files,
101 H: whose basename match p are going to be included. Otherwise,
102 H: all files are selected.
103 H:
104 H: EXAMPLE
105 H: The mbox command can be used together with your favorite
106 H: mailer (this example uses mutt) for browsing the audio file
107 H: collection:
108 H:
109 H:      para_client mbox > ~/para_mbox
110 H:
111 H:      mutt -F ~/.muttrc.para -f ~/para_mbox
112 H:
113 H: For playlists, you can use mutt's powerful pattern matching
114 H: language to select files. If you like to tag all files
115 H: containing the pattern 'foo', type 'T', then '~s foo'.
116 H:
117 H: When ready with the list, type ';|' (i.e., hit the semicolon
118 H: key to apply the next mutt command to all tagged messages,
119 H: then the pipe key) to pipe the selected mails to a
120 H: suitable script which adds a paraslash stream where exactly
121 H: these files are admissable or does whatever thou wilt.
122 ---
123 N: mv
124 P: AFS_READ | AFS_WRITE
125 D: rename entry in database
126 U: mv oldname newname
127 H: Rename oldname to newname. This updates the data table to reflect
128 H: the new name. All internal data (numplayed, lastplayed, picid,..)
129 H: is kept.  If newname is a full path, the dir table is updated as
130 H: well.
131 ---
132 N: na
133 P: AFS_READ | AFS_WRITE
134 D: add new attribute to database
135 U: na att
136 H: This adds a column named att to your mysql database. att should
137 H: only contain letters and numbers, in paricular, '+' and '-' are
138 H: not allowed.
139 ---
140 N: ne
141 P: AFS_READ | AFS_WRITE
142 D: add new database entries
143 U: ne file1 [file2 [...]]
144 H: Add the given filename(s) to the database, where file1,... must
145 H: be full path names. This command might be much faster than 'upd'
146 H: if the number of given files is small.
147 ---
148 N: ns
149 P: VSS_WRITE | AFS_READ | AFS_WRITE
150 D: change to next stream
151 U: ns
152 H: Cycle forwards through stream list.
153 ---
154 N: pic
155 P: AFS_READ
156 D: get picture by name or by identifier
157 U: pic [name]
158 H: Dump jpg image that is associated to given audio file (current
159 H: audio file if not specified) to stdout. If name starts with
160 H: '#' it is interpreted as an identifier instead and the picture
161 H: having that identifier is dumped to stdout.
162 H:
163 H: EXAMPLE
164 H:
165 H:      para_client pic '#123' > pic123.jpg
166 ---
167 N: picadd
168 P: AFS_READ | AFS_WRITE
169 D: add picture to database
170 U: picadd [picname]
171 H: Read jpeg file from stdin and store it as picname in database.
172 H:
173 H: EXAMPLE
174 H:
175 H:      para_client picadd foo.jpg < foo.jpg
176 ---
177 N: picass
178 P: AFS_READ | AFS_WRITE
179 D: associate a picture to file(s)
180 U: picass pic_id file1 [file2...]
181 H: Associate the picture given by pic_id to all given files.
182 ---
183 N: picch
184 P: AFS_READ | AFS_WRITE
185 D: change name of picture
186 U: picch id new_name
187 H: Asign new_name to picture with identifier id.
188 ---
189 N: picdel
190 P: AFS_READ | AFS_WRITE
191 D: delete picture from database
192 U: picdel id1 [id2...]
193 H: Delete each given picture from database.
194 ---
195 N: piclist
196 P: AFS_READ
197 D: print list of pictures
198 U: piclist
199 H: Print id, name and length of each picture contained in the
200 H: database.
201 ---
202 N: ps
203 P: VSS_WRITE | AFS_READ | AFS_WRITE
204 D: change to previous stream
205 U: ps
206 H: Cycle backwards through stream list.
207 ---
208 N: rm
209 P: AFS_READ | AFS_WRITE
210 D: remove entries from database
211 U: rm name1 [name2 [...]]
212 H: Remove name1, name2, ... from the data table. Use with caution.
213 ---
214 N: sa
215 P: AFS_READ | AFS_WRITE
216 D: set/unset attributes
217 U: sa at1<'+' | '-'> [at2<'+' | '-'> ] [af1 ...]
218 H: Set ('+') or unset ('-') attribute at1, at2 etc. for given list of
219 H: audio files. If no audio files were given the current audio file is
220 H: used. Example:
221 H:
222 H:      sa rock+ punk+ classic- LZ__Waldsterben.mp3
223 H:
224 H: sets the 'rock' and the 'punk' attribute but unsets the 'classic'
225 H: attribute.
226 ---
227 N: skip
228 P: AFS_READ | AFS_WRITE
229 D: skip subsequent audio files(s)
230 U: skip n [s]
231 H: Skip the next n audio files of stream s. This is equivalent to the
232 H: command 'sl n s', followed by 'us name' for each name the output of
233 H: sl.
234 ---
235 N: sl
236 P: AFS_READ
237 D: print score list
238 U: sl n [s]
239 H: Print sorted list of maximal n lines. Each line is an admissible
240 H: entry with respect to stream s. The list is sorted by score-value
241 H: which is given by the definition of s. If s is not given, the
242 H: current stream is used. Example:
243 H:
244 H:      sl 1
245 H:
246 H: shows you the audio file the server would select right now.
247 ---
248 N: snp
249 P: AFS_READ | AFS_WRITE
250 D: set numplayed
251 U: snp number af1 [af2 ...]
252 H: Update the numplayed field in the data table for all given audio
253 H: files.
254 ---
255 N: stradd
256 P: AFS_READ | AFS_WRITE
257 D: add stream
258 U: stradd s
259 H: Add stream s to the list of available streams. The stream
260 H: definition for s is read from stdin and is then sent to
261 H: para_server. Example:
262 H:
263 H:      echo 'deny: NAME_LIKE(%Madonna%)' | para_client stradd no_madonna
264 H:
265 H: adds the new stream 'no_madonna' to the list of available streams.
266 H: A given audio file is admissible for this stream iff its basename
267 H: does not contain the string 'Madonna'.
268 ---
269 N: strdel
270 P: AFS_READ | AFS_WRITE
271 D: delete stream
272 U: strdel s
273 H: Remove stream s from database.
274 ---
275 N: streams
276 P: AFS_READ
277 D: list streams
278 U: streams
279 H: Print list of available streams. Use 'cs' to switch to any of
280 H: these.
281 ---
282 N: strq
283 P: AFS_READ
284 D: query stream definition
285 U: strq [s]
286 H: Print definition of stream s to stdout. Use current stream if s was
287 H: not given.
288 ---
289 N: summary
290 P: AFS_READ
291 D: list attributes
292 U: summary
293 H: Print a list of attributes together with number of audio
294 H: files having that attribute set.
295 ---
296 N: upd
297 P: AFS_READ | AFS_WRITE
298 D: update database
299 U: upd
300 H: This command uses the --audio_file_dir option of para_server to
301 H: locate your audio files. New files are then added to the mysql
302 H: database. Use this command if you got new files or if you have
303 H: moved some files around.
304 ---
305 N: us
306 P: AFS_READ | AFS_WRITE
307 D: update lastplayed time
308 U: us name
309 H: Update lastplayed time without actually playing the thing.
310 ---
311 N: verb
312 P: AFS_READ | AFS_WRITE
313 D: send verbatim sql query
314 U: verb cmd
315 H: Send cmd to mysql server. For expert/debugging only. Note that cmd
316 H: usually must be escaped. Use only if you know what you are doing!
317 ---
318 N: vrfy
319 P: AFS_READ
320 D: list invalid entries in database
321 U: vrfy
322 H: Show what clean would delete. Run 'upd' before this command to make
323 H: sure your database is up to date.
324 ---