config 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586
  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 = ~/.local/share/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 = ~/.cache/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 = my_fifo
  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 = spectrum
  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 = ""
  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 = classic
  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
  544. #
  545. # Keybinds
  546. def_key "+"
  547. show_clock
  548. def_key "="
  549. volume_up
  550. def_key "j"
  551. scroll_down
  552. def_key "k"
  553. scroll_up
  554. def_key "h"
  555. previous_column
  556. def_key "l"
  557. next_column
  558. def_key "ctrl-u"
  559. page_up
  560. def_key "ctrl-d"
  561. page_down
  562. def_key "."
  563. show_lyrics
  564. def_key "n"
  565. next_found_item
  566. def_key "N"
  567. previous_found_item
  568. def_key "J"
  569. move_sort_order_down
  570. def_key "K"
  571. move_sort_order_up
  572. def_key "d"
  573. delete_playlist_items
  574. def_key "d"
  575. delete_browser_items