On Thu, Apr 26, 2012 at 04:51:57AM -0400, Jeff King wrote: > Problematic sites were found by grepping for '`.*[{\\]' and > examined and fixed manually. The results were then verified > by comparing the output of "html2text" on the set of > generated html pages. I tried comparing the raw HTML, but unfortunately the output was not byte-for-byte identical. Using `~` in the new version puts a raw tilde in the output, whereas using `{tilde}` in the old version inserted the HTML character code (and ditto for the xml version from the manpages). I also compared the rendered manpages and got similar results. They even looked a little better, because the literal bits are bolded on the terminal. Whereas with html2text, they are printed normally, which means it is sometimes hard to see what is going on, even though in a real browser the new version looks much better. However, there are many HTML pages that do not end up as manpages, so I used the HTML version for more complete coverage. The diff between the old and new rendered versions is below (the first hunk is confusingly large; it is caused by the fact that the original version generated bogus HTML which confused html2text). diff --git a/old/api-config.html b/new/api-config.html index 8639ee8..e13c7dc 100644 --- a/old/api-config.html +++ b/new/api-config.html @@ -73,6 +73,37 @@ To aid in parsing string values, the config API provides callbacks with a number of helper functions, including: + + git_config_int + Parse the string to an integer, including unit factors. Dies on error; + otherwise, returns the parsed result. + + git_config_ulong + Identical to git_config_int, but for unsigned longs. + + git_config_bool + Parse a string into a boolean value, respecting keywords like "true" and + "false". Integer values are converted into true/false values (when they + are non-zero or zero, respectively). Other values cause a die(). If + parsing is successful, the return value is the result. + + git_config_bool_or_int + Same as git_config_bool, except that integers are returned as-is, and an + is_bool flag is unset. + + git_config_maybe_bool + Same as git_config_bool, except that it returns -1 on error rather than + dying. + + git_config_string + Allocates and copies the value string into the dest parameter; if no + string is given, prints an error message and returns -1. + + git_config_pathname + Similar to git_config_string, but expands ~ or ~user into the user’s home + directory when found at the beginning of the path. + + Include Directives By default, the config parser does not respect include directives. However, a diff --git a/old/api-parse-options.html b/new/api-parse-options.html index 0d72807..9b75468 100644 --- a/old/api-parse-options.html +++ b/new/api-parse-options.html @@ -195,7 +195,7 @@ * int_var is an integer variable, * str_var is a string variable (char *), * arg_str is the string that is shown as argument (e.g. "branch" will result in - <branch>). If set to NULL, three dots (…) will be displayed. + <branch>). If set to NULL, three dots (...) will be displayed. * description is a short string to describe the effect of the option. It shall begin with a lower-case letter and a full stop (.) shall be omitted at the end. diff --git a/old/api-strbuf.html b/new/api-strbuf.html index 97eeacb..59f7157 100644 --- a/old/api-strbuf.html +++ b/new/api-strbuf.html @@ -22,7 +22,7 @@ However, it is totally safe to modify anything in the string pointed by the buf member, between the indices 0 and len-1 (inclusive). 2. The buf member is a byte array that has at least len + 1 bytes allocated. - The extra byte is used to store a \0, allowing the buf member to be a + The extra byte is used to store a '\0', allowing the buf member to be a valid C-string. Every strbuf function ensure this invariant is preserved. Note It is OK to "play" with the buffer directly if you work it this way: @@ -32,9 +32,9 @@ strbuf_setlen(sb, sb->len + SOME_OTHER_SIZE); - 1. Here, the memory array starting at sb→buf, and of length strbuf_avail - (sb) is all yours, and you can be sure that strbuf_avail(sb) is at - least SOME_SIZE. + 1. Here, the memory array starting at sb->buf, and of length + strbuf_avail(sb) is all yours, and you can be sure that strbuf_avail + (sb) is at least SOME_SIZE. Note SOME_OTHER_SIZE must be smaller or equal to strbuf_avail(sb). @@ -229,7 +229,7 @@ strbuf_getline Read a line from a FILE *, overwriting the existing contents of the strbuf. The second argument specifies the line terminator character, - typically \n. Reading stops after the terminator or at EOF. The + typically '\n'. Reading stops after the terminator or at EOF. The terminator is removed from the buffer before returning. Returns 0 unless there was nothing left before EOF, in which case it returns EOF. diff --git a/old/api-string-list.html b/new/api-string-list.html index d66202f..f14974b 100644 --- a/old/api-string-list.html +++ b/new/api-string-list.html @@ -77,7 +77,7 @@ existing item returned. Since this function uses xrealloc() (which die()s if it fails) if the list needs to grow, it is safe not to check the pointer. I.e. you may - write string_list_insert(…)→util = …;. + write string_list_insert(...)->util = ...;. string_list_lookup Look up a given string in the string_list, returning the containing diff --git a/old/api-tree-walking.html b/new/api-tree-walking.html index 586a9e7..566dc1c 100644 --- a/old/api-tree-walking.html +++ b/new/api-tree-walking.html @@ -80,7 +80,7 @@ tree_entry_extract Decode the entry currently being visited (the one pointed to by - tree_desc’s entry member) and return the sha1 of the entry. The pathp and + tree_desc's entry member) and return the sha1 of the entry. The pathp and modep arguments are set to the entry’s pathname and mode respectively. get_tree_entry diff --git a/old/git-clean.html b/new/git-clean.html index 0bd14e6..c8003e7 100644 --- a/old/git-clean.html +++ b/new/git-clean.html @@ -21,7 +21,7 @@ Normally, only files unknown to git are removed, but if the -x option is specified, ignored files are also removed. This can, for example, be useful to remove all build products. -If any optional <path>… arguments are given, only those paths are affected. +If any optional <path>... arguments are given, only those paths are affected. OPTIONS diff --git a/old/git-commit.html b/new/git-commit.html index 6e4bbf4..252c662 100644 --- a/old/git-commit.html +++ b/new/git-commit.html @@ -38,7 +38,7 @@ removed from the working tree, and then perform the actual commit; 5. by using the --interactive or --patch switches with the commit command to decide one by one which files or hunks should be part of the commit, - before finalizing the operation. See the `Interactive Mode` section of + before finalizing the operation. See the “Interactive Mode” section of git-add(1) to learn how to operate these modes. The --dry-run option can be used to obtain a summary of what is included by any diff --git a/old/git-config.html b/new/git-config.html index d6dc22d..2c35841 100644 --- a/old/git-config.html +++ b/new/git-config.html @@ -1091,7 +1091,7 @@ A comma separated list of --dirstat parameters specifying the default behavior of the --dirstat option to git-diff(1)` and friends. The defaults can be overridden on the command line (using -- - dirstat=<param1,param2,…>). The fallback defaults (when not changed by + dirstat=<param1,param2,...>). The fallback defaults (when not changed by diff.dirstat) are changes,noncumulative,3. The following parameters are available: diff --git a/old/git-diff-files.html b/new/git-diff-files.html index e7ab6b9..ffb2826 100644 --- a/old/git-diff-files.html +++ b/new/git-diff-files.html @@ -63,7 +63,7 @@ (affects all commands generating a stat graph) or by setting diff.statGraphWidth=<width> (does not affect git format-patch). By giving a third parameter <count>, you can limit the output to the first <count> - lines, followed by … if there are more. + lines, followed by ... if there are more. These parameters can also be set individually with --stat-width=<width>, --stat-name-width=<name-width> and --stat-count=<count>. @@ -169,9 +169,9 @@ Highlight changed words using only colors. Implies --color. plain - Show words as [-removed-] and {added}. Makes no attempts to escape - the delimiters if they appear in the input, so the output may be - ambiguous. + Show words as [-removed-] and {+added+}. Makes no attempts to + escape the delimiters if they appear in the input, so the output + may be ambiguous. porcelain Use a special line-based format intended for script consumption. diff --git a/old/git-diff-index.html b/new/git-diff-index.html index caef350..6135834 100644 --- a/old/git-diff-index.html +++ b/new/git-diff-index.html @@ -64,7 +64,7 @@ (affects all commands generating a stat graph) or by setting diff.statGraphWidth=<width> (does not affect git format-patch). By giving a third parameter <count>, you can limit the output to the first <count> - lines, followed by … if there are more. + lines, followed by ... if there are more. These parameters can also be set individually with --stat-width=<width>, --stat-name-width=<name-width> and --stat-count=<count>. @@ -170,9 +170,9 @@ Highlight changed words using only colors. Implies --color. plain - Show words as [-removed-] and {added}. Makes no attempts to escape - the delimiters if they appear in the input, so the output may be - ambiguous. + Show words as [-removed-] and {+added+}. Makes no attempts to + escape the delimiters if they appear in the input, so the output + may be ambiguous. porcelain Use a special line-based format intended for script consumption. diff --git a/old/git-diff-tree.html b/new/git-diff-tree.html index 75baadf..99720ee 100644 --- a/old/git-diff-tree.html +++ b/new/git-diff-tree.html @@ -66,7 +66,7 @@ (affects all commands generating a stat graph) or by setting diff.statGraphWidth=<width> (does not affect git format-patch). By giving a third parameter <count>, you can limit the output to the first <count> - lines, followed by … if there are more. + lines, followed by ... if there are more. These parameters can also be set individually with --stat-width=<width>, --stat-name-width=<name-width> and --stat-count=<count>. @@ -172,9 +172,9 @@ Highlight changed words using only colors. Implies --color. plain - Show words as [-removed-] and {added}. Makes no attempts to escape - the delimiters if they appear in the input, so the output may be - ambiguous. + Show words as [-removed-] and {+added+}. Makes no attempts to + escape the delimiters if they appear in the input, so the output + may be ambiguous. porcelain Use a special line-based format intended for script consumption. @@ -424,8 +424,9 @@ <path>… If provided, the results are limited to a subset of files matching one of - these prefix strings. i.e., file matches /^<pattern1>|<pattern2>|…/ Note - that this parameter does not provide any wildcard or regexp features. + these prefix strings. i.e., file matches /^<pattern1>|<pattern2>|.../ + Note that this parameter does not provide any wildcard or regexp + features. -r recurse into sub-trees diff --git a/old/git-diff.html b/new/git-diff.html index c1a933b..46d7810 100644 --- a/old/git-diff.html +++ b/new/git-diff.html @@ -111,7 +111,7 @@ (affects all commands generating a stat graph) or by setting diff.statGraphWidth=<width> (does not affect git format-patch). By giving a third parameter <count>, you can limit the output to the first <count> - lines, followed by … if there are more. + lines, followed by ... if there are more. These parameters can also be set individually with --stat-width=<width>, --stat-name-width=<name-width> and --stat-count=<count>. @@ -219,9 +219,9 @@ Highlight changed words using only colors. Implies --color. plain - Show words as [-removed-] and {added}. Makes no attempts to escape - the delimiters if they appear in the input, so the output may be - ambiguous. + Show words as [-removed-] and {+added+}. Makes no attempts to + escape the delimiters if they appear in the input, so the output + may be ambiguous. porcelain Use a special line-based format intended for script consumption. diff --git a/old/git-filter-branch.html b/new/git-filter-branch.html index e26f859..3502e5c 100644 --- a/old/git-filter-branch.html +++ b/new/git-filter-branch.html @@ -86,7 +86,7 @@ --index-filter <command> This is the filter for rewriting the index. It is similar to the tree filter but does not check out the tree, which makes it much faster. - Frequently used with git rm --cached --ignore-unmatch …, see EXAMPLES + Frequently used with git rm --cached --ignore-unmatch ..., see EXAMPLES below. For hairy cases, see git-update-index(1). --parent-filter <command> diff --git a/old/git-format-patch.html b/new/git-format-patch.html index 583e800..2364139 100644 --- a/old/git-format-patch.html +++ b/new/git-format-patch.html @@ -93,7 +93,7 @@ (affects all commands generating a stat graph) or by setting diff.statGraphWidth=<width> (does not affect git format-patch). By giving a third parameter <count>, you can limit the output to the first <count> - lines, followed by … if there are more. + lines, followed by ... if there are more. These parameters can also be set individually with --stat-width=<width>, --stat-name-width=<name-width> and --stat-count=<count>. diff --git a/old/git-help.html b/new/git-help.html index aec06f2..dc33369 100644 --- a/old/git-help.html +++ b/new/git-help.html @@ -23,7 +23,7 @@ If a git command is named, a manual page for that command is brought up. The man program is used by default for this purpose, but this can be overridden by other options or configuration variables. -Note that git --help … is identical to git help … because the former is +Note that git --help ... is identical to git help ... because the former is internally converted into the latter. OPTIONS diff --git a/old/git-log.html b/new/git-log.html index b6d4648..aa01e94 100644 --- a/old/git-log.html +++ b/new/git-log.html @@ -228,7 +228,7 @@ --right-only List only commits on the respective side of a symmetric range, i.e. only those which would be marked < resp. > by --left-right. - For example, --cherry-pick --right-only A…B omits those commits from B + For example, --cherry-pick --right-only A...B omits those commits from B which are in A or are patch-equivalent to a commit in A. In other words, this lists the + commits from git cherry A B. More precisely, --cherry- pick --right-only --no-merges gives the exact list. @@ -237,7 +237,7 @@ A synonym for --right-only --cherry-mark --no-merges; useful to limit the output to the commits on our side and mark those that have been applied to the other side of a forked history with git log --cherry - upstream…mybranch, similar to git cherry upstream mybranch. + upstream...mybranch, similar to git cherry upstream mybranch. -g @@ -412,16 +412,16 @@ --simplify-merges First, build a history graph in the same way that --full-history with parent rewriting does (see above). - Then simplify each commit ‘C` to its replacement C’ in the final history + Then simplify each commit C to its replacement C' in the final history according to the following rules: - * Set ‘C’` to C. - * Replace each parent ‘P` of C’ with its simplification ‘P’`. In the - process, drop parents that are ancestors of other parents, and remove + * Set C' to C. + * Replace each parent P of C' with its simplification P'. In the process, + drop parents that are ancestors of other parents, and remove duplicates. - * If after this parent rewriting, ‘C’` is a root or merge commit (has - zero or >1 parents), a boundary commit, or !TREESAME, it remains. - Otherwise, it is replaced with its only parent. + * If after this parent rewriting, C' is a root or merge commit (has zero + or >1 parents), a boundary commit, or !TREESAME, it remains. Otherwise, + it is replaced with its only parent. The effect of this is best shown by way of comparing to --full-history with parent rewriting. The example turns into: @@ -916,7 +916,7 @@ (affects all commands generating a stat graph) or by setting diff.statGraphWidth=<width> (does not affect git format-patch). By giving a third parameter <count>, you can limit the output to the first <count> - lines, followed by … if there are more. + lines, followed by ... if there are more. These parameters can also be set individually with --stat-width=<width>, --stat-name-width=<name-width> and --stat-count=<count>. @@ -1023,9 +1023,9 @@ Highlight changed words using only colors. Implies --color. plain - Show words as [-removed-] and {added}. Makes no attempts to escape - the delimiters if they appear in the input, so the output may be - ambiguous. + Show words as [-removed-] and {+added+}. Makes no attempts to + escape the delimiters if they appear in the input, so the output + may be ambiguous. porcelain Use a special line-based format intended for script consumption. diff --git a/old/git-merge.html b/new/git-merge.html index bec1b50..bd7de11 100644 --- a/old/git-merge.html +++ b/new/git-merge.html @@ -41,7 +41,7 @@ The second syntax (<msg> HEAD <commit>…) is supported for historical reasons. Do not use it from the command line or in new scripts. It is the same as git -merge -m <msg> <commit>…. +merge -m <msg> <commit>.... The third syntax ("git merge --abort") can only be run after the merge has resulted in conflicts. git merge --abort will abort the merge process and try to reconstruct the pre-merge state. However, if there were uncommitted changes diff --git a/old/git-rev-list.html b/new/git-rev-list.html index ae20275..2946ce5 100644 --- a/old/git-rev-list.html +++ b/new/git-rev-list.html @@ -259,7 +259,7 @@ --right-only List only commits on the respective side of a symmetric range, i.e. only those which would be marked < resp. > by --left-right. - For example, --cherry-pick --right-only A…B omits those commits from B + For example, --cherry-pick --right-only A...B omits those commits from B which are in A or are patch-equivalent to a commit in A. In other words, this lists the + commits from git cherry A B. More precisely, --cherry- pick --right-only --no-merges gives the exact list. @@ -268,7 +268,7 @@ A synonym for --right-only --cherry-mark --no-merges; useful to limit the output to the commits on our side and mark those that have been applied to the other side of a forked history with git log --cherry - upstream…mybranch, similar to git cherry upstream mybranch. + upstream...mybranch, similar to git cherry upstream mybranch. -g @@ -443,16 +443,16 @@ --simplify-merges First, build a history graph in the same way that --full-history with parent rewriting does (see above). - Then simplify each commit ‘C` to its replacement C’ in the final history + Then simplify each commit C to its replacement C' in the final history according to the following rules: - * Set ‘C’` to C. - * Replace each parent ‘P` of C’ with its simplification ‘P’`. In the - process, drop parents that are ancestors of other parents, and remove + * Set C' to C. + * Replace each parent P of C' with its simplification P'. In the process, + drop parents that are ancestors of other parents, and remove duplicates. - * If after this parent rewriting, ‘C’` is a root or merge commit (has - zero or >1 parents), a boundary commit, or !TREESAME, it remains. - Otherwise, it is replaced with its only parent. + * If after this parent rewriting, C' is a root or merge commit (has zero + or >1 parents), a boundary commit, or !TREESAME, it remains. Otherwise, + it is replaced with its only parent. The effect of this is best shown by way of comparing to --full-history with parent rewriting. The example turns into: diff --git a/old/git-status.html b/new/git-status.html index 0439d84..0040808 100644 --- a/old/git-status.html +++ b/new/git-status.html @@ -98,7 +98,7 @@ XY PATH1 -> PATH2 -where PATH1 is the path in the HEAD, and the ` -> PATH2` part is shown only +where PATH1 is the path in the HEAD, and the " -> PATH2" part is shown only when PATH1 corresponds to a different path in the index/worktree (i.e. the file is renamed). The XY is a two-letter status code. The fields (including the ->) are separated from each other by a single space. diff --git a/old/git-update-index.html b/new/git-update-index.html index bbf44ad..95c8b1f 100644 --- a/old/git-update-index.html +++ b/new/git-update-index.html @@ -233,7 +233,7 @@ unset, use --no-assume-unchanged. To see which files have the "assume unchanged" bit set, use git ls-files -v (see git-ls-files(1)). The command looks at core.ignorestat configuration variable. When this is true, -paths updated with git update-index paths… and paths updated with other git +paths updated with git update-index paths... and paths updated with other git commands that update both index and working tree (e.g. git apply --index, git checkout-index -u, and git read-tree -u) are automatically marked as "assume unchanged". Note that "assume unchanged" bit is not set if git update-index -- diff --git a/old/git.html b/new/git.html index 1886f0f..7f4a992 100644 --- a/old/git.html +++ b/new/git.html @@ -45,8 +45,8 @@ git command is named this option will bring up the manual page for that command. Other options are available to control how the manual page is displayed. - See git-help(1) for more information, because git --help … is converted - internally into git help …. + See git-help(1) for more information, because git --help ... is converted + internally into git help .... -c <name>=<value> Pass a configuration parameter to the command. The value given will diff --git a/old/gitcore-tutorial.html b/new/gitcore-tutorial.html index 6e29915..873c0d7 100644 --- a/old/gitcore-tutorial.html +++ b/new/gitcore-tutorial.html @@ -139,7 +139,8 @@ .git/objects/55/7db03de997c86a4a028e1ebd3a1ceb225be238 .git/objects/f2/4c74a2e500f5ee1332c86b94199f52b1d1d962 -which correspond with the objects with names of 557db… and f24c7… respectively. +which correspond with the objects with names of 557db... and f24c7... +respectively. If you want to, you can use git cat-file to look at those objects, but you’ll have to use the object name, not the filename of the object: @@ -240,7 +241,7 @@ 8988da15d077d4829fc51d8544c097def6644dbb which is another incomprehensible object name. Again, if you want to, you can -use git cat-file -t 8988d… to see that this time the object is not a "blob" +use git cat-file -t 8988d... to see that this time the object is not a "blob" object, but a "tree" object (you can also use git cat-file to actually output the raw object contents, but you’ll see mainly a binary mess, so that’s less interesting). @@ -833,9 +834,9 @@ Downloader from http and https URL first obtains the topmost commit object name from the remote site by looking at the specified refname under repo.git/refs/ directory, and then tries to obtain the commit - object by downloading from repo.git/objects/xx/xxx… using the object name - of that commit object. Then it reads the commit object to find out its - parent commits and the associate tree object; it repeats this process + object by downloading from repo.git/objects/xx/xxx... using the object + name of that commit object. Then it reads the commit object to find out + its parent commits and the associate tree object; it repeats this process until it gets all the necessary objects. Because of this behavior, they are sometimes also called commit walkers. The commit walkers are sometimes also called dumb transports, because diff --git a/old/gitcredentials.html b/new/gitcredentials.html index 30361db..4fca225 100644 --- a/old/gitcredentials.html +++ b/new/gitcredentials.html @@ -120,7 +120,7 @@ CONFIGURATION OPTIONS Options for a credential context can be configured either in credential.* -(which applies to all credentials), or credential.<url>.\*, where <url> matches +(which applies to all credentials), or credential.<url>.*, where <url> matches the context as described above. The following options are available in either location: diff --git a/old/gitweb.conf.html b/new/gitweb.conf.html index 1fbacdf..7457704 100644 --- a/old/gitweb.conf.html +++ b/new/gitweb.conf.html @@ -658,9 +658,9 @@ forks If this feature is enabled, gitweb considers projects in subdirectories of project root (basename) to be forks of existing projects. For each - project ‘$projname.git`, projects in the $projname/ directory and its + project $projname.git, projects in the $projname/ directory and its subdirectories will not be shown in the main projects list. Instead, a - '+’ mark is shown next to $projname, which links to a "forks" view that + '+' mark is shown next to $projname, which links to a "forks" view that lists all the forks (all projects in $projname/ subdirectory). Additionally a "forks" view for a project is linked from project summary page. diff --git a/old/user-manual.html b/new/user-manual.html index cbbf1f3..ab930e8 100644 --- a/old/user-manual.html +++ b/new/user-manual.html @@ -3480,8 +3480,8 @@ in cache.h), and that there are just a couple of object types (blobs, trees, commits and tags) which inherit their common structure from struct object, which is their first member (and thus, you can cast e.g. (struct object -*)commit to achieve the same as &commit→object, i.e. get at the object name -and flags). +*)commit to achieve the same as &commit->object, i.e. get at the object +name and flags). Now is a good point to take a break to let this information sink in. Next step: get familiar with the object naming. Read the_section_called_“Naming commits”. There are quite a few ways to name an object (and not only -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html