diff --git a/docs/manifest-format.txt b/docs/manifest-format.txt
index 562e66e2..89257b8b 100644
--- a/docs/manifest-format.txt
+++ b/docs/manifest-format.txt
@@ -19,39 +19,39 @@ XML File Format
A manifest XML file (e.g. 'default.xml') roughly conforms to the
following DTD:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-]>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ]>
A description of the elements and their attributes follows.
@@ -179,16 +179,14 @@ manifest, stored in `$TOP_DIR/.repo/local_manifest.xml`.
For example:
-----
- $ cat .repo/local_manifest.xml
-
-
-
-
-
-----
+ $ cat .repo/local_manifest.xml
+
+
+
+
+
Users may add projects to the local manifest prior to a `repo sync`
invocation, instructing repo to automatically download and manage
diff --git a/subcmds/help.py b/subcmds/help.py
index a68e37d2..a1425e74 100644
--- a/subcmds/help.py
+++ b/subcmds/help.py
@@ -13,6 +13,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+import re
import sys
from formatter import AbstractFormatter, DumbWriter
@@ -106,14 +107,24 @@ See 'repo help --all' for a complete list of recognized commands.
body = body.strip()
body = body.replace('%prog', me)
+ asciidoc_hdr = re.compile(r'^\n?([^\n]{1,})\n(={2,}|-{2,})$')
for para in body.split("\n\n"):
if para.startswith(' '):
self.write('%s', para)
self.nl()
self.nl()
- else:
- self.wrap.add_flowing_data(para)
- self.wrap.end_paragraph(1)
+ continue
+
+ m = asciidoc_hdr.match(para)
+ if m:
+ self.heading('%s', m.group(1))
+ self.nl()
+ self.heading('%s', ''.ljust(len(m.group(1)),'-'))
+ self.nl()
+ continue
+
+ self.wrap.add_flowing_data(para)
+ self.wrap.end_paragraph(1)
self.wrap.end_paragraph(0)
out = _Out(self.manifest.globalConfig)
diff --git a/subcmds/manifest.py b/subcmds/manifest.py
new file mode 100644
index 00000000..69906faa
--- /dev/null
+++ b/subcmds/manifest.py
@@ -0,0 +1,44 @@
+#
+# Copyright (C) 2009 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import os
+import sys
+
+from command import Command
+
+class Manifest(Command):
+ common = False
+ helpSummary = "Manifest file"
+ helpUsage = """
+%prog
+"""
+ _helpDescription = """
+The repo manifest file describes the projects mapped into the client.
+"""
+
+ @property
+ def helpDescription(self):
+ help = self._helpDescription + '\n'
+ r = os.path.dirname(__file__)
+ r = os.path.dirname(r)
+ fd = open(os.path.join(r, 'docs', 'manifest-format.txt'))
+ for line in fd:
+ help += line
+ fd.close()
+ return help
+
+ def Execute(self, opt, args):
+ print >>sys.stderr, 'error: see repo help manifest'
+ sys.exit(1)