summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/lib/liblocale.tex21
-rw-r--r--Doc/liblocale.tex21
2 files changed, 22 insertions, 20 deletions
diff --git a/Doc/lib/liblocale.tex b/Doc/lib/liblocale.tex
index 8ea18bd..44059d1 100644
--- a/Doc/lib/liblocale.tex
+++ b/Doc/lib/liblocale.tex
@@ -203,7 +203,7 @@ implementation are broken in such a way that frequent locale changes
may cause core dumps. This makes the locale somewhat painful to use
correctly.
-Initially, when a program is started, the locale is the "C" locale, no
+Initially, when a program is started, the locale is the \samp{C} locale, no
matter what the user's preferred locale is. The program must
explicitly say that it wants the user's preferred locale settings by
calling \code{setlocale(LC_ALL, "")}.
@@ -219,8 +219,8 @@ independent version of an operation that is affected by the locale
\function{time.strftime()})), you will have to find a way to do it
without using the standard library routine. Even better is convincing
yourself that using locale settings is okay. Only as a last resort
-should you document that your module is not compatible with non-C
-locale settings.
+should you document that your module is not compatible with
+non-\samp{C} locale settings.
The case conversion functions in the
\module{string}\refstmodindex{string} and
@@ -240,30 +240,31 @@ is to use the special functions defined by this module:
\function{str()}.
\subsection{For extension writers and programs that embed Python}
+\label{embedding-locale}
Extension modules should never call \function{setlocale()}, except to
find out what the current locale is. But since the return value can
only be used portably to restore it, that is not very useful (except
-perhaps to find out whether or not the locale is ``C'').
+perhaps to find out whether or not the locale is \samp{C}).
When Python is embedded in an application, if the application sets the
locale to something specific before initializing Python, that is
generally okay, and Python will use whatever locale is set,
-\strong{except} that the \constant{LC_NUMERIC} locale should always be
-``C''.
+\emph{except} that the \constant{LC_NUMERIC} locale should always be
+\samp{C}.
The \function{setlocale()} function in the \module{locale} module contains
gives the Python progammer the impression that you can manipulate the
-\constant{LC_NUMERIC} locale setting, but this not the case at the C
-level: C code will always find that the \constant{LC_NUMERIC} locale
-setting is ``C''. This is because too much would break when the
+\constant{LC_NUMERIC} locale setting, but this not the case at the \C{}
+level: \C{} code will always find that the \constant{LC_NUMERIC} locale
+setting is \samp{C}. This is because too much would break when the
decimal point character is set to something else than a period
(e.g. the Python parser would break). Caveat: threads that run
without holding Python's global interpreter lock may occasionally find
that the numeric locale setting differs; this is because the only
portable way to implement this feature is to set the numeric locale
settings to what the user requests, extract the relevant
-characteristics, and then restore the ``C'' numeric locale.
+characteristics, and then restore the \samp{C} numeric locale.
When Python code uses the \module{locale} module to change the locale,
this also affect the embedding application. If the embedding
diff --git a/Doc/liblocale.tex b/Doc/liblocale.tex
index 8ea18bd..44059d1 100644
--- a/Doc/liblocale.tex
+++ b/Doc/liblocale.tex
@@ -203,7 +203,7 @@ implementation are broken in such a way that frequent locale changes
may cause core dumps. This makes the locale somewhat painful to use
correctly.
-Initially, when a program is started, the locale is the "C" locale, no
+Initially, when a program is started, the locale is the \samp{C} locale, no
matter what the user's preferred locale is. The program must
explicitly say that it wants the user's preferred locale settings by
calling \code{setlocale(LC_ALL, "")}.
@@ -219,8 +219,8 @@ independent version of an operation that is affected by the locale
\function{time.strftime()})), you will have to find a way to do it
without using the standard library routine. Even better is convincing
yourself that using locale settings is okay. Only as a last resort
-should you document that your module is not compatible with non-C
-locale settings.
+should you document that your module is not compatible with
+non-\samp{C} locale settings.
The case conversion functions in the
\module{string}\refstmodindex{string} and
@@ -240,30 +240,31 @@ is to use the special functions defined by this module:
\function{str()}.
\subsection{For extension writers and programs that embed Python}
+\label{embedding-locale}
Extension modules should never call \function{setlocale()}, except to
find out what the current locale is. But since the return value can
only be used portably to restore it, that is not very useful (except
-perhaps to find out whether or not the locale is ``C'').
+perhaps to find out whether or not the locale is \samp{C}).
When Python is embedded in an application, if the application sets the
locale to something specific before initializing Python, that is
generally okay, and Python will use whatever locale is set,
-\strong{except} that the \constant{LC_NUMERIC} locale should always be
-``C''.
+\emph{except} that the \constant{LC_NUMERIC} locale should always be
+\samp{C}.
The \function{setlocale()} function in the \module{locale} module contains
gives the Python progammer the impression that you can manipulate the
-\constant{LC_NUMERIC} locale setting, but this not the case at the C
-level: C code will always find that the \constant{LC_NUMERIC} locale
-setting is ``C''. This is because too much would break when the
+\constant{LC_NUMERIC} locale setting, but this not the case at the \C{}
+level: \C{} code will always find that the \constant{LC_NUMERIC} locale
+setting is \samp{C}. This is because too much would break when the
decimal point character is set to something else than a period
(e.g. the Python parser would break). Caveat: threads that run
without holding Python's global interpreter lock may occasionally find
that the numeric locale setting differs; this is because the only
portable way to implement this feature is to set the numeric locale
settings to what the user requests, extract the relevant
-characteristics, and then restore the ``C'' numeric locale.
+characteristics, and then restore the \samp{C} numeric locale.
When Python code uses the \module{locale} module to change the locale,
this also affect the embedding application. If the embedding