~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/doc_generate/autodoc_man.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2010-07-07 21:30:06 UTC
  • mfrom: (5333.1.2 better_pyqt_include)
  • Revision ID: pqm@pqm.ubuntu.com-20100707213006-lriphkkbzwwrl7ne
(jameinel) Use a better list of PyQt includes and excludes. (Gary van der
 Merwe)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
# Copyright 2005 Canonical Ltd.
 
1
# Copyright (C) 2005-2010 Canonical Ltd
2
2
 
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
12
12
#
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, write to the Free Software
15
 
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
15
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
16
 
17
17
"""man.py - create man page from built-in bzr help and static text
18
18
 
28
28
 
29
29
import bzrlib
30
30
import bzrlib.help
 
31
import bzrlib.help_topics
31
32
import bzrlib.commands
32
33
 
33
34
 
91
92
def getcommand_help(params):
92
93
    """Shows individual options for a bzr command"""
93
94
    output='.SH "COMMAND REFERENCE"\n'
 
95
    formatted = {}
94
96
    for cmd_name in command_name_list():
95
97
        cmd_object = bzrlib.commands.get_cmd_object(cmd_name)
96
98
        if cmd_object.hidden:
97
99
            continue
98
 
        output = output + format_command(params, cmd_object)
 
100
        formatted[cmd_name] = format_command(params, cmd_object)
 
101
        for alias in cmd_object.aliases:
 
102
            formatted[alias] = format_alias(params, alias, cmd_name)
 
103
    for cmd_name in sorted(formatted):
 
104
        output += formatted[cmd_name]
99
105
    return output
100
106
 
101
107
 
103
109
    """Provides long help for each public command"""
104
110
    subsection_header = '.SS "%s"\n' % (cmd._usage())
105
111
    doc = "%s\n" % (cmd.__doc__)
106
 
    doc = cmd.help()
 
112
    doc = bzrlib.help_topics.help_as_plain_text(cmd.help())
107
113
 
108
114
    option_str = ""
109
115
    options = cmd.options()
111
117
        option_str = "\nOptions:\n"
112
118
        for option_name, option in sorted(options.items()):
113
119
            for name, short_name, argname, help in option.iter_switches():
 
120
                if option.is_hidden(name):
 
121
                    continue
114
122
                l = '    --' + name
115
123
                if argname is not None:
116
124
                    l += ' ' + argname
117
125
                if short_name:
118
 
                    assert len(short_name) == 1
119
126
                    l += ', -' + short_name
120
127
                l += (30 - len(l)) * ' ' + (help or '')
121
128
                wrapped = textwrap.fill(l, initial_indent='',
122
 
                                        subsequent_indent=30*' ')
 
129
                    subsequent_indent=30*' ',
 
130
                    break_long_words=False,
 
131
                    )
123
132
                option_str = option_str + wrapped + '\n'       
124
133
 
125
134
    aliases_str = ""
141
150
    return subsection_header + option_str + aliases_str + see_also_str + "\n" + doc + "\n"
142
151
 
143
152
 
 
153
def format_alias(params, alias, cmd_name):
 
154
    help = '.SS "bzr %s"\n' % alias
 
155
    help += 'Alias for "%s", see "bzr %s".\n' % (cmd_name, cmd_name)
 
156
    return help
 
157
 
 
158
 
144
159
man_preamble = """\
145
 
Man page for Bazaar (%(bzrcmd)s)
 
160
.\\\"Man page for Bazaar (%(bzrcmd)s)
146
161
.\\\"
147
162
.\\\" Large parts of this file are autogenerated from the output of
148
163
.\\\"     \"%(bzrcmd)s help commands\"
156
171
man_head = """\
157
172
.TH bzr 1 "%(datestamp)s" "%(version)s" "Bazaar"
158
173
.SH "NAME"
159
 
Bazaar (%(bzrcmd)s) - next-generation distributed version control
 
174
%(bzrcmd)s - Bazaar next-generation distributed version control
160
175
.SH "SYNOPSIS"
161
176
.B "%(bzrcmd)s"
162
177
.I "command"
171
186
.B "help"
172
187
.I "command"
173
188
.SH "DESCRIPTION"
174
 
Bazaar (or %(bzrcmd)s) is a project of Canonical to develop an open source
 
189
Bazaar (or %(bzrcmd)s) is a project of Canonical to develop an free
175
190
distributed version control system that is powerful, friendly, and scalable.
176
191
Version control means a system that keeps track of previous revisions
177
192
of software source code or similar information and helps people work on it in teams.
226
241
.br
227
242
log10 = log --short -r -10..-1
228
243
.SH "SEE ALSO"
229
 
.UR http://www.bazaar-vcs.org/
230
 
.BR http://www.bazaar-vcs.org/
 
244
.UR http://www.bazaar.canonical.com/
 
245
.BR http://www.bazaar.canonical.com/
231
246
"""
232
247