Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:editeurs:vim:tableau [21/02/2014 06:04] smolski [Commande] |
doc:editeurs:vim:tableau [12/11/2019 07:47] smolski [Commande] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== vim Tableau ====== | ====== vim Tableau ====== | ||
- | |||
- | (//testé // - **smolski** 17/10/2012) Le retour sur le forum est ici : | ||
- | * [[http://debian-facile.org/viewtopic.php?id=6050 | Lien vers le forum concernant ce tuto]] N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs ! | ||
* Objet : vim en tableaux | * Objet : vim en tableaux | ||
- | * Niveau requis : DÉBUTANT | + | * Niveau requis :{{tag>débutant avisé}} |
* Commentaires : // Tableaux des commande d'édition vim en console. // | * Commentaires : // Tableaux des commande d'édition vim en console. // | ||
- | * Débutant, à savoir : | + | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) |
- | [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | + | * Suivi : |
+ | * Création par [[user>martin_mtl]] le 11/12/2012 | ||
+ | * Testé par [[user>smolski]] le 17/10/2012 | ||
+ | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=6050 |C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
Ligne 14: | Ligne 14: | ||
===== Commande ===== | ===== Commande ===== | ||
- | - On accède au mode commande en appuyant sur « Echap » | + | - On accède au mode commande en appuyant sur <key>Echap</key> |
- Ces commandes peuvent être répétées. \\ Par exemple : <code>5Dd supprime 5 lignes.</code> | - Ces commandes peuvent être répétées. \\ Par exemple : <code>5Dd supprime 5 lignes.</code> | ||
Ligne 31: | Ligne 31: | ||
|u | annule la dernière opération.| | |u | annule la dernière opération.| | ||
|U | annule les opérations sur toute la ligne.| | |U | annule les opérations sur toute la ligne.| | ||
- | |[Ctrl]r | annule l'annulation.| | + | |<key>C-r</key> | Touches de raccourcis qui annule l'annulation.| |
|. | repète la dernière commande effectuée.| | |. | repète la dernière commande effectuée.| | ||
|p | place le contenu de la mémoire tampon là où se trouve le curseur.| | |p | place le contenu de la mémoire tampon là où se trouve le curseur.| | ||
|cw | efface la fin du mot et passe en mode insertion pour corriger.| | |cw | efface la fin du mot et passe en mode insertion pour corriger.| | ||
|c$ | efface la fin d'une ligne et passe en mode insertion pour corriger.| | |c$ | efface la fin d'une ligne et passe en mode insertion pour corriger.| | ||
+ | |<key>C-g</key> | Touches de raccourci qui indique le chemin du fichier édité en cours.| | ||
+ | | \ | Dans une commande, permet de garder le sens littéral d'une touche active sous vim en la précédant immédiatement. Exemple :%s %%/mp3\//mp3 %% | | ||
**Commandes de remplacement de texte :** | **Commandes de remplacement de texte :** | ||
Ligne 44: | Ligne 46: | ||
|:3,7s/old/new/g | remplace tous les old par new de la ligne 3 à 7| | |:3,7s/old/new/g | remplace tous les old par new de la ligne 3 à 7| | ||
|:%s/old/new/g | remplace tous les old par new dans tout le fichier| | |:%s/old/new/g | remplace tous les old par new dans tout le fichier| | ||
+ | |:%s/mp3%%\//mp3%%/ | remplace '' mp3/ '' par '' mp3 '' dans tout le fichier (//suppression de la barre oblique finale//)| | ||
==== Saisie ==== | ==== Saisie ==== | ||
Ligne 56: | Ligne 59: | ||
|o |Insertion d'une nouvelle ligne sous la ligne active| | |o |Insertion d'une nouvelle ligne sous la ligne active| | ||
|O |Insertion d'une nouvelle ligne au-dessus de la ligne active| | |O |Insertion d'une nouvelle ligne au-dessus de la ligne active| | ||
+ | |||
+ | === Astuce === | ||
+ | |||
+ | Insérez des caractères sur plusieurs lignes après la colonne d'un caractère précis | ||
+ | |||
+ | En mode commande. | ||
+ | - On se place après la colonne à modifier | ||
+ | - On tape : <key>C-v</key> | ||
+ | - On descend jusqu'à la dernière ligne à modifier. | ||
+ | - On tape <key>Maj-i</key> | ||
+ | - On tape ce qu'il faut insérer | ||
+ | - On tape sur la touche du clavier <key>Echap</key> | ||
+ | |||
+ | Et c'est fait. | ||
+ | |||
+ | Exemple : | ||
+ | |||
+ | Je dois ajouter une virgule après le premier chiffre de cette ligne : | ||
+ | <code file> | ||
+ | 91 | ||
+ | 92 | ||
+ | 93 | ||
+ | 94 | ||
+ | </code> | ||
+ | |||
+ | J'opère comme indiqué : | ||
+ | - Se placer après le 9 | ||
+ | - <key>C-v</key> | ||
+ | - Descendre jusqu'au 94 | ||
+ | - <key>Maj-i</key> | ||
+ | - , | ||
+ | - <key>Echap</key> | ||
+ | |||
+ | Et j'obtiens : | ||
+ | <code file> | ||
+ | 9,1 | ||
+ | 9,2 | ||
+ | 9,3 | ||
+ | 9,4 | ||
+ | </code> | ||
+ | |||
+ | Pour ajouter une virgule après le chiffre 10 : | ||
+ | <code file> | ||
+ | 101 | ||
+ | 102 | ||
+ | 103 | ||
+ | 104 | ||
+ | 105 | ||
+ | </code> | ||
+ | Je me place après ce chiffre 10 et je fais tout pareil que précédemment. \\ | ||
+ | J'obtiens alors : | ||
+ | <code file> | ||
+ | 10,1 | ||
+ | 10,2 | ||
+ | 10,3 | ||
+ | 10,4 | ||
+ | 10,5 | ||
+ | </code> | ||
+ | |||
+ | À noter qu'on peut tout aussi bien utiliser la commande sed, par exemple pour le 91 : | ||
+ | <code> | ||
+ | :7,14s/^\(.\)/\1,/ | ||
+ | </code> | ||
+ | |||
+ | Et pour faire le truc de la ligne 7 à la ligne 14 après le second caractère comme pour 101, on rajoute un point ainsi : | ||
+ | <code> | ||
+ | :7,14s/^\(..\)/\1,/ | ||
+ | </code> | ||
+ | * \1 ça veut dire « ce qu'il y avait entre la première paire de parenthèses échappées » | ||
+ | |||
+ | //Sacré //**matelot**// tout de même qu'il en connaît des combines, hein !// :-D | ||
==== Quitter ==== | ==== Quitter ==== | ||
Ligne 64: | Ligne 138: | ||
^Commande^ Action ^ | ^Commande^ Action ^ | ||
|q! |quitte sans sauver| | |q! |quitte sans sauver| | ||
- | |q |quitte si le fichier n' pas été modifié| | + | |q |quitte si le fichier n'a pas été modifié| |
|w |sauve le fichier| | |w |sauve le fichier| | ||
|wq |sauve et quitte| | |wq |sauve et quitte| | ||
Ligne 85: | Ligne 159: | ||
|b |Mot précédent| | |b |Mot précédent| | ||
|f//motif// |Saut sur le caractère //motif// indiqué (//Exemple// "fc" //envoie sur le premier caractère// "c" //suivant//)| | |f//motif// |Saut sur le caractère //motif// indiqué (//Exemple// "fc" //envoie sur le premier caractère// "c" //suivant//)| | ||
- | |Ctrl + F |Remonte d'un écran| | + | |<key>C-f</key> |Remonte d'un écran| |
- | |Ctrl + B |Descend d'un écran| | + | |<key>C-b</key> |Descend d'un écran| |
|G |Dernière ligne du fichier| | |G |Dernière ligne du fichier| | ||
|NG |Saute à la ligne| | |NG |Saute à la ligne| | ||
Ligne 124: | Ligne 198: | ||
- La recherche démarre du caractère courant à la fin du fichier. | - La recherche démarre du caractère courant à la fin du fichier. | ||
- Le caractère « ? » effectue la recherche en sens inverse. | - Le caractère « ? » effectue la recherche en sens inverse. | ||
- | - On indique ensuite le critère, puis Entrée. \\ Exemple : <code>/echo</code> recherche la chaîne "echo" dans la suite du fichier. | + | - On indique ensuite le critère, puis <key>Entrée</key>. \\ Exemple : <code>/echo</code> recherche la chaîne "echo" dans la suite du fichier. |
- Quand la chaîne est trouvée, le curseur s'arrête sur le premier caractère de cette chaîne. | - Quand la chaîne est trouvée, le curseur s'arrête sur le premier caractère de cette chaîne. | ||
- La commande « n » permet de continuer la recherche dans le sens indiqué au début. | - La commande « n » permet de continuer la recherche dans le sens indiqué au début. | ||
Ligne 145: | Ligne 219: | ||
Pour remplacer du texte, il faut se placer au début de la chaîne à modifier, puis taper l'une des commandes suivantes. | Pour remplacer du texte, il faut se placer au début de la chaîne à modifier, puis taper l'une des commandes suivantes. | ||
- | <note tip>Après ces saisies, il suffit de taper son texte et d'appuyer sur Echap.</note> | + | <note tip>Après ces saisies, il suffit de taper son texte et d'appuyer sur <key>Echap</key>.</note> |
^Commande^ Action ^ | ^Commande^ Action ^ | ||
Ligne 152: | Ligne 226: | ||
|cO //motif// |Remplacement jusqu'au début de la ligne| | |cO //motif// |Remplacement jusqu'au début de la ligne| | ||
|cfx //motif// |Remplacement jusqu'au prochain caractère 'x' dans la ligne courante| | |cfx //motif// |Remplacement jusqu'au prochain caractère 'x' dans la ligne courante| | ||
- | |c/motif (Entrée)|Remplacement jusqu'à la prochaîne occurrence de la chaîne 'motif'| | + | |c/motif (<key>Entrée</key>)|Remplacement jusqu'à la prochaîne occurrence de la chaîne 'motif'| |
==== Copier-Coller ==== | ==== Copier-Coller ==== | ||
Ligne 201: | Ligne 275: | ||
^Commande^ Action ^ | ^Commande^ Action ^ | ||
- | |w Nom_fic |Sauve le fichier sous Nom_fic, en l' écrasant ou en le créant| | + | |w Nom_fichier |Sauve le fichier sous Nom_fic, en l' écrasant ou en le créant| |
- | |1,10w Nom_fic |Sauve les lignes 1 à 10 dans Nom_fic| | + | |1,10w Nom_fichier |Sauve les lignes 1 à 10 dans Nom_fic| |
- | |r Nom_fic |Insère le fichier Nom_fic à partir de la ligne courante| | + | |r Nom_fichier |Insère le fichier Nom_fic à partir de la ligne courante| |
|! commande |Exécute la commande puis retourne à l'éditeur| | |! commande |Exécute la commande puis retourne à l'éditeur| | ||
|r! commande |Exécute la commande et insère le résultat à partir de la ligne courante| | |r! commande |Exécute la commande et insère le résultat à partir de la ligne courante| | ||
- | |f Nom_fic |Affiche en bas d'écran le nom du fichier, le nombre de ligne et la position actuelle| | + | |f Nom_fichier |Affiche en bas d'écran le nom du fichier, le nombre de ligne et la position actuelle| |
- | |e Nom_fic |Le fichier est chargé. Un message indique si le précédent a été modifié| | + | |e Nom_fichier |Le fichier est chargé. Un message indique si le précédent a été modifié| |
|e # |Le dernier fichier chargé est affiché. Permet de commuter entre les fichiers| | |e # |Le dernier fichier chargé est affiché. Permet de commuter entre les fichiers| | ||
Ligne 221: | Ligne 295: | ||
|set nonu |supprime les numéros de lignes.| | |set nonu |supprime les numéros de lignes.| | ||
|set autoindent |l'indentation est conservée lors d'un retour à la ligne.| | |set autoindent |l'indentation est conservée lors d'un retour à la ligne.| | ||
- | |set noautoindent |l'indentation est conservée lors d'un retour à la ligne.| | + | |set noautoindent |l'indentation n'est pas conservée lors d'un retour à la ligne.| |
|set showmatch |lors de la saisie d'une accolade ou d'une parenthèse de fermeture, celle d'ouverture est affichée un très court instant, puis l'éditeur revient au caractère courant.| | |set showmatch |lors de la saisie d'une accolade ou d'une parenthèse de fermeture, celle d'ouverture est affichée un très court instant, puis l'éditeur revient au caractère courant.| | ||
|set noshowmatch |lors de la saisie d'une accolade ou d'une parenthèse de fermeture, celle d'ouverture est affichée un très court instant, puis l'éditeur revient au caractère courant.| | |set noshowmatch |lors de la saisie d'une accolade ou d'une parenthèse de fermeture, celle d'ouverture est affichée un très court instant, puis l'éditeur revient au caractère courant.| | ||
Ligne 236: | Ligne 310: | ||
|i |passage en mode insertion| | |i |passage en mode insertion| | ||
|: |passage en mode commande| | |: |passage en mode commande| | ||
- | |ESC |sortir des différents modes| | + | |<key>Echap</key> |sortir des différents modes| |
|:w |sauvegarde les changements| | |:w |sauvegarde les changements| | ||
|:q |quitte le document en cours| | |:q |quitte le document en cours| |