Moolenaar.net
[home] [Vim] [ICCF] [fun] |
Vim book errata |
This is an unofficial list of mistakes for the first book on Vim.
Don't be discouraged by the number of items. Most are just small mistakes that don't interfere with understanding how Vim works. However, there are a few errors in examples, which are quite annoying.
The book is written by Steve Oualline and published by New Riders Publishing. You can find information about the book itself here. If you order it from this page, a percentage of the sales will help poor children in Uganda!
Some items are included from the official errata list. These are marked with -official-. You can find this list in PDF format here.
If you find an error that isn't mentioned yet, please send an e-mail to Bram@vim.org. Use the same format as in the table below.
Last change: 2001 July 29
Page iv, Copyright |
-official-
mistake: This mentions the standard copyright notice, but the book is published under the OPL (Open Publication License), as is mentioned on the back cover. The paragraph starting with "All rights reserved..." should be replaced with: "This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v.1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/)." |
Page v, Chapter 9 | error: "Command" is written twice |
Page xxi, Acknowledgements |
-official-
typo: In the first sentence: "a high quality Vim clone" should be "a high quality Vi clone". |
Page xxvi, How to read this book, second paragraph |
-official-
mistake: "a Jewish Arab living in Hong Kong" should be "Jewish Iranian living in Hong Kong". |
Page xxvi, Notation | spelling: "approbate values" should be "appropriate values". |
Page xxvi, Notation | error: ":quit [!]" should not have a space, it should be ":quit[!]". An explanation about use of spaces in the text would be helpful. |
Page xxvii, Commands | error: "For example, there are six commands just to scroll the text..". There are about twelve commands. |
Page xxviii, Chapter 7 | error: "features just for programmers". Most of these items are also useful for people writing other kinds of texts. Change to "features useful for programmers". |
Page xxix, Chapter 19 | typo: "describe" should be "described". |
Page xxxi, Lines 7 to 17 | error: Appendix D (Command-Mode Commands) is omitted, and Appendices E through I are labeled as D through H. |
Page 6, above figure 1.3 | mistake: "command mode" should be "Normal mode". |
Page 6, figure 1.3 | minor: Indent in the figure differs from what is shown in the text above it. In the text, remove the indent from the line starting with "Found". |
Page 6, Moving around | mistake: in the first sentence: "command mode" should be "Normal mode". |
Page 7, Deleting characters | error: It says "eight" twice, that should be seven. Figure 1.4 shows eight times "x", that should be seven as well. |
Page 7, Note | confusing: "it does not wrap text". But the text is displayed wrapped. It should explain that line breaks are not inserted automatically. |
Page 8, last Note | error: "The v command" should be "The u command". |
Page 9, top | layout: The "xxxx" doesn't line up with the word "very" above it that is to be deleted. Same for "xxxxxx" below "turtle". |
Page 9, Getting Out |
-official-
error: "This command writes the file and exits" should be "This command writes the file if modified and exits". |
Page 11, figure 1.8 |
-official-
The last line ends in "for the turtle.", should be "for the turtle!!!". |
Page 12, top half |
-official-
typo: "CTRL+]" should be "CTRL-]". Appears twice. And "CTRL+T" should be "CTRL-T". |
Page 12, at 60% down | error: A ) is missing after "(for example, CTRL-A". |
Page 13, table 1.1 | error: In the "Prefix" column, "v" should be "v_", "i" should be "i_" and "c" should be "c_". "(both ends)" can be omitted. |
Page 13, last section | mistake: It says "all the movement commands" and then goes on to explain the append command "a". It should say "most commands". |
page 16, figure 2.1 | layout: Not all arrows point to the right character. See figure 18.1 for correct arrows. |
Page 17, 50% down | minor: There should not be a : after "5f<Space>" (in bold font). |
page 17, figures 2.4 and 2.5 | layout: The arrows point to the same characters in both figures, but they should point to different ones: "f" at the mentioned character, "t" to the character before it. |
page 22, figure 2.12 |
error: It mentions "Changed word (screw<blank>)".
This should be "Changed word (screw)".
The "cw" command doesn't change the following blank.
The highlighted "foul" should be "screw". |
page 22, figure 2.13 | error: The seventh command "j>" should be "j^". The eight command "f>" should be "f<". |
page 23, Joining Lines | error: "A space is added to the end of the first line". This doesn't always happen, e.g, when a space is already there. Also, when the next line starts with white space, this is removed. |
page 23, figure 2.14 | error: the text says "two lines" but there are three lines. |
Page 24, Line 6 | minor: "If a count is specified," should be followed by "then," not "the". |
page 25, figure 2.18 | error: a"<Esc> should be $a"<Esc> |
page 25, Digraphs |
-official-
error: to enter the copyright sign use CTRL-KcO (capital O instead of zero). For Vim 6.x it is now CTRL-KCo (capital C and small o), following the RFC1345 mnemonics. |
page 29, Highlighting | mistake: Change "search for include, for example, the results in all the" to "search for include all the". |
page 32, figure 3.10 | error: Several occurences of "the" are not highlighted. The "y" in "they" should not be highlighted. |
page 33, Match Any Single Character | typo: at the end of the second line "whose the" should be "whose". |
page 37, Marks | At end, third item, should mention that whole lines are deleted. |
page 38, Where Are the Marks? | The first special mark mentioned should have parenthesis around "at line 67 of the current file" for consistency. |
page 39, figure 4.5 | error: lower left picture: the cursor in line 6 should be black instead of a rectangle. |
page 42, last paragraph | error: "Finally, there is the 'autowrite' option". There is another possibility: set the 'hidden' option. This is mentioned on page 52. |
page 46, figure 5.2 | unclear: The CTRL-Wk command applies to the inner, short arrow on the right side, it should be moved inside the large arrow. |
page 46, halfway | error: "To close a window, use ZZ or the following command: :q CTRL-Wc does the same thing.". The ZZ command also saves the file, if it was modified. :quit also exits Vim if there is only one window. Corrected text: "To close a window use the following command: :close CTRL-Wc does the same thing.". |
Page 48, The :new Command |
-official-
minor: Add this at the end of this section: "CTRL-W n" is equivalent to ":new". |
page 52, below the Note | error: "If the ''switchbuf'' is set" should be "If the 'switchbuf' option is set". |
page 53, in Figure 5.10 | error: The "srewind" does not use the 'switchbuf' option. This should be the ":sbrewind" command. Although the figure suggests the ":crewind" command was used. |
page 57, below figure 6.4 | mistake: Move "as shown in Figure 6.5" from then end of the second sentence to the end of the first sentence. |
page 59, Note at the bottom | error: "The same thing goes for R and S" should be: "R and S, on the other hand, replace all the lines with whatever is inserted - once, not for each line as with C". |
page 60, Commands for Programmers | confusing: "The = command indents the text". Just above the ">" command was also said to indent the text. Should explain that "=" re-indents the text according to the 'cindent' option, if it is set. |
page 61, figure 6.9 | error: text below right upper picture: "typing Ifile<Space>" should be "typing I<Space>file". |
page 62, figure 6.11 | error: the highlighted text should not include the space between "long" and "line". |
page 78, figure 7.15 | confusing: It's not clear what the arrow points to. It should look like figure 7.14, but exclude the lines with "{" and "}". |
page 81, top | missing: Change "The following command goes to the tag on the list" to "The following command goes to the next tag on the list" (insert "next"). |
page 82, figure 7.21 | error: The text below the right picture says "CTRL-W CTRL-[", that should be "CTRL-W ]". |
page 83, 60% down | typo: "g CTRL-]" should be "gCTRL-]", without the space. |
page 83, list of related commands near the bottom | error: ":count tNext" goes to the previous tag, not the next one. |
page 87, figure 7.25 | error: "parse error before ']'", the ']' should be '}'. Appears twice. |
page 87, figure 7.26 | error: "int i=3" should be "int i=3;". The four lines should be indented the same way. |
page 88, figure 7.27 | error: "int 1=3" should be "int i=3;". The four lines should be indented the same way. |
page 87, Note | reference: "(as discussed later in this chapter)" should refer to chapter 23. |
page 90, above Other Interesting Commands | mistake: "the first error" should be "the first match". Appears twice. |
page 93, first note | error: "The CTRL-V tells Vim literally instead of acting on it" should be "The CTRL-V tells Vim to use the <Esc> literally instead of acting on it" |
page 101, 40% down | error: ":1,/trouble/print" should be ".,/trouble/print". |
Page 103, How to change last,first to first,last |
confusing: This introduces a complex substitute command without explaining it.
And the actual command is missing. My solution is to remove this section and
figure 9.2, it's mentioned in another chapter.
The -official- solution is to add a few sentences, which makes it only more confusing, in my opinion. |
page 104, Figure 9.2 | Only the pattern is mentioned. The missing command is: "s/\([^,]*\),\(.*\)$/\2, \1/". |
page 104, Reading and Writing Files | error: Above the last example, "file.txt" should be "joke.txt". |
page 109, Microsoft Windows Mouse behavior | error: <S-Right Mouse> should be <Right Mouse>. |
page 114, first example | error: The "ruler" has the 1, 2 and 3 above the "3", should be above the "0". |
page 115, example near the top | error: The first block of text has the grey background everywhere. The blank space after the text should be white. |
page 115, Text Formatting Command | mistake: This should be called "Text Formatting Commands", as there are several of them. |
page 115, Text Formatting Command | error: the box with text doesn't show the effect of ":center" properly. The first two lines should have one or two spaces before them. |
page 116, top | error: "gives results in the following": remove "gives". |
page 118, top | typo: in "When it wraps a line in the middle of a C-style command": "command" should be "comment". |
page 122, Section Moving | error: "these commands also move forward and backward through procedures." should be "the [[ command moves backwards to the start and [] to the end of a procedure.". |
page 123, first example | error: "set section=" should be ":set sections=". |
page 126, second line | error: "for" is missing, "to search a word to complete" should be "to search for a word to complete". |
page 126, just above How Vim Searches for Words | error: ...to the original entry " " should be "" (no space in the double quotes). |
page 126, How Vim Searches for Words | error: item 3 in the list: "Other file in the currently loaded buffers" should be "Other files with loaded (hidden) buffers". |
page 126, How Vim Searches for Words | error: "This is described in the section "Customization of Completion"" should be "This is described in the section "Automatic Completion Details"" |
page 127, Automatic Completion Details | confusing: ":set complete=key,key,key". Any number of arguments would be OK. Better change it to ":set complete=key,key,...". |
page 134, example halfway |
error: ":autocommand FileWritePre * :call DateInsert()<CR>"
should be: ":autocommand FileWritePre * call DateInsert()". The extra ":" doesn't hurt but the trailing <CR> was wrong. |
page 137, File Patterns | error: The comma item isn't part of a file pattern, it separates alternate patterns. Also, the [] item is missing. |
page 137, Nesting | missing text: "If you read a file in response to a Syntax C, for example". Something is missing here. Probably it should be "If you read a C file in response to a FileChangedShell event, for example". The example of a FileChangedShell event with the pattern *.c is strange, perhaps it's also wrong. |
page 144, first paragraph | error: "If you use a session file" should be "if you use a viminfo file". |
page 149, Recover item | typo: "attempts to restart you session" should be "attempts to restart your session". |
page 149, Quit item | confusing: "Forget about trying to change this file" should be "Do not edit this file". |
page 149, List of items | missing: When the swap file is not being used by another process, there is also the alternative to delete the swap file. |
page 151, top | confusing: "On Unix and Linux" should be "On most operating systems". |
page 157, Window Size | mistake: "height" is bold and italic. It should only be italic. |
Page 161, top | error: Step 4 is really an explanation of Step 3, not a separate step. |
Page 162, second method | In step 2 ":split" is mentioned, that should be ":split second_file", just like with step 2 of the first method. |
Page 164, Visual method | improvement: Remove "UNIX" from the fourth item. |
Page 166, after first Note | omission: The text mentions "a number of tag-related commands" but does not give any reference. They are in chapter 7. |
Page 166, Drawing Comment Boxes | minor: After "#b<Enter>" (in bold font) remove the bold semicolon. |
Page 166, Note at the bottom | typo: In "we typed in #bb and the": "the" should be "then". |
Page 168, Changing Last, First to First, Last | error: In the title and in the fourth line, "First, Last" should not have the comma. The commands explain here remove the comma. |
Page 169, first unlabeled figure | typo: there should be no space before the comma in the middle and before "/\2". |
Page 169, second unlabeled figure | typo: The second explained item: "String matched by second \( \(" should be "String matched by second \( \)". |
Page 169 | layout: The two (unlabeled) figures should be swapped. Also, the "$" can be left out of the pattern. |
Page 170, just above "Finding All Occurrences..." | omission: "This command will work in Microsoft Windows only if you have installed your own grep program." |
page 170, Last but one paragraph | error: "...where a match is found. Position the file on the first matching line." should be: "...where a match is found and position the cursor on the first matching line." |
page 186, There are "words"... | error: It mentions that "that-all" is two words, but it's three words, the dash also counts as a word. |
page 186, Table of WORD related commands | missing: The <C-Left> and <C-Right> commands have an optional count as well. |
page 187, figure 18.4 | error: The "4+" should be "3+". |
page 196, figure 18.18 | confusing: The commands are mentioned with <Esc>, but you wouldn't use it like that. |
page 196, Deleting text | confusing: This mentions '"register count x', while this is not used in the example. And other commands that can use a register, like "S" in the previous section, don't mention this. Then the X command is mentioned without register and count. |
page 197, Figure 18.20 | error: The "CTRL-A" on the right should be "5 CTRL-A". |
page 198, figure 18.21 | error: The first "123" should be "125". The "0x1E" should be "0x20". |
page 198, below figure 18.21 |
error: If you want to recognize decimal and octal numbers" should be "If you
only want to recognize decimal numbers".
The example has two double quotes, they shouldn't be there. In the following sentence: "recognize just octal numbers" should be "recognize octal and decimal numbers". |
page 198, figure 18.22 |
error: In the right upper box, "This is a test" should be "This isa test".
In the right lower box, "This is a test with two lines" should be "This isa testwith two lines". eror: The command for the lower half is not "2gJ" but "3gJ". |
page 199, figure 18.24 | error: The bottom line should not have a dot at the end. |
page 200, figure 18.26 | error: the "Rx" next to the arrow should be "grx". |
page 200, Digraphs | error: This uses "c<BS>0" for the copyright sign. The 0 (zero) should be O (uppercase o). There are four zeros that need to be changed. |
page 201, figure 18.27 |
error: On the lower left, "Now is the time" should be "NOW is the time".
The command should be "3~" instead of "3~l".
On the lower right, "Now is THE time" should be "Now is THE timE". |
page 201, figure 18.28 |
error: On the lower left, "Now is the time" should be "NOW is the time".
The cursor should be on the first character.
On the lower right, "Now is THE time" should be "Now is THE timE". The cursor should be on the "o" in "Now". The command should be "g~fM" instead of "g~fm". |
page 201, figure 18.29 | error: the lower line should be "nOW is THE tIME". |
page 201, figure 18.30 | error: the command at the upper arrow should be "guu". The text right of this arrow should be all lowercase. |
page 209, 210 and 211, figures 19.9 to 19.14 | error: The caption of figure 19.9 says "search for /for", should be "search for for" (last for bold). In the other figures the slash also has to be removed. |
page 211, figure 19.15 | error: The caption says "search for /\a\a\a.", this should be "search for \a\a\a_" (remove a slash, add an underscore). |
page 211, figure 19.14 | There is a "1024" at the end of line 3 that should also be highlighted. |
page 212, above the first note | error: "To match the constants" should be "to match anything but a vowel". |
page 212, first note | misleading: This only mentions ^ as a special character. Other special characters are the backslash, dash and ]. The special meaning of ^ can also be avoided by not putting it first. |
page 212, below first note | stupid: The examples don't explain the character ranges. "one[\-]way" could better be written as "one-way". There is no reason to insert the backslash either. Also, "2\^4" can be written as "2^4" and has nothing to do with character ranges. "2[\^*]4" is easier written as "2[*^]4". |
page 212, last paragraph | error: In the second sentence "a,\{,5}" should be "a\{,5}". |
page 213, Grouping | unclear: In the second paragraph, the pattern "\(the\) \1" is used. Because of the line break the space goes unnoticed. |
page 213, Figure 19.16 | There should be a backslash before the "+", pointed to with "Repeat 1 or more times". Just like the last but one sentence above the figure. |
page 213, last line | typo: "the second \2" should be "the second to \2". |
page 214, near the bottom | typesetting: There are three *, the first two look different from the last one. They should be the same character in the same font. |
page 217, end of Special Character Atoms | \~ should be ~. |
page 220, first sentence | error: "When inserting lines, p and P commands do not move the cursor" should be: "When inserting lines, the p and P commands move the cursor to the first non-blank character of the inserted text". |
page 220, first paragraph | error: "The cursor is left at the end of the new text" should be "The cursor is left just after the end of the new text". |
page 221, figure 20.2 | error: The top arrow should be at the third line. The text has a double quote before the equal sign that shouldn't be there. A double quote at the end is missing for both callouts. |
page 223, Special Registers |
error: Just above the table: You can also use the command ""P..
This should be: You can also use the command "1P.. |
page 228, just above Advanced text entry | missing: Change "Place the F mark there because" to "Place the F mark there with the mF command. Because". |
page 231, 60% down | mistake: "Pick a nice even number" should be "Pick a nice round number". |
page 231, 232, The viminfo file | error: At first the options are in bold, later they are in single quotes, and then in bold and single quotes. They should all be the same. error: There is no \" option, this is the " option with a backslash added to avoid it being interpreted as the start of a comment. |
page 234, last paragraph | unclear: What isn't clearly mentioned is that all these commands move within the current line. |
page 235, below figure 20.10 | inconsistent: "[count]" is used here for an optional count. It's not clear that the [ and ] are not to be typed. It should be count with italic style, like it is used elsewhere. |
page 235, above figure 20.11 | typo: "These command move" should be "These commands move". |
page 240, first sentence | error: "CTRL-W k goes to the preceding one" should be "CTRL-W k goes to the window above". |
page 243, figure 21.6 |
error: The left and right screens should be exchanged. The command is CTRL-W
o, lowercase o.
confusing: The left screen shows ":only", which is not actually used here. |
page 243, figure 21.7 | error: The left screen shows ":only", should be ":all" or nothing. |
page 244, Split Search | typos: "position the cursor of the printf on Hello World" should be "position the cursor on the printf of Hello World". (change "on" to "of" and "of" to "on") |
page 246, below first example | error: "will be positioned on lnum" should be "will be positioned on line lnum". |
page 248, Sessions | error: The second paragraph mentions that marks and registers are stored, but that is not so. |
page 252, figure 22.1 | missing: After "Move using l to the end of line" should add "use j to go down". |
page 253, Selecting Objects, second paragraph | error: "but also the space after it" should be "but also all the white space after it". |
page 254, just above figure 22.5 | error: the "count i(" item: "Like ab, except" should be "like a(, except". |
page 254, figure 22.4 | unclear: the curved lines should start at the first "t" of "test", not at the space before it. The space is not included. |
page 254, table with text objects |
missing: "count" is mentioned before each item, but not explained anywhere.
In many items: "and the space after it", "and spaces after it" and "and the following space" should be "and all the white space after it". The "a<" item: "include" should be "including". |
page 254, figure 22.5 | error: in the left part, the highlighting should include the () braces. |
page 259, figure 22.13 | error: in the text between the screens, "gh i - start select" should be "gh start select". "<BS> - Delete text" should be "<BS> Delete text" and align the explanations like a table. |
Page 262, Figure 23.2 | error: "0CTRL-D" should be "^CTRL-D" |
Page 266 and 267, Figure 23.3, 23.4 and 23.5 | error: The arrows, indicating tabs, should all end in the same column. The ones indicating a full tab should all be the same length. |
page 266, Smart Tabs | omission: The last sentence of the first paragraph: "is defined the 'shiftwidth' option" should be "is defined with the 'shiftwidth' option". |
page 266, Smart Tabs | error: In the example with three lines, ":set smarttabs" should be ":set smarttab". |
page 266, Figure 23.4 | error: This is the same figure as 23.3. It should be different in that a Tab typed after the X never inserts spaces but a real Tab. |
Page 268, The :retab Command | error: The third sentence must be deleted, it's a copy of the first one (except that "tab stops" turns into "tap stops"). |
Page 269, figure 23.6 | error: last line on the left: "in this case, column 4" should be "in this case, column 5". |
Page 273, figure 23.7 | error: the last text on the left: "0} - } is the first" should be "0# - # is the first". |
Page 275, Comparing Two Files | minor: "in the window you want to move and move it" is wrong. It probably should be "in the window you want to move". |
Page 277, second :ptag example | minor: The variable is misspelled, "copy_p_date" should be "copy_p_data." |
page 282, the list with special directories | confusing: the first and last item don't have quotes, while the middle one uses quotes to indicate an empty string. Should either use quotes for all three items or none at all. |
page 284, Locating include Files | error: "The ]j command" should be "The ]i command". |
page 284, Multiple Error Lists | error: First sentence: "The :make file generates" should be "The :make command generates". |
page 288, just above The 'switchbuf' option | error: "Remember, the :set ^= operator". This wasn't mentioned before and it isn't an operator. Change to "Using ^= for :set". |
page 289, figure 23.20 |
error: The line in the middle "$ gvim Makefile" should be:
:set switchbuf=split :make |
page 291, Color Terminals | error: "Color names are recognized rather than color numbers". Both numbers and names are recognized. It doesn't explain what numbers can be used (depends on the t_Co option). |
page 291, last paragraph. | error: "bb is the amount of blue, and yy is the amount of yellow" should be "gg is the amount of green and bb is the amount of blue". |
page 292, Combining Definitions | error: "on a single highlight line" should be "in a single highlight command". It should explain the use of a backslash (or leave it out). |
page 292, Syntax Elements | error: The table starts with a line of bold words. These should not be bold. |
page 294, The 'syntax' option | error: This says the 'syntax' option holds the name of the language, and then explains "on" and "off", which are not language names. It should be mentioned that these have a special meaning. Also "on" and "off" have to be upper case. |
page 300, below figure 24.2 | error: This mentions "first column", but since the example in figure 24.2 has an empty first column this is misleading. The figure should have an example with some of the mentioned letters in the first column. |
page 300, last paragraph | mistake: This paragraph doesn't belong here at all. There is no relation between mapping and the 'suffixes' option. |
page 303, introduction | typo: "Being expert in the command-mode command means..." leave out "command". |
page 305, figure 25.3 | error: In the caption "word" should be "work" |
page 310, 25% down | error: "change Test to b*Test when" should be "change Test to bTest when". |
page 311, halfway | error: "The :~ command acts just like the &g command" should be "The :~ command acts just like the :&r command". |
page 310 and 311, Repeat Substitution | error: The header on page 311 should be placed near the end of page 310, before the text "The & command repeats the last substitution". |
page 312, Include File Searches | error: ":range ijump count [/]pattern[/]" should be ":[range] ijump [count] [/]pattern[/]" |
page 312, Include File Searches, second paragraph | missing: Without the slashes the pattern must be a whole word. The trailing slash is optional. |
page 313, Jumping to Macro Definitions | error: the ":djump" argument is never a regular expression. With the slashes added it doesn't check for a whole word. |
page 314, Override Option (!) | typo: "within comments found as well" should be "within comments are found as well". |
page 315, Current File | error: third paragraph: "Now you want shorten the" should be "Now you want to shorten the". |
page 316, second paragraph | error: "There is another command similar to :file". The ":=" command has only in common with ":file" that it prints the line number, otherwise it's very different. |
page 318, Undo/Redo | mistake: The text starting with "To mark the beginning" is a separate section about marks. It belongs as a separate section below "Miscellaneous Commands". |
page 318, Undo/Redo | error: The two examples for setting a mark set two different marks. Change ":100ka" to ":100kx". |
page 322, Getting Out | typo: "saves the current file in save-it-it.txt" should be "saves the current file in save-it.txt". |
page 324, Window size and position |
error: the format for the geometry should read:
-geometry width x height + x_offset + y_offset |
page 324, Window size and position | error: In "The x-offset specifies the number of pixels between the left side of the screen and the right side of the window" the "right" should be "left". Also, in "the distance between the left edge of the editor and the right side of the screen" the "left" should be "right". |
page 326, Icon item | typo: "the editor in minimized" should be "the editor is minimized". |
page 327, Note in the middle | typo: "givmrc" should be "gvimrc". |
page 330, first example | error: ":set title=85" should be ":set titlelen=85". |
page 330, figure 26.9 | error: The figure is too small to show the effect of 'titlelen' and it's unclear what settings are used for it. |
page 330, last paragraph | error: The example given here isn't seen in figure 26.10. The 'icon' and 'iconstring' options should be bold. The explanation is incomplete, it only says what the author experienced, not how it works or how it would work on another system. |
page 331, Mouse Focus | omitted: It should be mentioned that a mouse click (on a status line or inside a window) also moves to another window, without setting 'mousefocus'. |
page 333, Select Mode | error: 'mousemode' should be 'mousemodel' |
page 335, Toolbar Icons | error: "If the icon does not match one of the built-in icons, the editor looks for a file in ...". This should mention that the name of the menu is used as the name of the icon. And Vim actually checks for a file first, so that you can overrule the builtin icons. |
page 335, Toolbar Icons | error: "name.xpn on UNIX" should be "name.xpm on UNIX". |
page 339, Renaming menu items | missing: Change "The command" to "The following command". |
page 341, figure 26.17 | error: The figure is too small and dark to read the text. |
page 341, bottom | typo: "Ths" should be "This". |
page 345, Changing the appearance of the cursor | confusing: Although this section appears just after the secion on Microsoft Windows specific commands, it can be used with all systems. |
page 346, 'guicursor' table | error: In the third column a few items are wrong. In the second table row, "35% high" must be "35% wide". In the fourth row, "35% high" must be "25% wide". In the fifth row, "20% width" should be "20% high". |
page 350, Special variable names table | spacing: The second item has been split in two parts in the left column. The item should be for "Initial uppercase letter and lowercase letter somewhere inside". |
page 351, last of the "some examples" |
The line ":let b:current_syntax = c" should have double quotes around the "c".
That line should be bold, while the following comment should not be bold.
The line starting with Note: should have a line break after "associated with", so that the double quote is at the start of the next line. |
page 353, Entering Filenames | confusing: What should be mentioned here is that these items can't be used in an expression directly. They are to be used after a command like ":edit" or as an argument to the expand() function. This section doesn't really belong here. |
page 354, <amatch> item near the top | error: <abuf> should be <afile> |
page 354, paragraph between the tables | error: <cfile:p> should be <cfile>:p |
page 354, :r item | mistake: using :r on "../path/test.c" yields "../path/test" and not "test." |
Page 356, last example | error: The "<:" should be "<=". It's not a good example, the loop will be infinite as soon as the first "if" statement is true. |
page 359, at 30%, variable number of arguments | error: "up to 20 additional arguments" should be "up to 19 additional arguments". |
page 359, example halfway |
error: The example doesn't work, because "a:index" is invalid. The line should
be replaced with:
execute 'echo "Arg" index "is " a:' . index |
page 359, example at the end |
In the output of ":function Show" the first line should be "function
Show(start, ...)". The arguments of the function are also listed.
The line in the listing below the "while" line is wrong, it should be equal to the function listing halfway the page. |
page 360 | error: User commands cannot contain an underscore character. All the commands "Delete_first" should be changed to "DeleteFirst", "Delete_one" should be "DeleteFirst" as well. |
page 360, example near the bottom | error: The text mentions Delete_one while the example uses Delete_first, they should be the same "DeleteFirst". The "-nargs=0" argument must be placed before the command name: ":command -nargs=0 DeleteFirst 1delete". |
page 361, "-range=%" item | typo: "while" should be "whole". |
page 361, near the bottom | typo: "Execute" should be "executes". |
page 364, col() function | typo: ''x should be 'x. |
page 365, Examples halfway | All the lines use the accelerator key "T" for "Two" and "Three". Change "&Three" to "T&hree" (five times). |
page 367, first line | typo: "[{string}" should be "{string}". |
page 367, Parameters of expand() | Missing: the [flag] argument should be in the left column, just above "Returns". |
page 370, histnr() function | error: The first line of "What it does" wraps to the first column, it should be in the second column. |
page 373, nr2char() function | missing: the argument {number} should appear in the first column. |
page 374, strlen() function | error: In the first line "the length of a {string}" should be "the length of a string". |
page 375, substitute() function | error: The explanation suggests that a line in the file is changed. Change "the equivalent of" to "similar to". |
page 377, virtcol() function | typo: The double quotes Parameter: explanation should be removed. |
page 380, examples |
typo: The "no" of "nooption" should be bold. This appears once at the top and
once in the "Boolean Options" section. The "inv" of "invoption" should be bold. This appears in the "Boolean Options" section. |
page 382, Automatically Setting Options in a File | error: The format starting with "vim: set" should have a colon at the end. |
page 382, Automatically Setting Options in a File | error: In the format at the bottom, change "Vim" to "vim" and remove the dot before "option-command". The "Vim:" and the colons should be bold. |
page 383, top | error: The second 'modeline' must be 'modelines'. |
page 383, halfway | error: "expandtabs" must be "expandtab". |
page 383, Above "Local .vimrc Files" |
error: The example should read:
/* vim: set cindent shiftwidth=4 smarttab: */ Just above this change "the top of bottom" to "the top or bottom". |
page 384, halfway | error: "the command mapped to ALT-F" should read "the command that ALT-F is mapped to". |
page 385, 80% down | error: "use the 'timeoutlen' options:" should be "use the 'ttimeoutlen' option:" |
page 386, bottom | font: in "an f appears" the f has a wrong font, it should be a normal size letter in italic. |
page 390, % item | error: % should %% |
page 392, Rulers | confusing: The example shows a ruler "1,1", while the text below it mentions a virtual column. Should give an example like "1,3-8". |
page 395, below the list near the top | typo: In "specify that the error message use the highlight group", "use" should be "uses". |
page 395, second example | error: ":set highlight=evrb" should be ":set highlight=e:vrb". Just above this "error message" should be "error messages". |
page 400, Lazy redraw | opinion: The 'lazyredraw' option is not obsolete. Setting it avoids the screen flashing when executing a macro, but you can't see what it is doing. |
page 401, compatibility | misplaced: 'tildeop' has nothing to do with Vi compatibility. |
page 404, c_no_ansi |
error: the size_t and INT_MIN in the first two lines should be highlighted, not
in the last two lines. "types and constants" should be "typedefs and constants". |
page 404, c_ansi_typedefs | error: the size_t in the first line should not be highlighted. |
page 405, table |
error: the grey background is misaligned, it should be one and a half line
lower.
In the c_ansi_constants item, "ANSI types" should be "ANSI constants". In the c_ansi_constants item, the ":set" command should be ":let". |
page 407, HTML, at 60% of the page | mistake: "in your VIMRC" should be "in your vimrc file". |
page 408, java_allow_cpp_keywords | error: The explanation doesn't mention that you need to set this variable to NOT highlight C and C++ keywords as an error. |
page 414, just above Defining Matches | mistake: "The x command allows" should be "The x language allows". |
page 415, Nested Regions | confusing: Although the section header says "Regions", the first example uses a match item. "Nested Items" would be a better title. |
page 415, Nested Regions | error: In the example ":syntax keyword xTodo contained" should be ":syntax keyword xTodo TODO contained". |
page 416, 30% down | error: "preprocessor syntax contains." should be "preprocessor syntax continues.". |
page 417, Transparent matches | typo: "spcify" should be "specify". |
page 419, Clusters | typo: The first line of the example: "contains+xNumber,xIdent" should be "contains=xNumber,xIdent". |
page 420, Including Other Syntax Files | typo: The example halfway the page defines the "@Pod" cluster and then uses "contains=@POD". That should be "contains=@Pod". |
page 421, Example halfway | typo: "minline=150" should be "minlines=150". |
page 428, unpacking the sources | error: "gzip -u -d" should be 'gzip -d". There is no "-u" flag for gzip. |
page 429, Installing on Microsoft Windows |
confusing: Before unzipping the archives, there is no need to create a
"c:\Vim" directory, unzip will do this for you.
The names given for the archives to unzip are with the directory as they appear on the ftp site. After downloading they could be anywhere. This text is unclear, you might want to use other installation instructions. |
page 430, top | error: "EXECUTAB.S" should be "executables.". |
page 430, Note at the bottom | error: "the non-BUI version" should be "the non-GUI version". |
page 431, I Am Using RedHat Linux. | error: "vim-enchanced-version.rpm" should be "vim-enhanced-version.rpm". |
page 511, 'magic' | omission: Add a reference to page 34. |
page 535, Index | omission: "alt" or "alt key" isn't mentioned. Page 384 explains alt key usage. |
page 560, Index | "registers" refers to page 50, but that is about buffers. Page 221 explains registers. |