diff options
Diffstat (limited to '.config/ncmpcpp')
-rw-r--r-- | .config/ncmpcpp/bindings | 559 | ||||
-rw-r--r-- | .config/ncmpcpp/config | 543 |
2 files changed, 1102 insertions, 0 deletions
diff --git a/.config/ncmpcpp/bindings b/.config/ncmpcpp/bindings new file mode 100644 index 0000000..c4099e1 --- /dev/null +++ b/.config/ncmpcpp/bindings | |||
@@ -0,0 +1,559 @@ | |||
1 | # https://gist.github.com/Soft/959188 | ||
2 | def_key "j" | ||
3 | scroll_down | ||
4 | def_key "k" | ||
5 | scroll_up | ||
6 | def_key "h" | ||
7 | previous_column | ||
8 | def_key "l" | ||
9 | next_column | ||
10 | def_key "L" | ||
11 | show_lyrics | ||
12 | def_key "n" | ||
13 | next_found_item | ||
14 | def_key "N" | ||
15 | previous_found_item | ||
16 | def_key "." | ||
17 | move_selected_items_down | ||
18 | def_key "g" | ||
19 | move_home | ||
20 | def_key "G" | ||
21 | move_end | ||
22 | |||
23 | ##### General rules ##### | ||
24 | ## | ||
25 | ## 1) Because each action has runtime checks whether it's | ||
26 | ## ok to run it, a few actions can be bound to one key. | ||
27 | ## Actions will be bound in order given in configuration | ||
28 | ## file. When a key is pressed, first action in order | ||
29 | ## will test itself whether it's possible to run it. If | ||
30 | ## test succeeds, action is executed and other actions | ||
31 | ## bound to this key are ignored. If it doesn't, next | ||
32 | ## action in order tests itself etc. | ||
33 | ## | ||
34 | ## 2) It's possible to bind more that one action at once | ||
35 | ## to a key. It can be done using the following syntax: | ||
36 | ## | ||
37 | ## def_key "key" | ||
38 | ## action1 | ||
39 | ## action2 | ||
40 | ## ... | ||
41 | ## | ||
42 | ## This creates a chain of actions. When such chain is | ||
43 | ## executed, each action in chain is run until the end of | ||
44 | ## chain is reached or one of its actions fails to execute | ||
45 | ## due to its requirements not being met. If multiple actions | ||
46 | ## and/or chains are bound to the same key, they will be | ||
47 | ## consecutively run until one of them gets fully executed. | ||
48 | ## | ||
49 | ## 3) When ncmpcpp starts, bindings configuration file is | ||
50 | ## parsed and then ncmpcpp provides "missing pieces" | ||
51 | ## of default keybindings. If you want to disable some | ||
52 | ## bindings, there is a special action called 'dummy' | ||
53 | ## for that purpose. Eg. if you want to disable ability | ||
54 | ## to crop playlists, you need to put the following | ||
55 | ## into configuration file: | ||
56 | ## | ||
57 | ## def_key "C" | ||
58 | ## dummy | ||
59 | ## | ||
60 | ## After that ncmpcpp will not bind any default action | ||
61 | ## to this key. | ||
62 | ## | ||
63 | ## 4) To let you write simple macros, the following special | ||
64 | ## actions are provided: | ||
65 | ## | ||
66 | ## - push_character "character" - pushes given special | ||
67 | ## character into input queue, so it will be immediately | ||
68 | ## picked by ncmpcpp upon next call to readKey function. | ||
69 | ## Accepted values: mouse, up, down, page_up, page_down, | ||
70 | ## home, end, space, enter, insert, delete, left, right, | ||
71 | ## tab, ctrl-a, ctrl-b, ..., ctrl-z, ctrl-[, ctrl-\\, | ||
72 | ## ctrl-], ctrl-^, ctrl-_, f1, f2, ..., f12, backspace. | ||
73 | ## In addition, most of these names can be prefixed with | ||
74 | ## alt-/ctrl-/shift- to be recognized with the appropriate | ||
75 | ## modifier key(s). | ||
76 | ## | ||
77 | ## - push_characters "string" - pushes given string into | ||
78 | ## input queue. | ||
79 | ## | ||
80 | ## - require_runnable "action" - checks whether given action | ||
81 | ## is runnable and fails if it isn't. This is especially | ||
82 | ## useful when mixed with previous two functions. Consider | ||
83 | ## the following macro definition: | ||
84 | ## | ||
85 | ## def_key "key" | ||
86 | ## push_characters "custom_filter" | ||
87 | ## apply_filter | ||
88 | ## | ||
89 | ## If apply_filter can't be currently run, we end up with | ||
90 | ## sequence of characters in input queue which will be | ||
91 | ## treated just as we typed them. This may lead to unexpected | ||
92 | ## results (in this case 'c' will most likely clear current | ||
93 | ## playlist, 'u' will trigger database update, 's' will stop | ||
94 | ## playback etc.). To prevent such thing from happening, we | ||
95 | ## need to change above definition to this one: | ||
96 | ## | ||
97 | ## def_key "key" | ||
98 | ## require_runnable "apply_filter" | ||
99 | ## push_characters "custom_filter" | ||
100 | ## apply_filter | ||
101 | ## | ||
102 | ## Here, first we test whether apply_filter can be actually run | ||
103 | ## before we stuff characters into input queue, so if condition | ||
104 | ## is not met, whole chain is aborted and we're fine. | ||
105 | ## | ||
106 | ## - require_screen "screen" - checks whether given screen is | ||
107 | ## currently active. accepted values: browser, clock, help, | ||
108 | ## media_library, outputs, playlist, playlist_editor, | ||
109 | ## search_engine, tag_editor, visualizer, last_fm, lyrics, | ||
110 | ## selected_items_adder, server_info, song_info, | ||
111 | ## sort_playlist_dialog, tiny_tag_editor. | ||
112 | ## | ||
113 | ## - run_external_command "command" - runs given command using | ||
114 | ## system() function. | ||
115 | ## | ||
116 | ## 5) In addition to binding to a key, you can also bind actions | ||
117 | ## or chains of actions to a command. If it comes to commands, | ||
118 | ## syntax is very similar to defining keys. Here goes example | ||
119 | ## definition of a command: | ||
120 | ## | ||
121 | ## def_command "quit" [deferred] | ||
122 | ## stop | ||
123 | ## quit | ||
124 | ## | ||
125 | ## If you execute the above command (which can be done by | ||
126 | ## invoking action execute_command, typing 'quit' and pressing | ||
127 | ## enter), ncmpcpp will stop the player and then quit. Note the | ||
128 | ## presence of word 'deferred' enclosed in square brackets. It | ||
129 | ## tells ncmpcpp to wait for confirmation (ie. pressing enter) | ||
130 | ## after you typed quit. Instead of 'deferred', 'immediate' | ||
131 | ## could be used. Then ncmpcpp will not wait for confirmation | ||
132 | ## (enter) and will execute the command the moment it sees it. | ||
133 | ## | ||
134 | ## Note: while command chains are executed, internal environment | ||
135 | ## update (which includes current window refresh and mpd status | ||
136 | ## update) is not performed for performance reasons. However, it | ||
137 | ## may be desirable to do so in some situration. Therefore it's | ||
138 | ## possible to invoke by hand by performing 'update enviroment' | ||
139 | ## action. | ||
140 | ## | ||
141 | ## Note: There is a difference between: | ||
142 | ## | ||
143 | ## def_key "key" | ||
144 | ## action1 | ||
145 | ## | ||
146 | ## def_key "key" | ||
147 | ## action2 | ||
148 | ## | ||
149 | ## and | ||
150 | ## | ||
151 | ## def_key "key" | ||
152 | ## action1 | ||
153 | ## action2 | ||
154 | ## | ||
155 | ## First one binds two single actions to the same key whilst | ||
156 | ## second one defines a chain of actions. The behavior of | ||
157 | ## these two is different and is described in (1) and (2). | ||
158 | ## | ||
159 | ## Note: Function def_key accepts non-ascii characters. | ||
160 | ## | ||
161 | ##### List of unbound actions ##### | ||
162 | ## | ||
163 | ## The following actions are not bound to any key/command: | ||
164 | ## | ||
165 | ## - set_volume | ||
166 | ## | ||
167 | # | ||
168 | #def_key "mouse" | ||
169 | # mouse_event | ||
170 | # | ||
171 | #def_key "up" | ||
172 | # scroll_up | ||
173 | # | ||
174 | #def_key "shift-up" | ||
175 | # select_item | ||
176 | # scroll_up | ||
177 | # | ||
178 | #def_key "down" | ||
179 | # scroll_down | ||
180 | # | ||
181 | #def_key "shift-down" | ||
182 | # select_item | ||
183 | # scroll_down | ||
184 | # | ||
185 | #def_key "[" | ||
186 | # scroll_up_album | ||
187 | # | ||
188 | #def_key "]" | ||
189 | # scroll_down_album | ||
190 | # | ||
191 | #def_key "{" | ||
192 | # scroll_up_artist | ||
193 | # | ||
194 | #def_key "}" | ||
195 | # scroll_down_artist | ||
196 | # | ||
197 | #def_key "page_up" | ||
198 | # page_up | ||
199 | # | ||
200 | #def_key "page_down" | ||
201 | # page_down | ||
202 | # | ||
203 | #def_key "home" | ||
204 | # move_home | ||
205 | # | ||
206 | #def_key "end" | ||
207 | # move_end | ||
208 | # | ||
209 | #def_key "insert" | ||
210 | # select_item | ||
211 | # | ||
212 | #def_key "enter" | ||
213 | # enter_directory | ||
214 | # | ||
215 | #def_key "enter" | ||
216 | # toggle_output | ||
217 | # | ||
218 | #def_key "enter" | ||
219 | # run_action | ||
220 | # | ||
221 | #def_key "enter" | ||
222 | # play_item | ||
223 | # | ||
224 | #def_key "space" | ||
225 | # add_item_to_playlist | ||
226 | # | ||
227 | #def_key "space" | ||
228 | # toggle_lyrics_update_on_song_change | ||
229 | # | ||
230 | #def_key "space" | ||
231 | # toggle_visualization_type | ||
232 | # | ||
233 | #def_key "delete" | ||
234 | # delete_playlist_items | ||
235 | # | ||
236 | #def_key "delete" | ||
237 | # delete_browser_items | ||
238 | # | ||
239 | #def_key "delete" | ||
240 | # delete_stored_playlist | ||
241 | # | ||
242 | #def_key "right" | ||
243 | # next_column | ||
244 | # | ||
245 | #def_key "right" | ||
246 | # slave_screen | ||
247 | # | ||
248 | #def_key "right" | ||
249 | # volume_up | ||
250 | # | ||
251 | #def_key "+" | ||
252 | # volume_up | ||
253 | # | ||
254 | #def_key "left" | ||
255 | # previous_column | ||
256 | # | ||
257 | #def_key "left" | ||
258 | # master_screen | ||
259 | # | ||
260 | #def_key "left" | ||
261 | # volume_down | ||
262 | # | ||
263 | #def_key "-" | ||
264 | # volume_down | ||
265 | # | ||
266 | #def_key ":" | ||
267 | # execute_command | ||
268 | # | ||
269 | #def_key "tab" | ||
270 | # next_screen | ||
271 | # | ||
272 | #def_key "shift-tab" | ||
273 | # previous_screen | ||
274 | # | ||
275 | #def_key "f1" | ||
276 | # show_help | ||
277 | # | ||
278 | #def_key "1" | ||
279 | # show_playlist | ||
280 | # | ||
281 | #def_key "2" | ||
282 | # show_browser | ||
283 | # | ||
284 | #def_key "2" | ||
285 | # change_browse_mode | ||
286 | # | ||
287 | #def_key "3" | ||
288 | # show_search_engine | ||
289 | # | ||
290 | #def_key "3" | ||
291 | # reset_search_engine | ||
292 | # | ||
293 | #def_key "4" | ||
294 | # show_media_library | ||
295 | # | ||
296 | #def_key "4" | ||
297 | # toggle_media_library_columns_mode | ||
298 | # | ||
299 | #def_key "5" | ||
300 | # show_playlist_editor | ||
301 | # | ||
302 | #def_key "6" | ||
303 | # show_tag_editor | ||
304 | # | ||
305 | #def_key "7" | ||
306 | # show_outputs | ||
307 | # | ||
308 | #def_key "8" | ||
309 | # show_visualizer | ||
310 | # | ||
311 | #def_key "=" | ||
312 | # show_clock | ||
313 | # | ||
314 | #def_key "@" | ||
315 | # show_server_info | ||
316 | # | ||
317 | #def_key "s" | ||
318 | # stop | ||
319 | # | ||
320 | #def_key "p" | ||
321 | # pause | ||
322 | # | ||
323 | #def_key ">" | ||
324 | # next | ||
325 | # | ||
326 | #def_key "<" | ||
327 | # previous | ||
328 | # | ||
329 | #def_key "ctrl-h" | ||
330 | # jump_to_parent_directory | ||
331 | # | ||
332 | #def_key "ctrl-h" | ||
333 | # replay_song | ||
334 | # | ||
335 | #def_key "backspace" | ||
336 | # jump_to_parent_directory | ||
337 | # | ||
338 | #def_key "backspace" | ||
339 | # replay_song | ||
340 | # | ||
341 | #def_key "f" | ||
342 | # seek_forward | ||
343 | # | ||
344 | #def_key "b" | ||
345 | # seek_backward | ||
346 | # | ||
347 | #def_key "r" | ||
348 | # toggle_repeat | ||
349 | # | ||
350 | #def_key "z" | ||
351 | # toggle_random | ||
352 | # | ||
353 | #def_key "y" | ||
354 | # save_tag_changes | ||
355 | # | ||
356 | #def_key "y" | ||
357 | # start_searching | ||
358 | # | ||
359 | #def_key "y" | ||
360 | # toggle_single | ||
361 | # | ||
362 | #def_key "R" | ||
363 | # toggle_consume | ||
364 | # | ||
365 | #def_key "Y" | ||
366 | # toggle_replay_gain_mode | ||
367 | # | ||
368 | #def_key "T" | ||
369 | # toggle_add_mode | ||
370 | # | ||
371 | #def_key "|" | ||
372 | # toggle_mouse | ||
373 | # | ||
374 | #def_key "#" | ||
375 | # toggle_bitrate_visibility | ||
376 | # | ||
377 | #def_key "Z" | ||
378 | # shuffle | ||
379 | # | ||
380 | #def_key "x" | ||
381 | # toggle_crossfade | ||
382 | # | ||
383 | #def_key "X" | ||
384 | # set_crossfade | ||
385 | # | ||
386 | #def_key "u" | ||
387 | # update_database | ||
388 | # | ||
389 | #def_key "ctrl-s" | ||
390 | # sort_playlist | ||
391 | # | ||
392 | #def_key "ctrl-s" | ||
393 | # toggle_browser_sort_mode | ||
394 | # | ||
395 | #def_key "ctrl-s" | ||
396 | # toggle_media_library_sort_mode | ||
397 | # | ||
398 | #def_key "ctrl-r" | ||
399 | # reverse_playlist | ||
400 | # | ||
401 | #def_key "ctrl-f" | ||
402 | # apply_filter | ||
403 | # | ||
404 | #def_key "ctrl-_" | ||
405 | # select_found_items | ||
406 | # | ||
407 | #def_key "/" | ||
408 | # find | ||
409 | # | ||
410 | #def_key "/" | ||
411 | # find_item_forward | ||
412 | # | ||
413 | #def_key "?" | ||
414 | # find | ||
415 | # | ||
416 | #def_key "?" | ||
417 | # find_item_backward | ||
418 | # | ||
419 | #def_key "." | ||
420 | # next_found_item | ||
421 | # | ||
422 | #def_key "," | ||
423 | # previous_found_item | ||
424 | # | ||
425 | #def_key "w" | ||
426 | # toggle_find_mode | ||
427 | # | ||
428 | #def_key "e" | ||
429 | # edit_song | ||
430 | # | ||
431 | #def_key "e" | ||
432 | # edit_library_tag | ||
433 | # | ||
434 | #def_key "e" | ||
435 | # edit_library_album | ||
436 | # | ||
437 | #def_key "e" | ||
438 | # edit_directory_name | ||
439 | # | ||
440 | #def_key "e" | ||
441 | # edit_playlist_name | ||
442 | # | ||
443 | #def_key "e" | ||
444 | # edit_lyrics | ||
445 | # | ||
446 | #def_key "i" | ||
447 | # show_song_info | ||
448 | # | ||
449 | #def_key "I" | ||
450 | # show_artist_info | ||
451 | # | ||
452 | #def_key "g" | ||
453 | # jump_to_position_in_song | ||
454 | # | ||
455 | #def_key "l" | ||
456 | # show_lyrics | ||
457 | # | ||
458 | #def_key "ctrl-v" | ||
459 | # select_range | ||
460 | # | ||
461 | #def_key "v" | ||
462 | # reverse_selection | ||
463 | # | ||
464 | #def_key "V" | ||
465 | # remove_selection | ||
466 | # | ||
467 | #def_key "B" | ||
468 | # select_album | ||
469 | # | ||
470 | #def_key "a" | ||
471 | # add_selected_items | ||
472 | # | ||
473 | #def_key "c" | ||
474 | # clear_playlist | ||
475 | # | ||
476 | #def_key "c" | ||
477 | # clear_main_playlist | ||
478 | # | ||
479 | #def_key "C" | ||
480 | # crop_playlist | ||
481 | # | ||
482 | #def_key "C" | ||
483 | # crop_main_playlist | ||
484 | # | ||
485 | #def_key "m" | ||
486 | # move_sort_order_up | ||
487 | # | ||
488 | #def_key "m" | ||
489 | # move_selected_items_up | ||
490 | # | ||
491 | #def_key "n" | ||
492 | # move_sort_order_down | ||
493 | # | ||
494 | #def_key "n" | ||
495 | # move_selected_items_down | ||
496 | # | ||
497 | #def_key "M" | ||
498 | # move_selected_items_to | ||
499 | # | ||
500 | #def_key "A" | ||
501 | # add | ||
502 | # | ||
503 | #def_key "S" | ||
504 | # save_playlist | ||
505 | # | ||
506 | #def_key "o" | ||
507 | # jump_to_playing_song | ||
508 | # | ||
509 | #def_key "G" | ||
510 | # jump_to_browser | ||
511 | # | ||
512 | #def_key "G" | ||
513 | # jump_to_playlist_editor | ||
514 | # | ||
515 | #def_key "~" | ||
516 | # jump_to_media_library | ||
517 | # | ||
518 | #def_key "E" | ||
519 | # jump_to_tag_editor | ||
520 | # | ||
521 | #def_key "U" | ||
522 | # toggle_playing_song_centering | ||
523 | # | ||
524 | #def_key "P" | ||
525 | # toggle_display_mode | ||
526 | # | ||
527 | #def_key "\\" | ||
528 | # toggle_interface | ||
529 | # | ||
530 | #def_key "!" | ||
531 | # toggle_separators_between_albums | ||
532 | # | ||
533 | #def_key "L" | ||
534 | # toggle_lyrics_fetcher | ||
535 | # | ||
536 | #def_key "F" | ||
537 | # fetch_lyrics_in_background | ||
538 | # | ||
539 | #def_key "alt-l" | ||
540 | # toggle_fetching_lyrics_in_background | ||
541 | # | ||
542 | #def_key "ctrl-l" | ||
543 | # toggle_screen_lock | ||
544 | # | ||
545 | #def_key "`" | ||
546 | # toggle_library_tag_type | ||
547 | # | ||
548 | #def_key "`" | ||
549 | # refetch_lyrics | ||
550 | # | ||
551 | #def_key "`" | ||
552 | # add_random_items | ||
553 | # | ||
554 | #def_key "ctrl-p" | ||
555 | # set_selected_items_priority | ||
556 | # | ||
557 | #def_key "q" | ||
558 | # quit | ||
559 | # | ||
diff --git a/.config/ncmpcpp/config b/.config/ncmpcpp/config new file mode 100644 index 0000000..5e9cf38 --- /dev/null +++ b/.config/ncmpcpp/config | |||
@@ -0,0 +1,543 @@ | |||
1 | ############################################################################## | ||
2 | ## This is the example configuration file. Copy it to $HOME/.ncmpcpp/config ## | ||
3 | ## or $XDG_CONFIG_HOME/ncmpcpp/config and set up your preferences. ## | ||
4 | ############################################################################## | ||
5 | # | ||
6 | ##### directories ###### | ||
7 | ## | ||
8 | ## Directory for storing ncmpcpp related files. Changing it is useful if you | ||
9 | ## want to store everything somewhere else and provide command line setting for | ||
10 | ## alternative location to config file which defines that while launching | ||
11 | ## ncmpcpp. | ||
12 | ## | ||
13 | # | ||
14 | #ncmpcpp_directory = ~/.ncmpcpp | ||
15 | # | ||
16 | ## | ||
17 | ## Directory for storing downloaded lyrics. It defaults to ~/.lyrics since other | ||
18 | ## MPD clients (eg. ncmpc) also use that location. | ||
19 | ## | ||
20 | # | ||
21 | #lyrics_directory = ~/.lyrics | ||
22 | # | ||
23 | ##### connection settings ##### | ||
24 | # | ||
25 | #mpd_host = localhost | ||
26 | # | ||
27 | #mpd_port = 6600 | ||
28 | # | ||
29 | #mpd_connection_timeout = 5 | ||
30 | # | ||
31 | ## Needed for tag editor and file operations to work. | ||
32 | ## | ||
33 | mpd_music_dir = ~/Music | ||
34 | # | ||
35 | #mpd_crossfade_time = 5 | ||
36 | # | ||
37 | ##### music visualizer ##### | ||
38 | ## | ||
39 | ## Note: In order to make music visualizer work you'll need to use mpd fifo | ||
40 | ## output, whose format parameter has to be set to 44100:16:1 for mono | ||
41 | ## visualization or 44100:16:2 for stereo visualization. Example configuration | ||
42 | ## (it has to be put into mpd.conf): | ||
43 | ## | ||
44 | ## audio_output { | ||
45 | ## type "fifo" | ||
46 | ## name "Visualizer feed" | ||
47 | ## path "/tmp/mpd.fifo" | ||
48 | ## format "44100:16:2" | ||
49 | ## } | ||
50 | ## | ||
51 | # | ||
52 | #visualizer_fifo_path = /tmp/mpd.fifo | ||
53 | # | ||
54 | ## | ||
55 | ## Note: Below parameter is needed for ncmpcpp to determine which output | ||
56 | ## provides data for visualizer and thus allow syncing between visualization and | ||
57 | ## sound as currently there are some problems with it. | ||
58 | ## | ||
59 | # | ||
60 | #visualizer_output_name = Visualizer feed | ||
61 | # | ||
62 | ## | ||
63 | ## If you set format to 44100:16:2, make it 'yes'. | ||
64 | ## | ||
65 | #visualizer_in_stereo = yes | ||
66 | # | ||
67 | ## | ||
68 | ## Note: Below parameter defines how often ncmpcpp has to "synchronize" | ||
69 | ## visualizer and audio outputs. 30 seconds is optimal value, but if you | ||
70 | ## experience synchronization problems, set it to lower value. Keep in mind | ||
71 | ## that sane values start with >=10. | ||
72 | ## | ||
73 | # | ||
74 | #visualizer_sync_interval = 30 | ||
75 | # | ||
76 | ## | ||
77 | ## Note: To enable spectrum frequency visualization you need to compile ncmpcpp | ||
78 | ## with fftw3 support. | ||
79 | ## | ||
80 | # | ||
81 | ## Available values: spectrum, wave, wave_filled, ellipse. | ||
82 | ## | ||
83 | #visualizer_type = wave | ||
84 | # | ||
85 | #visualizer_look = ●▮ | ||
86 | # | ||
87 | #visualizer_color = blue, cyan, green, yellow, magenta, red | ||
88 | # | ||
89 | ## Alternative subset of 256 colors for terminals that support it. | ||
90 | ## | ||
91 | #visualizer_color = 41, 83, 119, 155, 185, 215, 209, 203, 197, 161 | ||
92 | # | ||
93 | ##### system encoding ##### | ||
94 | ## | ||
95 | ## ncmpcpp should detect your charset encoding but if it failed to do so, you | ||
96 | ## can specify charset encoding you are using here. | ||
97 | ## | ||
98 | ## Note: You can see whether your ncmpcpp build supports charset detection by | ||
99 | ## checking output of `ncmpcpp --version`. | ||
100 | ## | ||
101 | ## Note: Since MPD uses UTF-8 by default, setting this option makes sense only | ||
102 | ## if your encoding is different. | ||
103 | ## | ||
104 | # | ||
105 | #system_encoding = "" | ||
106 | # | ||
107 | ##### delays ##### | ||
108 | # | ||
109 | ## Time of inactivity (in seconds) after playlist highlighting will be disabled | ||
110 | ## (0 = always on). | ||
111 | ## | ||
112 | #playlist_disable_highlight_delay = 5 | ||
113 | # | ||
114 | ## Defines how long messages are supposed to be visible. | ||
115 | ## | ||
116 | #message_delay_time = 5 | ||
117 | # | ||
118 | ##### song format ##### | ||
119 | ## | ||
120 | ## For a song format you can use: | ||
121 | ## | ||
122 | ## %l - length | ||
123 | ## %f - filename | ||
124 | ## %D - directory | ||
125 | ## %a - artist | ||
126 | ## %A - album artist | ||
127 | ## %t - title | ||
128 | ## %b - album | ||
129 | ## %y - date | ||
130 | ## %n - track number (01/12 -> 01) | ||
131 | ## %N - full track info (01/12 -> 01/12) | ||
132 | ## %g - genre | ||
133 | ## %c - composer | ||
134 | ## %p - performer | ||
135 | ## %d - disc | ||
136 | ## %C - comment | ||
137 | ## %P - priority | ||
138 | ## $R - begin right alignment | ||
139 | ## | ||
140 | ## If you want to make sure that a part of the format is displayed only when | ||
141 | ## certain tags are present, you can archieve it by grouping them with brackets, | ||
142 | ## e.g. '{%a - %t}' will be evaluated to 'ARTIST - TITLE' if both tags are | ||
143 | ## present or '' otherwise. It is also possible to define a list of | ||
144 | ## alternatives by providing several groups and separating them with '|', | ||
145 | ## e.g. '{%t}|{%f}' will be evaluated to 'TITLE' or 'FILENAME' if the former is | ||
146 | ## not present. | ||
147 | ## | ||
148 | ## Note: If you want to set limit on maximal length of a tag, just put the | ||
149 | ## appropriate number between % and character that defines tag type, e.g. to | ||
150 | ## make album take max. 20 terminal cells, use '%20b'. | ||
151 | ## | ||
152 | ## In addition, formats support markers used for text attributes. They are | ||
153 | ## followed by character '$'. After that you can put: | ||
154 | ## | ||
155 | ## - 0 - default window color (discards all other colors) | ||
156 | ## - 1 - black | ||
157 | ## - 2 - red | ||
158 | ## - 3 - green | ||
159 | ## - 4 - yellow | ||
160 | ## - 5 - blue | ||
161 | ## - 6 - magenta | ||
162 | ## - 7 - cyan | ||
163 | ## - 8 - white | ||
164 | ## - 9 - end of current color | ||
165 | ## - b - bold text | ||
166 | ## - u - underline text | ||
167 | ## - r - reverse colors | ||
168 | ## - a - use alternative character set | ||
169 | ## | ||
170 | ## If you don't want to use a non-color attribute anymore, just put it again, | ||
171 | ## but this time insert character '/' between '$' and attribute character, | ||
172 | ## e.g. {$b%t$/b}|{$r%f$/r} will display bolded title tag or filename with | ||
173 | ## reversed colors. | ||
174 | ## | ||
175 | ## If you want to use 256 colors and/or background colors in formats (the naming | ||
176 | ## scheme is described below in section about color definitions), it can be done | ||
177 | ## with the syntax $(COLOR), e.g. to set the artist tag to one of the | ||
178 | ## non-standard colors and make it have yellow background, you need to write | ||
179 | ## $(197_yellow)%a$(end). Note that for standard colors this is interchangable | ||
180 | ## with attributes listed above. | ||
181 | ## | ||
182 | ## Note: colors can be nested. | ||
183 | ## | ||
184 | # | ||
185 | #song_list_format = {%a - }{%t}|{$8%f$9}$R{$3(%l)$9} | ||
186 | # | ||
187 | #song_status_format = {{%a{ "%b"{ (%y)}} - }{%t}}|{%f} | ||
188 | # | ||
189 | #song_library_format = {%n - }{%t}|{%f} | ||
190 | # | ||
191 | #alternative_header_first_line_format = $b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b | ||
192 | # | ||
193 | #alternative_header_second_line_format = {{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D} | ||
194 | # | ||
195 | #current_item_prefix = $(yellow)$r | ||
196 | # | ||
197 | #current_item_suffix = $/r$(end) | ||
198 | # | ||
199 | #current_item_inactive_column_prefix = $(white)$r | ||
200 | # | ||
201 | #current_item_inactive_column_suffix = $/r$(end) | ||
202 | # | ||
203 | #now_playing_prefix = $b | ||
204 | # | ||
205 | #now_playing_suffix = $/b | ||
206 | # | ||
207 | #browser_playlist_prefix = "$2playlist$9 " | ||
208 | # | ||
209 | #selected_item_prefix = $6 | ||
210 | # | ||
211 | #selected_item_suffix = $9 | ||
212 | # | ||
213 | #modified_item_prefix = $3> $9 | ||
214 | # | ||
215 | ## | ||
216 | ## Note: attributes are not supported for the following variables. | ||
217 | ## | ||
218 | #song_window_title_format = {%a - }{%t}|{%f} | ||
219 | ## | ||
220 | ## Note: Below variables are used for sorting songs in browser. The sort mode | ||
221 | ## determines how songs are sorted, and can be used in combination with a sort | ||
222 | ## format to specify a custom sorting format. Available values for | ||
223 | ## browser_sort_mode are "name", "mtime", "format" and "noop". | ||
224 | ## | ||
225 | # | ||
226 | #browser_sort_mode = name | ||
227 | # | ||
228 | #browser_sort_format = {%a - }{%t}|{%f} {(%l)} | ||
229 | # | ||
230 | ##### columns settings ##### | ||
231 | ## | ||
232 | ## syntax of song columns list format is "column column etc." | ||
233 | ## | ||
234 | ## - syntax for each column is: | ||
235 | ## | ||
236 | ## (width of the column)[color of the column]{displayed tag} | ||
237 | ## | ||
238 | ## Note: Width is by default in %, if you want a column to have fixed size, add | ||
239 | ## 'f' after the value, e.g. (10)[white]{a} will be the column that take 10% of | ||
240 | ## screen (so the real width will depend on actual screen size), whereas | ||
241 | ## (10f)[white]{a} will take 10 terminal cells, no matter how wide the screen | ||
242 | ## is. | ||
243 | ## | ||
244 | ## - color is optional (if you want the default one, leave the field empty). | ||
245 | ## | ||
246 | ## Note: You can give a column additional attributes by putting appropriate | ||
247 | ## character after displayed tag character. Available attributes are: | ||
248 | ## | ||
249 | ## - r - column will be right aligned | ||
250 | ## - E - if tag is empty, empty tag marker won't be displayed | ||
251 | ## | ||
252 | ## You can also: | ||
253 | ## | ||
254 | ## - give a column custom name by putting it after attributes, separated with | ||
255 | ## character ':', e.g. {lr:Length} gives you right aligned column of lengths | ||
256 | ## named "Length". | ||
257 | ## | ||
258 | ## - define sequence of tags, that have to be displayed in case predecessor is | ||
259 | ## empty in a way similar to the one in classic song format, i.e. using '|' | ||
260 | ## character, e.g. {a|c|p:Owner} creates column named "Owner" that tries to | ||
261 | ## display artist tag and then composer and performer if previous ones are not | ||
262 | ## available. | ||
263 | ## | ||
264 | # | ||
265 | #song_columns_list_format = (20)[]{a} (6f)[green]{NE} (50)[white]{t|f:Title} (20)[cyan]{b} (7f)[magenta]{l} | ||
266 | # | ||
267 | ##### various settings ##### | ||
268 | # | ||
269 | ## | ||
270 | ## Note: Custom command that will be executed each time song changes. Useful for | ||
271 | ## notifications etc. | ||
272 | ## | ||
273 | execute_on_song_change = notify-send "$(mpc current)" --app-name="ncmpcpp" --icon="folder-music" | ||
274 | # | ||
275 | ## | ||
276 | ## Note: Custom command that will be executed each time player state | ||
277 | ## changes. The environment variable MPD_PLAYER_STATE is set to the current | ||
278 | ## state (either unknown, play, pause, or stop) for its duration. | ||
279 | ## | ||
280 | # | ||
281 | #execute_on_player_state_change = "" | ||
282 | # | ||
283 | #playlist_show_mpd_host = no | ||
284 | # | ||
285 | #playlist_show_remaining_time = no | ||
286 | # | ||
287 | #playlist_shorten_total_times = no | ||
288 | # | ||
289 | #playlist_separate_albums = no | ||
290 | # | ||
291 | ## | ||
292 | ## Note: Possible display modes: classic, columns. | ||
293 | ## | ||
294 | #playlist_display_mode = columns | ||
295 | # | ||
296 | #browser_display_mode = classic | ||
297 | # | ||
298 | #search_engine_display_mode = classic | ||
299 | # | ||
300 | #playlist_editor_display_mode = classic | ||
301 | # | ||
302 | #discard_colors_if_item_is_selected = yes | ||
303 | # | ||
304 | #show_duplicate_tags = yes | ||
305 | # | ||
306 | #incremental_seeking = yes | ||
307 | # | ||
308 | #seek_time = 1 | ||
309 | # | ||
310 | #volume_change_step = 2 | ||
311 | # | ||
312 | #autocenter_mode = no | ||
313 | # | ||
314 | #centered_cursor = no | ||
315 | # | ||
316 | ## | ||
317 | ## Note: You can specify third character which will be used to build 'empty' | ||
318 | ## part of progressbar. | ||
319 | ## | ||
320 | #progressbar_look = => | ||
321 | # | ||
322 | ## Available values: database, playlist. | ||
323 | ## | ||
324 | #default_place_to_search_in = database | ||
325 | # | ||
326 | ## Available values: classic, alternative. | ||
327 | ## | ||
328 | user_interface = alternative | ||
329 | # | ||
330 | #data_fetching_delay = yes | ||
331 | # | ||
332 | ## Available values: artist, album_artist, date, genre, composer, performer. | ||
333 | ## | ||
334 | #media_library_primary_tag = artist | ||
335 | # | ||
336 | #media_library_albums_split_by_date = yes | ||
337 | # | ||
338 | ## Available values: wrapped, normal. | ||
339 | ## | ||
340 | #default_find_mode = wrapped | ||
341 | # | ||
342 | #default_tag_editor_pattern = %n - %t | ||
343 | # | ||
344 | #header_visibility = yes | ||
345 | # | ||
346 | #statusbar_visibility = yes | ||
347 | # | ||
348 | #titles_visibility = yes | ||
349 | # | ||
350 | #header_text_scrolling = yes | ||
351 | # | ||
352 | #cyclic_scrolling = no | ||
353 | # | ||
354 | #lines_scrolled = 2 | ||
355 | # | ||
356 | #lyrics_fetchers = lyricwiki, azlyrics, genius, sing365, lyricsmania, metrolyrics, justsomelyrics, jahlyrics, plyrics, tekstowo, internet | ||
357 | # | ||
358 | #follow_now_playing_lyrics = no | ||
359 | # | ||
360 | #fetch_lyrics_for_current_song_in_background = no | ||
361 | # | ||
362 | #store_lyrics_in_song_dir = no | ||
363 | # | ||
364 | #generate_win32_compatible_filenames = yes | ||
365 | # | ||
366 | #allow_for_physical_item_deletion = no | ||
367 | # | ||
368 | ## | ||
369 | ## Note: If you set this variable, ncmpcpp will try to get info from last.fm in | ||
370 | ## language you set and if it fails, it will fall back to english. Otherwise it | ||
371 | ## will use english the first time. | ||
372 | ## | ||
373 | ## Note: Language has to be expressed as an ISO 639 alpha-2 code. | ||
374 | ## | ||
375 | #lastfm_preferred_language = en | ||
376 | # | ||
377 | #space_add_mode = add_remove | ||
378 | # | ||
379 | #show_hidden_files_in_local_browser = no | ||
380 | # | ||
381 | ## | ||
382 | ## How shall screen switcher work? | ||
383 | ## | ||
384 | ## - "previous" - switch between the current and previous screen. | ||
385 | ## - "screen1,...,screenN" - switch between given sequence of screens. | ||
386 | ## | ||
387 | ## Screens available for use: help, playlist, browser, search_engine, | ||
388 | ## media_library, playlist_editor, tag_editor, outputs, visualizer, clock, | ||
389 | ## lyrics, last_fm. | ||
390 | ## | ||
391 | #screen_switcher_mode = playlist, browser | ||
392 | # | ||
393 | ## | ||
394 | ## Note: You can define startup screen by choosing screen from the list above. | ||
395 | ## | ||
396 | #startup_screen = playlist | ||
397 | # | ||
398 | ## | ||
399 | ## Note: You can define startup slave screen by choosing screen from the list | ||
400 | ## above or an empty value for no slave screen. | ||
401 | ## | ||
402 | #startup_slave_screen = "" | ||
403 | # | ||
404 | #startup_slave_screen_focus = no | ||
405 | # | ||
406 | ## | ||
407 | ## Default width of locked screen (in %). Acceptable values are from 20 to 80. | ||
408 | ## | ||
409 | # | ||
410 | #locked_screen_width_part = 50 | ||
411 | # | ||
412 | #ask_for_locked_screen_width_part = yes | ||
413 | # | ||
414 | #jump_to_now_playing_song_at_start = yes | ||
415 | # | ||
416 | #ask_before_clearing_playlists = yes | ||
417 | # | ||
418 | #clock_display_seconds = no | ||
419 | # | ||
420 | #display_volume_level = yes | ||
421 | # | ||
422 | #display_bitrate = no | ||
423 | # | ||
424 | #display_remaining_time = no | ||
425 | # | ||
426 | ## Available values: none, basic, extended, perl. | ||
427 | ## | ||
428 | #regular_expressions = perl | ||
429 | # | ||
430 | ## | ||
431 | ## Note: if below is enabled, ncmpcpp will ignore leading "The" word while | ||
432 | ## sorting items in browser, tags in media library, etc. | ||
433 | ## | ||
434 | #ignore_leading_the = no | ||
435 | # | ||
436 | ## | ||
437 | ## Note: if below is enabled, ncmpcpp will ignore diacritics while searching and | ||
438 | ## filtering lists. This takes an effect only if boost was compiled with ICU | ||
439 | ## support. | ||
440 | ## | ||
441 | #ignore_diacritics = no | ||
442 | # | ||
443 | #block_search_constraints_change_if_items_found = yes | ||
444 | # | ||
445 | #mouse_support = yes | ||
446 | # | ||
447 | #mouse_list_scroll_whole_page = yes | ||
448 | # | ||
449 | #empty_tag_marker = <empty> | ||
450 | # | ||
451 | #tags_separator = " | " | ||
452 | # | ||
453 | #tag_editor_extended_numeration = no | ||
454 | # | ||
455 | #media_library_sort_by_mtime = no | ||
456 | # | ||
457 | #enable_window_title = yes | ||
458 | # | ||
459 | ## | ||
460 | ## Note: You can choose default search mode for search engine. Available modes | ||
461 | ## are: | ||
462 | ## | ||
463 | ## - 1 - use mpd built-in searching (no regexes, pattern matching) | ||
464 | ## | ||
465 | ## - 2 - use ncmpcpp searching (pattern matching with support for regexes, but | ||
466 | ## if your mpd is on a remote machine, downloading big database to process | ||
467 | ## it can take a while | ||
468 | ## | ||
469 | ## - 3 - match only exact values (this mode uses mpd function for searching in | ||
470 | ## database and local one for searching in current playlist) | ||
471 | ## | ||
472 | # | ||
473 | #search_engine_default_search_mode = 1 | ||
474 | # | ||
475 | #external_editor = nano | ||
476 | # | ||
477 | ## Note: set to yes if external editor is a console application. | ||
478 | ## | ||
479 | #use_console_editor = yes | ||
480 | # | ||
481 | ##### colors definitions ##### | ||
482 | ## | ||
483 | ## It is possible to set a background color by setting a color value | ||
484 | ## "<foreground>_<background>", e.g. red_black will set foregound color to red | ||
485 | ## and background color to black. | ||
486 | ## | ||
487 | ## In addition, for terminals that support 256 colors it is possible to set one | ||
488 | ## of them by using a number in range [1, 256] instead of color name, | ||
489 | ## e.g. numerical value corresponding to red_black is 2_1. To find out if the | ||
490 | ## terminal supports 256 colors, run ncmpcpp and check out the bottom of the | ||
491 | ## help screen for list of available colors and their numerical values. | ||
492 | ## | ||
493 | ## What is more, there are two special values for the background color: | ||
494 | ## "transparent" and "current". The first one explicitly sets the background to | ||
495 | ## be transparent, while the second one allows you to preserve current | ||
496 | ## background color and change only the foreground one. It's used implicitly | ||
497 | ## when background color is not specified. | ||
498 | ## | ||
499 | ## Moreover, it is possible to attach format information to selected color | ||
500 | ## variables by appending to their end a colon followed by one or more format | ||
501 | ## flags, e.g. black:b or red:ur. The following variables support this syntax: | ||
502 | ## visualizer_color, color1, color2, empty_tag_color, volume_color, | ||
503 | ## state_line_color, state_flags_color, progressbar_color, | ||
504 | ## progressbar_elapsed_color, player_state_color, statusbar_time_color, | ||
505 | ## alternative_ui_separator_color. | ||
506 | ## | ||
507 | ## Note: due to technical limitations of older ncurses version, if 256 colors | ||
508 | ## are used there is a possibility that you'll be able to use only colors with | ||
509 | ## transparent background. | ||
510 | # | ||
511 | #colors_enabled = yes | ||
512 | # | ||
513 | #empty_tag_color = cyan | ||
514 | # | ||
515 | #header_window_color = default | ||
516 | # | ||
517 | #volume_color = default | ||
518 | # | ||
519 | #state_line_color = default | ||
520 | # | ||
521 | #state_flags_color = default:b | ||
522 | # | ||
523 | #main_window_color = yellow | ||
524 | # | ||
525 | #color1 = white | ||
526 | # | ||
527 | #color2 = green | ||
528 | # | ||
529 | #progressbar_color = black:b | ||
530 | # | ||
531 | #progressbar_elapsed_color = green:b | ||
532 | # | ||
533 | #statusbar_color = default | ||
534 | # | ||
535 | #statusbar_time_color = default:b | ||
536 | # | ||
537 | #player_state_color = default:b | ||
538 | # | ||
539 | #alternative_ui_separator_color = black:b | ||
540 | # | ||
541 | #window_border_color = green | ||
542 | # | ||
543 | #active_window_border = red | ||