Feat: moc

This commit is contained in:
Bertrand Benjamin 2021-07-14 07:28:20 +02:00
parent ffa1bb6a71
commit d6909b97e4
4 changed files with 843 additions and 0 deletions

654
moc/.moc/config Normal file
View File

@ -0,0 +1,654 @@
# This is a configuration file for the MOC player. It should be named
# 'config' and placed in the ~/.moc directory. As this file can specify
# commands which invoke other applications, MOC will refuse to start if it
# is not owned by either root or the current user, or if it is writable by
# anyone other than it's owner. All options are given with their default
# values, and therefore commented.
# Comments begin with '#'.
# You can use quotes and escape ('\') in parameters.
#
# You can have variable values substituted by enclosing the variable name
# as "${...}". (This only applies to the portion of the option following
# the ' ='.) Variables are substituted first from the environment then,
# if not found, from the configuration options. (Note that the value of
# a configuration option substituted is that which it has at the time the
# substitution variable is encountered.) If there is a naming conflict
# between an environment and configuration variable, you may be able to
# resolve it by using lowercase as the environment variable matches are
# case-sensitive whereas the configuration variables are not.
#
# You can also use the form "${...:-...}" where the value in the second
# position will be substituted if the variable name given in the first
# position is unset or null.
#
# So, for example:
#
# MusicDir = /music/${USER:-public}
# Fastdir1 = ${MusicDir}/mp3/rock
# Fastdir2 = ${MusicDir}/mp3/electronic
# Fastdir3 = ${MusicDir}/mp3/rap
# Fastdir4 = ${MusicDir}/mp3/etc
#
# Variable names are limited to those accepted by the BASH shell; that
# is, those comprising the upper- and lowercase ASCII characters, digits
# and the underscore.
#
# If you need to use the "${" sequence for any other purpose, write "$${"
# and it will be replaced by "${" and not treated as a substitution.
#
# Some options take lists of strings as their values. The strings are
# separated by colons. Additional strings can be appended to the list
# using "+ =" in place of a plain "=" to assign the value. For an example,
# see the XTerms option.
#
# You can override any configuration option when you run MOC using the
# '-O' command line option:
#
# mocp -O AutoNext =no -O messagelingertime=1 -O XTerms+=xxt:xwt
#
# This command line option can be repeated as many times as needed and
# the configuration option name is not case sensitive. (Note that MOC
# does not perform variable substitution on the value of such overridden
# configuration options.) Most option values are set before the
# configuration file is processed (which allows the new values to be
# picked up by substitutions), however list-valued options are overridden
# afterwards (which gives the choice of whether the configured values are
# replaced or added to).
# Remember that the client and server are separate processes and the
# server will retain the configuration values formed from the environment
# within which it was originally started.
# Show file titles (title, author, album) instead of file names?
#ReadTags = yes
# In which directory do you store your music files? If you specify it
# you will be able to jump straight to this directory with the '-m'
# parameter or the 'm' command. This can also point to a playlist.
#
# Example: MusicDir = "/home/joe/music"
#
MusicDir = "/media/documents/musique/"
# Start in the music directory by default? If set to 'no', start
# in the current directory by default. A single directory on
# the command line takes precedence.
#StartInMusicDir = no
# How to sort? FileName is the option's only value for now.
#Sort = FileName
# Show errors in the streams (for example, broken frames in MP3 files)?
#ShowStreamErrors = no
# Ignore CRC errors in MP3 files? Most players do that, so the default
# value is 'yes'.
#MP3IgnoreCRCErrors = yes
# Set playback toggles.
#Repeat = no
#Shuffle = no
#AutoNext = yes
# Default FormatString:
#
# %n - Track number
# %a - Artist
# %A - Album
# %t - Title
# %(X:TRUE:FALSE) - Ternary expression: if X exists, do TRUE,
# otherwise FALSE. The escape character must
# be doubled (i.e., '\\'). (See zshmisc
# documentation for more information.)
#
#FormatString = "%(n:%n :)%(a:%a - :)%(t:%t:)%(A: \(%A\):)"
# Input and ouput buffer sizes (in kilobytes).
#InputBuffer = 512 # Minimum value is 32KB
#OutputBuffer = 512 # Minimum value is 128KB
# How much to fill the input buffer before playing (in kilobytes)?
# This can't be greater than the value of InputBuffer. While this has
# a positive effect for network streams, it also causes the broadcast
# audio to be delayed.
#Prebuffering = 64
# Use this HTTP proxy server for internet streams. If not set, the
# environment variables http_proxy and ALL_PROXY will be used if present.
#
# Format: HTTPProxy = PROXY_NAME:PORT
#
#HTTPProxy =
# Sound driver - OSS, ALSA, JACK, SNDIO (on OpenBSD) or null (only for
# debugging). You can enter more than one driver as a colon-separated
# list. The first working driver will be used.
#SoundDriver = JACK:ALSA:OSS
# Jack output settings.
#JackClientName = "moc"
#JackStartServer = no
#JackOutLeft = "system:playback_1"
#JackOutRight = "system:playback_2"
# OSS output settings.
#OSSDevice = /dev/dsp
#OSSMixerDevice = /dev/mixer
#OSSMixerChannel1 = pcm # 'pcm', 'master' or 'speaker'
#OSSMixerChannel2 = master # 'pcm', 'master' or 'speaker'
# ALSA output settings.
#ALSADevice = default
#ALSAMixer1 = PCM
#ALSAMixer2 = Master
# Save software mixer state?
# If enabled, a file 'softmixer' will be created in '~/.moc/' storing the
# mixersetting set when the server is shut down.
# Note that there is a "hidden" 'Amplification' setting in that file.
# Amplification (0-200) is used to scale the mixer setting (0-100). This
# results in a higher signal amplitude but may also produce clipping.
#Softmixer_SaveState = yes
# Save equalizer state?
# If enabled, a file 'equalizer' will be created in '~/.moc/' storing the
# equalizer settings when the server is shut down.
# Note that there is a "hidden" 'Mixin' setting in that file.
# Mixin (0.0-1.0) is used to determine how much of the original signal is
# used after equalizing. 0 means to only use the equalized sound, while 1
# effectively disabled the mixer. The default is 0.25.
#Equalizer_SaveState = yes
# Show files with dot at the beginning?
#ShowHiddenFiles = no
# Hide file name extensions?
#HideFileExtension = no
# Show file format in menu?
#ShowFormat = yes
# Show file time in menu? Possible values: 'yes', 'no' and 'IfAvailable'
# (meaning show the time only when it is already known, which often works
# faster).
#ShowTime = IfAvailable
# Show time played as a percentage in the time progress bar.
#ShowTimePercent = no
# Values of the TERM environment variable which are deemed to be xterms.
#XTerms = xterm
#XTerms + = xterm-colour:xterm-color
#XTerms + = xterm-256colour:xterm-256color
#XTerms + = rxvt:rxvt-unicode
#XTerms + = rxvt-unicode-256colour:rxvt-unicode-256color
#XTerms + = eterm
# Theme file to use. This can be absolute path or relative to
# /usr/share/moc/themes/ (depends on installation prefix) or
# ~/.moc/themes/ .
#
# Example: Theme = laras_theme
#
Theme = "moca_theme"
# The theme used when running on an xterm.
#
# Example: XTermTheme = transparent-background
#
#XTermTheme =
# Should MOC try to autoload the default lyrics file for an audio? (The
# default lyrics file is a text file with the same file name as the audio
# file name with any trailing "extension" removed.)
#AutoLoadLyrics = yes
# MOC directory (where pid file, socket and state files are stored).
# You can use ~ at the beginning.
#MOCDir = ~/.moc
# Use mmap() to read files. mmap() is much slower on NFS.
#UseMMap = no
# Use MIME to identify audio files. This can make for slower loading
# of playlists but is more accurate than using "extensions".
#UseMimeMagic = no
# Assume this encoding for ID3 version 1/1.1 tags (MP3 files). Unlike
# ID3v2, UTF-8 is not used here and MOC can't guess how tags are encoded.
# Another solution is using librcc (see the next option). This option is
# ignored if UseRCC is set to 'yes'.
#ID3v1TagsEncoding = WINDOWS-1250
# Use librcc to fix ID3 version 1/1.1 tags encoding.
#UseRCC = yes
# Use librcc to filenames and directory names encoding.
#UseRCCForFilesystem = yes
# When this option is set the player assumes that if the encoding of
# ID3v2 is set to ISO-8859-1 then the ID3v1TagsEncoding is actually
# that and applies appropriate conversion.
#EnforceTagsEncoding = no
# Enable the conversion of filenames from the local encoding to UTF-8.
#FileNamesIconv = no
# Enable the conversion of the xterm title from UTF-8 to the local encoding.
#NonUTFXterm = no
# Remember the playlist after exit?
#SavePlaylist = yes
# When using more than one client (interface) at a time, do they share
# the playlist?
#SyncPlaylist = yes
# Choose a keymap file (relative to '~/.moc/' or using an absolute path).
# An annotated example keymap file is included ('keymap.example').
#
# Example: Keymap = my_keymap
#
Keymap = keymap
# Use ASCII rather than graphic characters for drawing lines. This
# helps on some terminals.
#ASCIILines = no
# FastDirs, these allow you to jump directly to a directory, the key
# bindings are in the keymap file.
#
# Examples: Fastdir1 = /mp3/rock
# Fastdir2 = /mp3/electronic
# Fastdir3 = /mp3/rap
# Fastdir4 = /mp3/etc
#
#Fastdir1 =
#Fastdir2 =
#Fastdir3 =
#Fastdir4 =
#Fastdir5 =
#Fastdir6 =
#Fastdir7 =
#Fastdir8 =
#Fastdir9 =
#Fastdir10 =
# How fast to seek (in number of seconds per keystroke). The first
# option is for normal seek and the second for silent seek.
#SeekTime = 1
#SilentSeekTime = 5
# PreferredDecoders allows you to specify which decoder should be used
# for any given audio format. It is a colon-separated list in which
# each entry is of the general form 'code(decoders)', where 'code'
# identifies the audio format and 'decoders' is a comma-separated list
# of decoders in order of preference.
#
# The audio format identifier may be either a filename extension or a
# MIME media type. If the latter, the format is 'type/subtype' (e.g.,
# 'audio/flac'). Because different systems may give different MIME
# media types, any 'x-' prefix of the subtype is ignored both here and
# in the actual file MIME type (so all combinations of 'audio/flac' and
# 'audio/x-flac' match each other).
#
# For Internet streams the matching is done on MIME media type and on
# actual content. For files the matches are made on MIME media type
# (if the 'UseMimeMagic' option is set) and on filename extension. The
# MIME media type of a file is not determined until the first entry for
# MIME is encountered in the list.
#
# The matching is done in the order of appearance in the list with any
# entries added from the command line being matched before those listed
# here. Therefore, if you place all filename extension entries before
# all MIME entries you will speed up MOC's processing of directories
# (which could be significant for remote file systems).
#
# The decoder list may be empty, in which case no decoders will be used
# for files (and files with that audio format ignored) while Internet
# streams will be assessed on the actual content. Any decoder position
# may contain an asterisk, in which case any decoder not otherwise listed
# which can handle the audio format will be used. It is not an error to
# list the same decoder twice, but neither does it make sense to do so.
#
# If you have a mix of audio and non-audio files in your directories, you
# may wish to include entries at top of the list which ignore non-audio
# files by extension.
#
# In summary, the PreferredDecoders option provides fine control over the
# type of matching which is performed (filename extension, MIME media
# type and streamed media content) and which decoder(s) (if any) are used
# based on the option's list entries and their ordering.
#
# Examples: aac(aac,ffmpeg) first try FAAD2 for AACs then FFmpeg
# mp3() ignore MP3 files
# wav(*,sndfile) use sndfile for WAV as a last resort
# ogg(vorbis,*):flac(flac,*) try Xiph decoders first
# ogg():audio/ogg() ignore OGG files, and
# force Internet selection by content
# gz():html() ignore some non-audio files
#
# Any unspecified audio formats default to trying all decoders.
# Any unknown (or misspelt) drivers are ignored.
# All names are case insensitive.
# The default setting reflects the historical situation modified by
# the experience of users.
#
#PreferredDecoders = aac(aac,ffmpeg):m4a(ffmpeg)
#PreferredDecoders += mpc(musepack,*,ffmpeg):mpc8(musepack,*,ffmpeg)
#PreferredDecoders += sid(sidplay2):mus(sidplay2)
#PreferredDecoders += wav(sndfile,*,modplug,ffmpeg)
#PreferredDecoders += wv(wavpack,*,ffmpeg)
#PreferredDecoders += audio/aac(aac):audio/aacp(aac):audio/m4a(ffmpeg)
#PreferredDecoders += audio/wav(sndfile,*,modplug)
# The following PreferredDecoders attempt to handle the ambiguity surrounding
# container types such as OGG for files. The first two entries will force
# a local file to the correct decoder (assuming the .ogg file contains Vorbis
# audio), while the MIME media types will cause Internet audio streams to
# be assessed on content (which may be either Vorbis or Speex).
#
#PreferredDecoders += ogg(vorbis,ffmpeg):oga(vorbis,ffmpeg):ogv(ffmpeg)
#PreferredDecoders += opus(ffmpeg)
#PreferredDecoders += spx(speex)
#PreferredDecoders += application/ogg(vorbis):audio/ogg(vorbis)
# Which resampling method to use. There are a few methods of resampling
# sound supported by libresamplerate. The default is 'Linear') which is
# also the fastest. A better description can be found at:
#
# http://www.mega-nerd.com/libsamplerate/api_misc.html#Converters
#
# but briefly, the following methods are based on bandlimited interpolation
# and are higher quality, but also slower:
#
# SincBestQuality - really slow (I know you probably have an xx GHz
# processor, but it's still not enough to not see
# this in the top output :) The worst case
# Signal-to-Noise Ratio is 97dB.
# SincMediumQuality - much faster.
# SincFastest - the fastest bandlimited interpolation.
#
# And these are lower quality, but much faster methods:
#
# ZeroOrderHold - really poor quality, but it's really fast.
# Linear - a bit better and a bit slower.
#
#ResampleMethod = Linear
# Always use this sample rate (in Hz) when opening the audio device (and
# resample the sound if necessary). When set to 0 the device is opened
# with the file's rate.
#ForceSampleRate = 0
# By default, even if the sound card reports that it can output 24bit samples
# MOC converts 24bit PCM to 16bit. Setting this option to 'yes' allows MOC
# to use 24bit output. (The MP3 decoder, for example, uses this format.)
# This is disabled by default because there were reports that it prevents
# MP3 files from playing on some soundcards.
#Allow24bitOutput = no
# Use realtime priority for output buffer thread. This will prevent gaps
# while playing even with heavy load. The user who runs MOC must have
# permissions to set such a priority. This could be dangerous, because it
# is possible that a bug in MOC will freeze your computer.
#UseRealtimePriority = no
# The number of audio files for which MOC will cache tags. When this limit
# is reached, file tags are discarded on a least recently used basis (with
# one second resolution). You can disable the cache by giving it a size of
# zero. Note that if you decrease the cache size below the number of items
# currently in the cache, the number will not decrease immediately (if at
# all).
#TagsCacheSize = 256
# Number items in the playlist.
#PlaylistNumbering = yes
# Main window layouts can be configured. You can change the position and
# size of the menus (directory and playlist). You have three layouts and
# can switch between then using the 'l' key (standard mapping). By default,
# only two layouts are configured.
#
# The format is as follows:
#
# - Each layout is described as a list of menu entries.
# - Each menu entry is of the form:
#
# menu(position_x, position_y, width, height)
#
# where 'menu' is either 'directory' or 'playlist'.
# - The parameters define position and size of the menu. They can
# be absolute numbers (like 10) or a percentage of the screen size
# (like 45%).
# - 'width' and 'height' can have also value of 'FILL' which means
# fill the screen from the menu's position to the border.
# - Menus may overlap.
#
# You must describe at least one menu (default is to fill the whole window).
# There must be at least one layout (Layout1) defined; others can be empty.
#
# Example: Layout1 = playlist(50%,50%,50%,50%)
# Layout2 = ""
# Layout3 = ""
#
# Just one layout, the directory will occupy the whole
# screen, the playlist will have 1/4 of the screen size
# and be positioned at lower right corner. (Note that
# because the playlist will be hidden by the directory
# you will have to use the TAB key to make the playlist
# visible.)
#
# Example: Layout1 = playlist(0,0,100%,10):directory(0,10,100%,FILL)
#
# The screen is split into two parts: playlist at the top
# and the directory menu at the bottom. Playlist will
# occupy 10 lines and the directory menu the rest.
#
#Layout1 = directory(0,0,50%,100%):playlist(50%,0,FILL,100%)
#Layout2 = directory(0,0,100%,100%):playlist(0,0,100%,100%)
#Layout3 = ""
# When the song changes, should the menu be scrolled so that the currently
# played file is visible?
#FollowPlayedFile = yes
# What to do if the interface was started and the server is already playing
# something from the playlist? If CanStartInPlaylist is set to 'yes', the
# interface will switch to the playlist. When set to 'no' it will start
# from the last directory.
#CanStartInPlaylist = yes
# Executing external commands (1 - 10) invoked with key commands (F1 - F10
# by default).
#
# Some arguments are substituted before executing:
#
# %f - file path
# %i - title made from tags
# %S - start block mark (in seconds)
# %E - end block mark (in seconds)
#
# Data from tags can also be substituted:
#
# %t - title
# %a - album
# %r - artist
# %n - track
# %m - time of the file (in seconds)
#
# The parameters above apply to the currently selected file. If you change
# them to capital letters, they are taken from the file currently playing.
#
# Programs are run using execv(), not a shell, so you can't do things like
# redirecting the output to a file. The command string is split using blank
# characters as separators; the first element is the command to be executed
# and the rest are its parameters, so if you use "echo Playing: %I" we run
# program 'echo' (from $PATH) with 2 parameters: the string 'Playing:' and
# the title of the file currently playing. Even if the title contains
# spaces, it's still one parameter and it's safe if it contains `rm -rf /`.
#
# Examples: ExecCommand1 = "cp %f /mnt/usb_drive"
# ExecCommand2 = "/home/joe/now_playing %I"
#
#ExecCommand1 =
#ExecCommand2 =
#ExecCommand3 =
#ExecCommand4 =
#ExecCommand5 =
#ExecCommand6 =
#ExecCommand7 =
#ExecCommand8 =
#ExecCommand9 =
#ExecCommand10 =
# Display the cursor in the line with the selected file. Some braille
# readers (the Handy Tech modular series ZMU 737, for example) use the
# cursor to focus and can make use of it to present the file line even
# when other fields are changing.
#UseCursorSelection = no
# Set the terminal title when running under xterm.
#SetXtermTitle = yes
# Set the terminal title when running under screen.
#SetScreenTitle = yes
# Display full paths instead of just file names in the playlist.
#PlaylistFullPaths = yes
# The following setting describes how block markers are displayed in
# the play time progress bar. Its value is a string of exactly three
# characters. The first character is displayed in a position which
# corresponds to the time marked as the start of a block and the last
# character to the time marked as the end of the block. The middle
# character is displayed instead if both the start and the end of the block
# would fall in the same position (within the resolution of the interface).
# You can turn off the displaying of these block marker positions by using
# three space characters.
#BlockDecorators = "`\"'"
# How long (in seconds) to leave a message displayed on the screen.
# Setting this to a high value allows you to scroll through the messages
# using the 'hide_message' key. Setting it to zero means you'll have to
# be quick to see any message at all. Any new messages will be queued up
# and displayed after the current message's linger time expires.
#MessageLingerTime = 3
# Does MOC display a prefix on delayed messages indicating
# the number of queued messages still to be displayed?
#PrefixQueuedMessages = yes
# String to append to the queued message count if any
# error messages are still waiting to be displayed.
#ErrorMessagesQueued = "!"
# Self-describing ModPlug options (with 'yes' or 'no' values).
#ModPlug_Oversampling = yes
#ModPlug_NoiseReduction = yes
#ModPlug_Reverb = no
#ModPlug_MegaBass = no
#ModPlug_Surround = no
# ModPlug resampling mode.
# Valid values are:
#
# FIR - 8 tap fir filter (extremely high quality)
# SPLINE - Cubic spline interpolation (high quality)
# LINEAR - Linear interpolation (fast, good quality)
# NEAREST - No interpolation (very fast, extremely bad sound quality)
#
#ModPlug_ResamplingMode = FIR
# Other self-describing ModPlug audio characteristic options.
# (Note that the 32 bit sample size seems to be buggy.)
#ModPlug_Channels = 2 # 1 or 2 channels
#ModPlug_Bits = 16 # 8, 16 or 32 bits
#ModPlug_Frequency = 44100 # 11025, 22050, 44100 or 48000 Hz
#ModPlug_ReverbDepth = 0 # 0 (quiet) to 100 (loud)
#ModPlug_ReverbDelay = 0 # Delay in ms (usually 40-200ms)
#ModPlug_BassAmount = 0 # 0 (quiet) to 100 (loud).
#ModPlug_BassRange = 10 # Cutoff in Hz (10-100).
#ModPlug_SurroundDepth = 0 # Surround level 0(quiet)-100(heavy).
#ModPlug_SurroundDelay = 0 # Surround delay in ms, usually 5-40ms.
#ModPlug_LoopCount = 0 # 0 (never), n (times) or -1 (forever)
# Self-describing TiMidity audio characteristic options.
#TiMidity_Rate = 44100 # Between 8000 and 48000
#TiMidity_Bits = 16 # 8 or 16
#TiMidity_Channels = 2 # 1 or 2
#TiMidity_Volume = 100 # 0 to 800
# You can setup a TiMidity-Config-File here.
# Leave it unset to use library defaults (/etc/timidity.cfg mostly).
# Setting it to 'yes' also uses the library defaults.
# Set it to 'no' if you don't have any configuration file.
# Otherwise set it to the name of a specific file.
#TiMidity_Config =
# Self-describing SidPlay2 audio characteristic options.
#SidPlay2_DefaultSongLength = 180 # If not in database (in seconds)
#SidPlay2_MinimumSongLength = 0 # Play at least n (in seconds)
#SidPlay2_Frequency = 44100 # 4000 to 48000
#SidPlay2_Bits = 16 # 8 or 16
#SidPlay2_Optimisation = 0 # 0 (worst quality) to 2 (best quality)
# Set path to a HVSC-compatible database (if not set, database is disabled).
#SidPlay2_Database =
# SidPlay2 playback Mode:
#
# "M": Mono (best for many SIDs)
# "S": Stereo
# "L"/"R": Left / Right
#
#SidPlay2_PlayMode = "M"
# Use start-song information from SID ('yes') or start at first song
# ('no'). Songs before the start-song won't be played. (Note that this
# option previously took the values 1 and 0; these are now deprecated
# in favour of 'yes' and 'no'.)
#SidPlay2_StartAtStart = yes
# Play sub-tunes. (Note that this option previously took the values 1
# and 0; these are now deprecated in favour of 'yes' and 'no'.)
#SidPlay2_PlaySubTunes = yes
# Run the OnSongChange command when a new song starts playing.
# Specify the full path (i.e. no leading '~') of an executable to run.
# Arguments will be passed, and you can use the following escapes:
#
# %a artist
# %r album
# %f filename
# %t title
# %n track
# %d file duration in XX:YY form
# %D file duration, number of seconds
#
# No pipes/redirects can be used directly, but writing a shell script
# can do the job.
#
# Example: OnSongChange = "/home/jack/.moc/myscript %a %r"
#
#OnSongChange =
# If RepeatSongChange is 'yes' then MOC will execute the command every time
# a song starts playing regardless of whether or not it is just repeating.
# Otherwise the command will only be executed when a different song is
# started.
#RepeatSongChange = no
# Run the OnStop command (full path, no arguments) when MOC changes state
# to stopped (i.e., when user stopped playing or changes a song).
#OnStop = "/home/jack/.moc/myscript_on_stop"
# This option determines which song to play after finishing all the songs
# in the queue. Setting this to 'yes' causes MOC to play the song which
# follows the song being played before queue playing started. If set to
# 'no', MOC will play the song following the last song in the queue if it
# is in the playlist. The default is 'yes' because this is the way other
# players usually behave. (Note that this option previously took the
# values 1 and 0; these are now deprecated in favour of 'yes' and 'no'.)
#QueueNextSongReturn = yes

