1
<?xml version="1.0" encoding="ascii"?>
2
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3
"DTD/xhtml1-transitional.dtd">
4
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6
<title>babel.messages.mofile</title>
7
<link rel="stylesheet" href="epydoc.css" type="text/css" />
8
<script type="text/javascript" src="epydoc.js"></script>
11
<body bgcolor="white" text="black" link="blue" vlink="#204080"
13
<!-- ==================== NAVIGATION BAR ==================== -->
14
<table class="navbar" border="0" width="100%" cellpadding="0"
15
bgcolor="#a0c0ff" cellspacing="0">
18
<th> <a
19
href="babel-module.html">Home</a> </th>
22
<th> <a
23
href="module-tree.html">Trees</a> </th>
26
<th> <a
27
href="identifier-index.html">Indices</a> </th>
30
<th> <a
31
href="help.html">Help</a> </th>
33
<!-- Project homepage -->
34
<th class="navbar" align="right" width="100%">
35
<table border="0" cellpadding="0" cellspacing="0">
36
<tr><th class="navbar" align="center"
37
><a class="navbar" target="_top" href="../index.html">Documentation Index</a></th>
41
<table width="100%" cellpadding="0" cellspacing="0">
44
<span class="breadcrumbs">
45
<a href="babel-module.html">Package babel</a> ::
46
<a href="babel.messages-module.html">Package messages</a> ::
51
<table cellpadding="0" cellspacing="0">
52
<!-- hide/show private -->
57
<!-- ==================== MODULE DESCRIPTION ==================== -->
58
<h1 class="epydoc">Module mofile</h1><p class="nomargin-top"></p>
59
Writing of files in the <tt class="rst-rst-rst-rst-docutils literal rst-rst-rst-docutils literal rst-rst-docutils literal rst-docutils literal">gettext</tt> MO (machine object) format.
62
<div class="fields"> <p><strong>Since:</strong>
65
<p><strong>See Also:</strong>
66
<a class="rst-reference external" href="http://www.gnu.org/software/gettext/manual/gettext.html#MO-Files" target="_top">The Format of MO Files</a>
68
</div><!-- ==================== FUNCTIONS ==================== -->
69
<a name="section-Functions"></a>
70
<table class="summary" border="1" cellpadding="3"
71
cellspacing="0" width="100%" bgcolor="white">
72
<tr bgcolor="#70b0f0" class="table-header">
73
<td align="left" colspan="2" class="table-header">
74
<span class="table-header">Functions</span></td>
77
<td width="15%" align="right" valign="top" class="summary">
78
<span class="summary-type"> </span>
79
</td><td class="summary">
80
<table width="100%" cellpadding="0" cellspacing="0" border="0">
82
<td><span class="summary-sig"><a href="babel.messages.mofile-module.html#write_mo" class="summary-sig-name">write_mo</a>(<span class="summary-sig-arg">fileobj</span>,
83
<span class="summary-sig-arg">catalog</span>,
84
<span class="summary-sig-arg">use_fuzzy</span>=<span class="summary-sig-default">False</span>)</span><br />
85
Write a catalog to the specified file-like object using the GNU MO file
87
<td align="right" valign="top">
97
<!-- ==================== FUNCTION DETAILS ==================== -->
98
<a name="section-FunctionDetails"></a>
99
<table class="details" border="1" cellpadding="3"
100
cellspacing="0" width="100%" bgcolor="white">
101
<tr bgcolor="#70b0f0" class="table-header">
102
<td align="left" colspan="2" class="table-header">
103
<span class="table-header">Function Details</span></td>
106
<a name="write_mo"></a>
108
<table class="details" border="1" cellpadding="3"
109
cellspacing="0" width="100%" bgcolor="white">
111
<table width="100%" cellpadding="0" cellspacing="0" border="0">
112
<tr valign="top"><td>
113
<h3 class="epydoc"><span class="sig"><span class="sig-name">write_mo</span>(<span class="sig-arg">fileobj</span>,
114
<span class="sig-arg">catalog</span>,
115
<span class="sig-arg">use_fuzzy</span>=<span class="sig-default">False</span>)</span>
117
</td><td align="right" valign="top"
122
<p>Write a catalog to the specified file-like object using the GNU MO file
124
<pre class="py-doctest">
125
<span class="py-prompt">>>> </span><span class="py-keyword">from</span> babel.messages <span class="py-keyword">import</span> Catalog
126
<span class="py-prompt">>>> </span><span class="py-keyword">from</span> gettext <span class="py-keyword">import</span> GNUTranslations
127
<span class="py-prompt">>>> </span><span class="py-keyword">from</span> StringIO <span class="py-keyword">import</span> StringIO</pre>
128
<pre class="py-doctest">
129
<span class="py-prompt">>>> </span>catalog = Catalog(locale=<span class="py-string">'en_US'</span>)
130
<span class="py-prompt">>>> </span>catalog.add(<span class="py-string">'foo'</span>, <span class="py-string">'Voh'</span>)
131
<span class="py-prompt">>>> </span>catalog.add((u<span class="py-string">'bar'</span>, u<span class="py-string">'baz'</span>), (u<span class="py-string">'Bahr'</span>, u<span class="py-string">'Batz'</span>))
132
<span class="py-prompt">>>> </span>catalog.add(<span class="py-string">'fuz'</span>, <span class="py-string">'Futz'</span>, flags=[<span class="py-string">'fuzzy'</span>])
133
<span class="py-prompt">>>> </span>catalog.add(<span class="py-string">'Fizz'</span>, <span class="py-string">''</span>)
134
<span class="py-prompt">>>> </span>catalog.add((<span class="py-string">'Fuzz'</span>, <span class="py-string">'Fuzzes'</span>), (<span class="py-string">''</span>, <span class="py-string">''</span>))
135
<span class="py-prompt">>>> </span>buf = StringIO()</pre>
136
<pre class="py-doctest">
137
<span class="py-prompt">>>> </span>write_mo(buf, catalog)
138
<span class="py-prompt">>>> </span>buf.seek(0)
139
<span class="py-prompt">>>> </span>translations = GNUTranslations(fp=buf)
140
<span class="py-prompt">>>> </span>translations.ugettext(<span class="py-string">'foo'</span>)
141
<span class="py-output">u'Voh'</span>
142
<span class="py-output"></span><span class="py-prompt">>>> </span>translations.ungettext(<span class="py-string">'bar'</span>, <span class="py-string">'baz'</span>, 1)
143
<span class="py-output">u'Bahr'</span>
144
<span class="py-output"></span><span class="py-prompt">>>> </span>translations.ungettext(<span class="py-string">'bar'</span>, <span class="py-string">'baz'</span>, 2)
145
<span class="py-output">u'Batz'</span>
146
<span class="py-output"></span><span class="py-prompt">>>> </span>translations.ugettext(<span class="py-string">'fuz'</span>)
147
<span class="py-output">u'fuz'</span>
148
<span class="py-output"></span><span class="py-prompt">>>> </span>translations.ugettext(<span class="py-string">'Fizz'</span>)
149
<span class="py-output">u'Fizz'</span>
150
<span class="py-output"></span><span class="py-prompt">>>> </span>translations.ugettext(<span class="py-string">'Fuzz'</span>)
151
<span class="py-output">u'Fuzz'</span>
152
<span class="py-output"></span><span class="py-prompt">>>> </span>translations.ugettext(<span class="py-string">'Fuzzes'</span>)
153
<span class="py-output">u'Fuzzes'</span></pre>
156
<dd><ul class="nomargin-top">
157
<li><strong class="pname"><code>fileobj</code></strong> - the file-like object to write to</li>
158
<li><strong class="pname"><code>catalog</code></strong> - the <a href="babel.messages.catalog.Catalog-class.html" class="link">Catalog</a> instance</li>
159
<li><strong class="pname"><code>use_fuzzy</code></strong> - whether translations marked as "fuzzy" should be included
166
<!-- ==================== NAVIGATION BAR ==================== -->
167
<table class="navbar" border="0" width="100%" cellpadding="0"
168
bgcolor="#a0c0ff" cellspacing="0">
171
<th> <a
172
href="babel-module.html">Home</a> </th>
175
<th> <a
176
href="module-tree.html">Trees</a> </th>
179
<th> <a
180
href="identifier-index.html">Indices</a> </th>
183
<th> <a
184
href="help.html">Help</a> </th>
186
<!-- Project homepage -->
187
<th class="navbar" align="right" width="100%">
188
<table border="0" cellpadding="0" cellspacing="0">
189
<tr><th class="navbar" align="center"
190
><a class="navbar" target="_top" href="../index.html">Documentation Index</a></th>
194
<table border="0" cellpadding="0" cellspacing="0" width="100%%">
196
<td align="left" class="footer">
197
Generated by Epydoc 3.0.1 on Thu Mar 17 15:12:44 2011
199
<td align="right" class="footer">
200
<a target="mainFrame" href="http://epydoc.sourceforge.net"
201
>http://epydoc.sourceforge.net</a>
206
<script type="text/javascript">
208
// Private objects are initially displayed (because if
209
// javascript is turned off then we want them to be
210
// visible); but by default, we want to hide them. So hide
211
// them unless we have a cookie that says to show them.