When comparing cmus vs The Silver Searcher (Ag), the Slant community recommends The Silver Searcher (Ag) for most people. In the question“What are the best shell powertools?” The Silver Searcher (Ag) is ranked 4th while cmus is ranked 8th. The most important reason people chose The Silver Searcher (Ag) is:
It is written in C. It is up to 10 times faster than ack.
Ranked in these QuestionsQuestion Ranking
Pros
Pro CLI only
CLI makes Cmus clean, fast and minimalist.
Pro Does not use a lot of memory
Cmus only uses about 15 MB. This is a very small and light media player, which is ideal for people with low end hardware.
Pro Good library structure
A lot of music players may act more like playlist viewers rather than a music library. cmus sorts by Artist > Year > Album.
Pro Works very well with tags from MusicBrainz database
cmus will factor in additional data from the MusicBrainz database while sorting. For example sort orders for arist or album, and the original release date for an album (in the case of a re-release).
Pro Fast
A lot of music players will be slow when starting if they have huge libraries, but CMus starts fast no matter the library size.
Pro Customizable keybindings for a personal experience
You can add keybindings for just about anything - including seeking (forward/backwards 1 minute, for example) which isn't supported by all music players.
Pro No mouse required
cmus does not require a mouse as it runs in the terminal
Pro Open source extensions and scripts
On GitHub you can find the official WIKI where there are a dozen extensions and scripts from color themes to a lyrics viewer and the ability to play YouTube songs.
Pro Really fast
It is written in C. It is up to 10 times faster than ack.
Pro Simple syntax
Ack-compatible.
Pro Ignores files in .gitignore by default
It ignores file patterns from your .gitignore
, .hgignore
and .ignore
. This can be a bit buggy though.
Pro Supports PCRE RegExp
Supports RegEx like look-ahead/behind (only fixed length lookbehind however).
Pro No need to manage another config file or learn a new config syntax
Everything is managed with command line args, meaning you can store commonly used options through .bashrc
aliases, bash scripts, and/or autocompletion. There is no config file format to learn or extra dotfiles to manage.
Cons
Con No album art
cmus does not display album art
Con CLI only
No graphical interface is available for cmus. Everything is done through CLI (command line interface).
Con Difficult to use
Cmus uses odd keyboard shortcuts such as "C" to pause, "E" to add songs to queue, and "4" to edit the queue.
Con Can't play wavepack files
Con You have to remember commonly used options and add them as flags everytime
You are not able to define options in a config file as there is none. (You have to use a shell alias or wrapper script to get your default options.)
Con Cannot add custom file types
All file types ag is able to search for are baked into the executable. There is no way to add new ones neither via command line nor via (the not existing) config file. The only way is a pull request on github and waiting for a new release.