[Python-modules-commits] [python-docutils] 09/14: Allow all data files to be moved to /usr/share/docutils/.
Dmitry Shachnev
mitya57 at moszumanska.debian.org
Sat Dec 10 10:40:52 UTC 2016
This is an automated email from the git hooks/post-receive script.
mitya57 pushed a commit to branch master
in repository python-docutils.
commit 8f74d791e9e384cf6fb8102e3782a0fe1a564068
Author: Jakub Wilk <jwilk at debian.org>
Date: Thu Oct 8 11:57:09 2015 -0700
Allow all data files to be moved to /usr/share/docutils/.
Forwarded: not-needed
Last-Update: 2016-12-10
Patch-Name: move-data-to-usr-share.diff
---
docutils/__init__.py | 15 +++++++++++++++
docutils/parsers/rst/directives/misc.py | 3 ++-
docutils/writers/html4css1/__init__.py | 9 +++++----
docutils/writers/html5_polyglot/__init__.py | 4 ++--
docutils/writers/latex2e/__init__.py | 3 ++-
docutils/writers/odf_odt/__init__.py | 4 ++--
docutils/writers/pep_html/__init__.py | 4 ++--
docutils/writers/s5_html/__init__.py | 2 +-
.../test_parsers/test_rst/test_directives/test_include.py | 3 ++-
9 files changed, 33 insertions(+), 14 deletions(-)
diff --git a/docutils/__init__.py b/docutils/__init__.py
index 79ed8fb..883ec13 100644
--- a/docutils/__init__.py
+++ b/docutils/__init__.py
@@ -215,3 +215,18 @@ class Component(SettingsSpec, TransformSpec):
a certain input context or output format.
"""
return format in self.supported
+
+import os
+
+_debian_package = 0
+
+if _debian_package:
+ def _datadir(path):
+ dirname = os.path.dirname(path)
+ prefix = os.path.join(os.path.dirname(__file__), '') # _datadir
+ assert path.startswith(prefix), "%r doesn't start with %r" % (path, prefix)
+ suffix = dirname[len(prefix):]
+ return os.path.join('/usr/share/docutils/', suffix)
+else:
+ def _datadir(path):
+ return os.path.dirname(path)
diff --git a/docutils/parsers/rst/directives/misc.py b/docutils/parsers/rst/directives/misc.py
index f843bdc..c734ced 100644
--- a/docutils/parsers/rst/directives/misc.py
+++ b/docutils/parsers/rst/directives/misc.py
@@ -10,6 +10,7 @@ import sys
import os.path
import re
import time
+import docutils
from docutils import io, nodes, statemachine, utils
from docutils.utils.error_reporting import SafeString, ErrorString
from docutils.utils.error_reporting import locale_encoding
@@ -47,7 +48,7 @@ class Include(Directive):
'class': directives.class_option,
'name': directives.unchanged}
- standard_include_path = os.path.join(os.path.dirname(states.__file__),
+ standard_include_path = os.path.join(docutils._datadir(states.__file__),
'include')
def run(self):
diff --git a/docutils/writers/html4css1/__init__.py b/docutils/writers/html4css1/__init__.py
index 7853496..fe5b493 100644
--- a/docutils/writers/html4css1/__init__.py
+++ b/docutils/writers/html4css1/__init__.py
@@ -27,15 +27,16 @@ class Writer(writers._html_base.Writer):
default_stylesheets = ['html4css1.css']
default_stylesheet_dirs = ['.',
- os.path.abspath(os.path.dirname(__file__)),
+ docutils._datadir(os.path.abspath(__file__)),
# for math.css
- os.path.abspath(os.path.join(
- os.path.dirname(os.path.dirname(__file__)), 'html5_polyglot'))
+ os.path.join(
+ docutils._datadir(os.path.dirname(os.path.abspath(__file__))),
+ 'html5_polyglot')
]
default_template = 'template.txt'
default_template_path = os.path.join(
- os.path.dirname(os.path.abspath(__file__)), default_template)
+ docutils._datadir(os.path.abspath(__file__)), default_template)
settings_spec = (
'HTML-Specific Options',
diff --git a/docutils/writers/html5_polyglot/__init__.py b/docutils/writers/html5_polyglot/__init__.py
index c14c5ee..056705c 100644
--- a/docutils/writers/html5_polyglot/__init__.py
+++ b/docutils/writers/html5_polyglot/__init__.py
@@ -40,11 +40,11 @@ class Writer(writers._html_base.Writer):
"""Formats this writer supports."""
default_stylesheets = ['minimal.css','plain.css']
- default_stylesheet_dirs = ['.', os.path.abspath(os.path.dirname(__file__))]
+ default_stylesheet_dirs = ['.', docutils._datadir(os.path.abspath(__file__))]
default_template = 'template.txt'
default_template_path = os.path.join(
- os.path.dirname(os.path.abspath(__file__)), default_template)
+ docutils._datadir(os.path.abspath(__file__)), default_template)
settings_spec = (
'HTML-Specific Options',
diff --git a/docutils/writers/latex2e/__init__.py b/docutils/writers/latex2e/__init__.py
index 112bc76..f16d757 100644
--- a/docutils/writers/latex2e/__init__.py
+++ b/docutils/writers/latex2e/__init__.py
@@ -23,6 +23,7 @@ try:
import roman
except ImportError:
import docutils.utils.roman as roman
+import docutils
from docutils import frontend, nodes, languages, writers, utils, io
from docutils.utils.error_reporting import SafeString
from docutils.transforms import writer_aux
@@ -34,7 +35,7 @@ class Writer(writers.Writer):
"""Formats this writer supports."""
default_template = 'default.tex'
- default_template_path = os.path.dirname(os.path.abspath(__file__))
+ default_template_path = docutils._datadir(os.path.abspath(__file__))
default_preamble = '\n'.join([r'% PDF Standard Fonts',
r'\usepackage{mathptmx} % Times',
r'\usepackage[scaled=.90]{helvet}',
diff --git a/docutils/writers/odf_odt/__init__.py b/docutils/writers/odf_odt/__init__.py
index 3b29e3b..90a2f0b 100644
--- a/docutils/writers/odf_odt/__init__.py
+++ b/docutils/writers/odf_odt/__init__.py
@@ -399,13 +399,13 @@ class Writer(writers.Writer):
default_stylesheet_path = utils.relative_path(
os.path.join(os.getcwd(), 'dummy'),
- os.path.join(os.path.dirname(__file__), default_stylesheet))
+ os.path.join(docutils._datadir(__file__), default_stylesheet))
default_template = 'template.txt'
default_template_path = utils.relative_path(
os.path.join(os.getcwd(), 'dummy'),
- os.path.join(os.path.dirname(__file__), default_template))
+ os.path.join(docutils._datadir(__file__), default_template))
settings_spec = (
'ODF-Specific Options',
diff --git a/docutils/writers/pep_html/__init__.py b/docutils/writers/pep_html/__init__.py
index c7ca79d..4de1930 100644
--- a/docutils/writers/pep_html/__init__.py
+++ b/docutils/writers/pep_html/__init__.py
@@ -24,13 +24,13 @@ class Writer(html4css1.Writer):
default_stylesheet_path = utils.relative_path(
os.path.join(os.getcwd(), 'dummy'),
- os.path.join(os.path.dirname(__file__), default_stylesheet))
+ os.path.join(docutils._datadir(__file__), default_stylesheet))
default_template = 'template.txt'
default_template_path = utils.relative_path(
os.path.join(os.getcwd(), 'dummy'),
- os.path.join(os.path.dirname(__file__), default_template))
+ os.path.join(docutils._datadir(__file__), default_template))
settings_spec = html4css1.Writer.settings_spec + (
'PEP/HTML-Specific Options',
diff --git a/docutils/writers/s5_html/__init__.py b/docutils/writers/s5_html/__init__.py
index 411e562..dd19826 100644
--- a/docutils/writers/s5_html/__init__.py
+++ b/docutils/writers/s5_html/__init__.py
@@ -21,7 +21,7 @@ from docutils._compat import b
themes_dir_path = utils.relative_path(
os.path.join(os.getcwd(), 'dummy'),
- os.path.join(os.path.dirname(__file__), 'themes'))
+ os.path.join(docutils._datadir(__file__), 'themes'))
def find_theme(name):
# Where else to look for a theme?
diff --git a/test/test_parsers/test_rst/test_directives/test_include.py b/test/test_parsers/test_rst/test_directives/test_include.py
index d5706fb..eb2b55b 100755
--- a/test/test_parsers/test_rst/test_directives/test_include.py
+++ b/test/test_parsers/test_rst/test_directives/test_include.py
@@ -11,6 +11,7 @@ Tests for misc.py "include" directive.
import os.path
import sys
from __init__ import DocutilsTestSupport
+import docutils
from docutils.parsers.rst import states
from docutils._compat import b
from docutils.utils.code_analyzer import with_pygments
@@ -47,7 +48,7 @@ if sys.version_info < (3,0):
utf_16_error_str = ("UnicodeError: Unable to decode input data. "
"Tried the following encodings: 'ascii'.\n"
" (%s)" % utf_16_error_str)
-nonexistent = os.path.join(os.path.dirname(states.__file__),
+nonexistent = os.path.join(docutils._datadir(states.__file__),
'include', 'nonexistent')
nonexistent_rel = DocutilsTestSupport.utils.relative_path(
os.path.join(DocutilsTestSupport.testroot, 'dummy'), nonexistent)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-docutils.git
More information about the Python-modules-commits
mailing list