updated for version 7.0212

This commit is contained in:
Bram Moolenaar
2006-03-02 22:49:12 +00:00
parent c06ac34092
commit 0b23879827
10 changed files with 789 additions and 112 deletions

View 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'|

View 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.

View 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*

View 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.

3
src/auto/configure vendored
View File

@ -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

View 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

View 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,106 +2583,141 @@ 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)
{
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));
}
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))
{
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)
{
char_u *wstart;
/*
* 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. */
#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 (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);
}
fclose(fp);
}
/* 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);
}
if (flags != DICT_EXACT)
FreeWild(count, files);
if (flags)
else
{
ins_compl_files(count, files, thesaurus, flags,
&regmatch, buf, &dir);
if (flags != DICT_EXACT)
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));
}
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))
{
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)
{
char_u *wstart;
/*
* 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. */
#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 (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);
}
fclose(fp);
}
}
}
/*
* Find the start of the next word.
* Returns a pointer to the first char of the word. Also stops at a NUL.
@ -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;

View 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));

View 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']

View 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 "