#
#######################################################################
+########################## DAEMON SECTION ################################
+#
+[daemon]
+## DAEMON
+# type: boolean
+# description: whether to daemonize process or not
+# default: False
+daemon=false
+
+## PIDFILE
+# type: string (path to the pid file)
+# description: where to store process ID
+# default: unset, process ID not saved to file
+#pidfile=
+#
+#######################################################################
+
######################## LOGGING FACILITY #############################
#
[log]
## LOGFILE
# type: string (file path)
-# description: file to log to. Usually used in daemon mode.
+# description: file to log to. Usually used when process is daemonized.
# default: unset, logging to stdin/stdout
#logfile =
# * warning
# * error
verbosity = info
-
#
#######################################################################
# contrib = Scrobble, AwesomePlugin,
# ExperimentalTest, AnotherTest
# default:
-# internal = "Crop, Lastfm, RandomFallBack"
+# internal = "Lastfm, Random, Crop"
# contrib =
+#
+# Possible values for internal
+# Lastfm : Queue using last.fm web service for suggestions.
+# Random : Queue a track at random (different flavour, cf. documentation)
+# Crop : Remove old tracks from queue
+#
# description: Plugins list declaration.
# Optional plugin's configuration lays in its own section.
# For instance a "AwesomePlugin" declared here
# gets its configuration from the corresponding section:
# "[awesomeplugin]"
# internal plugins will look for a section named after the lower-cased name
-# of the pluglin, ie. RandomFallBack → randomfallback.
+# of the plugin, ie. AwesomePlugin → awesomeplugin.
#
# Two plugins sources are available, internal and contrib
#
-internal = Crop, Lastfm, RandomFallBack
+internal = Lastfm, Random, Crop
#contrib =
## HISTORY_DURATION
#
history_duration = 8
-## USER_DB # NOT IMPLEMENTED #
-# type: boolean
-# description: Load user database to find similar artists
-# User DB is loaded from $XDG_CONFIG_HOME/mpd_sima/sima.db
-# Use simadb_cli to edit/add entries.
-user_db = false
-
## QUEUE_LENGTH
# type: integer
-# default: 1
-# description: Queue length triggering tracks addition
-queue_length = 1
+# default: 2
+# description: Queue length threshold triggering tracks addition
+queue_length = 2
## MUSICBRAINZID
# type: boolean
# description: Use of MusicBrainzIdentifier tag
musicbrainzid = True
+## REPEAT_DISABLE_QUEUE
+# type: boolean
+# default: True
+# description: Prevent repeat play mode to disable queuing
+repeat_disable_queue = True
+
+## SINGLE_DISABLE_QUEUE
+# type: boolean
+# default: True
+# description: Prevent single play mode to disable queuing
+single_disable_queue = True
+#
+#######################################################################
+
######################### PLUGINS #####################################
+#
+[genre]
+## Offline genre queing
+
+## QUEUE_MODE
+# type: string
+# description: Configure queue mode, a single track or an album
+# Possible values:
+# track : Will queue single track artists (default).
+# album : Will queue whole album from artists.
+queue_mode = track
+
+## SINGLE_ALBUM
+# type: boolean
+# scope: "track" queue mode only
+# description: Prevent from queueing a track from the same album (for instance
+# with OST).
+single_album = false
+
+## TRACK_TO_ADD
+# type: integer
+# scope: "track" and "top" queue modes
+# description: how many tracks the plugin will try to get
+track_to_add = 1
+
+## ALBUM_TO_ADD
+# type: integer
+# scope: "album" queue mode
+# description: how many albums the plugin will try to get
+album_to_add = 1
+
+
+[tags]
+## Offline tags queing
+# This plugin has no defaults set
+
+# TAGS, any of the supported tags below
+# type: string
+# default: not set
+# description:
+comment=
+date=
+genre=
+label=
+originaldate=
+
+## FILTER
+# type: string
+# default: not set
+# description: Forge your own MPD filter (cf MPD protocol documentation)
+filter=
+
+## QUEUE_MODE
+# type: string
+# description: Configure queue mode, a single track or an album
+# Possible values:
+# track : Will queue single track artists (default).
+# album : Will queue whole album from artists.
+queue_mode = track
+
+## SINGLE_ALBUM
+# type: boolean
+# scope: "track" queue mode only
+# description: Prevent from queueing a track from the same album (for instance
+# with OST).
+single_album = false
+
+## TRACK_TO_ADD
+# type: integer
+# scope: "track" and "top" queue modes
+# description: how many tracks the plugin will try to get
+track_to_add = 1
+
+## ALBUM_TO_ADD
+# type: integer
+# scope: "album" queue mode
+# description: how many albums the plugin will try to get
+album_to_add = 1
[crop]
## CONSUME
# type: integer
-# default: unset, not cropping playlist
+# default: 10
# description: How many played tracks to keep in the playlist.
# Allow to maintain a fixed length playlist.
-# Leave commented to keep all tracks
+# Set a negative value to disable cropping (or remove plugin from sima/internal)
#consume = 10
-[randomfallback]
+[random]
## FLAVOUR
# type: string
# default: sensible
-# description: When no similar tracks are found, falling back to random
-# queuing. Different mode, aka random flavour, are available.
+# description: Random queuing, different mode, aka random flavour, are available.
# random flavour :
# * pure: complete random choice among all tracks available in the
# player media library
# chose among the same genre as current track (using genre
# tag). If no genre tag is available "sensible" flavour
# is used instead
-#flavour=sensible
+flavour=sensible
## TRACK_TO_ADD
# type: integer
#track_to_add = 1
-# EchoNest or LastFM
-#[echonest]
[lastfm]
## QUEUE_MODE
# type: string
-# description: The default is to queue random tracks from similar artists.
+# description: Does it queue a single track, top track or an album.
# Possible values:
-# track : Will queue tracks from similar artists (default).
+# track : Will queue single tracks from similar artists (default).
# top : Will queue top tracks from similar artists.
# album : Will queue whole album from similar artists.
queue_mode = track
# description: Number of similar artist to retrieve from local media library.
# When set to something superior to zero, MPD_sima tries to get as much similar
# artists from media library
-max_art = 10
+max_art = 20
## DEPTH
# type: integer in [1, +∞]
# description: how many albums the plugin will try to get
album_to_add = 1
+## TRACK_TO_ADD_FROM_ALBUM
+# type: integer
+# scope: "album" queue mode
+# description: how many tracks from one album the plugin will try to get
+# defaults to 0 to queue the whole album
+track_to_add_from_album = 0
+
+## SHUFFLE_ALBUM
+# type: boolean
+# scope: "album" queue mode
+# description: should the tracks of the album be shuffled
+shuffle_album = false
+
## CACHE
# type: boolean
# description: whether or not to use on-disk persistent http cache
# * When set to "true", sima will use a persistent cache for its http client.
# The cache is written along with the dbfile in:
# $XDG_CONFIG_HOME/mpd_sima/http/<web_service>
-# Toggling http cache is only available for last.fm. EchoNest have rate limits,
-# we must then pay attention to bandwidth and use of caching is required.
+# Until #7 is closed LastFM is broken; cf. https://gitlab.com/kaliko/sima/issues/7
# * If set to "false", caching is still done but in memory.
# default: True
cache = True
-
#
-####################### END OF CONFIGURATION ##########################
+#######################################################################
+
# vim: syntax=cfg fileencoding=utf-8