Cmus Cheat Sheet
Summary
Comprehensive cheat sheet for using cmus
, the console-based music player. Essential commands for navigation, playback, filtering, volume control, and playlist management.
Introduction #
Cmus (C Music Player) is a lightweight, fast, and feature-rich console-based music player for Unix-like operating systems. Cmus supports various audio formats, playlists, and advanced playback controls.
I have been using cmus for more than 15 years and still have to look up some commands every now and then, here is my cheat sheet:
Navigation #
:open <path>
: Opens a directory or file.- Arrow keys or
j
/k
: Navigate through the interface. Tab
: Switch between panes.space
: Expand selection.Enter
: Play selected song.
Views #
Switch between different views in Cmus to focus on specific tasks:
- Library View: Click 0 or
:view 0
- Playlist View: Click
1
or:view 1
- Library List View: Click
2
or:view 2
- Playlist View: Click
3
or:view 3
- Play Queue View: Click
4
or:view 4
- File Browser View: Click
5
or:view 5
- Library Filters View: Click
6
or:view 6
- Settings View: Click
7
or:view 7
Playback #
p
: Pause/resume playback.n
: Play the next track.b
: Play the previous track.c
: Pause playback.x
: Resume playback/ play track from start.z
: Play previous track.v
: Stop playback.B
: Start playing next album.Z
: Start playing previous album.,
: Seek in track -1m.
: Seek in track +1mh
: Seek in track -5sl
: Seek in track +5sleft
: Seek in track -5sright
: Seek in track +5s
Volume Control #
+
: Raise volume +10%-
: Lower volume -10%
Search #
Search commands are basically Vim commands:
/
: Start a search.n
: Go to next occurrence of search term.N
: Go to previous occurrence of search term.:
: Enter command mode for advanced operations.
Filtering #
Cmus provides powerful filtering capabilities to manage large music libraries. Use the :filter
command to narrow down the visible tracks.:
These commands may only work in certain views.
Filter Tracks by Criteria:
:filter artist=Radiohead
This displays only tracks where the artist is “Radiohead.”
- Combine Multiple Filters:
:filter artist="Radiohead" & album="OK Computer"
Shows only tracks by “Radiohead” from the album “OK Computer.”
:filter genre="Hip Hop" & date=2024
Show only tracks from the “Hip Hop” genre from the year “2024”.
- Clear Filters:
:filter clear
- Filter artists/albums/titles
:live-filter sleepwalking
Shows all artists/albums/titles containing “sleepwalking”.
Managing Playlists #
- Save the Current Playlist:
:save ~/my_playlist.m3u
Saves the current playlist to a file.
- Load a Playlist:
:load ~/my_playlist.m3u
- Add Files to the Playlist:
:add ~/Music/album/
- Shuffle Playlist:
:shuffle
Settings #
Synopsis:
:set <option>=<value>
You can save preferences as permanent settings in a configuration file ~/.config/cmus/rc
.
In that file, save settings like that:
…
set output_plugin=alsa
set replaygain=0
set softvol=true
set auto_reshuffle=true
…
ReplayGain #
ReplayGain automatically adjusts the playback volume of audio tracks based on their loudness metadata. This helps maintain consistent volume levels across different tracks or albums, avoiding sudden volume changes during playback.
replaygain=0
(Disabled):
ReplayGain is turned off (default setting). Tracks play at their original recorded volume.replaygain=1
(Track Mode):
Volume is adjusted based on each track’s loudness. This mode is ideal for shuffle play since it keeps all tracks at a consistent volume, regardless of the album they belong to.replaygain=2
(Album Mode):
Volume is adjusted based on the average loudness of an entire album. This is useful for listening to full albums, preserving track-to-track volume dynamics as intended by the album’s producer.
To can check the current configuration by going to the settings view by pressing 7
. There, search for replaygain
, e.g. /replaygain
.
Audio Output #
Cmus supports various audio output plugins (output_plugin
) depending on your system setup:
alsa
: Advanced Linux Sound Architecture (common on Linux).pulse
: PulseAudio (used in many modern Linux distributions).jack
: JACK Audio Connection Kit (for professional audio production).ao
: Libao, a cross-platform audio output library.oss
: OSS (Open Sound System) backend (used when ALSA, PulseAudio, or other modern backends are not available).
To can check the current configuration by going to the settings view by pressing 7
. There, search for output_plugin
, e.g. /output_plugin
.
Auto Reshuffle #
The auto_reshuffle
setting in Cmus controls whether the current playlist is automatically reshuffled when all tracks have been played.
auto_reshuffle=true
:
When enabled, Cmus reshuffles the playlist automatically after playing all tracks. This ensures continuous playback with a fresh random order.auto_reshuffle=false
(default):
When disabled, Cmus stops playing after all tracks have been played, even if shuffle mode is active.
To can check the current configuration by going to the settings view by pressing 7
. There, search for auto_reshuffle
, e.g. /auto_reshuffle
.
Shuffle #
The shuffle
setting enables (true
) or disables (false
) random track playback in the current playlist or music library.
shuffle=true
:
When playing a playlist, Cmus selects tracks randomly, creating a varied listening experience.With shuffle=false
(default):
Tracks are played in the order they appear in the playlist or library.
If shuffle=true
and auto_reshuffle=true
, Cmus reshuffles the playlist when it reaches the end, ensuring continuous random playback.
To can check the current configuration by going to the settings view by pressing 7
. There, search for shuffle
, e.g. /shuffle
.
Softvol #
By configuring softvol
you can manage playback volume even when hardware volume control is not available or does not work as expected.
softvol=true
:
May slightly reduce audio quality due to the nature of software volume scaling (depending on your output plugin and system configuration).softvol=false
:
Cmus attempts to adjust the volume using the system’s audio backend if supported.
To can check the current configuration by going to the settings view by pressing 7
. There, search for softvol
, e.g. /softvol
.
Cmus Tutorial #
The Cmus tutorial is a manual page that provides a step-by-step guide for using Cmus. It offers a clear and structured learning path for mastering Cmus, from basic playback to advanced customization. It is a great reference if you are new to Cmus or need a refresher on less frequently used features.
To access the Cmus tutorial, simply run the following command in your terminal:
man cmus-tutorial
This will display the full tutorial directly in your terminal.
Further readings #
Sources and recommended, further resources on the topic:
License
License: Cmus Cheat Sheet by Jonas Jared Jacek is licensed under CC BY-SA 4.0.
This license requires that reusers give credit to the creator. It allows reusers to distribute, remix, adapt, and build upon the material in any medium or format, for noncommercial purposes only. To give credit, provide a link back to the original source, the author, and the license e.g. like this:
<p xmlns:cc="http://creativecommons.org/ns#" xmlns:dct="http://purl.org/dc/terms/"><a property="dct:title" rel="cc:attributionURL" href="https://www.ditig.com/publications/cmus-cheat-sheet">Cmus Cheat Sheet</a> by <a rel="cc:attributionURL dct:creator" property="cc:attributionName" href="https://www.j15k.com/">Jonas Jared Jacek</a> is licensed under <a href="https://creativecommons.org/licenses/by-sa/4.0/" target="_blank" rel="license noopener noreferrer">CC BY-SA 4.0</a>.</p>
For more information see the DITig legal page.