0
0
mirror of https://github.com/vim/vim.git synced 2025-07-26 11:04:33 -04:00

updated for version 7.0066

This commit is contained in:
Bram Moolenaar 2005-04-15 21:13:42 +00:00
parent 402d2fea70
commit 13fcaaf195
57 changed files with 3891 additions and 191449 deletions

View File

@ -662,6 +662,8 @@ EXTRA = \
# generic language files # generic language files
LANG_GEN = \ LANG_GEN = \
README_lang.txt \ README_lang.txt \
runtime/doc/*-fr.1 \
runtime/doc/*-fr.UTF-8.1 \
runtime/doc/*-it.1 \ runtime/doc/*-it.1 \
runtime/doc/*-it.UTF-8.1 \ runtime/doc/*-it.UTF-8.1 \
runtime/doc/*-ru.1 \ runtime/doc/*-ru.1 \
@ -679,7 +681,9 @@ LANG_GEN = \
runtime/tutor/tutor.pl.* \ runtime/tutor/tutor.pl.* \
runtime/tutor/tutor.ru.* \ runtime/tutor/tutor.ru.* \
runtime/tutor/tutor.zh.* \ runtime/tutor/tutor.zh.* \
runtime/spell/en.spl \ runtime/spell/README.txt \
runtime/spell/en.latin1.spl \
runtime/spell/en.utf-8.spl \
# all files for lang archive # all files for lang archive
LANG_SRC = \ LANG_SRC = \

View File

@ -1,4 +1,4 @@
*arabic.txt* For Vim version 7.0aa. Last change: 2004 Jun 09 *arabic.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Nadim Shaikli VIM REFERENCE MANUAL by Nadim Shaikli
@ -24,7 +24,7 @@ Introduction
------------ ------------
Arabic is a rather demanding language in which a number of special Arabic is a rather demanding language in which a number of special
features are required. Characters are right-to-left oriented and features are required. Characters are right-to-left oriented and
ought to appear as such on the screen (ie. from right to left). ought to appear as such on the screen (i.e. from right to left).
Arabic also requires shaping of its characters, meaning the same Arabic also requires shaping of its characters, meaning the same
character has a different visual form based on its relative location character has a different visual form based on its relative location
within a word (initial, medial, final or stand-alone). Arabic also within a word (initial, medial, final or stand-alone). Arabic also
@ -107,8 +107,8 @@ o Setting the Arabic fonts
:set guifont=your_ARABIC_FONT :set guifont=your_ARABIC_FONT
< <
NOTE: the string 'your_ARABIC_FONT' is used to denote a complete NOTE: the string 'your_ARABIC_FONT' is used to denote a complete
font name akin to that used in linux/unix system. font name akin to that used in Linux/Unix systems.
(eg. -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1) (e.g. -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1)
You can append the 'guifont' set command to your .vimrc file You can append the 'guifont' set command to your .vimrc file
in order to get the same above noted results. In other words, in order to get the same above noted results. In other words,
@ -179,11 +179,11 @@ o Enable Arabic settings [short-cut]
If, on the other hand, you'd like to be verbose and explicit and If, on the other hand, you'd like to be verbose and explicit and
are opting not to use the 'arabic' short-cut command, here's what are opting not to use the 'arabic' short-cut command, here's what
is needed (ie. if you use ':set arabic' you can skip this section) - is needed (i.e. if you use ':set arabic' you can skip this section) -
+ Arabic Keymapping Activation + Arabic Keymapping Activation
To activate the Arabic keymap (ie. to remap your English/Latin To activate the Arabic keymap (i.e. to remap your English/Latin
keyboard to look-n-feel like a standard Arabic one), set the keyboard to look-n-feel like a standard Arabic one), set the
'keymap' command to "arabic". This is done by entering 'keymap' command to "arabic". This is done by entering
> >
@ -197,14 +197,14 @@ o Enable Arabic settings [short-cut]
default mapping (English), it is advised that users use the 'CTRL-^' default mapping (English), it is advised that users use the 'CTRL-^'
key press while in insert (or add/replace) mode. The command-line key press while in insert (or add/replace) mode. The command-line
will display your current mapping by displaying an "Arabic" string will display your current mapping by displaying an "Arabic" string
next to your insertion mode (eg. -- INSERT Arabic --) indicating next to your insertion mode (e.g. -- INSERT Arabic --) indicating
your current keymap. your current keymap.
+ Arabic deletion of a combined pair character + Arabic deletion of a combined pair character
By default VIM has the 'delcombine' option disabled. This option By default VIM has the 'delcombine' option disabled. This option
allows the deletion of ALEF in a LAM_ALEF (LAA) combined character allows the deletion of ALEF in a LAM_ALEF (LAA) combined character
and still retain the LAM (ie. it reverts to treating the combined and still retain the LAM (i.e. it reverts to treating the combined
character as its natural two characters form -- this also pertains character as its natural two characters form -- this also pertains
to harakat and their combined forms). You can enable this option to harakat and their combined forms). You can enable this option
by entering by entering
@ -227,7 +227,7 @@ o Enable Arabic settings [short-cut]
- While in Left-to-right mode, enter ':set rl' in the command line - While in Left-to-right mode, enter ':set rl' in the command line
('rl' is the abbreviation for rightleft). ('rl' is the abbreviation for rightleft).
- Put the ':set rl' line in your '.vimrc' file to start the VIM in - Put the ':set rl' line in your '.vimrc' file to start Vim in
right-to-left mode permanently. right-to-left mode permanently.
+ Arabic right-to-left command-line Mode + Arabic right-to-left command-line Mode
@ -295,7 +295,7 @@ Restrictions
------------ ------------
o VIM in its GUI form does not currently support Bi-directionality o VIM in its GUI form does not currently support Bi-directionality
(ie. the ability to see both Arabic and Latin intermixed within (i.e. the ability to see both Arabic and Latin intermixed within
the same line). the same line).
@ -304,7 +304,7 @@ Known Bugs
There is one known minor bug, There is one known minor bug,
1. If you insert a haraka (eg. Fatha (U+064E)) after a LAM (U+0644) 1. If you insert a haraka (e.g. Fatha (U+064E)) after a LAM (U+0644)
and then insert an ALEF (U+0627), the appropriate combining will and then insert an ALEF (U+0627), the appropriate combining will
not happen due to the sandwiched haraka resulting in something not happen due to the sandwiched haraka resulting in something
that will NOT be displayed correctly. that will NOT be displayed correctly.
@ -320,4 +320,3 @@ There is one known minor bug,
No other bugs are known to exist. No other bugs are known to exist.
vim:tw=78:ts=8:ft=help:norl: vim:tw=78:ts=8:ft=help:norl:

56
runtime/doc/evim-fr.1 Normal file
View File

@ -0,0 +1,56 @@
.TH EVIM 1 "16 février 2002 February 16"
.SH NAME
evim \- « Easy Vim », édite un fichier avec Vim sans utiliser les modes
.SH SYNOPSIS
.br
.B evim
[options] [fichier ...]
.br
.B eview
.SH DESCRIPTION
.B eVim
lance
.B Vim
et configure ses options afin qu'il se comporte comme un éditeur sans mode.
Cela reste Vim, mais vous pouvez l'utiliser comme un éditeur « cliquer-taper ».
Cela ressemble beaucoup à l'édition avec Notepad sur MS-Windows.
.B eVim
ne fonctionne qu'avec l'interface graphique, qui est nécessaire pour permettre
l'utilisation des menus et de la barre d'outils.
.PP
Il n'est utile qu'aux personnes qui ne parviennent vraiment pas à utiliser Vim
de façon traditionnelle. L'édition est alors bien moins efficace.
.PP
.B eview
fait la même chose, mais démarre Vim en mode Lecture-seule.
Cela revient à lancer evim \-R.
.PP
Voir vim(1) pour davantage d'informations sur Vim, les options, etc.
.PP
L'option 'insertmode' est activée pour permettre de taper directement du texte.
.br
Les mappages sont configurés pour que Copier et Coller fonctionnent avec les
raccourcis habituels de MS-Windows. CTRL-X coupe le texte, CTRL-C copie le
texte et CTRL-V colle le texte.
Vous pouvez utiliser CTRL-Q pour obtenir la fonction originale de CTRL-V.
.SH OPTIONS
Voir vim(1).
.SH FICHIERS
.TP 15
/usr/local/lib/vim/evim.vim
Le script chargé pour initialiser eVim.
.SH AUSSI CONNU SOUS
Également connu sous le nom « Vim pour gumbies » [N.D.T. : Flying Circus...].
Quand vous utilisez eVim, vous êtes censé prendre un mouchoir de poche,
faire un noeud à chaque coin et le porter sur votre tête.
.SH VOIR AUSSI
vim(1)
.SH AUTEUR
La majeure partie de
.B Vim
a été écrite par Bram Moolenaar, avec l'aide de nombreux autres contributeurs.
Voir le menu Aide/Remerciements ou ":help credits" dans
.B Vim.
.SH TRADUCTION
Cette page de manuel a été traduite David Blanchet.
<david.blanchet@free.fr> 2005-03-26.

View File

@ -1,4 +1,4 @@
*farsi.txt* For Vim version 7.0aa. Last change: 2004 Jun 16 *farsi.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
@ -54,7 +54,7 @@ o Farsi keymapping on the command line in reverse insert mode.
o Toggling between left-to-right and right-to-left via F8 function key. o Toggling between left-to-right and right-to-left via F8 function key.
o Toggling between Farsi ISIR-3342 standard encoding and VIM Farsi via F9 o Toggling between Farsi ISIR-3342 standard encoding and Vim Farsi via F9
function key. Since this makes sense only for the text written in function key. Since this makes sense only for the text written in
right-to-left mode, this function is also supported only in right-to-left right-to-left mode, this function is also supported only in right-to-left
mode. mode.
@ -110,13 +110,13 @@ o Installation of ASCII screen fonts (Unix/Linux)
o Installation of ASCII screen fonts (DOS) o Installation of ASCII screen fonts (DOS)
After system power on, prior to the first use of VIM, upload the Farsi After system power on, prior to the first use of Vim, upload the Farsi
fonts by executing the far-a01.com font uploading program. fonts by executing the far-a01.com font uploading program.
Usage Usage
----- -----
Prior to starting VIM, the environment in which VIM can run in Farsi mode, Prior to starting Vim, the environment in which Vim can run in Farsi mode,
must be set. In addition to installation of Farsi fonts, following points must be set. In addition to installation of Farsi fonts, following points
refer to some of the system environments, which you may need to set: refer to some of the system environments, which you may need to set:
Key code mapping, loading graphic card in ASCII screen mode, setting the IO Key code mapping, loading graphic card in ASCII screen mode, setting the IO
@ -124,26 +124,26 @@ driver in 8 bit clean mode ... .
o Setting the Farsi fonts o Setting the Farsi fonts
+ For VIM GUI set the 'guifont' to far-a01. This is done by entering + For Vim GUI set the 'guifont' to far-a01. This is done by entering
':set guifont=far-a01' in the VIM window. ':set guifont=far-a01' in the Vim window.
You can have 'guifont' set to far-a01 by VIM during the VIM startup You can have 'guifont' set to far-a01 by Vim during the Vim startup
by appending the ':set guifont=far-a01' into your .vimrc file by appending the ':set guifont=far-a01' into your .vimrc file
(in case of NT/95/98 platforms _vimrc). (in case of NT/95/98 platforms _vimrc).
Under the X Window environment, you can also start the VIM with Under the X Window environment, you can also start Vim with the
'-fn far-a01' option. '-fn far-a01' option.
+ For the VIM within a xterm, start a xterm with the Farsi fonts (e.g. + For Vim within a xterm, start a xterm with the Farsi fonts (e.g.
kterm -fn far-a01). Then start the VIM inside the kterm. kterm -fn far-a01). Then start Vim inside the kterm.
+ For VIM under DOS, prior to the first usage of VIM, upload the Farsi + For Vim under DOS, prior to the first usage of Vim, upload the Farsi
fonts by executing the far-a01.com fonts uploading program. fonts by executing the far-a01.com fonts uploading program.
o Farsi Keymapping Activation o Farsi Keymapping Activation
To activate the Farsi keymapping, set either 'altkeymap' or 'fkmap'. To activate the Farsi keymapping, set either 'altkeymap' or 'fkmap'.
This is done by entering ':set akm' or ':set fk' in the VIM window. This is done by entering ':set akm' or ':set fk' in the Vim window.
You can have 'altkeymap' or 'fkmap' set as default by appending ':set akm' You can have 'altkeymap' or 'fkmap' set as default by appending ':set akm'
or ':set fk' in your .vimrc file or _vimrc in case of NT/95/98 platforms. or ':set fk' in your .vimrc file or _vimrc in case of NT/95/98 platforms.
@ -152,24 +152,24 @@ o Farsi Keymapping Activation
o right-to-left Farsi Mode o right-to-left Farsi Mode
By default VIM starts in Left-to-right mode. Following are ways to change By default Vim starts in Left-to-right mode. Following are ways to change
the window orientation: the window orientation:
+ Start the VIM with -F option (e.g. vim -F ... ). + Start Vim with the -F option (e.g. vim -F ...).
+ Use F8 function key to toggle between left-to-right and right-to-left. + Use the F8 function key to toggle between left-to-right and right-to-left.
+ While in Left-to-right mode, enter 'set rl' in the command line ('rl' is + While in Left-to-right mode, enter 'set rl' in the command line ('rl' is
the abbreviation for rightleft). the abbreviation for rightleft).
+ Put the 'set rl' line in your '.vimrc' file to start the VIM in + Put the 'set rl' line in your '.vimrc' file to start Vim in
right-to-left mode permanently. right-to-left mode permanently.
Encoding Encoding
-------- --------
The letter encoding used is the VIM extended ISIR-3342 standard with a built The letter encoding used is the Vim extended ISIR-3342 standard with a built
in function to convert between VIM extended ISIR-3342 and ISIR-3342 standard. in function to convert between Vim extended ISIR-3342 and ISIR-3342 standard.
For document portability reasons, the letter encoding is kept the same across For document portability reasons, the letter encoding is kept the same across
different platforms (i.e. UNIX's, NT/95/98, MS DOS, ...). different platforms (i.e. UNIX's, NT/95/98, MS DOS, ...).
@ -187,7 +187,7 @@ o Keyboard
+ F8 - Toggles between left-to-right and right-to-left. + F8 - Toggles between left-to-right and right-to-left.
+ F9 - Toggles the encoding between ISIR-3342 standard and VIM extended + F9 - Toggles the encoding between ISIR-3342 standard and Vim extended
ISIR-3342 (supported only in right-to-left mode). ISIR-3342 (supported only in right-to-left mode).
+ Keyboard mapping is based on the Iranian ISIRI-2901 standard. + Keyboard mapping is based on the Iranian ISIRI-2901 standard.
@ -238,21 +238,21 @@ o While numbers are entered in Farsi mode, the redo buffer will be reset
(emptied). That is, you cannot redo the last changes (using '.') after (emptied). That is, you cannot redo the last changes (using '.') after
entering numbers. entering numbers.
o While in left-to-right and Farsi mode set, CTRL-R is not supported. o While in left-to-right mode and Farsi mode set, CTRL-R is not supported.
o While in right-to-left mode, the search on 'Latin' pattern does not work, o While in right-to-left mode, the search on 'Latin' pattern does not work,
except if you enter the Latin search pattern in reverse. except if you enter the Latin search pattern in reverse.
o In the command mode, there is no support for entering the numbers from left o In command mode there is no support for entering numbers from left
to right and also for the sake of the flexibility the keymapping logic is to right and also for the sake of flexibility the keymapping logic is
restricted. restricted.
o Under X Window environment, if you want to run the VIM within a xterm o Under the X Window environment, if you want to run Vim within a xterm
terminal emulator and Farsi mode set, you need to have an ANSI compatible terminal emulator and Farsi mode set, you need to have an ANSI compatible
xterm terminal emulator. This is because the letter codes above 128 decimal xterm terminal emulator. This is because the letter codes above 128 decimal
have certain meanings in the standard xterm terminal emulator. have certain meanings in the standard xterm terminal emulator.
Note: Under X Window environment, VIM GUI works fine in Farsi mode. Note: Under X Window environment, Vim GUI works fine in Farsi mode.
This eliminates the need of any xterm terminal emulator. This eliminates the need of any xterm terminal emulator.

View File

@ -1,4 +1,4 @@
*filetype.txt* For Vim version 7.0aa. Last change: 2004 Aug 31 *filetype.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*intro.txt* For Vim version 7.0aa. Last change: 2005 Feb 07 *intro.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*os_amiga.txt* For Vim version 7.0aa. Last change: 2004 Jun 28 *os_amiga.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*os_unix.txt* For Vim version 7.0aa. Last change: 2005 Mar 25 *os_unix.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -26,7 +26,7 @@ For executing external commands fork()/exec() is used when possible, otherwise
system() is used, which is a bit slower. The output of ":version" includes system() is used, which is a bit slower. The output of ":version" includes
|+fork| when fork()/exec() is used, |+system()| when system() is used. This |+fork| when fork()/exec() is used, |+system()| when system() is used. This
can be changed at compile time. can be changed at compile time.
(For forking of the GUI version see |gui-fork|). (For forking of the GUI version see |gui-fork|.)
Because terminal updating under Unix is often slow (e.g. serial line Because terminal updating under Unix is often slow (e.g. serial line
terminal, shell window in suntools), the 'showcmd' and 'ruler' options terminal, shell window in suntools), the 'showcmd' and 'ruler' options

View File

@ -1,4 +1,4 @@
*os_win32.txt* For Vim version 7.0aa. Last change: 2004 Aug 31 *os_win32.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by George Reilly VIM REFERENCE MANUAL by George Reilly
@ -312,7 +312,7 @@ A. The problem is that a 32-bit application (Vim) can't get notification from
includes a work-around for this, but you must set up your DOS commands to includes a work-around for this, but you must set up your DOS commands to
run in a window, not full-screen. Unfortunately the default when you run in a window, not full-screen. Unfortunately the default when you
install Windows is full-screen. To change this: install Windows is full-screen. To change this:
1) Start PIF editor (in the Main program group) 1) Start PIF editor (in the Main program group).
2) Open the file "_DEFAULT.PIF" in your Windows directory. 2) Open the file "_DEFAULT.PIF" in your Windows directory.
3) Changes the display option from "Full Screen" to "Windowed". 3) Changes the display option from "Full Screen" to "Windowed".
4) Save and exit. 4) Save and exit.

View File

@ -1,4 +1,4 @@
*pattern.txt* For Vim version 7.0aa. Last change: 2005 Mar 07 *pattern.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*pi_spec.txt* For Vim version 7.0aa. Last change: 2002 Oct 29 *pi_spec.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
by Gustavo Niemeyer ~ by Gustavo Niemeyer ~

View File

@ -1,4 +1,4 @@
*quickfix.txt* For Vim version 7.0aa. Last change: 2005 Mar 25 *quickfix.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -600,7 +600,7 @@ Basic items
column of the error, (1 <tab> == 1 character column)) column of the error, (1 <tab> == 1 character column))
%v virtual column number (finds a number representing %v virtual column number (finds a number representing
screen column of the error (1 <tab> == 8 screen screen column of the error (1 <tab> == 8 screen
columns) columns))
%t error type (finds a single character) %t error type (finds a single character)
%n error number (finds a number) %n error number (finds a number)
%m error message (finds a string) %m error message (finds a string)
@ -663,7 +663,7 @@ limitations.
Multi-line messages *errorformat-multi-line* Multi-line messages *errorformat-multi-line*
It is possible to read the output of programs that produce multi-line It is possible to read the output of programs that produce multi-line
messages, ie. error strings that consume more than one line. Possible messages, i.e. error strings that consume more than one line. Possible
prefixes are: prefixes are:
%E start of a multi-line error message %E start of a multi-line error message
%W start of a multi-line warning message %W start of a multi-line warning message
@ -766,7 +766,7 @@ information. See |errorformat-LaTeX| for an extended example.
Ignoring and using whole messages *efm-ignore* Ignoring and using whole messages *efm-ignore*
The codes '+' or '-' can be combined with the uppercase codes above; in that The codes '+' or '-' can be combined with the uppercase codes above; in that
case they have to precede the letter, eg. '%+A' or '%-G': case they have to precede the letter, e.g. '%+A' or '%-G':
%- do not include the matching multi-line in any output %- do not include the matching multi-line in any output
%+ include the whole matching line in the %m error string %+ include the whole matching line in the %m error string
@ -889,11 +889,11 @@ to directory before reading the makefile). It may be useful to use the switch
processing. processing.
Maintaining the correct directory is more complicated if you don't use Maintaining the correct directory is more complicated if you don't use
GNU-make. AIX-make for example doesn't print any information about its working GNU-make. AIX-make for example doesn't print any information about its
directory. Then you need to enhance the makefile. In the makefile of LessTif working directory. Then you need to enhance the makefile. In the makefile of
there is a command which echoes "Making {target} in {dir}". The special LessTif there is a command which echoes "Making {target} in {dir}". The
problem here is that it doesn't print informations on leaving the directory special problem here is that it doesn't print informations on leaving the
and that it doesn't print the absolute path. directory and that it doesn't print the absolute path.
To solve the problem with relative paths and missing "leave directory" To solve the problem with relative paths and missing "leave directory"
messages Vim uses following algorithm: messages Vim uses following algorithm:
@ -1019,7 +1019,7 @@ It should be easy to adopt the above LaTeX errorformat to any compiler output
consisting of multi-line errors. consisting of multi-line errors.
The commands can be placed in a |vimrc| file or some other Vim script file, The commands can be placed in a |vimrc| file or some other Vim script file,
eg. a script containing LaTeX related stuff which is loaded only when editing e.g. a script containing LaTeX related stuff which is loaded only when editing
LaTeX sources. LaTeX sources.
Make sure to copy all lines of the example (in the given order), afterwards Make sure to copy all lines of the example (in the given order), afterwards
remove the comment lines. For the '\' notation at the start of some lines see remove the comment lines. For the '\' notation at the start of some lines see

View File

@ -1,4 +1,4 @@
*quotes.txt* For Vim version 7.0aa. Last change: 2004 May 06 *quotes.txt* For Vim version 7.0aa. Last change: 2005 Apr 04
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -66,7 +66,7 @@ replace 'emacs' as the standard for top editors. (Bo Thide', Sweden)
I love and use VIM heavily too. (Larry Wall) I love and use VIM heavily too. (Larry Wall)
Vi is like a Ferrari, if you're a beginner, it handles like a bitch, but once Vi is like a Ferrari, if you're a beginner, it handles like a bitch, but once
you get the hang of it, its small, powerful and FAST! (Unknown) you get the hang of it, it's small, powerful and FAST! (Unknown)
VIM is like a new model Ferrari, and sounds like one too - "VIIIIIIMMM!" VIM is like a new model Ferrari, and sounds like one too - "VIIIIIIMMM!"
(Stephen Riehm, Germany) (Stephen Riehm, Germany)

View File

@ -1,4 +1,4 @@
*remote.txt* For Vim version 7.0aa. Last change: 2003 Nov 10 *remote.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -87,7 +87,7 @@ SERVER NAME
By default Vim will try to register the name under which it was invoked (gvim, By default Vim will try to register the name under which it was invoked (gvim,
egvim ...). This can be overridden with the --servername argument. If the egvim ...). This can be overridden with the --servername argument. If the
specified name is not available, a postfix is applied until a free name is specified name is not available, a postfix is applied until a free name is
encountered, ie. "gvim1" for the second invocation of gvim on a particular encountered, i.e. "gvim1" for the second invocation of gvim on a particular
X-server. The resulting name is available in the servername builtin variable X-server. The resulting name is available in the servername builtin variable
|v:servername|. The case of the server name is ignored, thus "gvim" and |v:servername|. The case of the server name is ignored, thus "gvim" and
"GVIM" are considered equal. "GVIM" are considered equal.
@ -121,7 +121,7 @@ wait for each of the files to have been edited. This uses the BufUnload
event, thus as soon as a file has been unloaded, Vim assumes you are done event, thus as soon as a file has been unloaded, Vim assumes you are done
editing it. editing it.
Note that the --remote and --remote-wait arguments will consume the rest of Note that the --remote and --remote-wait arguments will consume the rest of
the command line. Ie. all remaining arguments will be regarded as filenames. the command line. I.e. all remaining arguments will be regarded as filenames.
You can not put options there! You can not put options there!

View File

@ -1,4 +1,4 @@
*repeat.txt* For Vim version 7.0aa. Last change: 2005 Feb 28 *repeat.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*scroll.txt* For Vim version 7.0aa. Last change: 2005 Feb 10 *scroll.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -265,12 +265,12 @@ You can also use Alt and Ctrl modifiers.
This only works when Vim gets the scroll wheel events, of course. You can This only works when Vim gets the scroll wheel events, of course. You can
check if this works with the "xev" program. check if this works with the "xev" program.
When using Xfree86, the /etc/XF86Config file should have the correct entry for When using XFree86, the /etc/XF86Config file should have the correct entry for
your mouse. For FreeBSD, this entry works for a Logitech scrollmouse: > your mouse. For FreeBSD, this entry works for a Logitech scrollmouse: >
Protocol "MouseMan" Protocol "MouseMan"
Device "/dev/psm0" Device "/dev/psm0"
ZAxisMapping 4 5 ZAxisMapping 4 5
See the Xfree86 documentation for information. See the XFree86 documentation for information.
*xterm-mouse-wheel* *xterm-mouse-wheel*
To use the mouse wheel in a new xterm you only have to make the scroll wheel To use the mouse wheel in a new xterm you only have to make the scroll wheel

View File

@ -1,4 +1,4 @@
*spell.txt* For Vim version 7.0aa. Last change: 2005 Mar 22 *spell.txt* For Vim version 7.0aa. Last change: 2005 Apr 15
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -7,7 +7,8 @@
Spell checking *spell* Spell checking *spell*
1. Quick start |spell-quickstart| 1. Quick start |spell-quickstart|
X. Spell file format |spell-file-format| 2. Generating a spell file |spell-mkspell|
9. Spell file format |spell-file-format|
{Vi does not have any of these commands} {Vi does not have any of these commands}
@ -21,18 +22,29 @@ This command switches on spell checking: >
:setlocal spell spelllang=en_us :setlocal spell spelllang=en_us
This switches the 'spell' option on and specifies to check for US English. This switches on the 'spell' option and specifies to check for US English.
The words that are not recognized are highlighted with one of these: The words that are not recognized are highlighted with one of these:
SpellBad word not recognized SpellBad word not recognized
SpellRare rare word SpellRare rare word
SpellLocal wrong spelling for selected region SpellLocal wrong spelling for selected region
Vim only checks words for spelling, there is no grammar check.
To search for the next misspelled word:
*]s* *E756*
]s Move to next misspelled word after the cursor.
*[s*
[s Move to next misspelled word before the cursor.
DOESN'T WORK YET!
PERFORMANCE PERFORMANCE
Note that Vim does on-the-fly spellchecking. To make this work fast the Note that Vim does on-the-fly spellchecking. To make this work fast the
word list is loaded in memory. Thus this uses a lot of memory (2 Mbyte or word list is loaded in memory. Thus this uses a lot of memory (1 Mbyte or
more). There might also be a noticable delay when the word list is loaded, more). There might also be a noticable delay when the word list is loaded,
which happens when 'spelllang' is set. Each word list is only loaded once, which happens when 'spelllang' is set. Each word list is only loaded once,
they are not deleted when 'spelllang' is made empty. When 'encoding' is set they are not deleted when 'spelllang' is made empty. When 'encoding' is set
@ -52,34 +64,35 @@ comes in (at least) these variants:
Words that are not used in one region but are used in another region are Words that are not used in one region but are used in another region are
highlighted with SpellLocal. highlighted with SpellLocal.
Always use lowercase letters. Always use lowercase letters for the language and region names.
SPELL FILES SPELL FILES
Vim searches for spell files in the "spell" subdirectory of the directories in Vim searches for spell files in the "spell" subdirectory of the directories in
'runtimepath'. The name is: xx.yyy.spl, where: 'runtimepath'. The name is: LL-XXX.EEE.spl, where:
xx the language name LL the language name
yyy the value of 'encoding' -XXX optional addition
EEE the value of 'encoding'
Exception: Vim uses "latin1" when 'encoding' is "iso-8859-15". The euro sign Exception: Vim uses "latin1" when 'encoding' is "iso-8859-15". The euro sign
doesn't matter for spelling. doesn't matter for spelling.
Spelling for EBCDIC is currently not supported. Spelling for EBCDIC is currently not supported.
A spell file might not be available in the current 'encoding'. You may try A spell file might not be available in the current 'encoding'. See
using the "iconv" program to create one: > |spell-mkspell| about how to create a spell file. Converting a spell file
with "iconv" will NOT work.
iconv -f latin1 -t koi8-r de.latin1.spl >de.koi8-r.spl
However, if some characters cannot be presented in the target encoding this
will give wrong results.
If a spell file only uses ASCII characters the encoding can be omitted. This If a spell file only uses ASCII characters the encoding can be omitted. This
is useful for English: "en.spl" The file with encoding is checked first, thus is useful for English: "en.spl" The file with encoding is checked first, thus
you could have one with encoding that includes words with non-ASCII characters you could have one with encoding that includes words with non-ASCII characters
and use the ASCII file as a fall-back. and use the ASCII file as a fall-back.
*E758* *E759*
When loading a spell file Vim checks that it is properly formatted. If you
get an error the file may be truncated, modified or for another Vim version.
WORDS WORDS
@ -103,56 +116,143 @@ done:
Note that mixing @Spell and @NoSpell doesn't make sense. Note that mixing @Spell and @NoSpell doesn't make sense.
============================================================================== ==============================================================================
X. Spell file format *spell-file-format* 2. Generating a spell file *spell-mkspell*
*E751*
The spelling for a language is specified in file with a specific format. Vim uses a binary file format for spelling. This greatly speeds up loading
The first character of a line specifies what follows in the line: the word list and keeps it small.
line meaning ~ You can create a Vim spell file from the .aff and .dic files that Myspell
-xx[-yy]... words for region xx (and region yy, etc.) follow uses. Myspell is used by OpenOffice.org and Mozilla. You should be able to
<word> normal word find them here:
><word> rare word http://lingucomponent.openoffice.org/spell_dic.html
+<word> optional addition after a word
!<word> normal word, keep upper/lower case
!><word> rare word, keep upper/lower case
!+<word> optional word addition, keep upper/lower case
#<anything> comment
Empty lines are ignored. The word continues until the end of the line. Watch :mksp[ell] {outname} {inname} ... *:mksp* *:mkspell*
out for trailing white space! Generate spell file {outname}.spl from Myspell files
{inname}.aff and {inname}.dic.
Multiple {inname} arguments can be given to combine
regions into one Vim spell file. Example: >
:mkspell ~/.vim/spell/en /tmp/en_US /tmp/en_CA /tmp/en_AU
< This combines the English word lists for US, CA and AU
into one en.spl file.
Up to eight regions can be combined. *E754* *755*
Words that start with an upper-case letter will be required to start with an Since you might want to change the word list for use with Vim the following
upper-case letter. Otherwise, words must be in lower-case and case is procedure is recommended:
ignored.
It is possible that a word appears both with an upper-case letter and as a 1. Obtain the xx_YY.aff and xx_YY.dic files from Myspell.
rare word. This means that the word with an upper-case letter is OK and the 2. Make a copy of these files to xx_YY.orig.aff and xx_YY.orig.dic.
word without the upper-case letter is rare. 3. Change the xx_YY.aff and xx_YY.dic files to remove bad words, add missing
*E753* words, etc.
The region is specified with "-xx". For example, in the "en.spl" file "-us" 4. Use |:mkspell| to generate the Vim spell file and try it out.
starts the word for "en_us". This can be repeated for words that are used in
more than one region. For example "-ca-us" is used for Canadian and US
English words. Use "---" to go back to the words for all regions.
Vim supports up to eight regions. *E752* When the Myspell files are updated you can merge the differences:
5. Obtain the new Myspell files as xx_YY.new.aff and xx_UU.new.dic.
6. Use Vimdiff to see what changed: >
vimdiff xx_YY.orig.dic xx_YY.new.dic
7. Take over the changes you like in xx_YY.dic.
You may also need to change xx_YY.aff.
8. Rename xx_YY.new.dic to xx_YY.orig.dic and xx_YY.new.aff to xx_YY.new.aff.
It is possible to have a match that starts with a valid word. In that case ==============================================================================
the match is used, because it is longer. Example: 9. Spell file format *spell-file-format*
we This is the format of the files that are used by the person who creates and
=we're maintains a word list.
"re" is not a word, thus "=we're" is needed to avoid it gets highlighted. Note that we avoid the word "dictionary" here. That is because the goal of
spell checking differs from writing a dictionary (as in the book). For
spelling we need a list of words that are OK, thus need not to be highlighted.
Names will not appear in a dictionary, but do appear in a word list. And
some old words are rarely used and are common misspellings. These do appear
in a dictionary but not in a word list.
The "+" items may appear after any word. For English "'s" is used. Be There are two files: the basic word list and an affix file. The affixes are
careful with this, it may hide mistakes. used to modify the basic words to get the full word list. This significantly
reduces the number of words, especially for a language like Polish. This is
called affix compression.
Vim will check for duplicate words in the files used, but you will only get The format for the affix and word list files is mostly identical to what
warnings if the 'verbose' option is set to 1 or more. Myspell uses (the spell checker of Mozilla and OpenOffice.org). A description
can be found here:
http://lingucomponent.openoffice.org/affix.readme ~
Note that affixes are case sensitive, this isn't obvious from the description.
Vim supports a few extras. Hopefully Myspell will support these too some day.
See |spell-affix-vim|.
Note that the "=" and "+" words will slow down the operation. Use them only The basic word list and the affix file are combined and turned into a binary
when really needed. spell file. All the preprocessing has been done, thus this file loads fast.
The binary spell file format is described in the source code (src/spell.c).
But only developers need to know about it.
The preprocessing also allows us to take the Myspell language files and modify
them before the Vim word list is made. The tools for this can be found in the
"src/spell" directory.
WORD LIST FORMAT *spell-wordlist-format*
A very short example, with line numbers:
1 1234
2 aan
3 Als
4 Etten-Leur
5 et al.
6 's-Gravenhage
7 's-Gravenhaags
8 bedel/P
9 kado/1
10 cadeau/2
The first line contains the number of words. Vim ignores it. *E760*
What follows is one word per line. There should be no white space after the
word.
When the word only has lower-case letters it will also match with the word
starting with an upper-case letter.
When the word includes an upper-case letter, this means the upper-case letter
is required at this position. The same word with a lower-case letter at this
position will not match. When some of the other letters are upper-case it will
not match either.
The same word with all upper-case characters will always be OK.
word list matches does not match ~
als als Als ALS ALs AlS aLs aLS
Als Als ALS als ALs AlS aLs aLS
ALS ALS als Als ALs AlS aLs aLS
AlS AlS ALS als Als ALs aLs aLS
Note in line 5 to 7 that non-word characters are used. You can include
any character in a word. When checking the text a word still only matches
when it appears with a non-word character before and after it. For Myspell a
word starting with a non-word character probably won't work.
After the word there is an optional slash and flags. Most of these flags are
letters that indicate the affixes that can be used with this word.
*spell-affix-vim*
A flag that Vim adds and is not in Myspell is the "=" flag. This has the
meaning that case matters. This can be used if the word does not have the
first letter in upper case at the start of a sentence. Example:
word list matches does not match ~
's morgens/= 's morgens 'S morgens 's Morgens
's Morgens 's Morgens 'S morgens 's morgens
*spell-affix-mbyte*
The basic word list is normally in an 8-bit encoding, which is mentioned in
the affix file. The affix file must always be in the same encoding as the
word list. This is compatible with Myspell. For Vim the encoding may also be
something else, any encoding that "iconv" supports. The "SET" line must
specify the name of the encoding. When using a multi-byte encoding it's
possible to use more different affixes.
Performance hint: Although using affixes reduces the number of words, it
reduces the speed. It's a good idea to put all the often used words in the
word list with the affixes prepended/appended.
vim:tw=78:sw=4:ts=8:ft=help:norl: vim:tw=78:sw=4:ts=8:ft=help:norl:

View File

@ -1,4 +1,4 @@
*starting.txt* For Vim version 7.0aa. Last change: 2005 Feb 19 *starting.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -294,17 +294,17 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
-A Arabic mode. Sets the 'arabic' option on. (Only when -A Arabic mode. Sets the 'arabic' option on. (Only when
compiled with the |+arabic| features (which include compiled with the |+arabic| features (which include
|+rightleft|), otherwise Vim gives an error message |+rightleft|), otherwise Vim gives an error message
and exits. {not in Vi} and exits.) {not in Vi}
*-F* *-F*
-F Farsi mode. Sets the 'fkmap' and 'rightleft' options on. -F Farsi mode. Sets the 'fkmap' and 'rightleft' options on.
(Only when compiled with |+rightleft| and |+farsi| features, (Only when compiled with |+rightleft| and |+farsi| features,
otherwise Vim gives an error message and exits). {not in Vi} otherwise Vim gives an error message and exits.) {not in Vi}
*-H* *-H*
-H Hebrew mode. Sets the 'hkmap' and 'rightleft' options on. -H Hebrew mode. Sets the 'hkmap' and 'rightleft' options on.
(Only when compiled with the |+rightleft| feature, otherwise (Only when compiled with the |+rightleft| feature, otherwise
Vim gives an error message and exits). {not in Vi} Vim gives an error message and exits.) {not in Vi}
*-V* *verbose* *-V* *verbose*
-V[N] Verbose. Sets the 'verbose' option to [N] (default: 10). -V[N] Verbose. Sets the 'verbose' option to [N] (default: 10).
@ -373,7 +373,7 @@ a slash. Thus "-R" means recovery and "-/R" readonly.
-T {terminal} Set the terminal type to "terminal". This influences the -T {terminal} Set the terminal type to "terminal". This influences the
codes that Vim will send to your terminal. This is normally codes that Vim will send to your terminal. This is normally
not needed, because Vim will be able to find out what type not needed, because Vim will be able to find out what type
of terminal you are using (See |terminal-info|). {not in Vi} of terminal you are using. (See |terminal-info|.) {not in Vi}
*-d* *-d*
-d Start in diff mode, like |vimdiff|. -d Start in diff mode, like |vimdiff|.

View File

@ -1,4 +1,4 @@
*syntax.txt* For Vim version 7.0aa. Last change: 2005 Mar 19 *syntax.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -1240,7 +1240,7 @@ Some HTML tags are used to change the rendering of text. The following tags
are recognized by the html.vim syntax coloring file and change the way normal are recognized by the html.vim syntax coloring file and change the way normal
text is shown: <B> <I> <U> <EM> <STRONG> (<EM> is used as an alias for <I>, text is shown: <B> <I> <U> <EM> <STRONG> (<EM> is used as an alias for <I>,
while <STRONG> as an alias for <B>), <H1> - <H6>, <HEAD>, <TITLE> and <A>, but while <STRONG> as an alias for <B>), <H1> - <H6>, <HEAD>, <TITLE> and <A>, but
only if used as a link that is, it must include a href as in only if used as a link (that is, it must include a href as in
<A href="somfile.html">). <A href="somfile.html">).
If you want to change how such text is rendered, you must redefine the If you want to change how such text is rendered, you must redefine the
@ -1366,7 +1366,7 @@ All identifiers in java.lang.* are always visible in all classes. To
highlight them use: > highlight them use: >
:let java_highlight_java_lang_ids=1 :let java_highlight_java_lang_ids=1
You can also highlight identifiers of most standard java packages if you You can also highlight identifiers of most standard Java packages if you
download the javaid.vim script at http://www.fleiner.com/vim/download.html. download the javaid.vim script at http://www.fleiner.com/vim/download.html.
If you prefer to only highlight identifiers of a certain package, say java.io If you prefer to only highlight identifiers of a certain package, say java.io
use the following: > use the following: >
@ -1374,7 +1374,7 @@ use the following: >
Check the javaid.vim file for a list of all the packages that are supported. Check the javaid.vim file for a list of all the packages that are supported.
Function names are not highlighted, as the way to find functions depends on Function names are not highlighted, as the way to find functions depends on
how you write java code. The syntax file knows two possible ways to highlight how you write Java code. The syntax file knows two possible ways to highlight
functions: functions:
If you write function declarations that are always indented by either If you write function declarations that are always indented by either
@ -1388,7 +1388,7 @@ declarations to be highlighted create your own definitions by changing the
definitions in java.vim or by creating your own java.vim which includes the definitions in java.vim or by creating your own java.vim which includes the
original one and then adds the code to highlight functions. original one and then adds the code to highlight functions.
In java 1.1 the functions System.out.println() and System.err.println() should In Java 1.1 the functions System.out.println() and System.err.println() should
only be used for debugging. Therefore it is possible to highlight debugging only be used for debugging. Therefore it is possible to highlight debugging
statements differently. To do this you must add the following definition in statements differently. To do this you must add the following definition in
your startup file: > your startup file: >
@ -1402,29 +1402,29 @@ strings, strings, boolean constants and types (this, super) respectively. I
have opted to chose another background for those statements. have opted to chose another background for those statements.
In order to help you to write code that can be easily ported between In order to help you to write code that can be easily ported between
java and C++, all C++ keywords are marked as error in a java program. Java and C++, all C++ keywords are marked as error in a Java program.
However, if you use them regularly, you may want to define the following However, if you use them regularly, you may want to define the following
variable in your .vimrc file: > variable in your .vimrc file: >
:let java_allow_cpp_keywords=1 :let java_allow_cpp_keywords=1
Javadoc is a program that takes special comments out of java program files and Javadoc is a program that takes special comments out of Java program files and
creates HTML pages. The standard configuration will highlight this HTML code creates HTML pages. The standard configuration will highlight this HTML code
similarly to HTML files (see |html.vim|). You can even add javascript similarly to HTML files (see |html.vim|). You can even add Javascript
and CSS inside this code (see below). There are four differences however: and CSS inside this code (see below). There are four differences however:
1. The title (all characters up to the first '.' which is followed by 1. The title (all characters up to the first '.' which is followed by
some white space or up to the first '@') is colored differently (to change some white space or up to the first '@') is colored differently (to change
the color change the group CommentTitle). the color change the group CommentTitle).
2. The text is colored as 'Comment'. 2. The text is colored as 'Comment'.
3. HTML comments are colored as 'Special' 3. HTML comments are colored as 'Special'
4. The special javadoc tags (@see, @param, ...) are highlighted as specials 4. The special Javadoc tags (@see, @param, ...) are highlighted as specials
and the argument (for @see, @param, @exception) as Function. and the argument (for @see, @param, @exception) as Function.
To turn this feature off add the following line to your startup file: > To turn this feature off add the following line to your startup file: >
:let java_ignore_javadoc=1 :let java_ignore_javadoc=1
If you use the special javadoc comment highlighting described above you If you use the special Javadoc comment highlighting described above you
can also turn on special highlighting for javascript, visual basic can also turn on special highlighting for Javascript, visual basic
scripts and embedded CSS (stylesheets). This makes only sense if you scripts and embedded CSS (stylesheets). This makes only sense if you
actually have javadoc comments that include either javascript or embedded actually have Javadoc comments that include either Javascript or embedded
CSS. The options to use are > CSS. The options to use are >
:let java_javascript=1 :let java_javascript=1
:let java_css=1 :let java_css=1
@ -1740,7 +1740,7 @@ you set the variable: >
in your startup file it will try to syntax-hilight html code inside phtml in your startup file it will try to syntax-hilight html code inside phtml
sections, but this is relatively slow and much too colourful to be able to sections, but this is relatively slow and much too colourful to be able to
edit sensibly ;) edit sensibly. ;)
The newest version of the papp.vim syntax file can usually be found at The newest version of the papp.vim syntax file can usually be found at
http://papp.plan9.de. http://papp.plan9.de.
@ -2364,7 +2364,7 @@ If you have a slow computer, you may wish to reduce the values for >
:syn sync maxlines=200 :syn sync maxlines=200
:syn sync minlines=50 :syn sync minlines=50
(especially the latter). If your computer is fast, you may wish to (especially the latter). If your computer is fast, you may wish to
increase them. This primarily affects synchronizing (ie. just what group, increase them. This primarily affects synchronizing (i.e. just what group,
if any, is the text at the top of the screen supposed to be in?). if any, is the text at the top of the screen supposed to be in?).
Excessive Error Highlighting? ~ Excessive Error Highlighting? ~
@ -4151,14 +4151,14 @@ To use it, execute these commands: >
:e $VIMRUNTIME/syntax/colortest.vim :e $VIMRUNTIME/syntax/colortest.vim
:so % :so %
Some versions of xterm (and other terminals, like the linux console) can Some versions of xterm (and other terminals, like the Linux console) can
output lighter foreground colors, even though the number of colors is defined output lighter foreground colors, even though the number of colors is defined
at 8. Therefore Vim sets the "cterm=bold" attribute for light foreground at 8. Therefore Vim sets the "cterm=bold" attribute for light foreground
colors, when 't_Co' is 8. colors, when 't_Co' is 8.
*xfree-xterm* *xfree-xterm*
To get 16 colors or more, get the newest xterm version (which should be To get 16 colors or more, get the newest xterm version (which should be
included with Xfree86 3.3 and later). You can also find the latest version included with XFree86 3.3 and later). You can also find the latest version
at: > at: >
http://invisible-island.net/xterm/xterm.html http://invisible-island.net/xterm/xterm.html
Here is a good way to configure it. This uses 88 colors and enables the Here is a good way to configure it. This uses 88 colors and enables the

View File

@ -1,4 +1,4 @@
*tagsrch.txt* For Vim version 7.0aa. Last change: 2005 Feb 14 *tagsrch.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -395,7 +395,7 @@ In a future version changing the buffer will be impossible. All this for
security reasons: Somebody might hide a nasty command in the tags file, which security reasons: Somebody might hide a nasty command in the tags file, which
would otherwise go unnoticed. Example: > would otherwise go unnoticed. Example: >
:$d|/tag-function-name/ :$d|/tag-function-name/
{this security prevention is not present in Vi}. {this security prevention is not present in Vi}
In Vi the ":tag" command sets the last search pattern when the tag is searched In Vi the ":tag" command sets the last search pattern when the tag is searched
for. In Vim this is not done, the previous search pattern is still remembered, for. In Vim this is not done, the previous search pattern is still remembered,
@ -582,8 +582,8 @@ If the command is a normal search command (it starts and ends with "/" or
"?"), some special handling is done: "?"), some special handling is done:
- Searching starts on line 1 of the file. - Searching starts on line 1 of the file.
The direction of the search is forward for "/", backward for "?". The direction of the search is forward for "/", backward for "?".
Note that 'wrapscan' does not matter, the whole file is always searched. {Vi Note that 'wrapscan' does not matter, the whole file is always searched. (Vi
does use 'wrapscan', which caused tags sometimes not be found). {Vi starts does use 'wrapscan', which caused tags sometimes not be found.) {Vi starts
searching in line 2 of another file. It does not find a tag in line 1 of searching in line 2 of another file. It does not find a tag in line 1 of
another file when 'wrapscan' is not set} another file when 'wrapscan' is not set}
- If the search fails, another try is done ignoring case. If that fails too, - If the search fails, another try is done ignoring case. If that fails too,
@ -596,7 +596,7 @@ If the command is a normal search command (it starts and ends with "/" or
"^[#a-zA-Z_].*\<tagname[ \t]*(" "^[#a-zA-Z_].*\<tagname[ \t]*("
This means: A line starting with '#' or an identifier and containing the tag This means: A line starting with '#' or an identifier and containing the tag
followed by white space and a '('. This will find macro names and function followed by white space and a '('. This will find macro names and function
names with a type prepended. {the extra searches are not in Vi}. names with a type prepended. {the extra searches are not in Vi}
============================================================================== ==============================================================================
6. Include file searches *include-search* *definition-search* 6. Include file searches *include-search* *definition-search*

View File

@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.0aa. Last change: 2005 Mar 28 *todo.txt* For Vim version 7.0aa. Last change: 2005 Apr 15
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -30,6 +30,36 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs* *known-bugs*
-------------------- Known bugs and current work ----------------------- -------------------- Known bugs and current work -----------------------
Frame size wrong after ":sp" with this in vimrc (Michael Schaap):
set cmdheight=2
set lines=43
Trick to get ...MOUSE_NM not used when there are vertical splits. Can we pass
-col instead of col? (Yegappan Lakshmanan)
Hang in searchpair(). (2005 April 12, John Wellesz)
With this mapping a click on a status line echoes the wrong buffer name:
:noremap <Leftmouse> <Leftmouse>:echo bufname('%')<CR>
When in diff mode and making a change that causes the "changed" highlighting
to disappear, it's still highlighted in another window.
regmatch(): "regstack" could start with a fixed block of data for speed.
"backpos" is never freed. (Alexei Alexandrov)
Starting without any buffers, set nocp, ":b <Tab>" gives error message.
(Ciaran McCressh for Aron Griffis)
Problem with 'insertmode'. (Georg Dahn, 2005 April 9, expl. April 14)
Problem with CTRL-V pasting more than one line. (Georg Dahn, 2005 April 11)
Patch for setqflist() (Yegappan Lakshmanan, 2005 April 11)
In an errorfile expand "~/" to home directory. (Arnout Engelen)
Patch for 2html.vim to disable folding (Michael Schaap, 2005 April 12)
Mac unicode patch (Da Woon Jung): Mac unicode patch (Da Woon Jung):
- selecting proportional font breaks display - selecting proportional font breaks display
- UTF-8 text causes display problems. Font replacement causes this. - UTF-8 text causes display problems. Font replacement causes this.
@ -47,23 +77,59 @@ autoload:
Win32: Balloon text can't contain line break. Win32: Balloon text can't contain line break.
Hints for multiline tooltips from Alexei Alexandrov (2005 Mar 26) Hints for multiline tooltips from Alexei Alexandrov (2005 Mar 26)
Patch from Sergey Khorev, 2005 Mar 28 Patch from Sergey Khorev, 2005 Apr 11
Add has("balloon_multiline") Add has("balloon_multiline")
setline() should accept a List.
Add ":[range]sort" command. Sort on specified field, using a regexp? Remove
duplicates?
Awaiting response: Awaiting response:
- Patch for mch_FullName() also in Vim 6.3? os_mswin.c - Patch for mch_FullName() also in Vim 6.3? os_mswin.c
- Win32: tearoff menu window should have a scrollbar when it's taller than - Win32: tearoff menu window should have a scrollbar when it's taller than
the screen. the screen.
Make option like 'verbose' that writes output into a file? Should make it
possible to see what's happening without messing up the display.
PLANNED FOR VERSION 7.0: PLANNED FOR VERSION 7.0:
- Add SPELLCHECKER, with support for many languages. - Add SPELLCHECKER, with support for many languages.
- Use "engspchk" from Charles Campbell for ideas. - Use "engspchk" from Charles Campbell for ideas.
- Alternative: use MySpell library (in OpenOffice.org). - Spell checking code todo's:
- BWF_ADDS and BWF_ADDSM for more than 256, only one byte for count.
- Case folding only works when locale is set properly.
E.g., when C locale is active then 'enc' is "latin1" but Ångström
isn't seen as a ONECAP.
Use our own character tables for encodings used in spell files?
Use iswupper() if possible?
Put the character tables in the .aff file?
- Implement = flag in .dic: KEEPCASE for lower case word.
's morgens/= does not match 'S morgens
- Merge en_US, en_CA, en_AU, etc.
- Implement compound words?
- Make matching additions faster somehow?
- More efficient way to store additions?
- remove fw_prefix and fw_suffix, use fw_len (word length) and put
prefixes and suffixes right after it.
- Make "en-rare" spell file.
Convention: use en_US (language_region) and en-rare (language-field)
- Need to check for affixes of zero length?
- specify word characters in .aff file?
- Polish: Anio and Hanio are wrong words, even though Myspell allows
them. Problem with not ignoring case in conditions.
- Put addition up to end of word also in hashtab, so that "s'aaa"
is found by "'aaa", s-bbb by "-bbb", etc. Put rest in table (search
longest match).
- Rare words: use another dictionary. Add hl groups to 'spelllang'?
:set spelllang=en_us,en.rare/SpellRare,en.math/SpellMath
- References MySpell library (in OpenOffice.org).
http://spellchecker.mozdev.org/source.html http://spellchecker.mozdev.org/source.html
http://whiteboard.openoffice.org/source/browse/whiteboard/lingucomponent/source/spellcheck/myspell/
author: Kevin Hendricks <kevin.hendricks@sympatico.ca>
- Alternative: use aspell library. - Alternative: use aspell library.
- Dump pre-parsed spell structs in a file? ispell is replaced by aspell, thus forget about it.
- More complicated: Regions with different languages? E.g. comments in - More complicated: Regions with different languages? E.g. comments in
English, strings in German (po file). English, strings in German (po file).
- Commands required: - Commands required:
@ -72,12 +138,13 @@ PLANNED FOR VERSION 7.0:
:spell wrong <word> zw :spell wrong <word> zw
[s move to previous spell error [S also rare word [s move to previous spell error [S also rare word
]s move to next spell error ]S also rare word ]s move to next spell error ]S also rare word
(only "]s" is currently implemented)
- Update option window for 'spell' and 'spelllang'. - Update option window for 'spell' and 'spelllang'.
- Use an external program like ispell or aspell for suggestions to correct - Use an external program like aspell for suggestions to correct the
the spelling. spelling? Or include the myspell/spell code in Vim?
- Need wordlists for many languages; "language pack" - Distribution: Need wordlists for many languages; "language pack"
- Use wordlists from openoffice (myspell). Work together with them to - Work together with OpenOffic.org to update the wordlists. (Adri
update the wordlist. (Adri Verhoef, Aad Nales) Verhoef, Aad Nales)
- Support for approximate-regexps will help with finding similar words - Support for approximate-regexps will help with finding similar words
(agrep http://www.tgries.de/agrep/). (agrep http://www.tgries.de/agrep/).
- Charles Campbell asks for method to add "contained" groups to - Charles Campbell asks for method to add "contained" groups to
@ -92,6 +159,7 @@ PLANNED FOR VERSION 7.0:
ispell inside Vim). Gautam Iyer has an example with "aspell". ispell inside Vim). Gautam Iyer has an example with "aspell".
Patch from Marcin Dalecki, uses pipe to aspell. Patch from Marcin Dalecki, uses pipe to aspell.
- REFACTORING: The main() function is very long. Move parts to separate - REFACTORING: The main() function is very long. Move parts to separate
functions, especially loops. Ideas from Walter Briscoe (2003 Apr 3, 2004 functions, especially loops. Ideas from Walter Briscoe (2003 Apr 3, 2004
Feb 9). Feb 9).
@ -110,6 +178,8 @@ PLANNED FOR VERSION 7.0:
of http://insenvim.sourceforge.net of http://insenvim.sourceforge.net
http://cedet.sourceforge.net/intellisense.shtml (for Emacs) http://cedet.sourceforge.net/intellisense.shtml (for Emacs)
Ivan Villanueva has something for Java. Ivan Villanueva has something for Java.
Ideas from Emads:
http://www.xref-tech.com/xrefactory/more_c_completion.html
Can't call it Intellisense, it is a trademark by Microsoft. Can't call it Intellisense, it is a trademark by Microsoft.
Ideas from the Vim 7 BOF at SANE: Ideas from the Vim 7 BOF at SANE:
- It's not possible to have one solution for all languages. Design an - It's not possible to have one solution for all languages. Design an
@ -218,6 +288,14 @@ PLANNED FOR VERSION 7.0:
Adjust src/main.aap for installing manpages like in Makefile. Adjust src/main.aap for installing manpages like in Makefile.
Add strtol() to avoid the problems with leading zero causing octal conversion.
Try new POSIX tests, made after my comments. (Geoff Clare, 2005 April 7)
Before April 23 if possible.
Add a 'tool' window: behaves like a preview window but there can be several.
Don't count it in only_one_window(). (Alexei Alexandrov)
Win32: Patch for Korean IME. (Yusung, 2005 March 21) Win32: Patch for Korean IME. (Yusung, 2005 March 21)
Support ":set syntax=cpp.doxygen"? Suggested patch by Michael Geddes (9 Aug Support ":set syntax=cpp.doxygen"? Suggested patch by Michael Geddes (9 Aug
@ -1269,6 +1347,7 @@ Folding:
8 Add "z/" and "z?" for searching in not folded text only. 8 Add "z/" and "z?" for searching in not folded text only.
8 Add different highlighting for a fold line depending on the fold level. 8 Add different highlighting for a fold line depending on the fold level.
(Noel Henson) (Noel Henson)
7 Use "++--", "+++--" for different levels instead of "+---" "+----".
8 When a closed fold is displayed open because of 'foldminlines', the 8 When a closed fold is displayed open because of 'foldminlines', the
behavior of commands is still like the fold is closed. How to make the behavior of commands is still like the fold is closed. How to make the
user aware of this? user aware of this?
@ -1312,6 +1391,7 @@ Multi-byte characters:
item. item.
8 Add an item in 'fileencodings' to check the first line of an XML file for 8 Add an item in 'fileencodings' to check the first line of an XML file for
the encoding. <?xml version="1.0" encoding="UTF-8"?> Or "charset=UTF-8"? the encoding. <?xml version="1.0" encoding="UTF-8"?> Or "charset=UTF-8"?
For HTML look for "charset=utf-8".
8 The quickfix file is read without conversion, thus in 'encoding'. Add an 8 The quickfix file is read without conversion, thus in 'encoding'. Add an
option to specify the encoding of the errorfile and convert it. Also for option to specify the encoding of the errorfile and convert it. Also for
":grep" and ":helpgrep". ":grep" and ":helpgrep".
@ -2775,8 +2855,8 @@ Buffer list:
8 Unix: Check all uses of fnamecmp() and fnamencmp() if they should check 8 Unix: Check all uses of fnamecmp() and fnamencmp() if they should check
inode too. inode too.
7 Add another number for a buffer, which is visible for the user. When 7 Add another number for a buffer, which is visible for the user. When
creating a new buffer, use the lowest number not in use. (or the highest creating a new buffer, use the lowest number not in use (or the highest
number in use plus one?) number in use plus one?).
7 Offer some buffer selection from the command line? Like using ":ls" and 7 Offer some buffer selection from the command line? Like using ":ls" and
asking for a buffer number. (Zachmann) asking for a buffer number. (Zachmann)
- When starting to edit a file that is already in the buffer list, use the - When starting to edit a file that is already in the buffer list, use the
@ -3178,7 +3258,7 @@ Various improvements:
buffer. Make jumplist remember the last ten accessed buffers? buffer. Make jumplist remember the last ten accessed buffers?
- Keep a list of most recently used files for each window, use "[o" to go - Keep a list of most recently used files for each window, use "[o" to go
back (older file) and "]n" to go forward (newer file) (like ^O and ^I for back (older file) and "]n" to go forward (newer file) (like ^O and ^I for
jumps) (Webb). Use ":files" and ":ls" to list the files in history order. jumps). (Webb) Use ":files" and ":ls" to list the files in history order.
7 Add a history of recently accessed buffer. Maybe make "2 CTRL-^" jump to 7 Add a history of recently accessed buffer. Maybe make "2 CTRL-^" jump to
the 2nd previously visited buffer, "3 CTRL-^" to the third, etc. Or use the 2nd previously visited buffer, "3 CTRL-^" to the third, etc. Or use
"3 g CTRL-^" for this? "3 g CTRL-^" for this?
@ -3317,7 +3397,7 @@ Various improvements:
t_bs is set? (Webb) t_bs is set? (Webb)
- "gc": goto character, move absolute character positions forward, also - "gc": goto character, move absolute character positions forward, also
counting newlines. "gC" goes backwards (Weigert). counting newlines. "gC" goes backwards (Weigert).
- When doing CTRL-^, redraw buffer with the same topline (Demirel). Store - When doing CTRL-^, redraw buffer with the same topline. (Demirel) Store
cursor row and window height to redraw cursor at same percentage of window cursor row and window height to redraw cursor at same percentage of window
(Webb). (Webb).
- Besides remembering the last used line number of a file, also remember the - Besides remembering the last used line number of a file, also remember the

View File

@ -1,4 +1,4 @@
*usr_01.txt* For Vim version 7.0aa. Last change: 2004 Sep 09 *usr_01.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*usr_04.txt* For Vim version 7.0aa. Last change: 2004 Jun 08 *usr_04.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*usr_07.txt* For Vim version 7.0aa. Last change: 2004 Mar 12 *usr_07.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*usr_11.txt* For Vim version 7.0aa. Last change: 2004 Apr 23 *usr_11.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*usr_20.txt* For Vim version 7.0aa. Last change: 2003 Apr 30 *usr_20.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*usr_23.txt* For Vim version 7.0aa. Last change: 2001 Sep 03 *usr_23.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*usr_28.txt* For Vim version 7.0aa. Last change: 2003 Dec 21 *usr_28.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar
@ -350,7 +350,7 @@ You can try it out on this text:
Explanation for the 'foldexpr' used in the example (inside out): Explanation for the 'foldexpr' used in the example (inside out):
getline(v:lnum) gets the current line getline(v:lnum) gets the current line
substitute(...,'\\s','','g') removes all white space from the line substitute(...,'\\s','','g') removes all white space from the line
substitute(...,'[^>].*','','')) removes everything after leading '>'s substitute(...,'[^>].*','','') removes everything after leading '>'s
strlen(...) counts the length of the string, which strlen(...) counts the length of the string, which
is the number of '>'s found is the number of '>'s found

View File

@ -1,4 +1,4 @@
*usr_30.txt* For Vim version 7.0aa. Last change: 2004 Jan 17 *usr_30.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*usr_40.txt* For Vim version 7.0aa. Last change: 2004 Dec 29 *usr_40.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*various.txt* For Vim version 7.0aa. Last change: 2005 Mar 07 *various.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar

View File

@ -1,4 +1,4 @@
*version7.txt* For Vim version 7.0aa. Last change: 2005 Mar 28 *version7.txt* For Vim version 7.0aa. Last change: 2005 Apr 05
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -106,6 +106,8 @@ you can't be sure what the keyboard generates. Now all <xHome> are internally
translated to <Home>, both for the keys and for mappings. Also for <xEnd>, translated to <Home>, both for the keys and for mappings. Also for <xEnd>,
<xF1>, etc. <xF1>, etc.
":put" now leaves the cursor on the last inserted line.
============================================================================== ==============================================================================
NEW FEATURES *new-7* NEW FEATURES *new-7*
@ -180,11 +182,15 @@ Translated manual pages *new-manpage-trans*
The manual page of Vim and associated programs is now also available in The manual page of Vim and associated programs is now also available in
several other languages. several other languages.
French - translated by David Blanchet
Italian - translated by Antonio Colombo Italian - translated by Antonio Colombo
Russian - translated by Vassily Ragosin Russian - translated by Vassily Ragosin
The Unix Makefile installs the Italian manual pages in .../man/it/man1/. The Unix Makefile installs the Italian manual pages in .../man/it/man1/,
Other languages in similar places. .../man/it.ISO8859-1/man1/ and .../man/it.UTF-8/man1/. There appears to be no
standard for what encoding goes in the "it" directory, the 8-bit encoded file
is used there as a best guess.
Other languages are installed in similar places.
Internal grep *new-vimgrep* Internal grep *new-vimgrep*
@ -388,8 +394,8 @@ New items in search patterns: ~
|/\%U| \%U1234abcd search for character with 8 pos. hex number |/\%U| \%U1234abcd search for character with 8 pos. hex number
|/\]| [\U1234abcd] idem, in a colletion |/\]| [\U1234abcd] idem, in a colletion
(The above partly by Ciaran McCreesh) (The above partly by Ciaran McCreesh)
|/[=| [[=a=]] an equivalence class (only for latin1 characters) |/[[=| [[=a=]] an equivalence class (only for latin1 characters)
|/[.| [[.a.]] a collation element (only works with single char) |/[[.| [[.a.]] a collation element (only works with single char)
Nesting |/multi| items no longer is an error when an empty match is possible. Nesting |/multi| items no longer is an error when an empty match is possible.
@ -1026,4 +1032,14 @@ and reset it in nv_home().
Wildcard expansion failed: ":w /tmp/$$.`echo test`". Don't put quotes around Wildcard expansion failed: ":w /tmp/$$.`echo test`". Don't put quotes around
spaces inside backticks. spaces inside backticks.
After this sequence of commands: Y V p gv: the wrong line is selected. Now
let "gv" select the text that was put, since the original text is deleted.
This should be the most useful thing to do.
":sleep 100u" sleeps for 100 seconds, not 100 usec as one might expect. Give
an error message when the argument isn't recognized.
In gui_mch_draw_string() in gui_w32.c "unibuflen" wasn't static, resulting in
reallocating the buffer every time. (Alexei Alexandrov)
vim:tw=78:ts=8:ft=help:norl: vim:tw=78:ts=8:ft=help:norl:

574
runtime/doc/vim-fr.1 Normal file
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.

View File

View File

@ -1,4 +1,4 @@
*windows.txt* For Vim version 7.0aa. Last change: 2005 Feb 18 *windows.txt* For Vim version 7.0aa. Last change: 2005 Apr 01
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -516,7 +516,7 @@ The minimal height and width of a window is set with 'winminheight' and
24. :[N]sprevious [N] 34. :[N]sbprevious [N] split + to Nth previous arg/buf 24. :[N]sprevious [N] 34. :[N]sbprevious [N] split + to Nth previous arg/buf
25. :srewind / :sfirst 35. :sbrewind / :sbfirst split + to first arg/buf 25. :srewind / :sfirst 35. :sbrewind / :sbfirst split + to first arg/buf
26. :slast 36. :sblast split + to last arg/buf 26. :slast 36. :sblast split + to last arg/buf
27. :sall 37: :sball edit all args/buffers 27. :sall 37. :sball edit all args/buffers
38. :sunhide edit all loaded buffers 38. :sunhide edit all loaded buffers
39. :[N]sbmod [N] split + to Nth modified buf 39. :[N]sbmod [N] split + to Nth modified buf

View File

@ -1,4 +1,4 @@
*workshop.txt* For Vim version 7.0aa. Last change: 2004 Jan 08 *workshop.txt* For Vim version 7.0aa. Last change: 2005 Mar 29
VIM REFERENCE MANUAL by Gordon Prieur VIM REFERENCE MANUAL by Gordon Prieur

395
runtime/doc/xxd-fr.UTF-8.1 Normal file
View File

@ -0,0 +1,395 @@
.TH XXD 1 "août 1996" "Page de manuel pour xxd"
.\"
.\" 21st May 1996
.\" Man page author:
.\" Tony Nugent <tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au>
.\" Changes by Bram Moolenaar <Bram@vim.org>
.\" French translation by David Blanchet <david.blanchet@free.fr> 2005-03
.SH NOM
.I xxd
\- convertit en représentation hexadécimale et inversement.
.SH SYNOPSIS
.B xxd
\-h[elp]
.br
.B xxd
[options] [fichier_entree [fichier_sortie]]
.br
.B xxd
\-r[evert] [options] [fichier_entree [fichier_sortie]]
.SH DESCRIPTION
.I xxd
crée un fichier contenant la représentation hexadécimale d'un fichier
binaire ou de l'entrée standard.
Il peut également convertir un fichier de codes hexadécimaux en un fichier
binaire.
Comme
.BR uuencode(1)
et
.BR uudecode(1)
il permet la transmission de données binaires dans une représentation ASCII
compatible avec le courrier électronique, mais a l'avantage de décoder la
sortie standard.
De plus, il peut être utilisé pour appliquer des rustines à des fichiers
binaires.
.SH OPTIONS
Si aucun
.I fichier_entree
n'est spécifié, l'entrée standard est utilisée.
Si
.I fichier_entree
correspond au caractère
.RB '\-'
\, l'entrée standard est employée comme source des données en entrée.
Si aucun
.I fichier_sortie
n'est spécifié (ou qu'un caractère
.RB '\-'
est donné à sa place), le résultat est envoyé sur la sortie standard.
.PP
NOTE : un analyseur paresseux est utilisé. Il ne vérifie pas au-delà de la
première lettre de l'option, à moins que cette dernière ne requiert un
paramètre.
L'espace entre l'option et son paramètre est optionnel.
Les paramètres des options peuvent être spécifiés en notation décimale,
hexadécimale ou octale.
Ainsi
.BR \-c8 ,
.BR "\-c 8" ,
.B \-c 010
et
.B \-cols 8
sont tous équivalents.
.TP
.IR \-a " | " \-autoskip
active la fonctionnalité "autoskip" : le caractère '*' remplace les lignes
d'octets nuls. Désactivée par défaut.
.TP
.IR \-b " | " \-bits
Convertit en binaires plutôt qu'en hexadécimal.
Cette option écrit les octets comme une séquence de "1" et de "0" au lieu
d'une conversion en hexadécimal traditionnel. Chaque ligne est précédée par un
numéro de ligne en hexadécimal et suivie de la représentation ASCII (ou
EBCDIC) correspondante. Les options \-r, \-p, \-i ne fonctionnent pas dans ce
mode.
.TP
.IR "\-c cols " | " \-cols cols"
place
.RI < cols >
octets par ligne. 16 par défaut (\-i : 12, \-ps : 30, \-b : 6). Maximum 256.
.TP
.IR \-E " | " \-EBCDIC
Passe le codage des caractères de la colonne de droite de ASCII à EBCDIC.
Cela ne change pas la représentation hexadécimale. Cette option est sans effet
quand elle est utilisée avec \-r, \-p or \-i.
.TP
.IR "\-g octets " | " \-groupsize octets"
Regroupe les octets (deux chiffres hexadécimaux ou huit chiffres binaires)
par groupe de
.RI < octets >
\, séparés par des espaces blancs. Spécifiez
.I \-g 0
pour supprimer le regroupement.
.RI < octets >
vaut 2 par défaut dans le mode normal et \fI1\fP en
représentation binaire. Le regroupement ne s'applique pas aux styles
Postscript et Include.
.TP
.IR \-h " | " \-help
Affiche un résumé des commandes disponibles et quitte. Aucune conversion n'est
effectuée.
.TP
.IR \-i " | " \-include
produit une sortie dans le style #include (fichier C à inclure). La définition
complète d'un tableau statique est écrite et est nommée d'après le fichier
d'origine, à moins que xxd lise depuis l'entrée standard.
.TP
.IR "\-l long " | " \-len long"
Arrête après l'écriture de
.RI < long >
octets.
.TP
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
Produit une conversion continue dans le style Postscript (postscript continuous
hexdumd style).
Également connu sous le nom de « conversion brute » (plain hexdump style).
.TP
.IR \-r " | " \-revert
Opération inverse : convertit un fichier hexadécimal en un fichier binaire (ou
applique une rustine à un fichier binaire).
Si l'écriture n'a pas lieu sur la sortie standard, xxd écrit dans le fichier
qu'il produit sans le tronquer. Utilisez la combinaison
.I \-r \-p
pour lire de l'hexadécimal brut sans information sur le numéro des lignes et
sans format de colonnes particulier. Des espaces blancs et coupures de lignes
supplémentaires sont autorisés à n'importe quel endroit.
.TP
.I \-seek décalage
Utilisé après l'option
.I \-r
\: inverse la conversion en ajoutant
.RI < décalage >
aux positions dans le fichier données dans le code hexadécimal.
.TP
.I \-s [\+][\-]décalage
Débute au
.RI < décalage >
absolu ou relatif dans fichier_entree.
\fI\+ \fRindique que le décalage est relatif à la position courante dans
l'entrée standard (sans effet si la lecture n'a pas lieu sur l'entrée
standard). \fI\- \fRindique un décalage en caractères depuis la fin de
l'entrée (utilisé avec \fI \+ \fR, désigne la position avant la position
actuelle de l'entrée standard).
Sans l'option \-s, xxd démarre à la position courante du fichier.
.TP
.I \-u
Utilise des chiffres hexadécimaux majuscules. La casse par défaut est
minuscule.
.TP
.IR \-v " | " \-version
Affiche la version de xxd.
.SH MISE EN GARDE
.I xxd \-r
effectue des opérations internes un peu obscures lors de l'évaluation
des informations sur les numéros de lignes. Si le fichier de sortie est
adressable, alors les numéros de lignes au début de chaque ligne d'hexadécimal
peuvent être désordonnées, des lignes peuvent manquer ou se chevaucher. Dans
ces cas, xxd utilisera lseek(2) pour déterminer la prochaine position. Si le
fichier n'est pas adressable, seuls les vides sont autorisés, et ils seront
comblés par des octets nuls.
.PP
.I xxd \-r
ne génère aucune erreur lors de l'analyse. Le problème sont passés
silencieusement.
.PP
Lors de l'édition de la représentation hexadécimale, veuillez noter que
.I xxd \-r
ignore tout ce qui se trouve sur la ligne après avoir lu suffisamment de
données hexadécimales (voir l'option \-c). Cela signifie également que les
modifications dans la colonne ASCII (ou EBCDIC) sont toujours ignorées. La
conversion inverse de données hexadécimales brutes (postscript) avec xxd \-r
\-p ne dépend pas d'un nombre correct de colonnes. Dans ce cas, tout ce qui
ressemble à une paire de chiffres hexadécimaux est interprété.
.PP
Remarquez la différence entre
.br
\fI% xxd \-i fichier\fR
.br
et
.br
\fI% xxd \-i \< fichier\fR
.PP
.I xxd \-s \+seek
peut différer de
.I xxd \-s seek
\, car lseek(2) est utilisé pour « revenir en arrière ». Le '+' fait une
différence quand la source des données est l'entrée standard et si la position
dans le fichier de l'entrée standard n'est pas au début du fichier lorsque xxd
est démarré et qu'il reçoit ses données.
L'exemple suivant peut vous aider à comprendre (ou bien vous perdre davantage
encore !)...
.PP
Remettre l'entrée standard au départ avant de lire ; nécessaire car 'cat' a
déjà lu jusqu'à la fin de l'entrée standard.
.br
\fI% sh \-c 'cat > donnees_binaires; xxd \-s 0 > donnees_hexa' < fichier\fR
.PP
Convertir à partir de la position 0x480 (= 1024 + 128) du fichier.
Le symbole '+' signifie "relativement à la position actuelle', ainsi 128 est
ajouté aux 1024 octets comptabilisés pour dd.
.br
\fI% sh \-c 'dd of=donnees_binaires bs=1k count=1; xxd \-s +128 >
donnees_hexa' < fichier\fR
.PP
Convertir de fichier depuis la position 0x100 (= 1024 - 768) du fichier.
.br
\fI% sh \-c 'dd of=donnees_binaires bs=1k count=1; xxd \-s +\-768 >
donnees_hexa' < fichier\fR
.PP
Toutefois, cette situation est peu fréquente et l'utilisation de '+' est
rarement requise. L'auteur préfère surveiller les effets de xxd avec strace(1)
ou truss(1) quand \-s est employé.
.SH EXEMPLES
Afficher la totalité du
.B fichier
sauf les trois premières lignes (0x30 octets en hexadécimal).
.br
\fI% xxd \-s 0x30 fichier\fR
.PP
afficher les trois dernières lignes (0x30 octets en hexadécimal) du
.B fichier
\.
.br
\fI% xxd \-s \-0x30 fichier\fR
.PP
.br
Afficher 120 octets convertis en continu, avec 20 octets par ligne.
.br
\fI% xxd \-l 120 \-ps \-c 20 xxd\-fr.1\fR
.br
2e54482058584420312022616ffb742031393936
.br
22202250616765206465206d616e75656c20706f
.br
757220787864220a2e5c220a2e5c222032317374
.br
204d617920313939360a2e5c22204d616e207061
.br
676520617574686f723a0a2e5c2220202020546f
.br
6e79204e7567656e74203c746f6e79407363746e
.br
204e7567656e74203c746f6e79407363746e7567
.br
2e54482058584420312022417567757374203139
.PP
Convertir les 120 premiers octets de cette page de manuel avec 12 octets par
ligne.
.br
\fI% xxd \-l 120 \-c 12 xxd\-fr.1\fR
.br
0000000: 2e54 4820 5858 4420 3120 2261 .TH XXD 1 "a
.br
000000c: 6ffb 7420 3139 3936 2220 2250 o.t 1996" "P
.br
0000018: 6167 6520 6465 206d 616e 7565 age de manue
.br
0000024: 6c20 706f 7572 2078 7864 220a l pour xxd".
.br
0000030: 2e5c 220a 2e5c 2220 3231 7374 .\"..\" 21st
.br
000003c: 204d 6179 2031 3939 360a 2e5c May 1996..\
.br
0000048: 2220 4d61 6e20 7061 6765 2061 " Man page a
.br
0000054: 7574 686f 723a 0a2e 5c22 2020 uthor:..\"
.br
0000060: 2020 546f 6e79 204e 7567 656e Tony Nugen
.br
000006c: 7420 3c74 6f6e 7940 7363 746e t <tony@sctn
.PP
Afficher la date écrite au début du fichier xxd\-fr.1.
.br
\fI% xxd \-s 0x38 \-l 13 \-c 13 xxd.1\fR
.br
0000036: 3231 7374 204d 6179 2031 3939 36 21st May 1996
.PP
Copier
.B fichier_entree
vers
.B fichier_sortie
en ajoutant 100 octets de valeur 0x00 avant.
.br
\fI% xxd fichier_entree | xxd \-r \-s 100 \> fichier_sortie\fR
.PP
Patcher la date dans le fichier xxd.1
.br
\fI% echo '0000037: 3574 68' | xxd \-r \- xxd\-fr.1\fR
.br
\fI% xxd \-s 0x38 \-l 13 \-c 13 xxd\-fr.1\fR
.br
0000036: 3235 7468 204d 6179 2031 3939 36 25th May 1996
.PP
Créer un fichier de 65537 octets tous nuls (0x00),
sauf le dernier qui vaut 'A' (0x41 en hexadécimal).
.br
\fI% echo '010000: 41' | xxd \-r \> fichier\fR
.PP
.br
Convertir le fichier de l'exemple précédent avec la fonctionnalité "autoskip".
.br
\fI% xxd \-a \-c 12 fichier\fR
.br
0000000: 0000 0000 0000 0000 0000 0000 ............
.br
*
.br
000fffc: 0000 0000 40 ....A
.PP
Créer un fichier d'un octet, contenant seulement le caractère 'A'.
Les nombres après '\-r \-s' s'ajoutent au numéros de lignes trouvées dans le
fichier ; XXX in effects, les octets initiaux sont supprimés.
.br
\fI% echo '010000: 41' | xxd \-r \-s \-0x10000 \> fichier\fR
.PP
Utiliser xxd comme filtre dans un éditeur tel que
.B vim(1)
pour convertir une zone comprise entre les marques 'a' et 'z'.
.br
\fI:'a,'z!xxd\fR
.PP
Utiliser xxd comme filtre dans un éditeur tel que
.B vim(1)
pour récupérer une conversion binaire comprise entre les marques 'a' et 'z'.
.br
\fI:'a,'z!xxd \-r\fR
.PP
Utiliser xxd comme filtre dans un éditeur tel que
.B vim(1)
pour récupérer une ligne convertie. Placez le curseur sur la ligne et tapez :
.br
\fI!!xxd \-r\fR
.PP
Lire des caractères depuis une connexion série :
.br
\fI% xxd \-c1 < /dev/term/b &\fR
.br
\fI% stty < /dev/term/b \-echo \-opost \-isig \-icanon min 1\fR
.br
\fI% echo \-n foo > /dev/term/b\fR
.SH VALEURS DE RETOUR
Les erreurs suivantes sont rapportées :
.TP
0
aucune erreur ne s'est produit.
.TP
\-1
opération non supportée (
.I xxd \-r \-i
reste impossible).
.TP
1
erreur lors de l'analyse des options.
.TP
2
problème avec le fichier d'entrée.
.TP
3
problème avec le fichier de sortie.
.TP
4, 5
la position spécifiée n'est pas atteignable.
.SH VOIR AUSSI
uuencode(1), uudecode(1), patch(1)
.SH AVERTISSEMENTS
L'étrangeté de cet outil reflète celle du cerveau de ses créateurs.
Utilisez cet outil à vos risques et périls. Dupliquez vos fichiers.
Surveillez l'outil. Devenez un gourou.
.SH VERSION
Cette page de manuel documente la version 1.7 de xxd.
.SH AUTEUR
(c) 1990-1997 par Juergen Weigert
.br
<jnweiger@informatik.uni-erlangen.de>
.LP
"Distribute freely and credit me,
.br
make money and share with me,
.br
lose money and don't ask me."
.PP
Distribution libre en citant l'auteur,
.br
gagnez de l'argent, pensez à moi,
.br
perdez de l'argent, oubliez-moi.
.PP
Page de manuel débutée par Tony Nugent
.br
<tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au>
.br
Modifications mineures par Bram Moolenaar.
Édité par Juergen Weigert.
.SH TRADUCTION
Cette page de manuel a été traduite par David Blanchet
<david.blanchet@free.fr> 2004-12-24.

View File

@ -1,7 +1,7 @@
" Vim support file to detect file types " Vim support file to detect file types
" "
" Maintainer: Bram Moolenaar <Bram@vim.org> " Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2005 Mar 20 " Last Change: 2005 Apr 13
" Listen very carefully, I will say this only once " Listen very carefully, I will say this only once
if exists("did_load_filetypes") if exists("did_load_filetypes")
@ -1210,7 +1210,7 @@ au BufNewFile,BufRead .ratpoisonrc,ratpoisonrc setf ratpoison
au BufNewFile,BufRead *\,v setf rcs au BufNewFile,BufRead *\,v setf rcs
" Readline " Readline
au BufNewFile,BufRead .inputrc setf readline au BufNewFile,BufRead .inputrc,inputrc setf readline
" Registry for MS-Windows " Registry for MS-Windows
au BufNewFile,BufRead *.reg au BufNewFile,BufRead *.reg
@ -1484,9 +1484,6 @@ au BufNewFile,BufRead *.sp,*.spice setf spice
" Spyce " Spyce
au BufNewFile,BufRead *.spy,*.spi setf spyce au BufNewFile,BufRead *.spy,*.spi setf spyce
" Vim spell file
au BufNewFile,BufRead *.spl setf vimspell
" Squid " Squid
au BufNewFile,BufRead squid.conf setf squid au BufNewFile,BufRead squid.conf setf squid

View File

@ -1,8 +1,7 @@
" Vim indent file " Vim indent file
" Language: generic Changelog file " Language: generic Changelog file
" Language: C
" Maintainer: noone " Maintainer: noone
" Last Change: 2005 Mar 28 " Last Change: 2005 Mar 29
" Only load this indent file when no other was loaded. " Only load this indent file when no other was loaded.
if exists("b:did_indent") if exists("b:did_indent")

BIN
runtime/spell/en.latin1.spl Normal file

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
" Vim syntax file " Vim syntax file
" Language: Vim help file " Language: Vim help file
" Maintainer: Bram Moolenaar (Bram@vim.org) " Maintainer: Bram Moolenaar (Bram@vim.org)
" Last Change: 2004 May 17 " Last Change: 2005 Mar 31
" For version 5.x: Clear all syntax items " For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded " For version 6.x: Quit when a syntax file was already loaded
@ -111,9 +111,9 @@ syn match helpTodo "\t[* ]Todo\t\+[a-z].*"
" Additionally load a language-specific syntax file "help_ab.vim". " Additionally load a language-specific syntax file "help_ab.vim".
let i = match(expand("%"), '\.\a\ax$') let s:i = match(expand("%"), '\.\a\ax$')
if i > 0 if s:i > 0
exe "runtime syntax/help_" . strpart(expand("%"), i + 1, 2) . ".vim" exe "runtime syntax/help_" . strpart(expand("%"), s:i + 1, 2) . ".vim"
endif endif
syn sync minlines=40 syn sync minlines=40

View File

@ -1,7 +1,7 @@
" Vim syntax file " Vim syntax file
" Language: Icewm Menu " Language: Icewm Menu
" Maintainer: James Mahler <jmahler@purdue.edu> " Maintainer: James Mahler <James.Mahler@gmail.com>
" Last Change: Tue Dec 9 21:08:22 EST 2003 " Last Change: Fri Apr 1 15:13:48 EST 2005
" Extensions: ~/.icewm/menu " Extensions: ~/.icewm/menu
" Comment: Icewm is a lightweight window manager. This adds syntax " Comment: Icewm is a lightweight window manager. This adds syntax
" highlighting when editing your user's menu file (~/.icewm/menu). " highlighting when editing your user's menu file (~/.icewm/menu).
@ -9,7 +9,7 @@
" clear existing syntax " clear existing syntax
if version < 600 if version < 600
syntax clear syntax clear
elseif exists("bLcurrent_syntax") elseif exists("b:current_syntax")
finish finish
endif endif

View File

@ -1,34 +0,0 @@
" Vim syntax file
" Language: Vim spell file
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2005 Mar 24
" Quit when a syntax file was already loaded
if exists("b:current_syntax")
finish
endif
syn match vimspellError ".*"
syn match vimspellRegion "^---$"
syn match vimspellRegion "^\(-\l\l\)\+$"
syn match vimspellOK "^!\=[>+]\=[[:alpha:]].*"
syn match vimspellOK "^!\=+\S*"
syn match vimspellError "\s\+$"
syn match vimspellOK "^$"
syn match vimspellComment "^#.*"
" Define the default highlighting.
" Only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_diff_syntax_inits")
command -nargs=+ HiLink hi def link <args>
HiLink vimspellComment Comment
HiLink vimspellRegion DiffAdd
HiLink vimspellError Error
delcommand HiLink
endif
let b:current_syntax = "vimspell"
" vim: ts=8 sw=2

View File

@ -996,6 +996,7 @@ doESCkey:
if (*curbuf->b_p_tsr == NUL && *p_tsr == NUL) if (*curbuf->b_p_tsr == NUL && *p_tsr == NUL)
{ {
ctrl_x_mode = 0; ctrl_x_mode = 0;
edit_submode = NULL;
msg_attr((char_u *)_("'thesaurus' option is empty"), msg_attr((char_u *)_("'thesaurus' option is empty"),
hl_attr(HLF_E)); hl_attr(HLF_E));
if (emsg_silent == 0) if (emsg_silent == 0)
@ -1216,6 +1217,7 @@ doESCkey:
if (*curbuf->b_p_dict == NUL && *p_dict == NUL) if (*curbuf->b_p_dict == NUL && *p_dict == NUL)
{ {
ctrl_x_mode = 0; ctrl_x_mode = 0;
edit_submode = NULL;
msg_attr((char_u *)_("'dictionary' option is empty"), msg_attr((char_u *)_("'dictionary' option is empty"),
hl_attr(HLF_E)); hl_attr(HLF_E));
if (emsg_silent == 0) if (emsg_silent == 0)

View File

@ -95,7 +95,7 @@ static char *e_listidx = N_("E684: list index out of range: %ld");
static char *e_undefvar = N_("E121: Undefined variable: %s"); static char *e_undefvar = N_("E121: Undefined variable: %s");
static char *e_missbrac = N_("E111: Missing ']'"); static char *e_missbrac = N_("E111: Missing ']'");
static char *e_listarg = N_("E686: Argument of %s must be a List"); static char *e_listarg = N_("E686: Argument of %s must be a List");
static char *e_listdictarg = N_("E712: Argument of %s must be a List or Dictionaary"); static char *e_listdictarg = N_("E712: Argument of %s must be a List or Dictionary");
static char *e_emptykey = N_("E713: Cannot use empty key for Dictionary"); static char *e_emptykey = N_("E713: Cannot use empty key for Dictionary");
static char *e_listreq = N_("E714: List required"); static char *e_listreq = N_("E714: List required");
static char *e_dictreq = N_("E715: Dictionary required"); static char *e_dictreq = N_("E715: Dictionary required");

View File

@ -523,6 +523,8 @@ EX(CMD_mkexrc, "mkexrc", ex_mkrc,
BANG|FILE1|TRLBAR|CMDWIN), BANG|FILE1|TRLBAR|CMDWIN),
EX(CMD_mksession, "mksession", ex_mkrc, EX(CMD_mksession, "mksession", ex_mkrc,
BANG|FILE1|TRLBAR), BANG|FILE1|TRLBAR),
EX(CMD_mkspell, "mkspell", ex_mkspell,
BANG|NEEDARG|EXTRA|NOTRLCOM|TRLBAR|XFILE),
EX(CMD_mkvimrc, "mkvimrc", ex_mkrc, EX(CMD_mkvimrc, "mkvimrc", ex_mkrc,
BANG|FILE1|TRLBAR|CMDWIN), BANG|FILE1|TRLBAR|CMDWIN),
EX(CMD_mkview, "mkview", ex_mkrc, EX(CMD_mkview, "mkview", ex_mkrc,

View File

@ -1586,6 +1586,31 @@ get_arglist(gap, str)
return OK; return OK;
} }
#if defined(FEAT_QUICKFIX) || (defined(FEAT_SYN_HL) && defined(FEAT_MBYTE)) \
|| defined(PROTO)
/*
* Parse a list of arguments (file names), expand them and return in
* "fnames[fcountp]".
* Return FAIL or OK.
*/
int
get_arglist_exp(str, fcountp, fnamesp)
char_u *str;
int *fcountp;
char_u ***fnamesp;
{
garray_T ga;
int i;
if (get_arglist(&ga, str) == FAIL)
return FAIL;
i = gen_expand_wildcards(ga.ga_len, (char_u **)ga.ga_data,
fcountp, fnamesp, EW_FILE|EW_NOTFOUND);
ga_clear(&ga);
return i;
}
#endif
#if defined(FEAT_GUI) || defined(FEAT_CLIENTSERVER) || defined(PROTO) #if defined(FEAT_GUI) || defined(FEAT_CLIENTSERVER) || defined(PROTO)
/* /*
* Redefine the argument list. * Redefine the argument list.
@ -2375,11 +2400,13 @@ ex_runtime(eap)
cmd_runtime(eap->arg, eap->forceit); cmd_runtime(eap->arg, eap->forceit);
} }
static void source_callback __ARGS((char_u *fname)); static void source_callback __ARGS((char_u *fname, void *cookie));
/*ARGSUSED*/
static void static void
source_callback(fname) source_callback(fname, cookie)
char_u *fname; char_u *fname;
void *cookie;
{ {
(void)do_source(fname, FALSE, FALSE); (void)do_source(fname, FALSE, FALSE);
} }
@ -2395,21 +2422,22 @@ cmd_runtime(name, all)
char_u *name; char_u *name;
int all; int all;
{ {
return do_in_runtimepath(name, all, source_callback); return do_in_runtimepath(name, all, source_callback, NULL);
} }
/* /*
* Find "name" in 'runtimepath'. When found, call the "callback" function for * Find "name" in 'runtimepath'. When found, invoke the callback function for
* it. * it: callback(fname, "cookie")
* When "all" is TRUE repeat for all matches, otherwise only the first one is * When "all" is TRUE repeat for all matches, otherwise only the first one is
* used. * used.
* Returns OK when at least one match found, FAIL otherwise. * Returns OK when at least one match found, FAIL otherwise.
*/ */
int int
do_in_runtimepath(name, all, callback) do_in_runtimepath(name, all, callback, cookie)
char_u *name; char_u *name;
int all; int all;
void (*callback)__ARGS((char_u *fname)); void (*callback)__ARGS((char_u *fname, void *ck));
void *cookie;
{ {
char_u *rtp; char_u *rtp;
char_u *np; char_u *np;
@ -2465,7 +2493,7 @@ do_in_runtimepath(name, all, callback)
{ {
for (i = 0; i < num_files; ++i) for (i = 0; i < num_files; ++i)
{ {
(*callback)(files[i]); (*callback)(files[i], cookie);
did_one = TRUE; did_one = TRUE;
if (!all) if (!all)
break; break;
@ -4763,7 +4791,7 @@ static void prt_real_bits __ARGS((double real, int precision, int *pinteger, int
static void prt_write_real __ARGS((double val, int prec)); static void prt_write_real __ARGS((double val, int prec));
static void prt_def_var __ARGS((char *name, double value, int prec)); static void prt_def_var __ARGS((char *name, double value, int prec));
static void prt_flush_buffer __ARGS((void)); static void prt_flush_buffer __ARGS((void));
static void prt_resource_name __ARGS((char_u *filename)); static void prt_resource_name __ARGS((char_u *filename, void *cookie));
static int prt_find_resource __ARGS((char *name, struct prt_ps_resource_S *resource)); static int prt_find_resource __ARGS((char *name, struct prt_ps_resource_S *resource));
static int prt_open_resource __ARGS((struct prt_ps_resource_S *resource)); static int prt_open_resource __ARGS((struct prt_ps_resource_S *resource));
static int prt_check_resource __ARGS((struct prt_ps_resource_S *resource, char_u *version)); static int prt_check_resource __ARGS((struct prt_ps_resource_S *resource, char_u *version));
@ -5152,12 +5180,14 @@ prt_flush_buffer()
} }
} }
static char_u *resource_filename;
static void static void
prt_resource_name(filename) prt_resource_name(filename, cookie)
char_u *filename; char_u *filename;
void *cookie;
{ {
char_u *resource_filename = cookie;
if (STRLEN(filename) >= MAXPATHL) if (STRLEN(filename) >= MAXPATHL)
*resource_filename = NUL; *resource_filename = NUL;
else else
@ -5177,9 +5207,9 @@ prt_find_resource(name, resource)
add_pathsep(buffer); add_pathsep(buffer);
STRCAT(buffer, name); STRCAT(buffer, name);
STRCAT(buffer, ".ps"); STRCAT(buffer, ".ps");
resource_filename = resource->filename; resource->filename[0] = NUL;
*resource_filename = NUL; return (do_in_runtimepath(buffer, FALSE, prt_resource_name,
return (do_in_runtimepath(buffer, FALSE, prt_resource_name) resource->filename)
&& resource->filename[0] != NUL); && resource->filename[0] != NUL);
} }
@ -5980,7 +6010,7 @@ mch_print_init(psettings, jobname, forceit)
if (!mbfont_opts[OPT_MBFONT_REGULAR].present) if (!mbfont_opts[OPT_MBFONT_REGULAR].present)
{ {
EMSG(_("E675: No default font specfifed for multi-byte printing.")); EMSG(_("E675: No default font specified for multi-byte printing."));
return FALSE; return FALSE;
} }

View File

@ -38,9 +38,9 @@
/* Magic value for algorithm that walks through the array. */ /* Magic value for algorithm that walks through the array. */
#define PERTURB_SHIFT 5 #define PERTURB_SHIFT 5
static int hash_may_resize __ARGS((hashtab_T *ht)); static int hash_may_resize __ARGS((hashtab_T *ht, int minitems));
#if 0 /* not used */ #if defined(FEAT_SYN_HL) || defined(PROTO)
/* /*
* Create an empty hash table. * Create an empty hash table.
* Returns NULL when out of memory. * Returns NULL when out of memory.
@ -189,7 +189,7 @@ hash_add_item(ht, hi, key, hash)
hash_T hash; hash_T hash;
{ {
/* If resizing failed before and it fails again we can't add an item. */ /* If resizing failed before and it fails again we can't add an item. */
if (ht->ht_error && hash_may_resize(ht) == FAIL) if (ht->ht_error && hash_may_resize(ht, 0) == FAIL)
return FAIL; return FAIL;
++ht->ht_used; ++ht->ht_used;
@ -199,7 +199,7 @@ hash_add_item(ht, hi, key, hash)
hi->hi_hash = hash; hi->hi_hash = hash;
/* When the space gets low may resize the array. */ /* When the space gets low may resize the array. */
return hash_may_resize(ht); return hash_may_resize(ht, 0);
} }
#if 0 /* not used */ #if 0 /* not used */
@ -233,7 +233,7 @@ hash_remove(ht, hi)
{ {
--ht->ht_used; --ht->ht_used;
hi->hi_key = HI_KEY_REMOVED; hi->hi_key = HI_KEY_REMOVED;
hash_may_resize(ht); hash_may_resize(ht, 0);
} }
/* /*
@ -248,6 +248,20 @@ hash_lock(ht)
++ht->ht_locked; ++ht->ht_locked;
} }
/*
* Lock a hashtable at the specified number of entries.
* Caller must make sure no more than "size" entries will be added.
* Must call hash_unlock() later.
*/
void
hash_lock_size(ht, size)
hashtab_T *ht;
int size;
{
(void)hash_may_resize(ht, size);
++ht->ht_locked;
}
/* /*
* Unlock a hashtable: allow ht_array changes again. * Unlock a hashtable: allow ht_array changes again.
* Table will be resized (shrink) when necessary. * Table will be resized (shrink) when necessary.
@ -258,7 +272,7 @@ hash_unlock(ht)
hashtab_T *ht; hashtab_T *ht;
{ {
--ht->ht_locked; --ht->ht_locked;
(void)hash_may_resize(ht); (void)hash_may_resize(ht, 0);
} }
/* /*
@ -267,8 +281,9 @@ hash_unlock(ht)
* Returns OK or FAIL (out of memory). * Returns OK or FAIL (out of memory).
*/ */
static int static int
hash_may_resize(ht) hash_may_resize(ht, minitems)
hashtab_T *ht; hashtab_T *ht;
int minitems; /* minimal number of items */
{ {
hashitem_T temparray[HT_INIT_SIZE]; hashitem_T temparray[HT_INIT_SIZE];
hashitem_T *oldarray, *newarray; hashitem_T *oldarray, *newarray;
@ -291,16 +306,19 @@ hash_may_resize(ht)
EMSG("hash_may_resize(): table completely filled"); EMSG("hash_may_resize(): table completely filled");
#endif #endif
if (minitems == 0)
{
/* Return quickly for small tables with at least two NULL items. NULL /* Return quickly for small tables with at least two NULL items. NULL
* items are required for the lookup to decide a key isn't there. */ * items are required for the lookup to decide a key isn't there. */
if (ht->ht_filled < HT_INIT_SIZE - 1 && ht->ht_array == ht->ht_smallarray) if (ht->ht_filled < HT_INIT_SIZE - 1
&& ht->ht_array == ht->ht_smallarray)
return OK; return OK;
/* /*
* Grow or refill the array when it's more than 2/3 full (including * Grow or refill the array when it's more than 2/3 full (including
* removed items, so that they get cleaned up). * removed items, so that they get cleaned up).
* Shrink the array when it's less than 1/5 full. When growing it is at * Shrink the array when it's less than 1/5 full. When growing it is
* least 1/4 full (avoids repeated grow-shrink operations) * at least 1/4 full (avoids repeated grow-shrink operations)
*/ */
oldsize = ht->ht_mask + 1; oldsize = ht->ht_mask + 1;
if (ht->ht_filled * 3 < oldsize * 2 && ht->ht_used > oldsize / 5) if (ht->ht_filled * 3 < oldsize * 2 && ht->ht_used > oldsize / 5)
@ -310,6 +328,15 @@ hash_may_resize(ht)
minsize = ht->ht_used * 2; /* it's big, don't make too much room */ minsize = ht->ht_used * 2; /* it's big, don't make too much room */
else else
minsize = ht->ht_used * 4; /* make plenty of room */ minsize = ht->ht_used * 4; /* make plenty of room */
}
else
{
/* Use specified size. */
if (minitems < ht->ht_used) /* just in case... */
minitems = ht->ht_used;
minsize = minitems * 3 / 2; /* array is up to 2/3 full */
}
newsize = HT_INIT_SIZE; newsize = HT_INIT_SIZE;
while (newsize < minsize) while (newsize < minsize)
{ {

View File

@ -711,7 +711,7 @@ main
#endif #endif
case 'M': /* "-M" no changes or writing of files */ case 'M': /* "-M" no changes or writing of files */
reset_modifiable(); reset_modifiable();
/* FALLTRHOUGH */ /* FALLTHROUGH */
case 'm': /* "-m" no writing of files */ case 'm': /* "-m" no writing of files */
p_write = FALSE; p_write = FALSE;
@ -859,7 +859,7 @@ main
argv_idx = -1; argv_idx = -1;
break; break;
} }
/*FALLTRHOUGH*/ /*FALLTHROUGH*/
case 'S': /* "-S {file}" execute Vim script */ case 'S': /* "-S {file}" execute Vim script */
case 'i': /* "-i {viminfo}" use for viminfo */ case 'i': /* "-i {viminfo}" use for viminfo */
#ifndef FEAT_DIFF #ifndef FEAT_DIFF
@ -1011,7 +1011,7 @@ scripterror:
argv_idx = -1; argv_idx = -1;
break; break;
} }
/*FALLTRHOUGH*/ /*FALLTHROUGH*/
case 'W': /* "-W {scriptout}" overwrite script file */ case 'W': /* "-W {scriptout}" overwrite script file */
if (scriptout != NULL) if (scriptout != NULL)
goto scripterror; goto scripterror;

View File

@ -3627,7 +3627,7 @@ error:
if (flags & PUT_CURSLINE) if (flags & PUT_CURSLINE)
{ {
/* ":put": put cursor on last inserte line */ /* ":put": put cursor on last inserted line */
curwin->w_cursor.lnum = lnum; curwin->w_cursor.lnum = lnum;
beginline(BL_WHITE | BL_FIX); beginline(BL_WHITE | BL_FIX);
} }

View File

@ -3001,10 +3001,6 @@ set_init_1()
# if defined(WIN3264) && defined(FEAT_MBYTE) # if defined(WIN3264) && defined(FEAT_MBYTE)
/* $HOME may have characters in active code page. */ /* $HOME may have characters in active code page. */
init_homedir(); init_homedir();
# endif
#ifdef FEAT_SYN_HL
/* Need to reload spell dictionaries */
spell_reload();
# endif # endif
} }
else else

