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
Conquer the world with Vim & Tmux!
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
ferdev
March 29, 2012
Programming
600
8
Share
Conquer the world with Vim & Tmux!
ferdev
March 29, 2012
Other Decks in Programming
See All in Programming
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
290
感情を設計する
ichimichi
5
1.3k
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
Vibe하게 만드는 Flutter GenUI App With ADK , 박제창, BWAI Incheon 2026
itsmedreamwalker
0
540
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
170
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
230
Swift Concurrency Type System
inamiy
0
410
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
210
Coding as Prompting Since 2025
ragingwind
0
770
Feature Toggle は捨てやすく使おう
gennei
0
500
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.3k
見せてもらおうか、 OpenSearchの性能とやらを!
shunta27
1
180
Featured
See All Featured
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
2
690
The SEO identity crisis: Don't let AI make you average
varn
0
440
Automating Front-end Workflow
addyosmani
1370
200k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
500
Site-Speed That Sticks
csswizardry
13
1.1k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Balancing Empowerment & Direction
lara
5
1k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
110
Side Projects
sachag
455
43k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
Designing Experiences People Love
moore
143
24k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
130
Transcript
CONQUER the world with Vim & Tmux! @ferdev
HI! I’m @ferdev and i work at vizzuality
1. Why Vim? 2. The Path to Vim. 3. Using
Vim. 4. Mastering Vim. 5. Tmux
VIM
1. Why Vim?
Textmate, Eclipse, NetBeans, Visual Studio...
Reasons that move me to vim. - Continuous Textmate crashes.
- Bored of traditional editors. - Wanted to try something new.
PROs: - Fun. - Speed! - Comfort. - Mobility.
CONS: - Nothing!
2. The path to vim.
Vim isn't hard. Two weeks are enough.
None
First step: $ vimtutor
SECOND STeP: CONFIGURATION
Don't use janus - Complex - Opinionated - Makes you
lazy
BASIC CONFIG: - http://bit.ly/uxu5h9 - http://bit.ly/bFYbdU - http://bit.ly/aLfi5n - http://bit.ly/pGKwOU
Third step: - Practice! - Vim Golf - http://vimgolf.com/
3. USING vim.
Editing modes
InSERT some keys: - i (insert) - a (append) -
c (change) - <esc>, jk (exit mode)
Normal some keys: - j, k (up, down) - w,
e, b (words) - f (find) - t (until)
selection some keys: - v (normal) - V (lines) -
<ctrl>-v (columns) - <esc>, jk (exit mode)
Now, combine them!
example 1 vii: - v (visual selection) - i (inside
the same) - i (indentation level)
example 2 va‘: - v (visual selection) - a (around)
- ‘ (the single quotes)
example 3 2dt(: - 2 (2 times) - d (delete)
- t (until) - ( (the first parentheses)
Repeating commands - “.” is your friend :) - digits
before commands - Macros
COPY & PASTE - y (yank) - p (paste) -
c (change - yank) - d (deletes - yank) - x (delete char - yank) - http://bit.ly/rPLnDw
Panes & tabs - <leader>v (vertical pane) - <leader>h (horizontal
pane) - <leader>n (new tab) - <leader>0-9 (go to tab) - :tabc (close tab) - :tabo (close all tabs but this)
Find & replace - Regexp -:%s/pattern/replacement/
4. Mastering vim.
Know your config file
PLUGINS - zoomin - ack - ctrlp - vim-surround -
tslime (send commands to tmux)
VIM <3 git submodules Adding a new plugin: - $
git submodule add plugin_git_repo_url bundle/ plugin-folder Updating all plugins: - $ git submodule foreach git pull
Macros
TMUX
What is it?
It makes sense if you use the terminal *a lot*
pair programming
Panes, windows and sessions https://github.com/aziz/tmuxinator
warning for rails developers using tmuxinator: each rails server must
be configured to use different ports
Layouts
References https://github.com/Ferdev/vim https://github.com/Ferdev/dotfiles
VIM http://www.vim.org/ http://www.vimpusher.com/ http://bytefluent.com/vivify/ http://vimcasts.org/ https://github.com/cldwalker/vimdb http://learnvimscriptthehardway.stevelosh.com/ http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/ http://robots.thoughtbot.com/post/13164810557/the-vim-learning-curve-is-a-myth
Tmux http://tmux.sourceforge.net/ http://robots.thoughtbot.com/post/19398560514/how-to-copy-and-paste-with-tmux-on- mac-os-x http://lucapette.com/rails/tmux-for-rails-developers/ via @eparreno