summaryrefslogtreecommitdiff
path: root/docutils
diff options
context:
space:
mode:
authormilde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>2022-01-11 17:39:49 +0000
committermilde <milde@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>2022-01-11 17:39:49 +0000
commit5f3329d0e04ad82c0770e06fb9272bc43b6a69e6 (patch)
tree6503bf0f8de5e0b10a1796495a24735cc664ad13 /docutils
parent4b1ef3c03beb614c1fcca37df3718318bfe7327c (diff)
downloaddocutils-5f3329d0e04ad82c0770e06fb9272bc43b6a69e6.tar.gz
Module "locale" is supported by Jython since version 2.7.2.
Cf. https://github.com/jython/jython/commit/c5509579 Jython does not support Python3 at the moment, so we don't need to care about earlier versions in Docutils >= 0.19. git-svn-id: https://svn.code.sf.net/p/docutils/code/trunk@8941 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
Diffstat (limited to 'docutils')
-rw-r--r--docutils/docutils/io.py13
-rw-r--r--docutils/docutils/utils/smartquotes.py2
-rw-r--r--docutils/docutils/writers/odf_odt/__init__.py8
-rw-r--r--docutils/test/test_command_line.py6
4 files changed, 11 insertions, 18 deletions
diff --git a/docutils/docutils/io.py b/docutils/docutils/io.py
index a0b75ff51..2daf8f251 100644
--- a/docutils/docutils/io.py
+++ b/docutils/docutils/io.py
@@ -10,10 +10,7 @@ exist for a variety of input/output mechanisms.
__docformat__ = 'reStructuredText'
import codecs
-try:
- import locale # module missing in Jython
-except ImportError:
- pass
+import locale
import os
import re
import sys
@@ -116,9 +113,9 @@ class Input(TransformSpec):
"""
if self.encoding and self.encoding.lower() == 'unicode':
assert isinstance(data, str), ('input encoding is "unicode" '
- 'but input is not a str object')
+ 'but input is not a `str` object')
if isinstance(data, str):
- # Accept unicode even if self.encoding != 'unicode'.
+ # Accept unicode string even if self.encoding != 'unicode'.
return data
if self.encoding:
# We believe the user/application when the encoding is
@@ -144,8 +141,8 @@ class Input(TransformSpec):
# Return decoded, removing BOMs.
return decoded.replace(u'\ufeff', u'')
except (UnicodeError, LookupError) as err:
- error = err # in Python 3, the <exception instance> is
- # local to the except clause
+ # keep exception instance for use outside of the "for" loop.
+ error = err
raise UnicodeError(
'Unable to decode input data. Tried the following encodings: '
'%s.\n(%s)' % (', '.join([repr(enc) for enc in encodings]),
diff --git a/docutils/docutils/utils/smartquotes.py b/docutils/docutils/utils/smartquotes.py
index 3245b81c4..57693d68b 100644
--- a/docutils/docutils/utils/smartquotes.py
+++ b/docutils/docutils/utils/smartquotes.py
@@ -910,8 +910,8 @@ def tokenize(text):
if __name__ == "__main__":
import itertools
+ import locale
try:
- import locale # module missing in Jython
locale.setlocale(locale.LC_ALL, '') # set to user defaults
defaultlanguage = locale.getdefaultlocale()[0]
except:
diff --git a/docutils/docutils/writers/odf_odt/__init__.py b/docutils/docutils/writers/odf_odt/__init__.py
index 013642a6d..74b35c4b2 100644
--- a/docutils/docutils/writers/odf_odt/__init__.py
+++ b/docutils/docutils/writers/odf_odt/__init__.py
@@ -16,6 +16,7 @@ from configparser import ConfigParser
import copy
from io import StringIO
import itertools
+import locale
import os
import os.path
import re
@@ -30,19 +31,12 @@ from xml.etree import ElementTree as etree
from xml.dom import minidom
import zipfile
-try:
- import locale # module missing in Jython
-except ImportError:
- pass
-
import docutils
from docutils import frontend, nodes, utils, writers, languages
from docutils.parsers.rst.directives.images import PIL # optional
from docutils.readers import standalone
from docutils.transforms import references
-
-
# Import pygments and odtwriter pygments formatters if possible.
try:
import pygments
diff --git a/docutils/test/test_command_line.py b/docutils/test/test_command_line.py
index a24605269..5f6fbd608 100644
--- a/docutils/test/test_command_line.py
+++ b/docutils/test/test_command_line.py
@@ -7,14 +7,16 @@
Test module for the command line.
"""
+import codecs
+import locale
+import sys
import unittest
-import sys, codecs
+
import DocutilsTestSupport # must be imported before docutils
import docutils.core
# determine/guess the encoding of the standard input:
try:
- import locale # module missing in Jython
locale_encoding = locale.getlocale()[1] or locale.getdefaultlocale()[1]
except ImportError:
locale_encoding = None