l'éditeur vi
pourquoi vi comme éditeur ?
-  parce qu'il existe de base sur toutes les machines Unix/linux 
-  parce qu'en single user, c'est le seul éditeur disponible 
-  parce qu'il marche même sous dos avec une très petite mémoire 
-  parce que l'on peut se débrouiller pour commencer avec 10 commandes 
en fait je recommande vim (Vi Improved) plutôt que le vi de base pour x raisons :
-  colorisation syntaxique 
-  langage de script 
-  completion 
-  … 
remarque : emacs est peut-être (troll !) plus puissant, mais aussi beaucoup plus lourd
 
installation
vim est distribue dans la distribution Redhat en 4 packages
-  vim-common : indispensable 
-  vim-minimal : indispensable (le vi de base) 
-  vim-enhanced : les fonctionnalités intéressantes 
-  vim-X11 : la version X (gvim) 
 
les fichiers dos
pour passer un fichier dos (crlf) au format unix, 3 solutions :
-  il suffit de taper dans vi :set fileformat=unix, puis de sauvegarder 
-  supprimer les ^M de fin de ligne avec la commannde :%s!^V^M$!! 
-  utiliser le logiciel dos2unix (package dos2unix) 
 
sélection d'un bloc
-  de lignes complétes : avec des marques (commandes m) 
-  irrégulier : commande v 
 
commandes répétitives
2 solutions
-  les macros : commande :map 
-  enregistrer une séquence (commande q0) puis la rejouer (commande @0) 
 
complétion
en mode insertion, CTRL P fait des propositions à partir du texte déjà saisi
 
travail sur plusieurs fichiers
-  un par un : on change de fichier par :n (:N pour revenir en arrière) 
-  plusieurs a la fois: CTRL W s (split) pour découper l'écran, CTRL W w pour changer 
aide :help windows
 
importer le résultat d'une commande
les buffers
pour utiliser un buffer : (ici le buffer a) avec les commandes yYpP
 “a cmde
 
pour les programmeurs, permet de se déplacer de fonction en fonction sans avoir a connaître le fichier et la ligne ou elles sont. 
 aide :help tags
 
undo/redo
folder
a partir de la version 6, cela permet de “compresser” des blocs de code
aide :help folding
 
indentation
pour re-indenter proprement un texte :
 
vimdiff
vim -d ou vimdiff est un mode pour montrer les différences entre fichiers et permet les merges (:help diff) 
 2 commandes pour transférer les modifs d'un fichier sur l'autre
 
les fichiers binaires
pour éditer les fichiers binaires (en hexa) : plusieurs solutions
- 
-  fb- : trés puissant en ligne de commande 
 
 
astuces
-  effacer les 4 premiers caractères d'un fichier : :%s!^….!! 
-  basculer de less vers vi : commande v 
-  afficher les tabulations : set list 
 
plugin
vim peut être amélioré/étendu a l'aide de plugins (il y en a des centaines sur vim.org), qui peuvent être installés :
astuce : pour prendre en compte la documentation locale : “vim -c “helptags ~/.vim/doc” -c “q””
 
développer
des conseils pour faire du perl avec vim
 
liens
quelques sites sur vi:
- 
- 
-  le site de  Luc Hermitte-  : par un Toulousain, en anglais, pour les pro 
 
articles
-  linux magazine 14, p24 
-  linux magazine 25, p92 
-  linux magazine 26, p96 
 — eric gerbier 2009/09/15 13:53