How do I get LaTeX to hyphenate a word that contains a dash?
The problem (as KennyTM noted) is that LaTeX won't hyphenate words with dashes in them. Luckily, there's a standard package (part of ncctools) that addresses that very problem, called extdash
. This defines new hyphen and dash commands that do not disrupt hyphenation, and which can allow or prevent line breaks at the hyphen/dash. I prefer to use it with the shortcuts
option, so I can use, e.g., \-/
rather than \Hyphdash
. Here's what you want:
\usepackage[shortcuts]{extdash}
...
multi\-/disciplinary
To prevent breaking at that hyphen, use multi\=/disciplinary
(Aside: The Chicago Manual of Style advises dropping the hyphens attaching affixes like 'multi', unless the word is ambiguous or unintelligible without it.)
I use package hyphenat
and then write compound words like Finnish word Internet-yhteys (Eng. Internet connection) as Internet\hyp yhteys
. Looks goofy but seems to be the most elegant way I've found.
From https://texfaq.org/FAQ-nohyph:
TeX won’t hyphenate a word that’s already been hyphenated. For example, the (caricature) English surname Smyth-Postlethwaite wouldn’t hyphenate, which could be troublesome. This is correct English typesetting style (it may not be correct for other languages), but if needs must, you can replace the hyphen in the name with a
\hyph
command, defined\def\hyph{-\penalty0\hskip0pt\relax}
This is not the sort of thing this FAQ would ordinarily recommend… The
hyphenat
package defines a bundle of such commands (for introducing hyphenation points at various punctuation characters).
Or you could \newcommand
a command that expands to multi-discipli\-nary
(use Search + Replace All to replace existing words).