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
71
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
150
Other Decks in Programming
See All in Programming
CSC509 Lecture 01
javiergs
PRO
1
430
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
iOSアプリの信頼性を向上させる取り組み/ios-app-improve-reliability
shino8rayu9
0
150
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
1k
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
110
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
140
止められない医療アプリ、そっと Swift 6 へ
medley
1
120
ИИ-Агенты в каждый дом – Алексей Порядин, PythoNN
sobolevn
0
150
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
130
CSC509 Lecture 04
javiergs
PRO
0
300
プログラマのための作曲入門
cheebow
0
540
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
920
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
20k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
Writing Fast Ruby
sferik
629
62k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
What's in a price? How to price your products and services
michaelherold
246
12k
GitHub's CSS Performance
jonrohan
1032
460k
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How STYLIGHT went responsive
nonsquared
100
5.8k
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