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 | ||
