~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to tools/doc_generate/autodoc_rstx.py

  • Committer: Robert Collins
  • Date: 2007-03-08 04:06:06 UTC
  • mfrom: (2323.1.1 integration)
  • mto: This revision was merged to the branch mainline in revision 2442.
  • Revision ID: robertc@robertcollins.net-20070308040606-84gsniv56huiyjt4
Merge bzr.dev.

Show diffs side-by-side

added added

removed removed

Lines of Context:
9
9
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10
10
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
11
# GNU General Public License for more details.
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
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
104
104
::
105
105
""" % (usage, '-'*len(usage))
106
106
 
107
 
    docsplit = cmd.__doc__.split('\n')
108
 
    doc = '\n'.join([' '*4 + docsplit[0]] + docsplit[1:])
 
107
    docsplit = cmd.help().split('\n')
 
108
    doc = '\n'.join([' '*4+line for line in docsplit])
109
109
        
110
110
    option_str = ""
111
111
    options = cmd.options()
112
112
    if options:
113
113
        option_str = "\n    Options:\n"
114
114
        for option_name, option in sorted(options.items()):
115
 
            l = '        --' + option_name
116
 
            if option.type is not None:
117
 
                l += ' ' + option.argname.upper()
118
 
            short_name = option.short_name()
119
 
            if short_name:
120
 
                assert len(short_name) == 1
121
 
                l += ', -' + short_name
122
 
            l += (30 - len(l)) * ' ' + option.help
123
 
            # TODO: Split help over multiple lines with
124
 
            # correct indenting and wrapping.
125
 
            wrapped = textwrap.fill(l, initial_indent='',
126
 
                                    subsequent_indent=30*' ')
127
 
            option_str = option_str + wrapped + '\n'       
128
 
    return subsection_header + option_str + "\n" + doc + "\n"
 
115
            for name, short_name, argname, help in option.iter_switches():
 
116
                l = '    --' + name
 
117
                if argname is not None:
 
118
                    l += ' ' + argname
 
119
                if short_name:
 
120
                    assert len(short_name) == 1
 
121
                    l += ', -' + short_name
 
122
                l += (30 - len(l)) * ' ' + (help or '')
 
123
                # TODO: Split help over multiple lines with
 
124
                # correct indenting and wrapping.
 
125
                wrapped = textwrap.fill(l, initial_indent='',
 
126
                                        subsequent_indent=30*' ')
 
127
                option_str = option_str + wrapped + '\n'       
 
128
 
 
129
    aliases_str = ""
 
130
    if cmd.aliases:
 
131
        if len(cmd.aliases) > 1:
 
132
            aliases_str += '\n    Aliases: '
 
133
        else:
 
134
            aliases_str += '\n    Alias: '
 
135
        aliases_str += ', '.join(cmd.aliases)
 
136
        aliases_str += '\n'
 
137
 
 
138
    return subsection_header + option_str + aliases_str + "\n" + doc + "\n"
129
139
 
130
140
 
131
141
##
138
148
.. Generation time: %(timestamp)s
139
149
 
140
150
=============================================
141
 
Man page for %(bzrcmd)s (bazaar-ng)
 
151
Man page for Bazaar (%(bzrcmd)s)
142
152
=============================================
143
153
 
144
154
:Date: %(datestamp)s
153
163
rstx_head = """\
154
164
Name
155
165
====
156
 
%(bzrcmd)s - bazaar-ng next-generation distributed version control
 
166
Bazaar (%(bzrcmd)s) - next-generation distributed version control
157
167
 
158
168
Synopsis
159
169
========
166
176
 
167
177
Description
168
178
===========
169
 
bazaar-ng (or **%(bzrcmd)s**) is a project of Canonical to develop
 
179
Bazaar (or **%(bzrcmd)s**) is a project of Canonical to develop
170
180
an open source distributed version control system that is powerful,
171
181
friendly, and scalable. Version control means a system
172
182
that keeps track of previous revisions of software source code
180
190
**BZRPATH**
181
191
                Path where **%(bzrcmd)s** is to look for external command.
182
192
 
183
 
**BZREMAIL**
 
193
**BZR_EMAIL**
184
194
                E-Mail address of the user. Overrides default user config.
185
195
 
186
196
**EMAIL**
187
 
                E-Mail address of the user. Overriddes default user config.
 
197
                E-Mail address of the user. Overrides default user config.
 
198
 
 
199
**BZR_EDITOR**
 
200
                Editor for editing commit messages
 
201
 
 
202
**EDITOR**
 
203
                Editor for editing commit messages
 
204
 
 
205
**BZR_PLUGIN_PATH**
 
206
                Paths where bzr should look for plugins
 
207
 
 
208
**BZR_HOME**
 
209
                Home directory for bzr
 
210
 
188
211
 
189
212
Files
190
213
=====
191
214
 
192
 
**On Linux**:  ``~/.bazaar/bazaar.conf/``
 
215
**On Linux**:  ``~/.bazaar/bazaar.conf``
193
216
 
194
217
**On Windows**: ``C:\\Documents and Settings\\username\\Application Data\\bazaar\\2.0\\bazaar.conf``
195
218
 
196
 
Contains the default user config. Only one section, ``[DEFAULT]`` is allowed.
197
 
A typical default config file may be similiar to::
198
 
 
199
 
    [DEFAULT]
200
 
    email=John Doe <jdoe@isp.com>
 
219
Contains the users default configuration. The section ``[DEFAULT]`` is
 
220
used to define general configuration that will be applied everywhere.
 
221
The section ``[ALIASES]`` can be used to create command aliases for
 
222
commonly used options.
 
223
 
 
224
A typical config file might look something like::
 
225
 
 
226
  [DEFAULT]
 
227
  email=John Doe <jdoe@isp.com>
 
228
 
 
229
  [ALIASES]
 
230
  commit = commit --strict
 
231
  log10 = log --short -r -10..-1
201
232
 
202
233
 
203
234
See also
207
238
--------------------
208
239
 
209
240
.. Contents::
210
 
        **Index**
 
241
    **Index**
211
242
"""