2
moc/.moc/equalizer Normal file
View File

@ -0,0 +1,2 @@
Active: 1
Mixin: 0.250000

183
moc/.moc/keymap Normal file
View File

@ -0,0 +1,183 @@
# This is the example keymap file for MOC. You can define your own key
# bindings for MOC commands by creating your own keymap file and setting
# the 'Keymap' option in ~/.moc/config.
#
# The format of this file is:
#
# - Lines beginning with # are comments.
# - Blank lines are ignored.
# - Every other line is expected to be in one of the formats:
#
# COMMAND = [KEY ...]
# COMMAND += KEY ...
#
# The KEY can be:
#
# - Just a char, like i, L, ", *
# - CTRL-KEY sequence: ^k (CTRL-k), ^4
# - ALT-KEY (meta) sequence: M-j (ALT-j), M-/
# - Special keys: DOWN, UP
# LEFT, RIGHT
# HOME, END
# BACKSPACE
# INS, DEL
# ENTER
# PAGE_UP, PAGE_DOWN
# SPACE, TAB
# KEYPAD_CENTER
# ESCAPE
# F1 - F12
#
# Note that the use of a digit as a KEY is deprecated.
#
# Maximum number of KEYs for one COMMAND is 5.
#
# Omitting the KEY for a COMMAND will unbind all its default keys. They
# will also be automatically unbound when you bind new KEYs to it. Individual
# default KEYs will be automatically unbound when they are explicitly bound
# to some other COMMAND.
#
# Using the '+=' form will cause the KEYs to be appended to any existing
# (default or explicit) bindings for the COMMAND. Appending an existing
# default binding for the same COMMAND will cause MOC to think of that KEY
# as then being explicitly bound.
#
# Only one binding for any given COMMAND can appear in the keymap file. One
# exception to this is that if the default keys for a COMMAND are explicitly
# unbound then a subsequent binding may appear for it. A second exception
# is that multiple appending bindings may appear.
#
# Meta-key detection is sensitive to the ESCDELAY environment variable (see
# the manpage for ncurses(3)). In its absence, MOC resets the default
# delay to 25ms. If you need to emulate meta-key sequences using the ESC
# key, then you may need to set the value of ESCDELAY back to its ncurses
# default of 1000ms (but doing so will make the response to the ESC key
# sluggish).
#
# If MOC's keypresses are being filtered through some other program (in a
# GUI environment, for example) which also does meta-key detection, then
# MOC is at the mercy of the timings with which that program presents them.
#
# Default key configuration for MOC (and a list of all available commands):
# MOC control keys:
quit_client = q
quit = Q
# Menu and interface control keys:
go = ENTER l
menu_down = DOWN j
menu_up = UP k
menu_page_down = PAGE_DOWN
menu_page_up = PAGE_UP
menu_first_item = HOME
menu_last_item = END
search_menu = /
toggle_read_tags = f
toggle_show_time = ^t
toggle_show_format = ^f
toggle_menu = TAB
toggle_hidden_files = H
next_search = ^g ^n
show_lyrics = L
theme_menu = T
help = ?
refresh = ^r
reload = r
# Audio playing and positioning keys:
seek_forward = RIGHT
seek_backward = LEFT
seek_forward_fast = ]
seek_backward_fast = [
pause = p SPACE
stop = s
next = n
previous = b
toggle_shuffle = S
toggle_repeat = R
toggle_auto_next = X
toggle_mixer = x
go_url = o
# Volume control keys:
volume_down_1 = <
volume_up_1 = >
volume_down_5 = ,
volume_up_5 = .
volume_10 = M-1
volume_20 = M-2
volume_30 = M-3
volume_40 = M-4
volume_50 = M-5
volume_60 = M-6
volume_70 = M-7
volume_80 = M-8
volume_90 = M-9
# Directory navigation keys: defaults are Shift-number
# (i.e., 'shift 1' -> '!' -> 'Fastdir1').
go_to_a_directory = i
go_to_music_directory = m
go_to_fast_dir1 = !
go_to_fast_dir2 = @
go_to_fast_dir3 = #
go_to_fast_dir4 = $
go_to_fast_dir5 = %
go_to_fast_dir6 = ^
go_to_fast_dir7 = &
go_to_fast_dir8 = *
go_to_fast_dir9 = (
go_to_fast_dir10 = )
go_to_playing_file = G
go_up = h
# Playlist specific keys:
add_file = a
add_directory = A
plist_add_stream = ^u
delete_from_playlist = d
playlist_full_paths = P
save_playlist = V
remove_dead_entries = Y
clear_playlist = C
# Queue manipulation keys:
enqueue_file = z
clear_queue = Z
# User interaction control:
history_up = UP
history_down = DOWN
delete_to_start = ^u
delete_to_end = ^k
cancel = ^x ESCAPE
hide_message = M
# Softmixer specific keys:
toggle_softmixer = w
toggle_make_mono = J
# Equalizer specific keys:
toggle_equalizer = E
equalizer_refresh = e
# External commands:
mark_start = '
mark_end = "
exec_command1 = F1
exec_command2 = F2
exec_command3 = F3
exec_command4 = F4
exec_command5 = F5
exec_command6 = F6
exec_command7 = F7
exec_command8 = F8
exec_command9 = F9
exec_command10 = F10
# The following commands are available but not assigned to any keys by
# default:
#
# toggle_percent Switch on/off play progress bar time percentage
#

4
moc/.moc/softmixer Normal file
View File

@ -0,0 +1,4 @@
Active: 0
Amplification: 100
Value: 100
Mono: 0