config 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726
  1. # This is a configuration file for the MOC player. It should be named
  2. # 'config' and placed in the ~/.moc directory. As this file can specify
  3. # commands which invoke other applications, MOC will refuse to start if it
  4. # is not owned by either root or the current user, or if it is writable by
  5. # anyone other than its owner.
  6. # Comments begin with '#'. All options are given with their default
  7. # values, and therefore commented. If you change the value from the
  8. # default you must uncomment the line to have the new value take effect.
  9. #
  10. # You can use quotes and escape ('\') in parameters.
  11. #
  12. # You can have variable values substituted by enclosing the variable name
  13. # as "${...}". (This only applies to the portion of the option following
  14. # the '='.) Variables are substituted first from the environment then,
  15. # if not found, from the configuration options. (Note that the value of
  16. # a configuration option substituted is that which it has at the time the
  17. # substitution variable is encountered.) If there is a naming conflict
  18. # between an environment and configuration variable, you may be able to
  19. # resolve it by using lowercase as the environment variable matches are
  20. # case-sensitive whereas the configuration variables are not.
  21. #
  22. # You can also use the form "${...:-...}" where the value in the second
  23. # position will be substituted if the variable name given in the first
  24. # position is unset or null.
  25. #
  26. # So, for example:
  27. #
  28. # MusicDir = /music/${USER:-public}
  29. # Fastdir1 = ${MusicDir}/mp3/rock
  30. # Fastdir2 = ${MusicDir}/mp3/electronic
  31. # Fastdir3 = ${MusicDir}/mp3/rap
  32. # Fastdir4 = ${MusicDir}/mp3/etc
  33. #
  34. # Variable names are limited to those accepted by the BASH shell; that
  35. # is, those comprising the upper- and lowercase ASCII characters, digits
  36. # and the underscore.
  37. #
  38. # If you need to use the "${" sequence for any other purpose, write "$${"
  39. # and it will be replaced by "${" and not treated as a substitution.
  40. #
  41. # Some options take lists of strings as their values. The strings are
  42. # separated by colons. Additional strings can be appended to the list
  43. # using "+=" in place of a plain "=" to assign the value. For an example,
  44. # see the XTerms option.
  45. #
  46. # You can override any configuration option when you run MOC using the
  47. # '-O' command line option:
  48. #
  49. # mocp -O AutoNext=no -O messagelingertime=1 -O XTerms+=xxt:xwt
  50. #
  51. # This command line option can be repeated as many times as needed and
  52. # the configuration option name is not case sensitive. (Note that MOC
  53. # does not perform variable substitution on the value of such overridden
  54. # configuration options.) Most option values are set before the
  55. # configuration file is processed (which allows the new values to be
  56. # picked up by substitutions), however list-valued options are overridden
  57. # afterwards (which gives the choice of whether the configured values are
  58. # replaced or added to).
  59. # Remember that the client and server are separate processes and the
  60. # server will retain the configuration values formed from the environment
  61. # within which it was originally started.
  62. # Show file titles (title, author, album) instead of file names?
  63. ReadTags = yes
  64. # In which directory do you store your music files? If you specify it
  65. # you will be able to jump straight to this directory with the '-m'
  66. # parameter or the 'm' command. This can also point to a playlist.
  67. #
  68. # Example: MusicDir = "/home/joe/music"
  69. #
  70. MusicDir = ${HOME}/Music
  71. # Start in the music directory by default? If set to 'no', start
  72. # in the directory being viewed when the was client last active or,
  73. # as a last resort, the directory in which the client is being started.
  74. # A single directory on the command line takes precedence.
  75. StartInMusicDir = yes
  76. # The number of lines which are retained in an in-memory circular logging
  77. # buffer. A value of zero indicates that lines will be written directly
  78. # to the log file, otherwise the latest CircularLogSize lines are retained
  79. # in memory and not written to the log file until the MOC client or server
  80. # are shutdown. If the client or server terminates abnormally then the
  81. # log lines are lost.
  82. #
  83. # This option is intended to help identify problems which occur infrequently
  84. # and for which the amount of disk space consumed by logging would otherwise
  85. # be a limiting factor. Obviously the memory footprint will increase in
  86. # proportion to the value of this option.
  87. #CircularLogSize = 0
  88. # How to sort? FileName is the option's only value for now.
  89. #Sort = FileName
  90. # Show errors in the streams (for example, broken frames in MP3 files)?
  91. ShowStreamErrors = yes
  92. # Ignore CRC errors in MP3 files? Most players do that, so the default
  93. # value is 'yes'.
  94. #MP3IgnoreCRCErrors = yes
  95. # Set playback toggles.
  96. #Repeat = no
  97. Shuffle = yes
  98. #AutoNext = yes
  99. # Default FormatString:
  100. #
  101. # %n - Track number
  102. # %a - Artist
  103. # %A - Album
  104. # %t - Title
  105. # %(X:TRUE:FALSE) - Ternary expression: if X exists, do TRUE,
  106. # otherwise FALSE. The escape character must
  107. # be doubled (i.e., '\\'). (See zshmisc
  108. # documentation for more information.)
  109. #
  110. #FormatString = "%(n:%n :)%(a:%a - :)%(t:%t:)%(A: \(%A\):)"
  111. # Input and output buffer sizes (in kilobytes).
  112. #InputBuffer = 512 # Minimum value is 32KB
  113. #OutputBuffer = 512 # Minimum value is 128KB
  114. # How much to fill the input buffer before playing (in kilobytes)?
  115. # This can't be greater than the value of InputBuffer. While this has
  116. # a positive effect for network streams, it also causes the broadcast
  117. # audio to be delayed.
  118. #Prebuffering = 64
  119. # Use this HTTP proxy server for internet streams. If not set, the
  120. # environment variables http_proxy and ALL_PROXY will be used if present.
  121. #
  122. # Format: HTTPProxy = PROXY_NAME:PORT
  123. #
  124. #HTTPProxy =
  125. # Sound driver - OSS, ALSA, JACK, SNDIO (on OpenBSD) or null (only for
  126. # debugging). You can enter more than one driver as a colon-separated
  127. # list. The first working driver will be used.
  128. # SoundDriver = PULSE:JACK:ALSA:OSS
  129. # Jack output settings.
  130. #JackClientName = "moc"
  131. #JackStartServer = no
  132. #JackOutLeft = "system:playback_1"
  133. #JackOutRight = "system:playback_2"
  134. # OSS output settings.
  135. #OSSDevice = /dev/dsp
  136. #OSSMixerDevice = /dev/mixer
  137. #OSSMixerChannel1 = pcm # 'pcm', 'master' or 'speaker'
  138. #OSSMixerChannel2 = master # 'pcm', 'master' or 'speaker'
  139. # ALSA output settings. If you need to dump the audio produced by MOC
  140. # to a file for diagnostic purposes, the following setting of 'ALSADevice'
  141. # should do that:
  142. #
  143. # ALSADevice=tee:hw,'/tmp/out.wav',wav
  144. #
  145. #ALSADevice = default
  146. #ALSAMixer1 = PCM
  147. #ALSAMixer2 = Master
  148. # Under some circumstances on 32-bit systems, audio played continously
  149. # for long periods of time may begin to stutter. Setting this option to
  150. # 'yes' will force MOC to avoid ALSA's dmix resampling and prevent this
  151. # stutter. But it also has other implications:
  152. #
  153. # - You may experience unacceptably high CPU load.
  154. # - ALSA's resampler plug-ins will not be used.
  155. # - The resampling may be of lower quality than ALSA would provide.
  156. # - You may need to try different "ResampleMethod" option settings.
  157. # - The "ForceSampleRate" option may be ineffective.
  158. # - If libsamplerate is not configured, many audios may be unplayable.
  159. #
  160. #ALSAStutterDefeat = no
  161. # Save software mixer state?
  162. # If enabled, a file 'softmixer' will be created in '~/.moc/' storing the
  163. # mixersetting set when the server is shut down.
  164. # Note that there is a "hidden" 'Amplification' setting in that file.
  165. # Amplification (0-200) is used to scale the mixer setting (0-100). This
  166. # results in a higher signal amplitude but may also produce clipping.
  167. #Softmixer_SaveState = yes
  168. # Save equalizer state?
  169. # If enabled, a file 'equalizer' will be created in '~/.moc/' storing the
  170. # equalizer settings when the server is shut down.
  171. # Note that there is a "hidden" 'Mixin' setting in that file.
  172. # Mixin (0.0-1.0) is used to determine how much of the original signal is
  173. # used after equalizing. 0 means to only use the equalized sound, while 1
  174. # effectively disabled the mixer. The default is 0.25.
  175. #Equalizer_SaveState = yes
  176. # Show files with dot at the beginning?
  177. #ShowHiddenFiles = no
  178. # Hide file name extensions?
  179. #HideFileExtension = no
  180. # Show file format in menu?
  181. #ShowFormat = yes
  182. # Show file time in menu? Possible values: 'yes', 'no' and 'IfAvailable'
  183. # (meaning show the time only when it is already known, which often works
  184. # faster).
  185. #ShowTime = IfAvailable
  186. # Show time played as a percentage in the time progress bar.
  187. ShowTimePercent = yes
  188. # Values of the TERM environment variable which are deemed to be managed by
  189. # screen(1). If you are setting a specific terminal using screen(1)'s
  190. # '-T <term>' option, then you will need to add 'screen.<term>' to this list.
  191. # Note that this is only a partial test; the value of the WINDOW environment
  192. # variable must also be a number (which screen(1) sets).
  193. #ScreenTerms = screen:screen-w:vt100
  194. # Values of the TERM environment variable which are deemed to be xterms. If
  195. # you are using MOC within screen(1) under an xterm, then add screen(1)'s
  196. # TERM setting here as well to cause MOC to update the xterm's title.
  197. #XTerms = xterm
  198. #XTerms += xterm-colour:xterm-color
  199. #XTerms += xterm-256colour:xterm-256color
  200. #XTerms += rxvt:rxvt-unicode
  201. #XTerms += rxvt-unicode-256colour:rxvt-unicode-256color
  202. #XTerms += eterm
  203. # Theme file to use. This can be absolute path or relative to
  204. # /usr/share/moc/themes/ (depends on installation prefix) or
  205. # ~/.moc/themes/ .
  206. #Theme = black_theme
  207. #Theme = darkdot_theme
  208. #Theme = example_theme
  209. #Theme = green_theme
  210. #Theme = moca_theme
  211. Theme = nightly_theme
  212. #Theme = red_theme
  213. #Theme = transparent-background
  214. #Theme = yellow_red_theme
  215. #Theme = gruvbox_theme
  216. # The theme used when running on an xterm.
  217. #
  218. # Example: XTermTheme = transparent-background
  219. #
  220. #XTermTheme =
  221. # Should MOC try to autoload the default lyrics file for an audio? (The
  222. # default lyrics file is a text file with the same file name as the audio
  223. # file name with any trailing "extension" removed.)
  224. #AutoLoadLyrics = yes
  225. # MOC directory (where pid file, socket and state files are stored).
  226. # You can use ~ at the beginning.
  227. #MOCDir = ~/.moc
  228. # Use mmap() to read files. mmap() is much slower on NFS.
  229. #UseMMap = no
  230. # Use MIME to identify audio files. This can make for slower loading
  231. # of playlists but is more accurate than using "extensions".
  232. #UseMimeMagic = no
  233. # Assume this encoding for ID3 version 1/1.1 tags (MP3 files). Unlike
  234. # ID3v2, UTF-8 is not used here and MOC can't guess how tags are encoded.
  235. # Another solution is using librcc (see the next option). This option is
  236. # ignored if UseRCC is set to 'yes'.
  237. #ID3v1TagsEncoding = WINDOWS-1250
  238. # Use librcc to fix ID3 version 1/1.1 tags encoding.
  239. #UseRCC = yes
  240. # Use librcc to filenames and directory names encoding.
  241. #UseRCCForFilesystem = yes
  242. # When this option is set the player assumes that if the encoding of
  243. # ID3v2 is set to ISO-8859-1 then the ID3v1TagsEncoding is actually
  244. # that and applies appropriate conversion.
  245. #EnforceTagsEncoding = no
  246. # Enable the conversion of filenames from the local encoding to UTF-8.
  247. FileNamesIconv = yes
  248. # Enable the conversion of the xterm title from UTF-8 to the local encoding.
  249. #NonUTFXterm = no
  250. # Should MOC precache files to assist gapless playback?
  251. Precache = yes
  252. # Remember the playlist after exit?
  253. SavePlaylist = yes
  254. # When using more than one client (interface) at a time, do they share
  255. # the playlist?
  256. SyncPlaylist = yes
  257. # Choose a keymap file (relative to '~/.moc/' or using an absolute path).
  258. # An annotated example keymap file is included ('keymap.example').
  259. #
  260. # Example: Keymap = my_keymap
  261. #
  262. Keymap = keymap
  263. # Use ASCII rather than graphic characters for drawing lines. This
  264. # helps on some terminals.
  265. #ASCIILines = no
  266. # FastDirs, these allow you to jump directly to a directory, the key
  267. # bindings are in the keymap file.
  268. #
  269. # Examples: Fastdir1 = /mp3/rock
  270. # Fastdir2 = /mp3/electronic
  271. # Fastdir3 = /mp3/rap
  272. # Fastdir4 = /mp3/etc
  273. #
  274. Fastdir1 = ${MusicDir}
  275. Fastdir2 = ${HOME}/Torrents
  276. Fastdir3 = ${MusicDir}/favourites
  277. #Fastdir4 =
  278. #Fastdir5 =
  279. #Fastdir6 =
  280. #Fastdir7 =
  281. #Fastdir8 =
  282. #Fastdir9 =
  283. #Fastdir10 =
  284. # How fast to seek (in number of seconds per keystroke). The first
  285. # option is for normal seek and the second for silent seek.
  286. #SeekTime = 1
  287. #SilentSeekTime = 5
  288. # PreferredDecoders allows you to specify which decoder should be used
  289. # for any given audio format. It is a colon-separated list in which
  290. # each entry is of the general form 'code(decoders)', where 'code'
  291. # identifies the audio format and 'decoders' is a comma-separated list
  292. # of decoders in order of preference.
  293. #
  294. # The audio format identifier may be either a filename extension or a
  295. # MIME media type. If the latter, the format is 'type/subtype' (e.g.,
  296. # 'audio/flac'). Because different systems may give different MIME
  297. # media types, any 'x-' prefix of the subtype is ignored both here and
  298. # in the actual file MIME type (so all combinations of 'audio/flac' and
  299. # 'audio/x-flac' match each other).
  300. #
  301. # For Internet streams the matching is done on MIME media type and on
  302. # actual content. For files the matches are made on MIME media type
  303. # (if the 'UseMimeMagic' option is set) and on filename extension. The
  304. # MIME media type of a file is not determined until the first entry for
  305. # MIME is encountered in the list.
  306. #
  307. # The matching is done in the order of appearance in the list with any
  308. # entries added from the command line being matched before those listed
  309. # here. Therefore, if you place all filename extension entries before
  310. # all MIME entries you will speed up MOC's processing of directories
  311. # (which could be significant for remote file systems).
  312. #
  313. # The decoder list may be empty, in which case no decoders will be used
  314. # for files (and files with that audio format ignored) while Internet
  315. # streams will be assessed on the actual content. Any decoder position
  316. # may contain an asterisk, in which case any decoder not otherwise listed
  317. # which can handle the audio format will be used. It is not an error to
  318. # list the same decoder twice, but neither does it make sense to do so.
  319. #
  320. # If you have a mix of audio and non-audio files in your directories, you
  321. # may wish to include entries at top of the list which ignore non-audio
  322. # files by extension.
  323. #
  324. # In summary, the PreferredDecoders option provides fine control over the
  325. # type of matching which is performed (filename extension, MIME media
  326. # type and streamed media content) and which decoder(s) (if any) are used
  327. # based on the option's list entries and their ordering.
  328. #
  329. # Examples: aac(aac,ffmpeg) first try FAAD2 for AACs then FFmpeg
  330. # mp3() ignore MP3 files
  331. # wav(*,sndfile) use sndfile for WAV as a last resort
  332. # ogg(vorbis,*):flac(flac,*) try Xiph decoders first
  333. # ogg():audio/ogg() ignore OGG files, and
  334. # force Internet selection by content
  335. # gz():html() ignore some non-audio files
  336. #
  337. # Any unspecified audio formats default to trying all decoders.
  338. # Any unknown (or misspelt) drivers are ignored.
  339. # All names are case insensitive.
  340. # The default setting reflects the historical situation modified by
  341. # the experience of users.
  342. #
  343. #PreferredDecoders = aac(aac,ffmpeg):m4a(ffmpeg)
  344. #PreferredDecoders += mpc(musepack,*,ffmpeg):mpc8(musepack,*,ffmpeg)
  345. #PreferredDecoders += sid(sidplay2):mus(sidplay2)
  346. #PreferredDecoders += wav(sndfile,*,ffmpeg)
  347. #PreferredDecoders += wv(wavpack,*,ffmpeg)
  348. #PreferredDecoders += audio/aac(aac):audio/aacp(aac):audio/m4a(ffmpeg)
  349. #PreferredDecoders += audio/wav(sndfile,*)
  350. # The following PreferredDecoders attempt to handle the ambiguity surrounding
  351. # container types such as OGG for files. The first two entries will force
  352. # a local file to the correct decoder (assuming the .ogg file contains Vorbis
  353. # audio), while the MIME media types will cause Internet audio streams to
  354. # be assessed on content (which may be either Vorbis or Speex).
  355. #
  356. #PreferredDecoders += ogg(vorbis,*,ffmpeg):oga(vorbis,*,ffmpeg):ogv(ffmpeg)
  357. #PreferredDecoders += application/ogg(vorbis):audio/ogg(vorbis)
  358. #PreferredDecoders += flac(flac,*,ffmpeg)
  359. #PreferredDecoders += opus(opus,ffmpeg)
  360. #PreferredDecoders += spx(speex)
  361. # Which resampling method to use. There are a few methods of resampling
  362. # sound supported by libresamplerate. The default is 'Linear') which is
  363. # also the fastest. A better description can be found at:
  364. #
  365. # http://www.mega-nerd.com/libsamplerate/api_misc.html#Converters
  366. #
  367. # but briefly, the following methods are based on bandlimited interpolation
  368. # and are higher quality, but also slower:
  369. #
  370. # SincBestQuality - really slow (I know you probably have an xx GHz
  371. # processor, but it's still not enough to not see
  372. # this in the top output :) The worst case
  373. # Signal-to-Noise Ratio is 97dB.
  374. # SincMediumQuality - much faster.
  375. # SincFastest - the fastest bandlimited interpolation.
  376. #
  377. # And these are lower quality, but much faster methods:
  378. #
  379. # ZeroOrderHold - really poor quality, but it's really fast.
  380. # Linear - a bit better and a bit slower.
  381. #
  382. #ResampleMethod = Linear
  383. # Always use this sample rate (in Hz) when opening the audio device (and
  384. # resample the sound if necessary). When set to 0 the device is opened
  385. # with the file's rate.
  386. #ForceSampleRate = 0
  387. # By default, even if the sound card reports that it can output 24bit samples
  388. # MOC converts 24bit PCM to 16bit. Setting this option to 'yes' allows MOC
  389. # to use 24bit output. (The MP3 decoder, for example, uses this format.)
  390. # This is disabled by default because there were reports that it prevents
  391. # MP3 files from playing on some soundcards.
  392. #Allow24bitOutput = no
  393. # Use realtime priority for output buffer thread. This will prevent gaps
  394. # while playing even with heavy load. The user who runs MOC must have
  395. # permissions to set such a priority. This could be dangerous, because it
  396. # is possible that a bug in MOC will freeze your computer.
  397. #UseRealtimePriority = no
  398. # The number of audio files for which MOC will cache tags. When this limit
  399. # is reached, file tags are discarded on a least recently used basis (with
  400. # one second resolution). You can disable the cache by giving it a size of
  401. # zero. Note that if you decrease the cache size below the number of items
  402. # currently in the cache, the number will not decrease immediately (if at
  403. # all).
  404. #TagsCacheSize = 256
  405. # Number items in the playlist.
  406. #PlaylistNumbering = yes
  407. # Main window layouts can be configured. You can change the position and
  408. # size of the menus (directory and playlist). You have three layouts and
  409. # can switch between then using the 'l' key (standard mapping). By default,
  410. # only two layouts are configured.
  411. #
  412. # The format is as follows:
  413. #
  414. # - Each layout is described as a list of menu entries.
  415. # - Each menu entry is of the form:
  416. #
  417. # menu(position_x, position_y, width, height)
  418. #
  419. # where 'menu' is either 'directory' or 'playlist'.
  420. # - The parameters define position and size of the menu. They can
  421. # be absolute numbers (like 10) or a percentage of the screen size
  422. # (like 45%).
  423. # - 'width' and 'height' can have also value of 'FILL' which means
  424. # fill the screen from the menu's position to the border.
  425. # - Menus may overlap.
  426. #
  427. # You must describe at least one menu (default is to fill the whole window).
  428. # There must be at least one layout (Layout1) defined; others can be empty.
  429. #
  430. # Example: Layout1 = playlist(50%,50%,50%,50%)
  431. # Layout2 = ""
  432. # Layout3 = ""
  433. #
  434. # Just one layout, the directory will occupy the whole
  435. # screen, the playlist will have 1/4 of the screen size
  436. # and be positioned at lower right corner. (Note that
  437. # because the playlist will be hidden by the directory
  438. # you will have to use the TAB key to make the playlist
  439. # visible.)
  440. #
  441. # Example: Layout1 = playlist(0,0,100%,10):directory(0,10,100%,FILL)
  442. #
  443. # The screen is split into two parts: playlist at the top
  444. # and the directory menu at the bottom. Playlist will
  445. # occupy 10 lines and the directory menu the rest.
  446. #
  447. # Layout1 = directory(0,10,100%,FILL):playlist(0,0,100%,10)
  448. # Layout2 = directory(0,0,50%,100%):playlist(50%,0,FILL,100%)
  449. # Layout3 = ""
  450. Layout1 = directory(50%,50%,50%,50%)
  451. Layout2 = ""
  452. Layout3 = ""
  453. # When the song changes, should the menu be scrolled so that the currently
  454. # played file is visible?
  455. FollowPlayedFile = yes
  456. # What to do if the interface was started and the server is already playing
  457. # something from the playlist? If CanStartInPlaylist is set to 'yes', the
  458. # interface will switch to the playlist. When set to 'no' it will start
  459. # from the last directory.
  460. #CanStartInPlaylist = yes
  461. # Executing external commands (1 - 10) invoked with key commands (F1 - F10
  462. # by default).
  463. #
  464. # Some arguments are substituted before executing:
  465. #
  466. # %f - file path
  467. # %i - title made from tags
  468. # %S - start block mark (in seconds)
  469. # %E - end block mark (in seconds)
  470. #
  471. # Data from tags can also be substituted:
  472. #
  473. # %t - title
  474. # %a - album
  475. # %r - artist
  476. # %n - track
  477. # %m - time of the file (in seconds)
  478. #
  479. # The parameters above apply to the currently selected file. If you change
  480. # them to capital letters, they are taken from the file currently playing.
  481. #
  482. # Programs are run using execv(), not a shell, so you can't do things like
  483. # redirecting the output to a file. The command string is split using blank
  484. # characters as separators; the first element is the command to be executed
  485. # and the rest are its parameters, so if you use "echo Playing: %I" we run
  486. # program 'echo' (from $PATH) with 2 parameters: the string 'Playing:' and
  487. # the title of the file currently playing. Even if the title contains
  488. # spaces, it's still one parameter and it's safe if it contains `rm -rf /`.
  489. #
  490. # Examples: ExecCommand1 = "cp %f /mnt/usb_drive"
  491. # ExecCommand2 = "/home/joe/now_playing %I"
  492. #
  493. ExecCommand1 = "notify-send %f"
  494. ExecCommand2 = "notify-send %I"
  495. ExecCommand3 = "cp %f ${Fastdir3}/"
  496. #ExecCommand4 =
  497. #ExecCommand5 =
  498. #ExecCommand6 =
  499. #ExecCommand7 =
  500. #ExecCommand8 =
  501. #ExecCommand9 =
  502. #ExecCommand10 =
  503. # Display the cursor in the line with the selected file. Some braille
  504. # readers (the Handy Tech modular series ZMU 737, for example) use the
  505. # cursor to focus and can make use of it to present the file line even
  506. # when other fields are changing.
  507. #UseCursorSelection = no
  508. # Set the terminal title when running under xterm.
  509. #SetXtermTitle = yes
  510. # Set the terminal title when running under screen(1). If MOC can detect
  511. # that it is running under screen(1), then it will set an appropriate
  512. # title (see description of ScreenTerms above). However, if multiple
  513. # levels of screen management are involved, detection might fail and this
  514. # could cause a screen upset. In that situation you can use this option
  515. # to force screen titles off.
  516. #SetScreenTitle = yes
  517. # Display full paths instead of just file names in the playlist.
  518. PlaylistFullPaths = no
  519. # The following setting describes how block markers are displayed in
  520. # the play time progress bar. Its value is a string of exactly three
  521. # characters. The first character is displayed in a position which
  522. # corresponds to the time marked as the start of a block and the last
  523. # character to the time marked as the end of the block. The middle
  524. # character is displayed instead if both the start and the end of the block
  525. # would fall in the same position (within the resolution of the interface).
  526. # You can turn off the displaying of these block marker positions by using
  527. # three space characters.
  528. #BlockDecorators = "`\"'"
  529. # How long (in seconds) to leave a message displayed on the screen.
  530. # Setting this to a high value allows you to scroll through the messages
  531. # using the 'hide_message' key. Setting it to zero means you'll have to
  532. # be quick to see any message at all. Any new messages will be queued up
  533. # and displayed after the current message's linger time expires.
  534. #MessageLingerTime = 3
  535. # Does MOC display a prefix on delayed messages indicating
  536. # the number of queued messages still to be displayed?
  537. #PrefixQueuedMessages = yes
  538. # String to append to the queued message count if any
  539. # error messages are still waiting to be displayed.
  540. #ErrorMessagesQueued = "!"
  541. # Self-describing ModPlug options (with 'yes' or 'no' values).
  542. #ModPlug_Oversampling = yes
  543. #ModPlug_NoiseReduction = yes
  544. #ModPlug_Reverb = no
  545. #ModPlug_MegaBass = no
  546. #ModPlug_Surround = no
  547. # ModPlug resampling mode.
  548. # Valid values are:
  549. #
  550. # FIR - 8 tap fir filter (extremely high quality)
  551. # SPLINE - Cubic spline interpolation (high quality)
  552. # LINEAR - Linear interpolation (fast, good quality)
  553. # NEAREST - No interpolation (very fast, extremely bad sound quality)
  554. #
  555. #ModPlug_ResamplingMode = FIR
  556. # Other self-describing ModPlug audio characteristic options.
  557. # (Note that the 32 bit sample size seems to be buggy.)
  558. #ModPlug_Channels = 2 # 1 or 2 channels
  559. #ModPlug_Bits = 16 # 8, 16 or 32 bits
  560. #ModPlug_Frequency = 44100 # 11025, 22050, 44100 or 48000 Hz
  561. #ModPlug_ReverbDepth = 0 # 0 (quiet) to 100 (loud)
  562. #ModPlug_ReverbDelay = 0 # Delay in ms (usually 40-200ms)
  563. #ModPlug_BassAmount = 0 # 0 (quiet) to 100 (loud).
  564. #ModPlug_BassRange = 10 # Cutoff in Hz (10-100).
  565. #ModPlug_SurroundDepth = 0 # Surround level 0(quiet)-100(heavy).
  566. #ModPlug_SurroundDelay = 0 # Surround delay in ms, usually 5-40ms.
  567. #ModPlug_LoopCount = 0 # 0 (never), n (times) or -1 (forever)
  568. # Self-describing TiMidity audio characteristic options.
  569. #TiMidity_Rate = 44100 # Between 8000 and 48000
  570. #TiMidity_Bits = 16 # 8 or 16
  571. #TiMidity_Channels = 2 # 1 or 2
  572. #TiMidity_Volume = 100 # 0 to 800
  573. # You can setup a TiMidity-Config-File here.
  574. # Leave it unset to use library defaults (/etc/timidity.cfg mostly).
  575. # Setting it to 'yes' also uses the library defaults.
  576. # Set it to 'no' if you don't have any configuration file.
  577. # Otherwise set it to the name of a specific file.
  578. #TiMidity_Config =
  579. # Self-describing SidPlay2 audio characteristic options.
  580. #SidPlay2_DefaultSongLength = 180 # If not in database (in seconds)
  581. #SidPlay2_MinimumSongLength = 0 # Play at least n (in seconds)
  582. #SidPlay2_Frequency = 44100 # 4000 to 48000
  583. #SidPlay2_Bits = 16 # 8 or 16
  584. #SidPlay2_Optimisation = 0 # 0 (worst quality) to 2 (best quality)
  585. # Set path to a HVSC-compatible database (if not set, database is disabled).
  586. #SidPlay2_Database =
  587. # SidPlay2 playback Mode:
  588. #
  589. # "M": Mono (best for many SIDs)
  590. # "S": Stereo
  591. # "L"/"R": Left / Right
  592. #
  593. #SidPlay2_PlayMode = "M"
  594. # Use start-song information from SID ('yes') or start at first song
  595. # ('no'). Songs before the start-song won't be played.
  596. #SidPlay2_StartAtStart = yes
  597. # Play sub-tunes.
  598. #SidPlay2_PlaySubTunes = yes
  599. # Run the OnSongChange command when a new song starts playing.
  600. # Specify the full path (i.e. no leading '~') of an executable to run.
  601. # Arguments will be passed, and you can use the following escapes:
  602. #
  603. # %a artist
  604. # %r album
  605. # %f filename
  606. # %t title
  607. # %n track
  608. # %d file duration in XX:YY form
  609. # %D file duration, number of seconds
  610. #
  611. # No pipes/redirects can be used directly, but writing a shell script
  612. # can do the job.
  613. #
  614. # Example: OnSongChange = "/home/jack/.moc/myscript %a %r"
  615. #
  616. OnSongChange = ${SCRIPTS}/shell/moc-notify.sh
  617. # If RepeatSongChange is 'yes' then MOC will execute the command every time
  618. # a song starts playing regardless of whether or not it is just repeating.
  619. # Otherwise the command will only be executed when a different song is
  620. # started.
  621. RepeatSongChange = yes
  622. # Run the OnStop command (full path, no arguments) when MOC changes state
  623. # to stopped (i.e., when user stopped playing or changes a song).
  624. #
  625. # Example: OnStop = "/home/jack/.moc/myscript_on_stop"
  626. #
  627. OnStop = ${SCRIPTS}/shell/moc-notify.sh
  628. # Run the OnServerStart or OnServerStop commands (full path, no arguments)
  629. # when MOC server is started or terminated respectively. The server will
  630. # not wait for the commands to complete before continuing.
  631. OnServerStart = ${HOME}/.local/bin/shell/moc-play.sh
  632. #OnServerStart = "/usr/bin/mocp --unpause"
  633. #OnServerStop = "/usr/bin/notify-send 'Info' 'Closing mocp'"
  634. OnServerStop = "echo exit"
  635. # This option determines which song to play after finishing all the songs
  636. # in the queue. Setting this to 'yes' causes MOC to play the song which
  637. # follows the song being played before queue playing started. If set to
  638. # 'no', MOC will play the song following the last song in the queue if it
  639. # is in the playlist. The default is 'yes' because this is the way other
  640. # players usually behave. (Note that this option previously took the
  641. # values 1 and 0; these are now deprecated in favour of 'yes' and 'no'.)
  642. #QueueNextSongReturn = yes