[XeTeX] preventing hyphenation
Mike Maxwell
maxwell at umiacs.umd.edu
Mon Feb 21 04:34:14 CET 2011
On 2/19/2011 12:13 AM, I wrote:
> In a grammar we're writing, the transcription of a word "xowunʣāy" gets
> hyphenated immediately after the 'x'. I thought I could prevent this by
> adding the command
> \hyphenation{xowunʣāy}
> near the beginning of the file (before the \begin{document} command).
> However, this has no effect; the word still gets hyphenated.
>
> The paragraph of text in the input is
> Applies to nouns (including verbal nouns) and
> adjectives. \pusArabicScript{ښوون(ه)} /xowun(a)/ \emph{teaching};
> \pusArabicScript{ښوونځای} /xowunʣāy/ \emph{schoolhouse}.
> where \pusArabicScript is our command to switch into Arabic script.
>
> Any idea why the \hyphenation{} command is ineffective?
After a great deal of pulling of hair, I think I've found what's
happening. I'm recording it here in case it helps anyone (and because
one aspect of it seems a bit odd, possibly buggy--although it's beyond
my competence to decide that).
The quick answer is that, given certain packages I was loading, the
slashes (used in the above as linguistic markers of the phonemic status
of the transcriptions) are treated as word-forming characters, meaning
that the \hyphenation{} command needs to include the slashes.
I'm attaching a minimal example after my signature. The word that
erroneously hyphenates in the first paragraph despite the
\hyphenate{xowun} command is "/xowun/". The second paragraph in the
minimal example is preceded by \hyphenate{/xowun/} (*with* the slashes),
and in this paragraph /xowun/ correctly does not hyphenate. (You can
ignore the rest of the text in the paragraphs, it's nonsensical and used
only to force /xowun/ into a position where LaTeX wants to hyphenate it.)
What seems odd to me about this (and possibly indicative of a bug) is
that the \hyphenate{/xowun/} command only seems to need the slashes
around "xowun" if I load the 'listings' package; indeed, without the
'listings' package the command \hyphenate{/xowun/} results in an error
msg ("Not a letter", referring to the slash). Why should the 'listings'
package affect how the "/" character is treated by the \hyphenate command?
As I say, I'm unsure whether this constitutes a bug, and if so, where it
should be reported. Furthermore, this is happening with the TexLive
2009 distro; for various reasons, I don't have the 2010 distro loaded,
and I don't know whether it would happen there. I'm open to advice.
I'm also unsure why the 'bibtopic' package needs to be loaded (without
the 'bibtopic', I get a "Missing \begin{document}" error msg). This
package was apparently auto-generated using docstrip, and at least to
this human it's not humanly readable.
--
Mike Maxwell
maxwell at umiacs.umd.edu
----------Minimal example follows-----------------
\documentclass[11pt,letterpaper]{report}
\usepackage{fontspec}
\setmainfont{Charis SIL}
%omitting the 'bibtopic' pkg results in "Missing \begin{document}" msg:
\usepackage{bibtopic}
\usepackage{listings}
\begin{document}
%------------Hyphenation:
%List of words not to hyphenate (or to allow hyphens at particular places);
% see http://en.wikibooks.org/wiki/LaTeX/Formatting#Hyphenation for
documentation.
\hyphenation{xowun}
%First para: /xowun/ is erroneously hyphenated:
A suffix: Now is time for good suffixes to come
Applies to nouns. /xowun/
\hyphenation{/xowun/}
%Second para: /xowun/ is correctly not hyphenated:
A suffix: Now is time for good suffixes to come
Applies to nouns. /xowun/
\end{document}
More information about the XeTeX
mailing list