File diff suppressed because it is too large Load Diff

View File

@ -37,6 +37,7 @@ int check_changed_any __ARGS((int hidden));
int check_fname __ARGS((void)); int check_fname __ARGS((void));
int buf_write_all __ARGS((buf_T *buf, int forceit)); int buf_write_all __ARGS((buf_T *buf, int forceit));
int get_arglist __ARGS((garray_T *gap, char_u *str)); int get_arglist __ARGS((garray_T *gap, char_u *str));
int get_arglist_exp __ARGS((char_u *str, int *fcountp, char_u ***fnamesp));
void set_arglist __ARGS((char_u *str)); void set_arglist __ARGS((char_u *str));
void check_arg_idx __ARGS((win_T *win)); void check_arg_idx __ARGS((win_T *win));
void ex_args __ARGS((exarg_T *eap)); void ex_args __ARGS((exarg_T *eap));
@ -53,7 +54,7 @@ void ex_listdo __ARGS((exarg_T *eap));
void ex_compiler __ARGS((exarg_T *eap)); void ex_compiler __ARGS((exarg_T *eap));
void ex_runtime __ARGS((exarg_T *eap)); void ex_runtime __ARGS((exarg_T *eap));
int cmd_runtime __ARGS((char_u *name, int all)); int cmd_runtime __ARGS((char_u *name, int all));
int do_in_runtimepath __ARGS((char_u *name, int all, void (*callback)(char_u *fname))); int do_in_runtimepath __ARGS((char_u *name, int all, void (*callback)(char_u *fname, void *cookie), void *cookie));
void ex_options __ARGS((exarg_T *eap)); void ex_options __ARGS((exarg_T *eap));
void ex_source __ARGS((exarg_T *eap)); void ex_source __ARGS((exarg_T *eap));
linenr_T *source_breakpoint __ARGS((void *cookie)); linenr_T *source_breakpoint __ARGS((void *cookie));

