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
610
8
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Conquer the world with Vim & Tmux!
ferdev
March 29, 2012
Other Decks in Programming
See All in Programming
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
200
Spec Driven Development | AI Summit Lisbon
danielsogl
PRO
0
200
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
270
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
200
AIで効率化できた業務・日常
ochtum
0
140
OSもどきOS
arkw
0
570
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
14
5.5k
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
290
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
The NotImplementedError Problem in Ruby
koic
1
840
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
210
net-httpのHTTP/2対応について
naruse
0
500
Featured
See All Featured
Building the Perfect Custom Keyboard
takai
2
800
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
590
ラッコキーワード サービス紹介資料
rakko
1
3.7M
Marketing to machines
jonoalderson
1
5.5k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
170
Amusing Abliteration
ianozsvald
1
210
For a Future-Friendly Web
brad_frost
183
10k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1.1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Balancing Empowerment & Direction
lara
6
1.2k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
160
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