[ovs-dev] [PATCH 21/55] xml2nroff: Make compatible with Python 3.
Russell Bryant
russell at ovn.org
Mon Dec 21 20:47:21 UTC 2015
Update xml2nroff to work with either Python 2 or Python 3. The changes
are minor and can be managed without the use of the six library.
For iterating a dict, we now use:
for k, v in subst.items():
This is the same as .iteritems() in Python 2. It's technically a little
less efficient for Python 2, as items() returns a list instead of an
iterator in Python 2. We're dealing with a very small set of items here
so it really doesn't matter.
Signed-off-by: Russell Bryant <russell at ovn.org>
---
build-aux/xml2nroff | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/build-aux/xml2nroff b/build-aux/xml2nroff
index 00ef649..a4f8fbc 100755
--- a/build-aux/xml2nroff
+++ b/build-aux/xml2nroff
@@ -14,6 +14,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+from __future__ import print_function
+
import getopt
import sys
import xml.dom.minidom
@@ -24,7 +26,7 @@ argv0 = sys.argv[0]
def usage():
- print """\
+ print("""\
%(argv0)s: XML to nroff converter
Converts the XML format supplied as input into an nroff-formatted manpage.
usage: %(argv0)s [OPTIONS] INPUT.XML [VAR=VALUE]...
@@ -36,14 +38,14 @@ corresponding VALUE, with characters &<>"' in VALUE escaped.
The following options are also available:
--version=VERSION use VERSION to display on document footer
-h, --help display this help message\
-""" % {'argv0': argv0}
+""" % {'argv0': argv0})
sys.exit(0)
def manpage_to_nroff(xml_file, subst, version=None):
with open(xml_file) as f:
content = f.read()
- for k, v in subst.iteritems():
+ for k, v in subst.items():
content = content.replace(k, v)
doc = xml.dom.minidom.parseString(content).documentElement
@@ -82,7 +84,7 @@ if __name__ == "__main__":
try:
options, args = getopt.gnu_getopt(sys.argv[1:], 'hV',
['version=', 'help'])
- except getopt.GetoptError, geo:
+ except getopt.GetoptError as geo:
sys.stderr.write("%s: %s\n" % (argv0, geo.msg))
sys.exit(1)
@@ -114,13 +116,13 @@ if __name__ == "__main__":
try:
s = manpage_to_nroff(args[0], subst, version)
- except build.nroff.error.Error, e:
+ except build.nroff.error.Error as e:
sys.stderr.write("%s: %s\n" % (argv0, e.msg))
sys.exit(1)
for line in s.splitlines():
line = line.strip()
if line:
- print line
+ print(line)
# Local variables:
--
2.5.0
More information about the dev
mailing list