summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgrubert <grubert@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>2007-02-27 10:56:07 +0000
committergrubert <grubert@929543f6-e4f2-0310-98a6-ba3bd3dd1d04>2007-02-27 10:56:07 +0000
commita8edf353974ecde6c0f70d2c19fa0c5303fef935 (patch)
tree6115bf914bb25493b06e78d271dc432b8a9c67d9
parent308e60646d63b9c56d68acd8f340c883181c86ea (diff)
downloaddocutils-a8edf353974ecde6c0f70d2c19fa0c5303fef935.tar.gz
Set ``usepackage[utf8x]{inputenc}`` for utf-8.
git-svn-id: http://svn.code.sf.net/p/docutils/code/trunk/docutils@4950 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
-rw-r--r--HISTORY.txt1
-rw-r--r--docs/user/latex.txt13
-rw-r--r--docutils/writers/latex2e/__init__.py10
3 files changed, 14 insertions, 10 deletions
diff --git a/HISTORY.txt b/HISTORY.txt
index 3e2b2aa3a..c1c0178d6 100644
--- a/HISTORY.txt
+++ b/HISTORY.txt
@@ -109,6 +109,7 @@ Changes Since 0.4
* docutils/writers/latex2e/__init__.py:
+ - Set ``usepackage[utf8x]{inputenc}`` for utf-8.
- New option ``--use-bibtex=style,db1,db2``.
- New option ``--reference-label`` to allow usage of LaTeX ref for
labels in section references.
diff --git a/docs/user/latex.txt b/docs/user/latex.txt
index 160ac17ed..0d49913be 100644
--- a/docs/user/latex.txt
+++ b/docs/user/latex.txt
@@ -190,15 +190,14 @@ E.g. try ::
Unicode
-------
-The generated LaTeX documents are in latin1 encoding per default, if unicode
-characters are required one must set ``--output-encoding=utf-8`` install
-`LaTeX unicode`_ support and add::
+The generated LaTeX documents are in the input encoding per default.
- \usepackage{ucs}
- \usepackage[utf8]{inputenc}
+If the source document is in utf-8 encoding (or
+``--output-encoding=utf-8`` is set), LaTeX needs unicode support
+(the ``ucs`` package). If this is not available, specify
+a different output-encoding, e.g. ``latin1``.
-to the stylesheet. If LaTeX issues a Warning about unloaded/known characters
-adding ::
+If LaTeX issues a Warning about unloaded/known characters adding ::
\PreloadUnicodePage{n}
diff --git a/docutils/writers/latex2e/__init__.py b/docutils/writers/latex2e/__init__.py
index d646d7776..e643d77c6 100644
--- a/docutils/writers/latex2e/__init__.py
+++ b/docutils/writers/latex2e/__init__.py
@@ -19,7 +19,7 @@ import re
import string
from types import ListType
from docutils import frontend, nodes, languages, writers, utils
-
+from docutils.writers.newlatex2e import unicode_map
class Writer(writers.Writer):
@@ -543,7 +543,6 @@ class LaTeXTranslator(nodes.NodeVisitor):
# Dummy settings might be taken from document settings
latex_head = '\\documentclass[%s]{%s}\n'
- encoding = '\\usepackage[%s]{inputenc}\n'
linking = '\\usepackage[colorlinks=%s,linkcolor=%s,urlcolor=%s]{hyperref}\n'
stylesheet = '\\input{%s}\n'
# add a generated on day , machine by user using docutils version.
@@ -624,7 +623,10 @@ class LaTeXTranslator(nodes.NodeVisitor):
fontenc_header = '\\usepackage{ae}\n\\usepackage{aeguill}\n'
else:
fontenc_header = '\\usepackage[%s]{fontenc}\n' % (self.font_encoding,)
- input_encoding = self.encoding % self.latex_encoding
+ if self.latex_encoding.startswith('utf8'):
+ input_encoding = '\\usepackage{ucs}\n\\usepackage[utf8x]{inputenc}\n'
+ else:
+ input_encoding = '\\usepackage[%s]{inputenc}\n' % self.latex_encoding
if self.settings.graphicx_option == '':
self.graphicx_package = '\\usepackage{graphicx}\n'
elif self.settings.graphicx_option.lower() == 'auto':
@@ -788,6 +790,7 @@ class LaTeXTranslator(nodes.NodeVisitor):
}
if tr.has_key(docutils_encoding.lower()):
return tr[docutils_encoding.lower()]
+ # convert: latin-1 and utf-8 and similar things
return docutils_encoding.replace("_", "").replace("-", "").lower()
def language_label(self, docutil_label):
@@ -808,6 +811,7 @@ class LaTeXTranslator(nodes.NodeVisitor):
u'\u2026' : '{\\dots}',
u'\u2122' : '{\\texttrademark}',
u'\u21d4' : '{$\\Leftrightarrow$}',
+ # greek alphabet ?
}
def unicode_to_latex(self,text):