20
20
Written by the Bazaar community.
23
from __future__ import absolute_import
29
import bzrlib.help_topics
30
import bzrlib.commands
29
import breezy.help_topics
30
import breezy.commands
34
34
def get_filename(options):
35
35
"""Provides name of manual"""
36
return "%s_man.txt" % (options.bzr_name)
36
return "%s_man.txt" % (options.brz_name)
39
39
def infogen(options, outfile):
40
40
"""Create manual in RSTX format"""
41
tt = breezy.osutils.gmtime()
44
{ "bzrcmd": options.bzr_name,
43
{ "brzcmd": options.brz_name,
45
44
"datestamp": time.strftime("%Y-%m-%d",tt),
46
45
"timestamp": time.strftime("%Y-%m-%d %H:%M:%S +0000",tt),
47
"version": bzrlib.__version__,
46
"version": breezy.__version__,
49
48
nominated_filename = getattr(options, 'filename', None)
50
49
if nominated_filename is None:
53
topic_dir = bzrlib.osutils.dirname(nominated_filename)
52
topic_dir = breezy.osutils.dirname(nominated_filename)
54
53
outfile.write(rstx_preamble % params)
55
54
outfile.write(rstx_head % params)
56
55
outfile.write(_get_body(params, topic_dir))
60
59
def _get_body(params, topic_dir):
61
60
"""Build the manual content."""
62
from bzrlib.help_topics import SECT_CONCEPT, SECT_LIST, SECT_PLUGIN
63
registry = bzrlib.help_topics.topic_registry
61
from breezy.help_topics import SECT_CONCEPT, SECT_LIST, SECT_PLUGIN
62
registry = breezy.help_topics.topic_registry
65
64
result.append(_get_section(registry, SECT_CONCEPT, "Concepts",
66
65
output_dir=topic_dir))
108
107
if file_per_topic:
109
108
lines.extend([".. toctree::", " :maxdepth: 1", ""])
111
cmds = sorted(bzrlib.commands.builtin_command_names())
110
cmds = sorted(breezy.commands.builtin_command_names())
112
111
for cmd_name in cmds:
113
cmd_object = bzrlib.commands.get_cmd_object(cmd_name)
112
cmd_object = breezy.commands.get_cmd_object(cmd_name)
114
113
if cmd_object.hidden:
116
115
heading = cmd_name
129
128
def _dump_text(output_dir, topic, text):
130
129
"""Dump text for a topic to a file."""
131
130
topic_id = "%s-%s" % (topic, "help")
132
filename = bzrlib.osutils.pathjoin(output_dir, topic_id + ".txt")
131
filename = breezy.osutils.pathjoin(output_dir, topic_id + ".txt")
133
132
f = open(filename, "w")
133
f.write(text.encode('utf-8'))
142
141
rstx_preamble = """.. This file is autogenerated from the output of
143
.. %(bzrcmd)s help topics
144
.. %(bzrcmd)s help commands
145
.. %(bzrcmd)s help <cmd>
142
.. %(brzcmd)s help topics
143
.. %(brzcmd)s help commands
144
.. %(brzcmd)s help <cmd>
147
.. Generation time: %(timestamp)s
163
161
Introduction including a list of commonly used commands::
167
165
List of topics and a summary of each::
171
169
List of commands and a summary of each::
175
173
More information about a particular topic or command::
177
bzr help topic-or-command-name
175
brz help topic-or-command-name
179
177
The following web sites provide further information on Bazaar:
181
:Home page: http://bazaar.canonical.com/
182
:Official docs: http://doc.bazaar.canonical.com/
183
:Launchpad: https://launchpad.net/bzr/
179
:Home page: http://www.breezy-vcs.org/
180
:Bazaar docs: http://doc.bazaar.canonical.com/
181
:Launchpad: https://launchpad.net/brz/