mirror of
https://github.com/vim/vim.git
synced 2025-10-22 08:34:29 -04:00
updated for version 7.0119
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
*eval.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
|
||||
*eval.txt* For Vim version 7.0aa. Last change: 2005 Jul 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1585,6 +1585,7 @@ mode() String current editing mode
|
||||
nextnonblank( {lnum}) Number line nr of non-blank line >= {lnum}
|
||||
nr2char( {expr}) String single char with ASCII value {expr}
|
||||
prevnonblank( {lnum}) Number line nr of non-blank line <= {lnum}
|
||||
printf( {fmt}, {expr1}...) String format text
|
||||
range( {expr} [, {max} [, {stride}]])
|
||||
List items from {expr} to {max}
|
||||
readfile({fname} [, {binary} [, {max}]])
|
||||
@@ -3337,6 +3338,127 @@ nr2char({expr}) *nr2char()*
|
||||
characters. nr2char(0) is a real NUL and terminates the
|
||||
string, thus results in an empty string.
|
||||
|
||||
printf({fmt}, {expr1} ...) *printf()*
|
||||
Return a String with {fmt}, where "%" items are replaced by
|
||||
the formatted form of their respective arguments. Example: >
|
||||
:echo printf("%4d: E%d %.30s", lnum, err, text)
|
||||
< May result in:
|
||||
99: E42 asdfasdfasdfasdfasdfasdfasdfas ~
|
||||
|
||||
Often used items are:
|
||||
%s string
|
||||
%6s string right-aligned in 6 characters
|
||||
%c character
|
||||
%d decimal number
|
||||
%5d decimal number padded with spaces to 5 characters
|
||||
%x hex number
|
||||
%04x hex number padded with zeros to at least 4 characters
|
||||
%X hex number using upper case letters
|
||||
%o octal number
|
||||
%% the % character
|
||||
|
||||
Conversion specifications start with '%' and end with the
|
||||
conversion type. All other characters are copied unchanged to
|
||||
the result.
|
||||
|
||||
The "%" starts a conversion specification. The following
|
||||
arguments appear in sequence. Overview:
|
||||
|
||||
% flags min-field-width .precision type
|
||||
|
||||
- Zero or more of the following flags:
|
||||
|
||||
# The value should be converted to an "alternate
|
||||
form". For c, d, and s conversions, this option
|
||||
has no effect. For o conversions, the precision
|
||||
of the number is increased to force the first
|
||||
character of the output string to a zero (except
|
||||
if a zero value is printed with an explicit
|
||||
precision of zero).
|
||||
For x and X conversions, a non-zero result has
|
||||
the string "0x" (or "0X" for X conversions)
|
||||
prepended to it.
|
||||
|
||||
0 (zero) Zero padding. For all conversions the converted
|
||||
value is padded on the left with zeros rather
|
||||
than blanks. If a precision is given with a
|
||||
numeric conversion (d, o, x, and X), the 0 flag
|
||||
is ignored.
|
||||
|
||||
- A negative field width flag; the converted value
|
||||
is to be left adjusted on the field boundary.
|
||||
The converted value is padded on the right with
|
||||
blanks, rather than on the left with blanks or
|
||||
zeros. A - overrides a 0 if both are given.
|
||||
|
||||
' ' (space) A blank should be left before a positive
|
||||
number produced by a signed conversion (d).
|
||||
|
||||
+ A sign must always be placed before a number
|
||||
produced by a signed conversion. A + overrides
|
||||
a space if both are used.
|
||||
|
||||
- An optional decimal digit string specifying a minimum
|
||||
field width. If the converted value has fewer characters
|
||||
than the field width, it will be padded with spaces on the
|
||||
left (or right, if the left-adjustment flag has been
|
||||
given) to fill out the field width.
|
||||
|
||||
- An optional precision, in the form of a period '.'
|
||||
followed by an optional digit string. If the digit string
|
||||
is omitted, the precision is taken as zero. This gives
|
||||
the minimum number of digits to appear for d, o, x, and X
|
||||
conversions, or the maximum number of characters to be
|
||||
printed from a string for s conversions.
|
||||
|
||||
- A character that specifies the type of conversion to be
|
||||
applied, see below.
|
||||
|
||||
A field width or precision, or both, may be indicated by an
|
||||
asterisk '*' instead of a digit string. In this case, a
|
||||
Number argument supplies the field width or precision. A
|
||||
negative field width is treated as a left adjustment flag
|
||||
followed by a positive field width; a negative precision is
|
||||
treated as though it were missing. Example: >
|
||||
:echo printf("%d: %.*s", nr, columns, line)
|
||||
< This limits the length of the text used from "line" to
|
||||
"columns" bytes.
|
||||
|
||||
The conversion specifiers and their meanings are:
|
||||
|
||||
doxX The Number argument is converted to signed decimal
|
||||
(d), unsigned octal (o), or unsigned hexadecimal (x
|
||||
and X) notation. The letters "abcdef" are used for
|
||||
x conversions; the letters "ABCDEF" are used for X
|
||||
conversions. The precision, if any, gives the minimum
|
||||
number of digits that must appear; if the converted
|
||||
value requires fewer digits, it is padded on the left
|
||||
with zeros.
|
||||
|
||||
c The Number argument is converted to a byte, and
|
||||
the resulting character is written.
|
||||
|
||||
s The String argument is used. If a precision is
|
||||
specified, no more bytes than the number specified are
|
||||
written.
|
||||
|
||||
% A '%' is written. No argument is converted. The
|
||||
complete conversion specification is "%%".
|
||||
|
||||
Each argument can be Number or String and is converted
|
||||
automatically to fit the conversion specifier.
|
||||
|
||||
In no case does a non-existent or small field width cause
|
||||
truncation of a numeric field; if the result of a conversion
|
||||
is wider than the field width, the field is expanded to
|
||||
contain the conversion result.
|
||||
|
||||
*E766* *767*
|
||||
The number of {exprN} arguments must exactly match the number
|
||||
of "%" items. If there are not sufficient or too many
|
||||
arguments an error is given.
|
||||
|
||||
|
||||
prevnonblank({lnum}) *prevnonblank()*
|
||||
Return the line number of the first line at or above {lnum}
|
||||
that is not blank. Example: >
|
||||
|
@@ -1,4 +1,4 @@
|
||||
*index.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
|
||||
*index.txt* For Vim version 7.0aa. Last change: 2005 Jul 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -150,6 +150,7 @@ commands in CTRL-X submode *i_CTRL-X_index*
|
||||
|i_CTRL-X_CTRL-K| CTRL-X CTRL-K complete identifiers from dictionary
|
||||
|i_CTRL-X_CTRL-L| CTRL-X CTRL-L complete whole lines
|
||||
|i_CTRL-X_CTRL-N| CTRL-X CTRL-N next completion
|
||||
|i_CTRL-X_CTRL-O| CTRL-X CTRL-O occult completion
|
||||
|i_CTRL-X_CTRL-P| CTRL-X CTRL-P previous completion
|
||||
|i_CTRL-X_CTRL-T| CTRL-X CTRL-T complete identifiers from thesaurus
|
||||
|i_CTRL-X_CTRL-Y| CTRL-X CTRL-Y scroll down
|
||||
|
@@ -1,4 +1,4 @@
|
||||
*insert.txt* For Vim version 7.0aa. Last change: 2005 Jul 26
|
||||
*insert.txt* For Vim version 7.0aa. Last change: 2005 Jul 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -547,7 +547,7 @@ entering new data while keeping all the columns aligned.
|
||||
==============================================================================
|
||||
7. Insert mode completion *ins-completion*
|
||||
|
||||
In Insert and Replace modes, there are several commands to complete part of a
|
||||
In Insert and Replace mode, there are several commands to complete part of a
|
||||
keyword or line that has been typed. This is useful if you are using
|
||||
complicated keywords (e.g., function names with capitals and underscores).
|
||||
|
||||
@@ -565,7 +565,9 @@ Completion can be done for:
|
||||
7. file names |i_CTRL-X_CTRL-F|
|
||||
8. definitions or macros |i_CTRL-X_CTRL-D|
|
||||
9. Vim command-line |i_CTRL-X_CTRL-V|
|
||||
10. keywords in 'complete' |i_CTRL-N|
|
||||
10. User defined completion |i_CTRL-X_CTRL-U|
|
||||
11. Occult completion |i_CTRL-X_CTRL-O|
|
||||
12. keywords in 'complete' |i_CTRL-N|
|
||||
|
||||
All these (except 2) are done in CTRL-X mode. This is a sub-mode of Insert
|
||||
and Replace modes. You enter CTRL-X mode by typing CTRL-X and one of the
|
||||
@@ -839,7 +841,8 @@ CTRL-X CTRL-D Search in the current and included files for the
|
||||
Completing Vim commands *compl-vim*
|
||||
|
||||
Completion is context-sensitive. It works like on the Command-line. It
|
||||
completes an Ex command as well as its arguments.
|
||||
completes an Ex command as well as its arguments. This is useful when writing
|
||||
a Vim script.
|
||||
|
||||
*i_CTRL-X_CTRL-V*
|
||||
CTRL-X CTRL-V Guess what kind of item is in front of the cursor and
|
||||
@@ -858,7 +861,7 @@ CTRL-X CTRL-V Guess what kind of item is in front of the cursor and
|
||||
completion, for example: >
|
||||
:imap <Tab> <C-X><C-V>
|
||||
|
||||
User defined completing *compl-function*
|
||||
User defined completion *compl-function*
|
||||
|
||||
Completion is done by a function that can be defined by the user with the
|
||||
'completefunc' option. See the option for how the function is called and an
|
||||
@@ -875,6 +878,21 @@ CTRL-X CTRL-U Guess what kind of item is in front of the cursor and
|
||||
previous one.
|
||||
|
||||
|
||||
Occult completion *compl-occult*
|
||||
|
||||
Completion is done by a supernatural being.
|
||||
|
||||
*i_CTRL-X_CTRL-O*
|
||||
CTRL-X CTRL-O Guess what kind of item is in front of the cursor and
|
||||
find the first match for it.
|
||||
CTRL-O or
|
||||
CTRL-N Use the next match. This match replaces the previous
|
||||
one.
|
||||
|
||||
CTRL-P Use the previous match. This match replaces the
|
||||
previous one.
|
||||
|
||||
|
||||
Completing keywords from different sources *compl-generic*
|
||||
|
||||
*i_CTRL-N*
|
||||
|
@@ -1,4 +1,4 @@
|
||||
*options.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
|
||||
*options.txt* For Vim version 7.0aa. Last change: 2005 Jul 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -1585,7 +1585,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
local to buffer
|
||||
{not in Vi}
|
||||
This option specifies a completion function to be used for CTRL-X
|
||||
CTRL-X. The function will be invoked with four arguments:
|
||||
CTRL-U. The function will be invoked with four arguments:
|
||||
a:line the text of the current line
|
||||
a:base the text with which matches should match
|
||||
a:col column in a:line where the cursor is, first column is
|
||||
@@ -2282,8 +2282,6 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
|viminfo-file|. And Vim expects the terminal to use utf-8 too. Thus
|
||||
setting 'encoding' to one of these values instead of utf-8 only has
|
||||
effect for encoding used for files when 'fileencoding' is empty.
|
||||
"utf-16" is NOT supported (and probably never will be, since it's such
|
||||
an ugly encoding). *utf-16*
|
||||
|
||||
When 'encoding' is set to a Unicode encoding, and 'fileencodings' was
|
||||
not set yet, the default for 'fileencodings' is changed.
|
||||
|
@@ -1,4 +1,4 @@
|
||||
*syntax.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
|
||||
*syntax.txt* For Vim version 7.0aa. Last change: 2005 Jul 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -3648,7 +3648,8 @@ also tell where it was last set. Example: >
|
||||
Last set from /home/mool/vim/vim7/runtime/syntax/syncolor.vim ~
|
||||
|
||||
For details about when this message is given and when it's valid see
|
||||
|:set-verbose|.
|
||||
|:set-verbose|. When ":hi clear" is used then the script where this command
|
||||
is used will be mentioned for the default values.
|
||||
|
||||
*highlight-args* *E416* *E417* *E423*
|
||||
There are three types of terminals for highlighting:
|
||||
|
@@ -1596,6 +1596,7 @@ $VIMRUNTIME starting.txt /*$VIMRUNTIME*
|
||||
45.4 usr_45.txt /*45.4*
|
||||
45.5 usr_45.txt /*45.5*
|
||||
755 spell.txt /*755*
|
||||
767 eval.txt /*767*
|
||||
90.1 usr_90.txt /*90.1*
|
||||
90.2 usr_90.txt /*90.2*
|
||||
90.3 usr_90.txt /*90.3*
|
||||
@@ -3734,6 +3735,7 @@ E762 spell.txt /*E762*
|
||||
E763 spell.txt /*E763*
|
||||
E764 spell.txt /*E764*
|
||||
E765 options.txt /*E765*
|
||||
E766 eval.txt /*E766*
|
||||
E77 message.txt /*E77*
|
||||
E78 motion.txt /*E78*
|
||||
E79 message.txt /*E79*
|
||||
@@ -4449,6 +4451,7 @@ compl-filename insert.txt /*compl-filename*
|
||||
compl-function insert.txt /*compl-function*
|
||||
compl-generic insert.txt /*compl-generic*
|
||||
compl-keyword insert.txt /*compl-keyword*
|
||||
compl-occult insert.txt /*compl-occult*
|
||||
compl-tag insert.txt /*compl-tag*
|
||||
compl-vim insert.txt /*compl-vim*
|
||||
compl-whole-line insert.txt /*compl-whole-line*
|
||||
@@ -5334,6 +5337,7 @@ i_CTRL-X_CTRL-I insert.txt /*i_CTRL-X_CTRL-I*
|
||||
i_CTRL-X_CTRL-K insert.txt /*i_CTRL-X_CTRL-K*
|
||||
i_CTRL-X_CTRL-L insert.txt /*i_CTRL-X_CTRL-L*
|
||||
i_CTRL-X_CTRL-N insert.txt /*i_CTRL-X_CTRL-N*
|
||||
i_CTRL-X_CTRL-O insert.txt /*i_CTRL-X_CTRL-O*
|
||||
i_CTRL-X_CTRL-P insert.txt /*i_CTRL-X_CTRL-P*
|
||||
i_CTRL-X_CTRL-T insert.txt /*i_CTRL-X_CTRL-T*
|
||||
i_CTRL-X_CTRL-U insert.txt /*i_CTRL-X_CTRL-U*
|
||||
@@ -5996,6 +6000,7 @@ print-intro print.txt /*print-intro*
|
||||
print-options print.txt /*print-options*
|
||||
print.txt print.txt /*print.txt*
|
||||
printcap-syntax syntax.txt /*printcap-syntax*
|
||||
printf() eval.txt /*printf()*
|
||||
printing print.txt /*printing*
|
||||
printing-formfeed print.txt /*printing-formfeed*
|
||||
profile repeat.txt /*profile*
|
||||
|
@@ -1,4 +1,4 @@
|
||||
*todo.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
|
||||
*todo.txt* For Vim version 7.0aa. Last change: 2005 Jul 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -30,8 +30,6 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
|
||||
*known-bugs*
|
||||
-------------------- Known bugs and current work -----------------------
|
||||
|
||||
Is it simple to let ":verbose hi mailSubject" mention where it was last set?
|
||||
|
||||
Mac unicode patch (Da Woon Jung):
|
||||
- selecting proportional font breaks display
|
||||
- UTF-8 text causes display problems. Font replacement causes this.
|
||||
@@ -55,10 +53,31 @@ Awaiting response:
|
||||
the screen.
|
||||
- mblen(NULL, 0) also in Vim 6.3?
|
||||
|
||||
Implement printf("blah %d: %s", nr, str)? Use vim_snprintf code.
|
||||
|
||||
PLANNED FOR VERSION 7.0:
|
||||
|
||||
- "INTELLISENSE". First cleanup the Insert-mode completion.
|
||||
- Occult completion: Understands the programming language and finds matches
|
||||
that make sense. Esp. members of classes/structs.
|
||||
|
||||
It's not much different from other Insert-mode completion, use the same
|
||||
mechanism. Use CTRL-X CTRL-O.
|
||||
|
||||
Separately develop the completion logic and the UI. When adding UI stuff
|
||||
make it work for all completion methods.
|
||||
|
||||
First cleanup the Insert-mode completion.
|
||||
|
||||
UI:
|
||||
- Use 'wildmenu' kind of thing.
|
||||
- Put the list of choices right under the place where they would be
|
||||
inserted.
|
||||
|
||||
Completion logic:
|
||||
Use 'coupler' option to list items that connect words. For C: ".,->".
|
||||
In function arguments suggest variables of expected type.
|
||||
|
||||
Ideas from others:
|
||||
http://www.vim.org/scripts/script.php?script_id=747
|
||||
www.vim.org script 1213 (Java Development Environment) (Fuchuan Wang)
|
||||
http://sourceforge.net/projects/insenvim
|
||||
@@ -67,24 +86,22 @@ PLANNED FOR VERSION 7.0:
|
||||
and http://stud4.tuwien.ac.at/~e0125672/icomplete/
|
||||
http://cedet.sourceforge.net/intellisense.shtml (for Emacs)
|
||||
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.
|
||||
Ideas from the Vim 7 BOF at SANE:
|
||||
- It's not possible to have one solution for all languages. Design an
|
||||
interface for completion plugins. The matches can be done in a
|
||||
Vim-script list.
|
||||
- For interpreted languages, use the interpreter to obtain information.
|
||||
Should work for Java (Eclipse does this), Python, Tcl, etc.
|
||||
Richard Emberson mentioned working on an interface to Java.
|
||||
- Check Readline for its completion interface.
|
||||
- Use ctags for other languages. Writing a file could trigger running
|
||||
ctags, merging the tags of the changed file.
|
||||
Also see "Visual Assist" http://www.wholetomato.com/products:
|
||||
- Put the list of choices right under the place where they would be
|
||||
inserted.
|
||||
Emads: http://www.xref-tech.com/xrefactory/more_c_completion.html
|
||||
Ideas from the Vim 7 BOF at SANE:
|
||||
- It's not possible to have one solution for all languages. Design an
|
||||
interface for completion plugins. The matches can be done in a
|
||||
Vim-script list.
|
||||
- For interpreted languages, use the interpreter to obtain information.
|
||||
Should work for Java (Eclipse does this), Python, Tcl, etc.
|
||||
Richard Emberson mentioned working on an interface to Java.
|
||||
- Check Readline for its completion interface.
|
||||
- Use ctags for other languages. Writing a file could trigger running
|
||||
ctags, merging the tags of the changed file.
|
||||
"Visual Assist" http://www.wholetomato.com/products:
|
||||
Completion in .NET framework SharpDevelop: http://www.icsharpcode.net
|
||||
|
||||
- Pre-expand abbreviations, show which abbrevs would match?
|
||||
- Completion in .NET framework SharpDevelop: http://www.icsharpcode.net
|
||||
|
||||
- UNDO TREE: keep all states of the text, don't delete undo info.
|
||||
When making a change, instead of clearing any future undo (thus redo)
|
||||
info, make a new branch.
|
||||
|
@@ -1,4 +1,4 @@
|
||||
*version7.txt* For Vim version 7.0aa. Last change: 2005 Jul 28
|
||||
*version7.txt* For Vim version 7.0aa. Last change: 2005 Jul 29
|
||||
|
||||
|
||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||
@@ -409,6 +409,7 @@ New functions: ~
|
||||
|max()| maximum value in a List or Dictionary
|
||||
|min()| minimum value in a List or Dictionary
|
||||
|mkdir()| create a directory
|
||||
|printf()| format text
|
||||
|readfile()| read a file into a list of lines
|
||||
|remove()| remove one or more items from a List or Dictionary
|
||||
|repeat()| repeat "expr" "count" times (Christophe Poucet)
|
||||
|
Reference in New Issue
Block a user