*version4.txt* Pour Vim version 6.2.
MANUEL de RÉFÉRENCE VIM - par Bram Moolenaar
Ce document donne la liste des différences incompatibles entre Vim 3.0 et Vim
4.0. Bien que seule la version 4.0 soit ici mentionnée, ce fichier couvre
également les versions 4.1, 4.2, etc.
Ce fichier est important pour toute personne se mettant à niveau depuis la
version 3.0. Lisez-le attentivement pour éviter toute mauvaise surprise.
Valeur par défaut de l'option 'backup' modifiée |backup-changed|
Extension des fichiers de sauvegarde modifiée |backup-extension|
Structure du fichier d'échange modifiée |swapfile-changed|
Argument "-w scriptS" modifié |scriptout-changed|
Touches RetArr et Suppr |backspace-delete|
Caractère d'échappement pour '|' modifié |escape-bar|
Codes clavier modifiés |key-codes-changed|
Options de terminal modifiées |termcap-changed|
Option 'errorformat' modifiée |errorformat-changed|
Option 'graphic' supprimée |graphic-option-gone|
Option 'yankendofline' supprimée |ye-option-gone|
Valeurs par défaut de 'icon' et 'title' modifiées |icon-changed|
Option 'highlight' modifiée |highlight-changed|
Noms courts de 'tildeop' et 'weirdinvert' changées |short-name-changed|
Utilisation de "v", "V" et CTRL-V en mode Visuel |use-visual-cmds|
CTRL-B supprimé en mode Insertion |toggle-revins|
VALEUR PAR DÉFAUT DE L'OPTION 'backup' MODIFIÉE *backup-changed*
Jusque là, l'option 'backup' était activée par défaut. Cela avait pour
conséquence la création d'un fichier de sauvegarde lors de l'écrasement du
fichier original.
'backup' est à présent désactivé par défaut. Dès que le fichier est écrit avec
succès, le fichier de sauvegarde est effacé. Si vous souhaitez conserver le
fichier de sauvegarde, activez 'backup' dans votre vimrc. La raison de ce
changement est que de nombreuses personnes se sont plaintes que la persistance
des fichiers de sauvegarde n'était pas compatible avec Vi. |'backup'|
EXTENSION DES FICHIERS DE SAUVEGARDE MODIFIÉE *backup-extension*
L'extension des fichiers de sauvegarde était ".bak". Mais comme d'autres
programmes utilisent également cette extension et que certains utilisateurs
font des copies possédant cette extension, elle a été changée pour la moins
courante "~". La concision de cette extension constitue également un avantage,
particulièrement pour qui travaille sur un système avec des noms de fichiers
courts. Par exemple, sur MS-DOS, les fichiers de sauvegarde de "fichlong.c"
et "fichlong.h" seraient devenus tout deux "fichlong.bak" ; à présent, ils
deviennent "fichlong.c~" et "fichlong.h~".
Si vous préférez utiliser ".bak", vous pouvez fixer l'option |'backupext'| :STRUCTURE DU FICHIER D'ÉCHANGE MODIFIÉE *swapfile-changed*
Le contenu du fichier d'échange a été étendu avec plusieurs paramètres. Vim y
enregistre le nom de l'utilisateur et d'autres informations relatives au
fichier édité pour faciliter le recouvrement et pour permettre de déterminer
la provenance du fichier d'échange. La première partie de ce fichier n'est pas
compréhensible par une machine ayant un ordre des octets différent ou une
taille différente pour les entiers (sizeof(int)). Si vous tentez de recouvrir
un fichier sur une telle machine, vous obtiendrez un message d'erreur vous
indiquant que ce n'est pas possible.
À cause de cette modification, les fichiers d'échange ne sont pas
interchangeables entre les versions 3.0 et 4.0. Si vous détenez un fichier
d'échange d'une session anormalement terminée avec Vim 3.0, utilisez Vim 3.0
pour recouvrer le fichier -- n'utilisez pas Vim 4.0. |swap-file|
ARGUMENT "-w scriptS" MODIFIÉ *scriptout-changed*
`vim -w scriptS` permettait d'ajouter à la fin d'un script de sortie. Ce
comportement étant illogique, un nouveau fichier est maintenant créé. Si un
fichier existe déjà, il n'est pas écrasé (pour éviter de détruire les fichiers
de ceux qui s'attendent au rajout). [Ceci a finalement été supprimé par la
suite.] |-w|
TOUCHES RETARR ET SUPPR *backspace-delete*
Dans la version 3.0, les touches Suppr et RetArr fonctionnaient toutes deux
comme un retour arrière en mode Insertion ; elles effaçaient le caractère à
gauche du curseur. Dans la version 4.0, la touche Suppr a une nouvelle
fonction : elle efface le caractère sous le curseur, comme elle le fait dans
la ligne de commande. Si le curseur est au delà de la fin de la ligne et que
l'option 'bs' est activée, les deux lignes sont fusionnées. |<Del>| |i_<Del>|
Dans la version 3.0, la touche RetArr était toujours définie par CTRL-H et
Suppr par CTRL-?. Dans la version 4.0, les codes pour ces touches sont obtenus
depuis termcap ou termlib, et ajustés à la valeur `stty erase` sur Unix. Cela
aide les personnes qui définissent leur caractère d'effacement selon le
clavier avec lequel ils travaillent. |<BS>| |i_<BS>|
Si vous préférez que RetArr et Suppr conservent leur ancien comportement dans
le mode Insertion, ajoutez cette ligne dans votre vimrc :Probablement souhaiterez-vous également ajouter celles-ci, pour ajuster les
valeurs de <RetArr> et <Suppr> :(Saisissez ^H avec "CTRL-V CTRL-H" et ^? avec "CTRL-V CTRL-?" ou "<CTRL-V>
<Suppr>".)
Si la valeur de 't_kb' est correcte, mais pas celle de 't_kD', utilisez la
commande ":fixdel". Elle fixera 't_kD' selon la valeur de 't_kb'. C'est utile
si vous utilisez plusieurs terminaux différents. |:fixdel|
Lorsque ^H n'est pas reconnu comme <RetArr> ou <Suppr>, il fonctionne comme un
retour arrière.
CARACTÈRE D'ÉCHAPPEMENT POUR '|' MODIFIÉ *escape-bar*
Quand le drapeau 'b' est présent dans 'cpoptions', la contre-oblique ne peut
pas être utilisée pour protéger '|' dans les mappages et les commandes
d'abréviation, seul CTRL-V le peut. C'est compatible avec Vi. Si vous
travaillez en mode compatible Vi et devez utiliser "\|" pour insérer une barre
verticale dans un mappage, il est nécessaire de le remplacer par "^V|". Voir
|:bar|.
CODES CLAVIER MODIFIÉS *key-codes-changed*
La représentation interne des codes clavier a radicalement changée. Dans la
version 3.0, un code sur un octet était utilisé pour représenter une touche.
Cela provoquait des problèmes avec les différents jeux de caractères qui
utilisaient également ces codes. Dans la version 4.0, un code sur trois octets
est employé, qui ne peut plus être confondu avec un caractère. |key-notation|
Si vous avez utilisé des codes clavier sur un octet dans votre vimrc pour vos
mappages, vous devrez les remplacer par les codes de la version 4.0. Au lieu
d'utiliser directement les codes sur trois octets, vous devriez utiliser leur
représentation symbolique entre <>. Consultez le tableau ci-dessous. Ce
dernier donne également l'ancien nom des touches, tel qu'il était utilisé dans
la documentation de la version 3.0.
Les noms de touches entre <> peuvent être utilisés directement dans les
mappages. Cela permet de copier/coller des exemples ou de les taper
littéralement. La notation <> a été introduite dans ce but |<>|. Les drapeaux
'B' et '<' ne doivent pas être présents dans 'cpoptions' pour que cela
fonctionne |'cpoptions'|.
ANCIEN NOM NOUVEAU NOM ANCIEN CODE ANCIEN CODE MS-DOS
HEXA DÉC HEXA DÉC
<ESC> <Esc>
<TAB> <Tab>
<LF> <NL> <NewLine> <LineFeed>
<SPACE> <Space>
<NUL> <Nul>
<BELL> <Bell>
<BS> <BS> <BackSpace>
<INSERT> <Insert>
<DEL> <Del> <Delete>
<HOME> <Home>
<END> <End>
<PAGE_UP> <PageUp>
<PAGE_DOWN> <PageDown>
<C_UP> <Up> 0x80 128 0xb0 176
<C_DOWN> <Down> 0x81 129 0xb1 177
<C_LEFT> <Left> 0x82 130 0xb2 178
<C_RIGHT> <Right> 0x83 131 0xb3 179
<SC_UP> <S-Up> 0x84 132 0xb4 180
<SC_DOWN> <S-Down> 0x85 133 0xb5 181
<SC_LEFT> <S-Left> 0x86 134 0xb6 182
<SC_RIGHT> <S-Right> 0x87 135 0xb7 183
<F1> <F1> 0x88 136 0xb8 184
<F2> <F2> 0x89 137 0xb9 185
<F3> <F3> 0x8a 138 0xba 186
<F4> <F4> 0x8b 139 0xbb 187
<F5> <F5> 0x8c 140 0xbc 188
<F6> <F6> 0x8d 141 0xbd 189
<F7> <F7> 0x8e 142 0xbe 190
<F8> <F8> 0x8f 143 0xbf 191
<F9> <F9> 0x90 144 0xc0 192
<F10> <F10> 0x91 145 0xc1 193
<SF1> <S-F1> 0x92 146 0xc2 194
<SF2> <S-F2> 0x93 147 0xc3 195
<SF3> <S-F3> 0x94 148 0xc4 196
<SF4> <S-F4> 0x95 149 0xc5 197
<SF5> <S-F5> 0x96 150 0xc6 198
<SF6> <S-F6> 0x97 151 0xc7 199
<SF7> <S-F7> 0x98 152 0xc8 200
<SF8> <S-F8> 0x99 153 0xc9 201
<SF9> <S-F9> 0x9a 154 0xca 202
<SF10> <S-F10> 0x9b 155 0xcb 203
<HELP> <Help> 0x9c 156 0xcc 204
<UNDO> <Undo> 0x9d 157 0xcd 205
(inusité) 0x9e 158 0xce 206
(inusité) 0x9f 159 0xcf 207
OPTIONS DE TERMINAL MODIFIÉES *termcap-changed*
Les noms des options de terminal ont été changés pour correspondre aux noms
des entrées termcap en rapport. Toutes les options de terminal ont maintenant
un nom de la forme "t_xx", ou "xx" désigne le nom de l'entrée termcap.
Normalement, ces options ne sont pas utilisées, à moins qu'une entrée termcap
ne soit fausse ou incomplète, ou que vous n'utilisiez pas les paramètres de
surbrillance par défaut. |terminal-options|
NOTE : Pour certaines touches, il n'existe pas de nom termcap. Utilisez le
notation <> à la place, elle fonctionnera dans tous les cas de figures.
NOTE : 't_ti' est devenu 't_mr' (inversion de la sortie) et 't_ts' est devenu
't_ti' (initialisation du mode du terminal). Soyez prudent lorsque vous
utilisez 't_ti' !
ANCIEN NOM NOUVEAU NOM SIGNIFICATION
t_cdl t_DL supprime plusieurs lignes *t_cdl*
t_ci t_vi curseur invisible *t_ci*
t_cil t_AL ajoute plusieurs lignes vides *t_cil*
t_cm t_cm placement du curseur
t_cri t_RI curseur plusieurs car. à droite *t_cri*
t_cv t_ve curseur visible *t_cv*
t_cvv t_vs curseur très visible *t_cvv*
t_dl t_dl supprime une ligne
t_cs t_cs définit une région de défilement
t_ed t_cl efface l'écran *t_ed*
t_el t_ce efface jusqu'à la fin de la ligne *t_el*
t_il t_al ajoute une ligne vide *t_il*
t_da les lignes supérieures défilent vers le bas
t_db les lignes inférieures défilent vers le haut
t_ke t_ke sort le terminal du mode échappement clavier
t_ks t_ks met le terminal en mode échappement clavier
t_ms t_ms le curseur peut être déplacé en mode
surligné/inverse
t_se t_se fin du mode surligné
t_so t_so mode surligné
t_ti t_mr mode video inverse
t_tb t_md mode gras *t_tb*
t_tp t_me mode normal (désactive t_mr, *t_tp*
t_mb, t_md et couleur)
t_sr t_sr défilement inversé (vers l'arrière)
t_te t_te sort du mode « termcap »
t_ts t_ti entre en mode « termcap » *t_ts_old*
t_vb t_vb alarme visuelle
t_csc t_CS curseur relatif à région de *t_csc*
défilement
t_ku t_ku <Up> flèche haut
t_kd t_kd <Down> flèche bas
t_kr t_kr <Right> flèche droite
t_kl t_kl <Left> flèche gauche
t_sku <S-Up> maj + flèche haut *t_sku*
t_skd <S-Down> maj + flèche bas *t_skd*
t_skr t_%i <S-Right> maj + flèche droite *t_skr*
t_skl t_#4 <S-Left> maj + flèche gauche *t_skl*
t_f1 t_k1 <F1> touche de fonction 1 *t_f1*
t_f2 t_k2 <F2> touche de fonction 2 *t_f2*
t_f3 t_k3 <F3> touche de fonction 3 *t_f3*
t_f4 t_k4 <F4> touche de fonction 4 *t_f4*
t_f5 t_k5 <F5> touche de fonction 5 *t_f5*
t_f6 t_k6 <F6> touche de fonction 6 *t_f6*
t_f7 t_k7 <F7> touche de fonction 7 *t_f7*
t_f8 t_k8 <F8> touche de fonction 8 *t_f8*
t_f9 t_k9 <F9> touche de fonction 9 *t_f9*
t_f10 t_k; <F10> touche de fonction 10 *t_f10*
t_sf1 <S-F1> maj + touche de fonction 1 *t_sf1*
t_sf2 <S-F2> maj + touche de fonction 2 *t_sf2*
t_sf3 <S-F3> maj + touche de fonction 3 *t_sf3*
t_sf4 <S-F4> maj + touche de fonction 4 *t_sf4*
t_sf5 <S-F5> maj + touche de fonction 5 *t_sf5*
t_sf6 <S-F6> maj + touche de fonction 6 *t_sf6*
t_sf7 <S-F7> maj + touche de fonction 7 *t_sf7*
t_sf8 <S-F8> maj + touche de fonction 8 *t_sf8*
t_sf9 <S-F9> maj + touche de fonction 9 *t_sf9*
t_sf10 <S-F10> maj + touche de fonction 10 *t_sf10*
t_help t_%1 <Help> touche d'aide *t_help*
t_undo t_&8 <Undo> touche d'annulation *t_undo*
OPTION 'errorformat' MODIFIÉE *errorformat-changed*
L'option 'errorformat' peut à présent contenir plusieurs formats, séparés par
des virgules. Le premier format qui convient est employé. Les valeurs par
défaut ont été choisies pour correspondre aux formats les plus courants.
|errorformat|
Si l'un de vos formats contient une virgule, elle doit être précédée d'une
contre-oblique. Tapez deux contre-obliques, car la commande ":set" en
éliminera une.
OPTION 'graphic' SUPPRIMÉE *graphic-option-gone*
L'option 'graphic' était employée pour afficher les caractères compris entre
'~' et 0xa0 directement à l'écran. C'est désormais l'option 'isprint' qui s'en
charge, avec des possibilités étendues. Le paramétrage par défaut est
conservé ; vous n'aurez à y toucher que si vous aviez précédemment activé
l'option 'graphic' dans votre vimrc. |'isprint'|
OPTION 'yankendofline' SUPPRIMÉE *ye-option-gone*
L'option 'yankendofline' a été supprimée. En remplacement, vous pouvez
simplement utiliser :VALEURS PAR DÉFAUT DE 'icon' ET 'title' MODIFIÉES *icon-changed*
À présent, l'option 'title' est activée par défaut uniquement si le titre
original peut être restauré. Cela permet d'éviter les titres "Merci de
quitter Vim". Si vous les voulez quand même, ajoutez ":set title" dans votre
vimrc. |'title'|
Comme pour 'title', la valeur par défaut de 'icon' dépend désormais de la
possibilité de restaurer le titre original de l'icône. Si vous n'appréciez pas
que les titres de vos icônes soient modifiées, ajouter cette ligne dans votre
vimrc |'icon'| :OPTION 'highlight' MODIFIÉE *highlight-changed*
Le drapeau 'i' signifie à présent le mode d'affichage en italique, plutôt que
video inverse. C'est le drapeau 'r' qui est utilisé pour l'inversion video, ce
qui permettait précédemment 'i'. Normalement, vous ne devriez pas percevoir la
différence, car le mode italique n'est pas supporté par la plupart des
terminaux et que le mode vidéo inverse est utilisé comme solution de repli.
|'highlight'|
Lorsqu'une occasion est manquante dans 'highlight', le mode de la valeur par
défaut pour 'highlight' est utilisé, au lieu du mode vidéo inverse.
NOMS COURTS DE 'tildeop' ET 'weirdinvert' CHANGÉS *short-name-changed*
-------------------------------------------------
'to' (abréviation de 'tildeop') renommée en 'top'. |'tildeop'|
'wi' (abréviation de 'weirdinvert') renommée en 'wiv'. |'weirdinvert'|
Ce changement a été opéré car Vi utilise 'wi' pour 'windows' et 'to' pour
'timeout'. Cela signifie que si vous tentez de fixer ces options, vous
n'obtiendrez pas de messages d'erreurs, mais leurs effets seront différents.
UTILISATION DE "v", "V" ET CTRL-V EN MODE VISUEL *use-visual-cmds*
En mode Visuel, "v", "V" et CTRL-V permettaient de quitter ce mode. À présent,
ce n'est plus le cas sauf si le type de mode Visuel correspond. Sans cela, le
type de mode Visuel est changé. Maintenant, seul <Echap> vous permet en toutes
circonstances de sortir du mode Visuel sans modifier quoi que ce soit. |v_V|
CTRL-B SUPPRIMÉ EN MODE INSERTION *toggle-revins*
CTRL-B en mode Insertion permettait d'inverser l'option 'revins'. Si vous ne
le saviez pas et tapiez accidentellement CTRL-B, il était très difficile de
trouver comment s'en sortir. Puisque peu de personnes utilisent cette
fonctionnalité, elle est désactivée par défaut. Si vous souhaitez l'utiliser,
définissez RIGHTLEFT dans "feature.h" avant la compilation. |'revins'|
vim:tw=78:ts=8:ft=help:norl: