*version6.txt*  Pour Vim version 6.2.  Dernière modification : 01 jun 2003


		 MANUEL de RÉFÉRENCE VIM - par Bram Moolenaar


Bienvenue dans Vim version 6.0 ! De nombreuses fonctionnalités ont été
ajoutées. Ce fichier fait le point sur toutes ces nouveautés, mais aussi sur
les modifications apportées aux fonctionnalités déjà existantes et les bogues
corrigés depuis Vim 5.x.

Voir |vi_diff.txt| pour un résumé des différences entre Vi et Vim 6.0.
Voir |version4.txt| pour les différences entre Vim 3.0 et Vim 4.0.
Voir |version5.txt| pour les différences entre Vim 4.0 et Vim 5.0.


CHANGEMENTS INCOMPATIBLES		|incompatible-6|
Position du curseur en mode Visuel		|curpos-visual|
Commande de substitution compatible Vi		|substitute-CR|
Valeurs globales d'option introduites		|new-global-values|
'fileencoding' modifié   			|fileencoding-changed|
Digrammes modifiés				|digraphs-changed|
Détection du type de fichier modifié		|filetypedetect-changed|
Tampons non listés introduits			|new-unlisted-buffers|
CTRL-U en mode Ligne-de-commande modifié	|CTRL-U-changed|
Départ de `ctags`				|ctags-gone|
Documentation réorganisée			|documentation-6|
Sélection amodale et presse-papiers		|modeless-and-clipboard|
Incompatibilités mineures			|incomp-small-6|

NOUVELLES FONCTIONNALITÉS		XXX marqueur ?
Repliage					|new-folding|
Partages verticaux de fenêtres			|new-vertsplit|
Mode diff					|new-diff-mode|
EVim : cliquer-taper				|new-evim|
Manuel de l'utilisateur				|new-user-manual|
Indentation flexible				|new-indent-flex|
Motifs de recherche étendus			|new-searchpat|
Support de l'UTF-8	 			|new-utf-8|
Support multilingue				|new-multi-lang|
Support des greffons				|new-plugins|
Greffons de types de fichiers			|new-filetype-plugins|
Explorateur de fichiers			    	|new-file-browser|
Édition de fichiers via réseau		    	|new-network-files|
Fenêtre d'édition de la ligne de commande   	|new-cmdwin|
Mode débogage				    	|new-debug-mode|
Curseur en position virtuelle		    	|new-virtedit|
Interface débogueur				|new-debug-itf|
Communication entre plusieurs Vim		|new-vim-server|
Options de type de tampon			|new-buftype|
Impression					|new-printing|
Portages					|ports-6|
Mode mise-au-point étendu			|quickfix-6|
Modificateurs d'opérateurs			|new-operator-mod|
Chemin de recherche				|new-search-path|
Enregistrement des fichiers amélioré		|new-file-writing|
Liste des arguments				|new-argument-list|
Restauration de Vues				|new-View|
Jeux de couleurs				|new-color-schemes|
Autres éléments nouveaux			|new-items-6|

AMÉLIORATIONS				|improvements-6|

CHANGEMENTS À LA COMPILATION		|compile-changes-6|

CORRECTIONS DE BOGUES  			|bug-fixes-6|


VERSION 6.1				|version-6.1|
Changements					|changed-6.1|
Ajouts	   					|added-6.1|
Corrections					|fixed-6.1|

VERSION 6.2				|version-6.2|
Changements					|changed-6.2|
Ajouts	   					|added-6.2|
Corrections				    	|fixed-6.2|

==============================================================================
Changements incompatibles				*incompatible-6*

Ces changements sont incompatibles avec les versions précédentes. Consultez
cette liste si vous rencontrez un problème en passant de Vim 5.x à 6.0.


POSITION DU CURSEUR EN MODE VISUEL			*curpos-visual*

Si vous êtes en mode Visuel et que vous passez d'une fenêtre à une autre
affichant le même tampon, la position du curseur dans cette autre fenêtre est
ajustée pour conserver la même zone Visuel. Vous pouvez ainsi définir le début
de la zone Visuel dans une fenêtre et la fin dans une autre.
   Dans Vim 5.x, l'ancienne position du curseur dans l'autre fenêtre était
utilisée, ce qui pouvait amener n'importe où et n'était pas très utile.


COMMANDE DE SUBSTITUTION COMPATIBLE VI			*substitute-CR*

La chaîne de substitution (la partie « cible » de la commande ":substitute") a
été rendue compatible Vi. Auparavant, CTRL-V avait une signification spéciale
et pouvait être utilisé afin d'éviter qu'un <CR> n'insère une coupure de
ligne. Cela rendait impossible l'insertion d'un CTRL-V avant une coupure de
ligne. Dorénavant, une contre-oblique est utilisée pour éviter qu'un <CR>
n'insère une coupure de ligne. Comme le nombre de contre-obliques est divisé
par deux, il est toujours possible d'insérer une coupure de ligne à la fin de
la ligne. Ce fonctionnement est identique à celui de Vi, mais il est
incompatible avec les versions de Vim antérieures à la 6.0.

Lorsqu'une commande ":s" n'effectue aucune substitution, elle ne positionne
désormais plus les marques '[ et ']. Cela n'a pas de rapport avec Vi, qui ne
possède pas ces marques.


VALEURS GLOBALES D'OPTION INTRODUITES			*new-global-values*

Il existe à présent des valeurs globales pour les options locales à un tampon
ou une fenêtre. Auparavant, les options locales étaient copiées d'une fenêtre
dans une autre. Cela pouvait entraîner l'utilisation de valeurs d'options
provenant de la ligne de mode d'un autre fichier ! Dorénavant, les valeurs
globales sont utilisées à l'ouverture d'un tampon qui n'a pas été utilisé
jusqu'à présent. De plus, lorsqu'un autre tampon est édité dans une fenêtre,
les options locales de fenêtres sont réinitialisées à leurs valeurs globales.
La commande ":set" fixe à la fois les valeurs globale et locale, cela reste
compatible. Mais une ligne de mode ne fixe plus que la valeur locale, il n'y a
pas de compatibilité ascendante.

":let &opt = val" fixe désormais les valeurs locale et globale, comme ":set".
De nouvelles commandes ont été ajoutées pour fixer les valeurs locale ou
globale :
	:let &opt = val		comme ":set"
	:let &g:opt = val	comme ":setglobal"
	:let &l:opt = val	comme ":setlocal"


'fileencoding' MODIFIÉ					*fileencoding-changed*

'fileencoding' était employé dans Vim 5.x pour fixer l'encodage utilisé
partout dans Vim. C'était plutôt étrange, car c'était une option locale à un
tampon qui s'appliquait à tous les tampons. Elle ne pouvait pas différer d'un
tampon à l'autre, parce qu'elle modifiait la façon dont le texte était
interprété dans tous les tampons.
   Elle est à présent utilisée pour l'encodage du fichier relatif au tampon.
Si vous fixez 'fileencoding' malgré tout, il est probable qu'il soit recouvert
par l'encodage détecté à partir de 'fileencodings', c'est donc « généralement
sans risque ».

L'événement d'autocommande EncodingChanged sert de nouveau nom pour
FileEncoding.


DIGRAMMES MODIFIÉS					*digraphs-changed*

Les digrammes par défaut correspondent à présent à la RFC1345. C'est un
changement notable par rapport à Vim 5.x. |digraphs|


DÉTECTION DU TYPE DE FICHIER MODIFIÉ		*filetypedetect-changed*

La détection du type de fichier utilisait précédemment le groupe
d'autocommandes "filetype". C'était une source de confusion avec le nom
d'événement FileType (la casse étant ignorée). Ce groupe est à présent nommé
"filetypedetect". Le groupe "filetype" est toujours reconnu, mais s'il est
utilisé, les autocommandes ne seront pas supprimées par ":filetype off".
   Le support de 'runtimepath' rend désormais les mécanismes "myfiletypefile"
et "mysyntaxfile" obsolètes. Il sont toujours supportés pour compatibilité
ascendante.

La liaison entre l'événement FileType et la configuration de l'option 'syntax'
était précédemment assurée via le groupe d'autocommandes "syntax". C'était une
source de confusion avec le nom d'événement Syntax. Ce groupe est présent
nommé "syntaxset".

Les fichiers de syntaxe distribués ne contiennent désormais plus "syntax
clear". Cela permet de les inclure sans problème les uns dans les autres. La
syntaxe est à présent effacée lorsque l'option 'syntax' est fixée (par une
autocommande ajoutée depuis "synload.vim"). Cela permet l'effacement de la
syntaxe courante quand la valeur de 'syntax' ne correspond à aucun fichier de
syntaxe. Auparavant, la syntaxe courante était conservée.


TAMPONS NON LISTÉS INTRODUITS				*new-unlisted-buffers*

Il existe maintenant une différence entre les tampons qui n'apparaissent pas
dans la liste des tampons et ceux qui sont vraiment absents de cette liste.
Les commandes comme ":ls", ":bnext", ":blast" et le menu Tampons ignoreront
les tampons absents de la liste des tampons. |unlisted-buffer|
   L'option 'buflisted' permet de faire apparaître/disparaître un tampon de la
liste des tampons.

Plusieurs commandes qui ajoutaient précédemment un tampon dans la liste des
tampons créent à présent un tampon non listé. Cela signifie que ":bnext" et
":ball" ne trouveront pas ces fichiers jusqu'à ce qu'il soient réellement
édités. Par exemple, les tampons utilisés pour le fichier alternatif avec
":write fich" et ":read fich".
   D'autres commandes qui auparavant supprimaient complètement un tampon se
contentent maintenant de le retirer de la liste des tampons. Certaines
commandes qui se basaient auparavant sur l'absence d'un tampon risquent
d'échouer. C'était par exemple le cas dans l'un des tests automatiques, où une
commande ":bdelete" dans une autocommande entraînait l'échec d'une commande
ultérieure. |:bwipeout| peut être utilisé pour l'ancienne signification de
":bdelete".

L'événement d'autocommande BufDelete est à présent déclenché lorsqu'un tampon
est retiré de la liste des tampons. L'événement BufCreate n'est déclenché que
lorsqu'un tampon (nouvellement créé ou existant) est ajouté à la liste des
tampons. BufAdd sert de nouveau nom pour BufCreate.
   Le nouvel événement BufNew sert lors de la création d'un tampon quelconque
et BufWipeout pour la suppression effective d'un tampon.

Pour le complètement en mode Insertion, seuls les tampons de la liste des
tampons sont utilisés. Ajoutez le drapeau 'U' à l'option 'complete' pour que
le complètement utilise aussi les tampons non listés.

Les tampons non listés ne sont pas enregistrés dans un fichier viminfo.


CTRL-U EN MODE LIGNE-DE-COMMANDE MODIFIÉ		CTRL-U-changed">*CTRL-U-changed*

L'utilisation CTRL-U sur la ligne de commande effaçait précédemment la ligne
entière. La plupart des shells ne suppriment en fait que les caractères
précédant le curseur. C'est maintenant ce que fait Vim. (Steve Wall)

Vous pouvez obtenir l'ancien comportement en utilisant "CTRL-E CTRL-U" :
	:cnoremap <C-U> <C-E><C-U>


DÉPART DE `ctags`					*ctags-gone*

`ctags` ne fait désormais plus partie de la distribution de Vim. C'est
devenu un projet autonome, diffusé séparément.
   Vous trouverez `ctags` sur : "http://ctags.sf.net/".


DOCUMENTATION RÉORGANISÉE				*documentation-6*

La documentation a été réorganisée ; un élément ne sera peut-être pas présent
là où vous l'auriez trouvé dans Vim 5.x.
- Le Manuel de l'utilisateur a été ajouté, certains éléments du Manuel de
  référence ayant été transférés en son sein.
- La mini-référence constitue désormais un fichier séparé (afin de pouvoir
  être imprimée).

Les exemples dans la documentation étaient précédemment marqués par un '>'
dans la première colonne de chaque ligne. Cela rendait le copier/coller
difficile. À présent, il y a un unique '>' avant l'exemple, et la fin est
marquée par un '<' ou un non-blanc dans la première colonne. C'est également
plus lisible sans surbrillance.

'helpfile' n'est plus utilisé pour trouver le fichier de marqueurs de l'aide.
Cela permet à chaque utilisateur d'ajouter ses propres fichiers d'aide (p.
ex., pour les greffons).


SÉLECTION AMODALE ET PRESSE-PAPIERS		*modeless-and-clipboard*

La sélection amodale est utilisée pour sélectionner du texte quand le mode
Visuel ne peut pas être utilisé, par exemple lors de l'édition de la ligne de
commande ou à une invite Plus.
   Dans Vim 5.x, la sélection amodale était toujours utilisée. Sur MS-Windows,
cela entraînait l'écrasement du presse-papiers, sans possibilité de l'éviter.
La sélection amodale obéit à présent aux drapeaux 'a' et 'A' de 'guioptions',
et à "autoselect" et "autoselectml" dans 'clipboard'. Par défaut, il n'y a pas
de copie automatique sur MS-Windows. Utilisez la commande |c_CTRL-Y| pour
copier manuellement la sélection.

Pour revenir à l'ancien comportement, faites ceci :
	:set clipboard^=autoselectml guioptions+=A


INCOMPATIBILITÉS MINEURES				*incomp-small-6*

'backupdir', 'cdpath', 'directory', 'equalprg', 'errorfile', 'formatprg',
'grepprg', 'helpfile', 'makeef', 'makeprg', 'keywordprg', 'cscopeprg',
'viminfo' et 'runtimepath' ne peuvent désormais plus être fixés dans une ligne
de mode, pour accroître la sécurité.

'_' supprimé dans la valeur par défaut de 'breakat' : il est couramment
utilisé dans les mots-clés.

'mousehide' est activé par défaut, cela convient à la plupart des gens.

Le binaire pour Amiga est à présent toujours compilé en version « étendue ».
L'archive binaire "big" n'existe désormais plus.

Les éléments "[RO]", "[+]", "[help]", "[Preview]" et "[filetype]" de la ligne
d'état n'ont désormais plus de blanc initial.

Systèmes non-Unix : lors de l'expansion des jokers pour les arguments de Vim,
'suffixes' n'est plus utilisé. Cela fonctionne désormais comme si le shell
avait étendu les arguments.

Les options 'lisp', 'smartindent' et 'cindent' ne sont pas désactivées lorsque
'paste' est activé. L'auto-indentation est désactivé quand 'paste' est activé,
l'indentation manuelle avec "=" fonctionne toujours.

Quand une mise en forme avec "=" utilise 'cindent' ou 'indentexpr' et qu'il
n'y a pas de modification dans l'indentation, cela n'est pas considéré comme
un changement ('modified' n'est pas activé et l'annulation est impossible).

L'option 'modified' est activée dans un tampon quand la valeur de
'fileencoding' ou de 'fileformat' est modifiée. Cela permet d'éviter
d'abandonner ce tampon en perdant les modifications afférentes.

L'entrée de menu "Enregistrer sous" édite désormais le fichier qui vient
d'être enregistré. C'est ce qu'attendent la plupart des gens.

Un tampon pour un répertoire n'est désormais plus ajouté au menu Tampons.

<Return> a été renommé <Enter>, c'est le nom qui figure sur la plupart des
claviers. L'invite |hit-return| devient donc |hit-enter| [N.D.T. : cela ne
change rien pour la traduction française, qui utilisait indépendamment
« invite Appuyez-sur-entrée »].
   <Enter> peut être mappé exactement comme <CR> ou <Return>.

L'option 'viminfo' vaut désormais '50,"50,h par défaut lorsque 'compatible'
n'est pas activé. La plupart des gens souhaitaient utiliser cela, mais il leur
fallait fixer eux-même l'option, ce qui n'est pas trivial.

Après l'utilisation de ":colder", les nouvelles listes d'erreurs sont
écrasées. Cela permet d'utiliser ":grep" comme pour naviguer dans une
arborescence. Utilisez ":cnewer 99" pour obtenir l'ancien comportement.

Les motifs de 'errorformat' ignoraient parfois la casse (MS-Windows) et
parfois pas (Unix). Désormais, la casse est toujours ignorée. Ajoutez "\C" au
motif pour respecter la casse.

La version Dos 16 bits est à présent compilée sans la fonctionnalité +listcmds
(commandes de manipulation de la liste des tampons). Ces commandes ne sont pas
utilisées souvent et il est nécessaire de réduire la taille de l'exécutable.

'sessionoptions' inclut à présent "curdir" par défaut. Cela signifie que la
restauration d'une session entraînera la restauration du répertoire courant,
au lieu d'aller au répertoire où se situe le fichier de session.

Auparavant, le chargement d'une session supprimait tous les tampons et toutes
les marques. La liste des tampons est maintenant conservée, cela ne devrait
pas faire de différence si les tampons déjà existant restent présents.
   Quand la liste des arguments était vide, ":argdel *" provoquait un message
d'erreur.

Le motif de recherche issu d'un saut vers un marqueur n'est plus mémorisé dans
l'historique.

Le groupe de surbrillance "SpecialKey" est utilisé pour les caractères non
imprimables au lieu de "NonText". Le principe est d'utiliser "SpecialKey" pour
le texte non imprimable ou n'importe quel texte à afficher différemment des
caractères dans le fichier, et "NonText" pour les caractères qui n'existent
pas vraiment dans le fichier.

Motif utilise à présent les couleurs par défaut du système pour le menu et les
ascenseurs. Ils étaient précédemment en gris. Il est toujours possible de
modifier ces couleurs avec les commandes ":highlight" et les ressources.

La mise en forme de texte avec "gq" coupe un paragraphe sur une ligne blanche
non-vide. Auparavant, la ligne était supprimée, ce qui n'était pas très utile.

La commande ":normal" ne bloque plus quand son argument est incomplet.
Auparavant, Vim attendait que des caractères supplémentaires soient tapés,
sans rafraîchir l'affichage. Maintenant, il se comporte comme si <Echap> était
tapé.

Les icônes de la barre d'outils ne sont désormais plus recherchées dans
"$VIM/bitmaps" mais dans les répertoires "bitmaps" de 'runtimepath'.

Les menus du mode Lignecmd sont à présent utilisés pour l'invite
Appuyez-sur-entrée à la place des menus du mode Normal. Cela fonctionne
généralement mieux et permet d'utiliser le menu Copier de sorte que CTRL-Y
copie la sélection amodale.

L'entrée de menu "Sélectionner police..." a été déplacée du menu Fenêtre au
menu Edition, avec tous les autres réglages du même type.

La valeur par défaut de 'isfname' inclut davantage de caractères pour que "gf"
fonctionne mieux.

La licence OPL ("Open Publication License") est dorénavant utilisée pour toute
la documentation. C'était la moindre des choses compte tenu des parties issues
du livre sur Vim, également publié sous OPL. L'inconvénient est qu'on ne peut
pas obliger une personne qui vend des copies des manuels à donner pour
l'Ouganda.

Après  "ayy  ne pas laisser  ""yy  ou  :let @" = val  écraser le registre "a.
Utilisez le registre sans nom à la place.

MS-DOS : un motif "*.*" correspondait précédemment aussi à un nom de fichier
sans point. C'était incohérent avec les autres versions.

En mode Insertion, "CTRL-O CTRL-\ CTRL-N {cmd}" reste en mode Normal.
Auparavant il faisait revenir en mode Insertion, ce qui était contradictoire
avec la signification de "CTRL-\ CTRL-N", qui est censé ramener en mode Normal
(particulièrement dans ":amenu").

L'utilisation de commandes ":" après un opérateur est maintenant permise. Cela
peut servir à créer une nouvelle commande de mouvement. De fait, ":"
n'interrompt plus un opérateur dont la saisie est en cours.

Pour Amiga, l'argument "-d {periph}" était autorisé. À présent, si compilé
avec la fonctionnalité +diff, cela n'est plus permis. Utilisez "-dev {periph}"
à la place. |-dev|

Les mappages par défaut pour <S-Insert> en mode Insertion insèrent désormais
le texte littéralement, pour éviter les effets de bord causés par des
caractères spéciaux (comme la contre-oblique).

L'utilisation de ":confirm" s'appliquait au reste de la ligne de commande.
Elle s'applique à présent à la première commande qui la suit. Ainsi,
":confirm if x | edit | endif" ne fonctionne plus, utilisez plutôt
":if x | confirm edit | endif". C'était l'intention originale, qui fut déviée
à cause d'une bogue.

==============================================================================
Nouvelles fonctionnalités

REPLIAGE						*new-folding*

Vim est à présent capable d'afficher un tampon avec du texte replié. Cela
permet d'obtenir rapidement un aperçu de la structure du fichier. Il est
également possible de couper/copier/coller du texte replié, par exemple pour
déplacer une fonction à une autre position.

Il existe tout un ensemble de nouvelles commandes et options relatives aux
replis. Voir |folding|.


PARTAGES VERTICAUX DE FENÊTRES				*new-vertsplit*

Les fenêtres peuvent aussi être partagées verticalement. Cela permet d'avoir
des fenêtres côte à côte. C'est notamment très pratique pour comparer deux
fichiers similaires (voir à ce sujet |new-diff-mode|). L'option 'scrollbind'
permet de synchroniser le défilement.

Ces commandes permettent d'opérer un partage vertical :
	:vsplit  ou  "CTRL-W v"  ou  "CTRL-W CTRL-V"	|:vsplit|
	:vnew						|:vnew|
	:vertical {cmd}					|:vertical|
La dernière est un modificateur, qui agit sur n'importe quelle commande de
partage de fenêtre. Par exemple
	:vertical stag zorglub
partagera la fenêtre verticalement et sautera au marqueur "zorglub" dans la
nouvelle fenêtre.

Il est possible de se déplacer horizontalement d'une fenêtre à l'autre avec
les commandes |CTRL-W_h| et |CTRL-W_l|. Les commandes |CTRL-W_k| et |CTRL-W_j|
ont été modifiées pour permettre de sauter à la fenêtre au-dessus/en dessous
de la position du curseur.

Les partages horizontaux et verticaux peuvent être mélangés à votre guise.
Le redimensionnement des fenêtres peut s'effectuer simplement avec la souris,
il suffit de placer le pointeur sur une ligne d'état ou de séparation
verticale et de la tirer. Dans l'IHM graphique, le pointeur de la souris prend
une forme spéciale pour indiquer quand vous pouvez tirer une ligne d'état ou
de séparation verticale.

Pour redimensionner des fenêtres partagées verticalement, utilisez les
commandes |CTRL-W_<| et |CTRL-W_>|. Pour donner à une fenêtre une largeur
maximale, utilisez la commande "CTRL-W |" |CTRL-W_bar|.

Pour forcer une nouvelle fenêtre à utiliser toute la largeur/hauteur de la
fenêtre Vim, deux modificateurs sont disponibles :
	:topleft {cmd}		La nouvelle fenêtre apparaît en haut avec
				toute la largeur ou à gauche avec toute la
				hauteur.
	:botright {cmd}		La nouvelle fenêtre apparaît en bas avec toute
				la largeur ou à droite avec toute la hauteur.
Ils peuvent être combinés avec ":vertical" pour obliger à utiliser des
partages verticaux :
	:vert bot dsplit DEBUG
Ceci ouvrira une fenêtre le plus à droite possible, occupant toute la hauteur
de la fenêtre Vim, avec le curseur sur la première définition de "DEBUG".
   La fenêtre d'aide est ouverte en haut, comme si ":topleft" était utilisé,
si la fenêtre courante fait moins de 80 caractères de large.

Plusieurs options permettent de définir les préférences pour les fenêtres
partagées verticalement. Elles fonctionnent de façon similaires à leurs
équivalents horizontaux :
	HORIZONTAL	VERTICAL  
	'splitbelow'	'splitright'
	'winheight'	'winwidth'
	'winminheight'	'winminwidth'
Il est possible de fixer 'winminwidth' à zéro, afin que les fenêtres
momentanément inutilisées occupent le moins de place possible tout en restant
ouvertes.

La nouvelle option 'eadirection' indique quand 'equalalways' s'applique :
	:set eadirection=both		dans toutes les directions
	:set eadirection=ver		égalise les hauteurs des fenêtres
	:set eadirection=hor		égalise les largeurs des fenêtres
Vous pouvez ainsi préserver les tailles des fenêtres à votre guise lors d'un
partage.

Comme les fenêtres peuvent devenir très étroites avec les partages verticaux,
les lignes de texte dépasseront souvent. L'option 'sidescrolloff' a été
ajoutée pour garder du contexte à gauche et à droite du curseur. L'option
'listchars' a été étendue avec l'élément "precedes", pour afficher par exemple
un '<' quand il y a du texte qui dépasse de l'écran. (Utz-Uwe Haus)

L'argument de ligne de commande "-O" a été ajouté : similaire à "-o" mais
partage les fenêtres verticalement. (Scott Urban)

Commandes ajoutées pour déplacer la fenêtre courante tout en haut
("CTRL-W K"), à droite ("CTRL-W J"), à gauche ("CTRL-W H") ou en bas
("CTRL-W L"). Après son déplacement, la fenêtre utilise la totalité de la
hauteur/largeur de l'écran.

Lorsqu'il n'y a pas assez de place dans la ligne d'état pour à la fois le nom
de fichier et la règle, utilise jusqu'à la moitié de la largeur impartie pour
la règle. Utile pour des fenêtres étroites.


MODE DIFF	 					*new-diff-mode*

En mode diff, Vim affiche les différences entre deux, trois ou quatre
fichiers. Le repliage est utilisé pour masquer les parties des fichiers qui
sont identiques. La surbrillance permet de mettre en valeur les lignes
supprimées ou changées. Voir |diff-mode|.

Le plus simple pour lancer le mode diff est d'invoquer Vim avec `vimdiff fich1
fich2`. Une page de manuel a été créée pour `vimdiff`.

Si Vim est déjà démarré, la commande |:diffsplit| lance le mode diff pour le
fichier courant et un autre fichier. La commande |:diffpatch| lance le mode
diff en utilisant le fichier courant et un fichier de rustine. La commande
|:diffthis| lance le mode diff pour la fenêtre courante.

Les différences peuvent être corrigées avec les commandes |:diffget| et
|:diffput|.

- L'option 'diff' active le mode diff dans une fenêtre.
- La commande |:diffupdate| met les différences à jour.
- L'option 'diffopt' change la façon dont les différences sont affichées.
- L'option 'diffexpr' permet de définir comment les différences doivent être
  obtenues.
- L'option 'patchexpr' permet de définir comment une rustine doit être
  appliquée à un fichier.
- La méthode de repliage "diff" est ajoutée. Lors de l'ouverture d'une fenêtre
  pour le mode diff, 'foldlevel' est fixé à zéro et 'foldenable' est activé,
  pour fermer les replis.
- Les groupes de surbrillance DiffAdd, DiffChange, DiffDelete et DiffText sont
  ajoutés, pour définir la coloration utilisée pour les différences. Les
  valeurs par défaut sont assez laides...
- Unix : `vimdiff` est créé comme un lien symbolique par `make install`.
- Le script "vimdiff.vim", désormais obsolète, est retiré de la distribution.
- Les commandes "[c" et "]c" sont ajoutées pour se déplacer au changement
  suivant/précédent en mode diff.


EVIM : CLIQUER-TAPER					*new-evim*

eVim signifie "Easy Vim" [« Vim facile »]. Il s'agit d'un programme séparé,
mais qui peut aussi être lancé avec `vim -y`.

Il lance Vim avec 'insertmode' activé pour permettre une édition de type
« cliquer-taper ». Le script $VIMRUNTIME/evim.vim est utilisé pour ajouter des
mappages et fixer des options afin d'obtenir un comportement le plus proche
possible de Notepad. Cela ne s'adresse qu'aux personnes qui ne supportent pas
de travailler avec deux modes.

eView se comporte de façon similaire, mais en mode lecture seule.

Dans l'IHM graphique, CTRL-C n'interrompt à présent plus qu'une commande qui
s'exécute, pas une saisie en attente. Cela permet d'utiliser CTRL-C pour
copier du texte dans le presse-papiers.


MANUEL DE L'UTILISATEUR					*new-user-manual*

Un Manuel de l'utilisateur a été ajouté. Il est organisé autour des tâches
d'édition. Il peut se lire comme un livre, du début à la fin. Il constitue une
bonne base pour les débutants qui veulent apprendre Vim. Il aide aussi tous
ceux qui souhaitent se familiariser avec les fonctionnalités les plus utiles.
Il est bien plus facile à lire que le Manuel de référence, mais il omet
volontairement de nombreux détails. Voir |user-manual|.

Le Manuel de l'utilisateur reprend certaines parties du livre de Steve
Oualline sur Vim |frombook|. Il est publié sous licence OPL
|manual-copyright|.

Lorsque la coloration syntaxique n'est pas active, les caractères marquant les
exemples ('>' et '<') et les lignes d'en-tête ('~') dans les fichiers d'aide
sont remplacés par un espace.

Quand la fenêtre d'aide est fermée, la disposition des fenêtres est restaurée
telle qu'elle était avant son ouverture, si cette disposition n'a pas été
modifiée entre temps.
   Quand la fenêtre d'aide est ouverte, elle est placée en haut de la fenêtre
Vim si la fenêtre courante fait moins de 80 caractères et n'occupe pas toute
la largeur.


INDENTATION FLEXIBLE	 				*new-indent-flex*

L'indentation automatique est désormais utilisable pour n'importe quel
langage. Elle fonctionne grâce à un script Vim, ce qui la rend très souple.

La commande ":filetype indent on" active l'utilisation des scripts
d'indentation fournis. Voir à ce sujet le Manuel de l'utilisateur : |30.3|.

L'option 'indentexpr' est évaluée pour obtenir l'indentation d'une ligne.
L'option 'indentkeys' indique quand déclencher la réindentation de la ligne
courante. Normalement, ces options sont fixées depuis un script d'indentation.
   Tout comme les fichiers de syntaxe, les scripts d'indentation sont appelés
à être créés et maintenus par de nombreuses personnes.


MOTIFS DE RECHERCHE ÉTENDUS				*new-searchpat*

Il est désormais possible de correspondre à plusieurs lignes avec un motif.
(en partie par Loic Grenie)

Nouveaux éléments multi-lignes pour les motifs de recherche :
-------------------------------------------------------------
\n		correspond à une fin-de-ligne, également dans []
\_[]		correspond aux caractères de la plage ou à une fin-de-ligne
\_x		correspond à la classe de caractères ou à une fin-de-ligne
\_.		correspond à n'importe quel caractère ou à une fin-de-ligne
\_^		correspond à un début-de-ligne, n'importe où dans l'exprat
\_$		correspond à une fin-de-ligne, n'importe où dans l'exprat

Autres nouveaux éléments pour les motifs de recherche :
-------------------------------------------------------
\c		ignore la casse pour le motif entier
\C		respecte la casse pour le motif entier
\m		'magic' activé pour le motif suivant
\M		'magic' désactivé pour le motif suivant
\v		le motif suivant est « très 'magic' »
\V		le motif suivant est « très 'nomagic' »

\@!		ne correspond pas à l'atome qui précède
		   Exemple : "zorg\(lub\)\@!" correspond à "zorg " mais pas à
		   "zorglub".
\@=		correspond à l'atome qui précède, mais avec une largeur nulle
		   Exemple : "zorg\(lub\)\@=" correspond à "zorg" dans
		   "zorglub".
\@<!		ne correspond pas à l'atome qui précède avant la position
		   courante
\@<=		correspond à l'atome qui précède avant la position courante
\@>		correspond à l'atome qui précède comme sous-expression

\&		correspond uniquement si les branches précédentes et suivantes
		   correspondent

\%[]		correspond optionnellement à une liste d'atomes
		   Exemple : "end\%[if]" correspond à "end", "endi" et
		   "endif".
\%(\)		comme \(\), mais sans créer de post-référence ; on peut donc
		   en utiliser autant qu'on veut, alors que les paires de \(\)
		   sont limitées à neuf
\%^		correspond à un début-de-fichier (Chase Tingley)
\%$		correspond à une fin-de-fichier (Chase Tingley)
\%#		correspond à la position du curseur (Chase Tingley)
\?		exactement comme "\=", mais inutilisable dans une commande "?"

\%23l		correspond dans la ligne 23
\%<23l		correspond avant la ligne 23
\%>23l		correspond après la ligne 23
\%23c, \%<23c, \%>23c   correspond dans/avant/après la colonne 23
\%23v, \%<23v, \%>23v	correspond dans/avant/après la colonne virtuelle 23

Pour les éléments de syntaxe :
------------------------------
\z(...\)	définit la correspondance d'une référence externe (dans un
		   motif "start" de région) (Scott Bigham)
\z1 - \z9	correspond à une référence externe (dans un motif "skip" ou
		   "end" de région) (Scott Bigham)

\zs		utilise la position comme début du motif
\ze		utilise la position comme fin de motif

La limite qui n'autorisait à correspondre que jusqu'à 32 767 fois avec *, \+,
etc., est à présent supprimée.

Les correspondances avec des caractères multi-octets sont supportées. (en
partie par Muraoka Taro)
   "\<" et "\>" ont été modifiés pour fonctionner avec l'UTF-8. (Muraoka Taro)


SUPPORT DE L'UTF-8						*new-utf-8*

Vim peut désormais éditer des fichiers encodés en UTF-8. Il est possible
d'utiliser des caractères allant jusqu'à 31 bits, mais seuls les caractères de
16 bits sont affichés. Vous pouvez saisir jusqu'à deux caractères de
composition, ils surchargent le caractère précédent. Les caractères de
largeur double sont également supportés. Voir |UTF-8|.

Les encodages UCS-2, UCS-4 et UTF-16 sont eux aussi supportés, ils sont
convertis en UTF-8 en interne. Il est possible d'éditer des fichiers Unicode
dans un environnement latin1. Les autres encodages sont convertis avec iconv()
ou un convertisseur externe spécifié par 'charconvert'.

Le support multi-octets engendre beaucoup de nouveaux éléments :
- Option 'encoding' ajoutée : spécifie l'encodage de caractères utilisé en
  interne par Vim. Il peut s'agir de n'importe quel encodage 8-bits, 2-octets
  ou Unicode.
  Elle est initialisée à partir de l'environnement lorsqu'une valeur supportée
  est trouvée.
- Ajout de 'fileencoding' et 'fileencodings' : spécifient l'encodage de
  caractères dans un fichier, similaires à 'fileformat' et 'fileformats'.
  Si 'encoding' vaut "utf-8" et 'fileencodings' "utf-8,latin1", cela fera
  passer automatiquement en latin1 lorsqu'un fichier ne contient pas d'UTF-8
  valide.
- Option 'bomb' ajoutée et support de la détection d'une marque d'encodage
  (BOM) en début de fichier. Cela peut être utilisé en conjonction avec
  "ucs-bom" dans 'fileencodings' pour détecter automatiquement un fichier
  Unicode s'il débute par une marque d'encodage. C'est particulièrement utile
  sur MS-Windows (NT et 2000), qui utilise des fichiers ucs-2le avec une
  marque d'encodage (p. ex., lors d'une exportation du registre).
- Option 'termencoding' ajoutée : spécifie l'encodage utilisé par le
  terminal. Utile pour basculer Vim en mode UTF-8 alors que vous utilisez une
  région linguistique non-Unicode :
	:let &termencoding = &encoding
	:set encoding=utf-8
- Lorsque 'viminfo' contient le drapeau 'c', le fichier viminfo est converti
  de la valeur de 'encoding' utilisée lors de l'enregistrement du fichier à la
  valeur courante.
- Commande ":scriptencoding" ajoutée : convertit les lignes dans un script
  sourcé de l'encodage spécifié à la valeur courante de 'encoding'. Utile pour
  les fichiers de menus.
- Option 'guifontwide' ajoutée pour spécifier une police pour les caractères
  de largeur double.
- Support du coréen pour la détection des classes de caractères. Correction de
  cls() dans "search.c". (Chong-Dae Park)
- Win32 : saisie des caractères multi-octets sans IME. (Alexander Smishlajev)
- Win32 avec MinGW : compilation avec la bibliothèque iconv. (Ron Aaron)
- Win32 avec MSVC : chargement dynamique de la bibliothèque iconv.dll.
  (Muraoka Taro)
- Possibilité de compiler une version avec le support de iconv et des
  caractères multi-octets avec Borland 5.5. (Yasuhiro Matsumoto)
- Option 'delcombine' ajoutée : efface les caractères de composition
  séparément. (Ron Aaron)
- La fonctionnalité "xfontset" n'est plus requise pour "xim". Ce sont
  désormais deux fonctionnalités indépendantes.
- XIM : active XIM lors de la saisie d'une langue (en mode Insertion, pour les
  commandes de recherche et les commandes "f" ou "r"). Désactive XIM quand une
  commande est saisie en mode Normal.
- Quand XIM est actif, affiche "XIM" dans le message de 'showmode'. (Nam
  SungHyun)
- Support de "CursorIM" pour XIM. (Nam SungHyun)
- Drapeau 'm' ajouté à 'formatoptions' : lorsque des lignes sont coupées,
  autorise la césure sur chaque caractère multi-octets, pas seulement sur les
  espaces.
- ":syntax keyword" fonctionne à présent avec les caractères multi-octets.
- Support pour l'inversion de casse des caractères Unicode et leur
  comparaison. (basé sur une rustine de Raphael Finkel)
  La commande "~" utilisée sur des caractères multi-octets qui possèdent une
  troisième casse (« casse de titre ») peut désormais faire basculer entre les
  trois casses. (Raphael Finkel)

Les caractères multi-octets sont désormais supportés pour définir des
digrammes.
   Les digrammes de la RFC1345 ont été ajoutés pour l'Unicode.
   La plupart des commandes du mode Normal qui acceptent un caractère en
argument, comme "r", "t" et "f", acceptent maintenant les digrammes. Le
drapeau 'D' de 'cpoptions' permet de désactiver cela pour rester compatible
Vi.

Ajout des mappages de langue et de l'option 'keymap' pour permettre la saisie
des caractères multi-octets :
- Ajout de la famille de commandes ":lmap" : définit des mappages utilisés
  lors de la saisie de caractères dans la langue du texte. Vaut également pour
  "r", "t", etc. En mode Insertion et Ligne-de-commande, CTRL-^ permet
  d'activer/désactiver l'utilisation de ces mappages.
  CTRL-^ active/désactive également l'utilisation d'une méthode de saisie
  lorsque aucun mappage de langue n'est présent. Cela permet de changer de
  méthode au cours d'une saisie.
- L'argument "<char-123>" passé à ":map" permet de spécifier la valeur octale,
  décimale ou hexadécimale d'un caractère.
- Option 'keymap' ajoutée : charge un fichier de codage clavier. ":lnoremap"
  est utilisé pour définir les mappages pour le codage clavier. La nouvelle
  commande ":loadkeymap" est utilisée dans le fichier de codage clavier.
- Drapeau 'k' ajouté à 'statusline' : valeur de "b:keymap_name" ou 'keymap' si
  cette option est utilisée. Utilise "<langue>" si aucun codage clavier n'est
  chargé et que des mappages de langue sont définis. Affiche également ce
  texte dans la ligne d'état par défaut.
- Options 'iminsert' et 'imsearch' ajoutées : permettent d'activer
  l'utilisation des mappages de langue ou de la méthode de saisie. (Muraoka
  Taro)
  Option 'imcmdline' ajoutée : si activée, la méthode de saisie est toujours
  activée au commencement de l'édition de la ligne de commande. Utile si une
  méthode de saisie utilise des touches mortes pour l'accentuation des
  caractères.
  Option 'imactivatekey' ajoutée pour mieux contrôler XIM. (Muraoka Taro)
- Lors de la saisie d'un mappage qui n'est pas encore fini, le dernier
  caractère est affiché sous le curseur en mode Insertion et
  Ligne-de-commande. Cela rend bien pour les caractères morts.
- L'option 'langmap' reconnaît désormais les caractères multi-octets. Mais les
  mappages ne fonctionnent que pour les caractères 8-bits. C'est utile quand
  vous utilisez l'UTF-8.
- Un curseur différent est utilisé selon que les mappages ":lmap" sont actifs
  ou non. Il est possible de spécifier deux groupes de surbrillance pour
  chaque item de 'guicursor'. Par défaut, "lCursor" et "Cursor" sont
  identiques, l'utilisateur doit définir les couleurs qu'il souhaite utiliser.
  Utilisation de couleurs différentes pour le curseur pour la saisie de
  l'hangul (notamment). (Sung-Hyun Nam)
- 'showmode' affiche "(langue)" quand les mappages de langue sont actifs.
- UTF-8 : "r" fonctionne à présent avec un mappage de langue qui inclut un
  caractère de composition. Cela marche aussi pour "f", qui peut désormais
  trouver un caractère qui inclut un caractère de composition.

Autres ajouts liés aux caractères multi-octets :
- Support des caractères sur deux octets de largeur simple pour l'euc-jp
  (caractères qui débutent par 0x8E). Ajout de ScreenLines2[] pour enregistrer
  le deuxième octet.


SUPPORT MULTILINGUE					*new-multi-lang*

Les messages utilisés par Vim peuvent être traduits. Plusieurs traductions
sont disponibles. gettext est utilisé pour ce faire. Il permet l'ajout d'une
traduction sans avoir à recompiler Vim. |multi-lang| (en partie par Marcin
Dalecki)

Les fichiers de traduction sont placés dans le répertoire "src/po". Le fichier
"src/po/README.txt" contient quelques instructions pour effectuer une
traduction.

Des traductions sont également disponibles pour les menus. Elles utilisent la
nouvelle commande |:menutranslate|. Les traductions sont placées dans le
répertoire de support "lang". Cela permet à un utilisateur d'ajouter une
traduction.

La commande |:language| est ajoutée pour fixer la langue (région
linguistique) pour les messages, la date et l'encodage de caractères. Cela
permet de modifier les langues utilisées par Vim sans toucher aux valeurs
externes.

Le tutoriel de Vim peut utiliser différentes langues. (Eduardo Fernandez)
   Des traductions espagnole (Eduardo Fernandez), italienne (Antonio Colombo),
japonaise (Yasuhiro Matsumoto) et française (Adrien Beau) sont disponibles.
   "vimtutor.bat" ajouté : ce script permet de lancer Vim en ouvrant une copie
du tutoriel sur MS-Windows. (Dan Sharp)

- Variable "v:lang" ajoutée pour permettre d'accéder à la valeur des
  paramètres linguistiques courants. (Marcin Dalecki)
  Idem pour "v:lc_time" et "v:ctype".
- La traduction des dialogues utilisés par les menus est désormais possible.
  Des variables globales "menutrans_" sont utilisées pour cela. ":menutrans
  clear" les supprime.
- Problème "broken locale" XXX résolu. (Marcin Dalecki)
- Ne pas utiliser de noms de couleurs dans les icônes, mais plutôt des valeurs
  RVB. Les noms pourraient être traduits.
- Win32 : support de Global IME ajouté. (Muraoka)
- Win32 : support du chargement dynamique d'IME ajouté.
- ":messages" affiche dans sa sortie qui est le responsable actuel des
  messages ou de leur traduction. C'est utile pour savoir à qui s'adresser
  pour signaler une erreur.
- Argument --disable-nls ajouté pour `configure` : désactive l'utilisation de
  gettext(). (Sung-Hyun Nam)
- Support NLS ajouté pour Win32 avec le compilateur MinGW. (Eduardo Fernandez)
- Si disponible, appeler bind_textdomain_codeset() pour que gettext() traduise
  les messages dans la valeur de 'encoding'. Cela nécessite GNU gettext
  0.10.36 ou supérieur.
- Support gettext pour Win32 ajouté. Cela signifie que les messages seront
  traduits lorsque la région linguistique est définie et que "libintl.dll" est
  trouvé. (Muraoka Taro)
  Fonctionne aussi avec le compilateur MinGW. (Eduardo Fernandez)
  Détecter la langue et fixer $LANG en interne pour obtenir les messages
  traduits dans la langue désirée (si elle est supportée). Utiliser également
  $LANG pour sélectionner une langue. La variable "v:lang" possède une toute
  autre valeur.
- gvimext.dll modifié pour utiliser les messages traduits, si possible.
  (Yasuhiro Matsumoto)


SUPPORT DES GREFFONS					*new-plugins*

Pour rendre le chargement de scripts au démarrage de Vim vraiment simple, le
répertoire de support "plugin" peut être utilisé. Tous les fichiers "*.vim"
qu'il contient seront chargés automatiquement. Pour Unix, le répertoire
"~/.vim/plugin" est utilisé par défaut. L'option 'runtimepath' peut être
modifiée pour rechercher des greffons dans d'autres répertoires.
|load-plugins| |add-plugin|

La commande |:runtime| a été ajoutée pour charger un ou plusieurs fichiers
dans 'runtimepath'.

Greffons standards :
	netrw.vim	édition de fichiers via réseau |new-network-files|
	gzip.vim	édition de fichiers compressés
	explorer.vim	navigation dans les répertoires |new-file-browser|

Support pour les fichiers d'aide locaux ajouté. |add-local-help|
   Lors de la recherche des marqueurs d'aide, tous les fichiers "doc/tags"
dans 'runtimepath' sont utilisés.
   Commande ":helptags" ajoutée : génère un fichier de marqueurs pour un
répertoire d'aide.
   La première ligne de chaque fichier d'aide est automagiquement ajoutée à la
section « AJOUTS LOCAUX » du fichier "help.txt".

Argument <unique> ajouté pour la commande ":map" : n'ajoute un mappage que
s'il n'avait pas été défini auparavant.

Quand la valeur d'une option est affichée alors que 'verbose' est fixé, vous
obtiendrez un message indiquant où l'option a été fixée en dernier. C'est très
utile pour déterminer quel script a fixé la valeur.

La nouvelle commande |:scriptnames| donne la liste de tous les scripts qui ont
été sourcés.

IHM graphique : pour Athena, Motif et GTK+, les icônes de la barre d'outils
sont recherchées dans les répertoires "bitmaps" de 'runtimepath'. Cela vous
permet d'ajouter vos propres icônes.


GREFFONS DE TYPES DE FICHIERS				*new-filetype-plugins*

Un nouveau groupe de fichiers a été ajouté pour définir des paramètres
spécifiques à un type de fichier. Il peut s'agir d'options et de mappages qui
ne sont utilisés que pour une valeur particulière de 'filetype'.

Ces fichiers sont placés dans "$VIMRUNTIME/ftplugin". L'option 'runtimepath'
rend possible l'utilisation de plusieurs greffons en même temps : votre
greffon personnel, celui utilisé pour le système, celui inclus dans la
distribution de Vim, etc.

Pour que cela fonctionne correctement, plusieurs fonctionnalités ont été
ajoutées :
- Ajout des variables "s:", locales à un script. Cela évite que le nom entre
  en conflit avec des variables globales. Elles peuvent être utilisées dans le
  script et dans les fonctions, autocommandes et commandes utilisateur
  définies dans le script. Elles sont conservées entre deux invocations du
  même script. |s:var|
- Ajout de la valeur globale pour les options locales. Cette valeur est
  utilisée à l'ouverture d'un nouveau tampon ou à l'édition d'un nouveau
  fichier. La valeur d'une option fixée dans une ligne de mode ou pour un type
  de fichier spécifique n'est ainsi pas utilisée pour un autre tampon.
  ":set" fixe à la fois les valeurs locale et globale.
  ":setlocal" ne fixe que la valeur locale.
  ":setglobal" fixe ou affiche la valeur globale d'une option locale.
  ":setlocal name<" fixe une option locale à sa valeur globale.
- Ajout d'une valeur locale de tampon pour certaines options globales :
  'equalprg', 'makeprg', 'errorformat', 'grepprg', 'path', 'dictionary',
  'thesaurus', 'tags', 'include' et 'define'. Cela permet de fixer une valeur
  locale pour ces options globales, sans les rendre incompatibles.
- Ajout des mappages et abréviations locales à un tampon : ":map <buffer>".
- Dans un mappage, "<Leader>" permet d'obtenir obtenir la valeur de la
  variable "mapleader". Cela simplifie les mappages qui utilisent "mapleader".
  "<Leader>" vaut "\" par défaut. "<LocalLeader>" est similaire mais avec
  "maplocalleader". Il est destiné à être utilisé pour des mappages locaux à
  un tampon.
- Ajout de <SID> (ID script) pour définir des fonctions et mappages locales à
  un script.
- Ajout de l'argument <script> aux commandes ":noremap" et ":noremenu" : ne
  remappe que les mappages locaux de script. Évite que les mappages provenant
  d'autres scripts n'interfèrent, mais autorise l'utilisation des mappages
  définis dans le script.
- Les commandes utilisateur peuvent être locales à un tampon : ":command
  -buffer".

La nouvelle commande ":setfiletype" est utilisée dans les autocommandes de
détection du type de fichier, pour éviter que 'filetype' ne soit fixé
plusieurs fois.


EXPLORATEUR DE FICHIERS					*new-file-browser*

Lorsqu'un répertoire est édité, le greffon "explorer.vim" listera les
fichiers contenus dans ce répertoire. Pressez <Entree> sur nom de fichier pour
l'éditer. Pressez <Entree> sur un répertoire pour vous y déplacer.

D'autres actions sont possibles, comme l'ouverture d'un fichier dans la
fenêtre d'aperçu, le renommage ou l'effacement de fichiers.

Voir |file-explorer|.


ÉDITION DE FICHIERS VIA RÉSEAU				*new-network-files*

Les fichiers débutant par "scp://", "rcp://", "ftp://" et "http://" sont
reconnus comme des fichiers distants. Vim essaie d'accéder à ces fichiers par
le protocole indiqué. Pour "http://", seule la lecture est possible, pour les
autres, l'écriture est également supportée. Le greffon standard "netrw.vim"
est utilisé pour cela. |netrw|

Commande "gf" modifiée pour fonctionner sur un URL. Elle ne présuppose
désormais plus que le fichier est local à l'ordinateur (cela ne fonctionnait
souvent pas de toute façon, car le chemin complet était nécessaire). "test2"
a été ajusté dans cette optique.

L'utilisation d'un URL dans 'path' est autorisée. Cela permet à ":find
index.html" de fonctionner.

GTK+ : le dépôt d'un URL "http://" et "ftp://" dans Vim est autorisé. Le
greffon "netrw.vim" s'occupe du téléchargement du fichier. (MiKael Berthe)


FENÊTRE D'ÉDITION DE LA LIGNE DE COMMANDE		*new-cmdwin*

La fenêtre command-line permet d'éditer une ligne de commande avec les
commandes des modes Normal et Insertion. Lorsqu'elle est ouverte, elle
contient l'historique. Cela permet de copier des parties des lignes de
commandes précédentes. |cmdwin|

La fenêtre command-line peut être ouverte à partir de la ligne de commande
grâce à la séquence clavier définie par l'option 'cedit' (comme Nvi). Elle
peut aussi être ouverte directement depuis le mode Normal avec "q:", "q/" et
"q?".

L'option 'cmdwinheight' est utilisée pour spécifier la hauteur initiale de la
fenêtre.

En mode Insertion, "CTRL-X CTRL-V" permet de compléter une ligne de commande
Ex, de la même façon que sur la ligne de commande. C'est aussi très utile pour
écrire des scripts Vim !

De plus, il existe un « mode Ex amélioré ». On y entre quand Vim est invoqué
par `exim` ou `vim -E`, ainsi qu'avec la commande "gQ". Il fonctionne comme si
l'utilisation de ":" était répétée, avec la pleine édition et le complètement
de la ligne de commande. (Ulf Carlsson)


MODE DÉBOGAGE						*new-debug-mode*

En mode débogage, les scripts sourcés et les fonctions utilisateur peuvent
être exécutés ligne par ligne. Il est ainsi possible d'exécuter un bloc de
commandes en une seule fois ou pas à pas. |debug-mode|

Des points d'arrêts peuvent être placés pour interrompre l'exécution à une
ligne particulière dans un script ou une fonction utilisateur. |:breakadd|

Le mode débogage peut être activé avec ":debug {cmd}" pour voir ce qui se
passe lors de l'exécution de {cmd}. L'argument |-D| permet de lancer le mode
débogage au démarrage.


CURSEUR EN POSITION VIRTUELLE				*new-virtedit*

Option 'virtualedit' ajoutée : permet le positionnement du curseur à des
endroits où il n'existe en fait aucun caractère en mode Insertion, Visuel ou
pour tous les modes. (Matthias Kramm)
   C'est particulièrement utile en mode Visuel-bloc. Cela permet de
positionner le coin d'une zone n'importe où dans l'écran. (nombreuses
améliorations de Chase Tingley)


INTERFACE DÉBOGUEUR					*new-debug-itf*

Ces fonctionnalités ont été initialement conçues pour fonctionner avec Sun
Visual Workshop. (Gordon Prieur)
   Voir |debugger.txt|, |sign.txt| et |workshop.txt|.

Commande ":sign" ajoutée pour définir et placer des symboles. Ceux-ci peuvent
être représentés par deux caractères ASCII ou une icône. La ligne
correspondante peut être mise en surbrillance. Utile pour afficher des points
d'arrêts et la position courante du Compteur de Programme lors d'un débogage.

Commande |:wsverb| ajoutée pour exécuter des commandes du débogueur.

Support de l'évaluation par bulle : options 'balloondelay' et 'ballooneval'.

Argument "icon=" ajouté pour la commande ":menu". Permet de définir une icône
spécifique pour un élément de la barre d'outils.


COMMUNICATION ENTRE PLUSIEURS VIM			*new-vim-server*

Deux applications Vim peuvent désormais communiquer. Il est possible d'envoyer
des commandes de l'une à l'autre. Cela fonctionne pour X Window et MS-Windows.
|clientserver|

Utilisez "--remote" pour éditer des fichiers dans un Vim en cours d'exécution.
Utilisez "--remote-wait" pour faire la même chose et attendre que l'édition se
termine.
Utilisez "--remote-send" pour envoyer des commandes d'un Vim vers un autre.
Utilisez "--remote-expr" pour évaluer une expression dans un Vim distant.
Utilisez "--serverlist" pour lister les serveurs Vim actuellement disponibles
(uniquement sous X).
   Il existe également des fonctions pour communiquer entre le serveur et le
client. |remote_send()| |remote_expr()|

(La version X Window est l'oeuvre de Flemming Madsen, la version MS-Windows
celle de Paul Moore.)

Le nom du serveur de commandes est ajouté au titre de la fenêtre, afin que
vous puissiez voir le nom du serveur attaché à un Vim.

Le répertoire "OleVim" et les fichiers "SendToVim.exe" et "EditWithVim.exe"
sont supprimés de la distribution de Vim. Il est maintenant possible
d'utiliser `gvim --remote` et `gvim --remote-send`, ce qui est portable.

GTK+ : support pour lancer une application Vim dans une autre fenêtre ajouté.
L'argument --socketid est utilisé. (Neil Bird)


OPTIONS DE TYPE DE TAMPON				*new-buftype*

Options 'buftype' et 'bufhidden' ajoutées. Elles peuvent être fixées pour
définir différents types de tampons. Par exemple :
- 'buftype' = "quickfix" : tampon contenant la liste d'erreurs ;
- 'buftype' = "nofile" et 'bufhidden' = "delete" : tampon de brouillon qui
  sera détruit dès qu'il n'y aura plus de fenêtre pour l'afficher.

'bufhidden' permet de passer outre l'option 'hidden' pour un tampon.

En combinaison avec 'buflisted' et 'swapfile', cela permet de créer
différentes familles de tampons spéciaux. Voir |special-buffers|.


IMPRESSION						*new-printing*

Commande ":hardcopy" ajoutée pour permettre d'imprimer sur papier. Pour
MS-Windows, n'importe quelle imprimante installée peut être utilisée. Pour les
autres systèmes, un fichier PostScript est généré, qui peut être imprimé avec
l'option 'printexpr'. (partie MS-Windows par Vince Negri et Vipin Aravind,
partie PostScript par Vince Negri et Mike Williams)

":hardcopy" supporte les caractères multi-octets. (Muraoka Taro, Yasuhiro
Matsumoto)

Options ajoutées pour configurer l'impression : (Vince Negri)
- 'printoptions' définit divers paramètres ;
- 'printheader' définit le format de l'en-tête. Ajout du champ 'N' à
  'statusline' pour le numéro de page ;
- 'printfont' spécifie le nom et les attributs de la police ;
- 'printdevice' spécifie l'imprimante par défaut pour ":hardcopy!".


PORTAGES						*ports-6*

Portage sur l'Unix OS/390 : (Ralf Schandl)
- nombreux changements pour supporter l'encodage EBCDIC ;
- changement de la définition "Ctrl('x')" en "Ctrl_x".

Support jsbmouse ajouté. (Darren Garth)
Support pour la souris dec dans Unix. (Steve Wall)

Portage sur la version 16-bits de MS-Windows (Windows 3.1x). (Vince Negri)

Portage sur QNX. Support de l'IHM graphique Photon, de la souris, etc. (Julian
Kinraid)

Autorise la compilation croisée de la version Win32 avec Make_ming.mak. (Ron
Aaron)
Support Python ajouté pour compiler avec MinGW. (Ron Aaron)

DOS 32-bits : support du presse-papiers Windows ajouté. (David Kotchan)

Win32 : chargement dynamique de Perl et de Python. Cela permet de compiler
Vim avec ces interfaces et de ne rechercher les DLL correspondants qu'à
l'exécution. (Muraoka Taro)

Compilation de l'IHM graphique Win32 avec Cygwin. Cela compile également
`vimrun`, `dosinst` et `uninstall`. (Gerfried)

Mac : support de la compilation de Vim avec le compilateur libre MPW fourni
par Apple. Mises à jour pour CodeWarrior. (Axel Kielhorn)

Ajout de transtypages et de #ifdef pour commencer le portage de Vim sur Win64.
(George Reilly)


MODE MISE-AU-POINT ÉTENDU				*quickfix-6*

Ajout de la « fenêtre d'erreurs ». Elle contient toutes les erreurs de la
liste d'erreurs courante. Une pression sur <Entree> dans une ligne fera sauter
Vim vers cette ligne (dans une autre fenêtre). Cela facilite la navigation
dans la liste d'erreurs. |quickfix-window|

- |:copen| ouvre la fenêtre mise-au-point ;
- |:cclose| ferme la fenêtre mise-au-point ;
- |:cwindow| ouvre une fenêtre mise-au-point uniquement si des erreurs sont
  reconnues. (Dan Sharp)

- Le mode mise-au-point reconnaît à présent les messages de type
  « information », en plus des types « avertissement » et « erreur ». "%I"
  peut être utilisé pour le début d'un message d'information multi-lignes.
  (Tony Leneis)
- L'argument "%p" peut être utilisé dans 'errorformat' pour obtenir le numéro
  de la colonne désignée par un '^' dans une ligne. (Stefan Roemer)
- Lorsque "%f" est utilisé dans 'errorformat' sur un système DOS/Windows, un
  "C:" sera inclus dans le nom de fichier, même si "%f:" est utilisé.


MODIFICATEURS D'OPÉRATEURS				*new-operator-mod*

L'insertion de "v", "V" ou CTRL-V entre un opérateur et un mouvement oblige
désormais l'opérateur à fonctionner par caractères, lignes ou blocs. |o_v|


CHEMIN DE RECHERCHE					*new-search-path*

Vim peut effectuer une recherche dans une arborescence de répertoire non
seulement descendante mais aussi ascendante. Cela fonctionne pour les options
'path', 'cdpath' et 'tags'. (Ralf Schandl)

"**" est également utilisé pour l'option 'tags'. (Ralf Schandl)

Option 'includeexpr' ajoutée, permet de modifier le nom des fichiers trouvés
par l'option 'include'.
   'includeexpr' est aussi utilisé pour "gf" et "<cfile>" quand le fichier ne
peut pas être trouvé sans modification. Utile pour exécuter "gf" sur le nom
suivant une instruction "include" ou "import".

Option 'cdpath' ajoutée : donne les emplacements où rechercher un argument à
":cd". (Raf)

Option 'suffixesadd' ajoutée : liste de suffixes à ajouter à un nom de fichier
lors d'une recherche avec "gf", "[I", etc.


ENREGISTREMENT DES FICHIERS AMÉLIORÉ			*new-file-writing*

Option 'backupcopy' ajoutée : définit si un fichier doit être copié ou renommé
pour la création d'un fichier de sauvegarde. Utile sur Unix pour accélérer
l'enregistrement d'un fichier ordinaire. Utile sur les autres systèmes pour
préserver les attributs des fichiers et lors de l'édition d'un fichier sur un
système de fichiers Unix.

Option 'autowriteall' ajoutée : fonctionne comme 'autowrite' mais pour plus de
commandes.

Option 'backupskip' ajoutée : liste de motifs de fichiers pour lesquels Vim ne
fait pas de sauvegarde. La valeur par défaut inclut "/tmp/*" sous Unix, pour
fonctionner avec `crontab -e`.

Support des ACL (listes de contrôles d'accès) ajouté sur FreeBSD et Win32. Les
ACL sont copiées du fichier original vers le nouveau fichier (ou vers la
sauvegarde si elle faite par copie).
   Les ACL sont également supportées sur AIX, Solaris et les systèmes
conformes à POSIX. (Tomas Ogren)
   Idem pour SGI.


LISTE DES ARGUMENTS					*new-argument-list*

Le support de la liste des arguments a été étendu. Celle-ci peut être modifiée
pour y inclure les fichiers que vous souhaitez.

La liste des arguments peut désormais être locale à une fenêtre. Elle est
créée avec la commande |:arglocal|. La commande |:argglobal| peut être
utilisée pour revenir à la liste des arguments globale.

La commande |:argdo| exécute une commande sur tous les fichiers de la liste
des arguments.

Les noms de fichiers peuvent être ajoutés à la liste des arguments avec
|:argadd|, ou supprimés avec |:argdelete|.

"##" peut être utilisé comme "#", il est remplacé par tous les noms de la
liste des arguments concaténés. Utile pour faire ":grep zorglub ##".

La commande |:argedit| ajoute un fichier à la liste des arguments et l'édite.
Identique à ":argadd" puis ":edit".


RESTAURATION DE VUES					*new-View*

La commande ":mkview" écrit un script Vim contenant les mappages et paramètres
utilisés pour une fenêtre. Quand le fichier créé est sourcé, la vue de la
fenêtre est restaurée. C'est similaire à ":mksession" pour une fenêtre.
   La Vue contient également la liste des arguments locale et les replis
ouverts, fermés et créés manuellement.

Commande ":loadview" et option 'viewdir' ajoutées : permet la sauvegarde et la
restauration de vues d'un fichier avec des commandes simples. ":mkview 1"
sauvegarde la vue 1 pour le fichier courant, ":loadview 1" la charge à
nouveau. Permet en outre de basculer facilement entre deux vues d'un fichier.
Et de sauvegarder et restaurer les replis manuels et l'état des replis.

Option 'viewoptions' ajoutée pour définir comment ":mkview" doit fonctionner.

":mksession" fonctionne bien à présent avec les partages verticaux. Il a été
largement amélioré et restaure la vue de chaque fenêtre. Il fonctionne bien
également pour les fenêtres d'aperçu et mise-au-point.

L'option 'sessionoptions' est elle aussi utilisée pour ":mkview".
   Items "curdir" et "sesdir" ajoutés à 'sessionoptions'. Permet de choisir la
valeur à laquelle le répertoire courant sera restauré.

Le fichier de session inclut maintenant aussi la (ou les) liste(s) des
arguments.


JEUX DE COULEURS					*new-color-schemes*

Support pour charger un jeu de couleurs. Commande ":colorscheme" ajoutée.
   Les jeux de couleurs disponibles sont automatiquement ajoutés au menu.

Les couleurs devraient à présent être correctement réinitialisées quand
'background' ou 't_Co' est modifié.
   ":highlight clear" ramène toutes les surbrillances à leurs valeurs par
défaut.
   ":syntax reset" ramène les surbrillances de la syntaxe actuelle à leurs
valeurs par défaut.
   Lors d'un ":set bg&", Vim essaiera de deviner la valeur correcte. Cela
permet à un jeu de couleurs de rétablir les surbrillances par défaut.

Quand la coloration syntaxique est activée et qu'un jeu de couleurs a été
défini, le jeu de couleurs est rechargé pour définir les couleurs.


AUTRES ÉLÉMENTS NOUVEAUX				*new-items-6*

Commandes du mode Normal
------------------------
gi		Saute à la marque '^' et passe en mode Insertion. Fonctionne
		aussi quand la marque est juste après la ligne. |gi|

g'm  et  g`m	Saute à une marque sans modifier la liste des sauts. Vous
		pouvez ainsi utiliser g`" pour sauter à la dernière position
		connue dans un fichier sans effets de bords. Également utile
		dans les mappages.

[', [`, ]' et ]`
		Amène le curseur à la marque minuscule précédente/suivante.

g_		Va au dernier caractère non-blanc d'une ligne. (Steve Wall)

Options
-------
'autoread'	Si Vim détecte qu'un fichier a été modifié par une autre
		application, le tampon correspondant sera automatiquement relu
		si aucune modification n'a été effectuée dans Vim.
		Dispose d'une valeur globale et d'une valeur locale. Utilisez
		":setlocal autoread<" pour revenir à l'utilisation de la
		valeur globale de 'autoread'.

'debug'		Si fixé à "msg", affiche des messages d'erreurs qui auraient
		été omis sans cela. Utile pour déboguer 'indentexpr' et
		'foldexpr'.

'lispwords'	Liste de mots utilisée pour l'indentation Lisp. Elle était
		auparavant incluse directement dans le code source. De
		nombreux noms Lisp ont été ajoutés à la valeur par défaut.

'fold...'	Nombreuses nouvelles options pour le repliage.

'modifiable'	Si désactivé, il est impossible d'effectuer des changements
		sur un tampon. Les items "%m" et "%M" de 'statusline'
		affichent un '-'.

'previewwindow' Activé dans la fenêtre d'aperçu. Utilisé dans un fichier de
		session pour signaler une fenêtre comme la fenêtre d'aperçu.

'printfont'
'printexpr'
'printheader'
'printdevice'
'printoptions'	Pour ":hardcopy".

'buflisted'	Fait apparaître/disparaître un tampon de la liste des tampons.

Support de la forme "vim{version}:" pour les lignes de mode, à exécuter
uniquement lorsque la version de Vim est supérieure ou égale à {version}. Les
formes "vim>{version}", "vim<{version}" et "vim={version}" sont également
supportées.

Commandes Ex
------------
:saveas[!] {fich}
		Fonctionne comme ":w {fich}" et ":e #", mais sans recharger le
		fichier et en évitant d'autres effets de bord. |:saveas|

:silent[!] {cmd}
		Exécute une commande silencieusement. Annule le délai qui
		serait produit par l'affichage d'un message. N'effectue pas
		'showmatch'.
		RISC OS : suppression de "!~cmd", qui annulait toute sortie de
		caractères et l'attente d'une pression sur <Entree> après
		l'exécution. Vous pouvez maintenant utiliser ":silent !cmd".
:menu <silent>  Ajoute un menu qui ne retournera pas les commandes Ex en écho.
:map <silent>   Ajoute un mappage qui ne retournera pas les commandes Ex en
		écho.

:checktime	Teste s'il y a des tampons modifiés.

:verbose {cmd}  Fixe 'verbose' pour une commande particulière.

:echomsg {expr}
:echoerr {expr} Comme ":echo", mais mémorise le message dans l'historique.
		(Mark Waggoner)

:grepadd	Fonctionne exactement comme ":grep", mais ajoute dans la liste
		d'erreurs courante plutôt que de définir une nouvelle liste.
		|:grepadd|

:finish		Termine le sourcement d'un fichier. Permet d'ignorer le reste
		d'un script Vim. |:finish|

:leftabove
:aboveleft	Partage la fenêtre courante en haut/à gauche.

:rightbelow
:belowright	Partage la fenêtre courante en bas/à droite.

:first, :bfirst, :ptfirst, etc.
		Alias pour ":rewind". Ils sont plus logiques par rapport à
		":last".

:enew		Édite un nouveau tampon, sans nom. Cette commande est
		nécessaire, car ":edit" réédite le même fichier. (Wall)

:quitall	Comme ":qall".

:match		Définit un motif de surbrillance localement à une fenêtre.
		Permet de mettre en surbrillance un élément de syntaxe dans la
		fenêtre courante sans interférer avec la coloration
		syntaxique.

:menu enable
:menu disable	Commandes pour activer/désactiver des entrées de menu sans les
		supprimer. (Monish Shah)

:windo		Exécute une commande dans toutes les fenêtres.
:bufdo		Exécute une commande dans tous les tampons.

:wincmd		Commande de fenêtrage (CTRL-W). Utile lorsqu'une commande du
		mode Normal ne peut pas être utilisée (p. ex., pour une
		autocommande CursorHold). Voir |CursorHold-example| pour un
		exemple concret.

:lcd  et  :lchdir
		Fixe le répertoire local pour une fenêtre. (Benjie Chen)

:hide {cmd}	Exécute {cmd} avec 'hidden' activé.

:emenu		Exécute une entrée de menu.

:popup		Fait apparaître un menu contextuel.

:redraw		Rafraîchit l'écran même si un script ou une fonction sont en
		cours d'exécution.

:hardcopy	Imprime sur papier.

:compiler	Charge un script Vim qui effectue un paramétrage destiné à un
		compilateur particulier.

:z#		Liste des lignes numérotées. (Bohdan Vlasyuk)

Nouvelles marques
-----------------
'(  et  ')	Début ou fin de la phrase courante. Utile dans les commandes
		Ex.
'{  et  '}	Début ou fin du paragraphe courant. Utile dans les commandes
		Ex.
'.		Position de la dernière modification dans le tampon.
'^		Position où le mode Insertion a été quitté.

Les marques '^' et '.' sont enregistrées dans le fichier viminfo. Cela permet
de sauter à la position de la dernière insertion ou modification.

Nouvelles fonctions
-------------------
argidx()	Renvoie l'index courant dans la liste des arguments.
buflisted()	Teste si le tampon existe et est listé ('buflisted' activé).
cindent()	Renvoie l'indentation utilisée par 'cindent'.
eventhandler()	Renvoie 1 si appelé dans une routine de traitement d'événement
		où les commandes interactives ne peuvent pas être utilisées.
executable()	Teste si un programme ou un script shell peut être exécuté.
filewritable()	Teste si un fichier peut être enregistré. (Ron Aaron)
foldclosed()	Détermine si une ligne est dans un repli fermé. (Johannes
		Zellner)
foldcloseend()	Trouve la fin d'un repli fermé.
foldlevel()	Détermine le niveau de repli d'une ligne. (Johannes Zellner)
foreground()	Amène la fenêtre IHM graphique au premier plan.
getchar()	Attend un caractère de l'utilisateur. Utile pour définir un
		mappage qui accepte un argument.
getcharmod()	Indique le dernier modificateur clavier utilisé.
getbufvar()	Renvoie la valeur d'une option ou d'une variable locale à un
		tampon. (Ron Aaron)
getfsize()	Renvoie la taille d'un fichier.
getwinvar()	Renvoie la valeur d'une option ou d'une variable locale à une
		fenêtre. (Ron Aaron)
globpath()	Trouve les fichiers qui correspondent à un motif d'englobement
		dans une liste de répertoires.
hasmapto()	Teste si un mappage à une chaîne existe déjà.
iconv()		Convertit une chaîne d'un encodage à un autre.
indent()	Renvoie l'indentation d'une ligne. (Ron Aaron)
inputdialog()	Comme input(), mais utilise une boîte de dialogue si possible.
		Ne fonctionne actuellement que pour Win32, Motif, Athena et
		GTK+.
		inputdialog() est utilisé pour les éléments de menu
		"Edit->Settings->Text Width" et "Help->Find..", ainsi que pour
		l'élément FindHelp de la barre d'outils. XXX
		(support Win32 par Thore B. Karlsen)
		(support Win16 par Vince Negri)
inputsecret()	Comme input(), mais sans afficher les caractères saisis.
		(Charles Campbell)
libcall()	Pour Unix. (Neil Bird, Johannes Zellner, Stephen Wall)
libcallnr()	Pour Win32 et Unix.
lispindent()	Renvoie l'indentation utilisée par 'lisp'.
mode()		Renvoie une chaîne qui indique le mode courant.
nextnonblank()	Saute les lignes blanches vers l'avant.
prevnonblank()	Saute les lignes blanches vers l'arrière. Utile dans les
		scripts d'indentation.
resolve()	MS-Windows : renvoie le fich. vers lequel un raccourci pointe.
		Unix : renvoie le fich. vers lequel un lien symbolique pointe.
search()	Recherche un motif.
searchpair()	Recherche une correspondance de couple. Utile dans les scripts
		d'indentation pour trouver le "if" correspondant à un "endif".
setbufvar()	Fixe une option ou une variable locale à un tampon. (Ron
		Aaron)
setwinvar()	Fixe une option ou une variable locale à une fenêtre. (Ron
		Aaron)
stridx()	Recherche la première occurrence d'un chaîne dans une autre.
strridx()	Recherche la dernière occurrence d'un chaîne dans une autre.
tolower()	Passe une chaîne entière en minuscules.
toupper()	Passe une chaîne entière en majuscules.
type()		Teste le type d'une expression.
wincol()	Renvoie la colonne de fenêtre du curseur.
winwidth()	Renvoie la largeur d'une fenêtre. (Johannes Zellner)
winline()	Renvoie la ligne de fenêtre du curseur.

Ajout de l'expansion des accolades dans les noms de variables ou de fonctions.
Cela peut être utilisé dans des noms de variables qui incluent la valeur d'une
option. Ou pour obtenir une forme primitive de tableau. (Vince Negri)

Nouveaux événements d'autocommandes
-----------------------------------
BufWinEnter	Déclenché quand un tampon est affiché dans une fenêtre, après
		la lecture des lignes de mode. Peut être utilisé pour charger
		une vue.
BufWinLeave	Déclenché quand un tampon n'est plus affiché dans une fenêtre,
		ainsi qu'à la sortie de Vim. Peut être utilisé pour
		sauvegarder des vues.
FileChangedRO	Déclenché avant d'effectuer la première modification sur un
		fichier en lecture seule. Peut être utilisé pour automatiser
		un "checkout" sur un système de gestion de versions. (Scott
		Graham)
TermResponse	Déclenché quand le terminal répond à une requête de version.
		La variable interne "v:termresponse" contient le résultat de
		la requête. Peut être utilisé pour s'adapter à la version du
		terminal. (Ronald Schild)
FileReadCmd	Déclenché avant la lecture d'un fichier.
BufReadCmd	Déclenché avant la lecture d'un fichier dans un tampon.
FileWriteCmd	Déclenché avant l'enregistrement d'un fichier.
BufWriteCmd	Déclenché avant l'écriture d'un tampon dans un fichier.
FileAppendCmd	Déclenché avant l'ajout dans un fichier.
FuncUndefined	Déclenché quand une fonction utilisateur n'est pas définie.
		(Ron Aaron)

Les autocommandes pour les événements *Cmd redéfinissent la façon dont un
fichier est lu/enregistré. Ceci est utilisé dans le greffon "netrw.vim" pour
permettre l'édition de fichiers sur un système distant. (Charles Campbell)

Nouveaux fichiers de syntaxe
----------------------------
bdf		Définition de police BDF (Nikolai Weibull)
catalog		SGML catalog (Johannes Zellner) XXX
debchangelog	ChangeLog Debian (Wichert Akkerman)
debcontrol	Debian Control (Wichert Akkerman) XXX
dot		Dot (Markus Mottl)
dsl		Syntaxe DSSSL (Johannes Zellner)
eterm		Configuration Eterm (Nikolai Weibull)
indent		Configuration Indent (Nikolai Weibull)
lftp		LFTP (Nikolai Weibull)
lynx		Configuration Lynx (Doug Kearns)
mush		Code source Mush (Bek Oberin)
natural		Natural (Marko Leipert)
pilrc		Compilateur de ressources Pal (Brian Schau) XXX Palm ?
plm		PL/M (Philippe Coulonges)
povini		Configuration POV-Ray (David Necas)
ratpoison	Configuration/commande Ratpoison (Doug Kearns)
readline	Configuration readline (Nikolai Weibull)
screen		Configuration Screen (Nikolai Weibull)
specman		Specman (Or Freund)
sqlforms	SQL*Forms (Austin Ziegler) XXX
terminfo	terminfo (Nikolai Weibull)
tidy		Configuration Tidy (Doug Kearns)
wget		Configuration Wget (Doug Kearns)

Nombreux fichiers de syntaxe mis à jour pour fonctionner à la fois avec Vim
5.7 et 6.0.

Divers
------
Création d'une interface Ruby. (Shugo Maeda)
   Support du chargement dynamique de l'interface Ruby sur MS-Windows.
(Muraoka Taro)
   Également pour MinGW. (Benoit Cerrina)

Win32 : ajout de la possibilité de charger TCL dynamiquement. (Muraoka Taro)
   Également pour Borland 5.5. (Dan Sharp)

Win32 : lors de l'édition d'un raccourci (fichier ".lnk"), éditer le fichier
vers lequel celui-ci pointe. Mais si 'binary' est activé, éditer plutôt le
fichier de raccourci lui-même. (Yasuhiro Matsumoto)

La commande ":command" accepte à présent un argument "-bar". Il permet à une
commande utilisateur de pouvoir être suivie par "| command".

La fenêtre d'aperçu est désormais aussi utilisée par ces commandes :
- |:pedit| édite le fichier spécifié dans la fenêtre d'aperçu ;
- |:psearch| recherche un mot dans les fichiers inclus, comme |:ijump|, et
  affiche le texte trouvé dans la fenêtre d'aperçu.
Commande "CTRL-W P" ajoutée : permet d'aller à la fenêtre d'aperçu.

MS-DOS et MS-Windows lisent également le fichier vimrc système "$VIM/vimrc".
Essentiellement pour les systèmes NT multi-utilisateurs.

Un double clic de la souris sur un caractère qui possède un appariement avec
"%" sélectionne le texte depuis ce caractère jusqu'à son appariement.
Identique à "v%".

Argument "-S session.vim" : source un fichier de script au démarrage. C'est un
moyen commode pour lancer Vim avec un fichier de session.

Argument "--cmd {commande}" ajouté pour exécuter une commande avant qu'un
fichier vimrc ne soit chargé. (Vince Negri)

Argument "-M" ajouté : désactive 'modifiable' et 'write', ce qui interdit
toute modification et tout enregistrement des fichiers.

Script "runtime/delmenu.vim" ajouté. Sourcez-le pour supprimer tous les menus
préparer le chargement de nouveaux menus. Utile quand 'langmenu' est changé.

Script Perl créé pour filter les messages d'erreurs Perl dans un format
utilisable par le mode mise-au-point. (Joerg Ziefle)

Script "runtime/macros/less.vim" ajouté : simule `less`, mais avec la
coloration syntaxique.

Programme d'installation MS-Windows amélioré : (Jon Merz)
- Le programme Win32 peut désormais créer des raccourcis sur le bureau et
  installer Vim dans le menu Démarrer.
- Il est possible de supprimer d'anciennes entrées "Éditer avec Vim".
- L'exécutable Vim n'est jamais déplacé ni $PATH modifié. Un petit fichier
  batch est créé dans un répertoire de $PATH. Cela réduit les choix à faire.
- Les versions déjà installées de Vim sont détectées et il est d'abord proposé
  de les désinstaller.

Programme de désinstallation MS-Windows amélioré. Il supprime maintenant aussi
les entrées dans le menu Démarrer, les icônes sur le bureau et les fichiers
batch créés. (Jon Merz)
   Il est également possible de ne supprimer qu'une partie de ces éléments. Et
de désenregistrer gvim pour OLE.

Génération d'un installateur automatique pour Vim sur MS-Windows. NSIS est
utilisé. (Jon Merz et al.)

Commande ":filetype detect" ajoutée : essaie de redétecter le type d'un
fichier. Utile lors de la création d'un script shell, après avoir saisi
"#!/bin/csh".

Commande ":augroup! name" ajoutée : supprime un groupe d'autocommandes.
Nécessaire pour le client-serveur "--remote-wait".

Ajout du numéro de version de Vim dans le fichier viminfo, utile pour le
débogage.

==============================================================================
Améliorations						*improvements-6*

Ajout du drapeau 'n' dans 'cpoptions' : si omis, le texte des lignes enroulées
ne débordera pas parmi les numéros de lignes de l'option 'number'. Cela
facilite beaucoup la lecture des lignes enroulées.

En cas d'erreur de format dans un fichier de marqueurs, la position en octets
est rapportée, ce qui permet de localiser l'erreur.

"gf" fonctionne en mode Visuel : le texte sélectionné est interprété comme un
nom de fichier. (Chase Tingley)

Les mappages ambigus sont autorisés. Ainsi, "aa" et "aaa" peuvent tous deux
être mappés, la correspondance la plus longue sera utilisée. Particulièrement
utile pour ":lmap" et 'keymap'.

Chiffrement : la clé doit être saisie deux fois lors du premier chiffrement.
Sans cette confirmation, une erreur de frappe provoquerait la perte
irrémédiable du texte chiffré. (Chase Tingley)

Le titre de la fenêtre indique à présent « VIM » en dernière position. Le nom
du fichier arrive en premier (utile dans une barre des tâches). Un "+" est
ajouté lorsque le fichier est modifié. "=" est ajouté pour un fichier en
lecture seule. "-" est ajouté pour un fichier non-'modifiable'.

En mode Visuel, la taille de la zone sélectionnée est affichée sur
l'emplacement utilisé par 'showcmd'.

Ajout de la variable "b:changedtick" : elle est incrémentée à chaque
changement, annulations comprises. Utile pour accomplir une action sur un
tampon en fonction de son état de modification.

Dans la chaîne de remplacement d'une commande ":s", "\=" permet de remplacer
par le résultat d'une expression. Dans cette expression, la fonction
submatch() peut être utilisée pour accéder aux sous-correspondances.

Si ":qall" est exécuté et qu'il existe un changement dans un tampon en cours
d'édition dans une autre fenêtre, saute à cette fenêtre, au lieu d'éditer ce
tampon dans la fenêtre courante.

Arguments "++enc=" et "++ff=" ajoutés aux commandes de lecture/enregistrement
de fichier, pour obliger à utiliser un encodage et un format de fichier
particulier (options 'encoding' et 'fileformat').
   Variable "v:cmdarg" également ajoutée, à utiliser pour les autocommandes
telles que FileReadCmd, qui lisent/enregistrent le fichier par elles-mêmes.

Lors d'une lecture sur l'entrée standard, le texte est lu une première fois
en mode binaire, puis relu avec sélection automatique de 'fileformat' et
'fileencoding'. Cela permet d'éviter le problème posé par l'impossibilité de
revenir en arrière dans le fichier (p. ex., quand une ligne près de la fin du
fichier se termine par LF au lieu de CR-LF).
   Lors d'une lecture de texte sur l'entrée standard, si le tampon est vide,
il n'est pas marqué comme modifié. Cela permet de quitter sans encombre.

Identifiant ajouté pour de nombreux messages d'erreurs. Cela facilite la
recherche de l'aide sur un message.

Mode Insertion :
- "CTRL-G j" et "CTRL-G k" permettent d'insérer dans la même colonne d'une
  autre ligne. Utile pour éditer un tableau.
- Complètement par thésaurus ajouté : "CTRL-X CTRL-T". (Vince Negri)
- Option 'thesaurus' ajoutée, à utiliser à la place de 'dictionary' pour le
  complètement par thésaurus. Drapeau 's' ajouté dans 'complete'.
- "CTRL-X CTRL-L" en mode Insertion utilise maintenant l'option 'complete'. Il
  examine également les autres tampons pour trouver les lignes
  correspondantes.
- CTRL-R fonctionne à présent aussi en mode Insertion lors d'un complètement
  avec CTRL-X ou CTRL-N. (Neil Bird)
- Lors d'un complètement en mode Insertion, quand le complètement est terminé,
  vérifie s'il y a une correspondance avec les mots de 'cinkeys' ou
  'indentkeys'.

Performance :
- La mise à jour de l'affichage a été rendue plus efficace. Les lignes
  insérées/supprimées pourront être utilisées pour tous les changements,
  annulations/restaurations comprises.
- L'affichage n'est pas rafraîchi lors d'une saisie en mode Insertion. Cela
  accélère beaucoup CTRL-R.
- Vitesse de sortie de l'écran améliorée pour la version Dos 32-bits. (Vince
  Negri)
- Lors du glissement de la souris, les codes souris sont ignorés s'ils sont
  suivis par d'autres codes similaires. Cela accélère considérablement les
  glissements de la souris.
- Utilisation de la mémoire également améliorée : lors d'un appel à u_save
  avec une ligne unique, cette dernière n'est pas mémorisée si elle l'a déjà
  été récemment pour la même annulation.
- Lors de l'utilisation d'un script ajoutant un caractère à la fois, la
  quantité de mémoire allouée augmente régulièrement. Même quand 'undolevels'
  vaut -1. Cela provient de ce que la ligne mémorisée pour "U" n'est jamais
  libérée. À présent, les blocs pour l'annulation sont libérés quand ils sont
  vides.
- IHM graphique et Dos32 : utilisation d'une région de défilement verticale,
  pour accélérer le défilement dans un fenêtre partagée verticalement. Cela
  rend inutile le rafraîchissement de la fenêtre entière.
- Lorsque le défilement n'est pas possible avec les codes du terminal (p. ex.,
  pour une fenêtre partagée verticalement), l'écran est rafraîchi en utilisant
  ScreenLines[]. Cela devrait être plus rapide que d'examiner les lignes avec
  win_line(), particulièrement si la coloration syntaxique est active.
- Le menu Syntaxe est désormais pré-généré par un script séparé. Cela rend le
  chargement du menu 70 % plus rapide. Cela peut diviser par deux le temps de
  démarrage de gvim.
- Lorsque ":help {marqueur}" est exécuté, "help.txt" n'est plus ouvert en
  premier, le saut vers le marqueur d'aide est effectué directement. C'est
  plus rapide et évite un message supplémentaire.
- Win32 : lorsqu'un nom de fichier ne se termine pas par ".lnk", n'essaie pas
  de trouver si c'est un raccourci, cela prend trop de temps.
- Pas de mise à jour de la forme du pointeur de la souris lorsqu'une saisie
  est en cours.
- META[] est changée d'une chaîne en un tableau, cela évite d'utiliser
  strchr() dessus.
- La ligne de commande n'est pas effacée lors de l'ajout de caractères, cela
  évite d'appeler screen_fill alors qu'il n'y a rien à faire.

Robustesse :
- Unix : lors de l'évaluation d'une expression rationnelle, vérifier si
  l'espace libre pour la pile est suffisant. Ceci permet d'éviter un plantage
  sérieux. Ne fonctionne que si le système autorise l'exécution de la fonction
  signal() avec une pile distincte.
- ":source {nomrep}" est interdit. Sur Unix, il est possible de lire un
  répertoire, une telle chose n'a pas de sens en tant que commande Vim.

Sécurité :
- Lors de la lecture ou de l'écriture d'un fichier temporaire, vérifie s'il ne
  s'agit pas d'un lien symbolique. Cela offre une certaine protection contre
  les attaques par lien symbolique.
- Lors de la création d'une copie de fichier de sauvegarde ou d'un fichier
  d'échange, vérifie s'il n'en existe pas déjà un pour éviter une attaque par
  lien symbolique. (Colin Phipps)
- Les options qui sont des expressions sont évaluées dans le bac à sable
  |sandbox|. Si l'option avait été fixée dans une ligne de mode, elle ne peut
  pas causer de tort.
- Il est possible de générer des noms de fichiers temporaires de façon
  sécurisée, en créant un répertoire privé pour les fichiers temporaires.
  Utilisé pour Unix, MS-DOS et OS/2.
- 'makeef' peut être vide, ce qui signifie qu'un nom de fichier généré en
  interne est utilisé. L'ancienne valeur par défaut était "/tmp/file", c'était
  un risque potentiel.
  L'écriture du fichier d'erreurs ('makeef') dans le répertoire courant échoue
  dans un répertoire en lecture seule et pose problème lors de l'utilisation
  de ":grep" sur tous les fichiers. La valeur par défaut est rendue vide pour
  tous les systèmes, afin qu'un fichier temporaire soit utilisé.
- La commande de saut issue d'un fichier de marqueurs est exécutée dans le bac
  à sable, pour une meilleure sécurité.
- Les interfaces Ruby, Tcl et Python ne peuvent pas être utilisées depuis le
  bac à sable. Elles peuvent effectuer des actions dangereuses. L'interface
  Perl reste utilisable, mais elle est limitée à l'environnement Safe. (Donnie
  Smith)

Coloration syntaxique :
- Optimisation de la vitesse en mettant en mémoire la pile d'état pour tout le
  fichier, pas seulement pour la partie qui est affichée. Nécessaire pour les
  replis.
- Ajout de ":syntax sync fromstart" : commence toujours l'analyse syntaxique
  au début du fichier.
- Argument "display" ajouté pour les éléments de syntaxe : n'utilise l'élément
  que lorsque le résultat est affiché. Peut rendre l'analyse syntaxique plus
  rapide pour le texte qui ne doit pas être affiché.
- Lorsque CTRL-L est utilisé, les états mis en mémoire sont supprimés pour
  obliger à analyser le texte à nouveau.
- L'algorithme elfhash est utilisé pour le tableau des mots-clés. Cela devrait
  donner une meilleure distribution et accélérer la recherche des mots-clés.
  (Campbell)
- Le contexte initial ("lc") se voit autorisé avec les motifs "skip" et "end".
  (Scott Bigham)
- Argument "extend" ajouté pour les éléments de syntaxe : annule l'effet de
  l'argument "keepend" d'un élément dans lequel il est contenu. Cela permet à
  certains éléments contenus d'étendre une région, tandis que d'autres ne le
  peuvent pas.
- ":syntax clear" détruit à présent la variable "b:current_syntax". C'est
  logique, puisque aucune syntaxe n'est définie après cette commande.
- Ajout de ":syntax enable" : active la coloration syntaxique sans changer les
  couleurs. Cela permet de spécifier les couleurs dans le fichier vimrc sans
  recourir à "mysyntaxfile".
- Ajout de ":syntax reset" : réinitialise les couleurs.
- Arguments "contains=TOP" et "contains=CONTAINED" ajoutés pour les éléments
  de syntaxe : permettent de définir un élément transparent qui ne se contient
  pas lui-même.
- Argument "containedin" ajouté pour les éléments de syntaxe : permet
  d'ajouter un élément contenu à un élément existant (p. ex., pour mettre en
  surbrillance un nom dans un commentaire).

Sélection amodale :
- Si vous êtes dans la fenêtre command-line, la sélection amodale sera
  utilisée dans les autres fenêtres. Cela permet de copier du texte visible
  dans la fenêtre command-line.
- Support de la sélection amodale sur la ligne de commande dans un terminal.
  Auparavant, ce n'était possible que pour l'IHM graphique.
- Un double clic droit en sélection amodale fera sélectionner un mot entier.
  Un clic droit simple n'utilise pas la sélection par mots lancée par un
  double clic gauche. Cela fonctionne à présent comme en mode Visuel.
- La sélection amodale n'est désormais plus copiée automatiquement dans le
  presse-papiers. Elle obéit aux drapeaux 'a' et 'A' de 'guioptions', ou
  "autoselect" et "autoselectml" de 'clipboard'.
- Commande CTRL-Y ajoutée en mode Lignecmd : copie la sélection amodale dans
  le presse-papiers. Fonctionne également avec l'invite Appuyez-sur-entrée et
  l'invite Plus.
  Les mappages de "runtime/mswin.vim" pour CTRL-Y et CTRL-Z en mode Lignecmd
  sont supprimés pour permettre cette nouvelle utilisation de CTRL-Y.

regmatch() utilise désormais moins d'espace dans la pile, ce qui lui permet de
prendre en charge des motifs complexes sur des textes plus longs.

'isfname' inclut à présent '%' et '#'. La commande `vim rep\#fich`
fonctionnera pour MS-DOS.

Notation ajoutée pour les touches du pavé numérique <kEnter> et de <k0> à
<k9>. Lorsqu'elles ne sont pas mappées, elles se comportent comme leur
équivalent ASCII. (Ivan Wellesz et Vince Negri)
   Plusieurs autres combinaisons xterm sont reconnues : <C-Right>, <C-Left>,
<C-End>, <C-Home>.

L'événement BufUnload est à présent aussi déclenché avant la sortie de Vim. Un
script peut avoir avoir besoin d'effectuer du nettoyage.

Les expressions entre contre-apostrophes sont étendues : `={expr}`. Cela peut
être utilisé aux endroits où l'expansion est effectuée. (Vince Negri)

IHM graphique :
- Drapeaux 'L' et 'R' ajoutés dans 'guioptions' : n'ajoute d'ascenceur gauche
  ou droit que lorsqu'il y a une fenêtre partagée verticalement.
- X11 : quand une couleur ne peut pas être allouée, utilise la correspondance
  la plus proche dans la palette de couleurs. Cela évite que le noir ne soit
  utilisé pour trop d'éléments. (Monish Shah)
  Cela s'applique également aux menus et aux ascenceurs, pour éviter qu'ils ne
  deviennent noirs.
- Win32 et X11 : option 'mouseshape' ajoutée : modifie la forme du pointeur de
  la souris en fonction du mode courant. (Vince Negri)
- Option 'linespace' ajoutée : insère une ligne de pixels entre chaque ligne.
  (Nam)
- La sélection amodale (sans déplacement du curseur) est accessible en
  maintenant Ctrl et Maj enfoncés. (Ivan Wellesz)
- Motif : barre d'outils ajoutée. (Gordon Prieur) Bulles d'aide également.
- Athena : barre d'outils et bulles d'aide ajoutées. (David Harrison -- basé
  sur le travail de Gordon Prieur)
- Option 'toolbar' modifiée pour fonctionner pour Athena et Motif. Il est
  maintenant possible de permuter affichage d'étiqettes et d'icônes à la
  volée. (David Harrison)
- Support des lignes de séparation de menu pour Athena. (David Harrison)
- Athena : ajuste l'icône en forme de flèche utilisée dans un menu déroulant à
  la taille de la police. (David Harrison)
- Win32 : drapeau 'c' ajouté à 'guifont' pour permettre de spécifier le jeu de
  caractères. (Artem Khodush)
- Si aucun argument --enable-xim n'est donné, il est automatiquement utilisé
  lorsqu'une IHM graphique X est demandée. Nécessaire pour le support des
  touches mortes (et la saisie multi-octets).
- Après un dialogue de sélection de fichier, Vim vérifie que les fichiers
  édités n'ont pas été modifiés ou supprimés. Le dialogue Win32 autorise la
  suppression et le renommage de fichiers.
- Motif et Athena : support pour `editres` ajouté. (Martin Dalecki)
- Motif et Athena : ajout de "menuFont" pour permettre de spécifier une police
  ou un jeu de polices pour les menus. Peut aussi être fixé avec le groupe de
  surbrillance Menu. Utile lorsque la région linguistique est différente de
  'encoding'. (David Harrison)
  Si FONTSET_ALWAYS est défini, Vim utilisera toujours un jeu de polices pour
  les menus. Cela devrait éviter des problèmes lors du changement d'une police
  en un jeu de polices. (David Harrison)
- La surbrillance et la police d'une bulle d'aide peuvent être spécifiés avec
  le groupe de surbrillance Tooltip. (David Harrison)
- Les menus du mode Lignecmd peuvent être utilisés à une invite
  Appuyez-sur-entrée. Ils fonctionnent généralement bien, car ils débutent par
  un CTRL-C. Le menu "Copier" marche pour copier la sélection amodale. Il
  permet de copier ":set all" ou ":intro" sans auto-sélection.
- Quand l'IHM graphique est lancée et qu'il n'y a pas de terminal connecté aux
  entrées/sorties standards, les messages d'erreurs sont affichés dans un
  dialogue. Auparavant, ils n'étaient pas affichés du tout.
- Il est désormais possible de fixer 'browsedir' au nom d'un répertoire, à
  utiliser pour le sélecteur de fichier. (Dan Sharp)
- "b:browsefilter" et "g:browsefilter" peuvent être fixés aux filtres utilisés
  pour le sélecteur de fichier. Supporté dans les IHM graphiques Win32 et
  Motif. (Dan Sharp)

X11 :
- Support pour la sélection du presse-papiers en tant que registre "+. Quand
  Vim est quitté ou suspendu, la sélection est copiée dans le tampon de
  coupage 0. Cela devrait permettre le copier-coller avec plus d'applications
  d'une manière standard à X11. (Neil Bird)
- Le presse-papiers X est utilisé dans n'importe quel terminal, pas simplement
  dans un xterm.
  Item "exclude:" ajouté à 'clipboard' : définit un motif à comparer au nom du
  terminal ; en cas de correspondance, aucune connexion ne devrait être
  effectuée au serveur X. La valeur par défaut fonctionne actuellement pour
  les consoles FreeBSD et Linux.
- Quelques messages ajoutés pour quand 'verbose' est non-nul pour rapporter ce
  qui se passe lorsque Vim essaie de se connecter au serveur X. Cela peut
  éventuellement servir à déterminer pourquoi le démarrage est lent.

IHM graphique GTK+ : (en partie par Marcin Dalecki)
- Dans certaines polices, les caractères peuvent dépasser la taille hampe +
  jambage. P. ex., avec "-misc-fixed-*-*-*-*-18-*-*-*-*-*-iso10646-1". Pour
  corriger cela, Vim ajoute un à la hauteur de cellule des caractères.
- Valeur "no" ajoutée dans 'winaltkeys' : Alt + touche n'est pas utilisé comme
  raccourci de menu, lorsque 'wak' est modifié après la création des menus.
- Il devient possible de fixer 'wak' après le lancement de l'IHM graphique.
- Les GC utilisés pour le texte sont recyclés pour réduire les interactions.
- La taille des icônes est ajustée selon le gestionnaire de fenêtres.
- Nettoyage dans la gestion des polices.
- XQueryColor est remplacé par des appels GDK.
- Support Gnome. Détection de Gnome via `configure` et utilisation des
  différentes briques d'interface. Le reste est similaire à GTK+. (Andy Kahn)
  Ce support est désactivé par défaut, car il provoque quelques problèmes.
- Le code spécial pour fourcher d'abord puis démarrer l'IHM graphique est
  supprimé. _exit() est désormais utilisé au lieu de exit(), cela fonctionne
  bien sans recours spéciaux.
- Les boîtes de dialogue s'ouvraient parfois assez loin de gvim. Elles sont à
  présent positionnées dans la fenêtre gvim. (Brent Verner)
- Lorsqu'un fichier est déposé dans Vim, les obliques supplémentaires au début
  du chemin sont supprimées. Le nom du fichier est également raccourci si
  possible.

Motif : (Martin Dalecki)
- La disposition des boîtes de dialogue est améliorée.
- Boîtes de dialogue "Rechercher" et "Remplacer" ajoutés.
- Pour les menus, "iso-8859" est changé en "iso_8859", c'est apparamment
  nécessaire pour Linux.
- Icônes ajoutées pour les boîtes de dialogue, comme pour GTK+.
- Le format XPM est utilisé pour les icônes si possible. Le fichier d'en-tête
  "XpmP.h" de Solaris est utilisé s'il est disponible.
- L'ombrage des éléments de la barre d'outils est modifié pour offrir une
  confirmation visuelle qu'ils sont bien pressés sur un environnement
  non-LessTiff.
- Des briques d'interface sont utilisées pour certains éléments plutôt que des
  fenêtres pour une plus grande vitesse.

Complètement de la ligne de commande :
- Le nom des variables d'environnement est complété. (Mike Steed)
- Plusieurs méthodes de complètement ajoutées pour ":command" : "mapping",
  "function", "expression" et "environment".
- Si une fonction n'accepte pas d'arguments, le complètement ajoutera "()" au
  lieu de "(".

Pour MS-DOS, MS-Windows et OS/2 : les variables d'environnement %VAR% sont
étendues comme $VAR. (Walter Briscoe)

Redirection des messages vers le presse-papiers ":redir @*" et le registre
sans nom ":redir @"". (Wall)

":let @/ = ''" efface le motif de recherche au lieu de le fixer à une chaîne
vide.

Évaluation d'expressions :
- "? :" peut être utilisé comme en C.
- col("$") renvoie la longueur de la ligne du curseur plus un. (Stephen P.
  Wall)
- Argument optionnel supplémentaire pour match(), matchend() et matchstr() :
  décalage pour spécifier où commencer la recherche.
- Le troisième argument de strpart() devient optionnel. (Paul Moore, Zdenek
  Sekera)
- exists() permet aussi de tester des commandes Ex et des autocommandes
  définies.
- Argument supplémentaire ajouté à input() : texte par défaut.
- "v:errmsg" est également fixé lorsque ":silent! {cmd}" est utilisé.
- Variable "v:prevcount" ajoutée : "v:count" pour la commande précédente.
- Variable "v:progname" ajoutée : nom par lequel Vim a été invoqué. (Vince
  Negri)
- Dans le message verbeux sur le retour d'une fonction, affiche aussi la
  valeur de retour.

Cscope :
- Fonction cscope_connection() ajoutée. (Andy Kahn)
- ":cscope kill -1" tue toutes les connexions cscope. (Andy Kahn)
- Option 'cscopepathcomp' ajoutée. (Scott Hauck)
- Commande ":scscope" ajoutée, partage la fenêtre et exécute la commande
  cscope. (Jason Duell)

VMS :
- Les arguments de la ligne de commande sont tous en majuscules. Interprète un
  argument "-X" comme "-x" et "-/X" comme "-X".
- 'makeprg' et 'grepprg' sont fixés à des valeurs pertinentes. (Zoltan
  Arpadffy)
- Le presse-papiers X est utilisé ainsi que le serveur de commandes X. (Zoltan
  Arpadffy)

Macintosh : (Dany St-Amant)
- Un fichier de marqueurs peut utiliser CR, CR-LF ou LF comme fin-de-ligne.
- Carbonisation (du code non-Carbon a été conservé). (une partie du travail a
  été « volée » à Ammon Skidmore)
- Gestion de l'index des éléments de menus améliorée (devrait être plus
  rapide).
- Les commandes issues du support gèrent maintenant '/' dans les noms de
  fichiers (version Mac OS 9).
- Support pour ":winpos" ajouté.
- Les fichiers de marqueurs au format DOS sont également supportés. (Axel
  Kielhorn) XXX Bram
- Support de '~' dans les noms de fichiers pour désigner le répertoire
  personnel.

Options :
- Lorsque "set +=" ou "^=" est utilisé, Vim vérifie s'il y a des éléments en
  double. Ils sont supprimés le cas échéant. (Vince Negri)
- Lorsqu'une option est fixée à une liste de drapeaux, Vim supprime aussi les
  drapeaux en double.
- Si possible, getrlimit() est utilisé pour fixer 'maxmemtot' et 'maxmem'.
  (Pina)
- Item "alpha" ajouté à 'nrformats' : incrémente ou décrémente un caractère
  alphabétique avec CTRL-A et CTRL-X.
- ":set opt&vi" fixe une option à sa valeur Vi par défaut, ":set opt&vim" à sa
  valeur Vim par défaut. C'est utile pour fixer 'cpo' à sa valeur Vim par
  défaut sans connaître les drapeaux qu'il inclut.
- 'scrolloff' s'applique à présent aussi à une ligne longue enroulée qui ne
  rentre pas dans la fenêtre.
- Un plus grand nombre de paramètres d'option est ajouté aux menus par défaut.
- La fenêtre option-window est mise à jour avec les nouvelles options. Elle
  est maintenant un peu plus facile à lire.

Changements internes :
- Séparation des descripteurs de lignes en deux parties : texte d'une part et
  attributs d'autre part. Cela permettra d'utiliser des attributs nécessitant
  plusieurs octets à l'avenir.
- Une fonction qsort() est fournie aux systèmes qui n'en disposent pas.
- L'énorme "switch" utilisé pour les commandes du mode Normal est remplacé par
  un tableau. Cela allège considérablement le code et évite des problèmes avec
  les optimisations de certains compilateurs.
- Une valeur négative est assignée aux touches spéciales, pour éviter qu'elles
  ne soient mélangées avec les caractères Unicode.
- Les variables globales "expand_context" et "expand_pattern" n'étaient pas
  censées être globales. Elles sont maintenant passées à ExpandOne() et à
  toutes les fonctions appelées par celle-ci.
- Le drapeau global "reg_ic" n'est plus utilisé. Il causait des problèmes et
  n'etait pas défini à certains endroits.
- Le tampon interne "stuff" n'est plus utilisé pour les commandes "*", "K",
  CTRL-], etc. Cela évite des problèmes avec les autocommandes.
- Code déplacé de "ex_docmd.c" vers "ex_cmds2.c". Le fichier devenait trop
  gros. Du code est également déplacé de "screen.c" vers "move.c".
- Le tableau des CRC pour le chiffrement n'est plus inclus mais généré. Cela
  réduit notablement la taille des sources. (Matthias Kramm)
- "multibyte.c" est renommé en "mbyte.c" pour rester compatible avec les
  systèmes de fichiers 8.3.
- Le code GTK+ pour ":findhelp" est supprimé, il utilise désormais l'entrée de
  menu ToolBar.FindHelp. XXX
- mch_windexit() est renommé en mch_exit(), mch_init() en mch_early_init() et
  mch_shellinit() en mch_init().

Surbrillance :
- Dans un listage de la commande ":highlight", affiche "xxx" avec la couleur
  de surbrillance.
- Support pour un xterm avec 88 ou 256 couleurs ajouté. Les bons numéros de
  couleurs seront utilisés pour le nom spécifié dans une commande
  ":highlight". (Steve Wall)
- Argument "default" ajouté pour ":highlight". Si inclus, la commande est
  ignorée si la surbrillance pour le groupe était déjà définie.
  Tous les fichiers de syntaxe utilisent à présent ":hi default ..." pour
  permettre à l'utilisateur de définir des couleurs dans son fichier vimrc.
  De même, l'instruction "if did_xxx_syntax_inits" n'est maintenant plus
  nécessaire. Cela simplifie grandement l'utilisation de couleurs autres que
  par défaut pour un langage particulier.
- Script "colortest.vim" ajusté : inclusion des couleurs sur fond normal et
  réduction de taille grâce à l'emploi d'une boucle while. (Rafael
  Garcia-Suarez)
- Nom de couleur "DarkYellow" ajouté (simplement pour l'homogénéité de la
  liste des couleurs standards ; ce n'est pas une belle couleur à utiliser).

Le code retourné pour |t_RV| indique quand un xterm est en mode 8-bits. Le cas
échéant, chaque code clavier est automatiquement converti en sa version
8-bits.

Dans un xterm de niveau de rustine 141 ou supérieur, "OPT_TCAP_QUERY" est
utilisé pour obtenir les codes clavier actuellement utilisés et le nombre de
couleurs pour 't_Co'. Uniquement si |t_RV| est aussi utilisé.

":browse set" fonctionne désormais aussi en mode console. ":browse edit"
émettra un message d'erreur.

":bdelete" et ":bunload" ne rapportent le nombre de tampons
supprimés/déchargés que s'il est supérieur à la valeur de 'report'. Le message
était importun lors de la suppression d'un tampon dans un script.

Liste des sauts :
- Le nombre d'entrées conservées dans la liste des sauts passe de 50 à 100.
- La liste des sauts est à présent enregistrée dans le fichier viminfo. CTRL-O
  peut être utilisé pour sauter à des positions d'une ancienne session
  d'édition.
- Lorsqu'un partage de fenêtre est effectué, la liste des sauts est copiée
  dans la nouvelle fenêtre.

Les marques '[ et '] sont également positionnées pour les commandes "~" et
"r". Ces marques sont maintenant toujours positionnées quand un changement est
effectué avec une commande du mode Normal.

Interface Python : il devient possible de fixer la largeur d'une fenêtre
partagée verticalement. (John Cook)

"=mot" et "=~mot" ajoutés dans 'cinkeys' (également utilisés pour
'indentkeys').

Drapeau 'j' ajouté dans 'cinoptions' : indente un bloc {} dans un bloc () pour
Java. (Johannes Zellner)
   Drapeau 'l' ajouté dans 'cinoptions'. (Anduin Withers)
   Drapeaux 'C', 'U', 'w' and 'm' ajoutés dans 'cinoptions'. (Servatius
Brandt)

Lorsque ":wall" ou ":wqall" est exécuté et qu'un tampon modifié n'a pas de
nom, le numéro de ce tampon est mentionné dans le message d'erreur.

":function Nom" liste la fonction Nom en numérotant les lignes. Cela facilite
le repérage de l'endroit où une erreur est survenue.

En mode Visuel non-bloc, "r" remplace tous les caractères sélectionnés par le
caractère tapé, comme en mode Visuel-bloc.

Lors de l'édition du dernier fichier de la liste des arguments (par n'importe
quelle manipulation), permet de quitter Vim. Auparavant, cela n'était possible
que si les commandes ":next" ou ":last" était utilisées pour atteindre ce
fichier.

Drapeau '1' ajouté dans 'formatoptions'. (Vit Stradal)
   Drapeau 'n' ajouté dans 'formatoptions' : mise en forme des listes
numérotées.

Fichier d'échange :
- Lorsqu'un fichier d'échange existe déjà et que l'utilisateur choisit de le
  supprimer à l'invite ATTENTION, le même nom de fichier d'échange ".swp" est
  réutilisé pour éviter la création d'un fichier ".swo" qui ne sera pas
  toujours trouvé.
- Un avertissement supplémentaire est donné avec le message ATTENTION si
  l'horodatage du fichier est plus récent que celui du fichier d'échange.
- Le message d'information émis pour un fichier existant est raccourci un peu,
  afin de tenir dans un écran de 24 lignes.
- Il est possible de créer un lien symbolique portant le nom d'un fichier
  d'échange et pointant vers un fichier inexistant. Auparavant, Vim se
  rabattait silencieusement sur un autre fichier (lorsque open() utilisé avec
  O_EXCL refusait les liens). Désormais, il vérifie s'il a affaire à un lien
  symbolique. De plus, une vérification supplémentaire est effectuée pour
  tester la présence d'un fichier d'échange juste avant de le créer (cela
  permet de contrer les attaques par liens symboliques).

La commande "g CTRL-G" fonctionne aussi en mode Visuel et compte le nombre de
mots. (Chase Tingley)

Un message d'erreur est émis lorsque l'option 'shell' est utilisée et qu'elle
est vide.

Il est désormais possible d'inclure "%s" dans 'shellpipe'.

Item "uhex" ajouté pour 'display' : affiche les caractères non-imprimables
sous la forme <xx>.
   Affiche les caractères non-imprimables avec le groupe de surbrillance
NonText, également dans la ligne de commande.

Lorsque l'affichage de la valeur d'une option cachée est demandée, Vim indique
qu'elle n'est pas supportée.

Win32 :
- Lorsqu'un raccourci est déposé dans gvim (fichier ".lnk"), le fichier cible
  est édité, pas le lien lui-même. (Yasuhiro Matsumoto)
- Versions C des programmes OpenWithVim et SendToVim ajoutées. (Walter
  Briscoe)
- Si 'shell' vaut "cmd" ou "cmd.exe", 'shellredir' est fixé pour rediriger
  aussi la sortie d'erreur. Les noms de shells Unix sont également reconnus.
- Si $HOMEDRIVE et $HOMEPATH sont définis, ils sont utilisés pour définir
  $HOME. (Craig Barkhouse)

Version console Win32 :
- Les noms de l'utilisateur et du système sont inclus dans la sortie de
  ":version", s'ils sont disponibles. Un fichier "pathdef.c" est généré pour
  cela. (Jon Miner)
- L'icône de la fenêtre utilise l'icône de Vim (uniquement pour Windows 2000).
  Lors de l'exécution d'une commande shell, le titre de la fenêtre est modifié
  pour le mentionner. À la sortie de Vim, la position du curseur est également
  restaurée. (Craig Barkhouse)
- La version console Win32 peut être compilée avec le support OLE. Elle ne
  peut fonctionner que comme client, pas comme serveur OLE.

Option 'errorformat' :
- L'item "%p" de 'errorformat' (colonne de l'erreur indiquée par une ligne de
  caractères) accepte également une ligne de points.
- Item "%v" ajouté pour 'errorformat' : numéro de colonne virtuelle. (Dan
  Sharp)
- Ajout d'une valeur par défaut pour 'errorformat' sous VMS. (Jim Bush)

La commande "p" peut désormais être utilisée en mode Visuel. Elle remplace le
texte sélectionné par le contenu d'un registre.

Les éléments entre chevrons <> dans le message d'accueil sont mis en
surbrillance pour bien souligner qu'ils sont spéciaux.

Quand le drapeau 'c' est utilisé pour ":substitute", il est possible de taper
"l" ["last"] pour remplacer l'occurrence courante puis quitter.

Lors de l'affichage d'un message verbeux sur le sourcement d'un autre fichier,
donne le numéro de ligne.

Lors du redimensionnement de la fenêtre Vim, ne pas utiliser 'equalalways'.
Évite que le rétrécissement de la fenêtre Vim ne provoque l'agrandissement de
fenêtres partagées. C'est d'ailleurs le comportement décrit dans la doc.

Lorsque CTRL-D était utilisé en mode Insertion juste après une
auto-indentation, la saisie de <CR> conservait l'espace blanc restant. À
présent cela fonctionne comme <BS> : l'auto-indentation est supprimée afin
d'éviter qu'une ligne blanche non-vide ne soit produite.

Ajout de l'appel GetHwnd() à l'interface OLE. (Vince Negri)

La commande ":normal" fonctionne désormais dans une routine de traitement
d'événement. Utile lorsqu'un fichier est déposé dans Vim et pour les
autocommandes CursorHold.

Dans la version MS-Windows, ne pas changer le répertoire courant quand une
oblique est employée à la place d'une contre-oblique. L'explorateur de
fichiers devrait toujours utiliser une contre-oblique, tandis que
l'utilisateur peut choisir d'utiliser une oblique quand il tape une ligne de
commande.

Horodatages :
- Lorsqu'un tampon a été modifié en dehors de Vim et regagne le focus, un
  dialogue est donné pour permettre à l'utilisateur de recharger le fichier.
  Cela marche à présent pour toutes les IHM graphiques, pas seulement pour
  MS-Windows. Et aussi pour la console, si Vim a été compilé avec le support
  des dialogues.
- Le contenu du fichier est examiné pour déterminer s'il a vraiment changé, en
  ignorant les situations où seul l'horodatage a été modifié (p. ex., pour un
  fichier issu d'un serveur CVS).
- Lors du contrôle de l'horodatage, Vim vérifie d'abord si la taille du
  fichier a changé, pour éviter une comparaison de fichier le cas échéant.
  Cela va plus vite pour les gros fichiers (journaux notamment) où des
  informations sont régulièrement ajoutées.
- N'émet pas d'avertissement pour un fichier modifié ou supprimé lorsque
  'buftype' est fixé.
- N'émet plus d'avertissement pour un répertoire modifié. Cela fonctionne
  mieux avec l'explorateur de fichier.
- Le contrôle de l'horodatage n'est pratiqué que sur les fichiers non-cachés.
  Les fichiers cachés seront contrôlés s'ils deviennent non-cachés.
- Quand Vim vérifie si un fichier a été modifié en dehors de Vim, il vérifie
  aussi si les permissions du fichiers ont été modifiées. Si le contenu du
  fichier n'a pas changé mais que les permissions l'ont été, un avertissement
  est émis.
- La fréquence des contrôles est limitée, sans quoi le dialogue
  d'avertissement réapparaît en permanence pour un fichier qui grossit petit à
  petit.

Si <M-A> était mappé alors que 'encoding' valait "latin1" et était fixé à
"utf-8", le premier octet d'un caractère multi-octets était aussi mappé. Cela
pouvait être une source de problèmes difficiles à débusquer. Le mappage d'une
partie d'un caractère multi-octets est désormais interdit.

Les scripts en-ligne sont acceptés avec ":python" et ":tcl". (Johannes
Zellner)
   Idem pour ":ruby" et ":perl". (Benoit Cerrina)

":syn include" utilise à présent 'runtimepath' quand le nom du fichier n'est
pas un chemin absolu.

Si 'switchbuf' contient "split" et que la fenêtre courante est vide, elle
n'est pas partagée.

Unix : le signal SIGPWR est capturé pour ":preserve"r les fichiers avant
l'extinction de l'ordinateur.

Interface SNiFF+ : (Anton Leherbauer)
- Correction du code pour les fenêtres, en particulier ce qui concerne le
  traitement des événements.
- Adaptations pour SNiFF+ 4.x ($SNIFF_DIR4).
- Support pour l'ajout de requêtes SNiFF+ lors de l'exécution.

Support de la notation <A-x> comme alias pour <M-x>. C'est naturel dans la
mesure où le nom Alt est devenu très fréquent.

":find" accepte un [quant]ificateur, pour indiquer qu'il faut utiliser la
[quant]-ième correspondance dans 'path'.

La sortie de ":ls" et ":buffers" affiche maintenant des drapeaux
modifié/lecture seule/modifiable. Lorsqu'un tampon est actif, un 'a' est
affiché plutôt que rien. Lorsqu'un tampon n'est pas chargé, rien n'est affiché
(plutôt que '-').

Installation Unix :
- Lors de l'installation des outils, les chemins absolus sont fixés dans les
  scripts d'outils "efm_perl.pl" et "mve.awk". Cela évite à l'utilisateur
  d'éditer ces fichiers à la main.
- Les icônes pour KDE sont installées quand les répertoires existent mais ne
  les contiennent pas déjà.

Ajout de has("win95"), pour permettre la distinction entre MS-Windows 95/98/ME
et NT/2000/XP dans un script Vim.

Après l'exécution d'une commande ":cd", le nouveau répertoire courant est
affiché. (Dan Sharp)

Lorsque ":winpos" est utilisé avant que l'IHM graphique n'ait été ouverte, les
valeurs sont mémorisées jusqu'à ce qu'elle le soit.

Dans la sortie de ":version", "/dyn" est ajouté pour les fonctionnalités
chargées dynamiquement. Cela indique que ces fonctionnalités ne seront pas
toujours opérationnelles.

Sur Windows NT, il est possible qu'un répertoire soit en lecture seule mais
qu'un fichier puisse être supprimé. Lorsqu'une sauvegarde est effectuée par
renommage du fichier, si 'backupdir' n'utilise pas le répertoire courant, le
fichier original sera supprimé, sans qu'il soit possible de créer un nouveau
fichier. Un message d'erreur est émis dans ce cas pour avertir l'utilisateur.

"CTRL-R CTRL-O" sur la ligne de commande fonctionne désormais comme "CTRL-R
CTRL-R", ce qui est cohérent avec le mode Insertion.

==============================================================================
Changements à la compilation				*compile-changes-6*

Tous les fichiers générés ont été déplacés en dehors du répertoire "src".
Cela permet d'identifier rapidement les fichiers qui n'ont pas été écrits à la
main. Les fichiers générés par `configure` sont maintenant dans le répertoire
"src/auto". Sur Unix, les fichiers objets compilés vont dans le répertoire
"objects".

La taille de l'archive source dépassait la limite des 1,4 Mo d'une disquette.
Elle est à présent scindée en deux archives de support et deux archives
source. Une archive compressée en bzip2 est également fournie : elle contient
tous les fichiers source et de support.

Cible "reconfig" ajoutée pour `make`. Elle est utile quand la modification de
certains arguments requiert un vidage du cache, par exemple lors du passage de
GTK+ à Motif. Ajustement de la signification de GUI_INC_LOC et GUI_LIB_LOC
pour les rendre cohérents entre les différentes IHM graphiques.

Fichier "src/README.txt" ajouté pour offrir un aperçu des parties principales
du code source.

Le fichier Makefile d'Unix supporte maintenant pleinement $(DESTDIR) pour
effectuer une installation à un emplacement particulier. Cela remplace la
définition manuelle des variables *ENDLOC.

Le responsable d'une version binaire peut à présent donner son adresse
électronique avec l'argument --with-compiledby de `configure`.

Les fonctionnalités incluses sont désormais regroupées en plusieurs niveaux :
« mini », « légère », « normale », « étendue » et « maxi ». Cela remplace
"min-features" et "max-features". La version « mini » ne supporte pas le
multi-fenêtrage, ce qui allège sensiblement Vim.

Pour la version « mini » ou lorsque FEAT_WINDOWS n'est pas défini : firstwin
et lastwin sont équivalents à curwin et n'utilisent pas w_next ni w_prev.

Fonctionnalité +listcmds ajoutée. Elle peut être exclue pour compiler Vim sans
les commandes qui manipulent la liste des tampons et la liste des arguments
(la liste des tampons elle-même reste présente, étant indispensable).

Fonctionnalité +vreplace ajoutée. Elle est désactivée dans la version
« légère », afin d'éviter un débordement de mémoire de la version Dos 16-bits.

Support GTK+ supprimé pour les versions antérieures à 1.1.16.

Les tests de `configure` concernant l'utilisation des pseudo-terminaux ont été
améliorés. Code emprunté à une version récente de `screen`.

Options ajoutées à `configure` pour installer Vim, Ex et View sous un autre
nom (p. ex., "vim6", "ex6" et "view6").

Argument "--with-global-runtime" ajouté à `configure`. Permet de spécifier le
répertoire global utilisé dans la valeur de 'runtimepath' par défaut.

Argument ajouté à 'configure` pour permettre l'activation de l'interface
SNiFF+.

`configure` inspecte désormais systématiquement les bibliothèques dans
"/usr/local/lib" et les en-têtes dans "/usr/local/include". C'est parfois
utile pour iconv() et gettext().

L'historique de la ligne de commande peut maintenant être (dés)activé via la
fonctionnalité +cmdline_hist, ce qui permet de l'exclure de la version
« mini ».

MS-Windows : fonctions communes à Win16 et Win32 déplacées dans "os_mswin.c".
Évite d'avoir à modifier deux fichiers pour un seul problème. (Vince Negri)

Code commun à "gui_w16.c" et "gui_w32.c" déplacé dans "gui_w48.c". (Vince
Negri)

La liste des sauts constitue maintenant une fonctionnalité propre. Elle est
désactivée pour la version « légère » (Dos 16-bits).

Tous les types dont le nom se terminait par "_t" ont été renommés avec "_T" en
final. Cela évite des problèmes potentiels avec les types du système.

Vérification ajoutée dans `configure` pour tester les fichiers d'en-têtes X11
qui définissent implicitement le type de retour à int. (Steve Wall)

`make doslang` dans le répertoire de plus haut niveau crée une archive avec le
menu et les fichiers ".mo" pour MS-Windows. Les fichiers générés sous Unix
sont utilisés, mais ils devraient fonctionner tout aussi bien sous Windows.

Une grande partie de "os_vms.c" a été fusionnée avec "os_unix.c". Le code
était dupliqué auparavant, ce qui compliquait sa maintenance. (Zoltan
Arpadffy)

Le Makefile de Borland C version 5 a été mis à jour : (Dan Sharp)
- compilation avec Perl corrigée ;
- compilations avec Python et Tcl ajoutées ;
- compilations avec les bibliothèques dynamiques Perl et Python ajoutées ;
- compilation de "uninstal.exe" ajoutée ;
- utilisation de "yes" et "no" pour les options, comme avec "Make_mvc.mak".

Win32 : "Make_gvc.mak" et "Make_ovc.mak" ont été fusionnés en un seul
fichier "Make_ivc.mak". Il est bien plus petit, beaucoup de texte inutile
ayant été supprimé. (Walter Briscoe)
   Ajout de "Make_dvc.mak" pour permettre le débogage des exécutables générés
avec "Make_mvc.mak" dans MS-DevStudio. (Walter Briscoe)

MS-Windows : le gros exécutable `gvim.exe`, qui inclut le support OLE, inclut
désormais aussi le chargement dynamique de Tcl, Perl et Python. ActivePerl
5.6.1, ActivePython 2.1.1 et ActiveTCL 8.3.3 sont utilisés pour cela.

Ajout de AC_EXEEXT dans "configure.in", pour tester si l'exécutable a besoin
de ".exe" pour Cygwin ou MinGW. SUFFIX est renommé EXEEXT dans le Makefile.

Win32 : le chargement de "comdlg32.dll" est différé pour accélérer le
démarrage. Uniquement lorsque VC 6 est utilisé. (Vipin Aravind)

Win32 : l'utilisation d'IME est autorisée en cas de compilation avec Borland.
(Yasuhiro Matsumoto)

Win32 : Makefile ajouté pour compiler "gvimext.dll" avec Borland 5. (Yasuhiro
Matsumoto)

==============================================================================
Corrections de bogues					*bug-fixes-6*

Ignore la casse lors de la recherche des noms de commandes pour "gvim", "ex",
etc. Nécessaire pour les systèmes où la casse des noms de commandes est
ignorée.

Le motif de recherche "[a-c-e]" englobe également 'd', mais pas '-'.

Un double clic dans une autre fenêtre n'était pas reconnu comme un double
clic, car la variable "topline" n'est pas la même. Ajout de
set_mouse_topline().

+La vérification BROKEN_LOCALE XXX ne fonctionnait pas. (Marcin Dalecki)

Lorsque 't_Co' était fixé, les couleurs par défaut restaient les mêmes, et
donc étaient faussées. Elles sont maintenant réinitialisées après une
modification de 't_Co'. (Steve Wall)

Lorsque ":wqall" était invoqué pour quitter, les messages d'enregistrement des
fichiers pouvaient s'écraser et être irrémédiablement perdus.

Lorsque Vim était lancé avec un nom de fichier extrêmement long (aux alentours
de 1024 caractères), il plantait. Plusieurs tests ont été ajoutés afin
d'éviter les débordements de tampon.

CTRL-E pouvait rester bloqué dans un fichier avec des lignes très longues.

":au syntax<Tab>" étendait des noms d'événements alors qu'il aurait dû étendre
des noms de groupes de syntaxe.

Quand l'expansion d'un nom de fichier provoquait une erreur (p. ex., pour
<amatch>), celle-ci était émise même depuis l'intérieur d'un ":if 0".

'cindent' mettait en forme les commentaires C différemment de ce que l'option
'comments' spécifiait. (Steve Wall)

La valeur par défaut de 'grepprg' n'incluait pas le nom du fichier quand un
seul fichier était « greppé ». "/dev/null" est maintenant ajouté sur Unix.

Des problèmes survenaient lorsque la fenêtre option-window était ouverte deux
fois. Le curseur saute à présent à la fenêtre option-window existante.

":sview" et ":view" n'activaient pas 'readonly' pour un tampon existant. C'est
aujourd'hui le cas, sauf si le tampon est aussi édité dans une autre fenêtre.

IHM graphique GTK+ : lorsque 'guioptions' ne contenait pas 'g', l'invite Plus
provoquait la disparition des barres de menus et d'outils, ainsi que le
redimensionnement de la fenêtre (ce qui effaçait le texte). Maintenant, les
menus supérieurs sont systématiquement grisés pour éviter que la barre de
menus ne change de taille ou disparaisse.

Lorsque le tampon courant était réemployé pour un nouveau tampon, les
variables locales de tampon n'étaient pas supprimées.

IHM graphique : quand la souris était tirée au-dessus du sommet d'une fenêtre
et que 'scrolloff' valait 0, il n'y avait pas de défilement vers le bas.
Maintenant, tout événement de la souris est transmis avec mouse_row fixé à -1.

Win32 : la version console ne fonctionnait pas sur telnet à cause de
l'alternance entre deux écrans de console. À présent, un seul écran de console
est utilisé et son contenu est sauvegardé/restauré si nécessaire. (Craig
Barkhouse)

Lors de la lecture d'un fichier, le nombre magique du chiffrement était inclus
dans la taille du fichier. (Antonio Colombo)

La fenêtre mise-au-point contenait des espaces blancs initiaux et des
caractères NUL pour les messages multi-lignes. (David Harrison)

Lors de l'utilisation de `cscope`, les marqueurs redondants étaient supprimés.
Cela posait de nombreux problèmes, car ils était tous listés. Les marqueurs
redondants ne sont maintenant plus supprimés. (David Bustos).

Cscope : le test pour déterminer les correspondances situées dans le tampon
courant échouait parfois, entraînant un saut vers une autre correspondance que
celle choisie. (David Bustos)

Win32 : débordement de tampon lors de l'ajout d'un nom de jeu de caractères
dans une police.

'titlestring' et 'iconstring' évaluaient une expression dans le contexte
courant, qui pouvait être une fonction utilisateur, ce qui entraînait des
conflits de portée pour les variables (locale/globale).

IHM graphique Win32 : le mappage de <M-F> ne marchait pas. Les touches Maj et
Ctrl sont maintenant gérées dans _OnSysChar().

IHM graphique Win32 : avec [Pas de fichier] XXX, ":vs<CR>:q<CR>" laissait une
trainée de pixels jusqu'au centre de la fenêtre. Cela pouvait également se
produire pour la règle. screen_puts() n'effaçait pas le bon caractère dans
ScreenLines[] avec l'astuce pour le gras.

Win32 : ":%!sort|uniq" ne marchait pas, car le nom du fichier d'entrée
touchait le '|'. Un espace est maintenant inséré avant le '|'.

OS/2 : l'expansion des jokers englobait des fichiers inexistants. Cela
provoquait l'échec de ":runtime", et partant de la coloration syntaxique.

Le collage d'un registre contenant CTRL-R sur la ligne de commande pouvait
entraîner une boucle sans fin impossible à interrompre. Il est maintenant
possible de la stopper avec CTRL-C.

Quand 'verbose' était fixé, un message de lecture/enregistrement de fichier
pouvait écraser le message précédent.
   Quand 'verbose' était fixé, the header from ":select" was put after the
last message. Now start a new line. XXX Bram

L'invite Appuyez-sur-entrée était sensible à la réponse de la chaîne 't_RV',
provoquant la disparition messages lors du démarrage.

Lorsque 't_Co' était fixé à 1, les couleurs restaient utilisées. Elles ne le
sont plus désormais que si 't_Co' est supérieur à 1.

Le listage de fonctions avec ":function" n'est pas arrêté lorsque 'q' ou ':' a
été tapé à l'invite Plus.

mkstemp() est utilisé à la place de mktemp() lorsqu'il est disponible, cela
évite un avertissement lors de l'édition de liens sur FreeBSD.

Lors du complètement en mode Insertion, il est possible que b_sfname soit
NULL. Dans ce cas, ne pas le transmettre à printf() pour le message "Examen".

":set runtimepath-=$VIMRUNTIME" ne fonctionnait pas, car l'expansion des
jokers était effectuée après avoir essayé de supprimer la chaîne. À présent,
pour ":set opt+=val" et ":set opt-=val", l'expansion des jokers est faite
avant l'ajout ou la suppression de "val".

L'utilisation de CTRL-V avec la commande "r" sur une sélection Visuel par
blocs insérait un CTRL-V au lieu d'attendre un autre caractère.

Unix : l'ordre des bibliothèque a été modifié : -lXdmcp est placé après -lX11,
et -lSM -lICE après -lXdmcp. Devrait résoudre des problèmes de liens sur HP-UX
10.20.

Ne pas supprimer le dernier "-lm" de la commande d'édition des liens. Cette
dernière pourrait aboutir, mais Vim plantera plus tard lors du démarrage de
l'IHM graphique.

Lorsque le shell renvoie une erreur pour une tentative d'expansion de jokers,
le motif est tout de même inclus quand le drapeau "EW_NOTFOUND" a été
positionné.
   En cas d'échec d'une expansion de jokers par le shell, un message d'erreur
explicite est émis au lieu d'un laconique "1 returned".

L'effacement d'un bloc visuel dont le bord se situe au beau milieu d'une
tabulation laissait le curseur un peu trop à gauche. Cela provoquait un
dysfonctionnement avec "s" (problème de position).

Le symbole livre sterling dans "normal.c" posait problème à certains
compilateurs. 0xA3 est maintenant utilisé en remplacement.

Aucun avertissement n'était émis lors de la modification d'un fichier en
lecture seule lorsque 'insertmode' était activé.

Win32 : lorsque 'shellxquote' était fixé à une double-apostrophe (pour csh
p. ex.), ":!start notepad fichier" ne fonctionnait pas. Les
doubles-apostrophes ajoutées par 'shellxquote' quand ":!start" est utilisé
sont maintenant supprimées. (Pavol Juhas)

L'argument "<f-args>" de ":command" ne considérait pas les tabulations comme
des espaces blancs.
   De même, ne pas considérer les espaces finaux comme des arguments vides.

":e test\\je" éditait "test\je", mais ":next test\\je" éditait "testje". Les
contre-obliques étaient supprimées une fois de trop pour ":next".

VMS : "gf" ne fonctionnait pas correctement. vms_fixfilename() est utilisé
pour traduire le nom du fichier. (Zoltan Arpadffy)

Après un ":hi Normal ctermbg=black ctermfg=white" suivi d'une suspension de
Vim, tous les caractères ne sont pas redessinés avec le fond approprié.

Lorsque `make test` était lancé sans les fonctionnalités +eval ou +windows, de
nombreux tests échouaient. "test1" génère à présent un script pour copier la
sortie correcte, afin qu'un test non fonctionnel soit ignoré.

FreeBSD : l'interface Perl ajoutait "-lc" à la commande d'édition de liens et
Python ajoutait "-pthread". Ces deux bibliothèques ne fonctionnent pas
ensemble, car la libc_r devrait être utilisée. "-lc" est supprimé avec Perl,
n'étant théoriquement pas nécessaire.
   De même, ajout de "-pthread" dans $LIBS, de sorte que les vérifications
pour les fonctions soient faites avec libc_r. Sigaltstack() semble être
manquante dans libc_r.

Les sous-menus du menu Syntaxe devenaient trop longs. Ils ont été réorganisés
et un niveau supplémentaire a été ajouté pour certains langages.

Le "r"emplacement en mode Visuel par blocs ne fonctionnait pas correctement
lorsqu'il incluait partiellement une tabulation. (Matthias Kramm)

Après copie d'un bloc Visuel au milieu duquel certaines des lignes se
terminent, le collage du texte n'insérait pas un bloc. Des espaces sont
maintenant utilisés pour combler les caractères manquants. Ajout de "y_width"
dans la structure yankreg. (Matthias Kramm)

Si une chaîne de substitution dispose d'un caractère multi-octets après une
contre-oblique, seul le premier octet composant ce caractère était ignoré.
(Muraoka Taro)

Win32 : les touches du pavé numérique étaient absentes des entrées termcap
internes.

Lorsqu'un fichier était en lecture seule, ":wa!" ne forçait pas son
enregistrement. (Vince Negri)

Amiga : un nom de fichier débutant par un deux-points était considéré comme
absolu, ce qui n'est plus le cas.
   Amiga : ":pwd" ajoutait une barre oblique pour la racine d'un lecteur.

'ttymouse' n'est pas fixé à "dec" par défaut si compilé avec le support souris
Dec. Cela évite un conflit avec la souris gpm (console Linux).

Les prototypes de l'interface Perl ne fonctionnait pas avec Perl threadé XXX.
Ajout d'une commande `sed` pour supprimer les prototypes dans
"proto/if_perl.pro", ils ont été ajoutés manuellement dans "if_perl.xs".

Lorsque ":w!" réinitialisait l'option 'readonly', le titre et les lignes
d'état n'étaient pas mis à jour.

":args" affichait le fichier courant quand la liste des arguments était vide.
À présent il n'affiche plus rien, comme Vi.

"99:<C-U>echo v:count" affichait "99" en mode Normal, mais "0" en mode Visuel.
"v:count" n'est désormais plus modifié lors de l'exécution d'une commande
intermédiaire.

Amiga : un "requester" s'ouvrait pour "home:" car il existe dans 'runtimepath'
par défaut. Ne plus ouvrir de "requester" lors de la recherche d'un fichier
dans 'path', du sourcement d'un fichier ".vimrc", ou de l'utilisation de
":runtime".

Win16 et Win32 : un nom de fichier de la forme "\chemin\fichier" était
considéré comme absolu. Cela impliquait qu'un même fichier pouvait être
représenté par deux tampons différents.

Win32 : le renommage d'un fichier en une chaîne vide faisait planter Vim. Cela
survenait dans l'explorateur de fichiers ("explorer.vim") lorsque Échap était
saisi à l'invite de renommage.

Win32 : strftime() plantait lorsqu'il était appelé avec une valeur de "-1"
pour la date.

Win32 avec compilateur Borland : mch_FullName() ne fonctionnait pas, rendant
le fichier de marqueurs introuvable.

Cscope sautait parfois vers un marqueur erroné. (David Bustos)

OS/2 : le fichier de marqueurs était introuvable. mch_expand_wildcards()
ajoutait une barre oblique supplémentaire à un nom de répertoire.

Lorsque ">>" était utilisée, la marque `] n'était pas dans la dernière
colonne.

Quand Vim était compilé sans support des menus, "filetype.vim" essayait malgré
tout de sourcer le script "menu.vim". (Rafael Garcia-Suarez)

":ptag" ajoutait un élément à la pile de marqueurs.

IME Win32 : "gr" n'utilisait pas le mode IME.

Dans le message `vim --help`, le terme « Options » était utilisé pour les
arguments de commande. Cela pouvait prêter à confusion, aussi ils ont été
renommés « Arguments ».

Lorsqu'il y avait deux fenêtres et qu'une autocommande BufUnload fermant la
fenêtre n° 1 fermait aussi la fenêtre n° 2, Vim plantait.

Lorsqu'il y avait une fenêtre d'aperçu accompagnée d'une seule autre fenêtre,
":q" ne faisait pas quitter.

En mode Insertion, lors de l'abandon d'un digramme avec Échap, le '?' n'était
pas supprimé.

Sur Unix, glob(".*") renvoyait "." et "..", mais pas sur Windows. Sur Windows,
glob("*") renvoyait en outre les fichiers débutant par un point. Ces
comportements ont été alignés sur ceux d'Unix pour tous les systèmes.

Win32 : suppression de code ancien pour ouvrir une console. `vimrun` est
désormais utilisé et fonctionne bien.

La place occupée par le message d'accueil est calculée de façon précise, afin
de le faire tenir dans une console de 25 lignes. (Craig Barkhouse)

":ptnext" ne fonctionnait pas. Le dernier marqueur utilisé dans la fenêtre
d'aperçu est à présent mémorisé séparément de la pile de marqueurs.

Aucun test n'était effectué pour savoir si "-display" était le dernier
argument. (Wichert Akkerman)

IHM graphique GTK+ : lors du démarrage de gvim sous certaines conditions, une
erreur X se produisait. Ne pas remplacer la routine de traitement d'erreur
lors de la création du presse-papiers xterm. (Wichert Akkerman)

L'ajout d'un espace après un marqueur d'aide rendait ce marqueur introuvable.
P. ex., ":he autoindent ".

Vim essayait d'étendre une URL en un nom de chemin complet. Sur Windows, cela
faisait préfixer le répertoire courant à l'URL. Ajout de vim_isAbsName() et
vim_FullName() afin d'éviter que des fonctions spécifiques à un système
n'aient un comportement différent.

":n *.c", ":cd ..", ":n" n'utilisaient pas le répertoire original du fichier.
Vi ne l'utilise que pour le fichier courant (ce qui s'apparente à un bogue).
Le tampon utilisé pour une entrée dans la liste des arguments est à présent
mémorisé, et son nom est utilisé (ajusté pour ":cd"), sauf s'il est supprimé.

Lorsqu'une touche spéciale était insérée par son nom ("<F8>", quatre
caractères), après un déplacement dans le texte en Insertion, l'annulation ne
fonctionnait pas correctement.

IHM graphique Motif : lorsque le bouton droit de la souris était utilisé, gvim
était bloqué pendant quelques secondes pour certaines personnes (Motif 1.2 ?).
Cela ne se produisait pas en l'absence de menu contextuel. Résolu en ne créant
un menu contextuel que lorsque 'mousemodel' vaut "popup" ou "popup_setpos".
(David Harrison)

Motif : lorsqu'un grand nombre d'éléments de menu était ajouté, le menu Aide
disparaissait mais la barre de menus n'était pas enroulée. La hauteur de la
barre de menu est maintenant définie à la main.

Lorsque <RetArr> était utilisé en mode Insertion pour supprimer une coupure de
ligne ou que "J" était utilisé pour fusionner deux lignes, le curseur pouvait
se retrouver placé au milieu d'un caractère multi-octets. (Muraoka Taro)

Suppression des définitions pour SVR4 dans `configure`. Cela posait problème
pour certains fichiers d'en-têtes X et ne semblait utilisé nulle part.

Quand 'wildignore' était utilisé, 'ignorecase' n'était pas pris en compte pour
une correspondance de marqueur.

Quand 'wildignore' contenait "*~", il était impossible d'éditer un fichier
dont le nom finissait par '~'. À présent, un nom de fichier finissant par '~'
n'est plus interprété comme un motif d'englobement.

Le code souris pour OS/2 est désactivé. Il n'était pratiquement pas utilisé.

":mksession" utilisait toujours le nom du chemin complet pour un tampon, même
lorsque le nom court pouvait suffire.
   ":mkvimrc" et ":mksession" enregistraient 'wildchar' et 'pastetoggle' d'une
manière qui rendait leur restauration aléatoire. Le nom des touches est à
présent utilisé si possible, ce qui améliore la portabilité.

Après le recouvrement d'un fichier puis son abandon, une commande ":edit" ne
redonnait pas de nouvelle invite ATTENTION, qui permettrait de supprimer le
fichier de manière simple. Le drapeau BF_RECOVERED est pour cela réinitialisé
lors du déchargement du tampon.

histdel() pouvait respecter ou ignorer la casse, selon ce qui avait été fait
avant. Il la respecte toujours à présent.

Quand une taille de fenêtre était spécifiée lors du partage d'une fenêtre,
elle respectait les valeurs de 'winheight' et 'winwidth' en cas de
dépassement.

Lors de l'utilisation de "append" ou "insert" dans une définition de fonction,
une ligne débutant par "function" ou "endfunction" était source de confusion.
Les commandes sont à présent reconnues et les lignes sautées jusqu'à un '.'.

À la fin de n'importe quel fichier sourcé ou fonction, need_wait_return
pouvait être réinitialisé, entraînant la disparition des messages lors d'un
rafraîchissement.

À l'intérieur d'une boucle while, le numéro de ligne pour les messages
d'erreurs restait fixe. Il est à présent mémorisé dans la boucle while.

":cd c:/" ne fonctionnait pas sur MS-DOS. mch_isdir() supprimait une oblique
finale.

MS-Windows : getftime() ne fonctionnait pas lorsqu'un répertoire possédait une
oblique ou contre-oblique finale. Il était pour cela impossible d'afficher
l'horodatage des fichiers dans l'explorateur.

Lors de l'expansion des jokers, un répertoire "a/" était rangé après "a-b".
Les séparateurs de chemin sont désormais reconnus lors du tri des fichiers.

Systèmes non-Unix : lorsque "c:/rep/../fich" et "c:/fich" étaient édités, ils
étaient créés comme deux tampons séparés, bien qu'il s'agisse du même fichier.
Maintenant, les noms de fichiers sont complètement étendus, même quand un
chemin absolu contient "..".

"g&" ne répétait pas correctement la dernière substitution.

Lorsque 'clipboard' était fixé à "unnamed", une commande "Y" ne pouvait pas
écrire dans "0. À présent, une copie du registre "0 est effectuée dans le
registre du presse-papiers.

Quand le motif de recherche correspondait de plusieurs façons, il ne pouvait
pas toujours être interrompu avec CTRL-C. Et CTRL-C devait être tapé pour
chaque ligne lorsque 'hlsearch' était activé.
   Si 'incsearch' est activé et que la recherche d'une correspondance est
interrompue, ne pas abandonner la ligne de commande.

Lorsqu'un nom de répertoire était étendu en chemin complet, p. ex. avec
fnamemodify(), une oblique était parfois ajoutée. Ce n'est plus cas
maintenant, ce qui est plus cohérent.

Quand un nom de fichier contient un '!', son utilisation dans une commande
shell pose problème : ":!cat %". Le '!' est désormais protégé pour éviter
cela (il est doublement protégé si 'shell' contient "sh").

Le complètement d'un nom de fichier à hauteur d'un '~' ne fonctionnait pas :
":e toto/~<Tab>".

L'utilisation d'un argument de ":command" contenant '<' et '>' (mais pas pour
signifier un argument spécial) n'était pas traité correctement.

Programme d'installation MS-DOS : sur Win2000, la recherche de "vim.exe" ou
"gvim.exe" dans $PATH ne fonctionnait pas, ils étaient toujours trouvés dans
le répertoire courant. Fichier "vim.exe" renommé dans le répertoire courant
pour éviter ce problème. (Walter Briscoe)

Programme d'installation MS-DOS/Windows : %VIM% est utilisé au lieu d'un
chemin absolu, afin qu'un seul changement soit nécessaire dans le fichier
batch en cas de déplacement de Vim.

Mac : mch_FullName() modifiait l'argument "fname" et n'initialisait pas
toujours le tampon.

MS-DOS : mch_FullName() ne rectifiait pas les barres obliques simples/inverses
dans un nom de fichier absolu.

":echo expand("%:p:h")" avec un nom de fichier vide supprimait un nom de
répertoire sous MS-DOS. Pour Unix, quand le nom de fichier était un
répertoire, le nom du répertoire était supprimé. Pour homogénéiser les choses,
"%:p" ajoute maintenant un séparateur de chemin pour tous les systèmes, mais
aucun sépateur n'est ajouté dans les autres situations.

Unix : lorsqu'un CTRL-C était recherché (qui peut survenir n'importe quand),
si un événement X se produisait (par exemple, presse-papiers modifié) et que
des caractères saisis étaient en attente de traitement, Vim restait bloqué
jusqu'à ce qu'un caractère soit tapé.

MS-DOS, MS-Windows et Amiga : l'expansion de "$ENV/toto" lorsque $ENV se
terminait par un deux-points entraînait la suppression de la barre oblique.

":he \^=" donnait une erreur relative à l'utilisation de "\_". ":he ^=" ne
trouvait pas le marqueur ":set^=". Même ":he :set^=" ne le trouvait pas.

Un fichier de marqueurs nommé "D:/tags" était utilisé comme fichier "tags"
sur "D:". Cela ne fonctionne pas quand le chemin actuel de l'unité "D:" n'est
pas la racine.

Suppression des appels à XtInitializeWidgetClass(), ils ne devraient plus être
nécessaires.

Lors de l'utilisation de dtterm ou de divers autres terminaux couleur, quand
le groupe Normal était fixé à une couleur de fond différente, le fond n'était
pas toujours affiché avec ladite couleur. Ajout d'une vérification pour
l'entrée termcap "ut" : si elle n'existe pas, l'effacement de l'affichage ne
donnera pas la couleur souhaitée pour le fond. Il sera nécessaire de dessiner
chacun des caractères à la place. Vim fonctionne aussi désormais quand
l'entrée termcap "cl" (effacer l'écran) n'existe pas.

Lors de la répétition d'une commande de recherche "/" avec un décalage en
lignes, le "n" utilisait le décalage mais ne rendait pas le mouvement par
lignes. "d/motif/+2" et "dn" ont maintenant été rendus identiques.

Win32 : l'utilisation de ":tearoff" pour menu inexistant provoquait un
plantage.

OpenPTY() ne fonctionnait pas sur Sequent. Ajout d'un test à `configure` pour
getpseudotty().

Indentation C : il apparaît surprenant d'indenter une ligne débutant par ")"
avec le "(" correspondant, mais de ne pas le faire pour une ligne débutant par
"x)".
   En outre, les éléments contenus dans un bloc () sont désormais alignés
(l'indentation la plus faible est utilisée pour cela).

MS-DOS/Windows : ":n *.vim" correspondait également à des fichiers finissant
par '~'.
   mch_expandpath() est déplacé de "os_win16.c" et "os_msdos.c" vers
"misc1.c", puisqu'il est identique dans les deux fichiers.

Macintosh : (Dany St-Amant)
- En mode compatible Vi, les fichiers utilisant CR comme séparateur de ligne
  n'étaient pas lus ;
- Bogue corrigé dans le traitement de Activate/Deactivate Event ;
- Bogue corrigé dans gui_mch_dialog (utilisait un mauvais pointeur).

XIM GDK multi-octets : lors de la composition d'un mot multi-octets, si
l'utilisateur pressait un bouton de la souris, le mot était supprimé. À
présent, il est conservé et la composition prend fin. (Sung-Hyun Nam)

MS-DOS, MS-Windows et OS/2 : lorsque l'entrée standard était lue, la
conversion CR-LF automatique effectuée par la bibliothèque C empêchait la
détection d'un format de fichier "dos" (option 'fileformat').

Lorsque 'smartcase' était activé, les motifs incluant "\S" réinitialisaient
'ignorecase'.

Quand on cliquait avec la souris dans une colonne d'abscisse supérieure à 222,
le curseur revenait directement à la marge de gauche. Impossible d'encoder une
abscisse de souris plus élevée au sein d'un octet. À présent, la valeur est
limitée à 222, ne pas revenir à la colonne 1.

IHM graphique : dans certaines versions, CSI posait problème, soit quand il
était saisi directement, soit en tant que partie d'une séquence multi-octets.

Lorsque des caractères multi-octets étaient utilisés dans une commande
":normal", un octet final de type CSI ou K_SPECIAL posait problème.

Les menus accessibles via 'wildmenu' ne supportaient pas les caractères
multi-octets.

":sleep 10" ne pouvait pas être interrompu sur Windows, contrairement à "gs".
Ces comportements ont été homogénéisés.

Unix : quand l'attente d'un caractère était interrompue par un événement X
(par exemple, pour obtenir le contenu de la sélection), le délai d'attente
n'était pas respecté. Un message pouvait être rapidement recouvert.
Maintenant, le temps restant est calculé.

Windows : le complètement de "\\toto\c$\S" insérait une contre-oblique avant
le '$', ce qui faussait le nom. Il n'y a désormais plus de contre-oblique
insérée.

Lors d'un enregistrement automatique avant un ":make", IObuff était écrasé et
le texte affiché par la suite n'était plus le bon.

Mac : les répertoires "c:/tmp" et "c:/temp" étaient utilisés dans les valeurs
par défaut de 'backupdir' et 'directory', alors qu'ils n'existent pas.

La vérification pour savoir si un nouveau fichier ne se trouve pas sur un
système de fichiers MS-DOS créait temporairement le fichier, ce qui pouvait
être lent. Ne pas faire cette vérification si une autre a déjà eu lieu pour le
fichier d'échange et qu'il est sur un système de fichier MS-DOS.

Ne pas émettre l'avertissement "Modification d'un fichier en lecture seule"
lors d'une lecture depuis l'entrée standard.

Quand Vim possèdait la sélection X11 et qu'il était suspendu, une application
tentant d'utiliser la sélection était bloquée. Quand Vim reprenait, il ne
pouvait plus obtenir la sélection. La sélection est maintenant abandonnée lors
d'une suspension.

"option.h" et "globals.h" étaient inclus dans certains fichiers, alors qu'ils
le sont déjà dans 'vim.h". Déplacement de la définition de EXTERN dans "vim.h"
pour éviter de le faire deux fois.

Lors de la répétition d'un opérateur utilisant un motif de recherche et que ce
motif contenait un caractère ayant une signification particulière sur la ligne
de commande (par exemple CTRL-U), cela ne fonctionnait pas.

Correction de divers problèmes concernant K_SPECIAL (0x80) et CSI (0x9b) en
tant qu'octet dans un caractère (multi-octets). Par exemple, la commande "r",
qui ne pouvait pas être répétée.

Le programme d'installation pour MS-DOS/Windows ne fonctionnait pas toujours
dans un répertoire avec un nom de fichier long, car $VIM et l'exécutable
n'avaient pas nécessairement le même chemin.

Multi-octets :
- L'utilisation d'un atome « tout sauf » [^x] dans une exprat ne fonctionnait
  pas en UTF-8. (Muraoka Taro)
- Lors d'un retour arrière sur des caractères insérés en mode Remplacement,
  les caractères multi-octets n'étaient pas correctement pris en compte.
  (Muraoka Taro)
- Les commandes de recherche "#" et "*" ne fonctionnaient pas pour les
  caractères multi-octets. (Muraoka Taro)
- Le complètement des mots en mode Insertion ne fonctionnait pas avec les
  caractères multi-octets. (Muraoka Taro)
- IHM graphique Athena/Motif : quand 'linespace' est non nul, le curseur est
  trop large (nombre d'octets plutôt que largeur de cellule).
- Quand 'encoding' était changé en "euc-jp" et qu'un caractère était inséré,
  Vim plantait.
- le positionnement du curseur était parfois erroné avec les caractères
  "euc-jp". De même, avec deux caractères ayant 0x8e comme premier octet, seul
  le premier était affiché.
- Lors de l'utilisation de DYNAMIC_ICONV sur Win32, la conversion pouvait
  échouer à cause d'un numéro d'erreur erroné. (Muraoka Taro)
- Faire Alt-x dans l'IHM graphique alors que 'encoding' valait "utf-8" ne
  produisait pas le bon caractère.
- Lors de l'utilisation de la sélection Visuel par bloc et qu'une seule moitié
  d'un caractère à largeur double est sélectionnée, la surbrillance continue
  jusqu'à la fin de la ligne.
- L'effacement en mode Visuel par bloc ne fonctionnait pas correctement lors
  de la suppression de la moitié droite d'un caractère à largeur double.
- Le mode Remplacement de la ligne de commande ne remplaçait que le premier
  octet des caractères multi-octets.
- Le curseur en mode Remplacement (ainsi que Ligne-de-Cmd) était trop petit
  sur les caractères à largeur double.
- Quand un caractère multi-octets contenait un octets 0x80, cela ne
  fonctionnait pas (un octet CSI était utilisé à la place). (Muraoka Taro)
- La sélection par mots avec la souris ne fonctionnait pas.
- La copie d'une sélection amodale contenant des caractères multi-octets ne
  fonctionnait pas.
- Quand 'selection' valait "exclusive", la sélection d'un mot se terminant par
  un caractère multi-octets prenait une surbrillance erronée pour le caractère
  suivant.

Win32 avec "Make_mvc.mak" : la compilation avec debogage activé est
impossible. (Craig Barkhouse)

IHM graphique Win32 : quand "vimrun.exe" est utilisé pour exécuter une
commande externe, ne pas afficher une boîte de message donnant la valeur de
retour, elle est déjà affichée par vimrun. De même, ne pas afficher la valeur
de retour du shell quand ":silent!" est spécifié.

Win32 : sélectionner beaucoup de texte puis utiliser le dialogue
"Rechercher/Remplacer" provoquait un plantage.

IHM graphique X11 : lors de la saisie de caractères avec le 8e bit positionné
par le modificateur Meta/Alt, ce dernier était supprimé sans modifier le
caractère.

La troncature d'un message pour le faire tenir dans la ligne de commande en
utilisant "..." au milieu ne calculait pas toujours correctement la place
disponible.

Impossible de mapper <C-@>. Maintenant, il fonctionne comme <Nul>.

VMS :
- Correction de quelques points avec VAXC. "os_vms_fix.com" contenait des
  caractères CTRL-M étranges. (Zoltan Arpadffy et John W. Hamill)
- Ajout de valeurs par défaut spécifiques à VMS pour les options 'isfname' et
  'isprint'. (Zoltan Arpadffy)
- Suppression de "os_vms_osdef.h", il n'est plus utilisé.

Le greffon "gzip.vim" utilise la commande ":normal", cela ne fonctionne pas
quand on dépose un fichier compressé sur Vim.

Dans quelques rares situations, la recherche binaire d'un marqueur échouait, à
cause d'une variable non initialisée à qui il arrivait de prendre pour valeur
la moitié de la taille du fichier de marqueurs. (Narendran)

Quand les autocommandes BufEnter et BufLeave étaient utilisées pour
(dés)activer un menu, ce dernier n'était pas mis à jour immédiatement.

Lors d'un remplacement avec le drapeau "c"onfirm, le curseur était placé après
la règle plutôt qu'après la question. Avec une chaîne de remplacement longue,
l'écran pouvait défiler et provoquer une invite Plus. Maintenant, le message
est tronqué pour le faire tenir dans la ligne.

Motif : la vérification de `autoconf` pour la bibliothèque Xp ne fonctionnait
pas.

Quand 'verbose' était fixé de façon à donner les lignes pour les fichiers
sourcés, la définition d'une fonction réinitialisait le compteur utilisé pour
l'invite Plus.

Dans le dialogue "Rechercher/Remplacer" de Win32, un caractère '/' posait
problème. Le protéger avec une contre-oblique.

Lancer un shell avec ":sh" différait du lancement d'un shell avec CTRL-Z quand
la suspension ne fonctionne pas. Le lancement est maintenant identique pour
les deux.

Sauter à une marque de fichier alors que le tampon courant est modifié
signalait une erreur "mark non set".

":execute histget("cmd")" déclenchait une boucle sans fin et plantait Vim.
Maintenant, toutes les commandes entrainant une récursion trop profonde sont
interceptées.

Suppression du message d'erreur "Failed to open input method", trop de
personnes le subissaient alors qu'elles ne souhaitaient pas utiliser de
méthode de saisie X.

IHM graphique : quand la fonctionnalité +windows n'était pas compilée, la
barre de défilement commençait sous la ligne numéro un.

Suppression de l'astuce pour la redéfinition des classes de caractères dans
"regexp.c".

IHM graphique Win32 : lorsqu'un dialogue "Rechercher" rendait le focus à la
fenêtre principale, et que le pointeur de la souris se retrouvait masqué par
la saisie, il ne réapparaîssait pas quand il était déplacé vers la fenêtre du
dialogue. (Vince Negri)

Lors d'un enregistrement suivi d'un CTRL-C, aucun caractère n'était
enregistré. En mode Insertion ou à mi-chemin d'une commande, le rejeu de la
séquence ne fonctionnait pas. À présent, le CTRL-C est enregistré.

Quand l'IHM graphique était lancée, les codes de la souris pour DEC et netterm
étaient encore testés.

IHM graphique : lors d'un défilement avec 'writedelay' non nul, le caractère
sous le curseur était affiché au mauvais endroit (une ligne au-dessus/en
dessous avec CTRL-Y/CTRL-E).

Une commande ":normal" réinitialisait 'scrollbind'. Cela posait des problèmes
lors de l'utilisation d'une commande ":normal" dans les autocommandes
d'ouverture d'un fichier.

IHM graphique MS-Windows : une taille en point contenant un point, par exemple
"7.5", n'était pas reconnue. (Muraoka Taro)

Quand 'scrollbind' n'était pas activé, la position courante était tout de même
mémorisée, ce qui est inutile.

GTK+ : plantage quand 'shell' n'existe pas et que ":!ls" est invoqué.
Utilisation de _exit() au lieu de exit() quand le fils n'a pas pu exécuter le
shell.

Multi-octets :
- IHM graphique avec codage multi-octets : un double clic de la souris sur la
  moitié gauche d'un caractère à largeur double plaçait le curseur sur le
  caractère précédent.
- Utilisation de codages multi-octets avec 'selection' valant "exclusive" :
  "vey" et "^Vey" incluait le caractère après le mot.
- Avec un codage multi-octets et un octet initial à la fin de la ligne, la
  ligne précédente était affichée. Et "ga" affichaient des informations
  erronées.
- "gf" n'incluait pas correctement les caractères multi-octets avant le
  curseur. (Muraoka Taro)

IHM graphique : lors d'un défilement, le curseur n'était parfois pas effacé.
Modification des règles de redessinement du curseur après chaque appel à
gui_write() pour ne le mettre à jour qu'à la fin de update_screen() ou lors
d'un placement explicite. Mise à jour aussi des barres de défilement à la fin
de update_screen(), c'est le seul endroit où le texte de la fenêtre a pu subir
un défilement.

Mettre "/*<Tab>texte long" en forme produisait "* <Tab>" dans la ligne
suivante. Maintenant, l'espace avant la tabulation est supprimé.
Mettre "/*<Tab>  texte long" en forme produisait "* <Tab> texte long" dans la
ligne suivante. Maintenant, l'espace après la tabulation est conservé.

À certains endroits, des caractères alphabétiques non ASCII étaient acceptés,
ce qui pouvait poser des problèmes. Par exemple, ":X" (X étant un tel
caractère).

Quand un motif correspondait avec la fin de la ligne, le dernier caractère de
cette ligne était en surbrillance avec 'hlsearch'. Ce qui semblait faux pour
"/\%3c". Mise en surbrillance du caractère juste après la ligne.

Motif : si un dialogue était fermé en cliquant sur le bouton "X" de sa
fenêtre, Vim ne répondait plus.

Lors de l'utilisation de CTRL-X ou CTRL-A sur un nombre avec commençant par de
nombreux zéros, Vim plantait. (Matsumoto)

Avec 'insertmode' activé, le mappage de CTRL-V dans "mswin.vim" ne
fonctionnait pas en mode Sélection. Le mode Insertion n'était pas relancé
après un remplacement de texte. Maintenant, il est possible de mélanger le
mode Insertion et les commandes d'insertion ou de modification. À présent,
CTRL-O cwfoo<Echap> fonctionne également.

Cliquer droit avec la souris dans une autre fenêtre passait en mode Visuel,
mais utilisait la position de départ de la fenêtre courante. Cela causait des
erreurs ml_get quand le nombre de lignes était invalide. Maintenant, la même
fenêtre est conservée.

Quand 'selection' valait "exclusive", "gv" sélectionnait parfois un caractère
de moins.

Quand 'comments' contenait plusieurs triplets début/milieu/fin, les drapeaux
optionnels pouvaient se mélanger. De plus, la partie finale n'était pas
alignée avec la partie centrale.

Un double clic droit en mode Visuel ne mettait pas l'affichage du mode à jour.

Quand le groupe Normal disposait d'un nom de police, ce dernier n'était jamais
utilisé au moment du démarrage. À présent, il est utilisé quand 'guifont' et
'guifontset' sont vides.
   Fixer une police pour un groupe de surbrillance avant le lancement de l'IHM
graphique ne fonctionnait pas.

"make test" n'utilisait pas le nom de l'exécutable Vim généré.

Problèmes avec 'cindent' :
- Un "else" au sein d'une boucle do/while était aligné avec la ligne située en
  dessous de la boucle. (Meikel Brandmeyer)
- une ligne avant une fonction était indentée même quand elle se terminait par
  un point-virgule. (Meikel Brandmeyer)
- 'cindent' donnait une indentation trop importante à une ligne après un "};"
  terminant l'initialisation d'un tableau.
- Support des lignes de déclaration se terminant par "," et "\".  (Meikel
  Brandmeyer)
- Une instruction "case" dans une boucle do/while était utilisée pour indenter
  une ligne après ladite boucle. (Meikel Brandmeyer)
- Lors du saut d'une chaîne dans une ligne avec une double-apostrophe, cela
  pouvait se poursuivre dans la ligne précédente. (Meikel Brandmeyer)

Quand 'list' était activé, 'hlsearch' ne mettait pas en surbrillance une
correspondance située en fin de ligne. Maintenant, le '$' est en surbrillance.

L'élément de menu Coller dans la barre de menu, le menu contextuel et la barre
d'outils étaient tous différents. Ils sont maintenant tous équivalents, à
l'image de ce qui est fait dans "mswin.vim".

st_dev peut être plus petit qu'un "unsigned". Le compilateur peut émettre un
avertissement concernant un débordement. Ajout d'une vérification pour dev_t
dans `configure`.

Athena : fermer un dialogue confirm() tuait Vim.

Divers coquilles dans la documentation. (Matt Dunford)

Interface Python : la définition de _DEBUG pouvait poser des problèmes, elle
est maintenant indéfinie (#undef) explicitement. Le message d'erreur
concernant l'impossibilité de charger la bibliothèque partagée n'était pas
traduit. (Muraoka Taro)

Mac : (Dany St-Amant et Axel Kielhorn)
- Nombreuses corrections.
- Vim consommait 80 % du temps processeur.
- Le projet "os_mac.pbxproj" ne fonctionnait pas, il est déplacé dans un
  sous-répertoire.
- Les priorités des menus dans la barre de menus fonctionnent maintenant.
- Correction d'un problème lors du glissement de la barre de défilement.
- Nettoyage des divers #ifdef.

Unix : quand un signal mortel est intercepté et qu'un deuxième survient,
utiliser _exit() pour quitter brutalement.

L'ordre des menus ne fonctionnait pas correctement avec Athena. (David
Harrison)

Une commande ":make" ou ":grep" avec un argument long pouvait provoquer un
plantage.

Faire ":new fichier" puis choisir "Quitter" lors du message ATTENTION ouvrait
tout de même une nouvelle fenêtre.

GTK+ : lors du lancement de l'IHM graphique alors qu'il y a une erreur dans le
fichier ".vimrc", ne pas présenter l'invite Appuyez-sur-Entrée, puisque le
message est donné dans le terminal.

Quand une erreur se produisait dans un fichier ".vimrc", le terminal dans
lequel gvim était lancé pouvait être effacé. Fixer msg_row dans "main.c" avant
toute écriture de message.

IHM graphique GTK+ et X11 : tenter de lire des caractères fournis par
l'utilisateur (par exemple avec input()) avant que la fenêtre Vim soit ouverte
provoquait un blocage de Vim quand il était démarré depuis le bureau.

OS/390 utilise des pointeurs sur 31 bits. Cela perturbe certains calculs avec
MAX_COL. Réduction de MAX_COL d'un bit pour OS/390. (Ralf Schandl)

Lors de la définition d'une fonction alors qu'elle existait déjà, Vim
n'informait pas de son existence avant d'avoir fini de la saisir. À présent,
c'est immédiat pendant la saisie.

Le message mémorisé pour un affichage différé (keep_msg) pointait parfois vers
un tampon générique, qui pouvait être modifié au moment où le message était
affiché. Maintenant, une copie du message est réalisée.

Lors de l'utilisation de caractères multi-octets dans un menu et que l'octet
final était une contre-oblique, le menu n'était pas créé correctement.
(Muraoka Taro)
   L'utilisation d'un caractère multi-octets dont l'octet final était une
contre-oblique dans une chaîne de substitution ne fonctionnait pas. (Muraoka
Taro)

Quand 't_Co' était fixé dans un fichier vimrc, puis fixé automatiquement selon
la réponse du xterm, le fixer à nouveau manuellement provoquait un plantage.

Quand la récupération de la valeur d'une option chaîne n'est pas supportée, le
nombre zéro est retourné. Cela perturbe les tests tels que "&enc == "asdf". À
présent, une chaîne vide est retournée pour les options chaînes.

Plantage au démarrage de l'IHM GTK+, quand 'notitle' était utilisé dans le
vimrc, puis 'title' fixé dans le gvimrc et que l'IHM graphique était lancée
avec ":gui". Fermeture accidentelle de la connexion avec le serveur X.

Il était nécessaire de taper <Entree> après la sélection d'une entrée pour
":ts".

Le message issu de ":cn" était parfois effacé. Maintenant, il est affiché
après le rafraîchissement s'il ne provoque pas de défilement (il est tronqué
si nécessaire).

"hangulin.c" ne compilait pas avec l'IHM graphique désactivée. Ce fichier est
maintenant ignoré s'il ne peut pas fonctionner.

Lors du réglage d'une option termcap telle que 't_CO', la valeur pouvait être
affichée comme étant une touche normale avec un modificateur, par exemple
"<M-=>". XXX t_Co ?

Lors de l'expansion de la liste des arguments, les entrées étant des
répertoires n'étaient pas incluses. Cela empêchait "vim c:/" d'ouvrir
l'explorateur de fichiers.

":syn match sd "^" nextgroup=asdf" sautait la première colonne et
correspondait avec groupe suiveur dans la deuxième colonne.

IHM graphique : avec 'lazyredraw' activé, 'showmatch' ne fonctionnait pas. Il
fallait vider la sortie.

Ne pas définir le termcode <NetMouse> dans un xterm, cela réduit les problèmes
quand quelqu'un tape <Echap> } en mode Insertion. XXX termcode ?

slash_adjust() fonctionne maintenant correctement pour les caractères
multi-octets. (Yasuhiro Matsumoto)
   L'utilisation d'un nom de fichier encodé en Big5 pour des autocommandes ne
fonctionnait pas (contre-oblique dans l'octet final). (Yasuhiro Matsumoto)

MS-DOS et MS-Windows : l'expansion de "*.vim" correspondait aussi avec
"fichier.vimabc". L'expansion est maintenant similaire à celle d'Unix pour
éviter des problèmes avec les fonctions "dir" de Windows. Fusion des fonctions
Dos et Win32.

Win32 : Gvimext ne pouvait pas éditer plus de quelques fichiers à la fois, la
longueur de l'argument était limité.

`ls -1 * | xargs vim` fonctionnait, mais la saisie était en mode cooked. Elle
passe maintenant en mode raw quand c'est nécessaire. Utilisation de dup() pour
copier le descripteur de fichier vers stdin pour que les commandes du shell
fonctionnent. Un programme externe n'est plus requis pour cela.

Avec ":filetype off", l'utilisation de ftplugin et indent était désactivée en
même temps. Cela n'est pas adapté, fixer 'filetype' manuellement peut en avoir
besoin.

IHM graphique : l'écriture d'un caractère double-octets pouvait être scindé en
deux appels à gui_write(), ce qui ne fonctionnait pas. À présent, le tampon de
sortie est vidé avant qu'il ne soit plein.

Avec 'laststatus' activé et 'cmdheight' supérieur ou égal à 2, le message
d'accueil pouvait recouvrir la ligne d'état.
   La commande ":intro" ne fonctionnait pas quand il n'y avait pas assez de
place.

La configuration avec Ruby échouait avec les versions récentes de Ruby.
(Akinori Musha)

Athena : quand le répertoire dans le lequel Vim a été démarré était effacé,
l'utilisation de l'explorateur de fichiers faisait quitter Vim. Suppression de
l'appel à XtAppError().

Avec autoconf 2.50, UNIX n'était pas défini. Déplacement du commentaire
"#undef UNIX" sur une ligne séparée.

Win32 : _OnWindowPosChanging() désactivé pour que la maximisation fonctionne
mieux.

Win32 : la compilation avec VC 4.0 ne fonctionnait pas. (Walter Briscoe)

Athena :
- le problème de suppression des menus est finalement résolu. (David Harrison)
- Athena : lors de la fermeture du dialogue confirm(), cela se passait comme
  si OK était pressé plutôt que Annuler.

L'explorateur de fichiers ne fonctionnait pas en mode compatible, à cause des
continuations de lignes.

Aucun message d'erreur n'était émis pour ":digraph a".

Lors de l'utilisation du mode Ex dans l'IHM graphique et qu'une touche
spéciale était tapée, <RetArr> ne l'effaçait pas convenablement. Maintenant,
'?' est affiché pour une touche spéciale.

Quand un opérateur était en cours, cliquer dans une autre fenêtre l'appliquait
à cette fenêtre, même si les numéros de lignes étaient au-delà de la fin du
tampon.

Quand un appel de fonction n'avait pas de ")" fermante, Vim pouvait planter.

Interface Perl : plantage possible lors de la sortie avec perl 5.6.1. (Anduin
Withers)

%P n'était pas pris en compte correctement dans 'errorformat'. (Tomas
Zellerin)

L'utilisation d'une grappe de syntaxe s'incluant elle-même plantait Vim.

IHM graphique : avec 'ls' valant 2, en faisant glisser la ligne d'état tout en
haut, puis réduire la fenêtre Vim, il devenait impossible de faire glisser la
ligne d'état à nouveau.

`vim -c startinsert! fichier` plaçait le curseur sur le dernier caractère
d'une ligne, plutôt qu'après. Une commande ":set" dans le tampon courant
fixait w_set_curswant. Maintenant, ce n'est plus le cas si w_curswant vaut
MAXCOL.

Win32 : quand la fenêtre gvim était maximisée puis qu'une autre police était
sélectionnée, la fenêtre ne remplissait plus l'écran.

La ligne contenant 'pastetoggle' dans ":options" n'affichait pas la bonne
valeur quand il s'agit d'une touche spéciale. Taper <CR> ne fonctionnait pas
non plus.

Une mise en forme de texte, aboutissant à un % dans la première ligne,
répétait le % dans les lignes suivantes comme si c'était le début d'un
commentaire.

GTK+ : lors de l'ajout d'un élément dans la barre d'outils alors que gvim est
déjà lancé, il était impossible d'utiliser les bulles d'aide. À présent, cela
fonctionne en ajoutant d'abord la bulle d'aide.

La sortie de "g CTRL-G" mentionnait "Char" (caractères) alors qu'il est
question d'octets.

La recherche de la fin d'une région uniligne ne fonctionnait pas correctement
quand il existait un décalage dans la surbrillance.

Coloration syntaxique : lors de la synchronisation sur les commentaires C,
//*/ était considéré comme un début de commentaire.

Win32 : sans barres de défilement, la molette de la souris ne fonctionnait
pas. Les barres sont aussi prises en charge même quand elles ne sont pas
visibles.

Motif : quand il n'y avait pas de barres de défilement droite, la barre de
défilement inférieure laissait tout de même la place nécessaire. (Martin
Dalecki)

Lors d'une modification de 'guicursor' et que la nouvelle valeur n'est pas
valide, certains effets avait encore lieu. À présent, une vérification est
d'abord faite pour d'éventuelles erreurs, puis la nouvelle valeur n'est
effective que si elle est valide.

Lors de l'utilisation de "A" en mode Visuel par bloc pour ajouter à des lignes
qui ne vont pas jusqu'à la fin du bloc, le bourrage était incorrect.

Lors du collage d'un bloc de texte, un caractère occupant plus d'une colonne
d'écran pouvait être effacé et remplacé par des espaces. Désormais, cela ne
peut se produire que pour des tabulations.

Correction de la conversion de la documentation en HTML avec Perl. (Dan Sharp)

Retourner un message d'erreur quand un nom de menu débute par un point.

Un blocage est évité lors de l'exécution d'un shell depuis l'IHM graphique sur
HP-UX avec un ioctl(fd, I_PUSH, "ptem"), même quand "sys/ptem.h" n'existe pas.

Lors de la création d'un répertoire temporaire, s'assurer que umask vaut 077,
sinon le répertoire n'était pas accessible quand il était fixé à 0177.

Unix : lors du redimensionnement de la fenêtre alors que le rafraîchissement
est un peu lent, il était possible de recevoir un événement de
redimensionnement pendant le rafraîchissement, aboutissant au salissage de la
fenêtre. Toutes les entrées (par exemple un clic de souris) provoquait un
rafraîchissement.

L'item "%B" dans la ligne d'état devenait nul en mode Insertion (c'est normal)
pour une autre fenêtre que la fenêtre courante (anormal).

Les entrées de menu pour convertir avec `xxd` et inversement ne fonctionnaient
pas en mode Insertion.

Quand ":vglobal" ne trouvait pas une seule ligne ne correspondant pas au
motif, le message d'erreur n'était pas XXX would be the wrong way around.

Quand un message d'erreur multi-lignes était ignoré avec "%-A", les lignes de
continuation étaient tout de même examinées. (Servatius Brandt)

"grx" sur un caractère à largeur double insérait "x", au lieu de remplacer le
caractère par "x ". "gR" sur <xx> ('display' contenant "uhex") ne remplaçait
rien du tout. Lors d'un "gRxx" sur un caractère de contrôle, le premier "x"
était inséré, rompant l'alignement.

Ajout de "0)" à 'cinkeys', de façon à ce que, lors de la saisie d'une ")",
elle soit placée à l'endroit où un "==" l'aurait mis.

Win32 : quand la fenêtre était maximisée, l'ajout/suppression d'une barre de
défilement ne redimensionnait pas la zone de texte.

Lors de l'utilisation de <C-ClicGauche>, le quantificateur était ignoré.

Lors de la saisie d'un CTRL-V suivi de <ClicDroit> dans la ligne de commande,
<LeftMouse> était inséré.

Utiliser "vis" ou "vas" quand 'selection' valait "exclusive" n'incluait pas le
dernier caractère.

Lors d'un ajout à une option telle que 'grepprg', l'espace initial était
perdu. Ne pas étendre les variables d'environnement quand aucune virgule ne
sépare les éléments.

IHM graphique : lors de l'utilisation d'une police grasse italique, l'astuce
pour le gras et le soulignement était encore utilisée.

Motif : le bouton par défaut ne fonctionnait pas dans les dialogues, le
premier était toujours utilisé. Le focus doit être donné au bouton par défaut.

Lors d'un CTRL-T pour sauter dans le même fichier, la marque '' n'était pas
positionnée.

L'annulation n'était pas compatible avec Vi lors de l'utilisation du drapeau
'c' dans ":s". La commande ":s" est maintenant entièrement annulée, plutôt que
seulement le dernier remplacement confirmé.

Le menu Tampons, quand il était détaché, disparaissait lors d'un
rafraîchissement. Ajout d'une entrée factice pour éviter cela.

Suppression de l'appel à msg_start() dans main(), il n'est pas nécessaire.

vim_strpbrk() ne supportait pas les caractères multi-octets. (Muraoka Taro)

La version Amiga ne compilait pas, le code était trop gros pour des sauts
relatifs. Déplacement de parties de codes de "ex_docmd.c" vers "ex_cmds2.c".

Lorsque l'évaluation du registre "= aboutissait à sa modification, Vim
plantait.

Lorsqu'un ":view fichier" échouait, le tampon courant était laissé en lecture
seule.

Motif : pour certains, les séparateurs de la barre d'outils disparaissaient
lors du redimensionnement de la fenêtre Vim. (Martin Dalecki)

IHM graphique Win32 : quand 'lines' était fixé à un très grand nombre,
l'espace disponible n'était pas calculée correctement. La hauteur du menu
était comptée deux fois.

La conversion de la documentation en HTML ne prenait pas correctement en
compte la ligne contenant le marqueur "+quickfix". (Antonio Colombo)

Win32 : fname_case() ne prenait pas correctement en compte les caractères
multi-octets. (Yasuhiro Matsumoto)

La version Cygwin avait des problèmes avec fchdir(). Ne pas utiliser cette
fonction avec Cygwin.

La vérification générique pour la syntaxe "conf" dans le fichier "scripts.vim"
était réalisée avant certaines vérifications dans "filetype.vim", aboutissant
à une duplication des traitements pour la syntaxe "conf".

Dos32 : la saisie était à la traîne. Il fallait attendre un cycle du BIOS pour
vérifier si un caractère était disponible.

GTK+ : quand 'columns' était fixé pendant le démarrage de gvim, la largeur
obtenue était celle du terminal dans lequel il était démarré.

Lors de l'utilisation de <Echap> en mode Insertion, une indentation
automatique s'enroulant sur la ligne suivante provoquait le déplacement
temporaire du curseur à la fin de la ligne. Quand le caractère devant le
curseur était un caractère multi-octets à largeur double, le curseur se
retrouvait sur la partie droite, ce qui pose des problèmes avec certains
terminaux.

L'expansion des fichiers ne prenait pas correctement en compte les caractères
multi-octets. (Yasuhiro Matsumoto)

IHM graphique Win32 : les erreurs générées avant que la décision de lancer
l'IHM graphique soit prise n'étaient pas rapportées.

globpath() ne réservait pas assez de place pour la concaténation du résultat.
(Anduin Withers)

Lors de l'expansion d'une option déjà très longue, ne pas faire d'expansion,
elle serait tronquée à MAXPATHL. (Anduin Withers)

Quand 'selection' valait "exclusive", l'utilisation de "Fx" en mode Visuel ne
déplaçait que juste après le caractère.

Lors de l'utilisation de l'IME dans une console pour entrer un nom de fichier,
l'écran peut défiler. Dans ce cas, rafraîchir l'écran. (Yasuhiro Matsumoto)

Motif : dans le dialogue Rechercher/Remplacer, le bouton "Remplacer" ne
fonctionnait pas la première fois, et effectuait tous les remplacement la
deuxième fois. Suppression de l'utilisation de ":s///c".
   GTK+ : problèmes similaires avec le dialogue Rechercher/Remplacer, le code
a été déplacé dans une fonction commune.

X11 : utilisation de GC partagés pour le texte. (Martin Dalecki)

"]i" trouvait une correspondance sous le curseur, au lieu de commencer à celle
immédiatement suivante. Pareil pour "]I", "] CTRL-I", "]d", "]D" et 
"] CTRL-D".

Win16 : quand la fenêtre est maximisée et que la police est modifiée, ne pas
changer la taille de la fenêtre. (Vince Negri)

Avec 'lbr' activé, l'effacement d'un bloc de texte pouvait laisser le curseur
au mauvais endroit.

Win32 : lors de l'ouverture d'un fichier avec l'entrée "Éditer avec Vim" du
menu contextuel, les jokers pouvaient poser des problèmes. Ajout de l'argument
"--literal" pour éviter l'expansion des noms de fichiers.

"gv" ne restaurait pas les "$" utilisés en mode Visuel par bloc.

IHM graphique Win32 : pendant l'attente de la fin d'une commande shell, la
fenêtre n'était pas rafraîchie du tout. (Yasuhiro Matsumoto)

Coloration syntaxique : une correspondance se poursuivant sur la ligne
suivante à cause d'une région contenue ne prenait pas fin en même temps que la
région.

La commande ":s" n'acceptait pas les drapeaux comme 'e' ou 'i' immédiatement à
sa suite.

Lors de l'utilisation de ":s" pour couper une ligne en deux, les marques
étaient déplacées vers la ligne suivante. Vi les conserve sur la première
ligne.

Lors de l'utilisation de ":n" ou ":rew", le contexte précédent était situé au
début du fichier, alors que Vi le plaçait au niveau du curseur. C'est
maintenant compatible avec Vi.

Correction d'une incompatibilité avec Vi : le texte n'était pas envoyé dans le
registre 1 lors de l'utilisation d'une commande "c" ou "d" suivie d'un
caractère de mouvement, ou lors de l'effacement au sein d'une ligne avec l'une
de ces commandes :  % ( ) `<caractere> / ? N n { }

IHM graphique Win32 : la bulle d'aide d'un élément détaché persistait alors
que l'élément n'était plus sélectionné.

IHM graphique : quand ":" est tapé à l'invite Plus, Vim retournait en mode
Normal et ne rafraîchissait pas l'écran.

Lors du lancement de Vim avec l'argument "-c g/at/p", les lignes affichées se
superposaient les unes les autres.

BeOs : impossible de compiler. `configure` n'ajoutait pas les fichiers
os_beos.*, car la vérification pour QNX les supprimait. Diverses modifications
dans "os_beos.cc". (Joshua Haberman)
   Suppression de la vérification du matériel de la plate-forme, la BeBox
n'est plus produite depuis un bon moment.

IHM graphique Win32 : ne pas utiliser de boîte de messages quand le shell
retourne un code d'erreur, mais afficher le message dans la fenêtre de Vim.

"Make_mvc.mak" incluait toujours "/debug" à l'édition de liens. L'argument
"GUI=no" ne fonctionnait pas. Utiliser "DEBUG=yes" au lieu de "DEBUG=1" pour
que cela soit cohérent. (Dan Sharp)

Quand une ligne d'un fichier de marqueurs se terminait par ;" (sans tabulation
après), la commande n'était pas reconnue comme une commande de recherche.

X11 : la ressource inputMethod ne fonctionnait jamais. Ne pas utiliser la
méthode de saisie "none" sur SGI, il semble qu'elle ignore le premier
caractère de la Méthode de Saisie.

Corrections de tests incorrects dans "os_mac.h". (Axel Kielhorn)

Console Win32 : quand la console dans laquelle Vim fonctionne était fermée,
Vim pouvait rester bloqué en tentant de restaurer l'icône de la fenêtre.
(Yasuhiro Matsumoto)

Lors d'un":3call func()" ou d'un ":3,3call func(), le numéro de ligne était
ignoré.

Quand 'showbreak' et 'linebreak' étaient tout deux activés, la surbrillance
Visuel continuait parfois au-delà de la fin de la ligne.

IHM graphique GTK+ : les éléments détachables étaient ajoutés lors du
démarrage même quand 'guioptions' ne contenait pas 't'.

MS-Windows : quand le répertoire courant contenait "~", la recherche de
fichiers avec "gf" ou ":find" ne fonctionnait pas. Même problème avec "$" dans
un nom de répertoire. Ajout des fonctions mch_has_exp_wildcard().

Quand le fenêtre de Vim était réduite pendant le démarrage, un message
d'erreur "out-of-memory" était émis.

Lors de l'édition d'un motif de recherche très long, 'incsearch' provoquait
l'échec du rafraîchissement de la ligne de commande.

IHM graphique Motif : sur certains systèmes, le menu Aide ne se trouvait pas
complètement à droite, tel qu'il est supposé l'être. Sur d'autres systèmes
(plus particulièrement Irix), la ligne de commande n'est pas entièrement
affichée. La solution retenue est de ne redimensionner la barre de menu
qu'avec LessTiff.

L'utilisation de "%" dans une ligne contenant deux fois "\\" ne prenait pas
correctement en compte les apostrophes. Maintenant, une distinction est faite
entre \" et \\".

Sur les systèmes non Unix, un fichier factice est créé lors de la
détermination d'un nom de fichier d'échange, pour détecter les systèmes de
fichiers 8.3. Quand un fichier d'échange existait déja, un avertissement
indiquait que le fichier avait été créé en dehors de Vim. De même, lors de la
fermeture de la fenêtre de Vim, le fichier persistait.

Motif : la hauteur du menu était toujours calculée, l'utilisation d'un
argument "-menuheight" fixait la place pour la ligne de commande. À présent,
il est précisé explicitement que cet argument n'est pas supporté.

Pour certains systèmes (EBCDIC), POUND valait '#'. Ajout d'un #if pour éviter
la duplication d'un case dans un switch.

L'IHM graphique pouvait avoir des problèmes lors du fork(). Toujours appeler
_exit() au lieu de exit() dans le père, le fils appellera exit().

IHM graphique Win32 : les caractères accentués étaient souvent erronés dans
les dialogues et les menus détachables. À présent, CP_ACP est utilisé à la
place de CP_OEMCP. (Vince Negri)

Lorsque l'affichage de texte avec la coloration syntaxique provoque une erreur
(par exemple une pile trop petite), la coloration syntaxique est désactivée
pour éviter des messages supplémentaires.

Quand une commande du vimrc ou gvimrc provoquait une invite ATTENTION, et que
Vim était lancé depuis le bureau (aucun endroit pour afficher les messages),
il bloquait. À présent, une fenêtre de l'IHM graphique est ouverte très tôt
pour pouvoir afficher les messages et des dialogues.

"r<CR>" sur un caractère multi-octets n'effaçait que le premier octet du
caractère. "3r<CR>" effaçait trois octets au lieu de trois caractères.

Quand la lecture d'un fichier est interrompue, Vi considère que le tampon est
modifié. Ajout du drapeau 'i' dans 'cpoptions' pour cela (avoir l'état modifié
n'est pas souhaité pour pouvoir faire ":q").

Lors de l'utilisation d'un élément dans 'guicursor' débutant par ":", Vim
bloquait ou plantait.

Quand une marque de fichier était positionnée dans un fichier d'aide, puis
rappelée avec un saut plus tard, les options du tampon n'était pas restaurées.
Extension des lignes de mode dans tous les fichiers d'aide pour que cela se
passe mieux.

Quand une ligne de mode contenait "::", la valeur des options locales étaient
affichée. "::" est maintenant ignoré.

Certains noms de fichiers d'aide n'était pas compatibles 8.3, ce qui posait
des problèmes lors de l'utilisation de `unzip` pour MS-DOS. "multibyte.txt"
renommé en "mbyte.txt", "rightleft.txt" en "rileft.txt", "tagsearch.txt" en
"tagsrch.txt" et "os_riscos.txt" en "os_risc.txt".

Quand le mode Visuel était par bloc, l'utilisation de "iw" ou "aw" le passait
en mode Visuel par caractères. Cela ne semble pas justifié, ne le faire que
pour le mode Visuel par lignes. Mais dans ce cas, le faire à chaque fois, et
pas seulement quand le début et la fin du mode Visuel sont identiques.

Lors de l'utilisation de "viw" sur un mot composé d'une seule lettre et que
'selection' valait "exclusive", le mot n'était pas inclus.

La mise en forme de texte en mode Insertion en utilisant CTRL-O pouvait
corrompre les informations de l'annulation.

Lors de l'écriture d'un fichier (ainsi que pour les fichiers de sauvegarde),
aucune vérification n'était effectuée pour savoir si une interruption avait
lieu (CTRL-C). Vim pouvait bloquer lors de l'écriture d'un gros fichier au
travers d'un réseau lent ; déplacer la souris n'informait pas de cet état
(avec 'mousehide' activé) et l'écran n'était pas rafraîchie dans l'IHM
graphique. L'interruption de la synchronisation avec le fichier d'échange est
maintenant possible, car elle peut prendre un bon moment.

Lors d'un ":mksession" alors qu'une fenêtre d'aide était présente, elle était
ensuite restaurée avec le bon fichier, mais sans qu'elle soit signalée comme
contenant un tampon d'aide. ":help" ouvrait alors une autre fenêtre.
Maintenant, la valeur "help" de 'buftype' est utilisée pour signaler un tampon
d'aide.

Le fichier de session contenait des noms de chemins absolus dans les valeurs
des options, cela ne fonctionnait pas quand le repértoire personnel dépendait
de la situation. Le répertoire personnel est remplacé par "~/" quand c'est
possible.

Avec 'showbreak', une tabulation juste après une marque de césure n'était pas
comptée correctement, le curseur était mal positionné.

Avec 'showbreak' valant "--->" ou "------->" et 'sts' valant 4, l'insertion
d'une tabulation ne fonctionnait pas bien. Cela pouvait provoquer un plantage.
Les retours arrières ne fonctionnaient pas non plus, ils pouvaient bloquer sur
une césure.

Win32 : plantage au détachement d'un menu contenu plus de 300 entrées.

IHM graphique : un menu ou une barre d'outils n'apparaissaient que lorsqu'une
bulle d'aide leur était définie.

Quand 'scrolloff' était non nul et que 'cpoptions' contenait "$",
l'utilisation de "s" alors que la dernière ligne du fichier se trouvait sur la
première ligne de la fenêtre n'affichait pas le texte.

Lors de l'exécution de `autoconf`, effacer le cache de la configuration pour
forcer une exécution complète quand `configure` est exécuté à nouveau.

Lors de la modification des couleurs de Normal pour cterm, la valeur de
'background' était aussi changée pour l'IHM graphique.

Un avertissement concernant "vimrun.exe" manquant était toujours émis au
démarrage, mais certaines personnes souhaitant simplement éditer un fichier
n'avaient pas de raison d'être dérangées par ce message. Ne l'afficher que
dans les cas où `vimrun` devrait être utilisé.

Dans un texte multi-octets, les octets finaux qui correspondent pouvaient
perturber le fonctionnement de "%". (Muraoka Taro)

L'entrée termcap pour RISC OS était erronée, elle utilisait utilisait le
chiffre 8 dans des codes en octal. XXX VO : 7 ?

Athena : les titres des fenêtre de dialogue et du sélecteur de fichiers
n'étaient pas positionnés. (David Harrison)

Le groupe de surbrillance "htmlLink" spécifiait explicitement une couleur, ce
qui pose des problèmes lors de l'utilisation de jeux de couleurs. Ajout du
groupe de surbrillance "Underlined" pour cela.

Après l'utilisation de ":insert" ou ":change", la marque '[ se trouvait une
ligne trop bas.

Lors de la recherche du nom de fichier après une correspondance avec
'include', un caractère était omis. Pareil pour 'define'.

Win32 et DJGPP : lors de l'édition d'un fichier avec son nom court dans un
répertoire, puis de l'édition de ce même fichier mais avec son nom long, deux
tampons différents étaient obtenus pour le même fichier.

"gf" sur un nom de fichier débutant par "../" ne fonctionnait que lors que le
fichier en cours d'édition se trouvait dans le répertoire courant. La
recherche d'un fichier inclus ne fonctionnait pas correctement pour les
fichiers débutant par "../" ou ".". Maintenant, la recherche est faite
relativement au fichier et au répertoire courant.

Quand 'printheader', 'titlestring', 'iconstring', 'rulerformat' ou
'statusline' contenait "%{", mais pas de "}" appariée, la mémoire était
corrompue et un plantage pouvait survenir.

":0append" suivi de l'insertion de deux lignes ne rafraîchissait pas les
deux lignes vides qui se retrouvaient défilée vers le bas.

Lors de l'utilisation du complètement en mode Insertion dans une fenêtre
étroite, le message provoquait un défilement vers le haut. Maintenant, le
message est raccourci s'il ne rentre pas, et la règle n'est plus écrite par
dessus.

XIM ne fonctionnait toujours pas correctement sur certains systèmes, en
particulier SGI/Irix. Ajout de l'option 'imdisable' option, activée par défaut
pour ce système.

Rustine 6.0aw.008
Problème :  Quand le premier caractère d'un fichier est supérieur à 127, le
	    menu Tampons obtenait une priorité négative et posait des
	    problèmes.
Solution :  Réduire le coefficient de multiplication du premier caractère lors
	    du calcul de la valuer de hachage d'une entrée de menu.
Fichiers :  runtime/menu.vim

Rustine 6.0aw.010
Problème :  Win32 : ":browse edit rep/rep" ne fonctionnait pas. (Vikas)
Solution :  Changer les obliques en contre-obliques dans le répertoire
	    transmis au sélecteur de fichiers.
Fichiers :  src/gui_w48.c

Sélecteur de fichiers Athena : sur certains systèmes, il n'est pas possible
d'utiliser wcstombs() pour obtenir la longueur d'une chaîne multi-octets.
Utiliser la longueur maximale dans ce cas. (Yasuhiro Matsumoto)

Rustine 6.0ax.001
Problème :  Avec 'patchmode' activé, ajouter à la fin d'un fichier aboutit
	    à un fichier d'origine vide. (Ed Ralston)
Solution :  Faire aussi une copie de sauvegarde lors d'un ajout et que
	    'patchmode' est activé.
Fichiers :  src/fileio.c

Rustine 6.0ax.002
Problème :  Avec 'patchmode' activé, ajouter à la fin d'un fichier compressé
	    aboutissait à un fichier d'origine non compressé. (Ed Ralston)
Solution :  Créer le fichier d'origine avant de le décompresser.
Fichiers :  runtime/plugin/gzip.vim

Rustine 6.0ax.005
Problème :  Le sélecteur de fichiers Athena conserve le titre de sa première
	    invocation.
Solution :  Fixer le titre à chaque fois que le sélecteur est ouvert. (David
	    Harrison)
Fichiers :  src/gui_at_fs.c

Rustine 6.0ax.007
Problème :  Lors de l'utilisation de GPM (pilote de souris dans la console
	    Linux), un double clic est interprété comme un clic de molette.
Solution :  Tester si GPM est utilisé pour décider si un événement de la
	    souris concerne la molette.
Fichiers :  src/term.c

Rustine 6.0ax.010
Problème :  Le menu Edit.Save et le bouton Save de la barre d'outils ne
	    fonctionnent pas quand le tampon n'a pas de nom.
Solution :  Utiliser le sélecteur de fichiers pour demander un nom. Correction
	    de l'élément Rechercher de la barre d'outils en mode Visuel.
Fichiers :  runtime/menu.vim

Rustine 6.0ax.012
Problème :  Quand 'cpoptions' contient "$", scinder une ligne à 'textwidth' ne
	    rafraîchit pas correctement. (Stefan Schulze)
Solution :  Supprimer le dollar avant de scinder la ligne.
Fichiers :  src/edit.c

Rustine 6.0ax.014
Problème :  Win32 : sur MS-Windows 98 ":make -f file" ne fonctionne pas quand
	    'shell' vaut "command.com" et 'makeprg' vaut "nmake".
	    L'environnement n'est pas transmis à "nmake".
Solution :  utiliser aussi "vimrun.exe" lors de la redirection de la sortie
	    d'une commande.
Fichiers :  src/os_win32.c

Rustine 6.0ax.016
Problème :  Le numéro de version est mal reporté dans l'écran d'accueil.
Solution :  Vérifier les numéros de version avec deux lettres supplémentaires.
Fichiers :  src/version.c

Rustine 6.0ax.019
Problème :  Lors du défilement vers le haut d'une fenêtre contenant des
	    replis, passer dans une autre fenêtre partagée verticalement puis
	    revenir peut ne pas mettre la barre de défilement à jour.
Solution :  Limiter w_botline au nombre de lignes dans le tampon plus une.
Fichiers :  src/move.c

==============================================================================
Version 6.1						*version-6.1*

Cette section traite des améliorations apportées entre les versions 6.0 et
6.1.

Il s'agit d'une version corrigeant des bogues, avec peu de nouvelles
fonctionnalités.


CHANGEMENTS						*changed-6.1*

'iminsert' et 'imsearch' ne sont plus modifiées par effet de bord lors de la
définition de mappages de langue avec ":lmap".


AJOUTS							*added-6.1*

Fichiers de syntaxe :
ampl		AMPL (David Krief)
ant		Ant (Johannes Zellner)
baan		Baan (Her van de Vliert)
cs		C# (Johannes Zellner)
lifelines	Lifelines (Patrick Texier)
lscript		LotusScript (Taryn East)
moo		MOO (Timo Frenay)
nsis		NSIS (Alex Jakushev)
ppd		Postscript Printer Description (Bjoern Jacke)
rpl		RPL/2 (Joel Bertrand)
scilab		Scilab (Benoit Hamelin)
splint		Splint (Ralf Wildenhues)
sqlj		SQLJ (Andreas Fischbach)
wvdial		WvDial (Prahlad Vaidyanathan)
xf86conf	Configuration XFree86 (Nikolai Weibull)
xmodmap		Xmodmap (Nikolai Weibull)
xslt		Xslt (Johannes Zellner)
monk		Monk (Mike Litherland)
xsd		Xsd (Johannes Zellner)
cdl		CDL (Raul Segura Acevedo)
sendpr		Send-pr (Hendrik Scholz)

Ajout des fichiers d'indentation pour :
- Scheme (Dorai Sitaram)
- Prolog (Kontra Gergely)
- Povray (David Necas)
- IDL (Aleksandar Jelenak)
Ajout d'un fichier d'indentation et d'un greffon de type de fichier pour C#.

Ajout de la traduction ukrainienne des menus. (Bohdan Vlasyuk)
Ajout de la version ASCII des menus Tchèques. (Jiri Brezina)

Ajout de la traduction en chinois simplifié du tutoriel. (Mendel L Chan)

Ajout du codage clavier russe pour les claviers yawerty.

Ajout d'une explication sur l'utilisation du fichier vimrc dans le tutoriel.
Modification de "tutor.vim" pour obtenir le bon codage avec le tutoriel
taiwanais.

Ajout du tutoriel en russe. (Andrey Kiselev)
Ajout du tutoriel en polonais. (Mikolaj Machowski)

Ajout du jeu de couleurs darkblue. (Bohdan Vlasyuk)

Lors de l'empaquetage de l'archive MS-DOS pour les langues, les fichier ".mo"
requis sont automatiquement générés.

Amélioration du script NSIS pour supporter NSIS 1.80. Ajout d'icônes pour les
états activé/désactivé. (Mirek Pruchnik)

Version cp1250 de la traduction slovaque des messages.

Greffon de compilateur pour Irix. (David Harrison)


CORRECTIONS						*fixed-6.1*

La licence a été mise à jour pour en clarifier le propos et la rendre
compatible avec la GNU GPL. Les distributeurs avaient des problèmes quand Vim
était lié avec des bibliothèques LPG.

Lors de l'installation du script "less.sh", il n'était pas rendu exécutable.
(Chuck Berg)

Win32 : la touche "9" du pavé numérique ne fonctionnait pas. (Julian Kinraid)

Le script d'installation NSIS ne fonctionnait pas avec NSIS 1.80 ou ultérieur.
Ajout d'icônes spécifiques à Vim. (Pruchnik)

Le script de conversion en HTML contenait un "if" mal placé. (Michael Geddes)

Utiliser ":ascii" est autorisé dans le bac à sable, cette commande est
inoffensive.

Suppression de creat() dans "osdef2.h.in", il n'était pas utilisé et pouvait
poser des problèmes quand il était redéfini en creat64().

Les fichiers texte du répertoire VisVim étaient au format "dos". Cela posait
des problèmes pour l'application des rustines. Ils sont maintenant au format
"unix" et ne sont convertis que dans les archives pour PC.

Ajout des fichiers Ruby dans l'archive des sources MS-DOS, "Make_mvc.mak"
pouvait en avoir besoin. (Mirek Pruchnik)

"cp -f" ne fonctionne pas sur tous les systèmes. Changements de "cp -f" en
"cp" et "rm -f" dans le Makefile.

Impossible de compiler sur un Compaq Tandem Himalaya OSS. (Michael A.
Benzinger)

Le dialogue de sélection de fichiers de GTK+ n'incluait pas les boutons
"Create Dir", "Delete File" et "Rename File".

Lors d'un ":browse source", le titre du dialogue était "Run Macro". "Source
Vim script" vaudrait mieux. (Yegappan Lakshmanan)

Win32 : ne pas utiliser la police d'impression comme police par défaut pour
les dialogues.

"make doslang" ne fonctionnait pas quand `configure` n'avait pas (encore) été
exécuté. $MAKEMO vaut maintenant "yes". (Mirek Pruchnik)

L'élément TagJump de la barre d'outils utilisait "g]", qui affiche une invite
de sélection même quand un seul marqueur correspond. Utiliser "g<C-]>" à la
place.

Le Makefile Ming pour les traductions des messages ne comportait pas la bonne
liste de fichiers.

La version MS-Windows 3.1 se plaignait de LIBINTL.DLL manquante. Cette version
est maintenant compilée sans la traduction des messages.

Le Makefile Borland 5 contenait une vérification pour Ruby qui n'est plus
nécessaire. Les URL de la bibliothèque TCL sont obslolètes. (Dan Sharp)

Le fichier "eviso.ps" était absent de l'archive de support MS-DOS, alors qu'il
est nécessaire pour imprimer en Postscript dans la version Dos32.

Dans les fichiers de menu, ":scriptencoding" était mal utilisé après la
rustine 6.1a.032. Maintenant, ":scriptencoding" est utilisé dans le fichier
dans lequel la traduction est fournie. La même modification a été opérée dans
tous les fichiers de menu codés en latin1.

Nombreuses corrections pour Macintosh, principalement pour fonctionner avec
Carbon. (Dany StAmant, Axel Kielhorn, Benji Fisher)

Amélioration du script shell "vimtutor" pour qu'il utilise $TMPDIR quand il
existe et qu'il efface le fichier copié en cas de terminaison anormale. (Max
Ischenko)

Quand "iconv.dll" est introuvable, essayer d'utiliser "libiconv.dll".

Il était impossible de filtrer avec une commande shell quand le chiffrement
était utilisé.

DJGPP : ":cd c:" échouait toujours, impossible de récupérer les permissions
pour "c:".
Win32 : ":cd c:/" échouait quand le répertoire courant précédent sur c:
devenait invalide.

DJGPP : Maj-Suppr et Suppr produisaient tout deux \316\123. Le mappage par
défaut pour Suppr est faux. Il est désactivé.

Des dépendances entre des fichiers d'en-tête dans le Makefile MinGW étaient
fausses.

Win32 : ne pas traiter les ACL avec MSVC 4.2, il ne les supporte pas. (Walter
Briscoe)

Win32 avec Borland : "bcc.cfg" mémorisait la valeur de $(BOR), mais la
fourniture d'un argument différent à `make` ne la regénérait pas.

Win32 avec MSVC : "Make_ivc.mak" générait un nouveau fichier "if_ole.h" dans
un répertoire différent, le fichier "if_ole.h" du répertoire contenant les
sources pouvait être utilisé à la place. Le fichier distribué est maintenant
supprimé.

Quand une fenêtre était partagée verticalement et que ":ball" était utilisé,
la disposition des fenêtres était bouleversée et un plantage pouvait survenir.
(Muraoka Taro)

Avec 'insertmode' activé, lors de l'utilisation du menu Fichier/Nouveau suivi
d'un double-clic, "i" était inséré. (Merlin Hansen)

Quand le mode Sélection était actif et que le menu Tampons était utilisé pour
passer à un autre tampon, la sélection précédente revenait. Visual_reselect
est maintenant réinitialisé lors d'une commande concernant les tampons.

Quand le mode Sélection était actif et que le menu Tampons était utilisé pour
passer à un autre tampon, Vim ne retournait pas en mode Insertion. À présent,
s'assurer que "restart_edit" est positionné.

Un double clic sur le premier caractère d'un mot alors que 'selection' valait
"exclusive" ne sélectionnait pas ce mot.


Rustine 6.0.001
Problème :  Le chargement du fichier de syntaxe "sh.vim" provoque des messages
	    d'erreur. (Corinna Vinschen)
Solution :  Ajout d'un "if". (Charles Campbell)
Fichiers :  runtime/syntax/sh.vim

Rustine 6.0.002
Problème :  L'utilisation d'un élément '@' dans 'viminfo' ne fonctionne pas.
	    (Marko Leipert)
Solution :  Ajout de '@' dans la liste des éléments autorisés.
Fichiers :  src/option.c

Rustine 6.0.003
Problème :  La vérification de `configure` pour les ACL ne fonctionne pas sur
	    AIX.
Solution :  Correction du programme de manière à ce qu'il compile. (Tomas
	    Ogren)
Fichiers :  src/configure.in, src/auto/configure

Rustine 6.0.004
Problème :  Le dialogue Rechercher/Remplacer ne réutilisait pas correctement
	    l'argument précédent.
Solution :  Après la suppression d'un "\V", terminer la chaîne. (Zwane
	    Mwaikambo)
Fichiers :  src/gui.c

Rustine 6.0.005
Problème :  En mode Insertion, "CTRL-O :ls" demande un délai avant de
	    rafraîchir.
Solution :  Ne pas attendre juste après un appel à wait_return(). Ajout du
	    drapeau did_wait_return.
Fichiers :  src/globals.h, src/messsage.c, src/normal.c, src/screen.c

Rustine 6.0.006
Problème :  Avec un partage vertical, 'number' activé et 'scrolloff' non nul,
	    réduire la fenêtre à une très petite largeur provoque un plantage.
	    (Niklas Lindstrom)
Solution :  Vérifier une éventuelle largeur nulle.
Fichiers :  src/move.c

Rustine 6.0.007
Problème :  Quand 'filetype' est fixé alors qu'il n'y a aucune autocommande
	    FileType, un nouveau ":setfiletype" fixe encore 'filetype'. (Kobus
	    Retief)
Solution :  Toujours positionner did_filetype quand 'filetype' a été fixé.
Fichiers :  src/option.c

Rustine 6.0.008
Problème :  'imdisable' est absente de la fenêtre des options (option-window).
	    (Michael Naumann)
Solution :  Ajouter l'entrée correspondante.
Fichiers :  runtime/optwin.vim

Rustine 6.0.009
Problème :  Nextstep ne dispose pas de S_ISBLK. (John Beppu)
Solution :  Définir S_ISBLK à S_IFBLK.
Fichiers :  src/os_unix.h

Rustine 6.0.010
Problème :  Utiliser "gf" sur un nom de fichier débutant par "./" ou "../"
	    dans un tampon sans nom provoque un plantage. (Roy Lewis)
Solution :  Vérifier un nom de fichier NULL.
Fichiers :  src/misc2.c

Rustine 6.0.011
Problème :  Python : après le remplacement ou l'effacement de lignes, une
	    erreur ml_get survient. (Leo Lipelis)
Solution :  Ajuster la position du curseur pour les lignes ajoutées ou
	    supprimées.
Fichiers :  src/if_python.c

Rustine 6.0.012
Problème :  La traduction polonaise contient des erreurs de format printf, qui
	    peuvent aboutir à un plantage lors de leur utilisation.
Solution :  Correction des messages traduits. (Michal Politowski)
Fichiers :  src/po/pl.po

Rustine 6.0.013
Problème :  L'utilisation de ":silent! cmd" donne encore certains messages
	    d'erreur, comme une plage invalide. (Salman Halim)
Solution :  Réinitialiser emsg_silent après un appel à emsg() dans
	    do_one_cmd().
Fichiers :  src/ex_docmd.c

Rustine 6.0.014
Problème :  Avec 'modifiable' désactivé et 'virtualedit' valant "all", "rx"
	    sur une tabulation modifie encore le tampon. (Muraoka Taro)
Solution :  Vérifier si la mémorisation de la ligne pour l'annulation a
	    échoué.
Fichiers :  src/normal.c

Rustine 6.0.015
Problème :  Quand 'cpoptions' contient "S" et que "filetype plugin on" a
	    été utilisé, il est possible d'obtenir une erreur à propos de
	    l'effacement de la variable b:did_ftplugin. (Ralph Henderson)
Solution :  N'effacer la variable que si elle existe.
Fichiers :  runtime/ftplugin.vim

Rustine 6.0.016
Problème :  bufnr(), bufname() et bufwinnr() ne trouvent pas les tampons non
	    listés quand l'argument est une chaîne. (Hari Krishna Dara)
	    Pareil pour setbufvar() et getbufvar().
Solution :  Rechercher aussi les tampons non listés.
Fichiers :  src/eval.c

Rustine 6.0.017
Problème :  Quand 'ttybuiltin' est activé et qu'une entrée termcap intégrée
	    définit 't_Co' alors que l'entrée externe ne le fait pas, elle est
	    réinitialisée à vide. (David Harrison)
Solution :  Fixer 't_Co' uniquement quand elle ne l'est pas encore.
Fichiers :  src/term.c

Rustine 6.0.018
Problème :  L'initialisation de 'encoding' peut provoquer un plantage quand
	    setlocale() n'est pas utilisé. (Dany St-Amant)
Solution :  Tester un pointeur NULL.
Fichiers :  src/mbyte.c

Rustine 6.0.019
Problème :  La conversion d'une chaîne avec des caractères multi-octets en une
	    chaîne imprimable (par exemple avec strtrans()) peut provoquer un
	    plantage. (Tomas Zellerin)
Solution :  Calculer correctement la longueur de la chaîne retourné par
	    transstr().
Fichiers :  src/charset.c

Rustine 6.0.020
Problème :  Lors de la récupération en interne de la valeur d'une variable
	    globale, une valeur locale à la fonction est parfois obtenue à la
	    place. Cela se produit lors de l'utilisation de <Leader> et
	    <LocalLeader> et de la réinitialisation de la surbrillance dans
	    une fonction.
Solution :  Préfixer le nom de la variable avec "g:". (Aric Blumer)
Fichiers :  src/syntax.c, src/term.c

Rustine 6.0.021
Problème :  L'option 'cscopepathcomp' ne fonctionne pas.
Solution :  Changer USE_CSCOPE en FEAT_CSCOPE. (Mark Feng)
Fichiers :  src/option.c

Rustine 6.0.022
Problème :  Lors de l'utilisation de l'option 'langmap', le deuxième caractère
	    de la commande débutant par "g" n'est pas ajusté.
Solution :  Appliquer 'langmap' au deuxième caractère. (Alex Kapranoff)
Fichiers :  src/normal.c

Rustine 6.0.023
Problème :  Le chargement de la syntaxe lhaskell ne fonctionne pas. (Thore B.
	    Karlsen)
Solution :  Utiliser ":runtime" au lieu de ":source" pour charger
	    "haskell.vim".
Fichiers :  runtime/syntax/lhaskell.vim

Rustine 6.0.024
Problème :  Faire "CTRL-V u 9900" en mode Insertion peut provoquer un
	    plantage. (Noah Levitt)
Solution :  Ne pas insérer d'octet NUL dans le texte, mais utiliser un
	    saut-de-ligne.
Fichiers :  src/misc1.c

Rustine 6.0.025
Problème :  Le motif "\vx(.|$)" ne correspond pas avec "x" à la fin d'une
	    ligne. (Preben Peppe Guldberg)
Solution :  Toujours considérer "$" comme une fin-de-ligne après "\v". Pareil
	    pour "^".
Fichiers :  src/regexp.c

Rustine 6.0.026
Problème :  GTK+ : lors de l'utilisation des touches fléchées pour naviguer
	    dans les menus, les séparateurs sont sélectionnés.
Solution :  Neutraliser les séparateurs. (Pavel Kankovsky)
Fichiers :  src/gui_gtk.c, src/gui_gtk_x11.c

Rustine 6.0.027
Problème :  VMS : l'impression ne fonctionne pas, le fichier est effacé trop
	    tôt.
	    Le menu spécifique à VMS pour l'impression n'est plus nécessaire.
	    gethostname() n'existe pas avec VAXC.
	    Le Makefile ne proposait pas de sélection des fonctionnalités
	    minuscule-énorme.
Solution :  Ajuster la valeur par défaut de l'option 'printexpr'. Corriger les
	    autres problèmes et mettre la documentation à jour. (Zoltan
	    Arpadffy)
Fichiers :  runtime/doc/os_vms.txt, runtime/menu.vim, src/INSTALLvms.txt,
	    src/Make_vms.mms, src/option.c, src/os_unix.c, src/os_vms_conf.h

Rustine 6.0.028
Problème :  Impossible de compiler sans +virtualedit et avec +visualextra.
	    (Geza Lakner)
Solution :  Ajouter un #ifdef pour +virtualedit.
Fichiers :  src/ops.c

Rustine 6.0.029
Problème :  Lors d'un changement dans la ligne 1, suivi d'un changement dans
	    la ligne 2 et d'un effacement de la ligne 1, l'information pour
	    l'annulation pouvait être fausse. Uniquement si les changements
	    sont annulés un par un. (Gerhard Hochholzer)
Solution :  Quand une ligne n'est pas enregistrée pour l'annulation parce
	    qu'elle l'a déjà été auparavant, mémoriser l'entrée pour laquelle
	    la dernière ligne doit être calculée. Ajout du pointeur
	    ue_getbot_entry pour cela. Quand le nombre de lignes change,
	    ajuster la position des entrées de l'annulation plus récentes.
Fichiers :  src/structs.h, src/undo.c

Rustine 6.0.030
Problème :  L'utilisation de ":source! fichier" ne fonctionne pas dans une
	    boucle ou après ":argdo". (Pavol Juhas)
Solution :  Exécuter les commandes du fichier immédiatement, ne pas déléguer à
	    la boucle principale.
Fichiers :  src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c, src/globals.h,
	    src/proto/ex_docmd.pro, src/proto/getchar.pro

Rustine 6.0.031
Problème :  Nextstep ne dispose pas de setenv() et putenv(). (John Beppu)
Solution :  Déplacer putenv() de "pty.c" vers "misc2.c".
Fichiers :  src/misc2.c, src/pty.c

Rustine 6.0.032
Problème :  Quand la modification d'un réglage affecte tous les replis, le
	    changement dans l'affichage n'est pas immédiat.
Solution :  Positionner le drapeau de rafraîchissement dans foldUpdateAll().
Fichiers :  src/fold.c

Rustine 6.0.033
Problème :  Avec 'wildmenu' sur MS-Windows, les noms de fichiers contenant un
	    espace ne sont affichés qu'à partir de cet espace. (Xie Yuheng)
Solution :  Ne pas considérer une contre-oblique devant un espace comme un
	    séparateurs de chemin.
Fichiers :  src/screen.c

Rustine 6.0.034
Problème :  Appeler searchpair() avec trois arguments pouvait provoquer un
	    plantage ou d'étranges messages d'erreur. (Kalle Bjorklid)
Solution :  Ne pas utiliser le cinquième argument si le quatrième n'est pas
	    spécifié.
Fichiers :  src/eval.c

Rustine 6.0.035
Problème :  L'élément de menu Edit/Global_Settings/Toggle_Toolbar ne
	    fonctionne pas quand 'ignorecase' est activé. (Allen Castaban)
Solution :  Toujours respecter la casse lors du test de la présence d'un
	    drapeau dans 'guioptions'.
Fichiers :  runtime/menu.vim

Rustine 6.0.036
Problème :  OS/2, MS-DOS et MS-Windows : l'utilisation d'un chemin débutant
	    par une oblique dans 'tags' ne fonctionne pas comme prévu.
	    (Mathias Koehrer)
Solution :  N'utiliser que l'unité, et non pas le chemin complet jusqu'au
	    répertoire courant.
	    Fonctionne à présent aussi pour "c:rep/fichier".
Fichiers :  src/misc2.c

Rustine 6.0.037
Problème :  Quand l'utilisateur a fixé "did_install_syntax_menu" pour éviter
	    le menu Syntaxe par défaut, ce dernier apparaît tout de même.
	    (Virgilio)
Solution :  Ne pas ajouter les trois éléments par défaut quand
	    "did_install_syntax_menu" est fixé.
Fichiers :  runtime/menu.vim

Rustine 6.0.038
Problème :  Quand 'selection' vaut "exclusive", l'effacement d'un bloc de
	    texte à la fin de la ligne peut laisser le curseur au-delà de la
	    fin de la ligne.
Solution :  Corriger la position du curseur.
Fichiers :  src/ops.c

Rustine 6.0.039
Problème :  "gP" laisse le curseur à une mauvaise position quand 'virtualedit'
	    est utilisé. L'utilisation de "c" est mode Visuel par bloc laisse
	    le curseur à une position étrange.
Solution :  Avec "gP", réinitialiser le champ "coladd" pour la marque ']. Pour
	    "c", laisser le curseur sur le dernier caractère inséré.
Fichiers :  src/ops.c

Rustine 6.0.040
Problème :  Quand 'fileencoding' est invalide et que l'écriture échoue à cause
	    de cela, le fichier original disparaît. (Eric Carlier)
Solution :  Restaurer le fichier original d'après la sauvegarde.
Fichiers :  src/fileio.c

Rustine 6.0.041
Problème :  Utiliser ":language messages en" quand LC_MESSAGES est indéfini
	    aboutit à fixer LC_CTYPE. (Eric Carlier)
Solution :  Fixer $LC_MESSAGES à la place.
Fichiers :  src/ex_cmds2.c

Rustine 6.0.042
Problème :  ":mksession" ne prend pas en compte les noms de fichier avec des
	    espaces.
Solution :  Protéger les caractères spéciaux dans les noms de fichiers avec
	    une contre-oblique.
Fichiers :  src/ex_docmd.c

Rustine 6.0.043
Problème :  La rustine 6.0.041 est fausse.
Solution :  Utiliser mch_getenv() au lieu de vim_getenv().
Fichiers :  src/ex_cmds2.c

Rustine 6.0.044
Problème :  L'utilisation d'une liste "containedin" avec un élément de syntaxe
	    ne fonctionne pas pour un élément ne disposant pas d'un argument
	    "contains". De même, "containedin" n'ignore pas les éléments
	    transparents. (Timo Frenay)
Solution :  Quand un argument "containedin" est spécifié, toujours vérifier
	    les éléments contenus. Ne pas vérifier les éléments transparents,
	    mais les éléments dans lesquels ils sont contenus.
Fichiers :  src/structs.h, src/syntax.c

Rustine 6.0.045
Problème :  Après la création d'un repli à l'aide d'une sélection Visuel, une
	    autre fenêtre sur le même tampon montrait toujours du texte en
	    surbrillance. (Sami Salonen)
Solution :  Redessiner le texte en surbrillance.
Fichiers :  src/normal.c

Rustine 6.0.046
Problème :  Quand getrlimit() retourne une nombre de 8 octets, le test de
	    taille de pile peut échouer. (Anthony Meijer)
Solution :  Ignorer le test de taille de pile si la limite ne tient pas dans
	    un long.
Fichiers :  src/auto/configure, src/config.h.in, src/configure.in,
	    src/os_unix.c

Rustine 6.0.047
Problème :  L'utilisation d'une exprat avec "\(\)" dans un élément "\%[]"
	    provoque un plantage. (Samuel Lacas)
Solution :  Ne pas autoriser les atomes imbriqués dans "\%[]".
Fichiers :  src/regexp.c

Rustine 6.0.048
Problème :  Win32 : dans la console, la souris ne fonctionne pas toujours
	    correctement. Parfois, après la récupération du focus, un
	    mouvement de la souris est interprété comme un clic.
Solution :  Utiliser une fonction différente pour obtenir le nombre de boutons
	    de la souris. Cela évite de reconnaître la pression sur un bouton
	    à partir de bits indéfinis. (Vince Negri)
Fichiers :  src/os_win32.c

Rustine 6.0.049
Problème :  Lors de l'utilisation de evim, l'écran d'accueil est trompeur.
	    (Adrian Nagle)
Solution :  Mentionner si 'insertmode' est activé et les menus à utiliser.
Fichiers :  runtime/menu.vim, src/version.c

Rustine 6.0.050
Problème :  UTF-8 : "viw" n'inclut pas les caractères non ASCII situés avant
	    le curseur. (Bertilo Wennergren)
Solution :  Utiliser dec_cursor() au lieu de décrémenter le numéro de colonne.
Fichiers :  src/search.c

Rustine 6.0.051
Problème :  UTF-8 : l'utilisation de CTRL-R dans la ligne de commande n'insère
	    pas de caractères de composition. (Ron Aaron)
Solution :  Inclure aussi les caractères de composition et corriger le
	    rafraîchissement.
Fichiers :  src/ex_getln.c, src/ops.c

Rustine 6.0.052
Problème :  La vérification de rlim_t dans la rustine 6.0.046 ne fonctionne
	    pas sur certains systèmes. (Zdenek Sekera)
Solution :  Chercher rlim_t également dans "sys/resource.h".
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.0.053 (extra)
Problème :  Divers problèmes avec QNX.
Solution :  Correction mineure de `configure`. Activer le support du
	    presse-papiers du terminal dans "main.c". Correction du support de
	    la souris "pterm". "os_qnxc" ne compilait pas sans photon. (Julian
	    Kinraid)
Fichiers :  src/auto/configure, src/configure.in, src/gui_photon.c,
	    src/main.c, src/misc2.c, src/option.h, src/os_qnx.c, src/os_qnx.h,
	    src/syntax.c

Rustine 6.0.054
Problème :  Lors de l'utilisation de "mswin.vim", CTRL-V colle un bloc de
	    texte comme s'il s'agit d'un texte normal. L'utilisation de CTRL-V
	    en mode Visuel par bloc laisse des caractères "x" derrière.
Solution :  Faire fonctionner CTRL-V comme il le devrait. Pareil pour les
	    entrées Coller du menu.
Fichiers :  runtime/menu.vim, runtime/mswin.vim

Rustine 6.0.055
Problème :  GTK+ : la sélection n'est pas copiée la première fois.
Solution :  Disposer de la sélection au moment approprié.
Fichiers :  src/gui_gtk_x11.c

Rustine 6.0.056
Problème :  Faire "CTRL-O cw" en mode Insertion aboutit à une imbrication de
	    modes Insertion. <Echap> ne sort alors plus du mode Insertion.
Solution :  Utiliser les modes Insertion imbriqués uniquement quand
	    'insertmode' est activé ou qu'un mappage est utilisé.
Fichiers :  src/normal.c

Rustine 6.0.057
Problème :  Utiliser ":wincmd g}" dans une fonction ne fonctionne pas. (Gary
	    Holloway)
Solution :  Exécuter la commande directement, au lieu de la mettre dans le
	    tampon typeahead.
Fichiers :  src/normal.c, src/proto/normal.pro, src/window.c

Rustine 6.0.058
Problème :  Quand une autocommande Cursorhold déplace le curseur, la règle
	    n'est pas mise à jour. (Bohdan Vlasyuk)
Solution :  Mettre la règle à jour après l'exécution des autocommandes.
Fichiers :  src/gui.c

Rustine 6.0.059
Problème :  La surbrillance de 'hlsearch' n'est pas visible dans les lignes
	    colorées selon la surbrillance Diff. (Gary Holloway)
Solution :  Permettre à la surbrillance de 'hlsearch' de recouvrir celle du
	    mode diff.
Fichiers :  src/screen.c

Rustine 6.0.060
Problème :  Motif : quand une bulle d'aide est affichée, Vim plante. (Gary
	    Holloway)
Solution :  Tester une valeur de retour NULL pour
	    gui_motif_fontset2fontlist().
Fichiers :  src/gui_beval.c

Rustine 6.0.061
Problème :  Les boutons de la barre d'outils pour charger ou enregistrer une
	    session n'utilisent pas v:this_session correctement.
Solution :  Tester si v:this_session est vide plutôt que son existence.
Fichiers :  runtime/menu.vim

Rustine 6.0.062
Problème :  Plantage à l'utilisation de ":shell" quand 'verbose' est supérieur
	    à 3. (Yegappan Lakshmanan)
Solution :  Éviter de transmettre un pointeur NULL à printf(). Ajouter un
	    saut-de-ligne et activer le curseur.
Fichiers :  src/misc2.c

Rustine 6.0.063
Problème :  Quand 'cpoptions' contient "$", utiliser "cw" pour saisir une ')'
	    sur le "$" ne met pas la coloration syntaxique de la suite de la
	    ligne à jour.
Solution :  Ne plus afficher "$" quand une ')' est tapée à la même position.
Fichiers :  src/search.c

Rustine 6.0.064 (extra)
Problème :  Le script d'installation NSIS ne fonctionne pas avec les versions
	    récentes de NSIS.
	    La fonctionnalité diff ne fonctionne pas quand il n'existe pas de
	    "diff.exe" valable sur le système.
Solution :  Remplacer l'instruction GetParentDir par une fonction utilisateur.
	    Correction de quelques problèmes cosmétiques. Utiliser des
	    constantes pour le numéro de version, de façon à ce qu'il ne soit
	    défini qu'à un seul endroit.
	    N'accepter que des répertoires d'installation se terminant par
	    vim. (Eduardo Fernandez)
	    Ajout de "diff.exe", utilisé par le _vimrc par défaut.
Fichiers :  nsis/gvim.nsi, nsis/README.txt, src/dosinst.c

Rustine 6.0.065
Problème :  Quand ":normal" est utilisé dans 'indentexpr', il peut utiliser
	    des caractères de restauration avant son argument. (Neil Bird)
Solution :  Mémoriser et restaurer ce qui concerne les tampons dans
	    ex_normal().
Fichiers :  src/ex_docmd.c, src/getchar.c, src/globals.h, src/structs.h

Rustine 6.0.066
Problème :  Parfois, l'annulation d'une commande est scindée en deux actions
	    d'annulation. (Halim Salman)
Solution :  Ne pas positionner le drapeau undo-synced lors de la réutilisation
	    d'une ligne déjà mémorisée pour l'annulation.
Fichiers :  src/undo.c

Rustine 6.0.067
Problème :  "if_xcmdsrv.c" ne compile pas sur les systèmes sur lesquels fd_set
	    n'est pas défini dans un fichier d'en-tête du système (par exemple
	    AIX). (Mark Waggoner)
Solution :  Inclure "sys/select.h" dans "if_xcmdsrv.c" pour les systèmes qui
	    en disposent.
Fichiers :  src/if_xcmdsrv.c

Rustine 6.0.068
Problème :  Lors de la mise en forme avec "gq" d'une zone Visuellement
	    sélectionnée et que le nombre de lignes augmente, la dernière
	    ligne peut ne pas être rafraîchie correctement. (Yegappan
	    Lakshmanan)
Solution :  Corriger la zone pour qu'elle soit redessinée quand des lignes
	    sont ajoutées/supprimées.
Fichiers :  src/ops.c

Rustine 6.0.069
Problème :  Utiliser "K" sur un mot contenant un "!" provoque une erreur "No
	    previous command", car "!" est étendu. (Craig Jeffries)
Solution :  Mettre une contre-oblique devant le "!".
Fichiers :  src/normal.c

Rustine 6.0.070
Problème :  Win32 : le message d'erreur à propos de l'échec d'une liaison
	    dynamique avec Perl, Ruby ou Python n'est pas clair quant à la
	    cause du problème.
Solution :  Donner le nom de la bibliothèque ou de la fonction qui n'a pas pu
	    être chargée. Pareil pour les bibliothèques iconv et gettext quand
	    'verbose' est activé.
Fichiers :  src/eval.c, src/if_perl.xs, src/if_python.c, src/if_ruby.c,
	    src/if_tcl.c, src/mbyte.c, src/os_win32.c, src/proto/if_perl.pro,
	    src/proto/if_python.pro, src/proto/if_ruby.pro,
	    src/proto/if_tcl.pro, src/proto/mbyte.pro

Rustine 6.0.071
Problème :  Le termcap intégré "iris-ansi" n'est pas terrible.
Solution :  corriger les entrées fausses. (David Harrison)
Fichiers :  src/term.c

Rustine 6.0.072
Problème :  Quand 'lazyredraw' est activé, un mappage qui arrête le mode
	    Visuel, déplace le curseur puis repasse en mode Visuel provoque un
	    problème de rafraîchissement. (Brian Silverman)
Solution :  Redessiner aussi bien l'ancienne que la nouvelle zone Visuel si
	    nécessaire.
Fichiers :  src/normal.c, src/screen.c

Rustine 6.0.073 (extra)
Problème :  DJGPP : lors de l'utilisation de CTRL-Z pour lancer un shell,
	    l'invite se retrouve au milieu du texte. (Volker Kiefel)
Solution :  Positionner le curseur avant de démarrer le shell.
Fichiers :  src/os_msdos.c

Rustine 6.0.074
Problème :  Lors de l'utilisation de "&" dans une chaîne de substitution, un
	    caractère multi-octets avec un octet final valant 0x5c n'est pas
	    correctement pris en charge .
Solution :  Reconnaître les caractères multi-octets dans la partie "&" des
	    chaînes de substitution. (Muraoka Taro)
Fichiers :  src/regexp.c

Rustine 6.0.075
Problème :  Lors de la fermeture d'une fenêtre partagée horizontalement, alors
	    que 'eadirection' vaut "hor", une autre fenêtre partagée
	    horizontalement est encore redimensionnée. (Aron Griffis)
Solution :  Ne redimensionner que la fenêtre située dans le même cadre que la
	    fenêtre partagée ou fermée.
Fichiers :  src/main.c, src/proto/window.pro, src/window.c

Rustine 6.0.076
Problème :  Avertissement à propos de type de pointeur erroné lors de la
	    compilation.
Solution :  Utiliser char plutôt que char_u pour les pointeurs.
Fichiers :  src/version.c

Rustine 6.0.077
Problème :  La rustine 6.0.075 est incomplète.
Solution :  Correction d'un autre appel à win_equal().
Fichiers :  src/option.c

Rustine 6.0.078
Problème :  Utiliser "daw" à la fin d'une ligne sur un mot d'un seul
	    caractère n'inclut pas l'espace blanc devant. À la fin du fichier,
	    cela ne fonctionne pas du tout. (Gavin Sinclair)
Solution :  Inclure l'espace blanc devant le mot.
Fichiers :  src/search.c

Rustine 6.0.079
Problème :  Quand 'cpoptions' contient "W" et 'backupcopy' vaut "no" ou
	    "auto", il reste possible d'écraser un fichier en lecture seule,
	    car il est renommé. (Gary Holloway)
Solution :  Ajouter un test sur la lecture seule d'un fichier avant de
	    renommer le fichier pour en faire une sauvegarde.
Fichiers :  src/fileio.c

Rustine 6.0.080
Problème :  Quand un fichier de session est utilisé pour un fichier affiché
	    dans deux fenêtres, l'appel à fileinfo() dans do_ecmd() provoque
	    le défilement de l'écran et une invite Plus. (Robert Webb)
Solution :  Ne pas faire défiler avec le message quand 'shortmess' contient
	    'O'.
Fichiers :  src/ex_cmds.c

Rustine 6.0.081
Problème :  Après avoir utilisé ":saveas", le nouveau nom du tampon est ajouté
	    au menu Tampons avec un mauvais numéro. (Chauk-Mean Proum)
Solution :  Déclencher les événements BufFilePre et BufFilePost pour le tampon
	    renommé et BufAdd pour l'ancien nom (qui est un nouveau tampon).
Fichiers :  src/ex_cmds.c

Rustine 6.0.082
Problème :  Pendant le basculement d'écran dans un xterm, quand il se produit
	    un message (d'erreur) dû au script vimrc, l'invite du shell est
	    après le message.
Solution :  Envoyer un saut-de-ligne quand des caractères on été émis dans
	    l'autre écran.
	    Pareil quand l'IHM graphique est lancée.
Fichiers :  src/main.c

Rustine 6.0.083
Problème :  GTK+ : quand le support des menus n'est pas compilé, les boutons
	    dans les dialogues ne contiennent pas de texte. (Erik Edelmann)
Solution :  Ajouter aussi le texte quand GTK_USE_ACCEL n'est pas définie.
	    Définir aussi GTK_USE_ACCEL quand les menus ne sont pas utilisés.
Fichiers :  src/gui_gtk.c

Rustine 6.0.084
Problème :  UTF-8 : une commande "r" avec un argument qui est le codage
	    clavier d'un caractère avec un caractère de composition ne peut
	    pas être répétée avec ".". (Raphael Finkel)
Solution :  Ajouter le caractère de composition dans le tampon de
	    restauration.
Fichiers :  src/normal.c

Rustine 6.0.085
Problème :  Avec 'mousefocus' activé, l'utilisation de "s" pour aller en mode
	    Insertion suivie du déplacement du pointeur de la souris dans une
	    autre fenêtre arrête le mode Insertion, alors que cela ne se
	    produit pas pour "a" ou "i". (Robert Webb)
Solution :  Réinitialiser finish_op avant d'appeler edit().
Fichiers :  src/normal.c

Rustine 6.0.086
Problème :  À l'utilisation "gu", le message dit "~ed".
Solution :  Faire que le message dise "changed".
Fichiers :  src/ops.c

Rustine 6.0.087 (lang)
Problème :  La traduction des messages est incorrecte, ce qui peut provoquer
	    des plantages. (Peter Figura)
	    La traduction turque a besoin de davantage de travail et le
	    responsable n'a pas le temps de s'en occuper.
Solution :  Corriger l'ordre des arguments printf. Supprimer les constructions
	    %2$d. Ajouter "-v" à msgfmt pour obtenir un avertissement en cas
	    de traduction incorrecte.
	    Mise à jour de quelques traductions supplémentaires.
Fichiers :  src/po/Makefile, src/po/af.po, src/po/cs.po, src/po/cs.cp1250.po,
	    src/po/de.po, src/po/es.po, src/po/fr.po, src/po/it.po,
	    src/po/ja.po, src/po/ja.sjis.po, src/po/ko.po, src/po/pl.po,
	    src/po/sk.po, src/po/uk.po, src/po/zh_CN.UTF-8.po,
	    src/po/zh_CN.cp936.po, src/po/zh_CN.po, src/po/zh_TW.po

Rustine 6.0.088
Problème :  "." ne fonctionne pas correctement après avoir utilisé "rx" en
	    mode Visuel. (Charles Campbell)
Solution :  Mémoriser également le caractère de remplacement dans le tampon de
	    restauration.
Fichiers :  src/normal.c

Rustine 6.0.089
Problème :  Dans un fichier C, utiliser "==" pour aligner une ligne débutant
	    par "*  " après une ligne avec "* -" indente trop peu d'un espace.
	    (Piet Delport)
Solution :  Aligner avec les lignes précédentes si la chaîne indiquant un
	    début de caractère correspond.
Fichiers :  src/misc1.c

Rustine 6.0.090
Problème :  Quand une ligne enroulée ne tient pas dans une fenêtre et que
	    'scrolloff' est supérieur à la moitié de la hauteur de la fenêtre,
	    déplacer le curseur à droite ou à gauche provoque de sévères
	    clignotements de l'écran. (Lubomir Host)
Solution :  Quand il n'y a pas assez de place pour afficher 'scrolloff' lignes
	    d'écran et que la fin de la ligne est proche, afficher la fin de
	    la ligne.
Fichiers :  src/move.c

Rustine 6.0.091
Problème :  Utiliser CTRL-O en mode Insertion, alors que 'virtualedit' vaut
	    "all" et que le curseur est après la fin-de-ligne, déplace le
	    curseur à gauche. (Yegappan Lakshmanan)
Solution :  Laisser le curseur à la même position.
Fichiers :  src/edit.c

Rustine 6.0.092
Problème :  Le greffon "explorer.vim" respecte la casse des 'suffixes' sur
	    MS-Windows. (Mike Williams)
Solution :  Respecter ou ignorer la casse selon le système d'exploitation.
Fichiers :  runtime/plugin/explorer.vim

Rustine 6.0.093
Problème :  Quand il n'est pas possible de charger dynamiquement la
	    bibliothèque Tcl, un message d'erreur est émis lors de la
	    fermeture d'un tampon ou d'une fenêtre. (Muraoka Taro)
Solution :  Ne libérer les structures que si l'interpréteur Tcl est déjà
	    utilisé.
Fichiers :  src/if_tcl.c

Rustine 6.0.094
Problème :  Athena : lors d'un clic sur une barre de défilement horizontale,
	    Vim plante. (Paul Ackersviller)
Solution :  Utiliser la taille du curseur au lieu du pointeur de fenêtre de la
	    barre de défilement (qui est NULL). (David Harrison)
	    Éviter aussi que le défilement aille dans le mauvais sens dans une
	    fenêtre étroite.
Fichiers :  src/gui_athena.c

Rustine 6.0.095
Problème :  Perl : effacer des lignes peut laisser le curseur au-delà de la
	    fin du fichier.
Solution :  Vérifier la position du curseur après l'effacement d'une ligne.
	    (Serguei)
Fichiers :  src/if_perl.xs

Rustine 6.0.096
Problème :  Quand ":saveas nomfich" échoue parce que le fichier existe déjà,
	    le nom du fichier est tout de même changé et un prochain ":w"
	    écrasera le fichier. (Eric Carlier)
Solution :  Ne pas changer le nom du fichier si le fichier existe déjà.
Fichiers :  src/ex_cmds.c

Rustine 6.0.097
Problème :  Réindenter avec CTRL-F en mode Insertion peut provoquer un
	    plantage avec codage multi-octets.
Solution :  Éviter d'utiliser un caractère avant le début d'une ligne. (Sergey
	    Vlasov)
Fichiers :  src/edit.c

Rustine 6.0.098
Problème :  GTK+ : lors de l'utilisation de Gnome pour les boîtes de dialogue
	    "Search" et "Search and Replace", ces dernières ne sont pas
	    traduites.
Solution :  Définir ENABLE_NLS avant d'inclure "gnome.h". (Eduardo Fernandez)
Fichiers :  src/gui_gtk.c, src/gui_gtk_x11.c

Rustine 6.0.099
Problème :  CygWin : en fonctionnement compatible Vi, les fins-de-lignes
	    MS-DOS pose des problèmes.
Solution :  Faire de "unix,dos" la valeur par défaut pour 'fileformats' en
	    mode compatible Vi. (Michael Schaap)
Fichiers :  src/option.h

Rustine 6.0.100
Problème :  ":badd +0 test%fichier" provoque un plantage.
Solution :  Se rappeler que le "+0" se termine par un octet NUL quand l'espace
	    pour remplacer "%" est alloué.
Fichiers :  src/ex_docmd.c

Rustine 6.0.101
Problème :  ":mksession" ne restaure pas l'édition d'un fichier dont le nom
	    contient un '#' ou un '%'. (Wolfgang Blankenburg)
Solution :  Mettre une contre-oblique devant '#' et '%'.
Fichiers :  src/ex_docmd.c

Rustine 6.0.102
Problème :  Lors de la modification d'un repli, le curseur peut apparaître à
	    la moitié d'un repli fermé. (Nam SungHyun)
Solution :  Fixer correctement w_cline_folded. (Yasuhiro Matsumoto)
Fichiers :  src/move.c

Rustine 6.0.103
Problème :  Lors de l'utilisation de 'scrollbind', une grande valeur
	    de 'scrolloff' provoque l'arrêt de la synchronisation du
	    défilement à proximité de la fin du fichier. (Coen Engelbarts)
Solution :  Ne pas utiliser 'scrolloff' quand la ligne supérieure est
	    contrainte par la synchronisation du défilement. (Dany StAmant)
Fichiers :  src/normal.c

Rustine 6.0.104
Problème :  Multi-octets : quand 'cpoptions' contient "$", la saisie d'un
	    caractère à largeur double écrasant la partie gauche d'un autre
	    caractère à largeur double pose des problèmes de rafraîchissement
	    et interrompt le clignotements du curseur.
Solution :  Effacer la partie droite de l'autre caractère. (Yasuhiro
	    Matsumoto)
Fichiers :  src/edit.c, src/screen.c

Rustine 6.0.105
Problème :  Multi-octets : dans une fenêtre d'une seule colonne de largeur,
	    avec la coloration syntaxique activé, un plantage peut se
	    produire.
Solution :  Ignorer la demande d'attributs quand le caractère n'a pas la place
	    d'être affiché dans la fenêtre. (Yasuhiro Matsumoto)
Fichiers :  src/screen.c

Rustine 6.0.106 (extra)
Problème :  Win32 : quand la police de l'imprimante est mauvaise, aucun
	    message d'erreur n'est émis.
Solution :  Émettre un message d'erreur approprié. (Yasuhiro Matsumoto)
Fichiers :  src/os_mswin.c

Rustine 6.0.107 (extra)
Problème :  VisVim : lors de l'édition d'un autre fichier, un fichier modifié
	    peut être écrit à l'improviste et sans avertissement.
Solution :  Partager la fenêtre si un fichier a été modifié.
Fichiers :  VisVim/Commands.cpp

Rustine 6.0.108
Problème :  Avec des replis, Vim peut tenter d'afficher la ligne 0, ce qui
	    aboutit à une erreur de pointeur NULL.
Solution :  Arrêter de décrémenter w_topline quand la première ligne de la
	    fenêtre est dans un repli fermé.
Fichiers :  src/window.c

Rustine 6.0.109
Problème :  XIM : quand la méthode de saisie est activée, la répétition d'une
	    insertion avec "." la désactive. (Marcel Svitalsky)
Solution :  Ne pas mémoriser l'état de la méthode de saisie quand la commande
	    provient du tampon générique.
Fichiers :  src/ui.c

Rustine 6.0.110
Problème :  Faire une annulation après l'exécution de "OxjAxkdd" depuis un
	    registre dans un tampon vide produit un message d'erreur. (Gerhard
	    Hochholzer)
Solution :  Ne pas ajuster le numéro de la dernière ligne d'un bloc
	    d'annulation en cas de nullité. Ajouter un test pour ce problème.
Fichiers :  src/undo.c, src/testdir/test20.in, src/testdir/test20.ok

Rustine 6.0.111
Problème :  La fonction virtcol() ne tient pas compte de 'virtualedit'.
Solution :  Ajouter le décalage de colonnes si nécessaire. (Yegappan
	    Lakshmanan)
Fichiers :  src/eval.c

Rustine 6.0.112
Problème :  Le greffon "explorer.vim" ne trie pas les répertoires contenant un
	    espace ou un caractère spécial et situé après un répertoire avec
	    un nom plus court.
Solution :  Ignorer l'oblique finale lors de la comparaison des noms. (Mike
	    Williams)
Fichiers :  runtime/plugin/explorer.vim

Rustine 6.0.113
Problème :  ":edit ~/nomfich" ne fonctionne pas quand $HOME contient un
	    espace. De même, l'expansion des jokers par le shell peut échouer.
	    (John Daniel)
Solution :  Protéger les espaces avec des contre-obliques si nécessaire.
Fichiers :  src/ex_docmd.c, src/misc1.c, src/proto/misc1.pro, src/os_unix.c

Rustine 6.0.114
Problème :  L'utilisation de ":p" avec fnamemodify() n'étend pas "~/" ou
	    "~user/" en chemin complet. Avec Win32, le répertoire courant
	    était ajouté. (Michael Geddes)
Solution :  Étendre le répertoire de l'utilisateur.
Fichiers :  src/eval.c

Rustine 6.0.115 (extra)
Problème :  Win32 : lors de l'utilisation d'un dialogue avec un champ de
	    texte, il est impossible de faire défiler le texte.
Solution :  Ajouter ES_AUTOHSCROLL au style du champ de texte. (Pedro Gomes)
Fichiers :  src/gui_w32.c

Rustine 6.0.116 (extra)
Problème :  MS-Windows NT/2000/XP : filewritable() ne fonctionne pas
	    correctement pour les systèmes de fichiers utilisant les ACL.
Solution :  Utiliser les fonctions ACL pour vérifier si le fichier est
	    inscriptible. (Mike Williams)
Fichiers :  src/eval.c, src/macros.h, src/os_win32.c, src/proto/os_win32.pro

Rustine 6.0.117 (extra)
Problème :  Win32 : quand le menu est désactivé, "set lines=999" n'utilise pas
	    toute la place disponible à l'écran.
Solution :  Ne pas soustraire la taille fixe des écritures mais la hauteur
	    réelle du menu de l'espace disponible à l'écran. De même, éviter
	    la récursivité de gui_mswin_get_menu_height().
Fichiers :  src/gui_w32.c, src/gui_w48.c

Rustine 6.0.118
Problème :  Quand $TMPDIR est un chemin relatif, le répertoire temporaire est
	    incomplet (il manque l'oblique finale) et n'est pas effacé quand
	    Vim quitte. (Peter Holm)
Solution :  Ajouter l'oblique après l'expansion du répertoire en chemin
	    absolu.
Fichiers :  src/fileio.c

Rustine 6.0.119 (basée sur la rustine 6.0.116)
Problème :  VMS : filewritable() ne fonctionne pas correctement.
Solution :  Utiliser la même méthode qu'avec Unix. (Zoltan Arpadffy)
Fichiers :  src/eval.c

Rustine 6.0.120
Problème :  La conversion en HTML n'est pas compatible avec XHTML.
Solution :  Mettre les valeurs entre doubles-apostrophes. (Jess Thrysoee)
Fichiers :  runtime/syntax/2html.vim

Rustine 6.0.121 (extra) (basée sur la rustine 6.0.116)
Problème :  Win32 : après la rustine 6.0.116, Vim ne compile plus avec
	    mingw32.
Solution :  Ajouter un #ifdef HAVE_ACL.
Fichiers :  src/os_win32.c

Rustine 6.0.122 (extra)
Problème :  Win16 : même problèmes de redimensionnement que ceux corrigés sur
	    Win32 par la rustine 6.0.117. Ainsi que le problème des champs de
	    texte de la rustine 6.0.115.
Solution :  Ne fixer old_menu_height que quand il est utilisé. Ajout du
	    drapeau ES_AUTOHSCROLL. (Vince Negri)
Fichiers :  src/gui_w16.c

Rustine 6.0.123 (basée sur la rustine 6.0.119)
Problème :  Win16 : problèmes de compilation.
Solution :  Déplacer les "&&" sur des lignes distinctes. (Vince Negri)
Fichiers :  src/eval.c

Rustine 6.0.124
Problème :  Lors de l'utilisation d'une commande ":substitute" débutant par
	    "\=" (évaluée comme une expression), "~" est toujours remplacé par
	    la chaîne de substitution précédente.
Solution :  Ignorer le remplacement quand la chaîne de substitution débute par
	    "\=". Ajustement de la documentation à propos du doublement des
	    contre-obliques.
Fichiers :  src/ex_cmds.c, runtime/doc/change.txt

Rustine 6.0.125 (extra)
Problème :  Win32 : lors de l'utilisation de la fonctionnalité multi_byte_ime,
	    un appui sur la touche Maj est considéré comme une saisie de
	    caractère, de fait les mappages Maj+touches ne fonctionnent pas.
	    (Charles Campbell)
Solution :  Ignorer l'appui sur les touches Maj, Ctrl et Alt.
Fichiers :  src/os_win32.c

Rustine 6.0.126
Problème :  La bibliothèque Python est toujours liée statiquement.
Solution :  Lier dynamiquement la bibliothèque Python. (Matthias Klose)
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.0.127
Problème :  Lors de l'utilisation d'un terminal basculant l'écran et que la
	    couleur Normal du fond est différente de celle du terminal,
	    l'utilisation d'une commande externe peut provoquer un changement
	    de couleur dans le mauvais écran. (Mark Waggoner)
Solution :  Ne pas appeler screen_stop_highlight() dans stoptermcap().
Fichiers :  src/term.c

Rustine 6.0.128
Problème :  Lors du déplacement d'une fenêtre partagée verticalement
	    complètement à gauche ou à droite, les barres de défilement ne
	    sont pas ajustées. (Scott E Lee) Quand 'mousefocus' est activé, le
	    pointeur de la souris n'est pas ajusté.
Solution :  Ajuster les barres de défilement et le pointeur de la souris.
Fichiers :  src/window.c

Rustine 6.0.129
Problème :  Lors de l'utilisation d'un nom de fichier très long, ":ls" (répété
	    plusieurs fois) provoque un plantage. Ajout d'un test avec "vim
	    `perl -e 'print "A"x1000'`". (Tejeda)
Solution :  Terminer la chaîne avant de récupérer sa longueur dans
	    buflist_list().
Fichiers :  src/buffer.c

Rustine 6.0.130
Problème :  Lors de l'utilisation de ":cprev" alors que la fenêtre des erreurs
	    est ouverte, et que la nouvelle première ligne est enroulée, la
	    fenêtre n'est pas rafraîchie correctement. (Yegappan Lakshmanan)
Solution :  Ne pas défiler deux fois lors du rafraîchissement de la première
	    ligne.
Fichiers :  src/screen.c

Rustine 6.0.131
Problème :  Lors de l'utilisation de bufname() et qu'il existe deux
	    correspondances dans les tampons listés et une dans les tampons
	    non listés, le tampon non listé est retenu. (Aric Blumer)
Solution :  Quand il existe une correspondance dans les tampons listés, ne pas
	    vérifier la liste des tampons non listés.
Fichiers :  src/buffer.c

Rustine 6.0.132
Problème :  Quand 'iminsert' est fixé dans le vimrc et qu'un xterm avec deux
	    écrans est utilisé, la règle est dessinée dans le mauvais écran.
	    (Igor Goldenberg)
Solution :  Ne dessiner la règle que lorsque le bon écran est utilisé.
Fichiers :  src/option.c

Rustine 6.0.133
Problème :  Lors de l'ouverture d'un autre tampon alors que 'keymap' est fixé
	    et 'iminsert' est nul, 'iminsert' est fixé à 1 de manière
	    inattendue. (Igor Goldenberg)
Solution :  Ne pas fixer 'iminsert' comme effet de bord de la définition
	    d'un mappage ":lmap". Ne le faire que quand 'keymap' est fixé.
Fichiers :  src/getchar.c, src/option.c

Rustine 6.0.134
Problème :  Lors du complètement de ":set tags=", un chemin contenant des
	    espaces provoque l'arrêt du complètement. (Sektor van Skijlen)
Solution :  Protéger les espaces avec des contre-obliques, comme avec ":set
	    path=". Tenir compte des contre-obliques lors de la recherche du
	    début du chemin à compléter (par exemple pour 'backupdir' et
	    'cscopeprg').
Fichiers :  src/ex_docmd.c, src/ex_getln.c, src/option.c, src/structs.h

Rustine 6.0.135
Problème :  Les menus censés ne rien faire utilise "<Nul>", qui produit
	    toujours un signal sonore d'erreur.
	    Quand CTRL-O est mappé en mode Insertion, les commandes ":amenu"
	    ne fonctionnent pas en mode Insertion.
	    La langue des menus retourne à l'anglais quand $LANG se termine
	    par "@euro".
Solution :  Utiliser "<Nop>" pour les éléments de menu ne faisant rien, comme
	    pour les mappages.
	    Utiliser ":anoremenu" au lieu de ":amenu".
	    Ignorer "@euro" dans le nom des régions linguistiques.
Fichiers :  runtime/makemenu.vim, runtime/menu.vim, src/menu.c

Rustine 6.0.136
Problème :  Lors du complètement en mode Insertion, un mappage peut être
	    appliqué de manière inattendue.
Solution :  Ne pas tenir compte des mappages pour les caractères saisis.
Fichiers :  src/edit.c

Rustine 6.0.137
Problème :  IHM graphique : lors de l'utilisation des dialogues Rechercher ou
	    Rechercher/Remplacer depuis le mode Insertion, le mode de saisie
	    est interrompu.
Solution :  Ne pas utiliser l'état de la méthode de saisie quand la fenêtre
	    principale ne dispose pas du focus.
Fichiers :  src/ui.c

Rustine 6.0.138
Problème :  IHM graphique : lors de l'utilisation des dialogues Rechercher ou
	    Rechercher/Remplacer depuis le mode Insertion, le texte est inséré
	    quand CTRL-O est mappé. (Andre Pang)
	    À l'ouverture suivante, une recherche sur un mot entier n'est pas
	    reconnue.
	    Lors d'un "Remplacer tout", la recherche sur un mot entier n'est
	    jamais effectuée.
Solution :  Ne pas mettre de commandes de recherche ou de remplacement dans le
	    tampon de saisie, mais les exécuter directement.
	    Reconnaître "\<" et "\>" après la suppression de "\V".
	    Ajouter "\<" et "\>" pour "Remplacer tout" également.
Fichiers :  src/gui.c

Rustine 6.0.139
Problème :  Quand le complètement 'wildmenu' est interrompu, la ligne d'état
	    de la fenêtre inférieure gauche partagée verticalement n'est pas
	    rafraîchie. (Yegappan Lakshmanan)
Solution :  Redessiner toutes les ligne d'état.
Fichiers :  src/ex_getln.c, src/proto/screen.pro, src/screen.c

Rustine 6.0.140
Problème :  Fuite de la mémoire allouée pour les mappages locaux et
	    abréviations quand un tampon est détruit.
Solution :  Effacer des mappages locaux quand un tampon est détruit.
Fichiers :  src/buffer.c, src/getchar.c, src/proto/getchar.pro, src/vim.h

Rustine 6.0.141
Problème :  Lors de l'utilisation de ":enew" dans un tampon vide, certaines
	    choses locales au tampon ne sont pas effacées. b:keymap_name n'est
	    pas fixé.
Solution :  Effacer les commandes utilisateur et les mappages locaux du tampon
	    quand le tampon courant est réutilisé. Rechercher le codage
	    clavier.
Fichiers :  src/buffer.c

Rustine 6.0.142
Problème :  Quand Python est lié statiquement, le chargement des extensions
	    dynamiques peut échouer.
Solution :  Ajouter un drapeau de liaison supplémentaire quand c'est
	    nécessaire. (Andrew Rodionoff)
Fichiers :  src/configure.in, src/auto/configure

Rustine 6.0.143
Problème :  Quand un fichier de syntaxe contient une césure dans un motif, la
	    syntaxe n'est pas toujours mise à jour lors d'une modification.
Solution :  Ajouter l'argument "linebreaks" à ":syn sync".
Fichiers :  runtime/doc/syntax.txt, src/screen.c, src/structs.h, src/syntax.c

Rustine 6.0.144
Problème :  Après la rustine 6.0.088, la restauration de "veU" ne fonctionne
	    pas.
Solution :  Ne pas ajouter "U" dans le tampon d'annulation, elle est
	    considérée comme une commande d'annulation.
Fichiers :  src/normal.c

Rustine 6.0.145
Problème :  Quand Vim est incapable de lire une seule entrée, il peut rester
	    bloqué. Quand stdin et stderr sont redirigées, Vim refuse de lire
	    des commandes depuis un fichier. (Servatius Brandt)
Solution :  Quand des tentatives répétées de lire un caractère échouent,
	    sortir de Vim. Quand ni stdin ni stderr ne sont des terminaux,
	    tenter tout de même d'y lire, mais sans que l'attente soit
	    bloquante.
Fichiers :  src/ui.c

Rustine 6.0.146
Problème :  Quand 'statusline' contient "%{'-'}", le résultat est nul. (Milan
	    Vancura)
Solution :  Ne pas tenir compte des nombres négatifs, ils ne sont pas affichés
	    de toute façon.
Fichiers :  src/buffer.c

Rustine 6.0.147
Problème :  Il n'est pas évident d'indiquer qu'une version de Vim a été
	    modifiée. Or la nouvelle licence le requiert.
Solution :  Ajouter l'argument --modified-by à `configure` et la définition de
	    MODIFIED_BY. Ce dernier est utilisé dans l'écran d'accueil et dans
	    la sortie de la commande ":version".
Fichiers :  src/auto/configure, src/configure.in, src/config.h.in,
	    src/feature.h, src/version.c

Rustine 6.0.148
Problème :  Après un "p" dans une ligne vide, `[ amène sur le deuxième
	    caractère. (Kontra Gergely)
Solution :  Ne pas incrémenter le numéro de colonne dans une ligne vide.
Fichiers :  src/ops.c

Rustine 6.0.149
Problème :  Le motif "\(.\{-}\)*" provoque un blocage. Lorsque de
	    l'utilisation d'un motif de recherche provoque la détection d'un
	    débordement de pile, Vim peut bloquer quand même.
Solution :  Rapporter correctement "operand could be empty" lors de
	    l'utilisation de "\{-}". Tester "out_of_stack" dans les boucles
	    pour éviter un blocage.
Fichiers :  src/regexp.c

Rustine 6.0.150
Problème :  Lors de l'utilisation d'un encodage multi-octets, la rustine
	    6.0.148 fait que "p" se comporte comme "P". (Sung-Hyun Nam)
Solution :  Calculer la longueur en octets d'un caractère multi-octets.
Fichiers :  src/ops.c

Rustine 6.0.151
Problème :  Le rafraîchissement de la ligne d'état et de la règle peut être
	    faux quand elles contiennent des caractères multi-octets.
Solution :  Prendre correctement en compte la largeur et la taille en octets
	    des caractères. (Yasuhiro Matsumoto)
Fichiers :  src/screen.c

Rustine 6.0.152
Problème :  strtrans() peut bloquer sur des séquence d'octets UTF-8 invalides.
Solution :  Passer par dessus les octets invalides. (Yasuhiro Matsumoto)
Fichiers :  src/charset.c

Rustine 6.0.153
Problème :  Lors de l'utilisation de caractères multi-octets (invalides) et de
	    la coloration syntaxique, Vim peut bloquer. (Yasuhiro Matsumoto)
Solution :  Incrémenter le pointeur d'un caractère plutôt que d'un octet.
Fichiers :  src/regexp.c

Rustine 6.0.154
Problème :  MS-DOS et MS-Windows : les entrées de menu pour `xxd` ne
	    fonctionnent pas quand `xxd` n'existe pas dans le chemin.
	    Lors d'une conversion inverse depuis de l'hexadécimal, le type de
	    fichier "xxd" peut persister si la détection du nouveau type
	    échoue.
Solution :  Quand `xxd` n'est pas dans le chemin, utiliser celui des
	    répertoires de support, où le programme d'installation est censé
	    le copier.
	    Effacer l'option 'filetype' avant de détecter la nouvelle valeur.
Fichiers :  runtime/menu.vim

Rustine 6.0.155
Problème :  Mac : problèmes de compilation avec "ui.c" après la rustine
	    6.0.145. (Axel Kielhorn)
Solution :  Ne pas appeler mch_inchar() quand NO_CONSOLE est défini.
Fichiers :  src/ui.c

Rustine 6.0.156
Problème :  Quand Vim est démarré avec l'argument "-b" et deux fichiers,
	    ":next" n'active pas 'binary' pour le second fichier, comme Vim
	    5.7. (Norman Diamond)
Solution :  Fixer la valeur globale de 'binary'.
Fichiers :  src/option.c

Rustine 6.0.157
Problème :  Lors de définition d'une commande utilisateur avec
	    "-complete=dir", les fichiers sont également complétés. De même,
	    "-complete=mapping" ne semble pas fonctionner. (Michael Naumann)
Solution :  Utiliser les drapeaux d'expansion définis par la commande
	    utilisateur.
	    Gérer de manière spécifique l'expansion des mappages.
Fichiers :  src/ex_docmd.c

Rustine 6.0.158
Problème :  Quand on obtient un avertissement dû à un fichier modifié à
	    l'extérieur de Vim et que le fichier est rechargé, l'option
	    'readonly' est réinitialisée, même si les permissions n'ont pas
	    changé. (Marcel Svitalsky)
Solution :  Laisser 'readonly' activé quand le fichier est rechargé et que les
	    permissions sont inchangées.
Fichiers :  src/fileio.c

Rustine 6.0.159
Problème :  L'expansion des jokers avec ":emenu" affiche aussi les
	    séparateurs.
Solution :  Sauter les séparateurs de menu avec ":emenu", ":popup" et
	    ":tearoff". De même, ne pas gérer ":tmenu" comme s'il avait subi
	    un ":tearoff". Et ne pas tenir compte des alternatives comprenant
	    les "&".
Fichiers :  src/menu.c

Rustine 6.0.160
Problème :  Lors d'une compilation avec GCC 3.0.2 en utilisant l'argument
	    "-O2", l'optimisation pose des problèmes aboutissant à des
	    plantages dans Vim.
Solution :  Ajouter un test dans `configure` pour omettre "-O2" avec cette
	    version de GCC.
Fichiers :  src/configure.in, src/auto/configure

Rustine 6.0.161 (extra)
Problème :  Win32 : impossible d'utiliser des images pour les symboles.
Solution :  Rendre possible l'utilisation d'images. (Muraoka Taro)
Fichiers :  src/ex_cmds.c, src/feature.h, src/gui_w32.c, src/gui_x11.c,
	    src/proto/gui_w32.pro, src/proto/gui_x11.pro

Rustine 6.0.162
Problème :  Client-serveur : un message d'erreur à propos d'une expression
	    fausse apparaît dans le serveur plutôt que dans le client.
Solution :  Transmettre le message d'erreur du serveur vers le client. Ajuster
	    aussi le code d'exemple. (Flemming Madsen)
Fichiers :  src/globals.h, src/if_xcmdsrv.c, src/main.c, src/os_mswin.c,
	    src/proto/if_xcmdsrv.pro, src/proto/os_mswin.pro,
	    runtime/doc/eval.txt, runtime/tools/xcmdsrv_client.c

Rustine 6.0.163
Problème :  Lors de l'utilisation d'un dialogue avec l'IHM graphique, un nom
	    de fichier est parfois utilisé comme s'il était un répertoire.
Solution :  Séparer correctement les fichiers des chemins.
	    Pour GTK+, Motif et Athena, concaténer le répertoire et le nom du
	    fichier pour la sélection par défaut.
Fichiers :  src/diff.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c,
	    src/gui_athena.c, src/gui_gtk.c, src/gui_motif.c, src/message.c

Rustine 6.0.164
Problème :  Après la rustine 6.0.135, les entrées de menu pour le collage ne
	    fonctionnent plus en modes Insertion et Visuel. (Muraoka Taro)
Solution :  Ajouter <script> pour autoriser les mappages locaux aux scripts.
Fichiers :  runtime/menu.vim

Rustine 6.0.165
Problème :  L'utilisation de --remote avec des exécutions locales donnent
	    inévitablement des messages d'erreur.
Solution :  Ajouter --remote-silent et --remote-wait-silent pour exécuter
	    localement en silence.
	    Avec Win32, aucun message d'erreur n'était émis quand le serveur
	    n'existait pas.
Fichiers :  src/eval.c, src/if_xcmdsrv.c, src/main.c, src/os_mswin.c,
	    src/proto/if_xcmdsrv.pro, src/proto/os_mswin.pro

Rustine 6.0.166
Problème :  IHM graphique : il n'existe aucun moyen d'empêcher les dialogues
	    de surgir.
Solution :  Ajouter le drapeau 'c' à 'guioptions' : utiliser les dialogues
	    textuels. (Yegappan Lakshmanan)
Fichiers :  runtime/doc/options.txt, src/option.h, src/message.c

Rustine 6.0.167
Problème :  Quand 'fileencodings' vaut "latin2", certains caractères sont mal
	    affichés dans les fichiers de l'aide.
Solution :  Forcer 'fileencoding' à "latin1" pour les fichiers de l'aide.
Fichiers :  src/fileio.c

Rustine 6.0.168
Problème :  ":%s/\n/#/" ne remplace rien dans une ligne vide. (Bruce DeVisser)
Solution :  Ne pas sauter de correspondances après la fusion de deux lignes.
Fichiers :  src/ex_cmds.c

Rustine 6.0.169
Problème :  Quand Vim est invoqué avec "evim" et que l'IHM graphique ne peut
	    pas démarrer, il reste bloqué dans un terminal sans menus en mode
	    Insertion.
Solution :  Sortir quand l'IHM graphique ne peut pas être démarrée et que Vim
	    a été invoqué avec "evim" ou "gvim -y".
Fichiers :  src/main.c

Rustine 6.0.170
Problème :  Lors de l'impression de caractères à largeur double, la taille des
	    tabulations qui les suivent est fausse. (Muraoka Taro)
Solution :  Calculer correctement la colonne après un caractère à largeur
	    double.
Fichiers :  src/ex_cmds2.c

Rustine 6.0.171
Problème :  Quand 'keymodel' contient "startsel", en mode Insertion après la
	    fin d'une ligne, Maj-FlecheGauche ne déplace pas le curseur.
	    (Steve Hall)
Solution :  CTRL-O ne déplace pas le curseur vers la gauche, il est nécessaire
	    le faire explicitement.
Fichiers :  src/edit.c

Rustine 6.0.172
Problème :  CTRL-Q ne remplace pas CTRL-V après CTRL-X en mode Insertion,
	    alors qu'il le fait dans la plupart des autres situations.
Solution :  Faire que CTRL-X CTRL-Q fonctionne comme CTRL-X CTRL-V en mode
	    Insertion.
Fichiers :  src/edit.c

Rustine 6.0.173
Problème :  Lors de l'utilisation de "P" pour insérer un saut-de-ligne, le
	    curseur reste au-delà de la fin de la ligne.
Solution :  Vérifier que le curseur n'est pas au-delà de la fin de la ligne.
Fichiers :  src/ops.c

Rustine 6.0.174
Problème :  Après avoir utilisé "gd" ou "gD", la direction de recherche pour
	    "n" peut encore être vers l'arrière. (Servatius Brandt)
Solution :  Réinitialiser la direction de recherche vers l'avant.
Fichiers :  src/normal.c, src/search.c, src/proto/search.pro

Rustine 6.0.175
Problème :  ":help /\z(\)" ne fonctionne pas. (Thomas Koehler)
Solution :  Doubler les contre-obliques.
Fichiers :  src/ex_cmds.c

Rustine 6.0.176
Problème :  Lors de la réception d'un signal mortel, les autocommandes sont
	    tout de même déclenchées, comme si rien ne s'était produit.
Solution :  Ajouter la variable "v:dying" pour permettre aux autocommandes de
	    fonctionner différemment quand un signal mortel a été intercepté.
Fichiers :  src/eval.c, src/os_unix.c, src/vim.h

Rustine 6.0.177
Problème :  Quand 'commentstring' est vide et que 'foldmethod' vaut "marker",
	    "zf" ne fonctionne pas. (Thomas S. Urban)
Solution :  Ajouter le marqueur même quand 'commentstring' est vide.
Fichiers :  src/fold.c, src/normal.c

Rustine 6.0.178
Problème :  Mémoire non initialisée lue dans un champ xp_backslash.
Solution :  Initialiser convenablement le champ xp_backslash.
Fichiers :  src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/misc1.c, src/tag.c

Rustine 6.0.179
Problème :  Win32 : lors de l'affichage de caractères UTF-8, de la mémoire non
	    initialisée peut être lue.
Solution :  Ajouter utfc_ptr2len_check_len() pour éviter de lire au-delà de la
	    fin de la ligne.
Fichiers :  src/mbyte.c, src/proto/mbyte.pro, src/gui_w32.c

Rustine 6.0.180
Problème :  L'expansion des variables d'environnement dans une chaîne se
	    terminant par une oblique peut aller au-delà de la fin de la
	    chaîne.
Solution :  Détecter l'oblique finale.
Fichiers :  src/misc1.c

Rustine 6.0.181
Problème :  Fuite de mémoire lors d'un ":cd dir".
Solution :  Libérer la mémoire allouée. Aussi éviter de lire de la mémoire non
	    initialisée.
Fichiers :  src/misc2.c

Rustine 6.0.182
Problème :  Lors de l'utilisation d'une exprat sur des caractères
	    multi-octets, Vim peut tenter de lire un caractère avant le début
	    de la ligne.
Solution :  Ne pas pointer avant le début de la ligne.
Fichiers :  src/regexp.c

Rustine 6.0.183
Problème :  Fuite de mémoire quand ":func!" redéfinit une fonction.
Solution :  Libérer le nom de la fonction quand il n'est pas utilisé.
Fichiers :  src/eval.c

Rustine 6.0.184
Problème :  Fuite de mémoire lors de l'expansion des valeurs des options.
Solution :  Ne pas toujours copier l'option étendue dans la mémoire allouée.
Fichiers :  src/option.c

Rustine 6.0.185
Problème :  Plantage de Vim lors du collage d'une sélection dans une autre
	    application, sur des machines 64 bits.
Solution :  Corriger le format d'un Atom à 32 bits. (Peter Derr)
Fichiers :  src/ui.c

Rustine 6.0.186
Problème :  X11 : trois avertissements à la compilation du code
	    client-serveur.
Solution :  Ajouter un transtypage vers unsigned char.
Fichiers :  src/if_xcmdsrv.c

Rustine 6.0.187
Problème :  "I" en mode Visuel puis "u" rapporte trop de modifications.
	    (Andrew Stryker)
	    "I" en mode Visuel par lignes ajuste l'indention sans raison
	    apparente.
Solution :  Ne mémoriser que les lignes modifiées pour l'annulation.
	    Ne pas modifier l'indentation après l'insertion en mode Visuel par
	    lignes.
Fichiers :  src/ops.c

Rustine 6.0.188
Problème :  Win32 : après la rustine 6.0.161, les symboles définis dans le
	    fichier vimrc ne fonctionnent plus.
Solution :  Initialiser les icônes des symboles après l'initialisation de
	    l'IHM graphique. (Vince Negri)
Fichiers :  src/gui.c, src/gui_x11.c

Rustine 6.0.189
Problème :  La taille de la zone Visuel n'est pas toujours affichée lors du
	    défilement ('ruler' désactivé et 'showcmd' activé). Idem à
	    l'utilisation d'une commande de recherche. (Sylvain Hitier)
Solution :  Rafficher la taille de la sélection après l'affichage du mode.
Fichiers :  src/screen.c

Rustine 6.0.190
Problème :  IHM graphique : quand 'mouse' est vide, un clic avec le bouton du
	    milieu déplace encore le curseur.
Solution :  Coller à l'emplacement du curseur plutôt qu'à celui du pointeur de
	    la souris.
Fichiers :  src/normal.c

Rustine 6.0.191
Problème :  Quand aucun serveur n'est disponible, serverlist() retourne une
	    erreur au lieu d'une chaîne vide. (Hari Krishna)
Solution :  Ne pas émettre de message d'erreur.
Fichiers :  src/eval.c

Rustine 6.0.192
Problème :  Avec 'virtualedit' activé, "ylj" va dans la mauvaise colonne.
	    (Andrew Nikitin)
Solution :  Réinitialiser le drapeau indiquant que w_virtcol est valide quand
	    le curseur est déplacé au début de la zone traitée.
Fichiers :  src/normal.c

Rustine 6.0.193
Problème :  Avec 'virtualedit' activé, col(".") après la fin de la ligne
	    devrait retourner une valeur augmentée d'une unité.
Solution :  Ajouter un à la colonne.
Fichiers :  src/eval.c

Rustine 6.0.194
Problème :  "--remote-silent" tente d'envoyer une réponse au client, comme
	    avec "--remote-wait".
Solution :  Vérifier convenablement l'argument.
Fichiers :  src/main.c

Rustine 6.0.195
Problème :  Quand 'virtualedit' est activé et qu'une recherche débute dans
	    l'espace virtuel, ":call search('x')" ne va pas à la bonne
	    position. (Eric Long)
Solution :  Réinitialiser coladd quand une correspondance est trouvée.
Fichiers :  src/search.c

Rustine 6.0.196
Problème :  Avec 'virtualedit' activé et 'selection' valant "exclusive", lors
	    de la sélection Visuel d'une partie d'une tabulation au début de
	    la ligne, "x" la fusionne avec la ligne précédente. De même, quand
	    la sélection couvre plusieurs lignes, la tabulation entière est
	    effacée.
Solution :  Tenir compte de coladd lors de l'ajustement selon 'selection'
	    valant "exclusive". De même, convertir les tabulations en espaces
	    quand plusieurs lignes sont effacées.
Fichiers :  src/normal.c, src/ops.c

Rustine 6.0.197
Problème :  Avec 'virtualedit' activé et 'selection' valant "exclusive", "v$x"
	    n'efface pas le dernier caractère de la ligne. (Eric Long)
Solution :  Ne pas réinitialiser le drapeau inclusive. (Helmut Stiegler)
Fichiers :  src/normal.c

Rustine 6.0.198
Problème :  Avec 'virtualedit' activé et 'showbreak' non vide, le déplacement
	    du curseur sur un saut-de-ligne ne fonctionne pas correctement.
	    (Eric Long)
Solution :  Utilser getviscol() et getviscol2() dans getvvcol() pour obtenir
	    la position virtuelle du curseur. Ajuster coladvance() et
	    oneleft() pour passer par dessus les caractères de 'showbreak'.
Fichiers :  src/edit.c, src/misc2.c

Rustine 6.0.199
Problème :  Multi-octets : iconv() peut être appelé après l'appel à
	    iconv_end(). (Yasuhiro Matsumoto)
Solution :  Arrêter de convertir l'entrée et la sortie après l'appel à
	    iconv_end().
Fichiers :  src/mbyte.c

Rustine 6.0.200
Problème :  Un script commençant par "#!perl" n'est pas identifié comme un
	    type de fichier Perl.
Solution :  Ignorer un chemin manquant dans l'en-tête du script. De même,
	    accélération des scripts de reconaissance en simplifiant les
	    motifs utilisés.
Fichiers :  runtime/scripts.vim

Rustine 6.0.201
Problème :  Quand les défilements sont synchronisés et qu'un long saut a lieu,
	    changer de fenêtre saute à une autre position dans le fichier. En
	    cas de défilement faible en revanche pas de problème. (Johannes
	    Zellner)
Solution :  Réinitialiser le drapeau indiquant que w_botline est valide quand
	    w_topline est fixé.
Fichiers :  src/diff.c

Rustine 6.0.202
Problème :  L'argument "icon=" de la commande de menu, permettant de définir
	    une icône pour la barre d'outils, ne fonctionne pas avec GTK+.
	    (Christian J. Robinson)
	    Avec Motif et Athena, un chemin complet est nécessaire.
Solution :  Rechercher le fichier icône dans le chamin spécifié. Étendre les
	    variables d'environnement dans le nom de fichier.
Fichiers :  src/gui_gtk.c, src/gui_x11.c

Rustine 6.0.203
Problème :  Il est possible de modifier 'fileformat' quand 'modifiable' est
	    désactivé. (Servatius Brandt)
Solution :  Corriger la vérification du type de commande ":set".
Fichiers :  src/option.c

Rustine 6.0.204
Problème :  ":unlet" ne fonctionne pas pour des variables avec des accolades.
	    (Thomas Scott Urban)
Solution :  Prendre correctement en compte les noms de variables avec des
	    accolades. (Vince Negri)
Fichiers :  src/eval.c

Rustine 6.0.205 (extra)
Problème :  "gvim -f" forke encore quand le fichier batch est utilisé pour
	    lancer Vim.
Solution :  Ajouter un argument à "start" pour utiliser une session au premier
	    plan. (Michael Geddes)
Fichiers :  src/dosinst.c

Rustine 6.0.206
Problème :  Unix : si l'expansion d'un joker dans un nom de fichier aboutit à
	    la présence d'un caractère joker et qu'il existe d'autres endroits
	    dans le chemin avec des jokers, le nom de fichier subit une
	    nouvelle expansion.
	    MS-Windows : ":edit \[abc]" ne permet pas d'éditer le fichier
	    "[abc]".
Solution :  Ne pas étendre les jokers dans les parties déjà étendues.
	    Ne pas supprimer les contre-obliques utilisées pour protéger la
	    signification spéciale des jokers.
	    Il est possible d'éditer "[abc]" si '[' est retiré de 'isfname'.
Fichiers :  src/misc1.c, src/os_unix.c

Rustine 6.0.207 (extra)
Problème :  Win32 : les raccourcis et les entrées du menu Démarrer font
	    démarrer Vim dans le répertoire du Bureau, ce qui n'est pas très
	    utile.
Solution :  Demander aux raccourcis de démarrer Vim dans $HOME ou
	    $HOMEDIR$HOMEPATH.
Fichiers :  src/dosinst.c

Rustine 6.0.208
Problème :  IHM graphique : lors de l'utilisation d'un codage clavier et que
	    le curseur ne clignote pas, CTRL-^ en mode Insertion ne change pas
	    directement la couleur du curseur. (Alex Solow)
Solution :  Forcer le redessinement du curseur après CTRL-^.
Fichiers :  src/edit.c

Rustine 6.0.209
Problème :  IHM graphique GTK+ : après avoir sélectionné 'guifont' dans le
	    sélecteur de polices, le rafraîchissement des caractères
	    multi-octets rencontre des problèmes.
Solution :  Séparer le sélecteur de polices de l'affectation du nom de la
	    nouvelle police pour éviter que "*" ne soit utilisé pour trouver
	    les polices larges et grasses.
	    Lors du rafraîchissement de caractères supplémentaires avec
	    l'astuce pour le gras, tenir compte des caractères UTF-8.
Fichiers :  src/gui.c, src/gui_gtk_x11.c, src/option.c, src/proto/gui.pro,
	    src/proto/gui_gtk_x11.pro

Rustine 6.0.210
Problème :  Après la rustine 6.0.167, il n'est plus possible d'éditer un
	    fichier d'aide dans un autre codage que latin1.
Solution :  Permettre à l'argument "++enc=" de prendre le pas sur le codage.
Fichiers :  src/fileio.c

Rustine 6.0.211
Problème :  Quand la lecture d'un fichier échoue, le tampon est vide, mais il
	    peut être encore possible de l'écrire ensuite avec ":w". Le
	    fichier original est alors perdu. (Steve Amerige)
Solution :  Activer l'option 'readonly' pour le tampon.
Fichiers :  src/fileio.c

Rustine 6.0.212
Problème :  IHM GTK+ : confirm("plop", "") provoque un plantage.
Solution :  Ne pas faire d'un bouton non existant le bouton par défaut.
	    Ajouter un bouton "OK" si aucun bouton n'a été spécifié.
Fichiers :  src/eval.c, src/gui_gtk.c

Rustine 6.0.213
Problème :  Quand un nom de fichier contient des caractères non imprimables,
	    les commandes comme CTRL-G ne fonctionne pas bien.
Solution :  Convertir les caractères non imprimables en caractères
	    imprimables. (Yasuhiro Matsumoto)
Fichiers :  src/buffer.c, src/charset.c

Rustine 6.0.214
Problème :  Quand il existe un tampon sans nom, une entrée vide apparaît dans
	    la liste des sauts enregistrée dans le fichier viminfo.
Solution :  Ne pas écrire d'entrée sans nom de fichier dans la liste des
	    sauts.
Fichiers :  src/mark.c

Rustine 6.0.215
Problème :  Après l'utilisation de "/" en mode Visuel, l'entrée Coller du menu
	    et de la barre d'outils ne fonctionnent pas. Le collage avec le
	    bouton du milieu de la souris et la sélection amodale ne
	    fonctionnent pas.
Solution :  Utiliser les menus du mode Ligne-de-commande et gérer la souris
	    comme dans la ligne de commande.
Fichiers :  src/gui.c, src/menu.c, src/ui.c

Rustine 6.0.216
Problème :  Après le rechargement d'un fichier affiché dans une fenêtre autre
	    que la fenêtre courante et qui a été modifié en dehors de Vim, la
	    partie du fichier aux alentours du curseur placé par les
	    autocommandes peut être affichée, mais un retour dans la fenêtre
	    rend au curseur sa position originelle.
Solution :  Restaurer la ligne supérieure de la fenêtre.
Fichiers :  src/fileio.c

Rustine 6.0.217
Problème :  Lors de l'obtention d'une aide depuis un fichier d'aide qui a déjà
	    été utilisé auparavant, un tampon vide non listé persiste dans la
	    liste des tampons. (Eric Long)
Solution :  Détruire le tampon utilisé comme départ du saut vers le marqueur.
Fichiers :  src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro

Rustine 6.0.218
Problème :  Avec le greffon "explorer.vim" : "vim -o nomfich nomrep" ne charge
	    pas la fenêtre d'explorateur jusqu'à ce que le curseur entre dans
	    la fenêtre.
Solution :  Appeler s:EditDir() pour chaque fenêtre après le démarrage.
Fichiers :  runtime/plugin/explorer.vim

Rustine 6.0.219
Problème :  ":setlocal" et ":setglobal", sans arguments, affichent les options
	    de terminal. (Zdenek Sekera)
Solution :  Ignorer les options de terminal pour ces deux commandes.
Fichiers :  src/option.c

Rustine 6.0.220
Problème :  Après la rustine 6.0.218, un signal sonore est produit au
	    démarrage. (Muraoka Taro)
Solution :  Ne pas tenter d'aller dans une fenêtre tant qu'il n'en existe pas.
Fichiers :  runtime/plugin/explorer.vim

Rustine 6.0.221
Problème :  Lors de l'utilisation de ":bdel" et que tous les autres tampons
	    sont déchargés, Vim saute au tampon ayant le numéro le plus faible
	    plutôt qu'au tampon le plus récent. (Dave Cecil)
Solution :  Préférer un tampon déchargé de la liste des sauts.
Fichiers :  src/buffer.c

Rustine 6.0.222
Problème :  Lorsque 'virtualedit' est activé et que l'autoindentation est
	    utilisé, appuyer sur Echap après avoir commencé une nouvelle
	    ligne laisse au-delà de l'autoindentation. (Helmut Stiegler)
Solution :  Après avoir effacé le dernier caractère de la ligne, ajuster la
	    position du curseur dans del_bytes().
Fichiers :  src/misc1.c, src/ops.c

Rustine 6.0.223
Problème :  Quand une fenêtre contenant un explorateur est partagée, taper CR
	    sur un nom de fichier provoque l'émission d'un message d'erreur.
Solution :  Fixer les variables de la fenêtre après le partage.
Fichiers :  runtime/plugin/explorer.vim

Rustine 6.0.224
Problème :  Quand 'sidescroll' et 'sidescrolloff' sont fixés dans une fenêtre
	    étroite, le texte peut sauter de droite à gauche et inversement et
	    le curseur est affiché à la mauvaise position. (Aric Blumer)
Solution :  Quand il n'y a pas assez de place, calculer la colonne de gauche
	    de la fenêtre pour placer le curseur au milieu.
Fichiers :  src/move.c

Rustine 6.0.225
Problème :  En mode Visuel, "gk" reste bloqué sur un repli fermé. (Srinath
	    Avadhanula)
Solution :  Se comporter différemment sur un repli fermé.
Fichiers :  src/normal.c

Rustine 6.0.226
Problème :  Lors d'un ":recover fichier", l'invite ATTENTION est affichée.
	    Après avoir récupéré cinq fois le même fichier, Vim retourne une
	    erreur de lecture ou plante. (Alex Davis)
Solution :  Positionner le drapeau recoverymode avant de fixer le nom de
	    fichier.
	    Corriger la quantité de mémoire utilisée pour la taille du bloc
	    zéro.
Fichiers :  src/ex_docmd.c

Rustine 6.0.227 (extra)
Problème :  Le portage RISC OS connaît plusieurs problèmes.
Solution :  Mettre à jour le Makefile et corriger certains de ces problèmes.
	    (Andy Wingate)
Fichiers :  src/Make_ro.mak, src/os_riscos.c, src/os_riscos.h,
	    src/proto/os_riscos.pro, src/search.c

Rustine 6.0.228
Problème :  Après un collage de texte en mode Visuel, la marque '] n'est pas
	    positionnée à la fin du texte collé.
	    L'annulation ne fonctionne pas correctement lors du collage d'un
	    mot dans une sélection Visuel s'étalant sur plusieurs lignes.
Solution :  Ajuster la marque '] lors de l'effacement de texte sélectionné
	    Visuellement.
	    Baliser correctement le code dépendant de FEAT_VISUAL avec des
	    #ifdef.
	    Corriger également le problème de "d" pour plusieurs lignes, qui
	    place '[ juste avant le texte effacé.
	    Corriger l'annulation en mémorisant toutes les lignes effacées en
	    une seule fois.
Fichiers :  src/ex_docmd.c, src/globals.h, src/normal.c, src/ops.c,
	    src/structs.h, src/vim.h

Rustine 6.0.229
Problème :  Multi-octets : avec 'formatoptions' contenant 'm', le mise en
	    forme n'insère pas de coupure entre un caractère multi-octets et
	    un caractère ASCII, et inversement. (Muraoka Taro)
	    Lors de la fusion de lignes, un espace est inséré entre des
	    caractères multi-octets, alors que ce n'est pas toujours souhaité.
Solution :  Vérifier la présence d'un caractère multi-octets avant et après le
	    point de coupure.
	    Ne pas insérer d'espace avant ou après un caractère multi-octets
	    lors de la fusion de lignes quand 'formatoptions' contient 'M'. Ne
	    pas insérer d'espace entre deux caractères multi-octets quand
	    'formatoptions' contient 'B'.
Fichiers :  src/edit.c, src/ops.c, src/option.h

Rustine 6.0.230
Problème :  Le ":" utilisé comme mouvement après un opérateur est exclusif,
	    alors qu'il devrait parfois être inclusif.
Solution :  Permettre au "v" entre un opérateur et son mouvement de basculer
	    entre inclusif et exclusif. (Servatius Brandt)
Fichiers :  runtime/doc/motion.txt, src/normal.c

Rustine 6.0.231
Problème :  "gd" et "gD" ne fonctionnent pas quand les variables correspondent
	    dans un commentaire juste au-dessus de l'occurrence souhaitée.
	    (Servatius Brandt)
Solution :  Poursuivre la recherche dans la première colonne sous le
	    commentaire.
Fichiers :  src/normal.c

Rustine 6.0.232
Problème :  "vim --version" affiche dans stderr alors que "vim --help" affiche
	    dans stdout.
Solution :  Modifier "vim --version" pour utiliser stdout.
Fichiers :  runtime/doc/starting.txt, src/globals.h, src/main.c, src/message.c

Rustine 6.0.233
Problème :  "\1\{,8}" dans une exprat n'est pas autorisé, alors que cela
	    devrait fonctionner car une limite supérieure est spéficiée. (Jim
	    Battle)
Solution :  Permettre l'utilisation de "\{min,max}" après un atome pouvant
	    être vide si une limite supérieure existe.
Fichiers :  src/regexp.c

Rustine 6.0.234
Problème :  Il n'est pas facile de positionner le curseur sans modifier les
	    marques.
Solution :  Ajouter la fonction cursor(). (Yegappan Lakshmanan)
Fichiers :  runtime/doc/eval.txt, src/eval.c

Rustine 6.0.235
Problème :  Lors de l'écriture d'un fichier et du renommage du fichier
	    original pour faire une sauvegarde, les permissions peuvent être
	    modifiées lors de l'affectation du propriétaire.
Solution :  Ne fixer le propriétaire que si c'est nécessaire et fixer les
	    permissions à nouveau après.
	    Quand 'backupcopy' vaut "auto", vérifier que le propriétaire et
	    les permissions du nouveau fichier peuvent être fixés
	    correctement.
Fichiers :  src/fileio.c

Rustine 6.0.236
Problème :  ":edit" sans argument devrait déplacer le curseur dans la première
	    ligne en mode compatible Vi.
Solution :  Ajouter le drapeau 'g' à 'cpoptions'.
Fichiers :  runtime/doc/options.txt, src/ex_docmd.c, src/option.h

Rustine 6.0.237
Problème :  Dans un fichier C, quand le greffon de type de fichier est
	    utilisé, la réindentation d'un commentaire avec deux espaces après
	    le "*" central n'est pas correctement alignée.
Solution :  Ne pas utiliser la partie centrale du format de commentaire pour
	    aligner avec le début du commentaire quand la partie du début ne
	    correspond pas avec le début du commentaire en cours.
Fichiers :  src/misc1.c

Rustine 6.0.238
Problème :  L'utilisation d'une commande ":subsitute" avec un appel à
	    substitute() dans l'expression de substitution provoque des
	    erreurs. (Srinath Avadhanula)
Solution :  Mémoriser puis restaurer les pointeurs quand une substitution est
	    opérée récursivement.
Fichiers :  src/regexp.c

Rustine 6.0.239
Problème :  Lors de l'utilisation de "A" pour ajouter à la fin d'un bloc
	    Visuel allant au-delà de la fin de la ligne, des espaces sont
	    insérés dans la mauvaisse lignes et d'autres effets inattendus se
	    produisent. (Michael Naumann)
Solution :  Ne pas avancer le curseur à la ligne suivante.
Fichiers :  src/ops.c

Rustine 6.0.240
Problème :  Win32 : la compilation avec Python 2.2 ne fonctionne pas.
Solution :  Ajouter le support de Python 2.2 avec une liaison dynamique. (Paul
	    Moore)
Fichiers :  src/if_python.c

Rustine 6.0.241
Problème :  Win32 : lors de l'expansion de l'ancienne valeur d'une option
	    contenant un chemin qui commence par une contre-oblique, une
	    contre-oblique supplémentaire est insérée.
Solution :  N'insérer une contre-oblique que si c'est nécessaire.
	    Prendre correctement en compte les caractères multi-octets lors de
	    la suppression des contre-obliques.
Fichiers :  src/option.c

Rustine 6.0.242
Problème :  IHM graphique : sur les systèmes avec un serveur X Exceed,
	    l'erreur "Bad Window" survient parfois. (Tommi Maekitalo)
Solution :  Lors du fork, utiliser un tube dans le père pour attendre que le
	    fils ait appelé setsid().
Fichiers :  src/gui.c

Rustine 6.0.243
Problème :  Unix : "vim --version" transmet un NL avant la dernière ligne
	    plutôt qu'après. (Charles Campbell)
Solution :  Envoyer le NL dans le même flux de sortie que le texte.
Fichiers :  src/message.c, src/os_unix.c, src/proto/message.pro

Rustine 6.0.244
Problème :  Multi-octets : problèmes avec les caractères UTF-8 (invalides)
	    dans les menus et les noms de fichiers (par exemple, texte des
	    icônes, ligne d'état).
Solution :  Prendre correctement en compte les caractères non imprimables.
	    Intercepter les caractères UTF-8 invalides et les remplacer par
	    <xx>. La troncature de la ligne d'état sur un caractères
	    multi-octets n'était pas effectuée correctement. (Yasuhiro
	    Matsumoto)
	    Ajout de correct_cmdspos() et transchar_byte().
Fichiers :  src/buffer.c, src/charset.c, src/ex_getln.c, src/gui.c,
	    src/message.c, src/screen.c, src/vim.h

Rustine 6.0.245
Problème :  Après l'utilisation d'un jeu de couleurs, fixer l'option
	    'background' peut ne pas fonctionner. (Peter Horst)
Solution :  Désactiver le jeu de couleurs s'il rebascule 'background' dans une
	    mauvaise valeur.
Fichiers :  src/option.c

Rustine 6.0.246
Problème :  ":echomsg" n'utilise pas la surbrillance définie par ":echohl".
	    (Gary Holloway)
Solution :  Utiliser les attributs spécifiés pour le message. (Yegappan
	    Lakshmanan)
Fichiers :  src/eval.c

Rustine 6.0.247
Problème :  IHM GTK+ : impossible d'utiliser gvim dans un composant kpart. XXX
Solution :  Ajouter l'argument "--echo-wid" pour permettre à Vim de retourner
	    l'ID de la fenêtre sur la sortie standard. (Philippe Fremy)
Fichiers :  runtime/doc/starting.txt, src/globals.h, src/gui_gtk_x11.c,
	    src/main.c

Rustine 6.0.248
Problème :  Lors de l'utilisation de fichiers d'aides compressés et que
	    'encoding' est différent de "latin1", Vim convertit les fichiers
	    d'aide avant de les décompresser. (David Reviejo)
Solution :  Ne pas convertir un fichier d'aide quand 'binary' est activé.
Fichiers :  src/fileio.c

Rustine 6.0.249
Problème :  "vim -t edit -c 'sta ex_help'" ne place le curseur sur edit().
Solution :  Ne pas placer le curseur sur la première ligne avec les arguments
	    "-c" quand un argument "-t" est également spécifié.
Fichiers :  src/main.c

Rustine 6.0.250 (extra)
Problème :  Macintosh : divers problèmes de compilation.
Solution :  Diverses corrections, essentiellement des #ifdef. (Dany St. Amant)
Fichiers :  src/gui_mac.c, src/main.c, src/misc2.c, src/os_mac.h,
	    src/os_mac.pbproj/project.pbxproj, src/os_unix.c

Rustine 6.0.251 (extra)
Problème :  Macintosh : les raccourcis des menus ne sont pas très clairs.
Solution :  Afficher les raccourcis avec le symbole trèfle du Mac. (raindog)
Fichiers :  src/gui_mac.c

Rustine 6.0.252
Problème :  Quand une fonction utilisateur a été définie avec "abort", une
	    erreur qui se produit hors d'un if/endif ou d'un while/endwhile
	    ne provoque pas l'abandon de la fonction. (Servatius Brandt)
Solution :  Ne pas réinitialiser did_emsg quand la fonction est sur le point
	    d'être abandonnée.
Fichiers :  src/ex_docmd.c

Rustine 6.0.253
Problème :  Avec 'insertmode' activé, après "<C-O>:edit fichier", le <C-O>
	    suivant ne fonctionne pas. (Benji Fisher) Pareil pour <C-L>.
Solution :  Réinitialiser need_start_insertmode une fois dans edit().
Fichiers :  src/edit.c

Rustine 6.0.254 (extra)
Problème :  Borland C++ 5.5 : la vérification du débordement de pile ne
	    fonctionne pas correctement. C'est important lors de l'utilisation
	    d'une exprat complexe.
Solution :  Supprimer -N- de "Make_bc5.mak". (Yasuhiro Matsumoto)
Fichiers :  src/Make_bc5.mak

Rustine 6.0.255 (extra) (basée sur les rustines 6.0.116 et 6.0.121)
Problème :  Win32 : le support des ACL ne fonctionne pas bien sur les disques
	    Samba.
Solution :  Ajouter une vérification pour le support des ACL. (Mike Williams)
Fichiers :  src/os_win32.c

Rustine 6.0.256 (extra)
Problème :  Win32 : ":highlight Comment guifg=asdf" ne donne pas de message
	    d'erreur. (Randall W.  Morris) Pareil pour les autres systèmes.
Solution :  Ajouter gui_get_color() pour donner un message d'erreur pour tous
	    les systèmes.
Fichiers :  src/gui.c, src/gui_amiga.c, src/gui_athena.c, src/gui_motif.c,
	    src/gui_riscos.c, src/gui_x11.c, src/gui_gtk_x11.c,
	    src/proto/gui.pro, src/syntax.c

Rustine 6.0.257
Problème :  Win32 : quand 'mousefocus' est activé et qu'une autocommande
	    BufRead est activée après que le dialogue indiquant que les
	    permissions ont été modifiées en dehors de Vim, 'mousefocus' cesse
	    de fonctionner. (Robert Webb)
Solution :  Réinitialiser need_mouse_correct après la vérification de
	    l'horodatage.
Fichiers :  src/fileio.c

Rustine 6.0.258
Problème :  Quand 'scrolloff' vaut 999 et que des replis existent, des sauts
	    vers le haut ou le bas peuvent survenir quand le curseur est
	    déplacé à proximité de la fin du fichier. (Lubomir Host)
Solution :  Quand le curseur est placé à la moitié de la fenêtre, commencer le
	    comptage des lignes à la fin d'un repli.
Fichiers :  src/move.c

Rustine 6.0.259
Problème :  MS-DOS : après l'édition de la ligne de commande, la forme du
	    curseur peut rester comme celle du mode Insertion. (Volker Kiefel)
Solution :  Réinitialiser la forme du curseur après l'édition de la ligne de
	    commande.
Fichiers :  src/ex_getln.c

Rustine 6.0.260
Problème :  IHM graphique : plantage possible lors du démarrage, quand un
	    message d'erreur à propos d'une couleur manquante est émis.
	    (Servatius Brandt)
Solution :  Ne pas appeler gui_write() quand Vim est encore en cours
	    démarrage. Ne pas donner de message d'erreur pour un nom de
	    couleur vide. Ne pas utiliser 't_vb' tant que l'IHM graphique n'a
	    pas terminé son démarrage.
Fichiers :  src/fileio.c, src/gui.c, src/misc1.c, src/ui.c

Rustine 6.0.261
Problème :  nr2char() et char2nr() ne fonctionnent pas avec les caractères
	    multi-octets.
Solution :  Utiliser 'encoding' pour ces fonctions. (Yasuhiro Matsumoto)
Fichiers :  runtime/doc/eval.txt, src/eval.c

Rustine 6.0.262 (extra)
Problème :  Win32 : l'IME ne fonctionne pas correctement. OnImeComposition()
	    n'est pas du tout utilisé.
Solution :  Ajuster diverses choses pour l'IME.
Fichiers :  src/globals.h, src/gui_w32.c, src/mbyte.c, src/proto/ui.pro,
	    src/structs.h, src/ui.c

Rustine 6.0.263
Problème :  GTK+ : quand un dialogue est fermé par le gestionnaire de
	    fenêtres, Vim bloque. (Christian J. Robinson)
Solution :  Utiliser GTK_WIDGET_DRAWABLE() au lieu de GTK_WIDGET_VISIBLE().
Fichiers :  src/gui_gtk.c, src/gui_gtk_x11.c

Rustine 6.0.264
Problème :  La quantité de mémoire virtuelle est utilisée pour initialiser
	    'maxmemtot', alors qu'elle peut être beaucoup plus importante que
	    la quantité de mémoire physique, ce qui peut entrainer un swapping
	    important.
Solution :  Récupérer la quantité de mémoire physique avec sysctl(), sysconf()
	    ou sysinfo() quand c'est possible.
Fichiers :  src/auto/configure, src/configure.in, src/config.h.in,
	    src/os_unix.c, src/os_unix.h

Rustine 6.0.265
Problème :  Win32 : l'utilisation de contre-obliques alors que 'fkmap' est
	    activé provoque un plantage. (Jamshid Oasjmoha)
Solution :  Ne pas tenter de mapper les touches spéciales.
Fichiers :  src/farsi.c

Rustine 6.0.266
Problème :  La fonction rename() efface le fichier si l'ancien et le nouveau
	    nom sont identiques. (Volker Kiefel)
Solution :  Ne rien faire si les noms sont identiques.
Fichiers :  src/fileio.c

Rustine 6.0.267
Problème :  UTF-8 : bien que 'isprint' affirme qu'un caractère est imprimable,
	    utf_char2cells() considère toujours qu'il ne l'est pas.
Solution :  Utiliser vim_isprintc() pour les caractères inférieur à 0x100.
	    (Yasuhiro Matsumoto)
Fichiers :  src/mbyte.c

Rustine 6.0.268 (extra) (basée sur la rustine 6.0.255)
Problème :  Win32 : la vérification pour les ACL plante quand des obliques
	    normales sont utilisées pour les noms de fichiers.
Solution :  Améliorer la vérification du chemin dans le nom du fichier.
Fichiers :  src/os_win32.c

Rustine 6.0.269
Problème :  Des caractères non imprimables dans un nom de fichier peuvent
	    poser des problèmes quand ils sont utilisés dans l'option
	    'statusline' ou quand 'buftype' vaut "nofile".
Solution :  Appeler trans_characters() pour la ligne d'état obtenue. (Yasuhiro
	    Matsumoto)
Fichiers :  src/buffer.c, src/screen.c, src/charset.c

Rustine 6.0.270 (basée sur la rustine 6.0.267)
Problème :  Une tabulation provoquait l'affichage de texte UTF-8 au mauvais
	    endroit. (Ron Aaron)
Solution :  Corriger à nouveau utf_char2cells().
Fichiers :  src/mbyte.c

Rustine 6.1a.001 (extra)
Problème :  Dos32 : copier du texte dans le presse-papiers peut provoquer un
	    plantage. (Jonathan D Johnston)
Solution :  Ne pas copier un octet en trop dans SetClipboardData().
Fichiers :  src/os_msdos.c

Rustine 6.1a.002
Problème :  GTK + : sur certaines configurations, lors de la fermeture d'un
	    dialogue depuis le gestionnaire de fenêtres, Vim bloque.
Solution :  Intercepter le signal "destroy". (Aric Blumer)
Fichiers :  src/gui_gtk.c

Rustine 6.1a.003
Problème :  Multi-octets : avec des caractères UTF-8 à largeur double et
	    'virtualedit' activé, la copie en mode Visuel n'inclut pas le
	    dernier octet. (Eric Long)
Solution :  Ne pas ajouter d'espace pour un caractère à largeur double.
Fichiers :  src/ops.c

Rustine 6.1a.004 (extra)
Problème :  MinGW : type indéfini. (Ron Aaron)
Solution :  Rendre GetCompositionString_inUCS2() statique.
Fichiers :  src/gui_w32.c, src/gui_w48.c, src/proto/gui_w32.pro

Rustine 6.1a.005 (extra)
Problème :  Win32 : ":hardcopy" ne fonctionne plus après ":hardcopy!".
	    (Jonathan Johnston)
Solution :  Ne pas conserver le contexte du pilote après avoir utilisé
	    ":hardcopy!". (Vince Negri)
Fichiers :  src/os_mswin.c

Rustine 6.1a.006
Problème :  multi-octets : après avoir fixé 'encoding', le titre de la
	    fenêtres peut être faux.
Solution :  Forcer le réaffection du titre. (Yasuhiro Matsumoto)
Fichiers :  src/option.c

Rustine 6.1a.007
Problème :  La détection de type de fichier ne fonctionne pas pour "*.inc".
Solution :  Utiliser une commande ":let". (David Schweikert)
Fichiers :  runtime/filetype.vim

Rustine 6.1a.008 (extra)
Problème :  Win32 : la détection des ACL ne fonctionne pas avec les partages
	    réseaux.
Solution :  Inclure la (contre-)oblique finale dans le chemin absolu. (Mike
	    Williams)
Fichiers :  src/os_win32.c

Rustine 6.1a.009
Problème :  Lors de l'utilisation de "\@<=" ou de "\@<!" dans un motif, un
	    "\1" peut faire référence à l'élément () qui suit, mais cela
	    génère un message d'erreur.
Solution :  Permettre un post-référence anticipée quand un "\@<=" ou un "\@<!"
	    suit.
Fichiers :  runtime/doc/pattern.txt, src/regexp.c

Rustine 6.1a.010
Problème :  Quand ":help" est utilisé et qu'une nouvelle fenêtre est ouverte,
	    le nom alternatif du fichier n'est pas fixé.
Solution :  Fixer le nom alternatif du fichier au fichier précédemment édité.
Fichiers :  src/ex_cmds.c

Rustine 6.1a.011
Problème :  GTK+ : après un ":set co=77", puis un changement de largeur à la
	    souris, ":set co=77" ne redimensionne pas la fenêtre. (Darren
	    Hiebert)
Solution :  Fixer XXX the form size après la prise en compte de l'événement de
	    redimensionnement.
Fichiers :  src/gui_gtk_x11.c

Rustine 6.1a.012
Problème :  GTK+ : le sélecteur de fichiers retourne toujours un chemin
	    absolu. (Lohner)
Solution :  Raccourcir le nom du fichier quand c'est possible.
Fichiers :  src/gui_gtk.c

Rustine 6.1a.013
Problème :  Quand 'cinkeys' ou 'indentkeys' contient "=~mot", la casse du
	    dernier caractère du mot n'est pas ignorée. (Raul Segura Acevedo)
Solution :  Ignorer la casse quand le dernier caractère est tapé.
Fichiers :  src/edit.c

Rustine 6.1a.014
Problème :  Après la rustine 6.1a.006, impossible de compiler sans la
	    fonctionnalité +title.
Solution :  Ajouter un #ifdef.
Fichiers :  src/option.c

Rustine 6.1a.015
Problème :  MS-Windows : lors de l'expansion d'un nom de fichier contenant un
	    ou '[' ou une '{', un contre-oblique supplémentaire est insérée.
	    (Raul Segura Acevedo)
Solution :  Éviter d'ajouter la contre-oblique.
Fichiers :  src/ex_getln.c

Rustine 6.1a.016
Problème :  Le complètement après ":language" ne comprend pas "time". (Raul
	    Segura Acevedo)
Solution :  Ajouter cette possibilité au complètement.
Fichiers :  src/ex_cmds2.c

Rustine 6.1a.017
Problème :  Un clic de la souris dans la ligne supérieure d'une fenêtre dans
	    laquelle la première ligne ne rentre pas déplace le curseur dans
	    la mauvaise colonne.
Solution :  Ajouter skipcol aussi pour la ligne supérieure d'une fenêtre.
Fichiers :  src/ui.c

Rustine 6.1a.018
Problème :  Quand 'scrolloff' vaut un et que la hauteur de la fenêtre est de
	    un, "gj" peut placer le curseur au-dessus de la fenêtre. (Raul
	    Segura Acevedo)
Solution :  Ne pas laisser skipcol devenir supérieur à la colonne du curseur.
Fichiers :  src/move.c

Rustine 6.1a.019
Problème :  Lors de l'utilisation d'un caractère de composition au-dessus d'un
	    caractère ASCII, la commande "l" efface le caractère de
	    composition. Uniquement quand 'ruler' et 'showcmd' sont
	    désactivées. (Raphael Finkel)
Solution :  Ne pas déplacer le curseur en affichant les caractères quand des
	    caractères de composition sont présents.
Fichiers :  src/screen.c

Rustine 6.1a.020
Problème :  GTK+ : après la rustine 6.1a.011, le redimensionnement à la souris
	    ne fonctionne pas toujours bien pour les tailles réduites. (Adrien
	    Beau)
Solution :  Utiliser une autre solution pour le problème avec ":set co=77".
Fichiers :  src/gui_gtk_x11.c

Rustine 6.1a.021
Problème :  Plusieurs entrées du menu Syntaxe sont fausses ou déroutantes.
Solution :  Reformuler et corriger les entrées du menu. (Adrien Beau)
Fichiers :  runtime/makemenu.vim, runtime/menu.vim

Rustine 6.1a.022
Problème :  Un fichier de marqueurs peut être utilisé deux fois sur les
	    systèmes insensibles à la casse. (Rick Swanton)
Solution :  Ne pas utiliser deux fois le même nom de fichier dans la valeur
	    par défaut de l'option 'tags'. Ignorer la casse lors de la
	    comparaison des fichiers déjà parcourus.
Fichiers :  src/misc2.c, src/option.c

Rustine 6.1a.023
Problème :  Lors du lancement de l'IHM graphique, des caractères "C" sont
	    affichés dans le terminal.
Solution :  Ne pas tenter l'envoi de commande pour effacer l'écran pendant le
	    démarrage de l'IHM graphique.
Fichiers :  src/screen.c

Rustine 6.1a.024
Problème :  Dans d'autres éditeurs, CTRL-F permet souvent d'obtenir un
	    dialogue pour lancer une recherche.
Solution :  Utiliser CTRL-F dans evim pour appeler le dialogue Rechercher.
Fichiers :  runtime/evim.vim

Rustine 6.1a.025
Problème :  Il n'est pas possible de traduire les choix proposés dans le
	    dialogue pour choisir le format de fichier.
Solution :  Ajouter g:menutrans_fileformat_choices. (Adrien Beau)
Fichiers :  runtime/menu.vim

Rustine 6.1a.026
Problème :  L'indentation des fichiers Java est fausse avec les clauses
	    "throws", "extends" et "implements".
Solution :  Mettre le script d'indentation Java à jour.
Fichiers :  runtime/indent/java.vim

Rustine 6.1a.027
Problème :  Quelques entrées du menu Syntaxe sont manquantes ou incorrectes.
Solution :  Ajouter et corriger les entrées du menu. (Adrien Beau)
	    Raccourcir certains menus pour éviter qu'ils ne deviennent trop
	    longs.
Fichiers :  runtime/makemenu.vim, runtime/menu.vim

Rustine 6.1a.028
Problème :  XIM : problème avec le retour visuel et certaines méthodes de
	    saisie.
Solution :  Utiliser iconv pour calculer les cellules. Ne supprimer la queue
	    pour key_press_event que quand le texte a été modifié. (Yasuhiro
	    Matsumoto)
Fichiers :  src/globals.h, src/mbyte.c, src/screen.c

Rustine 6.1a.029
Problème :  Après la rustine 6.1a.028, impossible de compiler la version GTK+
	    avec XIM, mais sans le multi-octets.
Solution :  Ajouter un #ifdef. (Aschwin Marsman)
Fichiers :  src/mbyte.c

Rustine 6.1a.030
Problème :  toupper() et tolower() peuvent fournir des résultats erronés avec
	    les caractères double-octets.
Solution :  Sauter les caractères double-octets. (Eric Long)
Fichiers :  src/eval.c

Rustine 6.1a.031
Problème :  Accéder à la variable 'balloondelay' peut provoquer un plantage.
Solution :  Faire de la variable 'balloondelay' un long. (Olaf Seibert)
Fichiers :  src/option.h

Rustine 6.1a.032 (extra)
Problème :  Certains fichiers de menu utilisent un mauvais nom de codage dans
	    "scriptencoding".
Solution :  Déplacer les traductions dans un fichier séparé, qui est sourcé
	    après avoir fixé "scriptencoding".
	    Ajout de la traductions tchèque en ASCII des menus, et correction
	    des autres codages.
Fichiers :  runtime/lang/menu_cs_cz.iso_8859-1.vim,
	    runtime/lang/menu_cs_cz.iso_8859-2.vim,
	    runtime/lang/menu_czech_czech_republic.1250.vim,
	    runtime/lang/menu_czech_czech_republic.1252.vim,
	    runtime/lang/menu_czech_czech_republic.ascii.vim,
	    runtime/lang/menu_de_de.iso_8859-1.vim,
	    runtime/lang/menu_de_de.latin1.vim,
	    runtime/lang/menu_fr_fr.iso_8859-1.vim,
	    runtime/lang/menu_fr_fr.latin1.vim,
	    runtime/lang/menu_french_france.1252.vim,
	    runtime/lang/menu_german_germany.1252.vim,
	    runtime/lang/menu_ja_jp.euc-jp.vim,
	    runtime/lang/menu_ja_jp.utf-8.vim,
	    runtime/lang/menu_japanese_japan.932.vim

Rustine 6.1a.033
Problème :  XIM : le contexte de saisie n'est pas réinitialisé.
Solution :  Appeler xim_reset() avec im_set_active(FALSE). (Takuhiro Nishioka)
Fichiers :  src/mbyte.c

Rustine 6.1a.034 (extra)
Problème :  Win32 : les vérifications pour les ACL sur les fichiers en lecture
	    seule ne fonctionnent toujours pas correctement.
Solution :  Supprimer les vérifications des ACL, et revenir au fonctionnement
	    de Vim 6.0.
Fichiers :  src/os_win32.c

Rustine 6.1a.035
Problème :  multi-octets : lors de l'utilisation de ":sh" dans l'IHM
	    graphique, les caractères multi-octets tapés et affichés ne sont
	    pas correctement pris en compte.
Solution :  Prendre en charge les caractères multi-octets trasmis et reçus du
	    shell. (Yasuhiro Matsumoto) Prendre également en charge les
	    caractères de composition UTF-8.
Fichiers :  src/os_unix.c

Rustine 6.1a.036
Problème :  GTK+ : l'événement save-yourself n'est pas pris en charge.
Solution :  Intercepter l'événement save-yourself et conserver les fichiers
	    d'échange. (Neil Bird)
Fichiers :  src/gui_gtk_x11.c

Rustine 6.1a.037
Problème :  Les mappages de touches façon MS-Windows n'incluent pas CTRL-S
	    pour l'enregistrement. (Vlad Sandrini)
Solution :  Mapper CTRL-S à ":update".
Fichiers :  runtime/mswin.vim

Rustine 6.1a.038
Problème :  Solaris : inclure à la fois "sys/sysctl.h" et "sys/sysinfo.h" ne
	    fonctionne pas. (Antonio Colombo)
Solution :  Ne pas inclure "sys/sysinfo.h" quand sysinfo() n'est pas appelé.
Fichiers :  src/os_unix.c

Rustine 6.1a.039
Problème :  Tous les fichiers Visual Basic ne sont pas reconnus.
Solution :  Ajouter une vérification pour les fichiers *.ctl. (Raul Segura
	    Acevedo)
Fichiers :  runtime/filetype.vim

Rustine 6.1a.040
Problème :  Un fichier *.pl est reconnu comme un fichier Perl, alors qu'il
	    peut aussi s'agir d'un fichier Prolog.
Solution :  Tester la première ligne non vide. (Kontra Gergely)
Fichiers :  runtime/filetype.vim

Rustine 6.1a.041
Problème :  Quand le bouton gauche de la souris est enfoncé dans la ligne de
	    commande puis que la souris est déplacée vers le haut, presque
	    tout le texte est sélectionné.
Solution :  Ne pas tenter d'étendre une sélection amodale quand elle n'existe
	    pas.
Fichiers :  src/ui.c

Rustine 6.1a.042
Problème :  Lors de la fusion de deux fichiers, ":diffput" et ":diffget" sont
	    utilisés intensivement, alors qu'ils sont longs à taper.
Solution :  Ajouter "dp" pour ":diffput" et "do" pour ":diffget".
Fichiers :  runtime/doc/diff.txt, src/diff.c, src/normal.c, src/proto/diff.pro


Rustine 6.1b.001 (extra)
Problème :  La recherche de jokers dans un chemin ne prend pas correctement en
	    compte les caractères multi-octets dont l'octet final est un
	    joker.
Solution :  Les prendre en compte correctement. (Muraoka Taro)
Fichiers :  src/os_amiga.c, src/os_mac.c, src/os_msdos.c, src/os_mswin.c,
	    src/os_unix.c

Rustine 6.1b.002
Problème :  Une exprat se terminant par "\{" n'est pas signalée comme une
	    erreur. Cela peut provoquer un débordement de pile quand
	    'incsearch' est activé. (Gerhard Hochholzer)
Solution :  Considérer une "}" comme une erreur.
Fichiers :  src/regexp.c

Rustine 6.1b.003 (extra)
Problème :  L'IHM graphique RISC OS ne compile pas.
Solution :  Inclure les modifications depuis Vim 5.7. (Andy Wingate)
Fichiers :  src/Make_ro.mak, src/gui_riscos.c, src/os_riscos.c,
	    src/os_riscos.h, src/proto/gui_riscos.pro

Rustine 6.1b.004
Problème :  col("'>") retourne un nombre négatif pour une sélection par ligne.
	    (Neil Bird)
Solution :  Ne pas ajouter un à MAXCOL.
Fichiers :  src/eval.c

Rustine 6.1b.005
Problème :  L'utilisation d'un motif de recherche provoquant une erreur de
	    débordement de pile alors que 'hlsearch' est activé donne toujours
	    l'invite Plus.
	    un motif de recherche prenant un bon moment ralentit la saisie
	    quand 'incsearch' est activé.
Solution :  Arrêter la surbrillance 'hlsearch' quand une exprat provoque une
	    erreur.
	    Arrêter de chercher pour 'incsearch' quand un caractère est tapé.
Fichiers :  src/globals.h, src/message.c, src/screen.c, src/search.c,
	    src/vim.h

Rustine 6.1b.006
Problème :  Lors de la saisie d'un caractère de composition dans la ligne de
	    commande avec CTRL-V, le texte n'est pas rafraîchi correctement.
Solution :  Rafraîchir le texte sous et avant le curseur.
Fichiers :  src/ex_getln.c

Rustine 6.1b.007
Problème :  Quand le curseur se trouve dans un espace blanc entre deux
	    phrases, "dis" efface le premier caractère de la phrase suivante,
	    "das" l'espace après la phrase.
Solution :  Reculer le curseur d'un caractère dans ces situations.
Fichiers :  src/search.c

Rustine 6.1b.008
Problème :  Les fichiers *.xsl ne sont pas reconnus comme des fichiers xslt,
	    mais comme des fichiers xml.
	    Les fichiers monk ne sont pas reconnus.
Solution :  Effacer la ligne dupliquée pour *.xsl. (Johannes Zellner)
	    Reconnaître les fichiers monk.
Fichiers :  runtime/filetype.vim

Rustine 6.1b.009
Problème :  Il n'est pas toujours possible de compiler avec le jeu de
	    fonctionnalités minimal puis d'ajouter la fonctionnalité +eval,
	    "sandbox" n'est pas défini. (Axel Kielhorn)
Solution :  Toujours définir "sandbox" quand la fonctionnalité +eval est
	    activée.
Fichiers :  src/globals.h

Rustine 6.1b.010 (extra)
Problème :  Lors de la compilation de "gvimext.cpp" avec MSVC 4.2, obtention
	    de nombreux avertissements.
Solution :  Remplacer "true" par "TRUE". (Walter Briscoe)
Fichiers :  GvimExt/gvimext.cpp

Rustine 6.1b.011
Problème :  Lors de l'utilisation d'une très longue chaîne avec confirm(), il
	    est impossible de quitter l'affichage à l'invite Plus. (Hari
	    Krishna Dara)
Solution :  Sauter à la fin du message pour afficher les choix.
Fichiers :  src/message.c

Rustine 6.1b.012
Problème :  Multi-octets : quand 'showbreak' est activé et qu'un caractère à
	    largeur double ne rentre pas dans le bord droit de la fenêtre, le
	    curseur y reste bloqué. Blocage à l'utilisation de flèche gauche
	    quand 'virtualedit' est activé. (Eric Long)
Solution :  Corriger la manière dont le caractère ">" supplémentaire est
	    compté quand 'showbreak' est activé. Ne pas corriger le curseur
	    lors d'une édition virtuelle sur un caractère à largeur double.
Fichiers :  src/charset.c, src/edit.c

Rustine 6.1b.013
Problème :  Une commande utilisateur correspondant partiellement avec une
	    commande utilisateur locale au tampon et complètement avec une
	    commande utilisateur globale retourne une erreur de commande
	    ambiguë inutile.
Solution :  Rechercher la correspondance globale complète même après une
	    correspondance locale partielle.
Fichiers :  src/ex_docmd.c

Rustine 6.1b.014
Problème :  EBCDIC : désactiver les événements de la souris provoque le
	    salissement de l'affichage. Pareil avec la placement du curseur
	    dans l'IHM graphique.
Solution :  Insérer un Echap dans le code du terminal. (Ralf Schandl)
	    utiliser "\b" au lieu de "\010" pour KS_LE.
Fichiers :  src/os_unix.c, src/term.c

Rustine 6.1b.015
Problème :  Vimtutor présente une coquille. Avertissement émis pour "tempfile"
	    s'il n'existe pas.
Solution :  Déplacer une apostrophe à la fin d'une ligne. (Max Ischenko)
	    Utiliser d'abord "mktemp", davantage de systèmes en disposent.
Fichiers :  src/vimtutor

Rustine 6.1b.016
Problème :  GTK+ : le chargement d'un jeu de polices qui ne fonctionne qu'en
	    partie peut provoquer un blocage ou un plantage de Vim.
Solution :  Éviter que char_width soit nul. (Yasuhiro Matsumoto)
Fichiers :  src/gui_gtk_x11.c

Rustine 6.1b.017
Problème :  IHM graphique : lors de l'utilisation de ":shell" et qu'un signal
	    sonore est émis, il n'est pas audible.
Solution :  Appeler vim_beep() pour produire le signal sonore du shell.
	    (Yasuhiro Matsumoto)
Fichiers :  src/message.c

Rustine 6.1b.018 (depends on 6.1b.006)
Problème :  Lors de la saisie de la clef de chiffrement, les touches spéciales
	    peuvent révèler les caractères tapés.
Solution :  S'assurer que des étoiles sont employées dans tous les cas, et
	    rien d'autre.
Fichiers :  src/digraph.c, src/getchar.c, src/ex_getln.c

Rustine 6.1b.019 (depends on 6.1b.005)
Problème :  Un motif de recherche qui prend un certain temps ralentit la
	    saisie quand 'incsearch' est activé.
Solution :  Transmettre SEARCH_PEEK à dosearch().
Fichiers :  src/ex_getln.c

Rustine 6.1b.020
Problème :  Lors de l'utilisation du greffon "matchit.vim", "%" trouve une
	    correspondance sur le "end" d'une commande ":syntax region" dans
	    les scripts Vim.
Solution :  Ignorer les commandes ":syntax region" en fixant b:match_skip.
Fichiers :  runtime/ftplugin/vim.vim

Rustine 6.1b.021
Problème :  Parfois, avec 'mousefocus' activé, CTRL-W CTRL-] ne déplace pas le
	    pointeur de la souris vers la nouvelle fenêtre. (Robert Webb)
Solution :  Ne pas réinitialiser need_mouse_correct lors de la vérification de
	    l'horodatage d'un fichier.
Fichiers :  src/fileio.c

Rustine 6.1b.022
Problème :  Avec de nombreux replis, "j" ne respecte pas parfaitement
	    'scrolloff'. (Srinath Avadhanula)
Solution :  Aller à la fin d'un repli avant de compter les lignes de contexte.
Fichiers :  src/move.c

Rustine 6.1b.023
Problème :  Sur MS-Windows, system() peut provoquer la vérification de
	    l'horodatage, car Vim perd puis récupère le focus, alors que cela
	    ne se produit pas sur Unix.
Solution :  Ne pas vérifier l'horodatage quand system() est en cours.
Fichiers :  src/ex_cmds2.c, src/fileio.c, src/globals.h, src/misc1.c

Rustine 6.1b.024 (extra)
Problème :  Gettext 0.11 se plaint que "sjis" n'est pas un nom standard.
Solution :  Utiliser "cp932" à la place.
Fichiers :  src/po/sjiscorr.c

Rustine 6.1b.025 (extra)
Problème :  Win32 : lors de la fermeture de gvim alors qu'il est minimisé et
	    que l'un de ses fichiers a été modifié, le dialogue correspondant
	    apparaît dans un coin de l'écran.
Solution :  Mettre le dialogue au milieu de l'écran.
Fichiers :  src/gui_w48.c

Rustine 6.1b.026
Problème :  Quand 'diffopt' contient 'iwhite' mais pas 'icase', les
	    différences de casse ne sont pas correctement mises en
	    surbrillance. (Gerhard Hochholzer)
Solution :  Ne pas ignorer la casse quand les différences d'espaces sont
	    ignorées.
Fichiers :  src/diff.c

Rustine 6.1b.027
Problème :  "vim --remote +" peut provoquer un plantage.
Solution :  Vérifier s'il manque un nom de fichier dans l'argument. (Martin
	    Kahlert)
Fichiers :  src/main.c

Rustine 6.1b.028 (extra)
Problème :  Win16 : impossible de compiler après la rustine 6.1b.025.
Solution :  Ajouter du code spécifique pour Win16. (Vince Negri)
Fichiers :  src/gui_w48.c

Rustine 6.1b.029
Problème :  Win32 : quand un répertoire sur une partition NTFS est en
	    lecture/exécution (mais pas effacement/modification/écriture) et
	    que le fichier permet les modifications, tenter d'écrire le
	    fichier l'efface. Passer le fichier en lecture/écriture/exécution
	    (mais pas effacement) résoud le problème. (Mark Canup)
Solution :  Utiliser le code Unix pour vérifier s'il est possible d'écrire
	    dans le répertoire. Dans la négative, faire une copie de
	    sauvegarde et écraser le fichier.
Fichiers :  src/fileio.c

Rustine 6.1b.030 (extra)
Problème :  Mac : petites erreurs dans le script de compilation et dans les
	    prototypes.
Solution :  Corriger le script de compilation et ajouter les prototypes. (Axel
	    Kielhorn)
Fichiers :  src/os_mac.build, src/gui_mac.c

Rustine 6.1b.031 (extra)
Problème :  IHM graphique Win32 : ":set guifont=*" ne fixe pas 'guifont' au
	    nom de la police choisie. (Vlad Sandrini)
Solution :  Remettre le code dans gui_mch_init_font() pour forger le nom
	    d'après XXX the logfont.
Fichiers :  src/gui_w48.c

Rustine 6.1b.032
Problème :  Athena : choisir un jeu de couleurs avant que l'IHM graphique ait
	    démarré provoque un plantage. (Todd Blumer)
Solution :  Ne pas tenter d'utiliser le nom des couleurs avant qu'elles aient
	    été définies.
Fichiers :  src/gui_athena.c

Rustine 6.1b.033
Problème :  L'utilisation d'un quantificateur après une commande ":s" peut
	    provoquer des erreurs ml_get. (Dietmar Lang)
Solution :  Vérifier que la plage obtenue ne va pas au-delà de la fin du
	    tampon.
Fichiers :  src/ex_cmds.c

Rustine 6.1b.034
Problème :  Après le sourcement de "mswin.vim", lors d'un <C-S-Right> après
	    l'autoindentation, suivi d'un <Suppr>, un avertissement est émis
	    pour l'allocation d'une quantité ridicule XXX !?! de mémoire.
	    (Dave Delgreco)
Solution :  Ajuster le début de la zone Visuel lors de l'effacement de
	    l'autoindentation.
Fichiers :  src/edit.c

Rustine 6.1b.035
Problème :  Lors de l'utilisation de evim, le dépôt d'un fichier sur Vim suivi
	    du double clic sur un mot change ce dernier en "i". (Merlin
	    Hansen)
Solution :  Réinitialiser need_start_insertmode après l'édition du fichier.
Fichiers :  src/ex_docmd.c

==============================================================================
Version 6.2						*version-6.2*

Cette section traite des améliorations apportées entre les versions 6.1 et
6.2.

Il s'agit d'une version corrigeant des bogues, avec peu de nouvelles
fonctionnalités.

Principales nouvelles fonctionnalités :
- Support de GTK+ 2. (Daniel Elstner)
- Support de l'édition des textes en Arabe. (Nadim Shaikli & Isam Bayazidi)
- Commande ":try" et gestion des exceptions. (Servatius Brandt)
- Support du toolkit neXtaw pour l'IHMg (ressemble à Athena). (Alexey Froloff)
- Support de Cscope pour Win32. (Khorev Sergey)
- Support de l'impression PostScript dans divers codages 8 bits. (Mike
  Williams)


CHANGEMENTS						*changed-6.2*

Suppression du fichier d'indentation Scheme, l'indentation interne pour Lisp
fonctionne convenablement à présent.

Déplacement des répertoires "GvimExt", "OleVim" et "VisVim" dans le répertoire
"src". C'est plus cohérent avec la manière dont "xxd" est pris en compte.

Le fichier "VisVim.dll" est installé dans le répertoire de plus haut niveau,
auprès de "gvimext.dll", plutôt que dans un sous-répertoire "VisVim". Cela
corrige le problème de NSIS qui tentait de le désinstaller depuis le mauvais
répertoire.

Suppression du fichier d'indentation art, il ne faisait rien du tout.

submatch() retournait des coupures de lignes sous la forme de CR au lieu de
LF.

Modification des Makefile Win32 pour les rendre plus cohérents et pour
compiler "gvimext.dll". (Dan Sharp)

'cindent' : aligner un commentaire "//" avec un commentaire "//" dans la ligne
précédente. (Helmut Stiegler)

Avant, seuls les parents des éléments graphiques des terminaux similaires à
xterm étaient remontés pour trouver le titre et l'étiquette de l'icône. À
présent, c'est effectué pour tous les émulateurs de terminaux.

Il est maintenant possible de reconnaître les contre-obliques avec "%". La
drapeau 'M' de l'option 'cpoptions' permet de le désactiver. (Haakon Riiser)

Suppression du Makefile "Make_tcc.mak" pour Turbo C. Il ne fonctionnait pas
et il est sans doute impossible de le faire fonctionner (le compilateur manque
de mémoire).

Même si la documentation faisait référence à des mots-clés, "[ CTRL-D"
utilisait 'isident' pour trouver des correspondances. Elle est modifiée pour
utiliser 'iskeyword'. Cela s'applique également à d'autres commandes qui
recherchent des mots définis dans des fichiers inclus, telles que ":dsearch",
"[D" et "[d".

'keywordprg' est maintenant globale-locale. (Christian Robinson)

L'interface NetBeans est activée par défaut. L'argument de `configure` a été
inversé : "--enable-netbeans" est devenu "--disable-netbeans".


AJOUTS							*added-6.2*

Nouvelles options :
	'arabic'
	'arabicshape'
	'ambiwidth'
	'autochdir'
	'casemap'
	'copyindent'
	'cscopequickfix'
	'preserveindent'
	'printencoding'
	'rightleftcmd'
	'termbidi'
	'toolbariconsize'
	'winfixheight'

Nouveaux codages claviers :
	Serbian (Aleksandar Veselinovic)
	Chinese Pinyin (Fredrik Roubert)
	Esperanto (Antoine J. Mechelynck)

Nouveaux fichiers de syntaxe :
	Valgrind (Roger Luethi)
	Template Smarty (Manfred Stienstra)
	MySQL (Kenneth Pronovici)
	Description de paquetages RockLinux (Piotr Esden-Tempski)
	MMIX (Dirk Huesken)
	gkrellmrc (David Necas)
	Tilde (Tobias Rundtrom)
	Logtalk (Paulo Moura)
	PLP (Juerg Waalboer)
	fvwm2m4 (David Necas)
	IPfilter (Hendrik Scholz)
	fstab (Radu Dineiu)
	Quake (Nikolai Weibull)
	Occam (Mario Schweigler)
	lpc (Shizhu Pan)
	Configuration Exim (David Necas)
	EDIF (Artem Zankovich)
	.cvsrc (Nikolai Weibull)
	.fetchmailrc (Nikolai Weibull)
	GNU gpg (Nikolai Weibull)
	Grub (Nikolai Weibull)
	Modconf (Nikolai Weibull)
	RCS (Dmitry Vasiliev)
	Art (Dorai Sitaram)
	Renderman Interface Bytestream (Andrew J Bromage)
	Mailcap (Doug Kearns)
	Fichier de mise à jour Subversion (Dmitry Vasiliev)
	Microsoft IDL (Vadim Zeitlin)
	WildPackets EtherPeek Decoder (Christopher Shinn)
	Spyce (Rimon Barr)
	Resolv.conf (Radu Dineiu)
	A65 (Clemens Kirchgatterer)
	sshconfig et sshdconfig (David Necas)
	Cheetah et HTMLCheetah (Max Ischenko)
	Packet Filter (Camiel Dobbelaar)

Nouveaux fichiers d'indentation :
	Eiffel (David Clarke)
	Tilde (Tobias Rundtrom)
	Occam (Mario Schweigler)
	Art (Dorai Sitaram)
	PHP (Miles Lott)
	Dylan (Brent Fulgham)

Nouvelles traductions du tutoriel :
	Slovaque (Lubos Celko)
	Grecque (Christos Kontas)
	Allemand (Joachim Hofmann)
	Norvégien (Øyvind Holm)

Nouveaux greffons de type de fichier :
	Occam (Mario Schweigler)
	Art (Dorai Sitaram)
	ant.vim, aspvbs.vim, config.vim, csc.vim, csh.vim, dtd.vim, html.vim,
	jsp.vim, pascal.vim, php.vim, sgml.vim, sh.vim, svg.vim, tcsh.vim,
	xhtml.vim, xml.vim, xsd.vim.  (Dan Sharp)

Nouveaux greffons de compilateur :
	Checkstyle (Doug Kearns)
	g77 (Ralf Wildenhues)
	fortran (Johann-Guenter Simon)
	Xmllint (Doug Kearns)
	Ruby (Tim Hammerquist)
	Modelsim vcom (Paul Baleme)

Nouvelles traductions des menus :
	Brésilien (José de Paula)
	Britannique (Mike Williams)
	Coréen en UTF-8. (Nam SungHyun)
	Norvégien (Øyvind Holm)
	Serbe (Aleksandar Jelenak)

Nouvelle traduction des messages en norvégien. (Øyvind Holm)

Nouveau jeu de couleurs :
	desert (Hans Fugal)

Fonctionnalités spécifiques à l'arabe, options 'arabicshape', 'termbidi',
'arabic' et 'righleftcmd'. (Nadim Shaikli & Isam Bayazidi)

Support de la boîte à outils pour IHM graphique neXtaw, très semblable à
Athena. (Alexey Froloff)

Win32 : support de Cscope. (Khorev Sergey)

VMS : diverses améliorations de la documentation et des Makefile. (Zoltan
Arpadffy)

Ajout de la touche "x" au greffon "explorer.vim" : exécuter l'action par
défaut. (Yasuhiro Matsumoto)

Compilation de "gvimext.dll" avec MinGW. (Rene de Zwart)

Ajout du greffon "tohtml.vim". Il définit la commande utilisateur ":TOhtml",
une manière simple pour convertir un texte en HTML.

Ajout des commandes ":try" / ":catch" / ":finally" / ":endtry". Ajout de
numéros "E999" à tous les messages d'erreur, de façon à ce qu'elles puissent
être interceptée par leur numéro. (Servatius Brandt)
Déplacement d'une partie de "ex_docmd.c" vers le nouveau fichier "ex_eval.c".

Ajout du support pour GTK+ 2.2.x. (Daniel Elstner)
Ajout du registre "~" : glisser/déposer du texte.
Ajout de l'option 'toolbariconsize'.
Ajout de -Dalloca lors de l'exécution de `lint` pour contourner un problème le
prototype de alloca().

Lors de la sélection d'un élément dans la fenêtre des erreurs pour y sauter,
faire le nécessaire pour trouver un fenêtre ordinaire afin d'y afficher le
fichier (et non une fenêtre de prévisualisation).

Support de l'impression PostScript avec différents codages 8 bits. (Mike
Williams)

inputdialog() accepte un troisième argument qui est utilisé quand le dialogue
est annulé. Cela permet de détecter une différence entre une annulation et une
saisie vide.

Ajout de la recette Aap. Elle permet de mettre Vim à jour d'après la toute
dernière version, de la compiler et de l'installer.

Drapeau "/" de 'cinoptions' : indentation supplémentaire pour les lignes de
commentaire. (Helmut Stiegler)

Variable Vim "v:register" et les fonctions setreg(), getreg() et getregtype().
(Michael Geddes)

Drapeau "v" de 'cpoptions' : laisser le texte à l'écran en mode Insertion
pendant les contre-obliques. (Phillip Vandry)

"Dosinst.exe" trouve aussi "gvimext.dll" dans le répertoire "GvimExt". Utile
quand l'installation est exécutée dans le répertoire "src" lors de tests.

Support des fichiers de marqueurs triés sans tenir compte de la casse.
(Flemming Madsen)

Lors du complètement d'un joker dans un élément en tête d'un chemin, comme
dans "../*/Makefile", seulement la dernière partie ("Makefile") est listée.
Support du complètement personnalisé de la ligne de commande. (Flemming
Madsen)

"rxvt" est aussi reconnu comme un terminal similaire à xterm. (Tomas Styblo)

Gestion correcte des sessions X11. Correction du problème avec l'événement
WM_SAVE_YOURSELF, non utilisé par les environnements populaires. (Neil Bird)
Non utilisé sur Gnome 2, qui dispose de son propre gestionnaire.

Support des arguments BOR, DEBUG et SPAWNO pour les Makefiles Borland 3.
(Walter Briscoe)

Support des sauts de pages pour l'impression. Ajout du champ "formfeed" dans
'printoptions'. (Mike Williams)

Mac OS X : support multilingue : iconv et gettext. (Muraoka Taro, Axel
Kielhorn)

Drapeau "\Z" dans les motifs : ignorer les différences dans les caractères de
composition. (Ron Aaron)

Ajout des options 'preserveindent' et 'copyindent'. Elles utilisent les
caractères d'espaces blancs au lieu des tabulations autant que possible.
(Chris Leishman)

Mise à jour de tables Unicode avec Unicode 4.0. (Raphael Finkel)

Support de la molette de la souris dans rxvt. (AIDA Shinra)

Win32 : ajout du modificateur ":8" pour obtenir le nom court d'un fichier.
"Test50" vérifie l'expansion de ":8" sur les systèmes Win32. (Michael Geddes)

Option 'cscopequickfix' : ouvre la fenêtre mise-au-point pour les commandes
Cscope. Nettoyage du code pour les messages. (Khorev Sergey)

IHM graphique : support de plus de 222 colonnes pour le placement de la
souris.

Commande ":stopinsert" : ne pas retourner en mode Insertion.

Commande "interrupt" en mode débogage. Utile pour simuler CTRL-C. (Servatius
Brandt)


CORRECTIONS						*fixed-6.2*

Suppression de quelques #define inutilisés dans "config.h.in", "os_os2_cfg.h"
et "os_vms_conf.h".

Les icônes de Vim en format PNG n'avaient pas un fond transparent. (Greg
Roelofs)

Correction d'un grand nombre d'erreurs de frappe dans les docs. (Adri Verhoef)

Les #define pour la génération de prototype posaient des problèmes. Ils ont
été changés en typedef.

Une nouvelle version de "libintl.h" utilise __asm__, ce qui perturbe cproto.
Définition d'une macro __asm__ factice.

Quand 'virtualedit' est activé, il est impossible de se placer à la moitié
d'un caractère non imprimable. Cela perturbe la sélection avec CTRL-V. (Taro
Muraoka)
   Le mouvement à la moitié d'un caractère non imprimable est maintenant
possible. Ne pas laisser getvvcol() modifier l'argument pos->coladd.

Quand une tabulation est enroulée sur la ligne suivante, que 'listchars' est
activé et que 'foldcolumn' est non nul, un seul caractère de la colonne de
repli est en surbrillance. (Muraoka Taro)

Quand ":catch" est utilisé sans argument, Vim plante. (Yasuhiro Matsumoto)
Utiliser le motif ".*" quand aucun argument n'est spécifié.

Win32 : quand "gvim.exe" est démarré depuis un raccourci dont les propriétés
de fenêtre demande la maximisation, Vim ne démarre pas dans une fenêtre
maximisée. (Yasuhiro Matsumoto) Ouvrir la fenêtre avec la taille par défaut et
ne pas rappeler ShowWindow() quand elle est déjà visible. (Helmut Stiegler)

"gui_gtk.c" utilisait MAX, alors que ce dernier est indéfini pour éviter un
conflit avec des fichiers d'en-tête du système.

Win32 : lors de la fermeture d'une fenêtre depuis un mappage, certains pixels
persistent sur la ligne d'état. (Yasuhiro Matsumoto)

Un numéro de colonne qui va au-delà de la fin de la ligne dans un format
d'erreur peut provoquer un plantage.

":throw 'test'" plante Vim. (Yasuhiro Matsumoto)

Les barres de défilement de l'explorateur de fichier ne sont pas modifiées
après un ":hi Scrollbar guifg=color". Et l'explorateur de fichier n'est pas
modifié par la commande ":colorscheme". (David Harrison)

Motif : quand la fonctionnalités FEAT_FOOTER est définie, la zone de texte
deborde de quelques pixels sur la droite. Supprimer le cas particulier dans
gui_get_base_width(). (David Harrison)

L'utilisation de CTRL-R CTRL-P en mode Insertion positionne la marque '] au
mauvais endroit. (Helmut Stiegler)

Quand 'formatoptions' contient "awct", un non-commentaire n'était pas mis en
forme automatiquement.

L'utilisation d'un argument "--cmd" plus de dix fois provoquait un plantage.

Le support des souris de style DEC ne fonctionnait pas quand le champ page
n'était pas vide. (Uribarri)

"vim -l un deux" n'activait l'option 'lisp' que pour le premier fichier. Vi
l'active pour tous les fichiers.

":set tw<" ne fonctionnait pas. Il vérifiait '^' au lieu de '<'.

"%" n'était pas étendu au nom de fichier courant dans ":hardcopy > %.ps".

":redraw" mets également à jour la zone Visuel.

Quand un commande non disponible (par exemple ":perl") avait des arguments
invalides, l'erreur la moins importante était rapportée, donnant à
l'utilisateur l'impression que la commande pouvait fonctionner.

Sur les systèmes non-Unix, les autocommandes pour l'écriture ne tentaient pas
de correspondances avec les noms de fichiers courts, entrainant l'échec de
motifs tels que "a/b".

VMS : e_screenmode n'était pas défini, ainsi que d'autres corrections pour
VMS. (Zoltan Arpadffy)

redraw_msg() dépendait de FEAT_ARABIC au lieu de FEAT_RIGHTLEFT. (Walter
Briscoe)

Diverses modifications pour les Makefiles PC. (Walter Briscoe)

Utilisation de _truename() au lieu de notre propre code pour développer un
fichier en un chemin complet. (Walter Briscoe)

Erreur dans la détection de type de fichier pour "/etc/modutils". (Lubomir
Host)

Interface Cscope : un tampon était trop petit.

Win16 : suppression de la contre-oblique finale dans un chemin lors de la
demande des drapeaux de permissions. (Vince Negri)

Lors d'une recherche insensible à la casse de marqueurs, Vim pouvait bloquer.

Lors de la recherche d'un répertoire avec un XXX stopdir, Vim pouvait planter.
La mémoire allouée était insuffisante. (Vince Negri)

Une commande utilisateur pouvait provoquer un plantage. Ne pas utiliser
l'index de commande quand il est négatif. (Vince Negri)

putenv() ne fonctionnait pas avec MinGW et Cygwin. (Dan Sharp)

De nombreuses fonctions étaient communes entre "os_msdos.c" et "os_win16.c".
Utiliser "os_msdos.c" pour compiler la version Win16 et supprimer les
fonctions de "os_win16.c". (Vince Negri)

Pour les terminaux se comportant comme xterm mais qui avait un nom qui n'était
pas reconnu, le titre de la fenêtre n'était pas toujours fixé.

":hardcopy" tentait toujours une impression en couleurs, même quand la
coloration syntaxique était désactivée.

Plantage à l'utilisation de ":catch" sans argument. (Servatius Brandt)

Win32 : ":n #" doublait les contre-obliques.

Correction de la mise en forme de l'Arabe dans la ligne de commande. (Nadim
Shaikli)

Éviter de découper une chaîne affichée dans la ligne de commande au niveau des
caractères, cela perturbe la mise en forme des caractères arabes.

Mise à jour des Makefiles Cygwin et MinGW pour utiliser plus de dépendances.
(Dan Sharp)

"2html.vim" ne fonctionnait pas avec 'nomagic' activé.

Quand une liste locale d'arguments est utilisée, un ":only" peut entrainer un
plantage ultérieur de Vim. (Muraoka Taro)

Lors de l'utilisation de "%P" dans 'statusline' et que 'fillchar' vaut "-"
pour la ligne d'état, un pourcentage de 3 % pouvait être affiché "-3%". De
même, éviter qu'un espace dans le nom du fichier soit converti en caractère de
remplissage.

MS-Windows : la prise en compte des contre-obliques et des doubles-apostrophes
pour les arguments de la ligne de commande n'était pas similaire à ce que font
les autres applications. (Walter Briscoe)

Parfois, "Test32" ne fonctionnait pas, car "test11.out" était écrit
"TEST11.OUT".

Élimination d'avertissements pour des conversions de pointeurs avec Borland C
5.5 dans "dosinst.c" et "uninstal.c".

Améliorations supplémentaires dans le fichier "Make_bc3.mak". (Walter Briscoe)

Quand ":syn sync linebreaks=1" était utilisé, l'édition de la première ligne
provoquait le rafraîchissement de tout l'écran.

La construction des messages traduits ne fonctionnait pas, "if_perl.xs"
n'était pas trouvé. (Vlad Sandrini)

Motif et Athena : placer Vim au premier plan de le désinconifiait pas.
Utiliser XMapRaised() au lieu de XRaiseWindow(). (Srikanth Sankaran)

Lors de l'utilisation de ":ptag" dans une fenêtre dans laquelle 'scrollbind'
est activé, 'scrollbind' était aussi activé dans la fenêtre de
prévisualisation. Sont maintenant également réinitialisés 'foldcolumn' et
'diff'.

Différentes commandes pour partager une fenêtre transmettaient 'scrollbind',
ce qui est rarement souhaité, en particulier pour "q:" et "copen".
Réinitialiser en général 'scrollbind' lors du partage d'une fenêtre.

Quand 'shellslash' est activé dans le fichier vimrc, la première entrée de
":scriptnames" avait toujours les contre-obliques. Les entrées de la liste du
mode mise-au-point avaient également les mauvaises (contre-)obliques.

Win32 : les textes des dialogues d'impression n'étaient pas traduits.
(Yasuhiro Matsumoto)

Lors de l'utilisation d'un caractère multi-octets contenant un octet K_SPECIAL
ou un code de touche spécial avec "--remote-send", la séquence d'octets reçue
était bouleversée. Elle est maintenant placée dans le tampon typeahead plutôt
que dans le tampon de saisie.

Win32 : la position du curseur était incorrecte après le changement de la
forme du curseur. (Yasuhiro Matsumoto).

Win32 : quand 'encoding' n'est pas identique à la page de code actuelle, il
est impossible de donner un titre avec des caractères non ASCII.

"vim -d scp://machine/fichier1 scp://machine/fichier2" ne fonctionnait pas,
une seule fenêtre était ouverte. Correction du greffon "netrw.vim" pour ne
plus détruire le tampon s'il est affiché dans d'autres fenêtres.

"/$" provoquait la disparition de "e" dans la dernière colonne de l'écran, un
blanc en surbrillance prenait sa place.

":s/ *\ze\n//e" supprimait la coupure de ligne et introduisait du texte au
hasard. Il utilisait le nombre de ligne en incluant ce qui correspondait après
le "\ze". XXX ???

L'utilisation du drapeau "c" avec ":s" modifiait le comportement lors du
remplacement d'une coupure de ligne avec "\@<=". Sans "c", la correspondance
suivante n'était pas trouvée.

":%s/\vA@<=\nB@=//gce" restait bloqué sur "A\nB" après un appui sur "n".

VMS : Ajout de HAVE_STRFTIME dans le fichier de configuration. (Zoltan
Arpadffy)

Lorsque l'invite pour un effacement demande si l'opération doit se poursuivre
quand un collage n'est pas possible, restaurer msg_silent après coup.

":sign" ne se plaignait pas quand il manquait un argument.

Lors de l'ajout ou la suppression d'un symbole, la surbrillance de 'hlsearch'
pouvait disparaître. Utilisation de fonctions génériques pour mettre les
symboles à jour.

Sur MS-Windows NT, 2K et XP, ne pas utiliser "command.com", mais plutôt
"cmd.exe" pour les tests. Cela permet aux tests de fonctionner sur davantage
de systèmes.

Ne pas créer "/tmp" dans les tests MS-DOS, pour éviter une erreur.

Mac Classic : problèmes lors de la lecture des fichiers contenant des CR et
des CR/LF. Le bon fonctionnement avec Metrowerks 2.2 dépend de la version de
la bibliothèque de fgets(). (Axel Kielhorn)

Lors de la saisie d'un mot de passe, un "*"  était affiché pour chaque octet
plutôt que pour chaque caractère. Ajout de la prise en charge des caractère
multi-octets dans l'affichage des "*". (Yasuhiro Matsumoto)

Avec Perl 5.6, accéder à $curbuf ne fonctionne pas. Ajout d'un #ifdef pour
différencier les codes pour Perl 5.6 et 5.8. (Dan Sharp)

MinGW et Cygwin : ne pas faire de `strip` sur les exécutables compilés avec
les informations de débogage. (Dan Sharp)

L'affectation d'une variable avec des accolades contenant "==" ne fonctionne
pas. Ignorer les accolades avant de chercher un "=". (Vince Negri)

Lors de l'annulation de la sélection de marqueurs correspondants alternatifs,
l'index de la pile des marqueurs pouvait être avancé trop loin, ce qui
aboutissait à un message d'erreur avec CTRL-T.


Rustine 6.1.001
Problème :  Lors de la mise en forme de texte UTF-8, il peut se trouver
	    enroulé au niveau d'un espace suivi d'un caractère de composition.
	    (Raphael Finkel)
Solution :  Vérifier s'il se trouve un caractère de composition sur un espace.
	    Corriger également l'erreur d'affichage lors de la suppression
	    d'un caractère de composition sur un espace.
Fichiers :  src/edit.c, src/misc1.c, src/screen.c

Rustine 6.1.002 (extra)
Problème :  Win32 : après une commande ":popup", le pointeur de la souris
	    reste masqué.
Solution :  Démasquer le pointeur de la souris avant d'afficher le menu.
Fichiers :  src/gui_w48.c

Rustine 6.1.003
Problème :  Quand 'laststatus' est nul et qu'il existe un partage vertical, le
	    séparateur vertical est dessiné dans la ligne de commande.
	    (Srikant Sankaran)
Solution :  Ne pas dessiner le séparateur vertical quand il n'y a pas de ligne
	    d'état.
Fichiers :  src/screen.c

Rustine 6.1.004
Problème :  Unicode 3.2 change la largeur et la composition de quelques
	    caractères. (Markus Kuhn)
Solution :  Ajuster les fonctions unicode pour la largeur des caractères et
	    les caractères de composition.
Fichiers :  src/mbyte.c

Rustine 6.1.005
Problème :  Quand il se trouve plus de 50 éléments dans 'statusline', Vim peut
	    planter. (Steve Hall)
Solution :  Incrémenter itemcnt dans check_stl_option(). (Flemming Madsen)
Fichiers :  src/option.c

Rustine 6.1.006
Problème :  Lors de l'utilisation de "P" en mode Visuel pour coller du texte
	    sélectionné ligne par ligne, ce n'est pas le bon texte qui est
	    effacé. (Jakub Turski)
Solution :  Coller le texte avant la zone Visuel et corriger le texte à
	    effacer suite à l'insertion des lignes.
	    Corriger également le fonctionnement incorrect de "p" ligne par
	    ligne en mode Visuel.
Fichiers :  src/normal.c, src/ops.c

Rustine 6.1.007
Problème :  Utiliser ":filetype plugin off" alors qu'aucun greffon de type de
	    fichier n'est activé provoque des messages d'erreur. (Yiu Wing)
Solution :  Utiliser ":silent!" pour éviter les messages d'erreur.
Fichiers :  runtime/ftplugof.vim

Rustine 6.1.008
Problème :  La commande "%" n'ignore pas les \" dans une chaîne, qui sont
	    perçus comme des terminaisons. (Ken Clark)
Solution :  Ignorer une double-apostrophe précédée d'un nombre impair de
	    contre-oblique.
Fichiers :  src/search.c

Rustine 6.1.009
Problème :  Vim plante lors de l'utilisation d'un très grand nombre pour la
	    valeur de maxwid dans une ligne d'état. (Robert M. Nowotniak)
Solution :  Tester un débordement donnant à maxwid une valeur négative.
Fichiers :  src/buffer.c

Rustine 6.1.010
Problème :  Rechercher un "?" vers l'arrière avec "?\?" ne fonctionne pas.
	    (Alan Isaac) Même problème avec ":s?\??" et ":g?\??".
Solution :  Changer "\?" en "?" dans un motif utilisant "?" comme séparateur.
Fichiers :  src/ex_cmds.c, src/ex_docmd.c, src/proto/regexp.pro, src/regexp.c,
	    src/search.c, src/syntax.c, src/tag.c

Rustine 6.1.011
Problème :  XIM : ne fonctionne pas correctement quand 'number' est activé. De
	    même, problème de focus lors la sélection de candidats.
Solution :  Corriger les problèmes XIM. (Yasuhiro Matsumoto)
Fichiers :  src/mbyte.c, src/screen.c

Rustine 6.1.012
Problème :  Un appel à system() peut échouer si fread() effectue une
	    conversion CR-LF vers LF.
Solution :  Ouvrir le fichier en mode binaire. (Pavol Huhas)
Fichiers :  src/misc1.c

Rustine 6.1.013
Problème :  Win32 : la valeur par défaut de 'printexpr' ne fonctionne pas
	    quand 'printdevice' contient un ou des caractères spéciaux.
Solution :  Ajouter des doubles-apostrophes autour du nom du périphérique.
	    (Mike Williams)
Fichiers :  runtime/doc/option.txt, src/option.c

Rustine 6.1.014
Problème :  Un opérateur tel que "r" utilisé en mode Visuel par bloc n'utilise
	    pas 'virtualedit' quand ce dernier vaut "block".
Solution :  Vérifier si 'virtualedit' est activé en mode Visuel par bloc quand
	    l'opérateur est démarré.
Fichiers :  src/ex_docmd.c, src/globals.h, src/misc2.c, src/normal.c,
	    src/ops.c, src/undo.c

Rustine 6.1.015
Problème :  Après la rustine 6.1.014, impossible de compiler avec le jeu de
	    fonctionnalités minuscule. (Christian J. Robinson)
Solution :  Ajouter la définition de virtual_op faisant défaut.
Fichiers :  src/vim.h

Rustine 6.1.016 (extra)
Problème :  Win32 : la production du texte hébreu ou arabe peut rencontrer des
	    problèmes avec l'inversion du sens d'écriture.
Solution :  Remplacer la fonction RevOut() par ETO_IGNORELANGUAGE. (Ron Aaron)
Fichiers :  src/gui_w32.c

Rustine 6.1.017
Problème :  Cygwin : après la rustine 6.1.012, il est toujours impossible de
	    faire des entrées/sorties avec un fichier binaire. (Pavol Juhas)
Solution :  Définir BINARY_FILE_IO pour Cygwin.
Fichiers :  src/os_unix.h

Rustine 6.1.018
Problème :  Message d'erreur lors de l'utilisation de la surbrillance de
	    cterm. (Leonardo Di Lella)
Solution :  Supprimer une contre-oblique devant les "?".
Fichiers :  runtime/syntax/cterm.vim

Rustine 6.1.019 (extra)
Problème :  Win32 : le nom de fichier est corrompu quand l'édition ne concerne
	    qu'un nom d'unité. (Walter Briscoe)
Solution :  Ajouter un octet NUL après le nom de l'unité. (Vince Negri)
Fichiers :  src/os_win32.c

Rustine 6.1.020
Problème :  col("'>") retourne un nombre très grand après l'utilisation du
	    mode Visuel par ligne.
Solution :  Retourner la longueur de la ligne à la place.
Fichiers :  src/eval.c

Rustine 6.1.021 (basée sur la rustine 6.1.009)
Problème :  Vim plante lors de l'utilisation d'une très grande valeur pour
	    minwid dans la ligne d'état. (Robert M. Nowotniak)
Solution :  Tester un débordement donnant à minwid une valeur négative.
Fichiers :  src/buffer.c

Rustine 6.1.022
Problème :  Faire glisser la ligne d'état au dessus de la fenêtre de ligne de
	    commande fonctionne comme si c'était la ligne d'état inférieure
	    qui était glissée/déplacée. (Jim Battle)
Solution :  Rendre possible le glissement de la ligne d'état au dessus de la
	    fenêtre de ligne de commande, afin qu'elle puisse être
	    redimensionnée.
Fichiers :  src/ui.c

Rustine 6.1.023 (extra)
Problème :  VMS : l'exécution des tests ne fonctionne pas correctement.
Solution :  Ajuster le Makefile. (Zoltan Arpadffy)
Fichiers :  src/testdir/Make_vms.mms

Rustine 6.1.024
Problème :  Quand un fichier d'en-tête utilise une nouvelle syntaxe pour
	    déclarer des fonctions, Vim ne parvient à déterminer correctement
	    quels sont les prototypes manquants.
Solution :  Accepter les accolades autour des noms de fontions. (M. Warner
	    Losh)
Fichiers :  src/osdef.sh

Rustine 6.1.025
Problème :  Cinq messages de "vim --help" ne commencent pas par une majuscule.
	    (Vlad Sandrini)
Solution :  Rendre les messages cohérents.
Fichiers :  src/main.c

Rustine 6.1.026
Problème :  Les fichiers "*.patch" ne sont pas reconnus comme des fichiers de
	    différences. Dans un script, un argument "VAR=val" après "env"
	    n'est pas ignoré. Les scripts PHP ne sont pas reconnus.
Solution :  Ajouter "*.patch" pour les types de fichiers diff. Ignorer
	    "VAR=val". Reconnaître les scripts PHP. (Roman Neuhauser)
Fichiers :  runtime/filetype.vim, runtime/scripts.vim

Rustine 6.1.027
Problème :  Quand 'foldcolumn' est non nul, un caractère spécial enroulé sur
	    la ligne suivante perturbe la surbrillance de la colonne des
	    replis. (Yasuhiro Matsumoto)
Solution :  N'utiliser la surbrillance Special que lors du rafraîchissement
	    des caractères textuels.
Fichiers :  src/screen.c

Rustine 6.1.028
Problème :  Client-serveur : quand un "--remote-expr" échoue, Vim quitte tout
	    de même avec le code de retour zéro.
Solution :  Quitter Vim avec un code de retour non nul pour signaler que le
	    "--remote-expr" a échoué. (Thomas Scott Urban)
Fichiers :  src/main.c

Rustine 6.1.029
Problème :  Quand 'encoding' est un codage 8 bits différent de "latin1",
	    l'édition d'un fichier UTF-8 ou Unicode utilise la mauvaise
	    conversion. (Jan Fedak)
Solution :  Ne pas utiliser la conversion Unicode vers "latin1" pour les
	    codages 8 bits autres que "latin1".
Fichiers :  src/fileio.c

Rustine 6.1.030
Problème :  Quand CTRL-N est mappé en mode Insertion, il l'est également après
	    CTRL-X CTRL-N, alors qu'il ne l'est plus après CTRL-X CTRL-F.
	    (Kontra Gergely)
Solution :  Ne pas mapper CTRL-N après CTRL-X CTRL-N. Pareil pour CTRL-P.
Fichiers :  src/getchar.c

Rustine 6.1.031
Problème :  Cygwin : `xxd` pouvait lire un fichier en mode texte plutôt qu'en
	    binaire.
Solution :  Utiliser "rb" ou "rt" si nécessaire. (Pavol Juhas)
Fichiers :  src/xxd/xxd.c

Rustine 6.1.032
Problème :  Impossible de spécifier un fichier de mise-au-point sans sauter à
	    la première erreur.
Solution :  Ajouter la commande ":cgetfile". (Yegappan Lakshmanan)
Fichiers :  runtime/doc/index.txt, runtime/doc/quickfix.txt, src/ex_cmds.h,
	    src/quickfix.c

Rustine 6.1.033
Problème :  IHM graphique : quand la sélection est perdue et que la
	    surbrillance Visuel est changée en soulignement, le curseur est
	    laissé à une position différente. (Christian Michon)
Solution :  Mettre à jour la position du curseur après le rafraîchissement de
	    la sélection.
Fichiers :  src/ui.c

Rustine 6.1.034
Problème :  Les fichiers de différences CVS ne sont pas reconnus comme des
	    fichiers de type diff.
Solution :  Sauter les lignes débutant par "? " avant de tester la présence
	    d'une ligne "Index:".
Fichiers :  runtime/scripts.vim

Rustine 6.1.035 (extra, basée sur 6.1.016)
Problème :  Win32 : la production de texte en hébreu ou en arabe peut
	    rencontrer des problèmes avec l'inversion du sens de l'écriture
	    sur MS-Windows 95/98/ME.
Solution :  Restaurer la fonction RevOut() et l'utiliser dans certaines
	    conditions particulières uniquement. (Ron Aaron)
Fichiers :  src/gui_w32.c

Rustine 6.1.036
Problème :  Cette commande peut provoquer un plantage : ":v/./,//-j". (Ralf
	    Arens)
Solution :  Calculer correctement la longueur de l'exprat quand elle est vide.
Fichiers :  src/search.c

Rustine 6.1.037
Problème :  Avec 'lazyredraw' activé, appuyer sur "q" à l'invite
	    Appuyez-sur-entrée provoque un rafraîchissement incomplet et le
	    curseur n'est pas positionné. (Lubomir Host)
Solution :  Passer outre 'lazyredraw' quand do_redraw est activé.
Fichiers :  src/main.c, src/screen.c

Rustine 6.1.038
Problème :  Multi-octets : quand une commande ":s" contient un caractère
	    multi-octets dont l'octet final est '~', le texte est sali.
Solution :  Passer correctement après le caractère multi-octets dans
	    regtilde() (Muraoka Taro)
Fichiers :  src/regexp.c

Rustine 6.1.039
Problème :  Quand des replis sont définis et que le fichier est modifié en
	    dehors de Vim, le rechargement du fichier ne met pas les replis à
	    jour. (Anders Schack-Nielsen)
Solution :  Recalculer les replis après le rechargement du fichier.
Fichiers :  src/fileio.c

Rustine 6.1.040
Problème :  Quand un changement de répertoire pour l'expansion d'un fichier
	    échoue, aucun message d'erreur n'est émis.
Solution :  Donner un message d'erreur dans cette situation. Ne pas changer de
	    répertoire s'il n'est pas possible de retourner dans le répertoire
	    d'origine.
Fichiers :  src/diff.c, src/ex_docmd.c, src/globals.h, src/misc1.c,
	    src/os_unix.c

Rustine 6.1.041
Problème :  ":mkvimrc" ne prend en compte les mappages dont le ctd débute par
	    un espace. (Davyd Ondrejko)
Solution :  Insérer un CTRL-V avant l'espace initial. De même, afficher les
	    espaces initiaux et finaux avec la notation <>.
Fichiers :  src/getchar.c, src/message.c

Rustine 6.1.042
Problème :  "vim -r" ne montre pas toutes les correspondances quand
	    'wildignore' supprime les fichiers d'échange. (Steve Talley)
Solution :  Conserver toutes les correspondances des noms de fichiers
	    d'échange.
Fichiers :  src/memline.c

Rustine 6.1.043
Problème :  Après la rustine 6.1.040, quelques avertissements sont émis.
Solution :  Ajouter un transtypage vers "char *" pour mch_chdir(). (Axel
	    Kielhorn)
Fichiers :  src/diff.c, src/ex_docmd.c.c, src/misc1.c, src/os_unix.c

Rustine 6.1.044 (extra)
Problème :  IHM graphique : lors de l'utilisation du dialogue
	    Rechercher/Remplacer avec un texte contenant une oblique, une
	    commande de substitution invalide est générée.
	    Sur Win32, la recherche ne fonctionne pas quand 'insertmode' est
	    activé.
Solution :  Protéger les obliques avec des contre-obliques.
	    Mettre en commun le code Win32, Motif et GTK+ pour le dialogue
	    Rechercher/Remplacer.
	    Ajouter l'option "Respecter la casse" pour Motif et GTK+.
Fichiers :  src/feature.h, src/proto/gui.pro, src/gui.c, src/gui.h,
	    src/gui_motif.c, src/gui_gtk.c, src/gui_w48.c

Rustine 6.1.045
Problème :  En mode Visuel, avec de nombreux replis et 'scrolloff' fixé à 999,
	    déplacer le curseur à proximité de la fin du fichier provoque des
	    sauts de haut en bas et inversement dans le texte. (Lubomir Host)
Solution :  Prendre en compte la cas où le curseur est sur la dernière ligne
	    d'un repli fermé.
Fichiers :  src/move.c

Rustine 6.1.046
Problème :  IHM graphique X11 : ":set lsp=2 gcr=n-v-i:hor1-blinkon0" dessine
	    un rectangle noir. ":set lsp=2 gcr=n-v-i:hor10-blinkon0" fait
	    disparaître le curseur. (Nam SungHyun)
Solution :  Calculer correctement la hauteur du curseur horizontal.
Fichiers :  src/gui_gtk_x11.c, src/gui_x11.c

Rustine 6.1.047
Problème :  Quand des commandes sont ignorées suite à une erreur, les
	    expressions des commandes ":if", ":elseif" et ":while" sont tout
	    de même évaluées.
Solution :  Sauter les expressions après une erreur. (Servatius Brandt)
Fichiers :  src/ex_docmd.c

Rustine 6.1.048
Problème :  Les modifications pour Unicode 3.2 ne prenaient pas en compte
	    certains caractères hangul jamo.
Solution :  Reconnaître davantage de caractères comme caractères de
	    composition. (Jungshik Shin)
Fichiers :  src/mbyte.c

Rustine 6.1.049 (extra)
Problème :  Sur un affichage 32 bits, une couleur valide peut provoquer un
	    message d'erreur, car la valeur du pixel est négative. (Chris
	    Paulson-Ellis)
Solution :  Tester -11111 plutôt que la négativité de la couleur.
	    Ne pas ajouter un à la valeur du pixel, car -1 peut être utilisé
	    pour la couleur blanche.
Fichiers :  src/globals.h, src/gui.c, src/gui.h, src/gui_amiga.c,
	    src/gui_athena.c, src/gui_beos.cc, src/gui_gtk_x11.c,
	    src/gui_mac.c, src/gui_motif.c, src/gui_photon.c,
	    src/gui_riscos.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c,
	    src/gui_x11.c, src/mbyte.c, src/syntax.c

Rustine 6.1.050 (basée sur 6.1.049)
Problème :  Après la version 6.1.049, la version non graphique ne compile
	    plus.
Solution :  Ajouter un #ifdef FEAT_GUI.  (Robert Stanton)
Fichiers :  src/syntax.c

Rustine 6.1.051 (basée sur 6.1.044)
Problème :  Impossible de compiler l'IHM graphique et le petit jeu de
	    fonctionnalités.
Solution :  Ajuster le #if pour ga_append().
Fichiers :  src/misc2.c

Rustine 6.1.052
Problème :  Unix : la fonction executable() ne fonctionne pas quand la
	    commande "which" n'est pas disponible.
Solution :  Parcourir $PATH manuellement. Faire que cela fonctionne aussi sur
	    VMS.
Fichiers :  src/os_unix.c

Rustine 6.1.053
Problème :  Quand 'sessionoptions' contient "globals" ou "localoptions" et
	    qu'une option contient une coupure de ligne, le script
	    correspondant est faux.
Solution :  Utiliser "\n" et "\r" pour une coupure de ligne. (Srinath
	    Avadhanula)
Fichiers :  src/eval.c

Rustine 6.1.054
Problème :  IHM graphique : un clic de souris n'est pas reconnu à l'invite
	    Plus, même quand 'mouse' contient 'r'.
Solution :  Reconnaître un clic de souris à l'invite Plus.
	    Aussi accepter un clic de souris sur la dernière ligne dans l'IHM
	    graphique.
	    Ajouter l'entrée "ml" dans 'mouseshape'.
Fichiers :  src/gui.c, src/message.c, src/misc1.c, src/misc2.c, src/option.c,
	    src/structs.h

Rustine 6.1.055
Problème :  Lors de l'édition d'un fichier compressé, Vim inspectera le
	    contenu pour déterminer le type du fichier.
Solution :  Ne pas sourcer "scripts.vim" avec les fichiers .Z, .gz, .bz2, .zip
	    et .tgz.
Fichiers :  runtime/filetype.vim, runtime/plugin/gzip.vim

Rustine 6.1.056
Problème :  Le chargement du menu Syntaxe peut être assez long.
Solution :  Ajouter la variable "skip_syntax_sel_menu". Quand elle est
	    définie, les fichiers de syntaxe disponibles ne sont listés pas
	    dans le menu Syntaxe.
Fichiers :  runtime/doc/gui.txt, runtime/menu.vim

Rustine 6.1.057
Problème :  Un <Echap> dans un mappage ne fonctionne pas tel qu'il est
	    documenté quand 'insertmode' est activé, il amène du mode Visuel
	    ou Normal au mode Insertion. (Benji Fisher)
Solution :  Faire que cela fonctionne comme documenté.
Fichiers :  src/normal.c

Rustine 6.1.058
Problème :  Quand il existe un repli fermé juste au-dessus de la première
	    ligne dans la fenêtre, l'utilisation de CTRL-X CTRL-Y en mode
	    Insertion n'affiche qu'une seule ligne du repli. (Alexey
	    Marinichev)
Solution :  Corriger le numéro de la ligne la ligne supérieure en y mettant
	    celui de la ligne du début du repli.
Fichiers :  src/move.c

Rustine 6.1.059
Problème :  ":redir > ~/fichier" ne fonctionne pas. (Stephen Rasku)
Solution :  Étendre les variables d'environnement dans l'argument de
	    ":redir >".
Fichiers :  src/ex_docmd.c

Rustine 6.1.060
Problème :  Avec 'virtualedit' activé et 'selection' valant "exclusive",
	    effacer un caractère juste avant une tabulation change cette
	    tabulation en espaces. L'annulation ne restaure pas la tabulation.
	    (Helmut Stiegler)
Solution :  Ne pas remplacer la tabulation par des espaces quand ce n'est pas
	    nécessaire. Mémoriser correctement la ligne avant qu'elle soit
	    modifiée.
Fichiers :  src/ops.c

Rustine 6.1.061
Problème :  Avec 'virtualedit' activé et 'selection' valant "exclusive",  une
	    sélection Visuel se terminant juste après une tabulation n'inclut
	    pas cette tabulation dans la surbrillance. (Helmut Stiegler)
Solution :  Utiliser une méthode différente pour exclure le caractère sous le
	    curseur.
Fichiers :  src/screen.c

Rustine 6.1.062
Problème :  Le greffon de type de fichier "man" ne fonctionne pas correctement
	    sur Solaris 5.
Solution :  Utiliser un principe de détection différent pour déterminer si
	    "man -s" doit être utilisé. (Hugh Sasse)
Fichiers :  runtime/ftplugin/man.vim

Rustine 6.1.063
Problème :  L'indentation Java ne fonctionne pas correctement.
Solution :  Ignorer les commentaires lors du test pour savoir si l'indentation
	    augmente après une "}".
Fichiers :  runtime/indent/java.vim

Rustine 6.1.064
Problème :  Les URL reconnues par le greffon "netrw.vim" pour ftp et rcp ne
	    sont pas conformes au standard
	    méthode://[utilisateur@]hôte[:port]/chemin.
Solution :  Utiliser ftp://[utilisateur@]hôte[[:#]port]/chemin, qui supporte
	    aussi bien l'ancien et le nouveau style. Ajout d'un support très
	    partiel de dav/cadaver. (Charles Campbell)
Fichiers :  runtime/plugin/netrw.vim

Rustine 6.1.065
Problème :  VMS : les menus Jeu de couleur, Réglages clavier et Type de
	    compilateur ne sont pas construits.
Solution :  Ignorer la casse lors de la recherche de fichiers ".vim". (Coen
	    Engelbarts)
Fichiers :  runtime/menu.vim

Rustine 6.1.066 (extra)
Problème :  L'appel à system() dans un greffon lisant l'entrée standard
	    bloque.
Solution :  Ne pas passer le terminal en mode RAW quand il ne l'était pas
	    avant l'appel à system().
Fichiers :  src/os_amiga.c, src/os_msdos.c, src/os_riscos.c, src/os_unix.c,
	    src/os_win16.c, src/os_win32.c

Rustine 6.1.067
Problème :  ":set viminfo+=f0" ne fonctionne pas. (Benji Fisher)
Solution :  Tester le drapeau "f" au lieu de "'" dans 'viminfo'.
Fichiers :  src/mark.c

Rustine 6.1.068
Problème :  Quand un fichier est rechargé après qu'il ait été modifié en
	    dehors de Vim, le mode diff n'est pas mis à jour. (Michael
	    Naumann)
Solution :  Invalider les informations du mode diff de façon à ce que ce
	    dernier soit rafraîchi quand c'est nécessaire.
Fichiers :  src/fileio.c

Rustine 6.1.069
Problème :  Avec 'showmatch' activé et "$" dans 'cpoptions', utiliser
	    "C}<Esc>" peut omettre de supprimer le "$". (Preben Guldberg)
Solution :  Restaurer dollar_vcol après l'affichage de la position
	    correspondante du curseur.
Fichiers :  src/search.c

Rustine 6.1.070 (basée sur 6.1.060)
Problème :  Avertissements du compilateur sur des incohérences
	    signé/non-signé. (Mike Williams)
Solution :  Ajouter un transtypage en int.
Fichiers :  src/ops.c

Rustine 6.1.071
Problème :  Quand 'selection' vaut "exclusive", "g CTRL-G" en mode Visuel
	    compte un caractère de trop. (David Necas)
Solution :  Retrancher un à la position finale.
Fichiers :  src/ops.c

Rustine 6.1.072
Problème :  Quand un nom de fichier dans un fichier de marqueurs débute par
	    http:// ou quoi que ce soit d'autre pour lequel il existe une
	    autocommande BufReadCmd, le fichier n'est pas ouvert.
Solution :  Vérifier s'il existe une autocommande BufReadCmd correspondante et
	    tenter d'ouvrir le fichier.
Fichiers :  src/fileio.c, src/proto/fileio.pro, src/tag.c

Rustine 6.1.073 (extra)
Problème :  BC5 : Il n'est pas évident de spécifier une version légère,
	    simple, normal, grosse ou massive.
Solution :  Permettre la sélection de la version avec la variable FEATURES.
	    (Ajit Thakkar)
Fichiers :  src/Make_bc5.mak

Rustine 6.1.074
Problème :  Quand 'cdpath' contient "../..", changer de répertoire pour un
	    répertoire dans lequel Vim se trouve déjà ne fonctionne pas.
	    ff_check_visited() ajoute le répertoire deux fois en tant que
	    racine pour la recherche et pour les correspondances actuelles.
	    (Stephen Rasku)
Solution :  Utiliser une liste séparée pour les répertoires déjà parcourus.
Fichiers :  src/misc2.c

Rustine 6.1.075 (basée sur 6.1.072)
Problème :  Impossible de compiler "fileio.c" sur MS-Windows.
Solution :  Ajouter une déclaration pour le pointeur "p". (Madoka Machitani)
Fichiers :  src/fileio.c

Rustine 6.1.076 (extra)
Problème :  Macintosh : le greffon "explorer.vim" ne fonctionne pas sur Mac
	    Classic. L'IME ne fonctionne pas. Les boîtes de dialogues ne
	    fonctionnent pas sur Mac OS X
Solution :  Corriger le greffon "explorer.vim" et les modificateurs du
	    clavier. (Axel Kielhorn)
	    Corriger le support de l'IME. (Muraoka Taro)
	    Désactiver les boîtes de dialogue. (Benji Fisher)
Fichiers :  src/edit.c, src/feature.h, src/gui_mac.c, src/os_mac.c

Rustine 6.1.077
Problème :  Sur les systèmes Debian, l'édition de liens échoue avec les ACL.
	    (Lubomir Host)
Solution :  Quand bibliothèque "acl" est utilisée, vérifier si la bibliothèque
	    "attr" est présente et l'utiliser.
Fichiers :  src/auto/configure, src/configure.in, src/link.sh

Rustine 6.1.078
Problème :  Quand 'foldmethod' vaut "marker" et que la balise de fin apparaît
	    avant la balise de début dans le fichier, aucun repli n'est
	    trouvé. (Nazri Ramliy)
Solution :  Ne pas autoriser de profondeur de repli négative.
Fichiers :  src/fold.c

Rustine 6.1.079
Problème :  Lors de l'utilisation de "s" en mode Visuel par bloc avec
	    'virtualedit' activé, quand le bloc sélectionné va au-delà de la
	    fin de certaines lignes, le mauvais texte est inséré et certaines
	    lignes sont ignorées. (Servatius Brandt)
Solution :  Insérer le bon texte et étendre les lignes trop courtes.
Fichiers :  src/ops.c

Rustine 6.1.080
Problème :  Lors de l'utilisation de GCC avec "/usr/local" déjà présent dans
	    le chemin de recherche, l'ajouter encore pose des problèmes.
Solution :  Ajuster "configure.in" pour éviter d'ajouter "/usr/local/include"
	    et "/usr/local/lib" alors qu'ils sont déjà pris en compte lors de
	    l'utilisation de GCC. (Johannes Zellner)
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.081
Problème :  ":help CTRL-\_CTRL-N" ne fonctionne pas. (Christian J. Robinson)
Solution :  Doubler la contre-oblique pour éviter la signification spéciale de
	    "\_".
Fichiers :  src/ex_cmds.c

Rustine 6.1.082
Problème :  Sur MS-Windows, le script "vimrc_example.vim" est sourcé, puis
	    "mswin.vim". Cela permet l'utilisation du mode Sélection, mais
	    comme "p" est mappé, il ne remplace pas la sélection.
Solution :  Supprimer le mappage de "p" dans "vimrc_example.vim", il est
	    obsolète. (Vlad Sandrini)
Fichiers :  runtime/vimrc_example.vim

Rustine 6.1.083
Problème :  Quand $LANG vaut "sk" ou "sk_sk", le menu slovaque n'est pas
	    trouvé. (Martin Lacko)
Solution :  Déterminer le bon fichier de menu en se basant sur le système.
Fichiers :  runtime/lang/menu_sk_sk.vim

Rustine 6.1.084 (basée sur 6.1.080)
Problème :  "include" et "lib" sont mélangés lors la vérification des
	    répertoires déjà parcourus par GCC.
Solution :  Intervertir les noms des variables. (SunHo Kim)
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.085
Problème :  Lors de l'utilisation de CTRL-O CTRL-\ CTRL-N en mode Insertion,
	    le mode "(insert)" affiché n'est pas effacé. (Benji Fisher)
Solution :  Effacer le ligne de commande.
Fichiers :  src/normal.c

Rustine 6.1.086 (basée sur 6.1.049)
Problème :  La couleur guifg pour CursorIM ne prend pas effet.
Solution :  Utiliser la couleur du premier plan quand elle est définie.
	    (Muraoka Taro)
Fichiers :  src/gui.c

Rustine 6.1.087
Problème :  Un thésaurus avec des caractères japonais rencontre des problèmes
	    avec les caractères de différentes classes de mots.
Solution :  Ne séparer les mots qu'avec des caractères simple-octet non mot.
	    (Muraoka Taro)
Fichiers :  src/edit.c

Rustine 6.1.088 (extra)
Problème :  Win32 : aucune information de débogage n'est générée. Le fichier
	    de marqueurs ne tient pas compte des fichiers .cpp.
Solution :  Ajouter "/map" aux drapeaux du compilateur. Ajouter "*.cpp" à la
	    commande `ctags`. (Muraoka Taro)
Fichiers :  src/Make_mvc.mak

Rustine 6.1.089
Problème :  Sur les systèmes BSDI, il n'existe pas de champ ss_sp dans
	    stack_t. (Robert Jan)
Solution :  Utiliser ss_base à la place.
Fichiers :  src/auto/configure, src/configure.in, src/config.h.in,
	    src/os_unix.c

Rustine 6.1.090
Problème :  CTRL-F reste bloqué quand 'scrolloff' est non nul et qu'il se
	    trouve un mélange de longues lignes enroulées et de lignes non
	    enroulées.
Solution :  Vérifier que CTRL-F défile au moins d'une ligne.
Fichiers :  src/move.c

Rustine 6.1.091
Problème :  GTK : impossible de changer preeditstate sans fixer
	    'imactivatekey'.
Solution :  Ajouter du code pour changer preeditstate pour OnTheSpot.
	    (Yasuhiro Matsumoto)
Fichiers :  src/mbyte.c

Rustine 6.1.092
Problème :  ":mapclear <tampon>" ne fonctionne pas. (Srikanth Adayapalam)
Solution :  Permettre un argument pour la commande ":mapclear".
Fichiers :  src/ex_cmds.h

Rustine 6.1.093 (extra)
Problème :  IHM graphique Mac et MS-Windows : lors d'un défilement alors que
	    ":s" est cours d'exécution, le résultat peut être corrompu, car le
	    curseur est déplacé.
Solution :  Désactiver le défilement direct quand aucun caractère n'est
	    attendu.
Fichiers :  src/gui_mac.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c

Rustine 6.1.094
Problème :  CygWin : le passage d'un nom de fichier avec des contre-obliques
	    n'est pas pris en charge correctement.
Solution :  Convertir les arguments du type nom de fichier en Posix. (Chris
	    Metcalf)
Fichiers :  src/main.c

Rustine 6.1.095
Problème :  Lors de l'utilisation de symboles, des éléments de la pile peuvent
	    être libérés.
	    Passer outre la couleur des symboles ne fonctionne pas. (Srikanth
	    Sankaran)
Solution :  Ne pas libérer d'éléments sur la pile. Utiliser NULL à la place de
	    "none" pour la valeur de la couleur.
Fichiers :  src/gui_x11.c

Rustine 6.1.096
Problème :  Lors de l'effacement de la moitié droite d'un caractère
	    double-octets, plusieurs caractères suivants peuvent être effacés.
	    (Yasuhiro Matsumoto)
Solution :  S'assurer qu'un seul caractère est effacé.
Fichiers :  src/screen.c

Rustine 6.1.097 (basée sur 6.1.090)
Problème :  Avec 'scrolloff' fixé à une très grande valeur, CTRL-F à la fin du
	    fichier défile d'une ligne. (Lubomir Host)
Solution :  Ne pas défiler quand CTRL-F détecte la fin-de-fichier.
Fichiers :  src/move.c

Rustine 6.1.098
Problème :  MS-Windows : quand le programme `xxd` est dans "c:\Program Files",
	    le menu "Convertir en hexa" ne fonctionne pas. (Brian Mathis)
Solution :  Mettre le chemin de `xxd` entre doubles-apostrophes.
Fichiers :  runtime/menu.vim

Rustine 6.1.099
Problème :  Corruption de la mémoire lors de la fermeture d'un repli de plus
	    de 99999 lignes.
Solution :  Allouer davantage d'espace pour le texte replié. (Walter Briscoe)
Fichiers :  src/eval.c

Rustine 6.1.100 (extra, basée sur 6.1.088)
Problème :  Win32 : VC5 et antérieurs ne supportent pas l'option "/mapinfo".
Solution :  Ajouter "/mapinfo" seulement quand "MAP=lines" est spécifié.
	    (Muraoka Taro)
Fichiers :  src/Make_mvc.mak

Rustine 6.1.101
Problème :  Après l'utilisation de ":options", le taquet de tabulation d'une
	    nouvelle fenêtre est à 15. L'entrée 'autowriteall' de la fenêtre
	    ":options" est fausse. (Antoine J Mechelynck) Impossible d'insérer
	    un espace dans la valeur d'une option.
Solution :  Utiliser ":setlocal" au lieu de ":set". Changer "aw" en "awa".
	    Ne pas mapper l'espace en mode Insertion.
Fichiers :  runtime/optwin.vim

Rustine 6.1.102
Problème :  Les caractères multi-octets non imprimables dans la ligne d'état
	    ne sont pas tronqués correctement. (Yasuhiro Matsumoto)
Solution :  Compter la largeur des caractères plutôt que leur nombre d'octets.
Fichiers :  src/buffer.c

Rustine 6.1.103
Problème :  Une fonction revenant d'une boucle while, avec 'verbose' à 12 ou
	    plus, ne donne pas de valeur de retour. Une fonction avec
	    l'attribut 'abort' peut retourner -1 alors que le message de
	    débogage indique autre chose.
Solution :  Déplacer le message de débogage à propos du retour d'une fonction
	    dans call_func(). (Servatius Brandt)
Fichiers :  src/eval.c

Rustine 6.1.104
Problème :  GCC 3.1 semble avoir un problème d'optimisation faisant planter
	    "test3".
Solution :  Avec GCC 3.1, ajouter "-fno-strength-reduce" pour éviter le bogue
	    de l'optimisation.
	    Récupérer de l'information depuis "gcc --version".
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.105
Problème :  Win32 : la valeur par défaut de 'shellpipe' ne redirige pas
	    stderr. (Dion Nicolaas)
Solution :  Rediriger stderr, selon le shell (comme avec 'shellredir').
Fichiers :  src/option.c

Rustine 6.1.106
Problème :  Le programme de labyrinthe ("maze") plante.
Solution :  Remplacer "11" par "27", et ça marche. (Greg Roelofs)
Fichiers :  runtime/macros/maze/mazeansi.c

Rustine 6.1.107
Problème :  Quand 'list' est activé, la ligne courante dans la fenêtre
	    d'erreur peut être mal affichée. (Muraoka Taro)
Solution :  Ne pas continuer la ligne après que le "$" ait été affiché et que
	    la colonne la plus à droite est atteinte.
Fichiers :  src/screen.c

Rustine 6.1.108
Problème :  Lors de l'interruption d'un commande de filtre comme "!!sleep 20",
	    le fichier passe en lecture seule. (Mark Brader)
Solution :  Positionner le drapeau de lecture seule uniquement quand
	    l'ouverture d'un tampon est interrompue.
	    Quand une commande du shell est interrompue, lire la sortie
	    produite avant l'interruption.
Fichiers :  src/ex_cmds.c, src/fileio.c

Rustine 6.1.109
Problème :  Quand 'eadirection' vaut "hor", l'utilisation de CTRL-W =
	    n'égalise pas la hauteur des fenêtres. (Roman Neuhauser)
Solution :  Ignorer 'eadirection' avec CTRL-W =.
Fichiers :  src/window.c

Rustine 6.1.110
Problème :  Lors de l'utilisation de ":badd fichier" alors que "fichier" est
	    déjà présent mais non listé, il reste non listé. (David Frey)
Solution :  Fixer 'buflisted'.
Fichiers :  src/buffer.c

Rustine 6.1.111
Problème :  Il n'est pas possible de détecter l'utilisation des sources Unix
	    sur les plates-formes Win32 et Mac.
Solution :  Ajouter has("macunix") et has("win32unix").
Fichiers :  runtime/doc/eval.txt, src/eval.c

Rustine 6.1.112
Problème :  Lors de l'utilisation de ":argdo", ":bufdo" ou ":windo", CTRL-O ne
	    se rend pas à la position du curseur avant l'exécution de la
	    commande, mais à chaque position où l'argument a été exécuté.
Solution :  Ne mémoriser que la position du curseur précédant l'exécution de
	    ":argdo", ":bufdo" et ":windo".
Fichiers :  src/ex_cmds2.c, src/mark.c

Rustine 6.1.113
Problème :  ":bufdo bwipe" ne détruit que la moitié des tampons. (Roman
	    Neuhauser)
Solution :  Décider du tampon suivant avant d'exécuter la commande.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.114
Problème :  ":python import vim" et ":python vim.current.buffer[0:0] = []"
	    retourne une erreur lalloc(0). (Chris Southern)
Solution :  Ne pas allouer un tableau quand sa taille est nulle.
Fichiers :  src/if_python.c

Rustine 6.1.115
Problème :  "das" sur un espace blanc à la fin d'un paragraphe n'efface pas le
	    "." terminant la phrase.
Solution :  Ne pas exclure le dernier caractère quand ce n'est pas un espace
	    blanc.
Fichiers :  src/search.c

Rustine 6.1.116
Problème :  Quand 'endofline' est modifié alors que 'binary' est activé, un
	    fichier devrait être considéré comme modifié. (Olaf Buddenhagen)
Solution :  Mémoriser la valeur de 'eol' au début de l'édition et considérer
	    que le fichier est modifié quand la valeur courante est différente
	    alors que 'binary' est activé. Corriger le titre de la fenêtre qui
	    n'est pas mis à jour quand 'ff' ou 'bin' sont modifiés.
Fichiers :  src/option.c, src/structs.h

Rustine 6.1.117
Problème :  Petit problème lors de l'édition d'un fichier au travers de FTP
	    avec CygWin.
Solution :  Supprimer un point dans la commande ":normal". Utiliser "cygdrive"
	    aux endroits appropriés. (Charles Campbell)
Fichiers :  runtime/plugin/netrw.vim

Rustine 6.1.118
Problème :  Quand un fichier en mode diff est rechargé suite à une
	    modification extérieure, les autres fenêtres en mode diff ne sont
	    pas toujours mises à jour. (Michael Naumann)
Solution :  Après le rechargement d'un fichier en mode diff, signaler toutes
	    les fenêtres en mode diff comme candidates au rafraîchissement.
Fichiers :  src/diff.c

Rustine 6.1.119 (extra)
Problème :  Avec l'interface Sniff+ et Sniff 4.0.X sur HP-UX, un plantage peut
	    survenir lors de la connexion vers Sniff.
Solution :  Initialiser sniff_rq_sep de façon à ce que sa valeur puisse être
	    modifiée. (Martin Egloff)
Fichiers :  src/if_sniff.c

Rustine 6.1.120 (basée sur 6.1.097)
Problème :  Quand 'scrolloff' est non nul et qu'il existe des replis, CTRL-F à
	    la fin du fichier défile d'une partie d'un repli fermé. (Lubomir
	    Host)
Solution :  Ajuster la première ligne au début d'un repli.
Fichiers :  src/move.c

Rustine 6.1.121 (basée sur 6.1.098)
Problème :  Lors du passage du mode Insertion au mode Sélection, et que
	    l'entrée Coller du menu est utilisée, le curseur est laissé avant
	    le dernier caractère collé. (Mario Schweigler)
Solution :  Déplacer le curseur en mode Insertion d'un caractère vers la
	    droite.
Fichiers :  runtime/menu.vim

Rustine 6.1.122
Problème :  ":file nom" crée un nouveau tampon pour garder l'ancien nom du
	    tampon, qui devient alors un nom alternatif. Ce tampon est listé à
	    tort.
Solution :  Créer un tampon non listé pour le nom alternatif.
Fichiers :  src/ex_cmds.c

Rustine 6.1.123
Problème :  Une commande ":match" avec plusieurs arguments ne rapporte pas
	    d'erreur.
Solution :  Vérifier les caractères supplémentaires. (Servatius Brandt)
Fichiers :  src/ex_docmd.c

Rustine 6.1.124
Problème :  Lors d'une tentative pour quitter alors qu'il existe un tampon
	    caché avec 'eol' désactivé et 'bin' activé, il est impossible de
	    quitter. (John McGowan)
Solution :  Fixer b_start_eol lors de l'effacement du tampon.
Fichiers :  src/buffer.c

Rustine 6.1.125
Problème :  Le greffon "explorer.vim" demande pour enregistrer un tampon
	    modifié même quand ce dernier est également ouvert dans une autre
	    fenêtre.
Solution :  Compter le nombre de fenêtres utilisant le tampon.
Fichiers :  runtime/plugin/explorer.vim

Rustine 6.1.126
Problème :  Ajouter les choix dans le menu Syntaxe représente la plus grande
	    partie du temps de démarrage de l'IHM graphique, alors qu'il n'est
	    pas souvent utilisé.
Solution :  N'ajouter les choix que si l'utilisateur souhaite les utiliser.
Fichiers :  Makefile, runtime/makemenu.vim, runtime/menu.vim,
	    runtime/synmenu.vim, src/Makefile

Rustine 6.1.127
Problème :  Lors de l'utilisation de "--remote file" alors que 'insertmode'
	    est activé sur le serveur, les commandes sont insérées au lieu
	    d'être exécutées. (Niklas Volbers)
Solution :  Retourner en mode Normal après la commande ":drop".
Fichiers :  src/main.c

Rustine 6.1.128
Problème :  L'expression "input('très très longue invite')" place le curseur
	    dans la mauvaise ligne (la colonne est correcte).
Solution :  Ajouter les lignes enroulées à l'indentation. (Yasuhiro Matsumoto)
Fichiers :  src/ex_getln.c

Rustine 6.1.129
Problème :  Sur Solaris, l'édition de "fichier/" puis de "fichier" aboutit à
	    l'utilisation du même tampon. (Jim Battle)
Solution :  Avant d'utiliser stat(), vérifier qu'aucune oblique finale
	    invalide n'est présente.
Fichiers :  src/auto/configure, src/config.h.in, src/configure.in,
	    src/macros.h src/misc2.c, src/proto/misc2.pro

Rustine 6.1.130
Problème :  La documentation de certains éléments de 'errorformat' n'est pas
	    claire.
Solution :  Ajouter davantage d'exemples et expliquer longuement pour
	    clarifier le rôle des éléments. (Stefan Roemer)
Fichiers :  runtime/doc/quickfix.txt

Rustine 6.1.131
Problème :  IHM graphique X11 : lors de l'expansion d'un octet CSI en K_CSI
	    dans le flux d'entrée, l'octet CSI lui-même n'est pas copié.
Solution :  Copier l'octet CSI.
Fichiers :  src/gui_x11.c

Rustine 6.1.132
Problème :  Exécuter un registre en mode Ex peut faire que certaines commandes
	    sont sautées. (John McGowan)
Solution :  En mode Ex, effectuer une vérification supplémentaire pour tester
	    si le contenu du registre est épuisé, pour éviter que l'entrée
	    aille dans le tampon typeahead.
Fichiers :  src/ex_docmd.c

Rustine 6.1.133
Problème :  Lors du dessin d'un caractère à largeur double dans la ligne
	    d'état, la moitié du caractère peut être effacée. (Yasuhiro
	    Matsumoto)
Solution :  Forcer le rafraîchissement du caractère suivant en fixant ses
	    attributs au lieu de mettre un octet NUL dans ScreenLines[].
	    Mettre un octet NUL dans ScreenLines[] quand la moitié d'un
	    caractère à largeur double est écrasée.
Fichiers :  src/screen.c

Rustine 6.1.134
Problème :  Une erreur à propos d'un argument final de ":match" ne devrait pas
	    être émise après un ":if 0". (Servatius Brandt)
Solution :  Faire le test uniquement quand les commandes sont exécutées.
Fichiers :  src/ex_docmd.c

Rustine 6.1.135
Problème :  Le passage au shell d'une commande qui contient un saut-de-ligne
	    présente toujours une contre-oblique avant le saut-de-ligne.
Solution :  Supprimer la contre-oblique avant le saut-de-ligne. (Servatius
	    Brandt)
Fichiers :  src/ex_docmd.c

Rustine 6.1.136
Problème :  Quand $TERM vaut "linux", la valeur par défaut de 'background' est
	    "dark", même si l'IHM graphique utilise un fond clair. (Hugh
	    Allen)
Solution :  Ne pas signaler l'option comme fixée quand la valeur par défaut
	    est utilisée dans la console Linux. De même, réinitialiser
	    'background' à "light" quand l'IHM graphique a un fond clair.
Fichiers :  src/option.c

Rustine 6.1.137
Problème :  La conversion en HTML utilise une manière maladroite pour prendre
	    en compte les tabulations, qui peut modifier la surbrillance.
Solution :  Remplacer les tabulations par des espaces après la conversion
	    d'une ligne en HTML. (Preben Guldberg)
Fichiers :  runtime/syntax/2html.vim

Rustine 6.1.138 (basée sur 6.1.126)
Problème :  L'ajout d'éléments supplémentaires dans le menu Syntaxe n'est pas
	    possible quand le menu "Afficher tout le menu" est utilisé.
Solution :  Utiliser ":runtime!" au lieu de ":source", afin que tous les
	    fichiers "synmenu.vim" dans le chemin de support soient chargés.
	    (Servatius Brandt)
	    Corriger le problème des menus traduits impossibles à supprimer.
Fichiers :  runtime/menu.vim

Rustine 6.1.139
Problème :  CygWin : PATH_MAX n'est pas défini.
Solution :  Inclure "limits.h". (Dan Sharp)
Fichiers :  src/main.c

Rustine 6.1.140
Problème :  CygWin : ":args `ls *.c`" ne fonctionne pas si la commande shell
	    produits de CR LF comme séparateurs de lignes.
Solution :  Supprimer nous-mêmes les caractères CR. (Pavol Juhas)
Fichiers :  src/os_unix.c

Rustine 6.1.141
Problème :  ":wincmd gx" peut poser des problèmes quand il est mélangé avec
	    d'autres commandes.
	    ":wincmd c" ne ferme pas la fenêtre immédiatement. (Benji Fisher)
Solution :  Passer le caractère supplémentaire directement au lieu d'utiliser
	    le tampon générique, et appeler ex_close() directement.
Fichiers :  src/ex_docmd.c, src/normal.c, src/proto/normal.pro,
	    src/proto/window.pro, src/window.c

Rustine 6.1.142
Problème :  Définir des paragraphes sans ligne blanche de séparation n'est pas
	    possible. Il n'est pas possible de mettre en forme automatiquement
	    les paragraphes.
Solution :  Permettre la définion de paragraphes dont les lignes se terminent
	    par un espace blanc.
	    Ajout des drapeaux 'w' et 'a' dans 'formatoptions'.
Fichiers :  runtime/doc/change.txt, src/edit.c, src/misc1.c, src/normal.c,
	    src/option.h, src/ops.c, src/proto/edit.pro, src/proto/ops.pro,
	    src/vim.h

Rustine 6.1.143 (basée sur 6.1.142)
Problème :  La mise en forme automatique à proximité de la fin du fichier
	    place le curseur au mauvais endroit. En mode Insertion, certaines
	    lignes font un caractère de moins que prévu. Lors du coupage d'une
	    ligne, l'annulation peut ne pas se dérouler correctement.
Solution :  Ne pas toujours déplacer le curseur à la fin de la ligne dans la
	    dernière ligne en mode Insertion.
	    Après le coupage d'une ligne, mémoriser la ligne du curseur pour
	    l'annulation.
Fichiers :  src/edit.c, src/ops.c, src/normal.c

Rustine 6.1.144
Problème :  L'obtention de la taille d'une ligne en caractères d'écran peut
	    retourner une valeur fausse. Un pointeur peut boucler après zéro.
Solution :  Dans win_linetabsize(), vérifier la longueur MAXCOL de l'argument.
	    (Jim Dunleavy)
Fichiers :  src/charset.c

Rustine 6.1.145
Problème :  GTK+ : le glisser/déposer avec plus de 3 fichiers peut provoquer
	    un plantage. (Mickael Marchand)
Solution :  Réécrire le code qui analyse la liste des fichiers reçue pour le
	    rendre plus robuste.
Fichiers :  src/charset.c, src/gui_gtk_x11.c

Rustine 6.1.146
Problème :  MS-Windows : quand $HOME est construit avec $HOMEDRIVE et
	    $HOMEPATH, elle n'est pas utilisée pour enregistrer le fichier
	    _viminfo. (Normal Diamond)
Solution :  Fixer $HOME à la valeur obtenue avec $HOMEDRIVE et $HOMEPATH.
Fichiers :  src/misc1.c

Rustine 6.1.147 (extra)
Problème :  MS-Windows : quand un dialogue n'a pas de bouton par défaut,
	    appuyer sur Entrée y met fin et tous les boutons sont
	    sélectionnés.
Solution :  Ne pas mettre fin à un dialogue s'il n'a pas de bouton par défaut.
	    Ne pas sélectionner tous les boutons quand il n'y a pas de bouton
	    par défaut. (Vince Negri)
Fichiers :  src/gui_w32.c

Rustine 6.1.148 (extra)
Problème :  MS-Windows : les ACL ne sont pas correctement supportées.
Solution :  Ajouter un remplacement pour access() qui fonctionne. (Mike
	    Williams)
Fichiers :  runtime/doc/editing.txt, src/os_win32.c

Rustine 6.1.149 (extra)
Problème :  MS-Windows : impossible d'utiliser le mode diff depuis
	    l'explorateur de fichiers.
Solution :  Ajouter une entrée "diff with Vim" dans le menu contextuel. (Dan
	    Sharp)
Fichiers :  GvimExt/gvimext.cpp, GvimExt/gvimext.h

Rustine 6.1.150
Problème :  OS/2, MS-Windows et MS-DOS : quand 'shellslash' est activé,
	    getcwd() utilise encore des contre-obliques. (Yegappan Lakshmanan)
Solution :  Ajuster les obliques dans getcwd().
Fichiers :  src/eval.c

Rustine 6.1.151 (extra)
Problème :  Win32 : le substream NTFS n'est pas copié.
Solution :  Copier le substream quand une copie de sauvegarde est réalisée.
	    (Muraoka Taro)
Fichiers :  src/fileio.c, src/os_win32.c, src/proto/os_win32.pro

Rustine 6.1.152
Problème :  Quand $LANG vaut "iso8859-1", les menus traduits ne sont pas
	    utilisés.
Solution :  Changer "iso8859" en "iso_8859".
Fichiers :  runtime/menu.vim

Rustine 6.1.153
Problème :  Rechercher dans les fichiers inclus peut boucler récursivement si
	    le chemin commence par "../".  (Sven Berkvens-Matthijsse)
Solution :  Comparer les noms de fichiers complets, utiliser les
	    inodes/périphériques quand c'est possible.
Fichiers :  src/search.c

Rustine 6.1.154 (extra)
Problème :  DJGPP : "vim -h" laisse le curseur au mauvais endroit.
Solution :  Ne pas placer le curseur en utilisant des variables non
	    initialisées. (Jim Dunleavy)
Fichiers :  src/os_msdos.c

Rustine 6.1.155
Problème :  Win32 : le curseur peut parfois disparaître en mode Insertion.
Solution :  Remplacer "hor10" par "hor15" dans 'guicursor'. (Walter Briscoe)
Fichiers :  src/option.c

Rustine 6.1.156
Problème :  La conversion entre DBCS et UCS-2 n'est pas mise en oeuvre très
	    proprement.
Solution :  Nettoyage de quelques points qui le nécessitaient.
Fichiers :  src/mbyte.c, src/structs.h

Rustine 6.1.157
Problème :  'hlsearch' ne met en surbrillance que la deuxième virgule dans
	    ",,,,," avec "/,\@<=[^,]*". (Preben Guldberg)
Solution :  Tester également le début une correspondance vide juste après la
	    correspondance précédente.
Fichiers :  src/screen.c

Rustine 6.1.158
Problème :  "zs" et "ze" ne fonctionnent pas correctement avec
	    ":set nowrap siso=1". (Preben Guldberg)
Solution :  Prendre 'siso' en compte lors du calcul de la position du
	    défilement horizontal avec "zs" et "ze".
Fichiers :  src/normal.c

Rustine 6.1.159
Problème :  Lors du développement d'une abréviation qui contient un caractère
	    multi-octets, trop de caractères sont effacés. (Andrey Urazov)
Solution :  Effacer l'abréviation en comptant les caractères plutôt que les
	    octets.
Fichiers :  src/getchar.c

Rustine 6.1.160
Problème :  ":$read file.gz" ne fonctionne pas. (Preben Guldberg)
Solution :  Ne pas utiliser la marque '[ après qu'elle soit devenue invalide.
Fichiers :  runtime/plugin/gzip.vim

Rustine 6.1.161 (basée sur 6.1.158)
Problème :  Avertissement au sujet d'une comparaison signé/non signé. Il est
	    possible de donner une valeur négative à 'siso'. (Mike Williams)
Solution :  Ajouter un transtypage. Ajouter un test de négativité pour la
	    valeur de 'siso'.
Fichiers :  src/normal.c, src/option.c

Rustine 6.1.162
Problème :  Interface Python : les threads n'étaient pas initialisés
	    correctement.
Solution :  Appeler PyEval_InitThreads() au lancement.
Fichiers :  src/if_python.c

Rustine 6.1.163
Problème :  Win32 : impossible de compiler avec Python après la rustine
	    6.1.162.
Solution :  Charger dynamiquement PyEval_InitThreads(). (Dan Sharp)
Fichiers :  src/if_python.c

Rustine 6.1.164
Problème :  Si 'modifiable' est désactivé, la conversion avec `xxd` échoue
	    mais 'filetype' est tout de même fixé à "xxd".
Solution :  Ne pas changer 'filetype' si la conversion a échoué.
Fichiers :  runtime/menu.vim

Rustine 6.1.165
Problème :  Faire des modifications dans plusieurs lignes, puis une
	    modifications dans l'une de ces lignes, la découpant en plusieurs
	    lignes, corrompt les informations d'annulation. Un plantage peut
	    survenir. (Dave Fishburn)
Solution :  Quand une ligne est ignorée par l'annulation parce qu'elle a déjà
	    été mémorisée, en faire la dernière ligne mémorisée, de façon a ce
	    que les autres lignes mémorisées ne soient pas concernées quand
	    une commande change le nombre de lignes.
Fichiers :  src/undo.c

Rustine 6.1.166
Problème :  Avec 'autoindent' activé et "mswin.vim" sourcé, le collage avec
	    CTRL-V juste après l'autoindentation supprime l'indentation.
	    (Shlomi Fish)
Solution :  Insérer d'abord un "x" et l'effacer à nouveau, de façon à ce que
	    l'autoindentation soit conservée.
Fichiers :  runtime/mswin.vim

Rustine 6.1.167
Problème :  Quand un argument négatif est fourni à ":retab", des choses
	    étranges se produisent. (Hans Ginzel)
Solution :  Tester les valeurs négatives.
Fichiers :  src/ex_cmds.c

Rustine 6.1.168
Problème :  Appuyer sur CTRL-C à l'invite Appuyez-sur-Entrée n'interrompt pas
	    l'invite.
Solution :  Faire que CTRL-C interrompe l'invite.
Fichiers :  src/message.c

Rustine 6.1.169
Problème :  bufexists() peut trouver un tampon en utilisant le nom d'un lien
	    symbolique, alors que bufnr() en est incapable. (Yegappan
	    Lakshmanan)
Solution :  Quand bufnr() ne parvient pas à trouver un tampon, essayer la
	    méthode utilisée dans bufexists().
Fichiers :  src/eval.c

Rustine 6.1.170
Problème :  L'utilisation de ":mksession" emploie le nom par défaut pour le
	    fichier de session, mais pas "vim -S". (Hans Ginzel)
Solution :  utiliser le nom de fichier de session par défaut si "-S" est le
	    dernier argument de la ligne de commande ou qu'une autre option le
	    suit.
Fichiers :  runtime/doc/starting.txt, src/main.c

Rustine 6.1.171
Problème :  Quand une ligne est ouverte juste au-dessus d'un repli fermé avec
	    "O" et que le début d'un commentaire est automatiquement inséré,
	    le curseur est affiché dans la première colonne. (Sung-Hyun Nam)
Solution :  Mettre à jour le drapeau indiquant que le curseur est sur un repli
	    fermé.
Fichiers :  src/misc1.c

Rustine 6.1.172
Problème :  Le complètement de la ligne de commande pour ":tag /motif"
	    n'affiche pas le même résultat que ce que la commande trouve
	    finalement. (Gilles Roy)
Solution :  Ne pas modifier le motif pour en faire une exprat.
Fichiers :  src/ex_getln.c, src/tag.c

Rustine 6.1.173
Problème :  Lors de l'utilisation du contrôle à distance pour éditer une
	    position dans un fichier, que ce fichier est le tampon courant et
	    qu'il est modifié, la fenêtre est partagée et la commande ":drop"
	    échoue.
Solution :  Ne pas partager la fenêtre, continuer l'édition dans le même
	    tampon.
	    Utiliser la commande ":drop" dans VisVim pour éviter les problèmes
	    dans ce cas.
Fichiers :  src/ex_cmds.c, src/ex_cmds2.c, src/proto/ex_cmds2.pro,
	    VisVim/Commands.cpp

Rustine 6.1.174
Problème :  Dans un script, il n'est pas évident de savoir si une option, en
	    plus d'exister, fonctionne vraiment.
Solution :  Ajouter "exists('+option')".
Fichiers :  runtime/doc/eval.txt, src/eval.c

Rustine 6.1.175
Problème :  Lors de la lecture de commandes depuis un tube et que CTRL-C est
	    pressé, Vim bloque. (Piet Delport)
Solution :  Ne pas continuer la lecture de caractères pour effacer le tampon
	    typeahead quand une interruption est détectée, arrêter dès qu'un
	    CTRL-C est lu.
Fichiers :  src/getchar.c, src/ui.c

Rustine 6.1.176
Problème :  Quand la limite de la pile est très grande, un erreur de
	    débordement erronée peut être détectée.
Solution :  Ajouter un test de débordement pour le calcul de la limite de la
	    pile. (Jim Dunleavy)
Fichiers :  src/os_unix.c

Rustine 6.1.177 (basée sur 6.1.141)
Problème :  ":wincmd" n'autorise pas de commandes à sa suite. (Gary Johnson)
Solution :  Vérifier la présence de " | cmd" à la fin. Émettre une erreur pour
	    les caractères finaux.
Fichiers :  src/ex_docmd.c

Rustine 6.1.178
Problème :  Avec 'expandtab' activé, "r<C-V><Tab>" étend aussi le tabulation.
	    (Bruce deVisser)
Solution :  Remplacer par une tabulation littérale.
Fichiers :  src/normal.c

Rustine 6.1.179 (basée sur 6.1.091)
Problème :  Avec X11R5, XIMPreserveState n'est pas défini. (Albert Chin)
Solution :  Inclure les définitions manquantes.
Fichiers :  src/mbyte.c

Rustine 6.1.180
Problème :  L'utilisation du code l'IHM graphique pour forker n'est pas
	    cohérente.
Solution :  Définir MAY_FORK et l'utiliser pour des #ifdef ultérieurs. (Ben
	    Fowlwer)
Fichiers :  src/gui.c

Rustine 6.1.181
Problème :  Si le terminal n'enroule pas le dernier caractère d'une ligne dans
	    la ligne suivante, la dernière colonne est effacée. (Peter Karp)
Solution :  Ne pas produire un espace pour marquer l'enroulement, mais plutôt
	    le même caractère final.
Fichiers :  src/screen.c

Rustine 6.1.182 (basée sur 6.1.142)
Problème :  Il est impossible de mettre automatiquement en forme seulement les
	    commentaires. (Moshe Kaminsky)
Solution :  Quand les drapeaux 'a' et 'c' sont dans 'formatoptions', ne mettre
	    en forme automatiquement que les commentaires.
Fichiers :  runtime/doc/change.txt, src/edit.c

Rustine 6.1.183
Problème :  quand 'fencs' est vide et que 'enc' vaut "utf-8", la lecture d'un
	    fichier avec des octets invalides donne une erreur "CONVERSION
	    ERROR", même si aucune conversion n'est effectuée. 'readonly' est
	    activé, même si l'écriture du fichier aboutit à un fichier non
	    modifié.
Solution :  Pour cette erreur particulière, utiliser "ILLEGAL BYTE" et ne pas
	    fixer 'readonly'.
Fichiers :  src/fileio.c

Rustine 6.1.184 (extra)
Problème :  Les boutons supplémentaires de certaines souris ne fonctionnent
	    pas.
Solution :  Supporter deux boutons supplémentaires sur MS-Windows. (Michael
	    Geddes)
Fichiers :  runtime/doc/term.txt, src/edit.c, src/ex_getln.c, src/gui.c,
	    src/gui_w32.c, src/gui_w48.c, src/keymap.h, src/message.c,
	    src/misc1.c, src/misc2.c, src/normal.c. src/vim.h

Rustine 6.1.185 (basée sur 6.1.182)
Problème :  Impossible de compiler sans la fonctionnalité +comments.
Solution :  Ajouter #ifdef FEAT_COMMENTS. (Christian J. Robinson)
Fichiers :  src/edit.c

Rustine 6.1.186 (basée sur 6.1.177)
Problème :  ":wincmd" n'autorise pas de commentaires à sa suite. (Aric Blumer)
Solution :  Tester une double-apostrophe après la commande.
Fichiers :  src/ex_docmd.c

Rustine 6.1.187
Problème :  L'utilisation de ":doarg" avec 'hidden' activé alors que le
	    fichier courant est le seul argument et qu'il est modifié donne un
	    message d'erreur. (Preben Guldberg)
Solution :  Ne pas tenter de rééditer le même fichier.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.188 (basée sur 6.1.173)
Problème :  Variable inutilisée dans la version légère.
Solution :  Déplacer la déclaration de "p" dans #ifdef FEAT_LISTCMDS.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.189
Problème :  inputdialog() ne fonctionne pas quand 'guioptions' contient 'c'.
	    (Aric Blumer)
Solution :  Revenir à input() dans cette situation.
Fichiers :  src/eval.c

Rustine 6.1.190 (extra)
Problème :  VMS : impossible de compiler avec l'IHM graphique GTK+. Divers
	    autres problèmes.
Solution :  Corriger la compilation avec GTK+. Amélioration du support de
	    Perl, Python et Tcl.
	    Amélioration de la documentation pour VMS. (Zoltan Arpadffy)
	    Ajout de Vimtutor pour VMS (T. R. Wyant)
Fichiers :  runtime/doc/os_vms.txt, src/INSTALLvms.txt, src/gui_gtk_f.h,
	    src/if_tcl.c, src/main.c, src/gui_gtk_vms.h, src/Make_vms.mms,
	    src/os_vms.opt, src/proto/if_tcl.pro, vimtutor.com,
	    src/testdir/Make_vms.mms

Rustine 6.1.191
Problème :  Lors de l'utilisation de "vim -s script" et que la sortie est
	    redirigée, le délai de l'avertissement "Output is not to a
	    terminal" ralentit trop Vim.
Solution :  Ne pas attendre quand des commandes sont lues depuis un script.
Fichiers :  src/main.c

Rustine 6.1.192
Problème :  ":diffsplit" n'ajoute pas "hor" à 'scrollopt'. (Gary Johnson)
Solution :  Ajouter "hor" à 'scrollopt' à chaque fois que ":diffsplit" est
	    utilisé.
Fichiers :  src/diff.c, src/main.c

Rustine 6.1.193
Problème :  Plantage dans in_id_list() pour un élément avec une liste
	    "containedin". (Dave Fishburn)
Solution :  Tester un id de syntaxe négatif, utilisé pour des mots-clés.
Fichiers :  src/syntax.c

Rustine 6.1.194
Problème :  Quand 't_ti' est activé mais qu'il ne provoque pas de basculement
	    de pages dans le terminal, "ZZ" peut provoquer l'apparition de
	    l'invite du shell au-dessus du message indiquant l'écriture du
	    fichier.
Solution :  Faire défiler le texte vers le haut dans la page Vim avant de
	    basculer dans la page du terminal. (Michael Schroeder)
Fichiers :  src/os_unix.c

Rustine 6.1.195
Problème :  Les fenêtres de mise-au-point et de prévisualisation conservent
	    toujours leur hauteur, alors que les autres fenêtres ne peuvent
	    pas être dimensionnées.
Solution :  Ajouter l'option 'winfixheight', pour que n'importe quelle
	    fenêtres puisse avoir une hauteur fixe. Corriger le problème avec
	    'wildmenu', qui peut redimensionner une fenêtre d'une ligne en une
	    fenêtre de deux lignes quand 'ls' est nul.
Fichiers :  runtime/doc/options.txt, runtime/optwin.vim, src/ex_cmds.c,
	    src/ex_getln.c, src/globals.h, src/option.c, src/quickfix.c,
	    src/screen.c, src/structs.h, src/window.c

Rustine 6.1.196  (basée sur 6.1.084)
Problème :  Sur Mac OS X 10.2, la génération de "osdef.h" échoue.
Solution :  Ajouter "-no-cpp-precomp" pour éviter l'utilisation de fichiers
	    d'en-tête précompilés, qui désactivent l'affichage du chemin de
	    recherche. (Ben Fowler)
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.197
Problème :  ":help <C-V><C-\><C-V><C-N>" (aboutissant à <1c><0e>) donne un
	    message d'erreur. (Servatius Brandt)
Solution :  Doubler la contre-oblique dans "CTRL-\".
Fichiers :  src/ex_cmds.c

Rustine 6.1.198 (extra) (basée sur 6.1.076)
Problème :  Mac OS X : les dialogues ne fonctionnent pas.
Solution :  Corriger le problème de plantage pour certains dialogues. Corriger
	    un problème lors de l'enregistrement d'un nouveau fichier dans
	    l'IHM graphique. (Peter Cucka)
Fichiers :  src/feature.h, src/gui_mac.c

Rustine 6.1.199
Problème :  'guifontwide' ne fonctionne pas sur Win32.
Solution :  Afficher chaque caractère large séparément. (Michael Geddes)
Fichiers :  src/gui.c

Rustine 6.1.200
Problème :  ":syn sync fromstart" n'est pas ignoré après ":if 0". Cela peut
	    ralentir considérablement la coloration syntaxique.
Solution :  Vérifier correctement "eap->skip". (Rob West)
Fichiers :  src/syntax.c

Rustine 6.1.201 (basée sur 6.1.192)
Problème :  Avertissement pour une combinaison illégale de pointeurs. (Zoltan
	    Arpadffy)
Solution :  Ajouter un transtypage.
Fichiers :  src/diff.c

Rustine 6.1.202 (extra) (basée sur 6.1.148)
Problème :  Win32 : filewritable() ne fonctionne pas correctement sur les
	    répertoires.
Solution :  Corriger filewritable(). (Mike Williams)
Fichiers :  src/os_win32.c

Rustine 6.1.203
Problème :  ":%s/~//" provoque un plantage après ":%s/x//". (Gary Holloway)
Solution :  Éviter de lire au-delà de la fin d'une ligne quand "~" est vide.
Fichiers :  src/regexp.c

Rustine 6.1.204 (basée sur 6.1.129)
Problème :  Avertissement pour un pointeur illégal sur Solaris.
Solution :  Ajouter un transtypage. (Derek Wyatt)
Fichiers :  src/misc2.c

Rustine 6.1.205
Problème :  Le greffon "gzip" modifie le fichier alternatif lors de l'édition
	    d'un fichier compressé. (Oliver Fuchs)
Solution :  Retirer temporairement les drapeaux 'a' et 'A' de 'cpo'.
Fichiers :  runtime/plugin/gzip.vim

Rustine 6.1.206
Problème :  Le script généré par ":mksession" ne fonctionne pas correctement
	    quand certaines commandes sont mappées.
Solution :  utiliser ":normal!" au lieu de ":normal". Et utiliser ":wincmd"
	    quand c'est possible. (Muraoka Taro)
Fichiers :  src/ex_docmd.c, src/fold.c

Rustine 6.1.207
Problème :  L'indentation d'un fichier Java reste bloquée sous une ligne avec
	    un commentaire après une commande.
Solution :  Interrompre la boucle. (Andre Pang)
	    De même, aligner } avec la { appariée.
Fichiers :  runtime/indent/java.vim

Rustine 6.1.208
Problème :  Impossible d'utiliser le numéro des tampons depuis l'interface
	    Python.
Solution :  Ajouter buffer.number. (Michal Vitecek)
Fichiers :  src/if_python.c

Rustine 6.1.209
Problème :  L'impression ne fonctionne pas sur l'interface Mac OS Classic.
Solution :  utiliser un ":" comme séparateur pour les chemins lors de
	    l'ouverture d'une ressource. (Axel Kielhorn)
Fichiers :  src/ex_cmds2.c

Rustine 6.1.210
Problème :  Quand une erreur se produit dans une conversion iconv() à la
	    lecture d'un fichier, une erreur peut aussi se produire à
	    l'utilisation suivante de iconv().
Solution :  Réinitialiser l'état du descripteur de iconv(). (Yasuhiro
	    Matsumoto)
Fichiers :  src/fileio.c

Rustine 6.1.211
Problème :  Le message "utilisez ! pour passer outre" est déroutant.
Solution :  Changer le message en "ajouter ! pour passer outre".
Fichiers :  src/buffer.c, src/eval.c, src/ex_docmd.c, src/fileio.c,
	    src/globals.h

Rustine 6.1.212
Problème :  Quand Vim est démarré avec "-R", ":new" crée un tampon
	    'noreadonly', alors que ":enew" active 'readonly'. (Preben
	    Guldberg)
Solution :  Ne pas activer 'readonly' dans un tampon vide avec ":enew".
Fichiers :  src/ex_docmd.c

Rustine 6.1.213
Problème :  Utiliser CTRL-W H peut provoquer l'apparition d'un grand vide sous
	    la dernière fenêtre. (Aric Blumer)
Solution :  Ne pas fixer la hauteur de la dernière fenêtre quand il existe un
	    partage vertical. (Yasuhiro Matsumoto)
Fichiers :  src/window.c

Rustine 6.1.214
Problème :  Quand Vim et ses fichiers de support sont installés après leur
	    récupération sur CVS, les répertoires CVS sont également
	    installés.
Solution :  Éviter d'installer les répertoires CVS et leur contenu.
Fichiers :  src/Makefile

Rustine 6.1.215
Problème :  Win32 : ":pwd" utilise des contre-obliques, même quand
	    'shellslash' est activé. (Xiangjiang Ma)
Solution :  Ajuster les obliques juste avant d'afficher le message.
Fichiers :  src/ex_docmd.c

Rustine 6.1.216
Problème :  Lors du chargement dynamique de la bibliothèque iconv, les codes
	    d'erreurs peuvent être vagues.
Solution :  utiliser des codes d'erreurs spécifiques pour iconv et les
	    redéfinir pour le chargement dynamique. (Yasuhiro Matsumoto)
Fichiers :  src/fileio.c, src/mbyte.c, src/vim.h

Rustine 6.1.217
Problème :  Quand un même script est sourcé en utilisant différents noms (lien
	    symbolique ou nom 8.3 sous MS-Windows), il est listé deux fois
	    dans ":scriptnames".  (Tony Mechelynck)
Solution :  Convertir le nom du script en un chemin complet avant de
	    l'utiliser. Sur unix, comparer les numéros d'inodes/périphériques.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.218
Problème :  Aucun message d'erreur lors de l'utilisation de l'argument "5+"
	    avec une fonction. (Servatius Brandt)
Solution :  Donner un message d'erreur si une fonction ou une variable est
	    attendue mais non trouvée.
Fichiers :  src/eval.c

Rustine 6.1.219
Problème :  Lors de l'utilisation de ":amenu :b 1<CR>" avec une sélection
	    Visuel et que 'insertmode' est activé, Vim ne retourne pas en mode
	    Insertion. (Mickael Marchand)
Solution :  Ajouter la commande CTRL-\ CTRL-G pour passer en mode Insertion
	    quand 'insertmode' est activé et en mode Normal sinon. L'ajouter
	    aux menus définis avec ":amenu".
Fichiers :  src/edit.c, src/ex_getln.c, src/normal.c

Rustine 6.1.220
Problème :  Quand une autocommande BufReadPost changeant le nombre de lignes
	    est utilisée, par exemple, "$-1join", recharger un fichier modifié
	    en dehors de Vim ne fonctionne pas correctement. (Alan G Isaac)
Solution :  Vider le tampon avant de lire la nouvelle version du fichier.
	    Mémoriser les lignes dans un tampon intermédiaire, de façon à ce
	    qu'elles puissent être restaurées si la lecture du fichier échoue.
Fichiers :  src/buffer.c, src/ex_cmds.c, src/fileio.c, src/globals.h,
	    src/proto/buffer.pro

Rustine 6.1.221
Problème :  Modifier la casse peut ne pas fonctionner, selon la région
	    linguistique.
Solution :  Ajouter l'option 'casemap' pour permettre à l'utilisateur de
	    choisir la manière dont le changement de casse doit être opéré.
	    De même, corriger l'abaissement de la casse quand un caractère
	    UTF-8 ne conserve pas la même taille en octets.
Fichiers :  runtime/doc/options.txt, src/ascii.h, src/auto/configure,
	    src/buffer.c, src/charset.c, src/config.h.in, src/configure.in,
	    src/diff.c, src/edit.c, src/eval.c, src/ex_cmds2.c,
	    src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/gui_amiga.c
	    src/gui_mac.c, src/gui_photon.c, src/gui_w48.c, src/gui_beos.cc,
	    src/macros.h, src/main.c, src/mbyte.c, src/menu.c, src/message.c,
	    src/misc1.c, src/misc2.c, src/option.c, src/os_msdos.c,
	    src/os_mswin.c, src/proto/charset.pro, src/regexp.c, src/option.h,
	    src/syntax.c

Rustine 6.1.222 (basée sur 6.1.219)
Problème :  La rustine 6.1.219 est incomplète.
Solution :  Ajouter les modifications pour ":amenu".
Fichiers :  src/menu.c

Rustine 6.1.223 (extra)
Problème :  Win32 : quand l'IME est activée, 'iminsert' est aussi fixé, mais
	    peut ne jamais être réinitialisé quand l'IME est désactivée.
	    (Muraoka Taro)
	    Tous les systèmes : 'iminsert' est fixé à 2 à la sortie du mode
	    Insertion, même quand un mappage de langue est utilisé. (Peter
	    Valach)
Solution :  Ne pas fixer "b_p_iminsert" dans _OnImeNotify(). (Muraoka Taro)
	    Ne pas mémoriser l'état de la méthode de saisie dans 'iminsert'
	    quand 'iminsert' vaut un. Pareil pour l'édition de la ligne de
	    commande et les arguments des commandes du mode Normal.
Fichiers :  src/edit.c, src/ex_getln.c, src/gui_w32.c, src/normal.c

Rustine 6.1.224
Problème :  "expand('$VAR')" retourne une chaîne vide quand le développement
	    de $VAR n'est pas un fichier existant. (Aric Blumer)
Solution :  Inclure les fichiers non existants, comme l'affirme la
	    documentation.
Fichiers :  src/eval.c

Rustine 6.1.225
Problème :  L'utilisation de  <C-O><C-^> en mode Insertion impose un délai
	    quand "vim -u NONE" est utilisé au démarrage, avec ":set nocp
	    hidden". (Emmanuel) do_ecmd() utilise fileinfo(), le
	    rafraîchissement a lieu après un certain délai pour donner à
	    l'utilisateur le temps de lire le message.
Solution :  Mettre le message de fileio() dans "keep_msg", afin que le
	    rafraîchissement soit effectué avant le délai (qui reste
	    nécessaire pour éviter que le message de mode écrase le message de
	    fileinfo()).
Fichiers :  src/buffer.c

Rustine 6.1.226
Problème :  L'utilisation de ":debug" avec une commande ":normal" peut
	    provoquer un blocage. (Colin Keith)
Solution :  Mémoriser le tampon typeahead quand une commande de débogage est
	    reconnue.
Fichiers :  src/ex_cmds2.c, src/getchar.c, src/proto/getchar.pro

Rustine 6.1.227
Problème :  Il est possible de nommer une variable "asdf:asdf" et
	    ":let j:asdf = 5" ne donne pas de message d'erreur. (Mikolaj
	    Machowski)
Solution :  Tester la présence d'un ":" dans le nom des variables.
Fichiers :  src/eval.c

Rustine 6.1.228 (extra)
Problème :  Win32 : la fonction spéciale de sortie pour l'hangul est utilisée
	    trop fréquemment, ce qui empêche la prise en charge de cas
	    spéciaux pour d'autres situations.
	    bInComposition est toujours FALSE, ce qui fait que
	    ImeGetTempComposition() retourne toujours NULL.
Solution :  Supprimer HanExtTextOut(). Supprimer le code inutile autour de
	    bInComposition et ImeGetTempComposition().
Fichiers :  src/gui_w16.c, src/gui_w32.c, src/gui_w48.c

Rustine 6.1.229
Problème :  Win32 : la conversion depuis/vers les pages de codes les plus
	    utilisées nécessite la bibliothèque iconv, qui n'est pas toujours
	    disponible.
Solution :  utiliser les fonctions standards de Windows pour convertir quand
	    c'est possible. (principalement par Glenn Maynard)
	    Corriger des déclarations manquantes dans la rustine 6.1.220.
Fichiers :  src/fileio.c

Rustine 6.1.230 (extra)
Problème :  Win16 : impossible de compiler.
Solution :  Exclure la prise en charge de XBUTTON. (Vince Negri)
Fichiers :  src/gui_w48.c

Rustine 6.1.231
Problème :  Le double clic de la souris pour sélectionner un mot ne fonctionne
	    pas avec les caractères multi-octets.
Solution :  Utiliser vim_iswordc() au lieu de vim_isIDc(). Cela signifie que
	    'iskeyword' est utilisé à la place de 'isident'. Corriger aussi le
	    disfonctionnement quand ASCII et multi-octets sont mélangés, les
	    classes ponctuation et caractères de mot utilisées pour la souris
	    étaient mélangées.
Fichiers :  src/normal.c

Rustine 6.1.232 (basée sur 6.1.226)
Problème :  Utilisation de ex_normal_busy alors qu'il n'est pas forcément
	    disponible. (Axel Kielhorn)
Solution :  N'utiliser ex_normal_busy que si FEAT_EX_EXTRA est défini.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.233
Problème :  ":help expr-||" ne fonctionne pas.
Solution :  Ne pas utiliser '|' comme séparateur de commandes.
Fichiers :  src/ex_cmds.c

Rustine 6.1.234 (basée sur 6.1.217)
Problème :  Avertissement dû à l'utilisation d'une valeur négative pour
	    st_dev.
Solution :  Ne pas affecter de valeur négative à st_dev.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.235 (basée sur 6.1.223)
Problème :  'iminsert' passe de 1 à 2 à la sortie du mode Insertion. (Peter
	    Valach)
Solution :  Vérifier "State" avant de réinitialiser à NORMAL.
Fichiers :  src/edit.c

Rustine 6.1.236
Problème :  Fuites de mémoire avec l'ajout de lignes avec ":diffget" ou
	    ":diffput" et quand un tampon modifié est rechargé.
Solution :  Libérer la ligne après l'appel à ml_append().
Fichiers :  src/diff.c, src/fileio.c

Rustine 6.1.237
Problème :  Coller en mode Visuel par bloc ne fonctionne pas correctement
	    quand "$" est utilisé ou quand la première ligne est courte.
	    (Christian Michon)
Solution :  Effacer d'abord le texte sélectionné puis coller le nouveau texte.
	    Mémoriser et restaurer les registres quand c'est nécessaire.
Fichiers :  src/globals.h, src/normal.c, src/ops.c, src/proto/ops.pro,
	    src/vim.h

Rustine 6.1.238 (extra)
Problème :  Win32 : l'argument "icon=" de la commande ":menu" ne recherche pas
	    le fichier image.
Solution :  Développer les variables d'environnement et rechercher le fichier
	    image. (Vince Negri)
	    Utiliser le même principe que pour X11 et GTK+, pour la cohérence.
Fichiers :  src/gui.c src/gui_gtk.c, src/gui_w32.c, src/gui_x11.c,
	    src/proto/gui.pro

Rustine 6.1.239
Problème :  Message d'erreur émis pour un ":endif" ou un ":endwhile" manquant
	    lors d'une interruption.
Solution :  Ne pas donner ces messages quand l'exécution est interrompue.
Fichiers :  src/ex_docmd.c, src/os_unix.c

Rustine 6.1.240 (extra)
Problème :  Win32 avec BCC 5 : CPU peut être défini par l'environnement, ce
	    qui aboutit à un argument faux pour le compilateur. (Walter
	    Briscoe)
Solution :  Utiliser CPUNR au lieu de CPU.
Fichiers :  src/Make_bc5.mak

Rustine 6.1.241
Problème :  Quelque chose se passe mal quand le curseur est dessiné ou effacé.
Solution :  Mieux mémoriser quand le curseur est invalide.
Fichiers :  src/gui.c

Rustine 6.1.242
Problème :  Lors du collage d'un grand nombre de lignes dans la ligne de
	    commande, il n'est pas possible d'interrompre. (Jean Jordaan)
Solution :  Tester s'il y a une interruption après chaque ligne collée.
Fichiers :  src/ops.c

Rustine 6.1.243 (extra)
Problème :  Win32 : quand le version OLE est lancée alors qu'elle n'a pas été
	    enregistrée, un message surgit pour suggérer cet enregistrement,
	    même quand cela n'est pas possible (base de registre en lecture
	    seule).
Solution :  Vérifier si l'enregistrement est possible avant de demander s'il
	    doit être effectué. (Walter Briscoe)
	    Éviter de redémarrer Vim après l'enregistrement.
Fichiers :  src/if_ole.cpp

Rustine 6.1.244
Problème :  La rustine 6.1.237 ne contenait pas les différences pour "vim.h".
	    (Igor Goldenberg)
Solution :  Les inclure.
Fichiers :  src/vim.h

Rustine 6.1.245
Problème :  La comparaison sans respecter la casse ne fonctionne pas
	    correctement pour Unicode avec une région linguistique dans
	    laquelle le changement de la casse d'un caractère ASCII aboutit à
	    un caractère multi-octets. (Glenn Maynard)
Solution :  Prendre en charge différemment la comparaison sans respect de la
	    casse pour Unicode.
Fichiers :  src/mbyte.c

Rustine 6.1.246
Problème :  ":blast" aboutit au premier tampon si le dernier n'est pas listé.
	    (Andrew Stryker)
Solution :  Depuis le dernier tampon, rechercher vers l'arrière le prochain
	    tampon listé, plutôt que vers l'avant.
Fichiers :  src/ex_docmd.c

Rustine 6.1.247
Problème :  Le support des ACL ne fonctionne toujours pas correctement.
Solution :  Ajouter de l'argument "--disable-acl" à `configure`. (Thierry
	    Vignaud)
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.248
Problème :  Taper 'q' à l'invite Plus de ":let" ne quitte pas le listage.
	    (Hari Krishna Dara)
Solution :  Quitter le listage quand got_int est positionné.
Fichiers :  src/eval.c

Rustine 6.1.249
Problème :  Impossible de développer un chemin sur la ligne de commande quand
	    elle contient un "|" comme octet final dans un caractère
	    multi-octets.
Solution :  Vérifier les caractères multi-octets. (Yasuhiro Matsumoto)
Fichiers :  src/ex_docmd.c

Rustine 6.1.250
Problème :  Quand la valeur de 'lines' est modifiée dans l'expression contenue
	    dans 'diffexpr', Vim peut planter. (Dave Fishburn)
Solution :  Ne pas permettre la modification de la taille de l'affichage lors
	    du rafraîchissement.
Fichiers :  src/globals.h, src/option.c, src/screen.c

Rustine 6.1.251
Problème :  Impossible d'utiliser un complètement similaire à ":cd" avec
	    ":lcd" et ":lchdir".
Solution :  Développer les noms de répertoires pour ces commandes. (Servatius
	    Brandt)
Fichiers :  src/ex_docmd.c

Rustine 6.1.252
Problème :  "vi}" n'inclut pas la coupure de ligne quand la "}" est au début
	    de la ligne suivante. (Kamil Burzynski)
Solution :  Inclure la coupure de ligne.
Fichiers :  src/search.c

Rustine 6.1.253 (extra)
Problème :  Win32 avec CygWin : la modifications du chemin des arguments n'est
	    pas correcte. (Xiangjiang Ma)
Solution :  Ne pas utiliser cygwin_conv_to_posix_path() pour la version Win32.
	    Mettre le Makefile CygWin à jour pour supporter davantage de
	    fonctionnalités. (Dan Sharp)
Fichiers :  src/Make_cyg.mak, src/if_ole.cpp, src/main.c

Rustine 6.1.254
Problème :  exists("foo{bar}") ne fonctionne pas. ':unlet v{"a"}r' non plus.
	    ":let v{a}r1 v{a}r2" pas davantage. Ni ":func F{(1)}". Et
	    ":delfunc F{" ne donne pas de message d'erreur. ':delfunc F{"F"}'
	    ne fonctionne pas.
Solution :  Prendre en compte les accolades magiques dans l'argument
	    de exists(). (Vince Negri)
	    Vérifier les commentaires finaux dans ":unlet". Ajouter le support
	    des accolades magiques dans les arguments supplémentaires de
	    ":let". Ne rechercher une parenthèse qu'après le nom de la
	    fonction. (Servatius Brandt)
	    Développer les accolades magiques pour "exists('*expr')". Donner
	    un message d'erreur pour les arguments invalides de ":delfunc".
	    Permettre les doubles-apostrophes dans les arguments de
	    ":delfunc".
Fichiers :  src/eval.c, src/ex_cmds.h, src/ex_docmd.c

Rustine 6.1.255 (basée sur 6.1.254)
Problème :  Plantage quand "menu.vim" est chargé une deuxième fois. (Christian
	    Robinson)
	    ":unlet garbage foo" tente de s'occuper de "foo" après un message
	    d'erreur. (Servatius Brandt)
	    Les très longs arguments de fonctions entraînent de très longs
	    messages quand 'verbose' vaut au moins 14.
Solution :  Éviter de lire de la mémoire non initialisée.
	    Interrompre la boucle après un argument invalide dans ":unlet".
	    Tronquer les arguments de fonctions trop longs à 80 caractères.
Fichiers :  src/eval.c

Rustine 6.1.256 (basée sur 6.1.255)
Problème :  Définir une fonction après ":if 0" peut encore provoquer un
	    message d'erreur avertissant d'une fonction déjà existante.
	    Fuite de mémoire quand il se trouve des caractères après
	    ":delfunc".
Solution :  Vérifier le drapeau "skip". Libérer la mémoire. (Servatius Brandt)
Fichiers :  src/eval.c

Rustine 6.1.257
Problème :  ":cwindow" fixe toujours la fenêtre précédente à l'avant-dernière.
	    (Benji Fisher)
Solution :  Fixer correctement la fenêtre précédente.
Fichiers :  src/globals.c, src/quickfix.c, src/window.c

Rustine 6.1.258
Problème :  Le menu Tampons ne fonctionne pas correctement avec les noms de
	    tampons contenant un caractère multi-octets.
Solution :  Utiliser un motif pour obtenir les parties droite et gauche du
	    nom. (Yasuhiro Matsumoto)
Fichiers :  runtime/menu.vim

Rustine 6.1.259 (extra)
Problème :  Mac : quand 'patchmode' est utilisé, les noms de fichiers sont
	    tronqués.
Solution :  Augmenter BASENAMELEN pour Mac OS X. (Ed Ralston)
Fichiers :  src/os_mac.h

Rustine 6.1.260 (basée sur 6.1.104)
Problème :  GCC 3.2 semble encore avoir un problème d'optimisation. (Zvi
	    Har'El)
Solution :  Utiliser la même vérification `configure` que pour GCC 3.1.
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.261
Problème :  Lors de l'effacement d'une ligne qui ne se trouve pas dans le
	    tampon courant en utilisant Delete() de l'interface Perl, le
	    curseur peut être déplacé dans le fenêtre courante. (Chris Houser)
Solution :  Ne pas modifier la position du curseur quand des modifications ont
	    lieu dans un autre tampon.
Fichiers :  src/if_perl.xs

Rustine 6.1.262
Problème :  Lors d'un saut par delà des replis avec "z[", "zj" et "zk", la
	    position précédente n'est pas mémorisée. (Hari Krishna Dara)
Solution :  Placer la marque du contexte précédent avant de sauter.
Fichiers :  src/fold.c

Rustine 6.1.263
Problème :  Quand un caractère multi-octets déclenchant une abréviation est
	    tapé, il n'est pas inséré correctement.
Solution :  Prendre en compte l'ajout du caractère multi-octets tapé.
	    (Yasuhiro Matsumoto)
Fichiers :  src/getchar.c

Rustine 6.1.264 (basée sur 6.1.254)
Problème :  exists() ne fonctionne pas avec les fonctions intégrées. (Steve
	    Wall)
Solution :  Ne pas vérifier si le nom de la fonction commence par une
	    majuscule.
Fichiers :  src/eval.c

Rustine 6.1.265
Problème :  libcall() peut être utilisée dans 'foldexpr' pour appeler
	    n'importe quelle fonction du système. Pareil pour rename(),
	    delete() and remote_send(). Ce sont de graves problèmes de
	    sécurité. (Georgi Guninski)
Solution :  Ne pas permettre l'utilisation de libcall(), rename(), delete(),
	    remote_send() et autres fonctions similaires dans le bac à sable.
Fichiers :  src/eval.c

Rustine 6.1.266 (basée sur 6.1.265)
Problème :  Win32 : erreur de compilation dans "eval.c". (Bill McCarthy)
Solution :  Déplacer la déclaration d'une variable.
Fichiers :  src/eval.c

Rustine 6.1.267
Problème :  L'utilisation de "p" pour coller dans une zone Visuel sélectionnée
	    peut provoquer un plantage.
Solution :  Allouer suffisamment de mémoire pour mémoriser le contenu des
	    registres. (Muraoka Taro)
Fichiers :  src/ops.c

Rustine 6.1.268
Problème :  Quand une abréviation est déclenchée par un caractère
	    multi-octets, ce dernier n'est pas correctement inséré après le
	    développement de l'abréviation. (Taro Muraoka)
Solution :  Ajouter ABBR_OFF à tous les caractères au-delà de 0xff.
Fichiers :  src/edit.c, src/ex_getln.c, src/getchar.c

Rustine 6.1.269
Problème :  Après l'utilisation de input(), le texte écrit avec ":redir" voit
	    sont indentation augmentée. (David Fishburn)
Solution :  Restaurer msg_col après l'utilisation de input().
Fichiers :  src/ex_getln.c

Rustine 6.1.270 (basée sur 6.1.260)
Problème :  GCC 3.2.1 a encore des problèmes avec l'optimisation.
Solution :  Utiliser la même vérification `configure` que pour GCC 3.1.
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.271
Problème :  Il y a des erreurs lors de la compilation dans la fonctionnalité
	    +syntax.
Solution :  Ne pas utiliser le code de la coloration syntaxique. (Roger
	    Cornelius)
	    Rendre "test45" indépendant de la coloration syntaxique.
	    Corriger une erreur dans la correspondance des motifs : "\%("
	    n'était pas supporté.
Fichiers :  src/ex_cmds2.c, src/regexp.c, src/testdir/test45.in

Rustine 6.1.272
Problème :  Un plantage peut survenir après l'utilisation de ":set define<".
	    (Christian Robinson)
Solution :  Faire une copie de la valeur de l'option dans la mémoire allouée.
Fichiers :  src/option.c

Rustine 6.1.273
Problème :  Quand le curseur ne clignote pas, le rafraîchissement de la zone
	    affichée peut cacher le curseur.
Solution :  Toujours dessiner le curseur, même quand il ne bouge pas. (Muraoka
	    Taro)
Fichiers :  src/gui.c

Rustine 6.1.274 (basée sur 6.1.210)
Problème :  Réinitialiser l'état de iconv() après chaque erreur est inadapté
	    pour une séquence incomplète.
Solution :  Ne pas réinitialiser l'état de iconv().
Fichiers :  src/fileio.c

Rustine 6.1.275
Problème :  Quand "v" est utilisé dans un script de démarrage, un message que
	    le terminal ne peut pas mettre en surbrillance est obtenu.
	    (Charles Campbell)
Solution :  Ne donner le message qu'après l'initialisation du terminal.
Fichiers :  src/normal.c

Rustine 6.1.276
Problème :  "gvim --remote fichier" ne demande pas de clé de chiffrement.
Solution :  Les caractères suivant transmis au serveurs sont employés.
	    Ajout de inputsave() et inputrestore() pour permettre de demander
	    directement à l'utilisateur et ne pas utiliser le tampon
	    typeahead.
	    Correction d'une possible fuite de mémoire dans ":normal".
Fichiers :  src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c,
	    src/main.c, src/proto/getchar.pro, src/proto/ui.pro,
	    src/runtime/doc/eval.txt, src/structs.h, src/ui.c, src/vim.h

Rustine 6.1.277 (basée sur 6.1.276)
Problème :  Erreur de compilation avec le jeu de fonctionnalités « léger ».
Solution :  Définir trash_input_buf() là où c'est nécessaire. (Kelvin Lee)
Fichiers :  src/ui.c

Rustine 6.1.278
Problème :  Lors de l'utilisation de symboles, les numéros de lignes des
	    replis fermés ne sont pas alignés avec les autres numéros de
	    lignes. (Kamil Burzynski)
Solution :  Insérer deux espaces pour la colonne des symboles.
Fichiers :  src/screen.c

Rustine 6.1.279
Problème :  Les prototypes de smsg() et smsg_attr() ne correspondent pas avec
	    la définition des fonctions. Cela pose des problèmes avec certains
	    compilateurs. (Nix)
Solution :  utiliser va_list sur les systèmes disposant de "stdarg.h".
	    Utiliser "int" au lieu de "void" comme type de retour.
Fichiers :  src/auto/configure, src/config.h.in, src/configure.in,
	    src/proto.h, src/message.c

Rustine 6.1.280
Problème :  Il est possible d'utiliser un argument "firstline" ou "lastline"
	    dans une fonction mais utiliser "a:firstline" or "a:lastline"
	    dans la fonction ne fonctionnera pas. (Benji Fisher)
Solution :  Donner un message d'erreur pour ces arguments.
	    Éviter que le corps de la fonction qui suit ne déclenche une série
	    d'erreur, passer outre après une erreur dans la première ligne.
Fichiers :  src/eval.c

Rustine 6.1.281
Problème :  En mode Insertion, CTRL-X CTRL-G laisse le curseur après la règle.
Solution :  Fixer la position du curseur avant d'attendre l'argument de
	    CTRL-G. (Yasuhiro Matsumoto)
Fichiers :  src/edit.c

Rustine 6.1.282
Problème :  Elvis utilise "se" dans la ligne de mode, Vim ne le reconnaît pas.
Solution :  Accepter également "se " là où "set " est accepté dans une ligne
	    de mode. (Yasuhiro Matsumoto)
Fichiers :  src/buffer.c

Rustine 6.1.283
Problème :  Avec ":sign", le nom de l'icône ne peut pas contenir d'espace.
Solution :  Gérer les contre-obliques dans le nom du fichier. (Yasuhiro
	    Matsumoto)
Fichiers :  src/ex_cmds.c

Rustine 6.1.284
Problème :  Sur Solaris, avertissment pour "struct utimbuf".
Solution :  Déplacer l'inclusion de "utime.h" hors de la fonction. (Derek
	    Wyatt)
Fichiers :  src/fileio.c

Rustine 6.1.285
Problème :  Impossible de détruire un tampon avec l'option 'bufhidden' fixée.
Solution :  Ajouter la valeur "wipe" à 'bufhidden'. (Yegappan Lakshmanan)
Fichiers :  runtime/doc/options.txt, src/buffer.c, src/option.c,
	    src/quickfix.c

Rustine 6.1.286
Problème :  'showbreak' ne peut pas contenir de caractères multi-octets.
Solution :  autoriser l'utilisation de tous les caractères imprimables dans
	    'showbreak'.
Fichiers :  src/charset.c, src/move.c, src/option.c

Rustine 6.1.287 (basée sur 6.1.285)
Problème :  Les effets de "delete" et "wipe" dans 'bufhide' sont mélangés.
Solution :  Détruire quand la destruction est demandée.
Fichiers :  src/buffer.c

Rustine 6.1.288
Problème :  ":silent function F" bloque. (Hari Krishna Dara)
Solution :  Ne pas utiliser msg_col, il n'est pas incrémenté avec ":silent".
	    Amélioration de l'aspect de la fonction. Ne pas traduire
	    "function".
Fichiers :  src/eval.c

Rustine 6.1.289 (basée sur 6.1.278)
Problème :  Avertissement du compilateur sur des pointeurs.(Axel Kielhorn)
Solution :  Ajouter un transtypage pour "  ".
Fichiers :  src/screen.c

Rustine 6.1.290 (extra)
Problème :  La troncature des textes longs pour les boîtes de dialogue peut
	    couper un caractère multi-octets.
Solution :  Couper au début d'un caractère multi-octets. (Yasuhiro Matsumoto)
Fichiers :  src/os_mswin.c

Rustine 6.1.291 (extra)
Problème :  Win32 : CTRL-@ ne fonctionne pas. Il n'y a pas même de message
	    pour cela.
Solution :  Reconnaître le code clavier de CTRL-@. (Yasuhiro Matsumoto)
Fichiers :  src/gui_w48.c

Rustine 6.1.292 (extra, basée sur 6.1.253)
Problème :  Win32 : impossible de compiler avec le nouveau compilateur MinGW.
	    Le Makefile Borland 5 ne génère pas "pathdef.c".
Solution :  Supprimer l'argument "-wwide-multiply". (Rene de Zwart)
	    Diverses corrections pour d'autres problèmes dans les Makefiles
	    Win32. (Dan Sharp)
Fichiers :  src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak,
	    src/Make_mvc.mak

Rustine 6.1.293
Problème :  byte2line() retourne un résultat faux pour certaines valeurs.
Solution :  Remplacer ">=" par ">" dans ml_find_line_or_offset(). (Bradford C
	    Smith)
	    Ajouter un au numéro de la ligne quand à la fin d'un bloc.
Fichiers :  src/memline.c

Rustine 6.1.294
Problème :  Impossible d'insérer un caractère multi-octets dans une chaîne
	    avec sa valeur hexadécimale. (Benji Fisher)
Solution :  Ajouter "\u...." : un caractère spécifié avec jusqu'à quatre
	    nombres hexadécimaux et inséré en fonction de la valeur de
	    'encoding'.
Fichiers :  src/eval.c

Rustine 6.1.295 (extra)
Problème :  Le traitement du fichier "cs.po" produit une erreur. (Rahul
	    Agrawal)
Solution :  Corriger les caractères de format de printf dans la traduction.
Fichiers :  src/po/cs.po

Rustine 6.1.296
Problème :  Win32 : lors de l'annulation du sélecteur de polices, la valeur de
	    'guifont' reste "*".
Solution :  Restaurer l'ancienne valeur de 'guifont' (Yasuhiro Matsumoto)
Fichiers :  src/option.c

Rustine 6.1.297
Problème :  "make test" échoue dans "test6" avec un environnement UTF-8.
	    (Benji Fisher)
Solution :  Mémoriser le codage actuel du fichier avant d'exécuter les
	    autocommande BufReadPost, pour que le fichier ne soit pas signalé
	    comme modifié.
Fichiers :  src/fileio.c

Rustine 6.1.298
Problème :  Lors de l'utilisation de symboles et que la première ligne d'un
	    repli fermé dispose d'un symbole, il peut être rafraîchi comme si
	    le repli était ouvert. (Kamil Burzynski)
Solution :  Ne pas redessiner le symbole dans un repli fermé.
Fichiers :  src/screen.c

Rustine 6.1.299
Problème :  ":edit +set\ ro fichier" ne fonctionne pas.
Solution :  Réduire de moitié le nombre de contre-obliques dans l'argument
	    "+cmd".
Fichiers :  src/ex_docmd.c

Rustine 6.1.300 (extra)
Problème :  La prise en charge de ETO_IGNORELANGUAGE est déroutante.
Solution :  Nettoyer la prise en compte de ETO_IGNORELANGUAGE. (Glenn Maynard)
Fichiers :  src/gui_w32.c

Rustine 6.1.301 (extra)
Problème :  La traduction française du dialogue d'enregistrement des fichiers
	    n'affiche pas le nom du fichier.
Solution :  Insérer une étoile dans la chaîne printf. (Francois Terrot)
Fichiers :  src/po/fr.po

Rustine 6.1.302
Problème :  Le comptage des lignes de la zone Visuel est incorrecte pour les
	    replis fermés. (Mikolaj Machowski)
Solution :  Corriger le début et la fin du repli fermé.
Fichiers :  src/normal.c

Rustine 6.1.303 (extra)
Problème :  Le texte Haut/Bas/Tout ne tient pas toujours dans la règle quand
	    il est traduit en japonais. Problème avec les caractères plus
	    larges quand ils sont dans une police grasse.
Solution :  Utiliser ETO_PDY pour spécifier la largeur de chaque caractère.
	    (Yasuhiro Matsumoto)
Fichiers :  src/gui_w32.c

Rustine 6.1.304 (extra, basée sur 6.1.292)
Problème :  Win32 : Postscript est toujours activé dans le Makefile MinGW.
	    "pathdef.c" n'est pas généré correctement par "Make_bc5.mak".
	    (Yasuhiro Matsumoto)
Solution :  Remplacer un #ifdef par un #ifeq. (Madoka Machitani)
	    Utiliser la redirection du `make` de Borland pour générer
	    "pathdef.c". (Maurice Barnum)
Fichiers :  src/Make_bc5.mak, src/Make_ming.mak

Rustine 6.1.305
Problème :  Quand 'verbose' vaut au moins 14, l'appel d'une fonction peut
	    provoquer la lecture de données non initialisées. (Walter Briscoe)
Solution :  Tester les fins-de-chaîne dans trunc_string().
Fichiers :  src/message.c

Rustine 6.1.306
Problème :  Le compilateur AIX VisualAge cc ne définit pas __STDC__.
Solution :  utiliser __EXTENDED__ comme __STDC__. (Jess Thrysoee)
Fichiers :  src/os_unix.h

Rustine 6.1.307
Problème :  Quand un caractère double-octets a un octet final invalide,
	    l'affichage est sali. (Yasuhiro Matsumoto)
Solution :  Afficher "XX" à la place du caractère fautif.
Fichiers :  src/screen.c

Rustine 6.1.308
Problème :  Impossible de réinitialiser le mode Visuel obtenu avec
	    visualmode().
Solution :  utiliser un argument optionnel avec visualmode(). (Charles
	    Campbell)
Fichiers :  runtime/doc/eval.txt, src/eval.c, src/normal.c,
	    src/structs.h

Rustine 6.1.309
Problème :  Le tutoriel ne sélectionne pas l'allemand quand la région
	    linguistique vaut "German_Germany.1252". (Joachim Hofmann)
Solution :  Tester la présence de "German" dans le nom de la région
	    linguistique. Tester aussi ".ge". Inclure les tutoriels allemand
	    et grec.
Fichiers :  runtime/tutor/tutor.de, runtime/tutor/tutor.vim,
	    runtime/tutor/tutor.gr, runtime/tutor/tutor.gr.cp737

Rustine 6.1.310 (basée sur 6.1.307)
Problème :  Tous les caractères double-octets sont représentés par "XX".
Solution :  utiliser ">= 32" à la place de "< 32".  (Yasuhiro Matsumoto)
Fichiers :  src/screen.c

Rustine 6.1.311 (extra)
Problème :  VMS : le chemin dans le titre de la fenêtre n'inclut pas les
	    séparateurs.
	    Le versionnage des fichiers ne fonctionne pas toujours avec Unix.
	    Plantages dûs à des débordements de mémoire dans l'IHM graphique.
	    Les fichiers ne sont pas toujours pris en charge avec le bon
	    chemin et la bonne casse.
Solution :  Corriger les problèmes. Supprimer les conversions inutiles des
	    noms de fichiers. (Zoltan Arpadffy)
Fichiers :  src/buffer.c, src/ex_cmds2.c, src/fileio.c, src/memline.c,
	    src/misc1.c, src/misc2.c, src/os_unix.c, src/os_vms.c, src/tag.c

Rustine 6.1.312
Problème :  Avec ":silent", le débogage est également silencieux.
Solution :  désactiver le silence à l'invite de débogage.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.313
Problème :  Lors d'un ":drop nomfich" alors que "nomfich" est ouvert dans une
	    autre fenêtre, il est également ouvert dans la fenêtre courante.
Solution :  Aller dans la fenêtre contenant "nomfich" à la place.
	    Ne pas redéfinir la liste des arguments quand un seul fichier est
	    déposé (":drop").
Fichiers :  runtime/doc/windows.txt, src/ex_cmds2.c, src/ex_cmds.c,
	    src/ex_docmd.c, src/proto/ex_cmds2.pro, src/proto/ex_docmd.pro

Rustine 6.1.314 (basée sur 6.1.126)
Problème :  Contre-oblique manquante dans le menu de syntaxe "Generic Config
	    file".
Solution :  Insérer la contre-oblique. (Zak Beck)
Fichiers :  runtime/makemenu.vim, runtime/synmenu.vim

Rustine 6.1.315 (extra)
Problème :  Un nom d'hôte très long peut aboutir à une chaîne incorrectement
	    terminée. L'échec de la récupération du nom de l'hôte peut donner
	    n'importe quoi. (Walter Briscoe)
Solution :  Ajouter un NUL à la fin du tampon du nom de l'hôte.
Fichiers :  src/os_mac.c, src/os_msdos.c, src/os_unix.c, src/os_win16.c,
	    src/os_win32.c

Rustine 6.1.316
Problème :  Lors d'une sortie avec ":wq" et qu'il existe des tampons cachés,
	    un avertissement pour un tampon modifié est émis après le dialogue
	    "file changed". (Ajit Thakkar)
Solution :  Mettre à jour le tampon d'horodatage à la sortie.
Fichiers :  src/fileio.c

Rustine 6.1.317
Problème :  La fermeture d'une fenêtre peut provoquer un positionnement
	    erroné des fenêtre restantes quand il se trouve un mélange de
	    partages horizontaux et verticaux. (Stefan Ingi Valdimarsson)
Solution :  Mettre à jour la taille des cadres avant de changer la position
	    des fenêtre.
Fichiers :  src/window.c

Rustine 6.1.318
Problème :  "auto/pathdef.c" peut contenir des délimiteurs erronés quand un
	    drapeau du compilateur en contient.
Solution :  Mettre une contre-oblique devant les délimiteurs dans les drapeaux
	    du compilateur. (Shinra Aida)
Fichiers :  src/Makefile

Rustine 6.1.319 (basée sur 6.1.276)
Problème :  L'utilisation de  "--remote +cmd fichier" n'exécute pas "cmd".
Solution :  Appeler inputrestore() dans la même ligne de commande que
	    inputsave(), sinon elle n'est jamais exécutée.
Fichiers :  src/main.c

Rustine 6.1.320 (basée sur 6.1.313)
Problème :  Lors d'un ":drop un\ fichier" est utilisé, le fichier "un\
	    fichier" est ouvert et la contre-oblique n'est pas supprimée.
	    (Taro Muraoka)
Solution :  Prendre correctement en charge les contre-obliques. Toujours fixer
	    la liste des arguments pour qu'elle reste simple.
Fichiers :  runtime/doc/windows.txt, src/ex_cmds.c

Rustine 6.1.321
Problème :  Quand 'mouse' contient 'n' mais pas 'v', il n'est pas possible de
	    passer en mode Visuel avec la souris.
Solution :  ne pas utiliser MOUSE_MAY_VIS quand 'v' n'est pas dans 'mouse'.
	    (Flemming Madsen)
Fichiers :  src/normal.c

Rustine 6.1.322 (extra, basée sur 6.1.315)
Problème :  Win32 : le nom d'hôte est toujours préfixé par "PC ".
Solution :  Ne pas insére "PC " avant le nom d'hôte.
Fichiers :  src/os_win32.c

Rustine 6.1.323
Problème :  ":registers" n'interrompt pas le listage lors d'un "q" à l'invite
	    Plus. (Hari Krishna Dara)
Solution :  Tester got_int et une éventuelle interruption.
Fichiers :  src/ops.c, src/proto/ops.pro

Rustine 6.1.324
Problème :  Plantage quand un séparateur vertical est déplacé à la souris
	    alors que <LeftMouse> est remappé pour sauter dans une autre
	    fenêtre.
Solution :  Passer le pointeur de la fenêtre à la fonction réalisant le
	    déplacement au lieu de toujours utiliser la fenêtre courante.
	    (Daniel Elstner)
	    Corriger le problème du déplacement qui change la fenêtre ayant le
	    focus.
Fichiers :  src/normal.c, src/proto/window.pro, src/ui.c, src/vim.h,
	    src/window.c

Rustine 6.1.325
Problème :  Maj-Tab n'est pas reconnu automatiquement dans un xterm.
Solution :  Ajouter <Esc>[Z comme code termcap. (Andrew Pimlott)
Fichiers :  src/term.c

Rustine 6.1.326
Problème :  L'utilisation d'un motif de recherche peut entraîner la lecture
	    de données non initialisées. (Yasuhiro Matsumoto)
Solution :  Initialiser les pointeurs à NULL.
Fichiers :  src/regexp.c

Rustine 6.1.327
Problème :  Lors de l'ouverture du fichier d'aide "mbyte.txt", les caractères
	    utf-8 ne sont pas lisibles, car le codage du fichier est forcé à
	    latin1.
Solution :  Vérifier d'abord le codage utf-8 dans les fichiers d'aide. (Daniel
	    Elstner)
Fichiers :  runtime/doc/mbyte.txt, src/fileio.c

Rustine 6.1.328
Problème :  Le prototype enc_canon_search() est manquant.
Solution :  Ajouter le prototype. (Walter Briscoe)
Fichiers :  src/mbyte.c

Rustine 6.1.329
Problème :  Lors de l'édition du fichier "a b c", le remplacement de "%" dans
	    ":Cmd %" ou ":next %" ne fonctionne pas correctement. (Hari
	    Krishna Dara)
Solution :  Toujours protéger les espaces lors de l'expansion de "%". Ne pas
	    scinder l'argument <f-args> dans une commande utilisateur quand un
	    seul argument est utilisé.
Fichiers :  src/ex_docmd.c

Rustine 6.1.330
Problème :  GTK+, Motif et Athena : les touches du pavé numérique produisent
	    le même code que les touches traditionnelles, ce qui empêche de
	    les mapper séparément.
Solution :  Utiliser des codes termcap différents pour le pavé numérique.
	    (Neil Bird)
Fichiers :  src/gui_gtk_x11.c, src/gui_x11.c

Rustine 6.1.331
Problème :  Lors de la traduction des fichiers de l'aide, "LOCAL ADDITIONS" ne
	    balise plus l'emplacement à partir duquel la liste des fichiers
	    d'aide des greffons est donnée.
Solution :  Ajouter un marqueur "local-additions" et l'utiliser pour trouver
	    le bon endroit.
Fichiers :  runtime/doc/help.txt, src/ex_cmds.c

Rustine 6.1.332 (extra)
Problème :  Win32 : le chargement dynamique de Perl ne fonctionne pas avec
	    Perl 5.8.
	    De même, Perl 5.8 ne fonctionne pas avec CygWin et MinGW.
Solution :  Ajuster les appels aux fonctions. (Taro Muraoka)
	    Ajuster les Makefiles CygWin et MinGW. (Dan Sharp)
Fichiers :  src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
	    src/if_perl.xs

Rustine 6.1.333 (extra)
Problème :  Win32 : Unicode n'est pas pris en charge par le presse-papiers.
	    Impossible de passer un octet NUL, il est converti en coupure de
	    ligne. (Bruce DeVisser)
Solution :  Supporter Unicode avec le presse-papiers. (Ron Aaron et Glenn
	    Maynard)
	    Pareil pour le copiage/collage des octets NUL.
Fichiers :  src/os_mswin.c, src/os_win16.c src/os_win32.c

Rustine 6.1.334 (extra, basée sur 6.1.303)
Problème :  Problèmes avec le dessin des caractères hébreux.
Solution :  N'utiliser ETO_PDY qu'avec MS-Windows NT et assimilés. (Yasuhiro
	    Matsumoto)
Fichiers :  src/gui_w32.c

Rustine 6.1.335 (extra)
Problème :  Un échec pour récupérer la position du curseur et la taille de la
	    fenêtre est ignoré.
Solution :  Supprimer un ";" après un "if". (Walter Briscoe)
Fichiers :  src/gui_w32.c

Rustine 6.1.336 (extra)
Problème :  Avertissement à l'utilisation des prototypes de la fonction
	    smsg().
Solution :  Définir HAVE_STDARG_H. (Walter Briscoe)
Fichiers :  src/os_win32.h

Rustine 6.1.337
Problème :  Lors de l'utilisation de "finish" en mode débogage dans la
	    fonction B() dans un ":call A(B())", Vim n'interrompt pas après la
	    fin de B().
Solution :  Augmenter debug_level pendant l'évaluation d'une fonction.
Fichiers :  src/ex_docmd.c

Rustine 6.1.338
Problème :  Lors de l'utilisation d'un menu qui recharge le fichier courant
	    depuis le mode Insertion, aucun avertissement indiquant que le
	    fichier est modifié n'est donné jusqu'à la sortie du mode
	    Insertion. (Srikanth Sankaran)
Solution :  Ajouter une vérification de need_check_timestamps dans la boucle
	    du mode Insertion.
Fichiers :  src/edit.c

Rustine 6.1.339
Problème :  Le complètement n'autorise pas "g:" dans ":let g:did_<Tab>".
	    (Benji Fisher)
Solution :  Retourner "g:var" pour les variables globales qui sont complétées.
	    (Flemming Madsen)
Fichiers :  src/eval.c

Rustine 6.1.340 (extra, basée sur 6.1.332)
Problème :  Win32 : impossible de compiler l'interface Perl avec `nmake`.
Solution :  Ne pas comparer le numéro de version en tant que chaîne mais en
	    tant que nombre. (Juergen Kraemer)
Fichiers :  src/Make_mvc.mak

Rustine 6.1.341
Problème :  En mode Insertion avec 'rightleft' activé, le curseur est dessiné
	    à la moitié d'un caractère à largeur double. Avec CTRL-R et CTRL-K
	    en mode Insertion, le '"' ou le '?' n'est pas affiché.
Solution :  Dessiner le curseur sur la cellule suivante. Afficher le '"' ou le
	    '?' sur la moitié droite du caractère à largeur double. (Yasuhiro
	    Matsumoto) Corriger le problème de l'annulation d'un digramme qui
	    ne rafraîchit pas correctement un caractère double-octets.
Fichiers :  src/edit.c, src/gui.c, src/mbyte.c

Rustine 6.1.342 (basée sur 6.1.341)
Problème :  Avec 'rightleft' activé, taper "c" sur un caractère à largeur
	    double provoque l'affichage du curseur une cellule sur la gauche.
Solution :  Dessiner le curseur dans la cellule suivante. (Yasuhiro Matsumoto)
Fichiers :  src/gui.c

Rustine 6.1.343 (basée sur 6.1.342)
Problème :  Impossible de compiler avec la fonctionnalité +multi_byte mais
	    sans +rightleft.
	    Impossible de compiler sans l'IHM graphique.
Solution :  Ajuster les #ifdef. (en partie par Nam SungHyun)
Fichiers :  src/gui.c, src/mbyte.c, src/ui.c

Rustine 6.1.344
Problème :  Lors d'un ":silent filetype", la sortie est toujours ajoutée dans
	    l'historique des messages. (Hari Krishna Dara)
Solution :  Ne pas ajouter de messages dans l'historique quand ":silent" est
	    utilisé.
Fichiers :  src/message.c

Rustine 6.1.345 (extra)
Problème :  Win32 : 'imdisable' ne fonctionne pas.
Solution :  Faire que 'imdisable' fonctionne. (Yasuhiro Matsumoto)
Fichiers :  src/gui_w32.c

Rustine 6.1.346
Problème :  La molette de la souris ne fait défiler que la fenêtre courante.
Solution :  Faire que la molette de la souris fasse défiler la fenêtre dans
	    laquelle se trouve le pointeur. (Daniel Elstner)
Fichiers :  src/edit.c, src/gui.c, src/normal.c, src/term.c

Rustine 6.1.347
Problème :  Lors de l'utilisation de Cscope pour lister les marqueurs
	    correspondants, le nombre listé est parfois différent de celui
	    qu'utilise Cscope. (Vihren Milev)
Solution :  N'utiliser qu'un seul tableau pour les marqueurs Cscope, ne pas
	    donner une plus grande priorité aux marqueurs du fichier courant.
Fichiers :  src/tag.c

Rustine 6.1.348
Problème :  Wildmode avec wildmenu : ":set wildmode=list,full", ":colorscheme
	    <tab>" donne "zellner" au lieu de la première entrée. (Anand
	    Hariharan)
Solution :  Ne pas appeler ExpandOne() dans globpath(). (Flemming Madsen)
Fichiers :  src/ex_getln.c

Rustine 6.1.349
Problème :  "vim --serverlist" alors qu'aucun serveur n'est lancé donne un
	    message d'erreur sans "\n".
	    "vim --serverlist" ne quitte pas quand le serveur n'est pas
	    joignable, Vim est démarré de manière inattendue. (Ricardo Signes)
Solution :  Ne pas retourner une erreur quand aucun serveur Vim n'est lancé.
	    Traiter les échecs de l'ouverture de l'affichage comme des erreurs
	    dans les fonctions remote*(). (Flemming Madsen)
Fichiers :  src/if_xcmdsrv.c, src/main.c

Rustine 6.1.350
Problème :  Lors de l'arrivée pour la première fois dans un tampon avec
	    ":bnext", l'utilisation d'une autocommande pour restaurer la
	    dernière position du curseur ne fonctionne pas. (Paolo Giarusso)
Solution :  Ne pas utiliser la dernière position connue du curseur de
	    l'instance courante de Vim si une autocommande a modifié cette
	    position.
Fichiers :  src/buffer.c

Rustine 6.1.351 (basée sur 6.1.349)
Problème :  Plantage quand Vim est lancé pour le première fois dans un serveur
	    X. (John McGowan)
Solution :  Ne pas appeler xFree() avec une chaîne fixe.
Fichiers :  src/if_xcmdsrv.c

Rustine 6.1.352 (extra, basée sur 6.1.345)
Problème :  Win32 : plantage quand 'imdisable' est activé dans le fichier
	    _vimrc.
Solution :  Ne pas appeler les fonctions de l'IME tant que "imm32.dll" n'est
	    pas chargée.
	    Ajouter des transtypages pour éviter des avertissements du
	    compilateur avec les arguments de ImmAssociateContext().
Fichiers :  src/gui_w32.c

Rustine 6.1.353 (extra, basée sur 6.1.334)
Problème :  Problèmes avec le dessin des caractères arabes.
Solution :  Ne pas utiliser ETO_PDY, utiliser du bourrage.
Fichiers :  src/gui_w32.c

Rustine 6.1.354 (extra, basée sur 6.1.333)
Problème :  MS-Windows 98 : Notepad ne parvient pas à coller du texte copié
	    dans Vim quand 'encoding' vaut "utf-8".
Solution :  Rendre CF_TEXT disponible dans le presse-papiers.
Fichiers :  src/os_mswin.c

Rustine 6.1.355
Problème :  '\n' dans une exprat ne correspond avec rien du tout dans une
	    chaîne.
Solution :  Faire correspondre '\n' avec le caractère saut-de-ligne.
Fichiers :  src/buffer.c, src/edit.c, src/eval.c, src/ex_cmds2.c,
	    src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/misc1.c,
	    src/option.c, src/os_mac.c, src/os_unix.c, src/quickfix.c,
	    src/regexp.c, src/search.c, src/syntax.c, src/tag.c, src/vim.h

Rustine 6.1.356 (extra, basée sur, euh, hum, de nombreuses autres)
Problème :  Avertissements du compilateur lors de l'utilisation de
	    convert_setup() et quelques autres petites choses.
Solution :  Ajouter des transtypages.
Fichiers :  src/mbyte.c, src/os_mswin.c, src/proto/os_win32.pro, src/os_win32.c

Rustine 6.1.357
Problème :  CR dans la fenêtre mise-au-point saute à l'erreur sous le curseur,
	    mais cela ne fonctionne pas en mode Insertion. (Srikanth Sankaran)
Solution :  Prendre CR en charge en mode Insertion dans la fenêtre
	    mise-au-point.
Fichiers :  src/edit.c

Rustine 6.1.358
Problème :  Le tutoriel ne choisit pas correctement une autre version de la
	    région linguistique.
Solution :  Insérer une commande ":let". (Yasuhiro Matsumoto)
Fichiers :  runtime/tutor/tutor.vim

Rustine 6.1.359 (extra)
Problème :  Mac Carbon : Vim n'obtient pas le focus quand il est lancé depuis
	    la ligne de commande. Plantage à l'utilisation de la barre de
	    défilement horizontale.
Solution :  Faire de Vim le frontProcess. Corriger le défilement. (Peter
	    Cucka)
Fichiers :  src/gui_mac.c

Rustine 6.1.360 (basée sur 6.1.341)
Problème :  En mode insertion, CTRL-K Echap salit un caractère multi-octets.
	    (Anders Helmersson)
Solution :  Mémoriser tous les octets d'un caractère lors de l'affichage d'un
	    caractère temporaire.
Fichiers :  src/edit.c, src/proto/screen.pro, src/screen.c

Rustine 6.1.361
Problème :  Impossible de sauter vers une marque de fichier avec ":'M".
Solution :  Autoriser un saut vers un autre fichier avec une marque dans une
	    adresse Ex quand elle est seule sur la ligne de commande.
Fichiers :  src/ex_docmd.c

Rustine 6.1.362
Problème :  tgetent() peut retourner zéro en cas de succès. tgetflag() peut
	    retourner -1 en cas d'erreur.
Solution :  Vérifier si tgetflag() retourne une valeur positive. Ajouter une
	    vérification autoconf pour tester la valeur retournée par
	    tgetent().
Fichiers :  src/auto/configure, src/config.h.in, src/configure.in, src/term.c

Rustine 6.1.363
Problème :  byte2line() peut retourne un nombre supérieur au nombre de lignes.
Solution :  Retourner -1 si le décalage est un octet au-delà de la fin.
Fichiers :  src/memline.c

Rustine 6.1.364
Problème :  Le fait que l'événement d'autocommande FileChangedShell n'est
	    jamais imbriqué rend difficile le rechargement d'un fichier d'une
	    manière conventionnelle.
Solution :  Autoriser l'imbrication des événements FileChangedShell mais pas
	    la possibilité qu'il se déclenche lui-même.
	    Éviter les autocommandes dans la fenêtre ligne-de-commande dans de
	    rares cas.
Fichiers :  src/ex_getln.c, src/fileio.c, src/window.c

Rustine 6.1.365 (basée sur 6.1.217)
Problème :  Placer un point d'arrêt dans un fichier sourcé ayant un nom de
	    fichier avec un chemin relatif ne fonctionne pas. (Servatius
	    Brandt)
Solution :  Développer le nom du fichier en un chemin complet.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.366
Problème :  Impossible d'utiliser Vim avec Netbeans.
Solution :  Ajouter l'interface Netbeans. Elle comprend le support des
	    symboles graphiques et des arguments "-fg" et "-bg" pour GTK+.
	    Ajouter l'option 'autochdir'. (Gordon Prieur, George Hernandez,
	    Dave Weatherford)
	    Permettre d'afficher à la fois un symbole avec un texte et un avec
	    la surbrillance de la ligne dans la même ligne.
	    Ajouter le support pour Agide, avec l'interface version 2.1.
	    Corriger le problème de la commande "*" qui, alors que 'iskeyword'
	    contient '?', ne fonctionne pas correctement sur les mots
	    contenant "?" (Bill McCarthy) : ne pas protéger "?" avec "\?" lors
	    d'une recherche vers l'avant.
Fichiers :  runtime/doc/Makefile, runtime/doc/netbeans.txt,
	    runtime/doc/options.txt, runtime/doc/various.txt,
	    src/Makefile, src/auto/configure, src/buffer.c, src/config.h.in,
	    src/config.mk.in, src/configure.in, src/edit.c, src/ex_cmds.c,
	    src/ex_docmd.c, src/feature.h, src/fileio.c, src/globals.h,
	    src/gui.c, src/gui_beval.c, src/gui_gtk_x11.c, src/gui_x11.c,
	    src/main.c, src/memline.c, src/misc1.c, src/misc2.c, src/move.c,
	    src/nbdebug.c, src/nbdebug.h, src/netbeans.c, src/normal.c,
	    src/ops.c, src/option.c, src/option.h, src/proto/buffer.pro,
	    src/proto/gui_beval.pro, src/proto/gui_gtk_x11.pro,
	    src/proto/gui_x11.pro, src/proto/misc2.pro,
	    src/proto/netbeans.pro, src/proto/normal.pro, src/proto/ui.pro,
	    src/proto.h, src/screen.c, src/structs.h, src/ui.c, src/undo.c,
	    src/vim.h, src/window.c, src/workshop.c

Rustine 6.1.367 (basée sur 6.1.365)
Problème :  Placer un point d'arrêt dans un fonction ne fonctionne pas. Avec
	    un fichier sourcé, cela ne fonctionne pas quand des liens
	    symboliques sont impliqués. (Servatius Brandt)
Solution :  Développer le nom du fichier comme le fait do_source(). Ne pas
	    préfixer le nom de la fonction avec le chemin.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.368
Problème :  Le complètement de ":map" n'inclut pas <silent> et <script>.
	    ":mkexrc" n'enregistre pas l'attribut <silent> des mappages.
Solution :  Ajouter "<silent>" à la commande de mappage quand c'est approprié.
	    (David Elstner)
	    Ajouter <silent> et <script> au complètement de la ligne de
	    commande.
Fichiers :  src/getchar.c

Rustine 6.1.369 (extra)
Problème :  VMS : Vim bloque quand il tente d'éditer un fichier en lecture
	    seule dans le terminal. Problèmes avec les noms de fichiers VMS et
	    le mode mise-au-point.
Solution :  Réécrire la lecture de bas-niveau. Supprimer le numéro de version
	    du fichier à plusieurs endroits. Corriger le plantage après la
	    rustine 6.1.362. Corriger le code de retour de system(). (Zoltan
	    Arpadffy, Tomas Stehlik)
Fichiers :  src/misc1.c, src/os_unix.c, src/os_vms.c, src/proto/os_vms.pro,
	    src/os_vms_conf.h, src/quickfix.c, src/ui.c

Rustine 6.1.370
Problème :  L'imbrication des #ifdef n'est pas très claire.
Solution :  Insérer des espaces pour indiquer les niveaux d'imbrication.
Fichiers :  src/os_unix.c

Rustine 6.1.371
Problème :  "%V" dans 'statusline' n'affiche pas "0-1" dans une ligne vide.
Solution :  Ajouter un à la colonne lors de la comparaison avec la colonne
	    virtuelle. (Andrew Pimlott)
Fichiers :  src/buffer.c

Rustine 6.1.372
Problème :  Avertissements du compilateur avec des int de 16 bits. (Walter
	    Briscoe)
Solution :  Changer les int en long.
Fichiers :  src/structs.h, src/syntax.c

Rustine 6.1.373
Problème :  L'en-tête par défaut pour l'impression n'est pas traduite.
Solution :  Ajouter _() autour des deux endroits où "Page" est utilisé. (Mike
	    Williams) Traduire la valeur par défaut des options 'titleold' et
	    'printheader'.
Fichiers :  src/ex_cmds2.c, src/option.c

Rustine 6.1.374 (extra)
Problème :  MS-Windows : impossible de compiler GvimExt avec MinGW et CygWin.
Solution :  Ajouter des Makefiles et des fichiers de ressources. (Rene de
	    Zwart)
	    Supporter CygWin. (Alejandro Lopez_Valencia)
Fichiers :  GvimExt/Make_cyg.mak, GvimExt/Make_ming.mak, GvimExt/Makefile,
	    GvimExt/gvimext_ming.def, GvimExt/gvimext_ming.rc

Rustine 6.1.375
Problème :  MS-Windows : ':!dir "%"' ne fonctionne pas avec un nom de fichier
	    contenant des espaces. (Xiangjiang Ma)
Solution :  Ne pas insérer de contre-obliques devant les espaces pour les
	    commandes shell.
Fichiers :  src/ex_docmd.c

Rustine 6.1.376
Problème :  "vim --version" et "vim --help" retourne un code de retour non
	    nul, ce qui est inhabituel. (Petesea)
Solution :  utiliser un code de retour nul.
Fichiers :  src/main.c

Rustine 6.1.377
Problème :  Impossible d'ajouter des mots à l'option 'lispwords'.
Solution :  Ajouter les drapeaux P_COMMA et P_NODUP. (Haakon Riiser)
Fichiers :  src/option.c

Rustine 6.1.378
Problème :  Quand deux commandes utilisateur locales à un tampon sont
	    ambiguës, une correspondance entière avec une commande utilisateur
	    globale n'est pas trouvée. (Hari Krishna Dara)
Solution :  Détecter cette situation et accepter la commande globale.
Fichiers :  src/ex_docmd.c

Rustine 6.1.379
Problème :  Linux avec un noyau 2.2 ne peut pas utiliser la pile alternative
	    en même temps que les threads, car cela déclenche des boucles
	    infinies.
Solution :  Ne pas utiliser la pile alternative dans cette situation.
Fichiers :  src/os_unix.c

Rustine 6.1.380
Problème :  Quand 'winminheight' est nul et que la fenêtre mise-au-point a une
	    hauteur nulle, y entrer ne la rend pas plus haute. (Christian J.
	    Robinson)
Solution :  S'assurer que la fenêtre fait au moins une ligne de haut.
Fichiers :  src/window.c

Rustine 6.1.381
Problème :  Quand BufWriteCmd est utilisé et qu'il laisse le tampon modifié,
	    la fenêtre peut tout de même être fermée. (Hari Krishna Dara)
Solution :  Retourner FAIL depuis buf_write() quand le tampon est encore
	    modifié après le déclenchement de l'autocommande BufWriteCmd.
Fichiers :  src/fileio.c

Rustine 6.1.382 (extra)
Problème :  IHM Win32 : le code vérifiant/fixant la taille et la position de
	    la fenêtre (par exemple quand la police est modifiée) ne
	    fonctionne pas correctement quand deux écrans sont utilisés.
	    (George Reilly)
Solution :  Prendre en compte le cas du double écran. (Helmut Stiegler)
Fichiers :  src/gui_w32.c

Rustine 6.1.383
Problème :  Le remplissage de la ligne d'état ne fonctionne pas correctement
	    avec les caractères multi-octets. (Nam SungHyun)
	    Aucun test de débordement de tampon n'est effectué.
Solution :  Distinguer correctement les caractères et les octets. Vérifier
	    correctement le débordement de tampon.
Fichiers :  src/buffer.c, src/ex_cmds2.c, src/proto/buffer.pro, src/screen.c

Rustine 6.1.384
Problème :  Il n'est pas possible de savoir si une rustine particulière a été
	    appliquée. (Lubomir Host)
Solution :  Permettre l'utilisation de has() pour vérifier si une rustine est
	    incluse.
Fichiers :  runtime/doc/eval.txt, src/eval.c, src/proto/version.pro,
	    src/version.c

Rustine 6.1.385 (basée sur 6.1.383)
Problème :  Impossible de compiler sans la fonctionnalité multi-octets.
Solution :  Déplacer un #ifdef.  (Christian J. Robinson)
Fichiers :  src/buffer.c

Rustine 6.1.386
Problème :  Marqueur en double lors d'un ":helptags".
Solution :  Faire la deuxième moitié de la migration d'une section dans un
	    autre fichier d'aide.
Fichiers :  runtime/tagsrch.txt

Rustine 6.1.387 (basée sur 6.1.373)
Problème :  Avertissement du compilateur à propos d'une conversion de type de
	    pointeur.
Solution :  Ajouter (char_u *).
Fichiers :  src/option.c

Rustine 6.1.388 (basée sur 6.1.384)
Problème :  Avertissement du compilateur à propos d'une conversion de type de
	    pointeur.
Solution :  Ajouter (char *). inclure has_patch() seulement quand il est
	    utilisé.
Fichiers :  src/eval.c, src/version.c

Rustine 6.1.389 (basée sur 6.1.366)
Problème :  L'évaluation par bulle ne fonctionne pas avec GTK+.
	    has("balloon_eval") ne fonctionne pas.
Solution :  Ajouter l'évaluation par bulle pour GTK+. Améliorer l'affichage
	    des symboles. (Daniel Elstner)
	    Faire que ":gui" démarre la connexion NetBeans et éviter
	    d'utiliser les fonctions NetBeans quand la connexion n'est pas
	    ouverte.
Fichiers :  src/Makefile, src/feature.h, src/gui.c, src/gui.h,
	    src/gui_beval.c, src/gui_beval.h, src/gui_gtk.c,
	    src/gui_gtk_x11.c, src/eval.c, src/memline.c, src/menu.c,
	    src/netbeans.c, src/proto/gui_beval.pro, src/proto/gui_gtk.pro,
	    src/structs.h, src/syntax.c, src/ui.c, src/workshop.c

Rustine 6.1.390 (basée sur 6.1.389)
Problème :  Il n'est pas possible de dire à Vim d'enregistrer puis de quitter
	    au travers de l'interface NetBeans. Il tente encore d'envoyer le
	    texte de la bulle d'évaluation après que la connexion est fermée.
	    Impossible d'utiliser des caractères Unicode pour les symboles
	    textuels.
Solution :  Ajouter les fonctions "saveAndExit" et "getModified". Vérifier si
	    la connexion est opérationnelle avant d'envoyer un événement
	    balloonText. Divers autres nettoyages.
	    Permettre n'importe quel caractère pour les symboles textuels.
	    (Daniel Elstner)
Fichiers :  runtime/doc/netbeans.txt, runtime/doc/sign.txt, src/ex_cmds.c,
	    src/netbeans.c, src/screen.c

Rustine 6.1.391
Problème :  Erreur ml_get() à l'utilisation de virtualedit. (Charles Campbell)
Solution :  Récupérer la ligne d'une fenêtre particulière, et non de la
	    fenêtre courante.
Fichiers :  src/charset.c

Rustine 6.1.392 (basée sur 6.1.383)
Problème :  La surbrillance dans la ligne d'état ('statusline') n'est pas au
	    bon endroit quand un élément est tronqué. (Zak Beck)
Solution :  Corriger le début des éléments de ligne d'état pour les éléments
	    tronqués.
Fichiers :  src/buffer.c

Rustine 6.1.393
Problème :  Quand il est compilé avec Python et les threads, Vim peut boucler
	    sans fin au détachement du terminal.
Solution :  Ajouter "-pthread" à $CFLAGS lors de l'utilisation de Python et de
	    GCC. (Daniel Elstner)
Fichiers :  src/auto/configure,, src/configure.in

Rustine 6.1.394 (basée sur 6.1.390)
Problème :  L'interface NetBeans ne reconnaît pas les noms des glyphes
	    multi-octets.
Solution :  Vérifier le nombre de cellules plutôt que le nombre d'octets pour
	    décider si le nom d'un glyphe est un nom de fichier ou non.
	    (Daniel Elstner)
Fichiers :  src/netbeans.c

Rustine 6.1.395 (extra, basée sur 6.1.369)
Problème :  VMS : OLD_VMS n'est jamais défini. Prototypes de fonctions
	    manquants.
Solution :  Définir OLD_VMS dans "Make_vms.mms". Ajouter vms_sys_status() dans
	    "os_vms.pro". (Zoltan Arpadffy)
Fichiers :  src/Make_vms.mms, src/proto/os_vms.pro

Rustine 6.1.396 (basée sur 6.1.330)
Problème :  Avertissements du compilateur à l'utilisation de enum.
Solution :  Ajouter un transtypage vers char_u.
Fichiers :  src/gui_gtk_x11.c, src/gui_x11.c

Rustine 6.1.397 (extra)
Problème :  Le programme d'installation peut utiliser un mauvais chemin pour
	    la commande `diff` si le répertoire d'installation contient un
	    espace.
Solution :  Utiliser des doubles-apostrophes autour du chemin quand c'est
	    nécessaire. (Alejandro Lopez-Valencia) Utiliser aussi des
	    doubles-apostrophes autour des arguments qui sont des noms de
	    fichiers.
Fichiers :  src/dosinst.c

Rustine 6.1.398
Problème :  Mémoriser le tampon typeahead pour le mode débogage pose des
	    problème à l'un des scripts de test. (Servatius Brandt)
Solution :  Ajouter la commande ":debuggreedy" pour éviter de mémoriser le
	    tampon typeahead.
Fichiers :  runtime/doc/repeat.txt, src/ex_cmds.h, src/ex_cmds2.c,
	    src/ex_docmd.c, src/proto/ex_cmds2.pro

Rustine 6.1.399
Problème :  Avertissement pour une variable non utilisée.
Solution :  Supprimer la variable two_or_more.
Fichiers :  src/ex_cmds.c

Rustine 6.1.400 (basée sur 6.1.381)
Problème :  Quand BufWriteCmd détruit un tampon, ce dernier est encore
	    accessible.
Solution :  Ne pas tenter d'accéder au tampon après qu'il a été détruit.
Fichiers :  src/fileio.c

Rustine 6.1.401 (extra)
Problème :  La compilation de la version Win16 avec Borland 5.01 ne fonctionne
	    pas. "make test" ne fonctionne pas avec "Make_dos.mak". (Walter
	    Briscoe)
Solution :  Diverses corrections dans le Makefile Win16. (Walter Briscoe)
	    Ne pas utiliser `deltree`. Utiliser `mkdir \tmp` au lieu de
	    `mkdir /tmp`.
Fichiers :  src/Make_w16.mak, src/testdir/Make_dos.mak

Rustine 6.1.402
Problème :  Lors de l'évaluation du nom d'une fonction entre accolades, les
	    erreurs ne sont pas gérées de manière cohérente.
Solution :  Accepter le résultat d'une expression entre accolades quand un
	    erreur s'est produite. Sauter l'évaluation de l'expression entre
	    les accolades quand le code est sauté. (Servatius Brandt)
Fichiers :  src/eval.c

Rustine 6.1.403 (extra)
Problème :  MS-Windows 16 bits : avertissements du compilateur.
Solution :  Ajouter des transtypages. (Walter Briscoe)
Fichiers :  src/ex_cmds2.c, src/gui_w48.c, src/os_mswin.c, src/os_win16.c,
	    src/syntax.c

Rustine 6.1.404 (extra)
Problème :  Divers petits problèmes.
Solution :  Correction des commentaires. Divers petits ajouts, ajustements de
	    l'indentation, suppression d'éléments inutilisés et corrections.
Fichiers :  Makefile, README.txt, runtime/menu.vim, runtime/vimrc_example.vim,
	    src/INSTALL, src/INSTALLole.txt, src/Make_bc5.mak,
	    src/Make_cyg.mak, src/Make_ming.mak, src/Makefile,
	    src/config.h.in, src/edit.c, src/eval.c, src/ex_cmds2.c,
	    src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/getchar.c,
	    src/gui.c, src/gui_gtk.c, src/gui_photon.c, src/if_cscope.c,
	    src/if_python.c, src/keymap.h, src/mark.c, src/mbyte.c,
	    src/message.c, src/misc1.c, src/misc2.c, src/normal.c,
	    src/option.c, src/os_os2_cfg.h, src/os_win32.c,
	    src/proto/getchar.pro, src/proto/message.pro,
	    src/proto/regexp.pro, src/screen.c, src/structs.h, src/syntax.c,
	    src/term.c, src/testdir/test15.in, src/testdir/test15.ok,
	    src/vim.rc, src/xxd/Make_cyg.mak, src/xxd/Makefile

Rustine 6.1.405
Problème :  Quelques fichiers manquent dans le Makefile principal.
Solution :  Ajouter les fichiers manquants.
Fichiers :  Makefile

Rustine 6.1.406 (basée sur 6.1.392)
Problème :  Quand un élément ne tient pas dans une ligne d'état, du texte
	    aléatoire apparaît. (Christian J. Robinson)
Solution :  Quand la place est suffisante pour le texte mais pas pour le "<",
	    tronquer la ligne d'état comme s'il n'y avait pas assez de place.
Fichiers :  src/buffer.c

Rustine 6.1.407
Problème :  ":set scrollbind | help" lie le défilement de la fenêtre d'aide.
	    (Andrew Pimlott)
Solution :  Réinitialiser 'scrollbind' lors de l'ouverture d'une fenêtre
	    d'aide.
Fichiers :  src/ex_cmds.c

Rustine 6.1.408
Problème :  Avec 'rightleft' activé, le caractère non imprimable 0x0c est
	    affiché ">c0<".
Solution :  Inverser le texte du caractère héxadécimal.
Fichiers :  src/screen.c

Rustine 6.1.409
Problème :  La génération des marqueurs de l'aide ne fonctionne pas avec
	    certaines régions linguistiques.
Solution :  Fixer LANG=C LC_ALL=C dans l'environnement pour `sort`. (Daniel
	    Elstner)
Fichiers :  runtime/doc/Makefile

Rustine 6.1.410 (basée sur 6.1.390)
Problème :  Erreur à l'édition des liens lors de la compilation avec
	    l'interface NetBeans, mais sans les symboles. (Malte Neumann)
Solution :  Ne pas redéfinir buf_signcount() quand les symboles ne sont pas
	    disponibles.
Fichiers :  src/buffer.c

Rustine 6.1.411
Problème :  Avec 'virtualedit' activé, la surbrillance d'un bloc Visuel
	    au-delà de la fin d'une ligne peut être fausse.
Solution :  Corriger la colonne virtuelle quand la fin de la ligne se trouve
	    avant la partie affichée de cette ligne. (Muraoka Taro) XXX ?
Fichiers :  src/screen.c

Rustine 6.1.412
Problème :  Lors du basculement des écrans du terminal alors que ":gui" est
	    utilisé pour démarrer l'IHM graphique, l'invite du shell peut
	    apparaître après une invite Appuyez-sur-entrée.
Solution :  Un saut-de-ligne était envoyé au terminal lors du lancement de
	    l'IHM graphique, entraînant l'invite Appuyez-sur-entrée...
Fichiers :  src/gui.c

Rustine 6.1.413
Problème :  Quand 'clipboard' contient "unnamed", "p" ne fonctionne pas
	    correctement en mode Visuel.
Solution :  Mémoriser le registre avant de l'écraser et mettre le texte dans
	    le presse-papiers après coup. (Muraoka Taro)
Fichiers :  src/normal.c, src/ops.c

Rustine 6.1.414 (extra, basée sur on 6.1.369)
Problème :  VMS : Vim est en attente active d'une saisie.
Solution :  Attendre un tout petit peu avant de récupérer un autre caractère.
	    (Zoltan Arpadffy)
Fichiers :  src/os_vms.c

Rustine 6.1.415
Problème :  Quand il existe un partage vertical et une fenêtre mise-au-point,
	    la réduction de la taille de la fenêtre Vim peut aboutir à une
	    disposition des fenêtres erronée et à un plantage.
Solution :  Quand la taille de la fenêtre est réduite et qu'il n'y a pas assez
	    de place pour 'winfixheight', fixer la hauteur de la fenêtre à la
	    plus grande hauteur, de façon à ce qu'il y ait une nouvelle
	    tentative quand 'winfixheight' n'est pas respecté. (Yasuhiro
	    Matsumoto)
Fichiers :  src/window.c

Rustine 6.1.416 (depends on 6.1.366)
Problème :  Avec l'interface NetBeans, il n'est pas possible de modifier une
	    ligne comportant un symbole.
Solution :  Respecter GUARDEDOFFSET pour les ID de symboles lors de la
	    vérification des zones verrouillées.
Fichiers :  src/netbeans.c

Rustine 6.1.417
Problème :  Les caractères multi-octets non imprimables ne sont pas
	    correctement pris en charge.
	    Les caractères multi-octets après 0xffff sont affichés comme étant
	    d'autres caractères.
Solution :  Prendre en compte les caractères multi-octets non imprimables.
	    Afficher les caractères après 0xffff avec une marque.
	    Reconnaître les mots UTF-16 et les marques d'encodage comme non
	    imprimables. (Daniel Elstner)
Fichiers :  src/charset.c, src/mbyte.c, src/screen.c

Rustine 6.1.418
Problème :  Le résultat de strftime() est conforme à la région linguistique
	    courante, il est nécessaire de le convertir selon 'encoding'.
Solution :  Obtenir la region linguistique courante et convertir l'argument de
	    strftime() en conséquence, puis faire la conversion inverse avec
	    le résultat. (Daniel Elstner)
Fichiers :  src/eval.c, src/ex_cmds.c, src/ex_cmds2.c, src/mbyte.c,
	    src/proto/mbyte.pro, src/option.c, src/os_mswin.c

Rustine 6.1.419
Problème :  Vim ne compile pas sur AIX 5.1.
Solution :  Ne pas définir _NO_PROTO sur ce système. (Uribarri)
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.420 (extra)
Problème :  convert_input() appelle STRLEN() pour rien.
	    La conversion de UCS-2 vers une page de codes compte les mots
	    plutôt que les octets.
Solution :  Supprimer l'appel STRLEN(). (Daniel Elstner)
	    Toujours utiliser le compte des octets pour string_convert().
Fichiers :  src/gui_w32.c, src/mbyte.c

Rustine 6.1.421 (extra, basée sur 6.1.354)
Problème :  MS-Windows 9x : lors du collage de texte depuis le presse-papiers,
	    l'encodage peut être faux.
Solution :  Convertir le texte en CF_TEXT vers la page de codes active. (Glenn
	    Maynard)
Fichiers :  src/os_mswin.c

Rustine 6.1.422
Problème :  Une erreur dans le .vimrc ne provoque pas d'invite
	    Appuyez-sur-entrée lors du basculement des écrans. (Neil Bird)
Solution :  Fixer aussi msg_didany quand un message est adressé directement au
	    terminal.
Fichiers :  src/message.c

Rustine 6.1.423
Problème :  Impossible de trouver du texte arbitraire dans l'aide.
Solution :  Ajout de la commande ":helpgrep".
Fichiers :  runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
	    src/proto/quickfix.pro, src/quickfix.c

Rustine 6.1.424 (extra)
Problème :  Win32 : gvim compilé avec VC++ 7.0 pour Windows 95 n'affiche pas
	    les éléments de menu.
Solution :  Définir $WINVER pour éviter qu'un élément supplémentaire ne soit
	    ajouté à MENUITEMINFO. (Muraoka Taro)
Fichiers :  src/Make_mvc.mak

Rustine 6.1.425
Problème :  ":helptags $VIMRUNTIME/doc" n'ajoute pas le marqueur "help-tags".
Solution :  Ajouter le marqueur "help-tags" spécifiquement pour ce répertoire.
Fichiers :  src/ex_cmds.c

Rustine 6.1.426
Problème :  "--remote-wait +cmd fich" attend indéfiniment. (Valery Kondakoff)
Solution :  Ne pas attendre que l'argument "+cmd" soit édité.
Fichiers :  src/main.c

Rustine 6.1.427
Problème :  Plusieurs messages d'erreur à propos des exprat ne sont pas
	    traduits.
Solution :  Utiliser _() de façon appropriée. (Muraoka Taro)
Fichiers :  src/regexp.c

Rustine 6.1.428
Problème :  FreeBSD : wait() peut bloquer quand la compilation inclut le
	    sypport de Python et qu'un script de démarrage fait un appel à
	    system().
Solution :  Utiliser waitpid() à la place de wait() et scruter toute les
	    10 ms, comme avec l'IHM graphique.
Fichiers :  src/os_unix.c

Rustine 6.1.429 (basée sur 6.1.390)
Problème :  Plantage lors de l'utilisation du greffon "showmarks.vim".
	    (Charles Campbell)
Solution :  Vérifier si sign_get_text() retourne un pointeur NULL.
Fichiers :  src/screen.c

Rustine 6.1.430
Problème :  En Lisp, les parenthèses protégées par des contre-obliques
	    devraient être ignorées avec "%". (Dorai)
Solution :  Sauter les parenthèses protégées.
Fichiers :  src/search.c

Rustine 6.1.431
Problème :  Les commandes de débogage finissent par rediriger du texte.
Solution :  Désactiver la redirection pendant la prise en charge des commandes
	    de débogage.
Fichiers :  src/ex_cmds2.c

Rustine 6.1.432 (basée sur 6.1.375)
Problème :  MS-Windows : ":make %:p" insère des contre-obliques
	    supplémentaires. (David Rennalls)
Solution :  Ne pas ajouter de contre-obliques, faire comme pour ":!cmd".
Fichiers :  src/ex_docmd.c

Rustine 6.1.433
Problème :  ":popup" ne fonctionne que pour Win32.
Solution :  Ajouter le support de ":popup" pour GTK+.  (Daniel Elstner)
Fichiers :  runtime/doc/gui.txt, src/ex_docmd.c, src/gui_gtk.c, src/menu.c,
	    src/proto/gui_gtk.pro

Rustine 6.1.434 (extra)
Problème :  Win32 : quand il existe plus de 32767 lignes, la barre de
	    défilement subit des erreurs d'arrondi.
Solution :  Faire qu'un clic sur la flèche défile d'une ligne. Déplacer le
	    code vers "gui_w48.c", il n'y a pratiquement aucune différence
	    entre les versions 16 et 32 bits. (Walter Briscoe)
Fichiers :  src/gui_w16.c, src/gui_w32.c, src/gui_w48.c

Rustine 6.1.435
Problème :  ":winsize x" redimensionne la fenêtre Vim à la taille minimale.
	    (Andrew Pimlott)
Solution :  Donner un message d'erreur pour de mauvais arguments avec les
	    commandes ":winsize" et ":winpos".
Fichiers :  src/ex_docmd.c

Rustine 6.1.436
Problème :  Quand un long fichier UTF-8 contient un octet invalide, il est
	    difficile de le trouver. (Ron Aaron)
Solution :  Ajouter le numéro de la ligne dans le message d'erreur.
Fichiers :  src/fileio.c

Rustine 6.1.437 (extra, basée sur 6.1.421)
Problème :  Des fonctions multi-octets sont utilisées alors qu'elles ne sont
	    pas disponibles.
Solution :  Mettre les conversions du presse-papiers entre #ifdef. (Vince
	    Negri)
	    Corriger une erreur de type de pointeur. (Walter Briscoe)
Fichiers :  src/os_mswin.c

Rustine 6.1.438
Problème :  Quand Perl supporte les threads, Vim ne parvient pas à utiliser
	    l'interface Perl.
Solution :  Ajouter une vérification dans `configure` et désactiver Perl quand
	    il ne fonctionne pas. (Aron Griffis)
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.1.439
Problème :  Netbeans : la fonction "create" ne crée pas vraiment de tampon,
	    les fonctions suivantes peuvent échouer.
Solution :  Créer un tampon sans nom quand "create" est invoqué. (Gordon
	    Prieur)
Fichiers :  runtime/doc/netbeans.txt, src/netbeans.c

Rustine 6.1.440
Problème :  La commande "@*" ne récupère pas le contenu courant du
	    presse-papiers. (Hari Krishna Dara)
Solution :  Récupérer le texte du presse-papiers avant d'exécuter la commande.
Fichiers :  src/ops.c

Rustine 6.1.441
Problème :  "zj" et "zk" ne sont pas utilisables comme commandes de mouvement
	    après un opérateur. (Ralf Hetzel)
Solution :  Autoriser ces commandes en tant que mouvement.
Fichiers :  src/normal.c

Rustine 6.1.442
Problème :  Unicode 3.2 spécifie davantage de caractères d'espacement et de
	    ponctuation.
Solution :  Ajouter les nouveaux caractères aux tables Unicode. (Raphael
	    Finkel)
Fichiers :  src/mbyte.c

Rustine 6.1.443 (extra)
Problème :  Win32 : la compilation de "gvimext.dll" avec Borland 5.5 nécessite
	    une DLL supplémentaire.
Solution :  Compiler une version statique par défaut. (Dan Sharp)
Fichiers :  GvimExt/Make_bc5.mak

Rustine 6.1.444 (extra)
Problème :  Win32 : l'activation de la compilation avec gettext n'est pas
	    homogène.
Solution :  Utiliser "GETTEXT" dans les Makefiles Borland et MSVC. (Dan Sharp)
Fichiers :  src/Make_bc5.mak, src/Make_mvc.mak

Rustine 6.1.445 (extra)
Problème :  DJGPP : avertissement avec l'argument de putenv().
Solution :  Définir HAVE_PUTENV pour utiliser putenv() de DJGPP. (Walter
	    Briscoe)
Fichiers :  src/os_msdos.h

Rustine 6.1.446 (extra)
Problème :  Win32 : le Makefile MinGW utilise un style d'argument différent
	    des autres Makefiles.
	    L'IME dynamique n'est pas disponible avec CygWin.
Solution :  Utiliser des arguments de type "no" et "yes". Supprimer
	    l'utilisation du fichier inclus "dyn-ming.h". (Dan Sharp)
	    Ne pas inclure le fichier "ime.h" et ajuster le Makefile.
	    (Alejandro Lopez-Valencia)
Fichiers :  src/Make_cyg.mak, src/Make_ming.mak, src/gui_w32.c,
	    src/if_perl.xs, src/if_python.c, src/if_ruby.c, src/os_win32.c

Rustine 6.1.447
Problème :  "make install" utilise directement `make` pour générer les
	    marqueurs de l'aide.
Solution :  Utiliser $(MAKE) au lieu de "make". (Tim Mooney)
Fichiers :  src/Makefile

Rustine 6.1.448
Problème :  'titlestring' donne par défaut une longueur maximale de 50
	    caractères à chacun de ses éléments.
Solution :  Supprimer le maximum par défaut (pareil pour 'statusline').
Fichiers :  src/buffer.c

Rustine 6.1.449
Problème :  Quand 'formatoptions' contient '1' et 'a', la mise en forme
	    automatique déplace toujours les nouveaux caractères dans la ligne
	    suivante. (Servatius Brandt)
Solution :  Ne pas déplacer un caractère seul dans la ligne suivante quand il
	    vient d'être tapé.
Fichiers :  src/edit.c

Rustine 6.1.450
Problème :  L'entrée termcap "kB" (back-tab XXX) n'est pas reconnue.
Solution :  Utiliser back-tab en tant que code Maj-Tab.
Fichiers :  src/keymap.h, src/misc2.c, src/term.c

Rustine 6.1.451
Problème :  IHM graphique : quand le texte du dialogue Rechercher contient une
	    oblique, une contre-oblique est insérée lors de l'ouverture
	    suivante du dialogue. (Mezz)
Solution :  Supprimer les contre-obliques et les points d'interrogation
	    protégés. (Daniel Elstner)
Fichiers :  src/gui.c

Rustine 6.1.452 (extra, basée sur 6.1.446)
Problème :  Win32 : le support de l'IME ne fonctionne pas avec MSVC.
Solution :  Utiliser _MSC_VER au lieu de __MSVC. (Alejandro Lopez-Valencia)
Fichiers :  src/gui_w32.c

Rustine 6.1.453 (basée sur 6.1.429)
Problème :  Quand Vim est compilé avec le support des symboles, mais sans le
	    support des symboles graphiques, l'ajout d'un symbole peut
	    provoquer un plantage.
Solution :  Vérifier si un symbole textuel existe avant de l'utiliser. (Kamil
	    Burzynski)
Fichiers :  src/screen.c

Rustine 6.1.454 (extra)
Problème :  Win32 : coller du texte russe dans Vim avec 'enc' valant "cp1251"
	    aboutit à des octets UTF-8.  (Perelyubskiy)
	    La conversion de DBCS vers UCS2 ne fonctionne pas quand 'encoding'
	    n'est pas la page de codes active.
Solution :  Ajouter enc_codepage et l'utiliser pour la conversion vers
	    'encoding'. (Glenn Maynard)
	    Utiliser MultiByteToWideChar() et WideCharToMultiByte() au lieu de
	    iconv(). Cela devrait permettre la plupart des conversions
	    nécessaires sans "iconv.dll".
Fichiers :  src/globals.h, src/gui_w32.c, src/mbyte.c, src/os_mswin.c,
	    src/proto/mbyte.pro, src/proto/os_mswin.pro, src/structs.h

Rustine 6.1.455
Problème :  Certains caractères unicode peuvent avoir une ou deux cellules de
	    largeur.
Solution :  Ajouter l'option 'ambiwidth' précisant à Vim la manière d'afficher
	    ces caractères. (Jungshik Shin)
	    Réinitialiser l'ID de script quand une option est fixée à sa
	    valeur par défaut, afin que ":verbose set" ne donne pas une fausse
	    information.
Fichiers :  runtime/doc/options.txt, src/mbyte.c, src/option.c, src/option.h

Rustine 6.1.456 (extra, basée sur 6.1.454)
Problème :  Win32 : l'IME ne fonctionne pas.
Solution :  ImmGetCompositionStringW() retourne la taille en octets, pas en
	    mots. (Yasuhiro Matsumoto) Correction de problèmes de transtypage.
Fichiers :  src/gui_w32.c, src/os_mswin.c

Rustine 6.1.457
Problème :  Un registre vide dans le viminfo provoque l'échec de la
	    conversion.
Solution :  Ne pas convertir une chaîne vide. (Yasuhiro Matsumoto)
Fichiers :  src/ex_cmds.c, src/mbyte.c

Rustine 6.1.458
Problème :  Avertissement du compilation sur un pointeur.
Solution :  Ajouter un transtypage.
Fichiers :  src/ex_cmds.c

Rustine 6.1.459 (extra)
Problème :  Win32 : libcall() peut retourner un pointeur invalide et provoquer
	    un plantage de Vim.
Solution :  Ajouter une vérification sévère du pointeur retourné. (Bruce
	    Mellows)
Fichiers :  src/os_mswin.c

Rustine 6.1.460
Problème :  GTK+ : après avoir fait défiler le texte d'une ligne avec une
	    touche, cliquer sur la flèche de la barre de défilement ne
	    fonctionne pas toujours. (Nam SungHyun)
Solution :  Toujours mettre à jour le curseur de la barre de défilement quand
	    la valeur est modifiée, même s'il ne bouge pas, comme pour RISC
	    OS. (Daniel Elstner)
Fichiers :  src/gui.c, src/gui.h

Rustine 6.1.461
Problème :  Quand un codage clavier est actif, la saisie d'un caractère en
	    mode Sélection ne l'utilise pas. (Benji Fisher)
Solution :  Appliquer les mappages du mode Insertion aux caractères tapés en
	    mode Sélection.
Fichiers :  src/normal.c

Rustine 6.1.462
Problème :  Quand des autocommandes détruisent un tampon, un plantage peut
	    survenir. (Hari Krishna Dara)
Solution :  Ne pas décrémenter le compteur de fenêtre d'un tampon avant
	    d'appeler les autocommandes qui le concernent. Quand le tampon est
	    réutilisé, faire attention aux autocommandes modifiant le tampon
	    courant.
Fichiers :  src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro

Rustine 6.1.463
Problème :  Lors de l'écriture d'un fichier compressé, le nom de fichier que
	    `gzip` enregistre dans le fichier est le nom du fichier
	    temporaire. (David Rennalls)
Solution :  Utiliser le nom réel du fichier quand c'est possible.
Fichiers :  runtime/plugin/gzip.vim

Rustine 6.1.464
Problème :  Plantage lors de l'utilisation de la coloration syntaxique du C++.
	    (Gerhard Hochholzer)
Solution :  Tester les index négatifs.
Fichiers :  src/syntax.c

Rustine 6.1.465 (basée sur 6.1.454)
Problème :  Erreur de compilation avec CygWin.
Solution :  Changer #ifdef WIN32 en #ifdef WIN3264. (Alejandro Lopez-Valencia)
	    Ne plus définir WIN32 après l'inclusion de "windows.h".
Fichiers :  src/mbyte.c

Rustine 6.1.466
Problème :  L'argument "-f" est un peu obscur.
Solution :  Ajouter l'argument "--nofork". Améliorer un peu le texte de
	    l'aide.
Fichiers :  runtime/doc/starting.txt, src/main.c

Rustine 6.1.467
Problème :  Fixer le titre de la fenêtre ne fonctionne pas en chinois.
Solution :  Utiliser une fonction X11 pour convertir le texte chinois en un
	    propriété de type texte. (Kentaro Nakazawa)
Fichiers :  src/os_unix.c

Rustine 6.1.468
Problème :  ":mksession" mémorise également les replis des tampons qui ne
	    seront pas restaurés.
Solution :  Ne mémoriser les replis que pour les tampons dont 'buftype' est
	    vide et les fichier d'aide.
Fichiers :  src/ex_docmd.c

Rustine 6.1.469
Problème :  'listchars' cannot contain multi-byte characters.
Solution :  Handle multi-byte UTF-8 list characters. (Matthew Samsonoff)
Fichiers :  src/message.c, src/option.c, src/screen.c

Rustine 6.1.470 (lang)
Problème :  Les messages polonais ne s'affichent pas correctement avec
	    MS-Windows.
Solution :  Convertir les messages en cp1250. (Mikolaj Machowski)
	    Ajouter les traductions anglaise des messages, car XXX it got in
	    the way of the patch.
Fichiers :  Makefile, src/po/Makefile, src/po/en_gb.po, src/po/pl.po

Rustine 6.1.471
Problème :  La sortie de ":jumps" se poursuit après un appui sur "q" à
	    l'invite Plus. (Hari Krishna Dara)
Solution :  Vérifier si got_int a été positionné.
Fichiers :  src/mark.c

Rustine 6.1.472
Problème :  Quand une erreur d'authentification se produit lors de la
	    connexion au serveur X, Vim quitte.
Solution :  Utiliser XSetIOErrorHandler() pour intercepter l'erreur et
	    longjmp() pour éviter la sortie. Le faire également dans la boucle
	    principale, de façon à ce que Vim tournant dans une console ne
	    quitte pas quand le serveur X est coupé.
Fichiers :  src/globals.h, src/main.c, src/os_unix.c

Rustine 6.1.473
Problème :  Faire référence à $curwin ou $curbuf avec Perl 5.6 provoque un
	    plantage.
Solution :  Ajouter "pTHX_" à cur_val(). (Yasuhiro Matsumoto)
Fichiers :  src/if_perl.xs

Rustine 6.1.474
Problème :  Lors de l'ouverture d'une fenêtre ligne-de-cmd en mode Ex, il est
	    impossible de revenir en arrière. (Pavol Juhas)
Solution :  Réinitialiser "exmode_active" et le restaurer quand la fenêtre
	    ligne-de-cmd est fermée.
Fichiers :  src/ex_getln.c


Rustine 6.2f.001
Problème :  La vérification de `configure` pour Ruby ne fonctionne pas
	    correctement avec Ruby 1.8.0.
Solution :  Modifier la façon dont la vérification est faite. (Aron Griffis)
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.2f.002
Problème :  La sortie de ":ls" n'indique pas si un tampon a subi des erreurs
	    de lecture.
Solution :  Ajouter le drapeau 'x' dans la sortie de ":ls".
Fichiers :  runtime/doc/windows.txt, src/buffer.c

Rustine 6.2f.003
Problème :  "test49" ne teste pas correctement le comportement de ":catch"
	    sans argument.
Solution :  Mettre "test49" à jour. (Servatius Brandt)
Fichiers :  src/testdir/test49.ok, src/testdir/test49.vim

Rustine 6.2f.004
Problème :  "vim --version" utilise encore des CR/LF.
Solution :  Supprimer les CR.
Fichiers :  src/message.c, src/os_unix.c

Rustine 6.2f.005
Problème :  Deux messages d'erreur sans ":" après le numéro d'erreur.
Solution :  Ajouter les deux-points. (Taro Muraoka)
Fichiers :  src/if_cscope.c

Rustine 6.2f.006
Problème :  Quand l'enregistrement d'un fichier prend un certain temps et que
	    Vim récupère le focus, un avertissement "file changed outside of
	    Vim" peut survenir, ainsi que des erreurs ml_get(). (Mike
	    Williams)
Solution :  Ajouter le drapeau "b_saving" pour éviter de vérifier l'horodatage
	    alors qu'un tampon est en cours d'enregistrement. (Michael Schaap)
Fichiers :  src/fileio.c, src/structs.h

Rustine 6.2f.007
Problème :  Le compilateur Irix se plaint de symboles définis plusieurs fois.
	    vsnprintf() n'est pas disponible. (Charles Campbell)
Solution :  Ajouter EXTERN pour les variables de "globals.h". Modifier la
	    vérification de `configure` pour vsnprintf() pour passer de la
	    compilation à l'édition de liens.
Fichiers :  src/auto/configure, src/configure.in, src/globals.h

Rustine 6.2f.008
Problème :  La recette Aap ne fonctionne pas avec Aap 0.149.
Solution :  targetarg changé en TARGETARG. Mise à jour du fichier mysign.
Fichiers :  src/main.aap, src/mysign

Rustine 6.2f.009 (extra)
Problème :  Petit problème lors de la compilation avec Borland 5.01.
Solution :  utiliser mkdir() au lieu de _mkdir(). (Walter Briscoe)
Fichiers :  src/dosinst.h

Rustine 6.2f.010
Problème :  Avertissements pour des prototypes manquants.
Solution :  Ajouter les prototypes manquants. (Walter Briscoe)
Fichiers :  src/if_cscope.c

Rustine 6.2f.011
Problème :  Le script `configure` ne fonctionne pas avec autoconf 2.5x.
Solution :  Ajouter des crochets autour des vérifications de en-têtes. (Aron
	    Griffis)
	    NOTE : "touch src/auto/configure" après l'application de la
	    rustine.
Fichiers :  src/configure.in

Rustine 6.2f.012
Problème :  ":echoerr" ne fonctionne pas correctement dans un try/endtry.
Solution :  Ne pas réinitialiser did_emsg dans un try/endtry. (Servatius
	    Brandt)
Fichiers :  src/eval.c

Rustine 6.2f.013 (extra)
Problème :  Macintosh : avertissement du compilateur pour des trigrammes.
Solution :  Insérer une contre-oblique avant tous les points d'interrogation.
	    (Peter Cucka)
Fichiers :  src/os_mac.h

Rustine 6.2f.014 (extra)
Problème :  Macintosh : ex_eval n'est pas inclus dans le fichier projet.
Solution :  Ajouter ex_eval. (Dany St-Amant)
Fichiers :  src/os_mac.pbproj/project.pbxproj

Rustine 6.2f.015 (extra)
Problème :  Win32 : quand un fichier d'en-tête est modifié, tous les fichiers
	    concernés ne sont pas recompilés.
Solution :  Améliorer les règles de dépendances. (Dan Sharp)
Fichiers :  src/Make_cyg.mak, src/Make_ming.mak

Rustine 6.2f.016
Problème :  "vim --version > ff" sur des systèmes non Unix aboutit à un
	    fichier sans saut-de-ligne final. (Bill McCArthy)
Solution :  Ajouter un saut-de-ligne.
Fichiers :  src/main.c

Rustine 6.2f.017
Problème :  Unix : démarrer Vim en tâche de fond puis le passer au premier
	    plan peut poser des problèmes avec les réglages du terminal.
Solution :  Tester si tcsetattr() retourne une erreur, retenter si c'est le
	    cas. (Paul Tapper)
Fichiers :  src/os_unix.c

Rustine 6.2f.018
Problème :  Mac OS X 10.2 : OK est défini à zéro dans "curses.h" alors que Vim
	    utilise un. La redéfinition provoque un message d'avertissement.
Solution :  Supprimer la definition de OK avant de le définir à un. (Taro
	    Muraoka)
Fichiers :  src/vim.h

Rustine 6.2f.019
Problème :  Mac OS X 10.2 : COLOR_BLACK et COLOR_WHITE sont définis dans
	    "curses.h".
Solution :  Les renommer en PRCOLOR_BLACK et PRCOLOR_WHITE.
Fichiers :  src/ex_cmds2.c

Rustine 6.2f.020
Problème :  Win32 : "test50" produit un signal sonore et échoue avec certaines
	    versions de `diff`.
Solution :  Supprimer les lignes vides et convertir la sortie au format de
	    fichier dos.
Fichiers :  src/testdir/test50.in

Rustine 6.2f.021
Problème :  Exécuter `configure` avec "--enable-netbeans" désactive Netbeans.
	    (Gordon Prieur)
Solution :  Corriger les tests dans "configure.in" où la valeur par défaut est
	    d'activer une fonctionnalité. Corriger le "yes" pas très clair
	    rapporté par "--enable-acl".
Fichiers :  src/auto/configure, src/configure.in, src/mysign

Rustine 6.2f.022
Problème :  Une valeur fausse pour 'foldmarker' n'est pas rejetée, ce qui peut
	    provoquer un blocage. (Derek Wyatt)
Solution :  Tester les chaînes non vides avant et après une virgule.
Fichiers :  src/option.c

Rustine 6.2f.023
Problème :  Quand les fichiers d'aide ne sont pas dans $VIMRUNTIME mais que
	    'helpfile' est correct, Vim ne parvient pas à trouver les fichiers
	    de l'aide.
Solution :  Rechercher également le fichier de marqueurs dans le répertoire de
	    'helpfile'.
Fichiers :  src/tag.c

Rustine 6.2f.024
Problème :  Avec 'delcombine' activé, quand un caractère a plus de deux
	    caractères de composition, "x" les efface tous.
Solution :  N'effacer que le dernier caractère de composition.
Fichiers :  src/misc1.c

Rustine 6.2f.025
Problème :  Lors de la lecture d'un fichier sur l'entrée standard avec des
	    fins-de-ligne DOS mais sans fin-de-ligne finale, 'fileformat'
	    devient "unix". (Bill McCarthy)
Solution :  Ne pas ajouter le saut-de-ligne manquant lors de la relecture du
	    texte depuis le tampon.
Fichiers :  src/fileio.c

Rustine 6.2f.026
Problème :  Quand un nouveau texte est tapé dans la ligne de commande,
	    d'anciens caractères de composition peuvent être affichés.
Solution :  Ne pas lire des caractères de composition situés après la fin du
	    texte à afficher.
Fichiers :  src/ex_getln.c, src/mbyte.c, src/message.c, src/proto/mbyte.pro,
	    src/screen.c

Rustine 6.2f.027
Problème :  Avertissements du compilateur pour des pointeurs vers des chars
	    non signés. (Tony Leneis)
Solution :  Ajouter des transtypages aux pointeurs.
Fichiers :  src/quickfix.c

Rustine 6.2f.028
Problème :  GTK+ : quand 'imactivatekey' est vide et que XIM est inactif, il
	    n'est pas possible de le réactiver. Le curseur n'est pas modifié
	    immédiatement quand l'activation de XIM est modifiée. XIM en
	    japonais peut bloquer lors de l'utilisation de 'imactivatekey'.
	    Impossible d'activer XIM après les commandes fFtT ou ":sh".
Solution :  Positionner correctement le drapeau indiquant que l'IM est active.
	    Mettre le curseur à jour immédiatement. Ne pas envoyer un
	    événement indiquant que la touche est relachée. Gérer de manière
	    différente le mode Normal et l'exécution des commandes externes.
	    (Yasuhiro Matsumoto)
Fichiers :  src/mbyte.c

Rustine 6.2f.029
Problème :  Utilisation mélangée d'int et d'enum.
Solution :  Ajuster le type de l'argument de cs_usage_msg(). Corriger un
	    typedef erroné.
Fichiers :  src/if_cscope.c, src/if_cscope.h

Rustine 6.2f.030 (basée sur 6.2f.028)
Problème :  Le curseur est déplacé vers le haut lors de l'utilisation de XIM.
Solution :  Réinitialiser im_preedit_cursor. (Yasuhiro Matsumoto)
Fichiers :  src/mbyte.c

Rustine 6.2f.031
Problème :  Plantage lors de l'affichage des arguments d'une fonction en mode
	    débogage. (Ron Aaron)
Solution :  Initialiser le champ du nom de l'argument à NULL.
Fichiers :  src/eval.c

Rustine 6.2f.032
Problème :  Quand un écriture échoue avec un ":silent!" alors qu'elle a lieu à
	    l'intérieur d'un bloc try/endtry, les autocommandes BufWritePost
	    ne sont pas déclenchées.
Solution :  tester le drapeau emsg_silent dans should_abort(). (Servatius
	    Brandt)
Fichiers :  src/ex_eval.c, src/testdir/test49.ok, src/testdir/test49.vim

Rustine 6.2f.033
Problème :  Cscope : problème de réentrance avec la commande ":cscope". La
	    vérification pour les bases de données dupliquées ne fonctionne
	    pas bien sur Win95. Aucune vérification de bases dupliquées
	    effectuée après une chaîne vide.
Solution :  Ne pas positionner postponed_split trop tôt. Mémoriser d'abord
	    la base de données vide. (Sergey Khorev)
Fichiers :  src/if_cscope.c

Rustine 6.2f.034
Problème :  L'interface NetBeans n'est pas utilisable sur les systèmes
	    dépourvus de vsnprintf(). (Tony Leneis)
Solution :  Utiliser EMSG(), EMSGN() et EMSG2() à la place.
Fichiers :  src/auto/configure, src/configure.in, src/netbeans.c

Rustine 6.2f.035
Problème :  La vérification `configure` pour l'interface NetBeans ne
	    fonctionne pas quand les bibliothèques "socket" et "nsl" sont
	    requises.
Solution :  Vérifier les bibliothèques "socket" et "nsl" avant la vérification
	    pour NetBeans.
Fichiers :  src/auto/configure, src/configure.in

Rustine 6.2f.036
Problème :  Se déplacer vers la gauche sur du texte contenant un octet UTF-8
	    invalide déplace d'un octet au lieu d'un caractère.
Solution :  Ignorer un octet invalide après la position du curseur.
Fichiers :  src/mbyte.c

Rustine 6.2f.037
Problème :  Quand une commande NetBeans est reçue à l'invite Plus ou
	    Appuyez-sur-entrée, l'écran est rafraîchi mais Vim attend toujours
	    à l'invite.
Solution :  Quitter l'invite comme si CTRL-C était tapé.
Fichiers :  src/netbeans.c

Rustine 6.2f.038
Problème :  La dépendance pour exécuter `autoconf` provoque une modification
	    de "configure.in" lançant `autoconf`, même si le script
	    `configure` a aussi été mis à jour.
Solution :  Ne lancer `autoconf` qu'avec "make autoconf".
Fichiers :  src/Makefile

Rustine 6.2f.039
Problème :  CTRL-W K donne une très grande hauteur à la fenêtre du haut.
Solution :  Avec 'equalalways' activé, égaliser la hauteur des fenêtres.
Fichiers :  src/window.c

 vim:tw=78:ts=8:ft=help:norl: