]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
updated for version 7.0212
authorBram Moolenaar <Bram@vim.org>
Thu, 2 Mar 2006 22:49:12 +0000 (22:49 +0000)
committerBram Moolenaar <Bram@vim.org>
Thu, 2 Mar 2006 22:49:12 +0000 (22:49 +0000)
runtime/doc/eval.txt
runtime/doc/options.txt
runtime/doc/tags
runtime/doc/vim-fr.UTF-8.1
src/auto/configure
src/configure.in
src/edit.c
src/proto/spell.pro
src/testdir/test58.ok
src/version.h

index f628f225a88176b3790fb7dad806c88ab07d79cf..a35ebab6b9364e699034cf1383597ea14cbecb15 100644 (file)
@@ -1,4 +1,4 @@
-*eval.txt*      For Vim version 7.0aa.  Last change: 2006 Feb 28
+*eval.txt*      For Vim version 7.0aa.  Last change: 2006 Mar 02
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1521,7 +1521,9 @@ count( {list}, {expr} [, {start} [, {ic}]])
                                Number   count how many {expr} are in {list}
 cscope_connection( [{num} , {dbpath} [, {prepend}]])
                                Number  checks existence of cscope connection
-cursor( {lnum}, {col})         Number  position cursor at {lnum}, {col}
+cursor( {lnum}, {col} [, {coladd}])
+                               Number  move cursor to {lnum}, {col}, {coladd}
+cursor( {list})                        Number  move cursor to position in {list}
 deepcopy( {expr})              any     make a full copy of {expr}
 delete( {fname})               Number  delete file {fname}
 did_filetype()                 Number  TRUE if FileType autocommand event used
@@ -1568,6 +1570,7 @@ getftype( {fname})                String  description of type of file {fname}
 getline( {lnum})               String  line {lnum} of current buffer
 getline( {lnum}, {end})                List    lines {lnum} to {end} of current buffer
 getloclist({nr})               List    list of location list items
+getpos( {expr})                        List    position of cursor, mark, etc.
 getqflist()                    List    list of quickfix items
 getreg( [{regname} [, 1]])     String  contents of register
 getregtype( [{regname}])       String  type of register
@@ -1929,6 +1932,8 @@ col({expr})       The result is a Number, which is the byte index of the column
                            number of characters in the cursor line plus one)
                    'x      position of mark x (if the mark is not set, 0 is
                            returned)
+               To get the line number use |col()|.  To get both use
+               |getpos()|.
                For the screen column position use |virtcol()|.
                Note that only marks in the current file can be used.
                Examples: >
@@ -2068,9 +2073,14 @@ cscope_connection([{num} , {dbpath} [, {prepend}]])
                cscope_connection(4, "out", "local")                    0
                cscope_connection(4, "cscope.out", "/usr/local")        1
 <
-cursor({lnum}, {col})                                  *cursor()*
+cursor({lnum}, {col} [, {off}])                                *cursor()*
+cursor({list})
                Positions the cursor at the column {col} in the line {lnum}.
                The first column is one.
+               When there is one argument {list} this is used as a |List|
+               with two or three items {lnum}, {col} and {off}.  This is
+               useful to move the cursor to a position obtained with
+               |getpos()|.
                Does not change the jumplist.
                If {lnum} is greater than the number of lines in the buffer,
                the cursor will be positioned at the last line in the buffer.
@@ -2079,6 +2089,9 @@ cursor({lnum}, {col})                                     *cursor()*
                the cursor will be positioned at the last character in the
                line.
                If {col} is zero, the cursor will stay in the current column.
+               When 'virtualedit' is used {off} specifies the offset in
+               screen columns from the start of the character.  E.g., a
+               position within a Tab or after the last character.
 
 
 deepcopy({expr}[, {noref}])                            *deepcopy()* *E698*
@@ -3229,6 +3242,8 @@ line({expr})      The result is a Number, which is the line number of the file
                    w0      first line visible in current window
                    w$      last line visible in current window
                Note that only marks in the current file can be used.
+               To get the column number use |col()|.  To get both use
+               |getpos()|.
                Examples: >
                        line(".")               line number of the cursor
                        line("'t")              line number of mark t
@@ -3372,7 +3387,10 @@ match({expr}, {pat}[, {start}[, {count}]])                       *match()*
                        :echo match("testing", "t", 2)
 <              result is "3".
                For a String, if {start} > 0 then it is like the string starts
-               {start} bytes later, thus "^" will match there.
+               {start} bytes later, thus "^" will match at {start}.  Except
+               when {count} is given, then it's like matches before the
+               {start} byte are ignored (this is a bit complicated to keep it
+               backwards compatible).
                For a String, if {start} < 0, it will be set to 0.  For a list
                the index is counted from the end.
                If {start} is out of range ({start} > strlen({expr}) for a
@@ -3383,6 +3401,8 @@ match({expr}, {pat}[, {start}[, {count}]])                        *match()*
                character further.  Thus this example results in 1: >
                        echo match("testing", "..", 0, 2)
 <              In a |List| the search continues in the next item.
+               Note that when {count} is added the way {start} works changes,
+               see above.
 
                See |pattern| for the patterns that are accepted.
                The 'ignorecase' option is used to set the ignore-caseness of
@@ -3489,6 +3509,19 @@ nr2char({expr})                                          *nr2char()*
                characters.  nr2char(0) is a real NUL and terminates the
                string, thus results in an empty string.
 
+                                                       *getpos()*
+getpos({expr}) The result is a |List| with three numbers: [lnum, col, off].
+               This is the file position given with {expr}.  For the accepted
+               positions see |line()|.
+               The "off" number is zero, unless 'virtualedit' is used.  Then
+               it is the offset in screen columns from the start of the
+               character.  E.g., a position within a Tab or after the last
+               character.
+               This can be used to save and restore the cursor position: >
+                       let save_cursor = getpos(".")
+                       MoveTheCursorAround
+                       call cursor(save_cursor)
+
 prevnonblank({lnum})                                   *prevnonblank()*
                Return the line number of the first line at or above {lnum}
                that is not blank.  Example: >
@@ -4616,6 +4649,10 @@ virtcol({expr})                                          *virtcol()*
                For the use of {expr} see |col()|.  Additionally you can use
                [lnum, col]: a |List| with the line and column number.  When
                "lnum" or "col" is out of range then virtcol() returns zero.
+               When 'virtualedit' is used it can be [lnum, col, off], where
+               "off" is the offset in screen columns from the start of the
+               character.  E.g., a position within a Tab or after the last
+               character.
                For the byte position use |col()|.
                When Virtual editing is active in the current mode, a position
                beyond the end of the line can be returned. |'virtualedit'|
index 9483f0d717965eaf275e6064161176200e91dac2..96292dc249c7a1e805d37518c5afb28f5e5d0759 100644 (file)
@@ -1,4 +1,4 @@
-*options.txt*  For Vim version 7.0aa.  Last change: 2006 Mar 01
+*options.txt*  For Vim version 7.0aa.  Last change: 2006 Mar 02
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1576,6 +1576,7 @@ A jump table for the options with a short description can be found at |Q_op|.
        u       scan the unloaded buffers that are in the buffer list
        U       scan the buffers that are not in the buffer list
        k       scan the files given with the 'dictionary' option
+       kspell  use the currently active spell checking |spell|
        k{dict} scan the file {dict}.  Several "k" flags can be given,
                patterns are valid too.  For example: >
                        :set cpt=k/usr/dict/*,k~/spanish
@@ -2085,6 +2086,8 @@ A jump table for the options with a short description can be found at |Q_op|.
        contain a list of words.  This can be one word per line, or several
        words per line, separated by non-keyword characters (white space is
        preferred).  Maximum line length is 510 bytes.
+       When this option is empty, or an entry "spell" is present, spell
+       checking is enabled the currently active spelling is used. |spell|
        To include a comma in a file name precede it with a backslash.  Spaces
        after a comma are ignored, otherwise spaces are included in the file
        name.  See |option-backslash| about using backslashes.
index 3f8df8c815c88060a0a3974e35f996756a3dc595..7c69055e63be1c4245ffe8bc19db317e7caaeee3 100644 (file)
@@ -5349,6 +5349,7 @@ getftime()        eval.txt        /*getftime()*
 getftype()     eval.txt        /*getftype()*
 getline()      eval.txt        /*getline()*
 getloclist()   eval.txt        /*getloclist()*
+getpos()       eval.txt        /*getpos()*
 getqflist()    eval.txt        /*getqflist()*
 getreg()       eval.txt        /*getreg()*
 getregtype()   eval.txt        /*getregtype()*
@@ -5475,7 +5476,6 @@ hebrew    hebrew.txt      /*hebrew*
 hebrew.txt     hebrew.txt      /*hebrew.txt*
 help   various.txt     /*help*
 help-context   help.txt        /*help-context*
-help-tags      tags    1
 help-translated        various.txt     /*help-translated*
 help-xterm-window      various.txt     /*help-xterm-window*
 help.txt       help.txt        /*help.txt*
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..64e3658d5a23ba770e203ef8705ab09f9c06b5ba 100644 (file)
@@ -0,0 +1,574 @@
+.\" Traduction Lundi 7 août 2000 par Richard Hitier
+.\" (richard.hitier@dial.oleane.com)
+.\" Mise à jour de la traduction par David Blanchet
+.\" (david.blanchet@free.fr) 2005-01-17
+.\"
+.TH VIM 1 "22 Février 2002"
+.SH NOM
+vim \- Vi IMproved, éditeur de texte pour programmeurs
+.SH SYNOPSIS
+.br
+.B vim
+[options] [fichier ...]
+.br
+.B vim
+[options] \-
+.br
+.B vim
+[options] \-t marqueur
+.br
+.B vim
+[options] \-q [fichiererreurs]
+.PP
+.br
+.B ex
+.br
+.B view
+.br
+.B gvim
+.B gview
+.B evim
+.B eview
+.br
+.B rvim
+.B rview
+.B rgvim
+.B rgview
+.SH DESCRIPTION
+.B Vim
+est un éditeur de texte proposant une compatibilité ascendante
+avec Vi. Il permet d'éditer n'importe quel type de texte brut.
+Il est particulièrement adapté pour l'édition des programmes.
+.PP
+Il comporte de nombreuses améliorations par rapport à Vi : annulation sur
+plusieurs niveaux, fenêtres et tampons multiples, coloration syntaxique,
+édition en ligne de commande, complètement des noms de fichiers, aide en
+ligne, sélection visuelle, etc.
+Voir ":help vi_diff.txt" pour un résumé des différences entre 
+.B Vim
+et Vi.
+.PP
+Pendant l'exécution de
+.B Vim
+\, une aide abondante est accessible au travers du système d'aide
+en ligne, grâce à la commande ":help".
+Voir la section AIDE EN LIGNE plus bas.
+.PP
+Le plus souvent
+.B Vim
+est démarré pour éditer un unique fichier avec la commande
+.PP
+       vim fichier
+.PP
+Plus généralement,
+.B Vim
+est lancé avec :
+.PP
+       vim [options] [listefichiers]
+.PP
+Si la listefichiers est omise, l'éditeur démarre avec un tampon vide.
+Autrement, l'une des quatre méthodes suivantes vous permettra de choisir
+un ou plusieurs fichiers à éditer.
+.TP 12
+fichier ...
+Une liste de noms de fichiers.
+Le premier sera le fichier courant et sera lu dans le tampon.
+Le curseur sera placé sur la première ligne du tampon.
+Vous pouvez passer aux autres fichiers avec la commande ":next".
+Pour éditer un fichier débutant par un tiret, faites précéder la
+liste de fichiers par "\-\-".
+.TP
+\-
+Le fichier à éditer est lu sur l'entrée standard (stdin). Les commandes sont
+lues depuis stderr, qui devrait être un terminal.
+.TP
+\-t {marqueur}
+Le fichier à éditer et la position initiale du curseur dépendent
+d'un "marqueur", qui est une sorte d'étiquette.
+{marqueur} est recherché dans le fichier des marqueurs, le fichier correspondant
+devient le fichier courant et la commande associée est exécutée.
+Principalement utile pour les programmes en C ; dans ce cas, {marqueur}
+peut être le nom d'une fonction.
+Au final, le fichier contenant cette fonction devient le fichier
+courant et le curseur est placé au début de la fonction.
+Voir ":help tag\-commands".
+.TP
+\-q [fichiererreurs]
+Démarre en mode Mise-au-point (QuickFix).
+Le fichier [fichiererreurs] est lu et la première erreur est affichée.
+Si [fichiererreurs] est omis, le nom du fichier est lu dans 
+l'option 'errorfile' ("AztecC.Err" par défaut sur Amiga, "errors.err" sur les
+autres systèmes).
+La commande ":cn" permet de sauter aux erreurs suivantes.
+Voir ":help quickfix".
+.PP
+.B Vim
+se comporte différemment selon le nom de la commande (l'exécutable peut
+cependant être le même fichier).
+.TP 10
+vim
+La façon "normale", le comportement par défaut.
+.TP
+ex
+Démarre en mode Ex.
+La commande ":vi" permet de passer en mode Normal.
+Ce mode est également accessible avec l'argument "\-e".
+.TP
+view
+Démarre en mode Lecture-Seule. Vous êtes protégé de l'écriture accidentelle
+des fichiers. Ce mode est également accessible avec l'argument "\-R".
+.TP
+gvim gview
+La version graphique.
+Ouvre une nouvelle fenêtre.
+Également accessible avec l'argument "\-g".
+.TP
+evim eview
+La version graphique en mode Débutant (easy).
+Ouvre une nouvelle fenêtre.
+Également accessible avec l'argument "\-y".
+.TP
+rvim rview rgvim rgview
+Comme ci-dessus, mais avec des restrictions. Il vous sera impossible de
+lancer des commandes du shell, ou de suspendre
+.B Vim.
+Également accessible avec l'argument "\-Z".
+.SH OPTIONS
+Les options peuvent être spécifiées dans n'importe quel ordre,
+avant ou après les noms de fichiers. Les options sans arguments
+peuvent être combinées après un unique tiret.
+.TP 12
++[num]
+Place le curseur sur la ligne "num" dans le premier fichier.
+Si "num" est omis, le curseur sera placé sur la dernière ligne.
+.TP
++/{motif}
+Place le curseur sur la première occurence de {motif} dans le premier fichier.
+Voir ":help search\-pattern" pour connaître les motifs de recherches
+disponibles.
+.TP
++{commande}
+.TP
+\-c {commande}
+Exécute {commande} après la lecture du premier fichier.
+{commande} est interprétée comme une commande Ex.
+Si la {commande} contient des espaces, elle doit être entourée
+de doubles-apostrophes (cela dépend du shell utilisé).
+Exemple: Vim "+set si" main.c
+.br
+Note : vous pouvez utiliser jusqu'à 10 commandes "+" ou "\-c".
+.TP
+\-S {fichier}
+Source {fichier} après la lecture du premier fichier.
+C'est équivalent à \-c "source {fichier}".
+{fichier} ne peut pas débuter par un '\-'.
+Si {fichier} est omis, "Session.vim" est utilisé (cela ne fonctionne que si
+\-S est le dernier argument).
+.TP
+\-\-cmd {commande}
+Comme "\-c", mais la commande est exécutée juste avant de traiter les fichiers
+vimrc.
+Vous pouvez utiliser jusqu'à 10 de ces commandes, indépendamment des
+commandes "\-c".
+.TP
+\-A
+Si
+.B Vim
+a été compilé avec le support de la fonctionnalité ARABIC pour l'édition de
+fichiers de droite à gauche et les claviers arabes, cette option lance
+.B Vim
+en mode Arabe, c.-à-d. que l'option 'arabic' est activée.
+Sinon, un message d'erreur est émis et
+.B Vim
+quitte.
+.TP
+\-b
+Mode Binaire.
+Active plusieurs options pour permettre l'édition
+d'un fichier binaire ou exécutable.
+.TP
+\-C
+Compatible. Active l'option 'compatible'.
+.B Vim
+se comportera alors quasiment comme Vi, même s'il existe un fichier .vimrc.
+.TP
+\-d
+Démarre en mode Diff.
+Deux ou trois noms de fichiers doivent être spécifiés.
+.B Vim
+ouvrira alors tous les fichiers et affichera leurs différences.
+Fonctionne comme vimdiff(1).
+.TP
+\-d {périph}
+Ouvre {périph} pour l'utiliser comme terminal.
+Uniquement sur Amiga.
+Exemple:
+"\-d con:20/30/600/150".
+.TP
+\-D
+Debogage. Passe en mode Débogage lors de l'exécution de la première commande
+d'un script.
+.TP
+\-e
+Démarre
+.B Vim
+en mode Ex, comme si l'exécutable s'appelait "ex".
+.TP
+\-E
+Démarre
+.B Vim
+en mode Ex amélioré, comme si l'exécutable "exim" avait été invoqué.
+.TP
+\-f
+Premier-plan (Foreground). Pour la version graphique,
+.B Vim
+ne forke pas et ne se détache pas du shell dans lequel il a été invoqué.
+Sur Amiga,
+.B Vim
+n'est pas relancé pour ouvrir une nouvelle fenêtre.
+Cette option est utile quand
+.B Vim
+est exécuté par un programme qui attend la fin de la session d'édition
+(par exemple mail).
+Sur Amiga, les commandes ":sh" et ":!" ne fonctionneront pas.
+.TP
+\-\-nofork
+Premier-plan (Foreground). Pour la version graphique,
+.B Vim
+ne forkera pas et ne se détachera pas du shell dans lequel il a été lancé.
+.TP
+\-F
+Si
+.B Vim
+a été compilé avec le support de la fonctionnalité FKMAP pour l'édition de
+fichiers de droite à gauche et les claviers farsi, cette option lance
+.B Vim
+en mode Farsi, c.-à-d. avec les options 'fkmap' et 'rightleft' activées.
+Sinon, un message d'erreur est émis et
+.B Vim
+quitte.
+.TP
+\-g
+Si
+.B Vim
+a été compilé avec le support de l'IHM graphique, cette option active
+l'IHM graphique. Si le support n'a pas été compilé, un message d'erreur
+est émis et
+.B Vim
+quitte.
+.TP
+\-h
+Donne une aide succinte sur les arguments et les options de la ligne de
+commande. Après cela, 
+.B Vim
+quitte.
+.TP
+\-H
+Si
+.B Vim
+a été compilé avec le support de la fonctionnalité RIGHTLEFT pour l'édition de
+fichiers de droite à gauche et les claviers hébreu, cette option lance
+.B Vim
+en mode Hebreu, c.-à-d. avec les options 'hkmap' et 'rightleft' activées.
+Sinon, un message d'erreur est émis et
+.B Vim
+quitte.
+.TP
+\-i {viminfo}
+Lorsque l'utilisation d'un fichier viminfo est activée, cette option indique
+le nom de fichier à utiliser à la place de "~/.viminfo" par défaut.
+Il est possible d'empêcher l'utilisation d'un fichier ".viminfo", en
+spécifiant le nom de fichier "NONE".
+.TP
+\-L
+Comme \-r.
+.TP
+\-l
+Mode Lisp.
+Active les options 'lisp' et 'showmatch'.
+.TP
+\-m
+Empêche la modification des fichiers.
+Désactive l'option 'write'.
+Vous pouvez toujours modifier le tampon, mais il vous sera impossible
+d'écrire le fichier.
+.TP
+\-M
+N'autorise aucune modification. les options 'modifiable' et 'write' sont
+desactivées, de sorte que les changements ne sont pas autorisés et que les
+fichiers ne peuvent pas être écrits. Note : ces options peuvent être activées
+pour autoriser les modifications.
+.TP
+\-N
+Mode Non-compatible. Désactive l'option 'compatible'.
+Cela améliorera le comportement de
+.B Vim
+\, mais il sera moins conforme à celui de Vi, même s'il n'existe aucun
+fichier ".vimrc".
+.TP
+\-n
+N'utilise pas de fichier d'échange (swapfile).
+Le recouvrement après un plantage sera impossible.
+Utile pour éditer un fichier sur un support très lent (disquette par ex.).
+Également activable avec ":set uc=0".
+Il est possible de l'annuler avec ":set uc=200".
+.TP
+\-nb
+Devient un serveur d'édition pour NetBeans. Consulter la documentation à ce
+sujet pour davantage de détails.
+.TP
+\-o[N]
+Ouvre N fenêtres les unes au-dessus des autres.
+Quand N est omis, ouvre une fenêtre pour chaque fichier.
+.TP
+\-O[N]
+Ouvre N fenêtres côte à côte.
+Quand N est omis, ouvre une fenêtre pour chaque fichier fichier.
+.TP
+\-R
+Mode Lecture-Seule.
+Active l'option 'readonly'.
+Vous pouvez toujours éditer le tampon, mais il vous sera impossible de
+d'écraser accidentellement un fichier.
+Si vous voulez écraser un fichier, ajoutez un point d'exclamation à la commande
+Ex, comme dans ":w!".
+L'option \-R impose l'option \-n (voir ci-dessus).
+L'option 'readonly' peut être désactivée avec ":set noro".
+Voir ":help 'readonly'".
+.TP
+\-r
+Donne la liste des fichiers d'échange, avec des informations pour les utiliser
+à des fins de recouvrement.
+.TP
+\-r {file}
+Mode Recouvrement.
+Utilise le fichier d'échange pour récouvrer d'une session d'édition plantée.
+Le fichier d'échange est un fichier avec le même nom que le fichier texte,
+suivi du suffixe ".swp".
+Voir ":help recovery".
+.TP
+\-s
+Mode Silencieux. Disponible uniquement quand
+.B Vim
+est lancé en tant que "ex" ou quand l'option "\-e" a été spécifiée avant
+l'option "\-s".
+.TP
+\-s {scriptEntrée}
+Lit le fichier de script {scriptEntrée}.
+Les caractères du fichier sont interprétés comme si vous les tapiez.
+La commande ":source! {scriptEntrée}" donne le même résultat.
+Si la fin du fichier est atteinte avant que l'éditeur quitte, les caractères
+suivants sont lus depuis le clavier.
+.TP
+\-T {terminal}
+Indique à
+.B Vim
+le nom du terminal utilisé.
+Cela n'est requis que lorsque la détection automatique échoue.
+Le {terminal} devrait être connu de
+.B Vim
+(intégré) ou défini dans le fichier termcap ou terminfo.
+.TP
+\-u {vimrc}
+Utilise les commandes du fichier {vimrc} pour les initialisations.
+Toutes les autres initialisations sont omises.
+À utiliser pour éditer un type de fichiers particulier.
+Cela permet aussi d'omettre toute initialisation en spécifiant le nom de
+fichier "NONE".
+Voir ":help initialization" dans Vim pour davantage de détails.
+.TP
+\-U {gvimrc}
+Utilise les commandes du fichier {gvimrc} pour l'initialisation de l'IHM
+graphique.
+Toutes les autres initialisations graphiques sont omises.
+Cela permet aussi d'omettre toute initialisation graphique en spécifiant le nom
+de fichier "NONE".
+Voir ":help gui\-init" dans Vim pour davantage de détails.
+.TP
+\-V[N]
+Mode Verbeux.
+Donne des messages à propos des fichiers sourcés, ainsi que sur la lecture
+et les écritures dans le fichier viminfo. le nombre optionnel N précise la
+valeur de l'option 'verbose' (10 par défaut).
+.TP
+\-v
+Démarre
+.B Vim
+en mode Vi, comme si l'exécutable s'appelait "vi". Cela n'a d'effet que si
+l'exécutable invoqué est "ex".
+.TP
+\-w {scriptSortie}
+Tous les caractères que vous tapez sont enregistrés dans le fichier
+{scriptSortie}, jusqu'à ce que vous quittiez
+.B Vim.
+C'est utile quand vous voulez créer un fichier de script à utiliser avec
+"vim \-s" ou ":source!".
+Si le fichier {scriptSortie} existe, les caractères sont ajoutés à la fin.
+.TP
+\-W {scriptSortie}
+Comme \-w, mais un fichier existant sera écrasé.
+.TP
+\-x
+Chiffre les fichiers lors de l'écriture. Une clé de chiffrement sera demandée.
+.TP
+\-X
+Ne se connecte pas au serveur X. Accélère le temps de démarrage dans un
+terminal, mais le titre de la fenêtre et le presse-papier seront inaccessibles.
+.TP
+\-y
+Démarre
+.B Vim
+en mode Débutant (easy), comme si l'exécutable s'appelait "evim" ou "eview".
+Donne à
+.B Vim
+un comportement plus proche des éditeurs « cliquez-tapez ».
+.TP
+\-Z
+Mode restreint. Fonctionne comme si l'exécutable commençait par la lettre 'r'.
+.TP
+\-\-
+Délimite la fin des options.
+Les arguments qui suivent seront considérés comme des noms de fichiers.
+Cela permet d'éditer des fichier débutant par un '\-'.
+.TP
+\-\-echo\-wid
+IHM graphique GTK uniquement : retourne la Window ID sur stdout.
+.TP
+\-\-help
+Donne un message d'aide et quitte, comme "\-h".
+.TP
+\-\-literal
+Prend les arguments de noms de fichiers littéralement, sans étendre les
+jokers. N'a aucun effet sur Unix, où le shell étend les jokers.
+.TP
+\-\-noplugin
+Ne charge pas les greffons. Implicite avec \-u NONE.
+.TP
+\-\-remote
+Se connecte à un serveur Vim et lui fait éditer les fichiers spécifiés dans
+le reste des arguments. Si aucun serveur n'est trouvé, un avertissement est
+émis et les fichiers sont édités dans le Vim courant.
+.TP
+\-\-remote\-expr {expr}
+Se connecte à un serveur Vim, y évalue {expr} et affiche le résultat sur la
+sortie standard (stdout).
+.TP
+\-\-remote\-send {touches}
+Se connecte à un serveur Vim et y envoie {touches}.
+.TP
+\-\-remote\-silent
+Comme \-\-remote, mais sans émettre d'avertissement si aucun serveur n'est
+trouvé.
+.TP
+\-\-remote\-wait
+Comme \-\-remote, mais Vim ne quitte pas tant que le fichier est en cours
+d'édition.
+.TP
+\-\-remote\-wait\-silent
+Comme \-\-remote\-wait, mais sans émettre d'avertissement si aucun serveur n'est
+trouvé.
+.TP
+\-\-serverlist
+Donne la liste des noms de tous les serveurs Vim disponibles.
+.TP
+\-\-servername {nom}
+Utilise {nom} pour le nom de serveur. Ce nom est donné au Vim courant, à moins
+qu'il ne soit utilisé avec un argument \-\-remote. Dans ce cas, il s'agit du nom
+du serveur auquel se connecter.
+.TP
+\-\-socketid {id}
+IHM graphique GTK+ uniquement : utilise le mécanisme GtkPlug pour faire
+fonctionner gvim dans une autre fenêtre.
+.TP
+\-\-version
+Affiche les informations sur la version puis quitte.
+.SH AIDE EN LIGNE
+Taper ":help" dans
+.B Vim
+pour commencer.
+Taper ":help sujet" pour obtenir de l'aide sur un sujet précis.
+Par exemple : ":help ZZ" pour consulter l'aide sur la commande "ZZ".
+Utiliser <Tab> et CTRL\-D pour compléter les sujets (":help
+cmdline\-completion").
+Des marqueurs sont inclus dans l'aide et vous permettent de sauter d'un endroit
+à un autre (comme des liens hypertextes, voir ":help").
+L'ensemble des fichiers de la documentation peut être consulté de cette
+façon, par exemple ":help syntax.txt".
+.SH FICHIERS
+.TP 15
+/usr/local/lib/vim/doc/*.txt
+Les fichiers de la documentation de
+.B Vim.
+Utiliser ":help doc\-file\-list" pour obtenir la liste complète.
+.TP
+/usr/local/lib/vim/doc/tags
+Le fichier des marqueurs utilisé pour trouver les informations dans les
+fichiers de la documentation.
+.TP
+/usr/local/lib/vim/syntax/syntax.vim
+Initialisation de la syntaxe pour l'ensemble du système.
+.TP
+/usr/local/lib/vim/syntax/*.vim
+Fichiers de syntaxe pour différents langages.
+.TP
+/usr/local/lib/vim/vimrc
+Initialisation de
+.B Vim
+pour l'ensemble du système.
+.TP
+/usr/local/lib/vim/gvimrc
+Initialisation de gvim pour l'ensemble du système.
+.TP
+/usr/local/lib/vim/optwin.vim
+Script utilisé pour la commande ":options", une manière pratique de consulter
+et de modifier les options.
+.TP
+/usr/local/lib/vim/menu.vim
+Initialisation des menus de gvim pour l'ensemble du système.
+.TP
+/usr/local/lib/vim/bugreport.vim
+Script pour générer un rapport de bogue. Voir ":help bugs".
+.TP
+/usr/local/lib/vim/filetype.vim
+Script pour détecter le type d'un fichier d'après son nom.
+Voir ":help 'filetype'".
+.TP
+/usr/local/lib/vim/scripts.vim
+Script pour détecter le type d'un fichier d'après son contenu.
+Voir ":help 'filetype'".
+.TP
+/usr/local/lib/vim/*.ps
+Fichiers utilisés pour l'impression PostScript.
+.PP
+Pour disposer d'informations récentes, consulter le site Internet de VIM :
+.br
+<URL:http://www.vim.org/>
+.SH VOIR AUSSI
+vimtutor(1)
+.SH AUTEUR
+La majeure partie de
+.B Vim
+a été écrite par Bram Moolenaar, avec l'aide de nombreux autres contributeurs.
+Voir ":help credits" dans
+.B Vim.
+.br
+.B Vim
+est basé sur Stevie, réalisé par Tim Thompson,
+Tony Andrews et G.R. (Fred) Walter.
+Toutefois, pratiquement rien du code original ne subsiste.
+.SH BOGUES
+Probablement.
+Voir ":help todo" pour consulter la liste des problèmes connus.
+.PP
+NOTE : Remarquez que bon nombre de points, qui pourraient être considérés comme
+des bugs par certains, sont en fait dus à une reproduction trop fidèle
+du comportement de Vi. Et si vous pensez que d'autres points sont des
+bugs "parce que Vi le fait différemment", vous devriez jeter un oeil
+attentif au fichier vi_diff.txt (ou taper ":help vi_diff.txt" dans Vim).
+Regardez aussi les options 'compatible' et 'coptions'.
+.SH TRADUCTION
+Cette page de manuel a été traduite par Richard Hitier.
+<richard.hitier@dial.oleane.com> 2000-08-07.
+.br
+Cette page de manuel a été mise à jour par David Blanchet.
+<david.blanchet@free.fr> 2005-01-17.
index c69dd9603eb674252659e10a99ce323888af2158..bad35701cfeb03de0b710c14feb5197d1ea88e3c 100755 (executable)
@@ -3399,9 +3399,6 @@ fi
     CFLAGS=`echo "$CFLAGS" | sed 's/-O[23456789]/-Oz/'`
   fi
 
-  CPPFLAGS="$CPPFLAGS $MAC_OSX_ARCH"
-  LDFLAGS="$LDFLAGS $MAC_OSX_ARCH"
-
 else
   echo "$as_me:$LINENO: result: no" >&5
 echo "${ECHO_T}no" >&6
index ea27abbd2b8bd32e055824cad3e409d1ed293f1c..1d622c2aa7de743c0c6b22fe5068aa32326ad899 100644 (file)
@@ -171,9 +171,6 @@ if test "`(uname) 2>/dev/null`" = Darwin; then
     CFLAGS=`echo "$CFLAGS" | sed 's/-O[[23456789]]/-Oz/'`
   fi
 
-  CPPFLAGS="$CPPFLAGS $MAC_OSX_ARCH"
-  LDFLAGS="$LDFLAGS $MAC_OSX_ARCH"
-
 else
   AC_MSG_RESULT(no)
 fi
index dcf19b5bf6edc0b998980a9921621544a8f5cd2b..98d287abf10596951e02d649e4f4ca0aaa400af5 100644 (file)
@@ -131,6 +131,7 @@ static void ins_compl_del_pum __ARGS((void));
 static int  pum_wanted __ARGS((void));
 static int  pum_two_or_more __ARGS((void));
 static void ins_compl_dictionaries __ARGS((char_u *dict, char_u *pat, int flags, int thesaurus));
+static void ins_compl_files __ARGS((int count, char_u **files, int thesaurus, int flags, regmatch_T *regmatch, char_u *buf, int *dir));
 static char_u *find_line_end __ARGS((char_u *ptr));
 static void ins_compl_free __ARGS((void));
 static void ins_compl_clear __ARGS((void));
@@ -1906,7 +1907,8 @@ ins_ctrl_x()
 has_compl_option(dict_opt)
     int            dict_opt;
 {
-    if (dict_opt ? (*curbuf->b_p_dict == NUL && *p_dict == NUL)
+    if (dict_opt ? (*curbuf->b_p_dict == NUL && *p_dict == NUL
+                                                       && !curwin->w_p_spell)
                 : (*curbuf->b_p_tsr == NUL && *p_tsr == NUL))
     {
        ctrl_x_mode = 0;
@@ -2504,28 +2506,42 @@ ins_compl_show_pum()
 #define DICT_EXACT     (2)     /* "dict" is the exact name of a file */
 
 /*
- * Add any identifiers that match the given pattern to the list of
- * completions.
+ * Add any identifiers that match the given pattern in the list of dictionary
+ * files "dict_start" to the list of completions.
  */
     static void
-ins_compl_dictionaries(dict, pat, flags, thesaurus)
-    char_u     *dict;
+ins_compl_dictionaries(dict_start, pat, flags, thesaurus)
+    char_u     *dict_start;
     char_u     *pat;
     int                flags;          /* DICT_FIRST and/or DICT_EXACT */
-    int                thesaurus;
+    int                thesaurus;      /* Thesaurus completion */
 {
+    char_u     *dict = dict_start;
     char_u     *ptr;
     char_u     *buf;
-    FILE       *fp;
     regmatch_T regmatch;
-    int                add_r;
     char_u     **files;
     int                count;
     int                i;
     int                save_p_scs;
     int                dir = compl_direction;
 
+    if (*dict == NUL)
+    {
+#ifdef FEAT_SYN_HL
+       /* When 'dictionary' is empty and spell checking is enabled use
+        * "spell". */
+       if (!thesaurus && curwin->w_p_spell)
+           dict = (char_u *)"spell";
+       else
+#endif
+           return;
+    }
+
     buf = alloc(LSIZE);
+    if (buf == NULL)
+       return;
+
     /* If 'infercase' is set, don't use 'smartcase' here */
     save_p_scs = p_scs;
     if (curbuf->b_p_inf)
@@ -2545,12 +2561,15 @@ ins_compl_dictionaries(dict, pat, flags, thesaurus)
        vim_free(ptr);
     }
     else
+    {
        regmatch.regprog = vim_regcomp(pat, p_magic ? RE_MAGIC : 0);
+       if (regmatch.regprog == NULL)
+           goto theend;
+    }
 
     /* ignore case depends on 'ignorecase', 'smartcase' and "pat" */
     regmatch.rm_ic = ignorecase(pat);
-    while (buf != NULL && regmatch.regprog != NULL && *dict != NUL
-                                           && !got_int && !compl_interrupted)
+    while (*dict != NUL && !got_int && !compl_interrupted)
     {
        /* copy one dictionary file name into buf */
        if (flags == DICT_EXACT)
@@ -2564,104 +2583,139 @@ ins_compl_dictionaries(dict, pat, flags, thesaurus)
             * backticks (for security, the 'dict' option may have been set in
             * a modeline). */
            copy_option_part(&dict, buf, LSIZE, ",");
-           if (vim_strchr(buf, '`') != NULL
+           if (!thesaurus && STRCMP(buf, "spell") == 0)
+               count = -1;
+           else if (vim_strchr(buf, '`') != NULL
                    || expand_wildcards(1, &buf, &count, &files,
                                                     EW_FILE|EW_SILENT) != OK)
                count = 0;
        }
 
-       for (i = 0; i < count && !got_int && !compl_interrupted; i++)
+       if (count == -1)
+       {
+           /* Skip "\<" in the pattern, we don't use it as a RE. */
+           if (pat[0] == '\\' && pat[1] == '<')
+               ptr = pat + 2;
+           else
+               ptr = pat;
+           spell_dump_compl(curbuf, ptr, regmatch.rm_ic, &dir, 0);
+       }
+       else
        {
-           fp = mch_fopen((char *)files[i], "r");  /* open dictionary file */
+           ins_compl_files(count, files, thesaurus, flags,
+                                                       &regmatch, buf, &dir);
            if (flags != DICT_EXACT)
-           {
-               vim_snprintf((char *)IObuff, IOSIZE,
+               FreeWild(count, files);
+       }
+       if (flags != 0)
+           break;
+    }
+
+theend:
+    p_scs = save_p_scs;
+    vim_free(regmatch.regprog);
+    vim_free(buf);
+}
+
+    static void
+ins_compl_files(count, files, thesaurus, flags, regmatch, buf, dir)
+    int                count;
+    char_u     **files;
+    int                thesaurus;
+    int                flags;
+    regmatch_T *regmatch;
+    char_u     *buf;
+    int                *dir;
+{
+    char_u     *ptr;
+    int                i;
+    FILE       *fp;
+    int                add_r;
+
+    for (i = 0; i < count && !got_int && !compl_interrupted; i++)
+    {
+       fp = mch_fopen((char *)files[i], "r");  /* open dictionary file */
+       if (flags != DICT_EXACT)
+       {
+           vim_snprintf((char *)IObuff, IOSIZE,
                              _("Scanning dictionary: %s"), (char *)files[i]);
-               msg_trunc_attr(IObuff, TRUE, hl_attr(HLF_R));
-           }
+           msg_trunc_attr(IObuff, TRUE, hl_attr(HLF_R));
+       }
 
-           if (fp != NULL)
+       if (fp != NULL)
+       {
+           /*
+            * Read dictionary file line by line.
+            * Check each line for a match.
+            */
+           while (!got_int && !compl_interrupted
+                                           && !vim_fgets(buf, LSIZE, fp))
            {
-               /*
-                * Read dictionary file line by line.
-                * Check each line for a match.
-                */
-               while (!got_int && !compl_interrupted
-                                               && !vim_fgets(buf, LSIZE, fp))
+               ptr = buf;
+               while (vim_regexec(regmatch, buf, (colnr_T)(ptr - buf)))
                {
-                   ptr = buf;
-                   while (vim_regexec(&regmatch, buf, (colnr_T)(ptr - buf)))
+                   ptr = regmatch->startp[0];
+                   if (ctrl_x_mode == CTRL_X_WHOLE_LINE)
+                       ptr = find_line_end(ptr);
+                   else
+                       ptr = find_word_end(ptr);
+                   add_r = ins_compl_add_infercase(regmatch->startp[0],
+                                         (int)(ptr - regmatch->startp[0]),
+                                         p_ic, files[i], *dir, 0);
+                   if (thesaurus)
                    {
-                       ptr = regmatch.startp[0];
-                       if (ctrl_x_mode == CTRL_X_WHOLE_LINE)
-                           ptr = find_line_end(ptr);
-                       else
-                           ptr = find_word_end(ptr);
-                       add_r = ins_compl_add_infercase(regmatch.startp[0],
-                                             (int)(ptr - regmatch.startp[0]),
-                                             p_ic, files[i], dir, 0);
-                       if (thesaurus)
+                       char_u *wstart;
+
+                       /*
+                        * Add the other matches on the line
+                        */
+                       while (!got_int)
                        {
-                           char_u *wstart;
+                           /* Find start of the next word.  Skip white
+                            * space and punctuation. */
+                           ptr = find_word_start(ptr);
+                           if (*ptr == NUL || *ptr == NL)
+                               break;
+                           wstart = ptr;
 
-                           /*
-                            * Add the other matches on the line
-                            */
-                           while (!got_int)
-                           {
-                               /* Find start of the next word.  Skip white
-                                * space and punctuation. */
-                               ptr = find_word_start(ptr);
-                               if (*ptr == NUL || *ptr == NL)
-                                   break;
-                               wstart = ptr;
-
-                               /* Find end of the word and add it. */
+                           /* Find end of the word and add it. */
 #ifdef FEAT_MBYTE
-                               if (has_mbyte)
-                                   /* Japanese words may have characters in
-                                    * different classes, only separate words
-                                    * with single-byte non-word characters. */
-                                   while (*ptr != NUL)
-                                   {
-                                       int l = (*mb_ptr2len)(ptr);
-
-                                       if (l < 2 && !vim_iswordc(*ptr))
-                                           break;
-                                       ptr += l;
-                                   }
-                               else
-#endif
-                                   ptr = find_word_end(ptr);
-                               add_r = ins_compl_add_infercase(wstart,
-                                       (int)(ptr - wstart),
-                                       p_ic, files[i], dir, 0);
-                           }
+                           if (has_mbyte)
+                               /* Japanese words may have characters in
+                                * different classes, only separate words
+                                * with single-byte non-word characters. */
+                               while (*ptr != NUL)
+                               {
+                                   int l = (*mb_ptr2len)(ptr);
+
+                                   if (l < 2 && !vim_iswordc(*ptr))
+                                       break;
+                                   ptr += l;
+                               }
+                           else
+#endif
+                               ptr = find_word_end(ptr);
+                           add_r = ins_compl_add_infercase(wstart,
+                                   (int)(ptr - wstart),
+                                   p_ic, files[i], *dir, 0);
                        }
-                       if (add_r == OK)
-                           /* if dir was BACKWARD then honor it just once */
-                           dir = FORWARD;
-                       else if (add_r == FAIL)
-                           break;
-                       /* avoid expensive call to vim_regexec() when at end
-                        * of line */
-                       if (*ptr == '\n' || got_int)
-                           break;
                    }
-                   line_breakcheck();
-                   ins_compl_check_keys(50);
+                   if (add_r == OK)
+                       /* if dir was BACKWARD then honor it just once */
+                       *dir = FORWARD;
+                   else if (add_r == FAIL)
+                       break;
+                   /* avoid expensive call to vim_regexec() when at end
+                    * of line */
+                   if (*ptr == '\n' || got_int)
+                       break;
                }
-               fclose(fp);
+               line_breakcheck();
+               ins_compl_check_keys(50);
            }
+           fclose(fp);
        }
-       if (flags != DICT_EXACT)
-           FreeWild(count, files);
-       if (flags)
-           break;
     }
-    p_scs = save_p_scs;
-    vim_free(regmatch.regprog);
-    vim_free(buf);
 }
 
 /*
@@ -3444,7 +3498,7 @@ ins_compl_get_exp(ini)
        case CTRL_X_DICTIONARY:
        case CTRL_X_THESAURUS:
            ins_compl_dictionaries(
-                   dict ? dict
+                   dict != NULL ? dict
                         : (type == CTRL_X_THESAURUS
                             ? (*curbuf->b_p_tsr == NUL
                                 ? p_tsr
@@ -3453,7 +3507,8 @@ ins_compl_get_exp(ini)
                                 ? p_dict
                                 : curbuf->b_p_dict)),
                            compl_pattern,
-                                dict ? dict_f : 0, type == CTRL_X_THESAURUS);
+                                dict != NULL ? dict_f
+                                              : 0, type == CTRL_X_THESAURUS);
            dict = NULL;
            break;
 
index 791ec240beea58563be63cbd79cf387e9d36eb44..16eb19d3249d04d558ed8ac4031f8a336c8f8459 100644 (file)
@@ -17,6 +17,7 @@ void ex_spellrepall __ARGS((exarg_T *eap));
 void spell_suggest_list __ARGS((garray_T *gap, char_u *word, int maxcount, int need_cap, int interactive));
 char_u *eval_soundfold __ARGS((char_u *word));
 void ex_spelldump __ARGS((exarg_T *eap));
+void spell_dump_compl __ARGS((buf_T *buf, char_u *pat, int ic, int *dir, int dumpflags_arg));
 char_u *spell_to_word_end __ARGS((char_u *start, buf_T *buf));
 int spell_word_start __ARGS((int startcol));
 void spell_expand_check_cap __ARGS((colnr_T col));
index b7ed0946698ecd75ec296993a498521aee3318bb..7419cde28f0a6896b91627a7fff9c102ccec40e8 100644 (file)
@@ -256,3 +256,16 @@ taillead
 ['tail lead', 'tail']
 leadprobar
 ['leadprebar', 'lead prebar', 'leadbar']
+
+test 8-8
+# file: Xtest.latin1.spl
+bar
+faabar
+foo
+-------
+bad
+['bar', 'foo']
+foobar
+['faabar', 'foo bar', 'bar']
+barfoo
+['bar foo', 'bar', 'foo']
index 7ebf483688ac9eca5c7bd0817eb312d795ec2957..9df191388f0db262f25b0d621e6f99ed6c7d96d5 100644 (file)
@@ -36,5 +36,5 @@
 #define VIM_VERSION_NODOT      "vim70aa"
 #define VIM_VERSION_SHORT      "7.0aa"
 #define VIM_VERSION_MEDIUM     "7.0aa ALPHA"
-#define VIM_VERSION_LONG       "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 1)"
-#define VIM_VERSION_LONG_DATE  "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 1, compiled "
+#define VIM_VERSION_LONG       "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 2)"
+#define VIM_VERSION_LONG_DATE  "VIM - Vi IMproved 7.0aa ALPHA (2006 Mar 2, compiled "