# be disabled and audio files will only be accepted over ipc socket (using
# file:// protocol) or streaming files over an accepted protocol.
#
-music_directory "~/music"
+music_directory "~/usr/music"
#
# This setting sets the MPD internal playlist directory. The purpose of this
# directory is storage for playlists created by MPD. The server will use
# playlist files not created by the server but only if they are in the MPD
# format. This setting defaults to playlist saving being disabled.
#
-playlist_directory "~/.config/mpd/playlists"
+playlist_directory "~/.mpd/playlists"
#
# This setting sets the location of the MPD database. This file is used to
# load the database at server start up and store the database while the
# MPD to accept files over ipc socket (using file:// protocol) or streaming
# files over an accepted protocol.
#
-db_file "~/.config/mpd/database"
+db_file "~/.mpd/database"
#
# These settings are the locations for the daemon log files for the daemon.
# These logs are great for troubleshooting, depending on your log_level
# The special value "syslog" makes MPD use the local syslog daemon. This
# setting defaults to logging to syslog, otherwise logging is disabled.
#
-log_file "~/.config/mpd/log"
+log_file "~/.mpd/log"
#
# This setting sets the location of the file which stores the process ID
# for use of mpd --kill and some init scripts. This setting is disabled by
# default and the pid file will not be stored.
#
-pid_file "~/.config/mpd/pid"
+pid_file "~/.mpd/pid"
#
# This setting sets the location of the file which contains information about
# most variables to get MPD back into the same general shape it was in before
# it was brought down. This setting is disabled by default and the server
# state will be reset on server start up.
#
-state_file "~/.config/mpd/state"
+state_file "~/.mpd/state"
#
# The location of the sticker database. This is a database which
# manages dynamic information attached to songs.
#
-sticker_file "~/.config/mpd/sticker.sql"
+sticker_file "~/.mpd/sticker.sql"
#
###############################################################################
#
# This setting sets the address for the daemon to listen on. Careful attention
# should be paid if this is assigned to anything other then the default, any.
-# This setting can deny access to control of the daemon.
+# This setting can deny access to control of the daemon. Not effective if
+# systemd socket activiation is in use.
#
# For network
#bind_to_address "any"
#
# This setting defines a list of tag types that will be extracted during the
# audio file discovery process. The complete list of possible values can be
-# found in the mpd.conf man page.
+# found in the user manual.
#metadata_to_use "artist,album,title,track,name,genre,date,composer,performer,disc"
#
# This setting enables automatic update of MPD's database when files in
# Permissions #################################################################
#
# If this setting is set, MPD will require password authorization. The password
-# can setting can be specified multiple times for different password profiles.
+# setting can be specified multiple times for different password profiles.
#
#password "password@read,add,control,admin"
#
# Audio Output ################################################################
#
+
+audio_output {
+ type "pulse"
+ name "pulse audio"
+}
+
+audio_output {
+ type "fifo"
+ name "my_fifo"
+ path "/tmp/mpd.fifo"
+ format "44100:16:2"
+}
+
# MPD supports various audio output types, as well as playing through multiple
# audio outputs at the same time, through multiple audio_output settings
# blocks. Setting this block is optional, though the server will only attempt
# An example of an ALSA output:
#
#audio_output {
- #type "alsa"
- #name "My ALSA Device"
+# type "alsa"
+# name "My ALSA Device"
## device "hw:0,0" # optional
-### mixer_type "hardware" # optional
-### mixer_device "default" # optional
-### mixer_control "PCM" # optional
-### mixer_index "0" # optional
+## mixer_type "hardware" # optional
+## mixer_device "default" # optional
+## mixer_control "PCM" # optional
+## mixer_index "0" # optional
#}
-
-audio_output {
- type "pulse"
- name "pulse audio"
-}
-
-audio_output {
- type "fifo"
- name "my_fifo"
- path "/tmp/mpd.fifo"
- format "44100:16:2"
- }
-
#
# An example of an OSS output:
#
#
#audio_output {
# type "shout"
-# encoding "ogg" # optional
+# encoder "vorbis" # optional
# name "My Shout Stream"
# host "localhost"
# port "8000"
## device "Digital Audio (S/PDIF) (High Definition Audio Device)" # optional
#}
#
+# An example of an sndio output.
+#
+#audio_output {
+# type "sndio"
+# name "sndio output"
+# mixer_type "software"
+#}
+#
+# An example of an OS X output:
+#
+#audio_output {
+# type "osx"
+# name "My OS X Device"
+## device "Built-in Output" # optional
+## channel_map "-1,-1,0,1" # optional
+#}
+#
## Example "pipe" output:
#
#audio_output {
# mixer_type "none" # optional
#}
#
-# If MPD has been compiled with libsamplerate support, this setting specifies
-# the sample rate converter to use. Possible values can be found in the
-# mpd.conf man page or the libsamplerate documentation. By default, this is
-# setting is disabled.
-#
-#samplerate_converter "Fastest Sinc Interpolator"
-#
###############################################################################
#
###############################################################################
-
-# MPD Internal Buffering ######################################################
-#
-# This setting adjusts the size of internal decoded audio buffering. Changing
-# this may have undesired effects. Don't change this if you don't know what you
-# are doing.
-#
-#audio_buffer_size "4096"
-#
-# This setting controls the percentage of the buffer which is filled before
-# beginning to play. Increasing this reduces the chance of audio file skipping,
-# at the cost of increased time prior to audio playback.
-#
-#buffer_before_play "10%"
-#
-###############################################################################
-
-
-# Resource Limitations ########################################################
-#
-# These settings are various limitations to prevent MPD from using too many
-# resources. Generally, these settings should be minimized to prevent security
-# risks, depending on the operating resources.
-#
-#connection_timeout "60"
-#max_connections "10"
-#max_playlist_length "16384"
-#max_command_list_size "2048"
-#max_output_buffer_size "8192"
-#
-###############################################################################
-
# Character Encoding ##########################################################
#
# If file or directory names do not display correctly for your locale then you
#
#filesystem_charset "UTF-8"
#
-# This setting controls the encoding that ID3v1 tags should be converted from.
-#
-#id3v1_encoding "ISO-8859-1"
-#
###############################################################################
-
-
-# SIDPlay decoder #############################################################
-#
-# songlength_database:
-# Location of your songlengths file, as distributed with the HVSC.
-# The sidplay plugin checks this for matching MD5 fingerprints.
-# See http://www.c64.org/HVSC/DOCUMENTS/Songlengths.faq
-#
-# default_songlength:
-# This is the default playing time in seconds for songs not in the
-# songlength database, or in case you're not using a database.
-# A value of 0 means play indefinitely.
-#
-# filter:
-# Turns the SID filter emulation on or off.
-#
-#decoder {
-# plugin "sidplay"
-# songlength_database "/media/C64Music/DOCUMENTS/Songlengths.txt"
-# default_songlength "120"
-# filter "true"
-#}
-#
-###############################################################################
-
-##########################################################
-## this is example bindings configuration file, copy it ##
-## to ~/.ncmpcpp/bindings and set up your preferences ##
-##########################################################
-##
-##### General rules #####
-##
-## 1) Because each action has runtime checks whether it's
-## ok to run it, a few actions can be bound to one key.
-## Actions will be bound in order given in configuration
-## file. When a key is pressed, first action in order
-## will test itself whether it's possible to run it. If
-## test succeeds, action is executed and other actions
-## bound to this key are ignored. If it doesn't, next
-## action in order tests itself etc.
-##
-## 2) It's possible to bind more that one action at once
-## to a key. It can be done using the following syntax:
-##
-## def_key "key"
-## action1
-## action2
-## ...
-##
-## This creates a chain of actions. When such chain is
-## executed, each action in chain is run until the end of
-## chain is reached or one of its actions fails to execute
-## due to its requirements not being met. If multiple actions
-## and/or chains are bound to the same key, they will be
-## consecutively run until one of them gets fully executed.
-##
-## 3) When ncmpcpp starts, bindings configuration file is
-## parsed and then ncmpcpp provides "missing pieces"
-## of default keybindings. If you want to disable some
-## bindings, there is a special action called 'dummy'
-## for that purpose. Eg. if you want to disable ability
-## to crop playlists, you need to put the following
-## into configuration file:
-##
-## def_key "C"
-## dummy
-##
-## After that ncmpcpp will not bind any default action
-## to this key.
-##
-## 4) To let you write simple macros, the following special
-## actions are provided:
-##
-## - push_character "character" - pushes given special
-## character into input queue, so it will be immediately
-## picked by ncmpcpp upon next call to readKey function.
-## Accepted values: mouse, up, down, page_up, page_down,
-## home, end, space, enter, insert, delete, left, right,
-## tab, shift_tab, ctrl_a, ctrl_b, ..., ctrl_z, f1, f2,
-## ..., f12, backspace, backspace_2.
-##
-## - push_characters "string" - pushes given string into
-## input queue.
-##
-## - require_runnable "action" - checks whether given action
-## is runnable and fails if it isn't. This is especially
-## useful when mixed with previous two functions. Consider
-## the following macro definition:
-##
-## def_key "key"
-## push_characters "custom_filter"
-## apply_filter
-##
-## If apply_filter can't be currently run, we end up with
-## sequence of characters in input queue which will be
-## treated just as we typed them. This may lead to unexpected
-## results (in this case 'c' will most likely clear current
-## playlist, 'u' will trigger database update, 's' will stop
-## playback etc.). To prevent such thing from happening, we
-## need to change above definition to this one:
-##
-## def_key "key"
-## require_runnable "apply_filter"
-## push_characters "custom_filter"
-## apply_filter
-##
-## Here, first we test whether apply_filter can be actually run
-## before we stuff characters into input queue, so if condition
-## is not met, whole chain is aborted and we're fine.
-##
-## - require_screen "screen" - checks whether given screen is
-## currently active. accepted values: browser, clock, help,
-## media_library, outputs, playlist, playlist_editor,
-## search_engine, tag_editor, visualizer, last_fm, lyrics,
-## selected_items_adder, server_info, song_info,
-## sort_playlist_dialog, tiny_tag_editor.
-##
-## - run_external_command "command" - runs given command using
-## system() function.
-##
-## 5) In addition to binding to a key, you can also bind actions
-## or chains of actions to a command. If it comes to commands,
-## syntax is very similar to defining keys. Here goes example
-## definition of a command:
-##
-## def_command "quit" [deferred]
-## stop
-## quit
-##
-## If you execute the above command (which can be done by
-## invoking action execute_command, typing 'quit' and pressing
-## enter), ncmpcpp will stop the player and then quit. Note the
-## presence of word 'deferred' enclosed in square brackets. It
-## tells ncmpcpp to wait for confirmation (ie. pressing enter)
-## after you typed quit. Instead of 'deferred', 'immediate'
-## could be used. Then ncmpcpp will not wait for confirmation
-## (enter) and will execute the command the moment it sees it.
-##
-## Note: Both 'backspace' and 'backspace_2' are used because some
-## terminals interpret backspace using keycode of 'backspace'
-## and some the one of 'backspace_2'. You can get away with
-## binding once if all your terminal emulators use the same
-## value.
-##
-## Note: There is a difference between:
-##
-## def_key "key"
-## action1
-##
-## def_key "key"
-## action2
-##
-## and
-##
-## def_key "key"
-## action1
-## action2
-##
-## First one binds two single actions to the same key whilst
-## second one defines a chain of actions. The behavior of
-## these two is different and is described in (1) and (2).
-##
-## Note: Function def_key accepts non-ascii characters.
-##
-##### List of unbound actions #####
-##
-## The following actions are not bound to any key/command:
-##
-## - set_volume
-## - filter_playlist_on_priorities
-##
-#
-#def_key "mouse"
-# mouse_event
-#
-def_key "k"
- scroll_up
-#
def_key "j"
- scroll_down
-#
-#def_key "["
-# scroll_up_album
-#
-#def_key "]"
-# scroll_down_album
-#
-#def_key "{"
-# scroll_up_artist
-#
-#def_key "}"
-# scroll_down_artist
-#
-#def_key "page_up"
-# page_up
-#
-#def_key "page_down"
-# page_down
-#
-def_key "g"
- move_home
-#
-def_key "G"
- move_end
-#
-#def_key "space"
-# press_space
-#
-#def_key "enter"
-# press_enter
-#
-#def_key "delete"
-# delete_playlist_items
-#
-#def_key "delete"
-# delete_stored_playlist
-#
-def_key "l"
- next_column
-#
-#def_key "right"
-# slave_screen
-#
-#def_key "right"
-# volume_up
-#
-#def_key "+"
-# volume_up
-#
+ scroll_down
+def_key "k"
+ scroll_up
+
+def_key "ctrl-u"
+ page_up
+def_key "ctrl-d"
+ page_down
+
def_key "h"
- previous_column
-#
-#def_key "left"
-# master_screen
-#
-#def_key "left"
-# volume_down
-#
-#def_key "-"
-# volume_down
-#
-def_key ";"
- execute_command
-#
-#def_key "tab"
-# next_screen
-#
-#def_key "shift_tab"
-# previous_screen
-#
-#def_key "f1"
-# show_help
-#
-#def_key "1"
-# show_playlist
-#
-#def_key "2"
-# show_browser
-#
-#def_key "2"
-# change_browse_mode
-#
-#def_key "3"
-# show_search_engine
-#
-#def_key "3"
-# reset_search_engine
-#
-#def_key "4"
-# show_media_library
-#
-#def_key "4"
-# toggle_media_library_columns_mode
-#
-#def_key "5"
-# show_playlist_editor
-#
-#def_key "6"
-# show_tag_editor
-#
-#def_key "7"
-# show_outputs
-#
-#def_key "8"
-# show_visualizer
-#
-#def_key "="
-# show_clock
-#
-#def_key "@"
-# show_server_info
-#
-#def_key "s"
-# stop
-#
-#def_key "p"
-# pause
-#
-#def_key ">"
-# next
-#
-#def_key "<"
-# previous
-#
-#def_key "ctrl_h"
-# jump_to_parent_directory
-#
-#def_key "ctrl_h"
-# replay_song
-#
-#def_key "backspace"
-# jump_to_parent_directory
-#
-#def_key "backspace"
-# replay_song
-#
-#def_key "backspace_2"
-# jump_to_parent_directory
-#
-#def_key "backspace_2"
-# replay_song
-#
-#def_key "f"
-# seek_forward
-#
-#def_key "b"
-# seek_backward
-#
-#def_key "r"
-# toggle_repeat
-#
-#def_key "z"
-# toggle_random
-#
-#def_key "y"
-# save_tag_changes
-#
-#def_key "y"
-# start_searching
-#
-#def_key "y"
-# toggle_single
-#
-#def_key "R"
-# toggle_consume
-#
-#def_key "Y"
-# toggle_replay_gain_mode
-#
-#def_key "t"
-# toggle_space_mode
-#
-#def_key "T"
-# toggle_add_mode
-#
-#def_key "|"
-# toggle_mouse
-#
-#def_key "#"
-# toggle_bitrate_visibility
-#
-#def_key "Z"
-# shuffle
-#
-#def_key "x"
-# toggle_crossfade
-#
-#def_key "X"
-# set_crossfade
-#
-#def_key "u"
-# update_database
-#
-#def_key "ctrl_v"
-# sort_playlist
-#
-#def_key "ctrl_r"
-# reverse_playlist
-#
-#def_key "ctrl_f"
-# apply_filter
-#
-#def_key "/"
-# find
-#
-#def_key "/"
-# find_item_forward
-#
-#def_key "?"
-# find
-#
-#def_key "?"
-# find_item_backward
-#
-#def_key "."
-# next_found_item
-#
-#def_key ","
-# previous_found_item
-#
-#def_key "w"
-# toggle_find_mode
-#
-#def_key "e"
-# edit_song
-#
-#def_key "e"
-# edit_library_tag
-#
-#def_key "e"
-# edit_library_album
-#
-#def_key "e"
-# edit_directory_name
-#
-#def_key "e"
-# edit_playlist_name
-#
-#def_key "e"
-# edit_lyrics
-#
-#def_key "i"
-# show_song_info
-#
-#def_key "I"
-# show_artist_info
-#
-#def_key "g"
-# jump_to_position_in_song
-#
-def_key "ctrl-l"
- show_lyrics
-#
-#def_key "v"
-# reverse_selection
-#
-#def_key "V"
-# remove_selection
-#
-#def_key "B"
-# select_album
-#
-#def_key "a"
-# add_selected_items
-#
-#def_key "c"
-# clear_playlist
-#
-#def_key "c"
-# clear_main_playlist
-#
-#def_key "C"
-# crop_playlist
-#
-#def_key "C"
-# crop_main_playlist
-#
-#def_key "m"
-# move_sort_order_up
-#
-#def_key "m"
-# move_selected_items_up
-#
-#def_key "m"
-# toggle_media_library_sort_mode
-#
-#def_key "m"
-# set_visualizer_sample_multiplier
-#
-#def_key "n"
-# move_sort_order_down
-#
-#def_key "n"
-# move_selected_items_down
-#
-#def_key "M"
-# move_selected_items_to
-#
-#def_key "A"
-# add
-#
-#def_key "S"
-# save_playlist
-#
-#def_key "o"
-# jump_to_playing_song
-#
-#def_key "G"
-# jump_to_browser
-#
-#def_key "G"
-# jump_to_playlist_editor
-#
-#def_key "~"
-# jump_to_media_library
-#
-#def_key "E"
-# jump_to_tag_editor
-#
-#def_key "U"
-# toggle_playing_song_centering
-#
-#def_key "P"
-# toggle_display_mode
-#
-#def_key "\\"
-# toggle_interface
-#
-#def_key "!"
-# toggle_separators_between_albums
-#
-#def_key "L"
-# toggle_lyrics_fetcher
-#
-#def_key "F"
-# toggle_fetching_lyrics_in_background
-#
-#def_key "ctrl_l"
-# toggle_screen_lock
-#
-#def_key "`"
-# toggle_browser_sort_mode
-#
-#def_key "`"
-# toggle_library_tag_type
-#
-#def_key "`"
-# refetch_lyrics
-#
-#def_key "`"
-# add_random_items
-#
-#def_key "ctrl_p"
-# set_selected_items_priority
-#
-#def_key "q"
-# quit
-#
+ previous_column
+def_key "l"
+ next_column
+
+def_key "."
+ show_lyrics
+
+def_key "n"
+ next_found_item
+def_key "N"
+ previous_found_item
+
+def_key "J"
+ move_sort_order_down
+def_key "K"
+ move_sort_order_up
-mpd_music_dir = "~/music"
-mpd_connection_timeout = "5"
-mpd_crossfade_time = "5"
-playlist_disable_highlight_delay = "0"
-playlist_display_mode = "columns"
-browser_display_mode = "columns"
-incremental_seeking = "yes"
-follow_now_playing_lyrics = "yes"
-ignore_leading_the = "yes"
-song_columns_list_format = "(10)[blue]{l} (30)[green]{a} (30)[magenta]{b} (50)[yellow]{t}"
-main_window_color = "white"
-header_window_color = "cyan"
-volume_color = "red"
-progressbar_color = black
-progressbar_elapsed_color = cyan
-color1 = "cyan"
-color2 = "cyan"
-active_column_color = "cyan"
-active_window_border = "blue"
-
-visualizer_fifo_path = "/tmp/mpd.fifo"
-visualizer_output_name = "my_fifo"
-visualizer_sync_interval = "30"
-visualizer_in_stereo = "yes"
-#visualizer_type = "wave" (spectrum/wave)
-visualizer_type = "spectrum" (spectrum/wave)
-
-song_list_format = "{$7%a $1• $6}{%t}"
-song_status_format = "$7%a $1• $6%t $1• $2%b$1"
-statusbar_color = "black"
-visualizer_color = "red"
-main_window_highlight_color = "red"
-header_visibility = "no"
-statusbar_visibility = "yes"
-colors_enabled = "yes"
-now_playing_prefix = "-> "
-now_playing_suffix = " "
-autocenter_mode = "yes"
-centered_cursor = "yes"
-progressbar_look = "───"
-progressbar_boldness = yes
-titles_visibility = "no"
-mouse_support = "no"
-discard_colors_if_item_is_selected = "yes"
-
-user_interface = "alternative"
-alternative_header_first_line_format = $b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b
-alternative_header_second_line_format = {{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D}
-
+##############################################################
+## This is the example configuration file. Copy it to ##
+## $HOME/.ncmpcpp/config or $XDG_CONFIG_HOME/ncmpcpp/config ##
+## and set up your preferences. ##
+##############################################################
+#
+##### directories ######
+##
+## Directory for storing ncmpcpp related files.
+## Changing it is useful if you want to store
+## everything somewhere else and provide command
+## line setting for alternative location to config
+## file which defines that while launching ncmpcpp.
+##
+#
+ncmpcpp_directory = ~/.ncmpcpp
+#
+##
+## Directory for storing downloaded lyrics. It
+## defaults to ~/.lyrics since other MPD clients
+## (eg. ncmpc) also use that location.
+##
+#
+#lyrics_directory = ~/.lyrics
+#
+##### connection settings #####
+#
+#mpd_host = localhost
+#
+#mpd_port = 6600
+#
+#mpd_connection_timeout = 5
+#
+## Needed for tag editor and file operations to work.
+##
+mpd_music_dir = ~/usr/music
+#
+#mpd_crossfade_time = 5
+#
+##### music visualizer #####
+##
+## Note: In order to make music visualizer work you'll
+## need to use mpd fifo output, whose format parameter
+## has to be set to 44100:16:1 for mono visualization
+## or 44100:16:2 for stereo visualization. Example
+## configuration (it has to be put into mpd.conf):
+##
+## audio_output {
+## type "fifo"
+## name "Visualizer feed"
+## path "/tmp/mpd.fifo"
+## format "44100:16:2"
+## }
+##
+#
+visualizer_fifo_path = /tmp/mpd.fifo
+#
+##
+## Note: Below parameter is needed for ncmpcpp
+## to determine which output provides data for
+## visualizer and thus allow syncing between
+## visualization and sound as currently there
+## are some problems with it.
+##
+#
+visualizer_output_name = my fifo
+#
+##
+## If you set format to 44100:16:2, make it 'yes'.
+##
+visualizer_in_stereo = yes
+#
+##
+## Multiply received samples by given value. Very
+## useful for proper visualization of quiet music.
+##
+#visualizer_sample_multiplier = 1
+#
+##
+## Note: Below parameter defines how often ncmpcpp
+## has to "synchronize" visualizer and audio outputs.
+## 30 seconds is optimal value, but if you experience
+## synchronization problems, set it to lower value.
+## Keep in mind that sane values start with >=10.
+##
+#
+visualizer_sync_interval = 30
+#
+##
+## Note: To enable spectrum frequency visualization
+## you need to compile ncmpcpp with fftw3 support.
+##
+#
+## Available values: spectrum, wave, wave_filled, ellipse.
+##
+visualizer_type = spectrum
+#
+#visualizer_look = ●▮
+visualizer_look = "●•"
+#
+#visualizer_color = blue, cyan, green, yellow, magenta, red
+#
+## Alternative subset of 256 colors for terminals that support it.
+##
+#visualizer_color = 41, 83, 119, 155, 185, 215, 209, 203, 197, 161
+#
+##### system encoding #####
+##
+## ncmpcpp should detect your charset encoding
+## but if it failed to do so, you can specify
+## charset encoding you are using here.
+##
+## Note: You can see whether your ncmpcpp build
+## supports charset detection by checking output
+## of `ncmpcpp --version`.
+##
+## Note: Since MPD uses UTF-8 by default, setting
+## this option makes sense only if your encoding
+## is different.
+##
+#
+#system_encoding = ""
+#
+##### delays #####
+#
+## Time of inactivity (in seconds) after playlist
+## highlighting will be disabled (0 = always on).
+##
+#playlist_disable_highlight_delay = 5
+#
+## Defines how long messages are supposed to be visible.
+##
+#message_delay_time = 5
+#
+##### song format #####
+##
+## For a song format you can use:
+##
+## %l - length
+## %f - filename
+## %D - directory
+## %a - artist
+## %A - album artist
+## %t - title
+## %b - album
+## %y - date
+## %n - track number (01/12 -> 01)
+## %N - full track info (01/12 -> 01/12)
+## %g - genre
+## %c - composer
+## %p - performer
+## %d - disc
+## %C - comment
+## %P - priority
+## $R - begin right alignment
+##
+## If you want to make sure that a part of the format is displayed
+## only when certain tags are present, you can archieve it by
+## grouping them with brackets, e.g. '{%a - %t}' will be evaluated
+## to 'ARTIST - TITLE' if both tags are present or '' otherwise.
+## It is also possible to define a list of alternatives by providing
+## several groups and separating them with '|', e.g. '{%t}|{%f}'
+## will be evaluated to 'TITLE' or 'FILENAME' if the former is not
+## present.
+##
+## Note: If you want to set limit on maximal length of a tag, just
+## put the appropriate number between % and character that defines
+## tag type, e.g. to make album take max. 20 terminal cells, use '%20b'.
+##
+## In addition, formats support markers used for text attributes.
+## They are followed by character '$'. After that you can put:
+##
+## - 0 - default window color (discards all other colors)
+## - 1 - black
+## - 2 - red
+## - 3 - green
+## - 4 - yellow
+## - 5 - blue
+## - 6 - magenta
+## - 7 - cyan
+## - 8 - white
+## - 9 - end of current color
+## - b - bold text
+## - u - underline text
+## - r - reverse colors
+## - a - use alternative character set
+##
+## If you don't want to use a non-color attribute anymore, just put it
+## again, but this time insert character '/' between '$' and attribute
+## character, e.g. {$b%t$/b}|{$r%f$/r} will display bolded title tag
+## or filename with reversed colors.
+##
+## If you want to use 256 colors and/or background colors in formats
+## (the naming scheme is described below in section about color
+## definitions), it can be done with the syntax $(COLOR), e.g. to set
+## the artist tag to one of the non-standard colors and make it have
+## yellow background, you need to write $(197_yellow)%a$(end). Note
+## that for standard colors this is interchangable with attributes
+## listed above.
+##
+## Note: colors can be nested.
+##
+#
+#song_list_format = {%a - }{%t}|{$8%f$9}$R{$3(%l)$9}
+#
+#song_status_format = {{%a{ "%b"{ (%y)}} - }{%t}}|{%f}
+#
+#song_library_format = {%n - }{%t}|{%f}
+#
+#
+#alternative_header_first_line_format = $b$1$aqqu$/a$9 {%t}|{%f} $1$atqq$/a$9$/b
+#
+#alternative_header_second_line_format = {{$4$b%a$/b$9}{ - $7%b$9}{ ($4%y$9)}}|{%D}
+#
+#now_playing_prefix = $b
+#
+#now_playing_suffix = $/b
+#
+#browser_playlist_prefix = "$2playlist$9 "
+#
+#selected_item_prefix = $6
+#
+#selected_item_suffix = $9
+#
+#modified_item_prefix = $3> $9
+#
+##
+## Note: attributes are not supported for the following variables.
+##
+#song_window_title_format = {%a - }{%t}|{%f}
+##
+## Note: Below variables are used for sorting songs in browser.
+## The sort mode determines how songs are sorted, and can be used
+## in combination with a sort format to specify a custom sorting format.
+## Available values for browser_sort_mode are "name", "mtime", "format"
+## and "noop".
+##
+#
+#browser_sort_mode = name
+#
+#browser_sort_format = {%a - }{%t}|{%f} {(%l)}
+#
+##### columns settings #####
+##
+## syntax of song columns list format is "column column etc."
+##
+## - syntax for each column is:
+##
+## (width of the column)[color of the column]{displayed tag}
+##
+## Note: Width is by default in %, if you want a column to
+## have fixed size, add 'f' after the value, e.g. (10)[white]{a}
+## will be the column that take 10% of screen (so the real width
+## will depend on actual screen size), whereas (10f)[white]{a}
+## will take 10 terminal cells, no matter how wide the screen is.
+##
+## - color is optional (if you want the default one,
+## leave the field empty).
+##
+## Note: You can give a column additional attributes by putting appropriate
+## character after displayed tag character. Available attributes are:
+##
+## - r - column will be right aligned
+## - E - if tag is empty, empty tag marker won't be displayed
+##
+## You can also:
+##
+## - give a column custom name by putting it after attributes,
+## separated with character ':', e.g. {lr:Length} gives you
+## right aligned column of lengths named "Length".
+##
+## - define sequence of tags, that have to be displayed in case
+## predecessor is empty in a way similar to the one in classic
+## song format, i.e. using '|' character, e.g. {a|c|p:Owner}
+## creates column named "Owner" that tries to display artist
+## tag and then composer and performer if previous ones are
+## not available.
+##
+#
+#song_columns_list_format = (20)[]{a} (6f)[green]{NE} (50)[white]{t|f:Title} (20)[cyan]{b} (7f)[magenta]{l}
+#
+##### various settings #####
+#
+##
+## Note: Custom command that will be executed each
+## time song changes. Useful for notifications etc.
+##
+#execute_on_song_change = ""
+#
+#playlist_show_mpd_host = no
+#
+#playlist_show_remaining_time = no
+#
+#playlist_shorten_total_times = no
+#
+#playlist_separate_albums = no
+#
+##
+## Note: Possible display modes: classic, columns.
+##
+#playlist_display_mode = columns
+#
+#browser_display_mode = classic
+#
+#search_engine_display_mode = classic
+#
+#playlist_editor_display_mode = classic
+#
+#discard_colors_if_item_is_selected = yes
+#
+#incremental_seeking = yes
+#
+#seek_time = 1
+#
+#volume_change_step = 2
+#
+#autocenter_mode = no
+#
+#centered_cursor = no
+#
+##
+## Note: You can specify third character which will
+## be used to build 'empty' part of progressbar.
+##
+#progressbar_look = =>
+progressbar_look = "─╼╶"
+#progressbar_look = "─⊙╶"
+#
+#progressbar_boldness = yes
+#
+## Available values: database, playlist.
+##
+#default_place_to_search_in = database
+#
+## Available values: classic, alternative.
+##
+#user_interface = classic
+#
+#data_fetching_delay = yes
+#
+## Available values: artist, album_artist, date, genre, composer, performer.
+##
+#media_library_primary_tag = artist
+#
+## Available values: wrapped, normal.
+##
+#default_find_mode = wrapped
+#
+#default_tag_editor_pattern = %n - %t
+#
+#header_visibility = yes
+#
+#statusbar_visibility = yes
+#
+#titles_visibility = yes
+#
+#header_text_scrolling = yes
+#
+#cyclic_scrolling = no
+#
+#lines_scrolled = 2
+#
+#follow_now_playing_lyrics = no
+#
+#fetch_lyrics_for_current_song_in_background = no
+#
+#store_lyrics_in_song_dir = no
+#
+#generate_win32_compatible_filenames = yes
+#
+#allow_for_physical_item_deletion = no
+#
+##
+## Note: If you set this variable, ncmpcpp will try to
+## get info from last.fm in language you set and if it
+## fails, it will fall back to english. Otherwise it will
+## use english the first time.
+##
+## Note: Language has to be expressed as an ISO 639 alpha-2 code.
+##
+#lastfm_preferred_language = en
+#
+#show_hidden_files_in_local_browser = no
+#
+##
+## How shall screen switcher work?
+##
+## - "previous" - switch between the current and previous screen.
+## - "screen1,...,screenN" - switch between given sequence of screens.
+##
+## Screens available for use: help, playlist, browser, search_engine,
+## media_library, playlist_editor, tag_editor, outputs, visualizer, clock.
+##
+#screen_switcher_mode = playlist, browser
+#
+##
+## Note: You can define startup screen
+## by choosing screen from the list above.
+##
+#startup_screen = playlist
+#
+##
+## Note: You can define startup slave screen
+## by choosing screen from the list above or
+## an empty value for no slave screen.
+##
+#startup_slave_screen = ""
+#
+#startup_slave_screen_focus = no
+#
+##
+## Default width of locked screen (in %).
+## Acceptable values are from 20 to 80.
+##
+#
+#locked_screen_width_part = 50
+#
+#ask_for_locked_screen_width_part = yes
+#
+#jump_to_now_playing_song_at_start = yes
+#
+#ask_before_clearing_playlists = yes
+#
+#clock_display_seconds = no
+#
+#display_volume_level = yes
+#
+#display_bitrate = no
+#
+#display_remaining_time = no
+#
+## Available values: none, basic, extended, perl.
+##
+#regular_expressions = perl
+#
+##
+## Note: If below is enabled, ncmpcpp will ignore leading
+## "The" word while sorting items in browser, tags in
+## media library, etc.
+##
+#ignore_leading_the = no
+#
+#block_search_constraints_change_if_items_found = yes
+#
+#mouse_support = yes
+#
+#mouse_list_scroll_whole_page = yes
+#
+#empty_tag_marker = <empty>
+#
+#tags_separator = " | "
+#
+#tag_editor_extended_numeration = no
+#
+#media_library_sort_by_mtime = no
+#
+#enable_window_title = yes
+#
+##
+## Note: You can choose default search mode for search
+## engine. Available modes are:
+##
+## - 1 - use mpd built-in searching (no regexes, pattern matching)
+## - 2 - use ncmpcpp searching (pattern matching with support for regexes,
+## but if your mpd is on a remote machine, downloading big database
+## to process it can take a while
+## - 3 - match only exact values (this mode uses mpd function for searching
+## in database and local one for searching in current playlist)
+##
+#
+#search_engine_default_search_mode = 1
+#
+#external_editor = nano
+#
+## Note: set to yes if external editor is a console application.
+##
+#use_console_editor = yes
+#
+##### colors definitions #####
+##
+## It is possible to set a background color by setting a color
+## value "<foreground>_<background>", e.g. red_black will set
+## foregound color to red and background color to black.
+##
+## In addition, for terminals that support 256 colors it
+## is possible to set one of them by using a number in range
+## [1, 256] instead of color name, e.g. numerical value
+## corresponding to red_black is 2_1. To find out if the
+## terminal supports 256 colors, run ncmpcpp and check out
+## the bottom of the help screen for list of available colors
+## and their numerical values.
+##
+## Note: due to technical limitations of ncurses, if 256 colors
+## are used, it is possible to either use only the colors with
+## default background color, or all pairs from 1_1 up to 254_127,
+## depending on the ncurses version used.
+##
+#
+#colors_enabled = yes
+#
+#empty_tag_color = cyan
+#
+#header_window_color = default
+#
+#volume_color = default
+#
+#state_line_color = default
+#
+#state_flags_color = default
+#
+#main_window_color = yellow
+#
+#color1 = white
+#
+#color2 = green
+#
+#main_window_highlight_color = yellow
+#
+#progressbar_color = black
+#
+#progressbar_elapsed_color = green
+#
+#statusbar_color = default
+#
+#alternative_ui_separator_color = black
+#
+#active_column_color = red
+#
+#window_border_color = green
+#
+#active_window_border = red
+#