*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'| :
	:set bex=.bak


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 :

	inoremap ^? ^H

Probablement souhaiterez-vous également ajouter celles-ci, pour ajuster les
valeurs de <RetArr> et <Suppr> :

	set t_kb=^H
	set t_kD=^?

(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 :
	:map Y y$


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'| :
	:set noicon					


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: