Gotta Go Fast
Je suis sur que tout le monde a entendu parler de vim.
C'est normal, ça existe depuis 40 ans !Vim ?
Ça me dit quelquechose
1976
Dans la même année
Apple 1
- Assemblé à la main
- CPU à 1 Mhz
- 4 Kb de mémoire
- 40x24 characters
Vi
Mode visuel pour Ex
Vim (1991)
Clone de Vi
Ameiloré
Bien qu'il soit paru il y a plus de 20 ans il continue à être utilisé
Cela est du à l'énorme gain que L'utilisation de Vim aporte à un devTrends
Il ne faut pas voir vim comme un editeur de texte mais plutôt comme
une façon d'éditer du texte. Une façon d'éditer le texte qui change la vie à tout développeur. Je n'ai jamais connu un seul qui regrette d'avoir apris vim et qui ne s'en serve pas aujourd'huiPourquoi apprendre Vim
- Taper plus vite
- Taper moins
- Répéter facilement
- Programmer l'édition
- C'est amusant !
Au lieu de vouloir tout apprendre d'un coup il faut aller par bouts.
Apprendre d'abord à s'en servir comme nimporte quel autre éditeur.3 étapes
- Survivre dans Vim
- Apprendre à s'en servir
- Super-pouvoirs
Vim est par défaut en mode normal. Ce mode permet de faire des commandes
et bien plus de choses qu'on verra par la suite. Pour écrire du texte comme dans n'importe quel autre éditeur il faut entrer dans le mode insertionLes Modes
- Normal
- Insertion
- Visuel
L'insertion
i
L'insertion
a
Enregistrer
:w
Couper / Coller
dd/
p
Quitter
:q/
:q!
Undo / Redo
u/
^R
Undo / Redo
La souris
:set mouse=a
Tu ouvre vim et çaç fait un peu peur. Pas du tout envie de coder sur ça
Petit détail de vim. Il faut le configurer alors que n'a pas ouvert !
Prendre une config toute faite !
Ne pas oublier de
- Laisser les flèches activées (pour le moment) !
- Activer la souris →
:set mouse=a
On a un éditeur dont on ne sais pas se servir encore mais dans lequel on
peut travailler sans perdre beaucoup de productivité. Mais ce n'est bien sur pas suffisant !Tout movement réalisé en mode Normal en vim est appelé une motion. Presque
toutes le commandes sont utilisées avec des motions. Les motiosn bougent le curseur et permettent de se déplacer de façon plus rapide. En effet on utilise le clavier au lieu de la souris et on gagne du temps. Il existe plein de motions permettant de se déplacer là où on veut dans un mot, dans une ligne ou dans un fichier.Les Motions
Fichier
gg/
G
:
Mots
b/
w
Mots
e
← ↓ ↑ →
Utiliser
hjklautant que possible
Motion + Insertion
A
Motion + Insertion
I
Supprimer + Insérer
c+ motion
Couper
d+ motion
Couper
d+ Chiffre +
dou Chiffre +
dd
Répétition
.
Utiliser une CheatSheet
Mode Visuel
Visuel
v
Visuel par ligne
V
Couper en visuel
v+
d
Visuel par bloc
^V
Motion + Insertion
o/
O
Inside
Motion +
i
Around
Motion +
a
Inside / Around
Inside / Around
Motions++
f+ un caractère
Motions++
t+ un caractère
Motions++
F/
T
Recherches
/+
net
N
Recherches
*+
net
N
Les splits
:vs
→ Vertical Split:sp
→ Hortizontal Split^Ww
→ Changer de split^W
+[hjkl]
→ Choix du split
Super-pouvoirs
- Complétion
- Plugins
- Macros
- Démo
Completion
^N/
^P
Plugins
- Etendre les fonctionalités
- Rajouter la compatibilité avec des nouevaux langages
- Ecrits souvent en VimL
Must have Plugins
Macros
qa
Enregistre une macro dans a@a
Lance la macro enregistré dans a
Démo
Pour aller plus loin
-
:set spell
+:set spelllang=fr
- Manipuler les registres
- Seven habits of effective text editing
- Best of Vim
- Vim as an IDE