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
910
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
660
devdocs - offline language programming support
wikimatze
0
420
Flog, a New Git Branch extension
wikimatze
0
660
Cmus
wikimatze
0
81
vimfest-2016-opening-keynote
wikimatze
0
73
Get productive with vimtex for LaTeX
wikimatze
0
700
Weechat - another IRC client
wikimatze
0
1.1k
Synchronize gitter and IRC
wikimatze
0
180
Vimfest
wikimatze
0
290
Other Decks in Technology
See All in Technology
純粋なイミュータブルモデルを設計してからイベントソーシングと組み合わせるDeciderの実践方法の紹介 /Introducing Decider Pattern with Event Sourcing
tomohisa
1
1.1k
新米スクラムマスターの4ヶ月 -「スクラムイベントを回しているのに手応えがない」からの脱出 / Four Months as a New Scrum Master — When Scrum Events Were Running, but Nothing Felt Right
owata
0
150
歴史から学ぶ、Goのメモリ管理基礎
logica0419
14
2.8k
First-Principles-of-Scrum
hiranabe
4
2.2k
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
380
Kaggleコンペティション「MABe Challenge - Social Action Recognition in Mice」振り返り
yu4u
1
470
技術選定、下から見るか?横から見るか?
masakiokuda
0
190
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
「駆動」って言葉、なんかカッコイイ_Mitz
comucal
PRO
0
150
WebDriver BiDi 2025年のふりかえり
yotahada3
1
120
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.6k
GitHub Copilot CLI 現状確認会議
torumakabe
1
120
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Un-Boring Meetings
codingconduct
0
180
Designing for Performance
lara
610
70k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
Ruling the World: When Life Gets Gamed
codingconduct
0
120
Visualization
eitanlees
150
16k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
250
Deep Space Network (abreviated)
tonyrice
0
34
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.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