diff options
author | Bram Moolenaar <Bram@vim.org> | 2005-07-29 22:36:03 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2005-07-29 22:36:03 +0000 |
commit | 4be06f9e1b7ccde37f783e09b6ae35f69aa67995 (patch) | |
tree | 4f1e3168c803127f244be4c79d3fc032dda6dca6 /runtime | |
parent | 661b1820956743fd67f957f8dbbc45a93fe38dc9 (diff) |
updated for version 7.0119v7.0119
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/doc/eval.txt | 124 | ||||
-rw-r--r-- | runtime/doc/index.txt | 3 | ||||
-rw-r--r-- | runtime/doc/insert.txt | 28 | ||||
-rw-r--r-- | runtime/doc/options.txt | 6 | ||||
-rw-r--r-- | runtime/doc/syntax.txt | 5 | ||||
-rw-r--r-- | runtime/doc/tags | 5 | ||||
-rw-r--r-- | runtime/doc/todo.txt | 59 | ||||
-rw-r--r-- | runtime/doc/version7.txt | 3 |
8 files changed, 198 insertions, 35 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt index 6168b01f56..d11b77de46 100644 --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -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: > diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt index 6146ee3dec..b7be0b881b 100644 --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -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 diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt index 95ef238c02..8389fe5a3a 100644 --- a/runtime/doc/insert.txt +++ b/runtime/doc/insert.txt @@ -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* diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 88e440ad09..6c658b08c7 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -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. diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt index 324d45238a..dfe93cabc1 100644 --- a/runtime/doc/syntax.txt +++ b/runtime/doc/syntax.txt @@ -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: diff --git a/runtime/doc/tags b/runtime/doc/tags index cce8395e32..ac15db6631 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -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* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt index e680568916..656bb18560 100644 --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -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. diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt index 126d767658..7094070f71 100644 --- a/runtime/doc/version7.txt +++ b/runtime/doc/version7.txt @@ -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) |