View File

@ -1,4 +1,5 @@
/* hashtable.c */ /* hashtable.c */
hashtab_T *hash_create __ARGS((void));
void hash_init __ARGS((hashtab_T *ht)); void hash_init __ARGS((hashtab_T *ht));
void hash_clear __ARGS((hashtab_T *ht)); void hash_clear __ARGS((hashtab_T *ht));
hashitem_T *hash_find __ARGS((hashtab_T *ht, char_u *key)); hashitem_T *hash_find __ARGS((hashtab_T *ht, char_u *key));
@ -7,6 +8,7 @@ int hash_add __ARGS((hashtab_T *ht, char_u *key));
int hash_add_item __ARGS((hashtab_T *ht, hashitem_T *hi, char_u *key, hash_T hash)); int hash_add_item __ARGS((hashtab_T *ht, hashitem_T *hi, char_u *key, hash_T hash));
void hash_remove __ARGS((hashtab_T *ht, hashitem_T *hi)); void hash_remove __ARGS((hashtab_T *ht, hashitem_T *hi));
void hash_lock __ARGS((hashtab_T *ht)); void hash_lock __ARGS((hashtab_T *ht));
void hash_lock_size __ARGS((hashtab_T *ht, int size));
void hash_unlock __ARGS((hashtab_T *ht)); void hash_unlock __ARGS((hashtab_T *ht));
hash_T hash_hash __ARGS((char_u *key)); hash_T hash_hash __ARGS((char_u *key));
/* vim: set ft=c : */ /* vim: set ft=c : */

