hgbook

changeset 592:4ce9d0754af3

Remove the words "section", "chapter", etc from in front of xref tags.
author Bryan O'Sullivan <bos@serpentine.com>
date Thu Mar 26 21:22:03 2009 -0700 (2009-03-26)
parents b788b405e141
children 8dfdbe1cf982
files en/appA-cmdref.xml en/appD-license.xml en/ch00-preface.xml en/ch01-tour-basic.xml en/ch02-tour-merge.xml en/ch03-concepts.xml en/ch04-daily.xml en/ch05-collab.xml en/ch08-undo.xml en/ch09-hook.xml en/ch10-template.xml en/ch11-mq.xml en/ch12-mq-collab.xml en/ch13-hgext.xml
line diff
     1.1 --- a/en/appA-cmdref.xml	Thu Mar 26 21:07:39 2009 -0700
     1.2 +++ b/en/appA-cmdref.xml	Thu Mar 26 21:22:03 2009 -0700
     1.3 @@ -12,7 +12,7 @@
     1.4  
     1.5  <para id="x_655">Show differences between revisions for the specified files or
     1.6  directories, using the unified diff format.  For a description of the
     1.7 -unified diff format, see section <xref linkend="sec:mq:patch"/>.</para>
     1.8 +unified diff format, see <xref linkend="sec:mq:patch"/>.</para>
     1.9  
    1.10  <para id="x_656">By default, this command does not print diffs for files that Mercurial
    1.11  considers to contain binary data.  To control this behaviour, see the
     2.1 --- a/en/appD-license.xml	Thu Mar 26 21:07:39 2009 -0700
     2.2 +++ b/en/appD-license.xml	Thu Mar 26 21:22:03 2009 -0700
     2.3 @@ -32,7 +32,7 @@
     2.4  
     2.5      <para id="x_63c">The reference must be immediately followed with any options
     2.6        elected by the author(s) and/or publisher of the document (see
     2.7 -      section <xref linkend="sec:opl:options"/>).</para>
     2.8 +      <xref linkend="sec:opl:options"/>).</para>
     2.9  
    2.10      <para id="x_63d">Commercial redistribution of Open Publication-licensed
    2.11        material is permitted.</para>
     3.1 --- a/en/ch00-preface.xml	Thu Mar 26 21:07:39 2009 -0700
     3.2 +++ b/en/ch00-preface.xml	Thu Mar 26 21:22:03 2009 -0700
     3.3 @@ -61,7 +61,7 @@
     3.4  	    can revert to an earlier version of one or more files.  In
     3.5  	    fact, a <emphasis>really</emphasis> good revision control
     3.6  	    tool will even help you to efficiently figure out exactly
     3.7 -	    when a problem was introduced (see section <xref
     3.8 +	    when a problem was introduced (see <xref
     3.9  	      linkend="sec:undo:bisect"/> for details).</para></listitem>
    3.10  	<listitem><para id="x_75">It will help you to work simultaneously on,
    3.11  	    and manage the drift between, multiple versions of your
    3.12 @@ -167,7 +167,7 @@
    3.13      <para id="x_87">As an instance of this, several consecutive commits in an
    3.14        example can show up as having occurred during the same second.
    3.15        You can see this occur in the <literal
    3.16 -	role="hg-ext">bisect</literal> example in section <xref
    3.17 +	role="hg-ext">bisect</literal> example in <xref
    3.18  	linkend="sec:undo:bisect"/>, for instance.</para>
    3.19  
    3.20      <para id="x_88">So when you're reading examples, don't place too much weight
     4.1 --- a/en/ch01-tour-basic.xml	Thu Mar 26 21:07:39 2009 -0700
     4.2 +++ b/en/ch01-tour-basic.xml	Thu Mar 26 21:22:03 2009 -0700
     4.3 @@ -246,8 +246,8 @@
     4.4  	log</command> is purely a summary; it is missing a lot of
     4.5        detail.</para>
     4.6  
     4.7 -    <para id="x_23">Figure <xref linkend="fig:tour-basic:history"/> provides a
     4.8 -      graphical representation of the history of the <filename
     4.9 +    <para id="x_23"><xref linkend="fig:tour-basic:history"/> provides
    4.10 +      a graphical representation of the history of the <filename
    4.11  	class="directory">hello</filename> repository, to make it a
    4.12        little easier to see which direction history is
    4.13        <quote>flowing</quote> in.  We'll be returning to this figure
    4.14 @@ -351,13 +351,13 @@
    4.15  
    4.16        &interaction.tour.log-v;
    4.17  
    4.18 -      <para id="x_2f">If you want to see both the description and content of a
    4.19 -	change, add the <option role="hg-opt-log">-p</option> (or
    4.20 -	<option role="hg-opt-log">--patch</option>) option.  This
    4.21 -	displays the content of a change as a <emphasis>unified
    4.22 -	  diff</emphasis> (if you've never seen a unified diff before,
    4.23 -	see section <xref linkend="sec:mq:patch"/> for an
    4.24 -	overview).</para>
    4.25 +      <para id="x_2f">If you want to see both the description and
    4.26 +	content of a change, add the <option
    4.27 +	  role="hg-opt-log">-p</option> (or <option
    4.28 +	  role="hg-opt-log">--patch</option>) option.  This displays
    4.29 +	the content of a change as a <emphasis>unified diff</emphasis>
    4.30 +	(if you've never seen a unified diff before, see <xref
    4.31 +	  linkend="sec:mq:patch"/> for an overview).</para>
    4.32  
    4.33        &interaction.tour.log-vp;
    4.34  
    4.35 @@ -509,11 +509,12 @@
    4.36  	<listitem><para id="x_44">If you have set the <envar>HGUSER</envar>
    4.37  	    environment variable, this is checked
    4.38  	    next.</para></listitem>
    4.39 -	<listitem><para id="x_45">If you create a file in your home directory
    4.40 -	    called <filename role="special">.hgrc</filename>, with a
    4.41 -	    <envar role="rc-item-ui">username</envar> entry, that will
    4.42 -	    be used next.  To see what the contents of this file
    4.43 -	    should look like, refer to section <xref
    4.44 +	<listitem><para id="x_45">If you create a file in your home
    4.45 +	    directory called <filename
    4.46 +	      role="special">.hgrc</filename>, with a <envar
    4.47 +	      role="rc-item-ui">username</envar> entry, that will be
    4.48 +	    used next.  To see what the contents of this file should
    4.49 +	    look like, refer to <xref
    4.50  	      linkend="sec:tour-basic:username"/>
    4.51  	    below.</para></listitem>
    4.52  	<listitem><para id="x_46">If you have set the <envar>EMAIL</envar>
    4.53 @@ -727,12 +728,12 @@
    4.54      <sect2>
    4.55        <title>Updating the working directory</title>
    4.56  
    4.57 -      <para id="x_5e">We have so far glossed over the relationship between a
    4.58 -	repository and its working directory.  The <command
    4.59 +      <para id="x_5e">We have so far glossed over the relationship
    4.60 +	between a repository and its working directory.  The <command
    4.61  	  role="hg-cmd">hg pull</command> command that we ran in
    4.62 -	section <xref linkend="sec:tour:pull"/> brought changes
    4.63 -	into the repository, but if we check, there's no sign of those
    4.64 -	changes in the working directory.  This is because <command
    4.65 +	<xref linkend="sec:tour:pull"/> brought changes into the
    4.66 +	repository, but if we check, there's no sign of those changes
    4.67 +	in the working directory.  This is because <command
    4.68  	  role="hg-cmd">hg pull</command> does not (by default) touch
    4.69  	the working directory.  Instead, we use the <command
    4.70  	  role="hg-cmd">hg update</command> command to do this.</para>
    4.71 @@ -756,7 +757,7 @@
    4.72  	  role="hg-cmd">hg pull</command>.</para>
    4.73  
    4.74        <para id="x_61">If you look back at the output of <command
    4.75 -	  role="hg-cmd">hg pull</command> in section <xref
    4.76 +	  role="hg-cmd">hg pull</command> in <xref
    4.77  	    linkend="sec:tour:pull"/> when we ran it without <option
    4.78  	  role="hg-opt-pull">-u</option>, you can see that it printed
    4.79  	a helpful reminder that we'd have to take an explicit step to
    4.80 @@ -770,7 +771,7 @@
    4.81  
    4.82        &interaction.tour.parents;
    4.83  
    4.84 -      <para id="x_63">If you look back at figure <xref
    4.85 +      <para id="x_63">If you look back at <xref
    4.86  	  linkend="fig:tour-basic:history"/>,
    4.87  	you'll see arrows connecting each changeset.  The node that
    4.88  	the arrow leads <emphasis>from</emphasis> in each case is a
     5.1 --- a/en/ch02-tour-merge.xml	Thu Mar 26 21:07:39 2009 -0700
     5.2 +++ b/en/ch02-tour-merge.xml	Thu Mar 26 21:22:03 2009 -0700
     5.3 @@ -37,7 +37,7 @@
     5.4      <para id="x_33d">We should now have two copies of
     5.5        <filename>hello.c</filename> with different contents.  The
     5.6        histories of the two repositories have also diverged, as
     5.7 -      illustrated in figure <xref
     5.8 +      illustrated in <xref
     5.9  	linkend="fig:tour-merge:sep-repos"/>.</para>
    5.10  
    5.11      &interaction.tour.merge.cat;
    5.12 @@ -83,13 +83,13 @@
    5.13  	</mediaobject>
    5.14        </figure>
    5.15  
    5.16 -      <para id="x_343">In figure <xref linkend="fig:tour-merge:pull"/>, you can
    5.17 +      <para id="x_343">In <xref linkend="fig:tour-merge:pull"/>, you can
    5.18  	see the effect of the pull from <filename
    5.19  	  class="directory">my-hello</filename> into <filename
    5.20  	  class="directory">my-new-hello</filename>.  The history that
    5.21  	was already present in <filename
    5.22  	  class="directory">my-new-hello</filename> is untouched, but
    5.23 -	a new revision has been added.  By referring to figure <xref
    5.24 +	a new revision has been added.  By referring to <xref
    5.25  	  linkend="fig:tour-merge:sep-repos"/>, we can see that the
    5.26  	<emphasis>changeset ID</emphasis> remains the same in the new
    5.27  	repository, but the <emphasis>revision number</emphasis> has
    5.28 @@ -156,7 +156,7 @@
    5.29  
    5.30        &interaction.tour.merge.tip;
    5.31  
    5.32 -      <para id="x_34a">In figure <xref
    5.33 +      <para id="x_34a">In <xref
    5.34  	  linkend="fig:tour-merge:merge"/>, you can see a
    5.35  	representation of what happens to the working directory during
    5.36  	the merge, and how this affects the repository when the commit
    5.37 @@ -184,7 +184,7 @@
    5.38        </mediaobject>
    5.39      </figure>
    5.40  
    5.41 -    <para id="x_34d">Figure <xref linkend="fig:tour-merge:conflict"/> illustrates
    5.42 +    <para id="x_34d"><xref linkend="fig:tour-merge:conflict"/> illustrates
    5.43        an instance of two conflicting changes to a document.  We
    5.44        started with a single version of the file; then we made some
    5.45        changes; while someone else made different changes to the same
    5.46 @@ -214,7 +214,7 @@
    5.47  	<command>kdiff3</command>, which I'll use to describe the
    5.48  	features that are common to graphical file merging tools.  You
    5.49  	can see a screenshot of <command>kdiff3</command> in action in
    5.50 -	figure <xref linkend="fig:tour-merge:kdiff3"/>.  The kind of
    5.51 +	<xref linkend="fig:tour-merge:kdiff3"/>.  The kind of
    5.52  	merge it is performing is called a <emphasis>three-way
    5.53  	  merge</emphasis>, because there are three different versions
    5.54  	of the file of interest to us.  The tool thus splits the upper
    5.55 @@ -274,7 +274,7 @@
    5.56        <title>A worked example</title>
    5.57  
    5.58        <para id="x_359">In this example, we will reproduce the file modification
    5.59 -	history of figure <xref linkend="fig:tour-merge:conflict"/>
    5.60 +	history of <xref linkend="fig:tour-merge:conflict"/>
    5.61  	above.  Let's begin by creating a repository with a base
    5.62  	version of our document.</para>
    5.63  
     6.1 --- a/en/ch03-concepts.xml	Thu Mar 26 21:07:39 2009 -0700
     6.2 +++ b/en/ch03-concepts.xml	Thu Mar 26 21:22:03 2009 -0700
     6.3 @@ -46,7 +46,7 @@
     6.4  	are combined in a single <quote><literal>.i</literal></quote>
     6.5  	file.  The correspondence between a file in the working
     6.6  	directory and the filelog that tracks its history in the
     6.7 -	repository is illustrated in figure <xref
     6.8 +	repository is illustrated in <xref
     6.9  	  linkend="fig:concepts:filelog"/>.</para>
    6.10  
    6.11        <figure id="fig:concepts:filelog">
    6.12 @@ -96,7 +96,7 @@
    6.13  	changelog contains a pointer to a single revision of the
    6.14  	manifest.  A revision of the manifest stores a pointer to a
    6.15  	single revision of each filelog tracked when that changeset
    6.16 -	was created.  These relationships are illustrated in figure
    6.17 +	was created.  These relationships are illustrated in
    6.18  	<xref linkend="fig:concepts:metadata"/>.</para>
    6.19  
    6.20        <figure id="fig:concepts:metadata">
    6.21 @@ -201,7 +201,7 @@
    6.22  	quickly.  This approach works so well that it has since been
    6.23  	copied by several other revision control systems.</para>
    6.24  
    6.25 -      <para id="x_2fd">Figure <xref linkend="fig:concepts:snapshot"/> illustrates
    6.26 +      <para id="x_2fd"><xref linkend="fig:concepts:snapshot"/> illustrates
    6.27  	the idea.  In an entry in a revlog's index file, Mercurial
    6.28  	stores the range of entries from the data file that it must
    6.29  	read to reconstruct a particular revision.</para>
    6.30 @@ -273,7 +273,7 @@
    6.31        <quote>there is no parent here</quote>.  This hash is simply a
    6.32        string of zeroes.</para>
    6.33  
    6.34 -    <para id="x_305">In figure <xref linkend="fig:concepts:revlog"/>, you can see
    6.35 +    <para id="x_305">In <xref linkend="fig:concepts:revlog"/>, you can see
    6.36        an example of the conceptual structure of a revlog.  Filelogs,
    6.37        manifests, and changelogs all have this same structure; they
    6.38        differ only in the kind of data stored in each delta or
    6.39 @@ -347,7 +347,7 @@
    6.40  	</mediaobject>
    6.41        </figure>
    6.42  
    6.43 -      <para id="x_30d">Figure <xref linkend="fig:concepts:wdir"/> shows the
    6.44 +      <para id="x_30d"><xref linkend="fig:concepts:wdir"/> shows the
    6.45  	normal state of the working directory, where it has a single
    6.46  	changeset as parent.  That changeset is the
    6.47  	<emphasis>tip</emphasis>, the newest changeset in the
    6.48 @@ -370,11 +370,11 @@
    6.49  	the new changeset will have the parents of the working
    6.50  	directory as its parents.</para>
    6.51  
    6.52 -      <para id="x_310">After a commit, Mercurial will update the parents of the
    6.53 -	working directory, so that the first parent is the ID of the
    6.54 -	new changeset, and the second is the null ID.  This is shown
    6.55 -	in figure <xref linkend="fig:concepts:wdir-after-commit"/>.
    6.56 -	Mercurial
    6.57 +      <para id="x_310">After a commit, Mercurial will update the
    6.58 +	parents of the working directory, so that the first parent is
    6.59 +	the ID of the new changeset, and the second is the null ID.
    6.60 +	This is shown in <xref
    6.61 +	  linkend="fig:concepts:wdir-after-commit"/>. Mercurial
    6.62  	doesn't touch any of the files in the working directory when
    6.63  	you commit; it just modifies the dirstate to note its new
    6.64  	parents.</para>
    6.65 @@ -392,7 +392,7 @@
    6.66  	interested in, and then examine the files in the working
    6.67  	directory directly to see their contents as they were when you
    6.68  	committed that changeset.  The effect of this is shown in
    6.69 -	figure <xref linkend="fig:concepts:wdir-pre-branch"/>.</para>
    6.70 +	<xref linkend="fig:concepts:wdir-pre-branch"/>.</para>
    6.71  
    6.72        <figure id="fig:concepts:wdir-pre-branch">
    6.73  	<title>The working directory, updated to an older
    6.74 @@ -403,15 +403,15 @@
    6.75  	</mediaobject>
    6.76        </figure>
    6.77  
    6.78 -      <para id="x_313">Having updated the working directory to an older
    6.79 -	changeset, what happens if you make some changes, and then
    6.80 -	commit?  Mercurial behaves in the same way as I outlined
    6.81 +      <para id="x_313">Having updated the working directory to an
    6.82 +	older changeset, what happens if you make some changes, and
    6.83 +	then commit?  Mercurial behaves in the same way as I outlined
    6.84  	above.  The parents of the working directory become the
    6.85  	parents of the new changeset.  This new changeset has no
    6.86  	children, so it becomes the new tip.  And the repository now
    6.87  	contains two changesets that have no children; we call these
    6.88  	<emphasis>heads</emphasis>.  You can see the structure that
    6.89 -	this creates in figure <xref
    6.90 +	this creates in <xref
    6.91  	  linkend="fig:concepts:wdir-branch"/>.</para>
    6.92  
    6.93        <figure id="fig:concepts:wdir-branch">
    6.94 @@ -450,10 +450,10 @@
    6.95      <sect2>
    6.96        <title>Merging heads</title>
    6.97  
    6.98 -      <para id="x_317">When you run the <command role="hg-cmd">hg merge</command>
    6.99 -	command, Mercurial leaves the first parent of the working
   6.100 -	directory unchanged, and sets the second parent to the
   6.101 -	changeset you're merging with, as shown in figure <xref
   6.102 +      <para id="x_317">When you run the <command role="hg-cmd">hg
   6.103 +	  merge</command> command, Mercurial leaves the first parent
   6.104 +	of the working directory unchanged, and sets the second parent
   6.105 +	to the changeset you're merging with, as shown in <xref
   6.106  	  linkend="fig:concepts:wdir-merge"/>.</para>
   6.107  
   6.108        <figure id="fig:concepts:wdir-merge">
   6.109 @@ -588,13 +588,13 @@
   6.110      <sect2>
   6.111        <title>Read/write ordering and atomicity</title>
   6.112  
   6.113 -      <para id="x_32a">Appending to files isn't the whole story when it comes to
   6.114 -	guaranteeing that a reader won't see a partial write.  If you
   6.115 -	recall figure <xref linkend="fig:concepts:metadata"/>,
   6.116 -	revisions in the
   6.117 -	changelog point to revisions in the manifest, and revisions in
   6.118 -	the manifest point to revisions in filelogs.  This hierarchy
   6.119 -	is deliberate.</para>
   6.120 +      <para id="x_32a">Appending to files isn't the whole story when
   6.121 +	it comes to guaranteeing that a reader won't see a partial
   6.122 +	write.  If you recall <xref linkend="fig:concepts:metadata"/>,
   6.123 +	revisions in
   6.124 +	the changelog point to revisions in the manifest, and
   6.125 +	revisions in the manifest point to revisions in filelogs.
   6.126 +	This hierarchy is deliberate.</para>
   6.127  
   6.128        <para id="x_32b">A writer starts a transaction by writing filelog and
   6.129  	manifest data, and doesn't write any changelog data until
     7.1 --- a/en/ch04-daily.xml	Thu Mar 26 21:07:39 2009 -0700
     7.2 +++ b/en/ch04-daily.xml	Thu Mar 26 21:22:03 2009 -0700
     7.3 @@ -328,7 +328,7 @@
     7.4  	Unix-like systems, that's <command>cp</command>) to make a
     7.5  	copy of a file, then <command role="hg-cmd">hg add</command>
     7.6  	the new copy by hand.  Before you do so, though, please do
     7.7 -	reread section <xref linkend="sec:daily:why-copy"/>, and make
     7.8 +	reread <xref linkend="sec:daily:why-copy"/>, and make
     7.9  	an informed
    7.10  	decision that this behaviour is not appropriate to your
    7.11  	specific case.</para>
    7.12 @@ -529,9 +529,9 @@
    7.13        decide it was a mistake, you can still do something about it,
    7.14        though your options may be more limited.</para>
    7.15  
    7.16 -    <para id="x_1e5">For more information about the <command role="hg-cmd">hg
    7.17 -	revert</command> command, and details about how to deal with
    7.18 -      changes you have already committed, see chapter <xref
    7.19 +    <para id="x_1e5">For more information about the <command
    7.20 +	role="hg-cmd">hg revert</command> command, and details about
    7.21 +      how to deal with changes you have already committed, see <xref
    7.22  	linkend="chap:undo"/>.</para>
    7.23  
    7.24    </sect1>
     8.1 --- a/en/ch05-collab.xml	Thu Mar 26 21:07:39 2009 -0700
     8.2 +++ b/en/ch05-collab.xml	Thu Mar 26 21:22:03 2009 -0700
     8.3 @@ -42,16 +42,16 @@
     8.4        the master Mercurial repository at <ulink
     8.5  	url="http://www.selenic.com/repo/hg?style=gitweb">http://www.selenic.com/repo/hg?style=gitweb</ulink>.</para>
     8.6  
     8.7 -    <para id="x_450">If you're interested in providing a web interface to your
     8.8 -      own repositories, Mercurial provides two ways to do this.  The
     8.9 -      first is using the <command role="hg-cmd">hg serve</command>
    8.10 -      command, which is best suited to short-term
    8.11 -      <quote>lightweight</quote> serving.  See section <xref
    8.12 +    <para id="x_450">If you're interested in providing a web interface
    8.13 +      to your own repositories, Mercurial provides two ways to do
    8.14 +      this.  The first is using the <command role="hg-cmd">hg
    8.15 +	serve</command> command, which is best suited to short-term
    8.16 +      <quote>lightweight</quote> serving.  See <xref
    8.17  	linkend="sec:collab:serve"/> below for details of how to use
    8.18        this command.  If you have a long-lived repository that you'd
    8.19        like to make permanently available, Mercurial has built-in
    8.20        support for the CGI (Common Gateway Interface) standard, which
    8.21 -      all common web servers support.  See section <xref
    8.22 +      all common web servers support.  See <xref
    8.23  	linkend="sec:collab:cgi"/> for details of CGI
    8.24        configuration.</para>
    8.25  
    8.26 @@ -115,19 +115,19 @@
    8.27  	place) and spend several days more or less locked in there,
    8.28  	hacking intensely on a handful of projects.</para>
    8.29  
    8.30 -      <para id="x_457">A sprint is the perfect place to use the <command
    8.31 -	  role="hg-cmd">hg serve</command> command, since <command
    8.32 -	  role="hg-cmd">hg serve</command> does not require any fancy
    8.33 -	server infrastructure.  You can get started with <command
    8.34 -	  role="hg-cmd">hg serve</command> in moments, by reading
    8.35 -	section <xref linkend="sec:collab:serve"/> below.  Then simply
    8.36 -	tell
    8.37 -	the person next to you that you're running a server, send the
    8.38 -	URL to them in an instant message, and you immediately have a
    8.39 -	quick-turnaround way to work together.  They can type your URL
    8.40 -	into their web browser and quickly review your changes; or
    8.41 -	they can pull a bugfix from you and verify it; or they can
    8.42 -	clone a branch containing a new feature and try it out.</para>
    8.43 +      <para id="x_457">A sprint is the perfect place to use the
    8.44 +	<command role="hg-cmd">hg serve</command> command, since
    8.45 +	<command role="hg-cmd">hg serve</command> does not require any
    8.46 +	fancy server infrastructure.  You can get started with
    8.47 +	<command role="hg-cmd">hg serve</command> in moments, by
    8.48 +	reading <xref linkend="sec:collab:serve"/> below.  Then simply
    8.49 +	tell the person next to you that you're running a server, send
    8.50 +	the URL to them in an instant message, and you immediately
    8.51 +	have a quick-turnaround way to work together.  They can type
    8.52 +	your URL into their web browser and quickly review your
    8.53 +	changes; or they can pull a bugfix from you and verify it; or
    8.54 +	they can clone a branch containing a new feature and try it
    8.55 +	out.</para>
    8.56  
    8.57        <para id="x_458">The charm, and the problem, with doing things in an ad hoc
    8.58  	fashion like this is that only people who know about your
    8.59 @@ -162,16 +162,15 @@
    8.60  	lets us put off publishing the potentially unsafe change until
    8.61  	it has had a little testing.</para>
    8.62  
    8.63 -      <para id="x_45c">In this kind of scenario, people usually use the
    8.64 -	<command>ssh</command> protocol to securely push changes to
    8.65 -	the central repository, as documented in section <xref
    8.66 -	  linkend="sec:collab:ssh"/>.  It's also
    8.67 -	usual to publish a read-only copy of the repository over HTTP
    8.68 -	using CGI, as in section <xref linkend="sec:collab:cgi"/>.
    8.69 -	Publishing over HTTP
    8.70 -	satisfies the needs of people who don't have push access, and
    8.71 -	those who want to use web browsers to browse the repository's
    8.72 -	history.</para>
    8.73 +      <para id="x_45c">In this kind of scenario, people usually use
    8.74 +	the <command>ssh</command> protocol to securely push changes
    8.75 +	to the central repository, as documented in <xref
    8.76 +	  linkend="sec:collab:ssh"/>.  It's also usual to publish a
    8.77 +	read-only copy of the repository over HTTP using CGI, as in
    8.78 +	<xref linkend="sec:collab:cgi"/>. Publishing
    8.79 +	over HTTP satisfies the needs of people who don't have push
    8.80 +	access, and those who want to use web browsers to browse the
    8.81 +	repository's history.</para>
    8.82  
    8.83      </sect2>
    8.84      <sect2>
    8.85 @@ -402,14 +401,14 @@
    8.86      <sect2>
    8.87        <title>Where collaboration meets branch management</title>
    8.88  
    8.89 -      <para id="x_479">Once you and your team set up some shared repositories and
    8.90 -	start propagating changes back and forth between local and
    8.91 -	shared repos, you begin to face a related, but slightly
    8.92 -	different challenge: that of managing the multiple directions
    8.93 -	in which your team may be moving at once.  Even though this
    8.94 -	subject is intimately related to how your team collaborates,
    8.95 -	it's dense enough to merit treatment of its own, in chapter
    8.96 -	<xref linkend="chap:branch"/>.</para>
    8.97 +      <para id="x_479">Once you and your team set up some shared
    8.98 +	repositories and start propagating changes back and forth
    8.99 +	between local and shared repos, you begin to face a related,
   8.100 +	but slightly different challenge: that of managing the
   8.101 +	multiple directions in which your team may be moving at once.
   8.102 +	Even though this subject is intimately related to how your
   8.103 +	team collaborates, it's dense enough to merit treatment of its
   8.104 +	own, in <xref linkend="chap:branch"/>.</para>
   8.105  
   8.106      </sect2>
   8.107    </sect1>
   8.108 @@ -1110,15 +1109,17 @@
   8.109        <para id="x_4d6">You'll need to copy this script into your <filename
   8.110  	  class="directory">public_html</filename> directory, and
   8.111  	ensure that it's executable.</para>
   8.112 +
   8.113        <programlisting>cp .../hgwebdir.cgi ~/public_html
   8.114  chmod 755 ~/public_html ~/public_html/hgwebdir.cgi</programlisting>
   8.115 -      <para id="x_4d7">With basic configuration out of the way, try to visit
   8.116 -	<ulink url="http://myhostname/
   8.117 +
   8.118 +      <para id="x_4d7">With basic configuration out of the way, try to
   8.119 +	visit <ulink url="http://myhostname/
   8.120  	  myuser/hgwebdir.cgi">http://myhostname/
   8.121  	  myuser/hgwebdir.cgi</ulink> in your browser.  It should
   8.122  	display an empty list of repositories.  If you get a blank
   8.123  	window or error message, try walking through the list of
   8.124 -	potential problems in section <xref
   8.125 +	potential problems in <xref
   8.126  	  linkend="sec:collab:wtf"/>.</para>
   8.127  
   8.128        <para id="x_4d8">The <filename role="special">hgwebdir.cgi</filename>
   8.129 @@ -1313,15 +1314,16 @@
   8.130  	    rows when you are looking at a table, this number controls
   8.131  	    the number of rows in each stripe.</para>
   8.132  	</listitem>
   8.133 -	<listitem><para id="x_4f0"><envar role="rc-item-web">style</envar>:
   8.134 -	    Controls the template Mercurial uses to display the web
   8.135 -	    interface.  Mercurial ships with two web templates, named
   8.136 +	<listitem><para id="x_4f0"><envar
   8.137 +	      role="rc-item-web">style</envar>: Controls the template
   8.138 +	    Mercurial uses to display the web interface.  Mercurial
   8.139 +	    ships with two web templates, named
   8.140  	    <literal>default</literal> and <literal>gitweb</literal>
   8.141  	    (the latter is much more visually attractive).  You can
   8.142 -	    also specify a custom template of your own; see chapter
   8.143 -	    <xref linkend="chap:template"/> for details.
   8.144 -	    Here, you can see how to enable the
   8.145 -	    <literal>gitweb</literal> style.</para>
   8.146 +	    also specify a custom template of your own; see 
   8.147 +	    <xref linkend="chap:template"/> for details. Here, you can
   8.148 +	    see how to enable the <literal>gitweb</literal>
   8.149 +	    style.</para>
   8.150  	  <programlisting>[web]
   8.151  style = gitweb</programlisting>
   8.152  	</listitem>
     9.1 --- a/en/ch08-undo.xml	Thu Mar 26 21:07:39 2009 -0700
     9.2 +++ b/en/ch08-undo.xml	Thu Mar 26 21:22:03 2009 -0700
     9.3 @@ -30,15 +30,15 @@
     9.4      <sect2 id="sec:undo:rollback">
     9.5        <title>Rolling back a transaction</title>
     9.6  
     9.7 -      <para id="x_d4">In section <xref linkend="sec:concepts:txn"/>, I mentioned
     9.8 -	that Mercurial treats each modification of a repository as a
     9.9 -	<emphasis>transaction</emphasis>.  Every time you commit a
    9.10 -	changeset or pull changes from another repository, Mercurial
    9.11 -	remembers what you did.  You can undo, or <emphasis>roll
    9.12 -	  back</emphasis>, exactly one of these actions using the
    9.13 -	<command role="hg-cmd">hg rollback</command> command.  (See
    9.14 -	section <xref linkend="sec:undo:rollback-after-push"/> for an
    9.15 -	important caveat about the use of this command.)</para>
    9.16 +      <para id="x_d4">In <xref linkend="sec:concepts:txn"/>, I
    9.17 +	mentioned that Mercurial treats each modification of a
    9.18 +	repository as a <emphasis>transaction</emphasis>.  Every time
    9.19 +	you commit a changeset or pull changes from another
    9.20 +	repository, Mercurial remembers what you did.  You can undo,
    9.21 +	or <emphasis>roll back</emphasis>, exactly one of these
    9.22 +	actions using the <command role="hg-cmd">hg rollback</command>
    9.23 +	command.  (See <xref linkend="sec:undo:rollback-after-push"/>
    9.24 +	for an important caveat about the use of this command.)</para>
    9.25  
    9.26        <para id="x_d5">Here's a mistake that I often find myself making:
    9.27  	committing a change in which I've created a new file, but
    9.28 @@ -300,12 +300,12 @@
    9.29        an entire changeset automatically, and building blocks that let
    9.30        you reverse part of a changeset by hand.</para>
    9.31  
    9.32 -    <para id="x_f6">Before you read this section, here's something to keep in
    9.33 -      mind: the <command role="hg-cmd">hg backout</command> command
    9.34 -      undoes changes by <emphasis>adding</emphasis> history, not by
    9.35 -      modifying or erasing it.  It's the right tool to use if you're
    9.36 -      fixing bugs, but not if you're trying to undo some change that
    9.37 -      has catastrophic consequences.  To deal with those, see section
    9.38 +    <para id="x_f6">Before you read this section, here's something to
    9.39 +      keep in mind: the <command role="hg-cmd">hg backout</command>
    9.40 +      command undoes changes by <emphasis>adding</emphasis> history,
    9.41 +      not by modifying or erasing it.  It's the right tool to use if
    9.42 +      you're fixing bugs, but not if you're trying to undo some change
    9.43 +      that has catastrophic consequences.  To deal with those, see
    9.44        <xref linkend="sec:undo:aaaiiieee"/>.</para>
    9.45  
    9.46      <sect2>
    9.47 @@ -353,10 +353,9 @@
    9.48  	&interaction.backout.simple.log; Notice that the new changeset
    9.49  	that <command role="hg-cmd">hg backout</command> has created
    9.50  	is a child of the changeset we backed out.  It's easier to see
    9.51 -	this in figure <xref
    9.52 -	  linkend="fig:undo:backout"/>, which presents a graphical
    9.53 -	view of the change history.  As you can see, the history is
    9.54 -	nice and linear.</para>
    9.55 +	this in <xref linkend="fig:undo:backout"/>, which presents a
    9.56 +	graphical view of the change history.  As you can see, the
    9.57 +	history is nice and linear.</para>
    9.58  
    9.59        <figure id="fig:undo:backout">
    9.60  	<title>Backing out a change using the <command
    9.61 @@ -391,7 +390,7 @@
    9.62  
    9.63        &interaction.backout.non-tip.cat;
    9.64  
    9.65 -      <para id="x_100">As the graphical history in figure <xref
    9.66 +      <para id="x_100">As the graphical history in <xref
    9.67  	  linkend="fig:undo:backout-non-tip"/> illustrates, Mercurial
    9.68  	actually commits <emphasis>two</emphasis> changes in this kind
    9.69  	of situation (the box-shaped nodes are the ones that Mercurial
    9.70 @@ -463,7 +462,7 @@
    9.71        &interaction.backout.manual.log;
    9.72  
    9.73        <para id="x_108">Again, it's easier to see what has happened by looking at
    9.74 -	a graph of the revision history, in figure <xref
    9.75 +	a graph of the revision history, in <xref
    9.76  	  linkend="fig:undo:backout-manual"/>.  This makes it clear
    9.77  	that when we use <command role="hg-cmd">hg backout</command>
    9.78  	to back out a change other than the tip, Mercurial adds a new
    9.79 @@ -505,8 +504,8 @@
    9.80  
    9.81        &interaction.backout.manual.merge;
    9.82  
    9.83 -      <para id="x_10e">Afterwards, the graphical history of our repository looks
    9.84 -	like figure
    9.85 +      <para id="x_10e">Afterwards, the graphical history of our
    9.86 +	repository looks like
    9.87  	<xref linkend="fig:undo:backout-manual-merge"/>.</para>
    9.88  
    9.89        <figure id="fig:undo:backout-manual-merge">
    9.90 @@ -614,14 +613,14 @@
    9.91        that you want to pull a brown paper bag over your head), let me
    9.92        first discuss some approaches that probably won't work.</para>
    9.93  
    9.94 -    <para id="x_11e">Since Mercurial treats history as accumulative&emdash;every
    9.95 -      change builds on top of all changes that preceded it&emdash;you
    9.96 -      generally can't just make disastrous changes disappear.  The one
    9.97 -      exception is when you've just committed a change, and it hasn't
    9.98 -      been pushed or pulled into another repository.  That's when you
    9.99 -      can safely use the <command role="hg-cmd">hg rollback</command>
   9.100 -      command, as I detailed in section <xref
   9.101 -	linkend="sec:undo:rollback"/>.</para>
   9.102 +    <para id="x_11e">Since Mercurial treats history as
   9.103 +      accumulative&emdash;every change builds on top of all changes
   9.104 +      that preceded it&emdash;you generally can't just make disastrous
   9.105 +      changes disappear.  The one exception is when you've just
   9.106 +      committed a change, and it hasn't been pushed or pulled into
   9.107 +      another repository.  That's when you can safely use the <command
   9.108 +	role="hg-cmd">hg rollback</command> command, as I detailed in
   9.109 +      <xref linkend="sec:undo:rollback"/>.</para>
   9.110  
   9.111      <para id="x_11f">After you've pushed a bad change to another repository, you
   9.112        <emphasis>could</emphasis> still use <command role="hg-cmd">hg
    10.1 --- a/en/ch09-hook.xml	Thu Mar 26 21:07:39 2009 -0700
    10.2 +++ b/en/ch09-hook.xml	Thu Mar 26 21:22:03 2009 -0700
    10.3 @@ -17,9 +17,9 @@
    10.4    <sect1>
    10.5      <title>An overview of hooks in Mercurial</title>
    10.6  
    10.7 -    <para id="x_1e8">Here is a brief list of the hooks that Mercurial supports.
    10.8 -      We will revisit each of these hooks in more detail later, in
    10.9 -      section <xref linkend="sec:hook:ref"/>.</para>
   10.10 +    <para id="x_1e8">Here is a brief list of the hooks that Mercurial
   10.11 +      supports. We will revisit each of these hooks in more detail
   10.12 +      later, in <xref linkend="sec:hook:ref"/>.</para>
   10.13  
   10.14      <itemizedlist>
   10.15        <listitem><para id="x_1e9"><literal role="hook">changegroup</literal>: This
   10.16 @@ -393,12 +393,12 @@
   10.17  	before both.
   10.18        </para>
   10.19  
   10.20 -      <para id="x_218">It is a good idea to use a somewhat descriptive extension
   10.21 -	when you define a new hook.  This will help you to remember
   10.22 -	what the hook was for.  If the hook fails, you'll get an error
   10.23 -	message that contains the hook name and extension, so using a
   10.24 -	descriptive extension could give you an immediate hint as to
   10.25 -	why the hook failed (see section <xref
   10.26 +      <para id="x_218">It is a good idea to use a somewhat descriptive
   10.27 +	extension when you define a new hook.  This will help you to
   10.28 +	remember what the hook was for.  If the hook fails, you'll get
   10.29 +	an error message that contains the hook name and extension, so
   10.30 +	using a descriptive extension could give you an immediate hint
   10.31 +	as to why the hook failed (see <xref
   10.32  	  linkend="sec:hook:perm"/> for an example).
   10.33        </para>
   10.34  
   10.35 @@ -1094,7 +1094,7 @@
   10.36  	  mapping committer names to user names.
   10.37  	</para>
   10.38  
   10.39 -	<para id="x_263">Recall from section <xref
   10.40 +	<para id="x_263">Recall from <xref
   10.41  	    linkend="sec:hook:bugzilla:config"/> above that the user
   10.42  	  that runs the Mercurial process on the server is also the
   10.43  	  one that will run the <filename>processmail</filename>
   10.44 @@ -1250,10 +1250,9 @@
   10.45  	      sources of changesets to consider.  This lets you limit
   10.46  	      <literal role="hg-ext">notify</literal> to only sending
   10.47  	      out email about changes that remote users pushed into
   10.48 -	      this repository via a server, for example.  See section
   10.49 -	      <xref
   10.50 -		linkend="sec:hook:sources"/> for the sources you can
   10.51 -	      specify here.
   10.52 +	      this repository via a server, for example.  See 
   10.53 +	      <xref linkend="sec:hook:sources"/> for the sources you
   10.54 +	      can specify here.
   10.55  	    </para>
   10.56  	  </listitem></itemizedlist>
   10.57  
   10.58 @@ -1502,23 +1501,23 @@
   10.59  	      role="hg-cmd">hg unbundle</command>.
   10.60  	  </para>
   10.61  	</listitem>
   10.62 -	<listitem><para id="x_294"><literal>source</literal>: A string.  The
   10.63 -	    source of these changes.  See section <xref
   10.64 +	<listitem><para id="x_294"><literal>source</literal>: A
   10.65 +	    string.  The source of these changes.  See <xref
   10.66  	      linkend="sec:hook:sources"/> for details.
   10.67  	  </para>
   10.68  	</listitem>
   10.69 -	<listitem><para id="x_295"><literal>url</literal>: A URL.  The location
   10.70 -	    of the remote repository, if known.  See section <xref
   10.71 -	      linkend="sec:hook:url"/> for more
   10.72 -	    information.
   10.73 +	<listitem><para id="x_295"><literal>url</literal>: A URL.  The
   10.74 +	    location of the remote repository, if known.  See <xref
   10.75 +	      linkend="sec:hook:url"/> for more information.
   10.76  	  </para>
   10.77  	</listitem></itemizedlist>
   10.78  
   10.79 -      <para id="x_296">See also: <literal role="hook">incoming</literal> (section
   10.80 -	<xref linkend="sec:hook:incoming"/>), <literal
   10.81 -	  role="hook">prechangegroup</literal> (section <xref
   10.82 +      <para id="x_296">See also: <literal
   10.83 +	  role="hook">incoming</literal> (<xref
   10.84 +	  linkend="sec:hook:incoming"/>), <literal
   10.85 +	  role="hook">prechangegroup</literal> (<xref
   10.86  	  linkend="sec:hook:prechangegroup"/>), <literal
   10.87 -	  role="hook">pretxnchangegroup</literal> (section <xref
   10.88 +	  role="hook">pretxnchangegroup</literal> (<xref
   10.89  	  linkend="sec:hook:pretxnchangegroup"/>)
   10.90        </para>
   10.91  
   10.92 @@ -1548,9 +1547,10 @@
   10.93  	  </para>
   10.94  	</listitem></itemizedlist>
   10.95  
   10.96 -      <para id="x_29c">See also: <literal role="hook">precommit</literal>
   10.97 -	(section <xref linkend="sec:hook:precommit"/>), <literal
   10.98 -	  role="hook">pretxncommit</literal> (section <xref
   10.99 +      <para id="x_29c">See also: <literal
  10.100 +	  role="hook">precommit</literal> (<xref
  10.101 +	  linkend="sec:hook:precommit"/>), <literal
  10.102 +	  role="hook">pretxncommit</literal> (<xref
  10.103  	  linkend="sec:hook:pretxncommit"/>)
  10.104        </para>
  10.105  
  10.106 @@ -1566,10 +1566,10 @@
  10.107  	each added changeset.
  10.108        </para>
  10.109  
  10.110 -      <para id="x_29e">You can use this hook for the same purposes as the
  10.111 -	<literal role="hook">changegroup</literal> hook (section <xref
  10.112 -	  linkend="sec:hook:changegroup"/>); it's simply
  10.113 -	more convenient sometimes to run a hook once per group of
  10.114 +      <para id="x_29e">You can use this hook for the same purposes as
  10.115 +	the <literal role="hook">changegroup</literal> hook (<xref
  10.116 +	  linkend="sec:hook:changegroup"/>); it's simply more
  10.117 +	convenient sometimes to run a hook once per group of
  10.118  	changesets, while other times it's handier once per changeset.
  10.119        </para>
  10.120  
  10.121 @@ -1580,23 +1580,23 @@
  10.122  	    ID of the newly added changeset.
  10.123  	  </para>
  10.124  	</listitem>
  10.125 -	<listitem><para id="x_2a1"><literal>source</literal>: A string.  The
  10.126 -	    source of these changes.  See section <xref
  10.127 +	<listitem><para id="x_2a1"><literal>source</literal>: A
  10.128 +	    string.  The source of these changes.  See <xref
  10.129  	      linkend="sec:hook:sources"/> for details.
  10.130  	  </para>
  10.131  	</listitem>
  10.132 -	<listitem><para id="x_2a2"><literal>url</literal>: A URL.  The location
  10.133 -	    of the remote repository, if known.  See section <xref
  10.134 -	      linkend="sec:hook:url"/> for more
  10.135 -	    information.
  10.136 +	<listitem><para id="x_2a2"><literal>url</literal>: A URL.  The
  10.137 +	    location of the remote repository, if known.  See <xref
  10.138 +	      linkend="sec:hook:url"/> for more information.
  10.139  	  </para>
  10.140  	</listitem></itemizedlist>
  10.141  
  10.142 -      <para id="x_2a3">See also: <literal role="hook">changegroup</literal>
  10.143 -	(section <xref linkend="sec:hook:changegroup"/>) <literal
  10.144 -	  role="hook">prechangegroup</literal> (section <xref
  10.145 +      <para id="x_2a3">See also: <literal
  10.146 +	  role="hook">changegroup</literal> (<xref
  10.147 +	  linkend="sec:hook:changegroup"/>) <literal
  10.148 +	  role="hook">prechangegroup</literal> (<xref
  10.149  	  linkend="sec:hook:prechangegroup"/>), <literal
  10.150 -	  role="hook">pretxnchangegroup</literal> (section <xref
  10.151 +	  role="hook">pretxnchangegroup</literal> (<xref
  10.152  	  linkend="sec:hook:pretxnchangegroup"/>)
  10.153        </para>
  10.154  
  10.155 @@ -1624,7 +1624,7 @@
  10.156  	  </para>
  10.157  	</listitem>
  10.158  	<listitem><para id="x_2a8"><literal>source</literal>: A string.  The
  10.159 -	    source of the of the operation (see section <xref
  10.160 +	    source of the of the operation (see <xref
  10.161  	      linkend="sec:hook:sources"/>).  If a remote
  10.162  	    client pulled changes from this repository,
  10.163  	    <literal>source</literal> will be
  10.164 @@ -1636,15 +1636,15 @@
  10.165  	    client performed.
  10.166  	  </para>
  10.167  	</listitem>
  10.168 -	<listitem><para id="x_2a9"><literal>url</literal>: A URL.  The location
  10.169 -	    of the remote repository, if known.  See section <xref
  10.170 -	      linkend="sec:hook:url"/> for more
  10.171 -	    information.
  10.172 +	<listitem><para id="x_2a9"><literal>url</literal>: A URL.  The
  10.173 +	    location of the remote repository, if known.  See <xref
  10.174 +	      linkend="sec:hook:url"/> for more information.
  10.175  	  </para>
  10.176  	</listitem></itemizedlist>
  10.177  
  10.178 -      <para id="x_2aa">See also: <literal role="hook">preoutgoing</literal>
  10.179 -	(section <xref linkend="sec:hook:preoutgoing"/>)
  10.180 +      <para id="x_2aa">See also: <literal
  10.181 +	  role="hook">preoutgoing</literal> (<xref
  10.182 +	  linkend="sec:hook:preoutgoing"/>)
  10.183        </para>
  10.184  
  10.185      </sect2>
  10.186 @@ -1674,22 +1674,22 @@
  10.187        </para>
  10.188        <itemizedlist>
  10.189  	<listitem><para id="x_2af"><literal>source</literal>: A string.  The
  10.190 -	    source of these changes.  See section <xref
  10.191 +	    source of these changes.  See <xref
  10.192  	      linkend="sec:hook:sources"/> for details.
  10.193  	  </para>
  10.194  	</listitem>
  10.195 -	<listitem><para id="x_2b0"><literal>url</literal>: A URL.  The location
  10.196 -	    of the remote repository, if known.  See section <xref
  10.197 -	      linkend="sec:hook:url"/> for more
  10.198 -	    information.
  10.199 +	<listitem><para id="x_2b0"><literal>url</literal>: A URL.  The
  10.200 +	    location of the remote repository, if known.  See <xref
  10.201 +	      linkend="sec:hook:url"/> for more information.
  10.202  	  </para>
  10.203  	</listitem></itemizedlist>
  10.204  
  10.205 -      <para id="x_2b1">See also: <literal role="hook">changegroup</literal>
  10.206 -	(section <xref linkend="sec:hook:changegroup"/>), <literal
  10.207 -	  role="hook">incoming</literal> (section <xref
  10.208 -	  linkend="sec:hook:incoming"/>), , <literal
  10.209 -	  role="hook">pretxnchangegroup</literal> (section <xref
  10.210 +      <para id="x_2b1">See also: <literal
  10.211 +	  role="hook">changegroup</literal> (<xref
  10.212 +	  linkend="sec:hook:changegroup"/>), <literal
  10.213 +	  role="hook">incoming</literal> (<xref
  10.214 +	  linkend="sec:hook:incoming"/>), <literal
  10.215 +	  role="hook">pretxnchangegroup</literal> (<xref
  10.216  	  linkend="sec:hook:pretxnchangegroup"/>)
  10.217        </para>
  10.218  
  10.219 @@ -1727,9 +1727,9 @@
  10.220  	directory will become the parents of the new changeset.
  10.221        </para>
  10.222  
  10.223 -      <para id="x_2b8">See also: <literal role="hook">commit</literal> (section
  10.224 -	<xref linkend="sec:hook:commit"/>), <literal
  10.225 -	  role="hook">pretxncommit</literal> (section <xref
  10.226 +      <para id="x_2b8">See also: <literal role="hook">commit</literal>
  10.227 +	(<xref linkend="sec:hook:commit"/>), <literal
  10.228 +	  role="hook">pretxncommit</literal> (<xref
  10.229  	  linkend="sec:hook:pretxncommit"/>)
  10.230        </para>
  10.231  
  10.232 @@ -1749,26 +1749,25 @@
  10.233        <para id="x_2bb">Parameters to this hook:
  10.234        </para>
  10.235        <itemizedlist>
  10.236 -	<listitem><para id="x_2bc"><literal>source</literal>: A string.  The
  10.237 -	    source of the operation that is attempting to obtain
  10.238 -	    changes from this repository (see section <xref
  10.239 +	<listitem><para id="x_2bc"><literal>source</literal>: A
  10.240 +	    string.  The source of the operation that is attempting to
  10.241 +	    obtain changes from this repository (see <xref
  10.242  	      linkend="sec:hook:sources"/>).  See the documentation
  10.243  	    for the <literal>source</literal> parameter to the
  10.244 -	    <literal role="hook">outgoing</literal> hook, in section
  10.245 +	    <literal role="hook">outgoing</literal> hook, in
  10.246  	    <xref linkend="sec:hook:outgoing"/>, for possible values
  10.247 -	    of
  10.248 -	    this parameter.
  10.249 -	  </para>
  10.250 -	</listitem>
  10.251 -	<listitem><para id="x_2bd"><literal>url</literal>: A URL.  The location
  10.252 -	    of the remote repository, if known.  See section <xref
  10.253 -	      linkend="sec:hook:url"/> for more
  10.254 -	    information.
  10.255 +	    of this parameter.
  10.256 +	  </para>
  10.257 +	</listitem>
  10.258 +	<listitem><para id="x_2bd"><literal>url</literal>: A URL.  The
  10.259 +	    location of the remote repository, if known.  See <xref
  10.260 +	      linkend="sec:hook:url"/> for more information.
  10.261  	  </para>
  10.262  	</listitem></itemizedlist>
  10.263  
  10.264 -      <para id="x_2be">See also: <literal role="hook">outgoing</literal> (section
  10.265 -	<xref linkend="sec:hook:outgoing"/>)
  10.266 +      <para id="x_2be">See also: <literal
  10.267 +	  role="hook">outgoing</literal> (<xref
  10.268 +	  linkend="sec:hook:outgoing"/>)
  10.269        </para>
  10.270  
  10.271      </sect2>
  10.272 @@ -1800,15 +1799,16 @@
  10.273  	  </para>
  10.274  	</listitem></itemizedlist>
  10.275  
  10.276 -      <para id="x_2c4">If the tag to be created is revision-controlled, the
  10.277 -	<literal role="hook">precommit</literal> and <literal
  10.278 -	  role="hook">pretxncommit</literal> hooks (sections <xref
  10.279 +      <para id="x_2c4">If the tag to be created is
  10.280 +	revision-controlled, the <literal
  10.281 +	  role="hook">precommit</literal> and <literal
  10.282 +	  role="hook">pretxncommit</literal> hooks (<xref
  10.283  	  linkend="sec:hook:commit"/> and <xref
  10.284  	  linkend="sec:hook:pretxncommit"/>) will also be run.
  10.285        </para>
  10.286  
  10.287 -      <para id="x_2c5">See also: <literal role="hook">tag</literal> (section
  10.288 -	<xref linkend="sec:hook:tag"/>)
  10.289 +      <para id="x_2c5">See also: <literal role="hook">tag</literal>
  10.290 +	(<xref linkend="sec:hook:tag"/>)
  10.291        </para>
  10.292      </sect2>
  10.293      <sect2 id="sec:hook:pretxnchangegroup">
  10.294 @@ -1856,23 +1856,23 @@
  10.295  	      role="hg-cmd">hg unbundle</command>.
  10.296  	  </para>
  10.297  	</listitem>
  10.298 -	<listitem><para id="x_2cc"><literal>source</literal>: A string.  The
  10.299 -	    source of these changes.  See section <xref
  10.300 +	<listitem><para id="x_2cc"><literal>source</literal>: A
  10.301 +	    string.  The source of these changes.  See <xref
  10.302  	      linkend="sec:hook:sources"/> for details.
  10.303  	  </para>
  10.304  	</listitem>
  10.305 -	<listitem><para id="x_2cd"><literal>url</literal>: A URL.  The location
  10.306 -	    of the remote repository, if known.  See section <xref
  10.307 -	      linkend="sec:hook:url"/> for more
  10.308 -	    information.
  10.309 +	<listitem><para id="x_2cd"><literal>url</literal>: A URL.  The
  10.310 +	    location of the remote repository, if known.  See <xref
  10.311 +	      linkend="sec:hook:url"/> for more information.
  10.312  	  </para>
  10.313  	</listitem></itemizedlist>
  10.314  
  10.315 -      <para id="x_2ce">See also: <literal role="hook">changegroup</literal>
  10.316 -	(section <xref linkend="sec:hook:changegroup"/>), <literal
  10.317 -	  role="hook">incoming</literal> (section <xref
  10.318 +      <para id="x_2ce">See also: <literal
  10.319 +	  role="hook">changegroup</literal> (<xref
  10.320 +	  linkend="sec:hook:changegroup"/>), <literal
  10.321 +	  role="hook">incoming</literal> (<xref
  10.322  	  linkend="sec:hook:incoming"/>), <literal
  10.323 -	  role="hook">prechangegroup</literal> (section <xref
  10.324 +	  role="hook">prechangegroup</literal> (<xref
  10.325  	  linkend="sec:hook:prechangegroup"/>)
  10.326        </para>
  10.327  
  10.328 @@ -1919,8 +1919,9 @@
  10.329  	  </para>
  10.330  	</listitem></itemizedlist>
  10.331  
  10.332 -      <para id="x_2d6">See also: <literal role="hook">precommit</literal>
  10.333 -	(section <xref linkend="sec:hook:precommit"/>)
  10.334 +      <para id="x_2d6">See also: <literal
  10.335 +	  role="hook">precommit</literal> (<xref
  10.336 +	  linkend="sec:hook:precommit"/>)
  10.337        </para>
  10.338  
  10.339      </sect2>
  10.340 @@ -1928,32 +1929,32 @@
  10.341        <title><literal role="hook">preupdate</literal>&emdash;before
  10.342  	updating or merging working directory</title>
  10.343  
  10.344 -      <para id="x_2d7">This controlling hook is run before an update or merge of
  10.345 -	the working directory begins.  It is run only if Mercurial's
  10.346 -	normal pre-update checks determine that the update or merge
  10.347 -	can proceed.  If the hook succeeds, the update or merge may
  10.348 -	proceed; if it fails, the update or merge does not start.
  10.349 +      <para id="x_2d7">This controlling hook is run before an update
  10.350 +	or merge of the working directory begins.  It is run only if
  10.351 +	Mercurial's normal pre-update checks determine that the update
  10.352 +	or merge can proceed.  If the hook succeeds, the update or
  10.353 +	merge may proceed; if it fails, the update or merge does not
  10.354 +	start.
  10.355        </para>
  10.356  
  10.357        <para id="x_2d8">Parameters to this hook:
  10.358        </para>
  10.359        <itemizedlist>
  10.360 -	<listitem><para id="x_2d9"><literal>parent1</literal>: A changeset ID.
  10.361 -	    The ID of the parent that the working directory is to be
  10.362 -	    updated to.  If the working directory is being merged, it
  10.363 -	    will not change this parent.
  10.364 -	  </para>
  10.365 -	</listitem>
  10.366 -	<listitem><para id="x_2da"><literal>parent2</literal>: A changeset ID.
  10.367 -	    Only set if the working directory is being merged.  The ID
  10.368 -	    of the revision that the working directory is being merged
  10.369 -	    with.
  10.370 +	<listitem><para id="x_2d9"><literal>parent1</literal>: A
  10.371 +	    changeset ID. The ID of the parent that the working
  10.372 +	    directory is to be updated to.  If the working directory
  10.373 +	    is being merged, it will not change this parent.
  10.374 +	  </para>
  10.375 +	</listitem>
  10.376 +	<listitem><para id="x_2da"><literal>parent2</literal>: A
  10.377 +	    changeset ID. Only set if the working directory is being
  10.378 +	    merged.  The ID of the revision that the working directory
  10.379 +	    is being merged with.
  10.380  	  </para>
  10.381  	</listitem></itemizedlist>
  10.382  
  10.383 -      <para id="x_2db">See also: <literal role="hook">update</literal> (section
  10.384 -	<xref linkend="sec:hook:update"/>)
  10.385 -      </para>
  10.386 +      <para id="x_2db">See also: <literal role="hook">update</literal>
  10.387 +	(<xref linkend="sec:hook:update"/>)</para>
  10.388  
  10.389      </sect2>
  10.390      <sect2 id="sec:hook:tag">
  10.391 @@ -1988,8 +1989,8 @@
  10.392  	  linkend="sec:hook:commit"/>) is run before this hook.
  10.393        </para>
  10.394  
  10.395 -      <para id="x_2e2">See also: <literal role="hook">pretag</literal> (section
  10.396 -	<xref linkend="sec:hook:pretag"/>)
  10.397 +      <para id="x_2e2">See also: <literal role="hook">pretag</literal>
  10.398 +	(<xref linkend="sec:hook:pretag"/>)
  10.399        </para>
  10.400  
  10.401      </sect2>
  10.402 @@ -2023,7 +2024,7 @@
  10.403  	</listitem></itemizedlist>
  10.404  
  10.405        <para id="x_2e7">See also: <literal role="hook">preupdate</literal>
  10.406 -	(section <xref linkend="sec:hook:preupdate"/>)
  10.407 +	(<xref linkend="sec:hook:preupdate"/>)
  10.408        </para>
  10.409  
  10.410      </sect2>
    11.1 --- a/en/ch10-template.xml	Thu Mar 26 21:07:39 2009 -0700
    11.2 +++ b/en/ch10-template.xml	Thu Mar 26 21:22:03 2009 -0700
    11.3 @@ -107,7 +107,7 @@
    11.4        <emphasis>escape sequence</emphasis>, telling Mercurial to print
    11.5        a newline at the end of each template item.  If you omit this
    11.6        newline, Mercurial will run each piece of output together.  See
    11.7 -      section <xref linkend="sec:template:escape"/> for more details
    11.8 +      <xref linkend="sec:template:escape"/> for more details
    11.9        of escape sequences.</para>
   11.10  
   11.11      <para id="x_587">A template that prints a fixed string of text all the time
   11.12 @@ -121,11 +121,10 @@
   11.13        been replaced in the output with the description of each
   11.14        changeset.  Every time Mercurial finds text enclosed in curly
   11.15        braces (<quote><literal>{</literal></quote> and
   11.16 -      <quote><literal>}</literal></quote>), it will try to replace the braces
   11.17 -      and text with the expansion of whatever is inside.  To print a
   11.18 -      literal curly brace, you must escape it, as described in section
   11.19 -      <xref
   11.20 -	linkend="sec:template:escape"/>.</para>
   11.21 +      <quote><literal>}</literal></quote>), it will try to replace the
   11.22 +      braces and text with the expansion of whatever is inside.  To
   11.23 +      print a literal curly brace, you must escape it, as described in
   11.24 +      <xref linkend="sec:template:escape"/>.</para>
   11.25  
   11.26    </sect1>
   11.27    <sect1 id="sec:template:keyword">
   11.28 @@ -149,7 +148,7 @@
   11.29  	  Date information.  The date when the changeset was
   11.30  	  committed.  This is <emphasis>not</emphasis> human-readable;
   11.31  	  you must pass it through a filter that will render it
   11.32 -	  appropriately.  See section <xref
   11.33 +	  appropriately.  See <xref
   11.34  	    linkend="sec:template:filter"/> for more information
   11.35  	  on filters. The date is expressed as a pair of numbers.  The
   11.36  	  first number is a Unix UTC timestamp (seconds since January
   11.37 @@ -197,8 +196,7 @@
   11.38      <para id="x_596">As we noted above, the date keyword does not produce
   11.39        human-readable output, so we must treat it specially.  This
   11.40        involves using a <emphasis>filter</emphasis>, about which more
   11.41 -      in section <xref
   11.42 -	linkend="sec:template:filter"/>.</para>
   11.43 +      in <xref linkend="sec:template:filter"/>.</para>
   11.44  
   11.45      &interaction.template.simple.datekeyword;
   11.46  
    12.1 --- a/en/ch11-mq.xml	Thu Mar 26 21:07:39 2009 -0700
    12.2 +++ b/en/ch11-mq.xml	Thu Mar 26 21:22:03 2009 -0700
    12.3 @@ -36,7 +36,7 @@
    12.4  
    12.5      <para id="x_3b0">When you have few changes to maintain, it is easy to manage
    12.6        a single patch using the standard <command>diff</command> and
    12.7 -      <command>patch</command> programs (see section <xref
    12.8 +      <command>patch</command> programs (see <xref
    12.9  	linkend="sec:mq:patch"/> for a discussion of these
   12.10        tools). Once the number of changes grows, it starts to make
   12.11        sense to maintain patches as discrete <quote>chunks of
   12.12 @@ -241,7 +241,7 @@
   12.13        represented by one deletion and one insertion.</para>
   12.14  
   12.15      <para id="x_3c9">We will return to some of the more subtle aspects of patches
   12.16 -      later (in section <xref linkend="sec:mq:adv-patch"/>), but you
   12.17 +      later (in <xref linkend="sec:mq:adv-patch"/>), but you
   12.18        should have
   12.19        enough information now to use MQ.</para>
   12.20  
   12.21 @@ -400,17 +400,18 @@
   12.22  	<emphasis>knows about</emphasis>, or manages, a popped patch,
   12.23  	but the patch no longer has a corresponding changeset in the
   12.24  	repository, and the working directory does not contain the
   12.25 -	changes made by the patch.  Figure <xref
   12.26 +	changes made by the patch.  <xref
   12.27  	  linkend="fig:mq:stack"/> illustrates
   12.28  	the difference between applied and tracked patches.</para>
   12.29  
   12.30 -      <informalfigure id="fig:mq:stack">
   12.31 -	<mediaobject><imageobject><imagedata
   12.32 -				    fileref="mq-stack"/></imageobject><textobject><phrase>XXX 
   12.33 -	      add text</phrase></textobject><caption><para id="x_3dd">Applied and
   12.34 -	      unapplied patches in the MQ patch
   12.35 -	      stack</para></caption></mediaobject>
   12.36 -      </informalfigure>
   12.37 +      <figure id="fig:mq:stack">
   12.38 +	<title>Applied and unapplied patches in the MQ patch
   12.39 +	  stack</title>
   12.40 +	<mediaobject>
   12.41 +	  <imageobject><imagedata fileref="mq-stack"/></imageobject>
   12.42 +	  <textobject><phrase>XXX add text</phrase></textobject>
   12.43 +	</mediaobject>
   12.44 +      </figure>
   12.45  
   12.46        <para id="x_3de">You can reapply an unapplied, or popped, patch using the
   12.47  	<command role="hg-ext-mq">qpush</command> command.  This
   12.48 @@ -441,8 +442,7 @@
   12.49  	  role="hg-ext-mq-cmd-qpop-opt">-a</option> option to <command
   12.50  	  role="hg-ext-mq">qpop</command> causes it to pop all applied
   12.51  	patches.  (For some more ways to push and pop many patches,
   12.52 -	see section <xref linkend="sec:mq:perf"/>
   12.53 -	below.)</para>
   12.54 +	see <xref linkend="sec:mq:perf"/> below.)</para>
   12.55  
   12.56  &interaction.mq.tutorial.qpush-a;
   12.57  
   12.58 @@ -700,8 +700,7 @@
   12.59        <para id="x_3fa">If your patch <emphasis>used to</emphasis> apply cleanly,
   12.60  	and no longer does because you've changed the underlying code
   12.61  	that your patches are based on, Mercurial Queues can help; see
   12.62 -	section <xref
   12.63 -	  linkend="sec:mq:merge"/> for details.</para>
   12.64 +	<xref linkend="sec:mq:merge"/> for details.</para>
   12.65  
   12.66        <para id="x_3fb">Unfortunately, there aren't any great techniques for
   12.67  	dealing with rejected hunks.  Most often, you'll need to view
   12.68 @@ -941,7 +940,7 @@
   12.69  	  latest series of changes?</para>
   12.70  	<programlisting>hg email qbase:qtip</programlisting>
   12.71  	<para id="x_41c">  (Don't know what <quote>patchbombing</quote> is?  See
   12.72 -	  section <xref linkend="sec:hgext:patchbomb"/>.)</para>
   12.73 +	  <xref linkend="sec:hgext:patchbomb"/>.)</para>
   12.74        </listitem>
   12.75        <listitem><para id="x_41d">Need to see all of the patches since
   12.76  	  <literal>foo.patch</literal> that have touched files in a
   12.77 @@ -980,7 +979,7 @@
   12.78  	    role="hg-ext-mq">qpush</command> it again, the changeset
   12.79  	  that represents the patch after the pop/push will have a
   12.80  	  <emphasis>different identity</emphasis> than the changeset
   12.81 -	  that represented the hash beforehand.  See section <xref
   12.82 +	  that represented the hash beforehand.  See <xref
   12.83  	    linkend="sec:mqref:cmd:qpush"/> for
   12.84  	  information as to why this is.</para>
   12.85        </listitem>
   12.86 @@ -1132,7 +1131,7 @@
   12.87        hundreds of files across dozens of directories, a single
   12.88        invocation of <command>filterdiff</command> can generate a
   12.89        smaller patch that only touches files whose names match a
   12.90 -      particular glob pattern.  See section <xref
   12.91 +      particular glob pattern.  See <xref
   12.92  	linkend="mq-collab:tips:interdiff"/> for another
   12.93        example.</para>
   12.94  
   12.95 @@ -1170,7 +1169,7 @@
   12.96  
   12.97      <para id="x_436">For this reason, it is very much worth investing a little
   12.98        time to learn how to use some of the third-party tools I
   12.99 -      described in section <xref linkend="sec:mq:tools"/>,
  12.100 +      described in <xref linkend="sec:mq:tools"/>,
  12.101        particularly
  12.102        <command>diffstat</command> and <command>filterdiff</command>.
  12.103        The former will give you a quick idea of what changes your patch
  12.104 @@ -1292,7 +1291,7 @@
  12.105  
  12.106        <para id="x_447">Once you have this hunk, you can concatenate it onto the
  12.107  	end of your destination patch and continue with the remainder
  12.108 -	of section <xref linkend="sec:mq:combine"/>.</para>
  12.109 +	of <xref linkend="sec:mq:combine"/>.</para>
  12.110  
  12.111      </sect2>
  12.112    </sect1>
    13.1 --- a/en/ch12-mq-collab.xml	Thu Mar 26 21:07:39 2009 -0700
    13.2 +++ b/en/ch12-mq-collab.xml	Thu Mar 26 21:22:03 2009 -0700
    13.3 @@ -435,7 +435,7 @@
    13.4  
    13.5        <para id="x_19a">If you're developing a set of patches over a long time,
    13.6  	it's a good idea to maintain them in a repository, as
    13.7 -	discussed in section <xref linkend="sec:mq:repo"/>.  If you do
    13.8 +	discussed in <xref linkend="sec:mq:repo"/>.  If you do
    13.9  	so, you'll quickly
   13.10  	discover that using the <command role="hg-cmd">hg
   13.11  	  diff</command> command to look at the history of changes to
   13.12 @@ -504,7 +504,7 @@
   13.13  
   13.14        <para id="x_1a2">The <literal role="hg-ext">extdiff</literal> extension is
   13.15  	useful for more than merely improving the presentation of MQ
   13.16 -	patches.  To read more about it, go to section <xref
   13.17 +	patches.  To read more about it, go to <xref
   13.18  	  linkend="sec:hgext:extdiff"/>.</para>
   13.19  
   13.20      </sect2>
    14.1 --- a/en/ch13-hgext.xml	Thu Mar 26 21:07:39 2009 -0700
    14.2 +++ b/en/ch13-hgext.xml	Thu Mar 26 21:22:03 2009 -0700
    14.3 @@ -15,13 +15,13 @@
    14.4      <emphasis>plugins</emphasis>).  We've already discussed a few of
    14.5      these extensions in earlier chapters.</para>
    14.6    <itemizedlist>
    14.7 -    <listitem><para id="x_500">Section <xref linkend="sec:tour-merge:fetch"/>
    14.8 +    <listitem><para id="x_500"><xref linkend="sec:tour-merge:fetch"/>
    14.9  	covers the <literal role="hg-ext">fetch</literal> extension;
   14.10  	this combines pulling new changes and merging them with local
   14.11  	changes into a single command, <command
   14.12  	  role="hg-ext-fetch">fetch</command>.</para>
   14.13      </listitem>
   14.14 -    <listitem><para id="x_501">In chapter <xref linkend="chap:hook"/>, we covered
   14.15 +    <listitem><para id="x_501">In <xref linkend="chap:hook"/>, we covered
   14.16  	several extensions that are useful for hook-related
   14.17  	functionality: <literal role="hg-ext">acl</literal> adds
   14.18  	access control lists; <literal
   14.19 @@ -32,10 +32,10 @@
   14.20      </listitem>
   14.21      <listitem><para id="x_502">The Mercurial Queues patch management extension is
   14.22  	so invaluable that it merits two chapters and an appendix all
   14.23 -	to itself. Chapter <xref linkend="chap:mq"/> covers the
   14.24 -	basics; chapter <xref
   14.25 +	to itself. <xref linkend="chap:mq"/> covers the
   14.26 +	basics; <xref
   14.27  	  linkend="chap:mq-collab"/> discusses advanced topics;
   14.28 -	and appendix <xref linkend="chap:mqref"/> goes into detail on
   14.29 +	and <xref linkend="chap:mqref"/> goes into detail on
   14.30  	each
   14.31  	command.</para>
   14.32      </listitem></itemizedlist>
   14.33 @@ -45,7 +45,7 @@
   14.34      machinery you'll need to know about if you want to write an
   14.35      extension of your own.</para>
   14.36    <itemizedlist>
   14.37 -    <listitem><para id="x_504">In section <xref linkend="sec:hgext:inotify"/>,
   14.38 +    <listitem><para id="x_504">In <xref linkend="sec:hgext:inotify"/>,
   14.39  	we'll discuss the possibility of <emphasis>huge</emphasis>
   14.40  	performance improvements using the <literal
   14.41  	  role="hg-ext">inotify</literal> extension.</para>
   14.42 @@ -183,7 +183,7 @@
   14.43        </listitem>
   14.44        <listitem><para id="x_517">Make sure that you have the Mercurial Queues
   14.45  	  extension, <literal role="hg-ext">mq</literal>, enabled.  If
   14.46 -	  you've never used MQ, read section <xref
   14.47 +	  you've never used MQ, read <xref
   14.48  	    linkend="sec:mq:start"/> to get started
   14.49  	  quickly.</para>
   14.50        </listitem>
   14.51 @@ -353,7 +353,7 @@
   14.52        you can easily work around this with a little scripting.  For an
   14.53        example of such scripting in action with the <literal
   14.54  	role="hg-ext">mq</literal> extension and the
   14.55 -      <command>interdiff</command> command, see section <xref
   14.56 +      <command>interdiff</command> command, see <xref
   14.57  	linkend="mq-collab:tips:interdiff"/>.</para>
   14.58  
   14.59      <sect2>
   14.60 @@ -502,7 +502,7 @@
   14.61  	    use.</para>
   14.62  	</listitem>
   14.63  	<listitem><para id="x_53e">The default behaviour is to send unified diffs
   14.64 -	    (see section <xref linkend="sec:mq:patch"/> for a
   14.65 +	    (see <xref linkend="sec:mq:patch"/> for a
   14.66  	    description of the
   14.67  	    format), one per message.  You can send a binary bundle
   14.68  	    instead with the <option