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
Follow my leader
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
nelstrom
January 29, 2014
Technology
2.3k
10
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Follow my leader
nelstrom
January 29, 2014
More Decks by nelstrom
See All by nelstrom
Modelling State Machines with Ragel
nelstrom
11
25k
Vimprint - A Vim Keystroke Parser
nelstrom
1
1.2k
When & why you should stay out of visual mode
nelstrom
1
3.8k
Vim - Precision editing at the speed of thought
nelstrom
29
6k
This is the problem
nelstrom
1
290
Progressive enhancement - a barrier to progress?
nelstrom
1
660
Other Decks in Technology
See All in Technology
個人OSSが、机の上から世界に広がるまでの話
shinyasaita
1
360
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
190
名古屋の市バスGTFS-JPデータ×スガキヤ 最寄りバス停検索をAmazon ElastiCache Serverless for Valkeyで最適化する
usanchuu
1
450
モバイルアプリ開発概論2026
recruitengineers
PRO
3
490
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
19k
『三匹の子ぶた』から学ぶネットワークセキュリティの昔と今 / Network Security: Then and Now Through the Lens of The Three Little Pigs
nttcom
1
1.8k
システム思考で問題に対処する
yussak
0
190
JavaScript 研修 (2026)
recruitengineers
PRO
1
450
MIRU 2026 チュートリアル
keisuke198619
0
860
Digitization部 紹介資料
sansan33
PRO
2
7.7k
Data Hubグループ 紹介資料
sansan33
PRO
0
3.1k
GitHub CopilotのFinOps- AI CreditのObservabilityと価値を生むためのエージェント設計
yuriemori
0
140
Featured
See All Featured
The Language of Interfaces
destraynor
162
27k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.6k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
400
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
The Cult of Friendly URLs
andyhume
79
7k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
230
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Building an army of robots
kneath
306
46k
Writing Fast Ruby
sferik
630
63k
ラッコキーワード サービス紹介資料
rakko
1
4.3M
Transcript
28th January, 2014 Drew Neil @nelstrom FOLLOW my <LEADER>
http://www.viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
Using <leader> let mapleader = "," nnoremap <leader><space> :noh<cr>
https://github.com/AndrewRadev/splitjoin.vim/issues/14
VIM’S GRAMMAR and its blind-spots
operator operator d d y y > > delete line
yank line indent line
operator motion d w y $ > G delete word
yank from cursor to EOL indent to end of file
operator non-motion d p d o same as :diffput same
as :diffget <op> <cmd> AVAILABLE!
operator non-motion y s surround.vim c o unimpaired.vim c x
exchange.vim
operator-1 operator-2 d c c d <op1> <op2> <nop> <nop>
AVAILABLE!
TEXT-OBJECTS have vacancies
{i,a} object i “ a ) i t inside double-quotes
around parentheses inside XML tag
None
{i,a} object i <alpha> a <alpha> AVAILABLE! AVAILABLE!
{i,a} object {i,a} l {i,a} e {i,a} r vim-textobj-line vim-textobj-entire
vim-textobj-rubyblock
https://github.com/kana/vim-textobj-user/wiki
NAMESPACED MAPS have vacancies
None
namespace command g w z a reformat selected text toggle
fold open/closed {[,]} c jump to prev/next diff
None
namespace command g c {[,]} o commentary.vim unimpaired.vim {[,]} {u,x,y}
unimpaired.vim
USELESS COMMANDS are useless
None
SUPERCHARGE built-in commands
namespace command g f rails.vim
OVERRIDE COMMANDS that are meant to be overridden
executes `formatprg` = {motion} executes `equalprg` gq {motion}
None
Using formatprg let &formatprg=“pandoc -f html -t markdown” executes `formatprg`,
filtering text through pandoc gq {motion}
28th January, 2014 Drew Neil @nelstrom FOLLOW my <LEADER>