View File

@ -1,5 +1,7 @@
/* spell.c */ /* spell.c */
int spell_check __ARGS((win_T *wp, char_u *ptr, int *attrp)); int spell_check __ARGS((win_T *wp, char_u *line, char_u *ptr, int *attrp));
int spell_move_to __ARGS((int dir, int allwords));
char_u *did_set_spelllang __ARGS((buf_T *buf)); char_u *did_set_spelllang __ARGS((buf_T *buf));
void spell_reload __ARGS((void)); void spell_reload __ARGS((void));
void ex_mkspell __ARGS((exarg_T *eap));
/* vim: set ft=c : */ /* vim: set ft=c : */

View File

@ -2800,7 +2800,11 @@ mouse_comp_pos(win, rowp, colp, lnump)
{ {
#ifdef FEAT_DIFF #ifdef FEAT_DIFF
/* Don't include filler lines in "count" */ /* Don't include filler lines in "count" */
if (win->w_p_diff && !hasFoldingWin(win, lnum, NULL, NULL, TRUE, NULL)) if (win->w_p_diff
# ifdef FEAT_FOLDING
&& !hasFoldingWin(win, lnum, NULL, NULL, TRUE, NULL)
# endif
)
{ {
if (lnum == win->w_topline) if (lnum == win->w_topline)
row -= win->w_topfill; row -= win->w_topfill;