Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
cmus and vim
Search
Matthias Günther
February 19, 2017
Technology
0
870
cmus and vim
The benefits, usage and tricks with cmus + integration in vim.
Matthias Günther
February 19, 2017
Tweet
Share
More Decks by Matthias Günther
See All by Matthias Günther
copymatch_and_dadbod.pdf
wikimatze
0
640
devdocs - offline language programming support
wikimatze
0
410
Flog, a New Git Branch extension
wikimatze
0
620
Cmus
wikimatze
0
72
vimfest-2016-opening-keynote
wikimatze
0
67
Get productive with vimtex for LaTeX
wikimatze
0
680
Weechat - another IRC client
wikimatze
0
1k
Synchronize gitter and IRC
wikimatze
0
170
Vimfest
wikimatze
0
270
Other Decks in Technology
See All in Technology
オブザーバビリティプラットフォーム開発におけるオブザーバビリティとの向き合い / Hatena Engineer Seminar #34 オブザーバビリティの実現と運用編
arthur1
0
340
猫でもわかるQ_CLI(CDK開発編)+ちょっとだけKiro
kentapapa
0
3.4k
Rubyの国のPerlMonger
anatofuz
3
730
専門分化が進む分業下でもユーザーが本当に欲しかったものを追求するプロダクトマネジメント/Focus on real user needs despite deep specialization and division of labor
moriyuya
0
950
2時間で300+テーブルをデータ基盤に連携するためのAI活用 / FukuokaDataEngineer
sansan_randd
0
130
Vision Language Modelと自動運転AIの最前線_20250730
yuyamaguchi
3
1.1k
LTに影響を受けてテンプレリポジトリを作った話
hol1kgmg
0
260
Lambda management with ecspresso and Terraform
ijin
2
120
AI コードレビューが面倒すぎるのでテスト駆動開発で解決しようとして読んだら、根本的に俺の勘違いだった
mutsumix
0
160
Segment Anything Modelの最新動向:SAM2とその発展系
tenten0727
0
220
解消したはずが…技術と人間のエラーが交錯する恐怖体験
lamaglama39
0
190
隙間時間で爆速開発! Claude Code × Vibe Coding で作るマニュアル自動生成サービス
akitomonam
3
250
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.4k
For a Future-Friendly Web
brad_frost
179
9.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Bash Introduction
62gerente
614
210k
Building Applications with DynamoDB
mza
95
6.5k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Music & Morning Musume
bryan
46
6.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Transcript
cmus and vim Matthias Günther
cmus (1)
Benefits customizable instant startup, even with thousands of tracks easy
to use directory browser
Browse file system and add tracks 5 … go into
the browse mode a … add selection to library D … remove selection from library
Artist view 1 … go into the mode <space> …
to see albums
Library view 2 … library view (sorted)
Play commands (2)
Play commands I b … plays next track z …
plays previous c … pause, continue x … restart track p/P … change order of entries next/previous
Play commands II +|- … increase, decrease sound C-f|C-b …
page-down,page- up C-r … repeat current track
Play commands statuschanges I m … cycle through play modus
(all, album artist) M … switch modes without interrupting the currently- playing song r … repeat the playlist when ended (R in statusline)
Play commands statuschanges II s … shuffle (S in statusline)
C … toggle continue playing the next song (C in statusline)
Fill queue and playlist y … add the selected song
to playlist (3) e … mark the songs to the queue (4) (FIFO)
Useful commands (3)
Useful commands I :add ~/music … same as ‘a’ :colorscheme
… will change the colorscheme :clear … will clear the current list
Useful commands II :save ~/music/ playlist.lst :load ~/music/ playlist.lst :unmark
… clean the marked songs q … quit cmus
Useful commands III :invert … select all tracks which are
not marked :prev-view … toggle the last two views
config cmus in ~/.config/cmus rc … configuration autosave …
My config unbind -f common E bind common E run
easytag {} unbind -f common + bind common + vol +5% unbind -f common - bind common - vol -5% # Vim like shortcuts to jump to the next/prev section unbind -f common ^N bind common ^N player-next unbind -f common ^P bind common ^P player-prev
Get the cover ALBUM_PATH=/$(cmus-remote -Q | grep file | cut
-d'/' --complement -s -f1 | rev | \ cut -d'/' --complement -s -f1 | rev | sed -e 's/\s/\\ /g' | \ sed -e 's/(/\\(/g' | sed -e 's/)/\\)/g')/cover.jpg ALBUM_NAME=$(cmus-remote -Q | grep -w 'tag album' | cut -d'~' --complement -f1 | \ cut -d' ' --complement -s -f1 | sed -e 's/\s/-/g') eval notify-send -i $ALBUM_PATH $ALBUM_NAME And the shortcut unbind -f common I bind common I shell bash ~/.config/cmus/album.sh
vim-cmus (4)
vim-cmus I :CmusCurrent … shows the information of current song
:CmusPrevious … plays previous song :CmusNext … plays next song
vim-cmus II :CmusPause … stop playing the current song :CmusPlay
… continue playing song :CmusStop … stop playing and go to the beginning
Thank you (5)
Images I (1): https://twitter.com/ gamesyouloved/ status/81790750591755468 8 (2): https://twitter.com/ realretroism/
status/81755907377634508 8
Images II (3): https://twitter.com/ gamesyouloved/ status/81679936420721869 4 (4): https://twitter.com/ gamesyouloved/
status/81637678552917606 5
Images III (5): https://twitter.com/ gamesyouloved/ status/81622573839122022 4