Merge branch 't/setatt_fnmatch'
[paraslash.git] / m4 / gengetopt / fade.m4
1 args "--conf-parser --no-handle-version --no-handle-help"
2
3 purpose "An alarm clock and volume-fader for OSS and ALSA."
4
5 include(header.m4)
6 define(CURRENT_PROGRAM,para_fade)
7 define(DEFAULT_CONFIG_FILE,~/.paraslash/fade.conf)
8 <qu>
9 section "General options"
10 #########################
11
12 </qu>
13 include(config_file.m4)
14 include(loglevel.m4)
15 <qu>
16 option "mode" o
17 #~~~~~~~~~~~~~~
18 "how to fade volume"
19         enum typestr = "mode"
20         values = "sleep", "snooze", "fade"
21         default = "sleep"
22         optional
23         details="
24                 para_fade knows three different fading modes:
25
26                 sleep mode: Change to the initial volume and select
27                 the initial afs mood/playlist. Then fade out until
28                 the fade-out volume is reached. Switch to the
29                 sleep mood/playlist until wake time minus fade-in
30                 time. Finally switch to the wake mood/playlist and
31                 fade to the fade-in volume.
32
33                 fade: Fade the volume to the given value in the
34                 given time.
35
36                 snooze: Fade out, sleep a bit and fade in.
37 "
38
39 option "mixer-api" a
40 #~~~~~~~~~~~~~~~~~~~
41 "choose the mixer API"
42         string typestr = "api"
43         optional
44         details = "
45                 ALSA is preferred over OSS if both APIs are supported
46                 and this option is not given. To see the supported
47                 mixer APIs, use this option with an invalid string
48                 as the mixer API, e.g. --mixer-api help.
49         "
50
51 option "mixer-device" m
52 #~~~~~~~~~~~~~~~~~~~~~~
53 "choose mixer device"
54         string typestr = "device"
55         optional
56         details = "
57                 The default device (used if this option is not given)
58                 depends on the selected mixer API. For ALSA, the
59                 default is 'hw:0' which corresponds to the first sound
60                 device. For OSS, '/dev/mixer' is used as the default.
61         "
62
63 option "mixer-channel" C
64 #~~~~~~~~~~~~~~~~~~~~~~~
65 "select the analog mixer channel"
66         string typestr = "channel"
67         optional
68         details = "
69                 For the ALSA mixer API, the possible values are
70                 determined at runtime depending on the hardware and
71                 can be printed by specifying an invalid mixer channel,
72                 for example --mixer-channel help. The default channel
73                 is 'Master'.
74
75                 For OSS the possible values are invariably 'volume',
76                 'bass', 'treble', 'synth', 'pcm', 'speaker', 'line',
77                 'mic', 'cd', 'imix', 'altpcm', 'reclev', 'igain',
78                 'ogain'. However, not all listed channels might be
79                 supported on any particular hardware. The default
80                 channel is 'volume'.
81         "
82
83 section "Options for sleep mode"
84 ################################
85
86 option "ivol" -
87 #~~~~~~~~~~~~~~
88 "set initial volume"
89         int typestr = "volume"
90         default = "60"
91         optional
92         details = "
93                 Used as the start volume, before fading out to the
94                 fade out volume.
95         "
96
97 option "fo-mood" -
98 #~~~~~~~~~~~~~~~~~
99 "afs mood/playlist during fade out"
100         string typestr = "mood_spec"
101         default = "m/fade"
102         optional
103         details = "
104                 Select this mood right after setting the
105                 volume. Example: --fo-mood m/sleep
106 "
107
108 option "fo-time" -
109 #~~~~~~~~~~~~~~~~~
110 "fall asleep fade out time"
111         int typestr = "seconds"
112         default = "1800"
113         optional
114         details = "
115                 No fading if set to 0.
116         "
117
118 option "fo-vol" -
119 #~~~~~~~~~~~~~~~~
120 "volume to fade out to"
121         int typestr = "volume"
122         default = "20"
123         optional
124
125 option "sleep-mood" -
126 #~~~~~~~~~~~~~~~~~~~~
127 "sleep time afs mood/playlist"
128         string typestr = "mood_spec"
129         default = "m/sleep"
130         optional
131         details = "
132                 Select the given afs mood/playlist after the fade
133                 out is complete. If unset, the \"stop\" command is
134                 sent to para_server.
135         "
136
137 option "wake-hour" H
138 #~~~~~~~~~~~~~~~~~~~
139 "(0-23) (default: now + 9 hours)"
140         int typestr = "hour"
141         optional
142
143 option "wake-min" M
144 #~~~~~~~~~~~~~~~~~~
145 "(0-59)"
146         int typestr = "minutes"
147         default = "0"
148         optional
149
150 option "fi-mood" -
151 #~~~~~~~~~~~~~~~~~
152 "afs mood/playlist during fade in"
153         string typestr = "mood_spec"
154         default = "m/wake"
155         optional
156         details = "
157                 Change to this afs mood/playlist on wake time.
158         "
159
160 option "fi-time" -
161 #~~~~~~~~~~~~~~~~~
162 "wake up fade in time"
163         int typestr="seconds"
164         default="1200"
165         optional
166         details = "
167                 No fading in if set to 0.
168         "
169
170 option "fi-vol" -
171 #~~~~~~~~~~~~~~~~
172 "volume to fade to at wake time"
173         int typestr = "volume"
174         default = "80"
175         optional
176
177 section "Options for snooze mode"
178 #################################
179
180 option "so-time" -
181 #~~~~~~~~~~~~~~~~~
182 "snooze-out time"
183         int typestr = "seconds"
184         default = "30"
185         optional
186
187 option "so-vol" -
188 #~~~~~~~~~~~~~~~~
189 "volume to fade to before snooze"
190         int typestr = "volume"
191         default = "20"
192         optional
193
194 option "snooze-time" -
195 #~~~~~~~~~~~~~~~~~~~~~
196 "delay"
197         int typestr = "seconds"
198         default = "600"
199         optional
200
201 option "si-time" -
202 #~~~~~~~~~~~~~~~~~
203 "snooze-in time"
204         int typestr = "seconds"
205         default = "180"
206         optional
207
208 option "si-vol" -
209 #~~~~~~~~~~~~~~~~
210 "volume to fade to after snooze"
211         int typestr = "volume"
212         default = "80"
213         optional
214
215 section "Options for fade mode"
216 ###############################
217
218 option "fade-vol" f
219 #~~~~~~~~~~~~~~~~~~
220 "volume to fade to"
221         int typestr = "volume"
222         default = "50"
223         optional
224
225 option "fade-time" t
226 #~~~~~~~~~~~~~~~~~~~
227 "fading time"
228         int typestr = "seconds"
229         default = "5"
230         optional
231 </qu>