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
900
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
650
devdocs - offline language programming support
wikimatze
0
410
Flog, a New Git Branch extension
wikimatze
0
640
Cmus
wikimatze
0
76
vimfest-2016-opening-keynote
wikimatze
0
71
Get productive with vimtex for LaTeX
wikimatze
0
690
Weechat - another IRC client
wikimatze
0
1.1k
Synchronize gitter and IRC
wikimatze
0
180
Vimfest
wikimatze
0
280
Other Decks in Technology
See All in Technology
開発者が知っておきたい複雑さの正体/where-the-complexity-comes-from
hanhan1978
6
2.4k
機密情報の漏洩を防げ! Webフロントエンド開発で意識すべき漏洩パターンとその対策
mizdra
PRO
2
300
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
510
開発者から見たLLMの進化 202511
ny7760
1
170
よくわからない人向けの IAM Identity Center とちょっとした落とし穴
kazzpapa3
2
710
内部品質・フロー効率・コミュニケーションコストを悪化させ現場を苦しめかねない16の組織設計アンチパターン[超簡易版] / 16 Organization Design Anti-Patterns for Software Development
mtx2s
2
190
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
1
540
Digitization部 紹介資料
sansan33
PRO
1
5.9k
QAセントラル組織が運営する自動テストプラットフォームの課題と現状
lycorptech_jp
PRO
0
350
エンジニアにとってコードと並んで重要な「データ」のお話 - データが動くとコードが見える:関数型=データフロー入門
ismk
0
450
Dart and Flutter MCP serverで実現する AI駆動E2Eテスト整備と自動操作
yukisakai1225
0
300
ubuntu-latest から ubuntu-slim へ移行しよう!コスト削減うれしい~!
asumikam
0
460
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Building an army of robots
kneath
306
46k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
116
20k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Unsuck your backbone
ammeep
671
58k
Thoughts on Productivity
jonyablonski
73
4.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
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