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
Vim introduction
Search
Dmitrijs Vrublevskis
July 12, 2014
Programming
1
100
Vim introduction
https://plus.google.com/events/cv8rtf625f5hc8jn6qmhpsb2nho
Dmitrijs Vrublevskis
July 12, 2014
Tweet
Share
More Decks by Dmitrijs Vrublevskis
See All by Dmitrijs Vrublevskis
Cypher Editor
fylmtm
0
140
Cypher in JetBrains IDE
fylmtm
0
190
Adopting Neo4j @ Enterprise scale
fylmtm
0
68
League of Graphs \w Neo4j
fylmtm
0
1.5k
Performance & Stability testing \w Gatling
fylmtm
0
230
Neo4j Magic Adventures
fylmtm
1
180
Google I/O 2014 - Web updates
fylmtm
0
140
Other Decks in Programming
See All in Programming
PipeCDのプラグイン化で目指すところ
warashi
1
260
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
510
LINEヤフー データグループ紹介
lycorp_recruit_jp
0
2.2k
AIプログラマーDevinは PHPerの夢を見るか?
shinyasaita
1
200
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
50
33k
なぜ「共通化」を考え、失敗を繰り返すのか
rinchoku
1
640
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
2
620
Railsアプリケーションと パフォーマンスチューニング ー 秒間5万リクエストの モバイルオーダーシステムを支える事例 ー Rubyセミナー 大阪
falcon8823
5
1.1k
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
140
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
420
XP, Testing and ninja testing
m_seki
3
230
初学者でも今すぐできる、Claude Codeの生産性を10倍上げるTips
s4yuba
16
10k
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
680
Bash Introduction
62gerente
614
210k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Building Applications with DynamoDB
mza
95
6.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Building a Scalable Design System with Sketch
lauravandoore
462
33k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Building Adaptive Systems
keathley
43
2.6k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Transcript
Vim introduction @Dmitrijs Vrublevskis
About me • Developer @ “Transact PRO” • Unhappy with
PHP • In love with Ruby • Believe in Linux
Backup plan https://www.codebox.io
Intro • Programmer's text editor • Released publicly in 1991
• Based on the vi editor • Vim is a tool, the use of which must be learned. • Shortcuts & no-mouse
My use cases • Ruby (Rails) development (sometimes) • One-time
source editing (bugfixes, types and etc) • Editing via SSH (nginx, apache, hosts and etc) • Diff (rarely) • Development (Intellij IDEA plugin)
$ vim file.txt § - command sequences for pro
<esc> <esc> <esc> <esc> <ctrl-c> <ctrl-c> <ctrl-c> <ctrl-c>
Modes • Insert • Normal ! • Visual • Command
Modes[Insert] 1. Insert A. Cursor - <i> B. Append -
<a> C. On new line - <o> 2. Type text 3. Exit - <ctrl-c>
Modes[Normal] • Left - <h> - <left_arrow> • Right -
<l> - <right_arrow> • Down - <j> - <down_arrow> • Up - <k> - <up_arrow> ! • § 5l • § 2j
Modes[Normal] • Word - <w> • End word - <e>
• Back word - <b> • Find - <f><any_letter_to_find> ! • § F2e • § t”
Modes[Normal] • Delete under cursor - <x> • Replace -
<r><letter> • Delete - <d><motion> • Change - <c><motion> • Motion - <w>|<e>|<h> … ! • § d5k • § ca”
Modes[Visual] • Visual - <v> • Line visual - <shift-v>
• Block visual - <ctrl-v>
Modes[Command] • Write - <:><w> • Quit - <:><q> •
Write and quit - <:><w><q> • Write and quit - <:><x> • Quit without save - <:><q><!> • Search - </><pattern><enter> • Next / Prev - <n> / <N>
Useful • § <c><i><“> - Delete all in “” and
put in insert mode. • § <d><t><)> - Delete all till first ‘)’ • § <i><text><.> - Write some text and repeat • § <F><(> - Move cursor to first ‘(‘, backwards
Learn vim • http://www.viemu.com/ a_vi_vim_graphical_cheat_sheet_tutorial.html • http://vim-adventures.com/ • https://www.shortcutfoo.com
Vim projects • http://neovim.org/ - New next generation • https://github.com/gmarik/Vundle.vim
- Plugin manager • https://github.com/Valloric/YouCompleteMe - Autocompletion • https://github.com/FylmTM/dotfiles/blob/master/ vim/vimrc - Mine ‘.vimrc’
None