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
ferdev
March 29, 2012
Programming
8
600
Conquer the world with Vim & Tmux!
ferdev
March 29, 2012
Tweet
Share
Other Decks in Programming
See All in Programming
What's new in Spring Modulith?
olivergierke
1
110
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
130
Breaking Up with Big ViewModels — Without Breaking Your Architecture (droidcon Berlin 2025)
steliosf
PRO
1
350
iOS 17で追加されたSubscriptionStoreView を利用して5分でサブスク実装チャレンジ
natmark
0
650
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
960
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
200
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
200
Building, Deploying, and Monitoring Ruby Web Applications with Falcon (Kaigi on Rails 2025)
ioquatix
3
1.2k
Things You Thought You Didn’t Need To Care About That Have a Big Impact On Your Job
hollycummins
0
190
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.4k
CSC509 Lecture 03
javiergs
PRO
0
330
CSC509 Lecture 06
javiergs
PRO
0
250
Featured
See All Featured
KATA
mclloyd
32
15k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
The World Runs on Bad Software
bkeepers
PRO
71
11k
A Tale of Four Properties
chriscoyier
160
23k
The Straight Up "How To Draw Better" Workshop
denniskardys
237
140k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
51k
Balancing Empowerment & Direction
lara
4
680
Become a Pro
speakerdeck
PRO
29
5.5k
GraphQLとの向き合い方2022年版
quramy
49
14k
Thoughts on Productivity
jonyablonski
70
4.9k
Unsuck your backbone
ammeep
671
58k
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