Taking Daи's pointer in the first comment, hyphenation next to a parenthesis, and going to David's Carlisle's answer, reveals that one need not use macros (Mico's suggestion) to accomplish the task. Indeed, hyphenation can even occur within the parentheses, as shown in the last example.
\documentclass{article}
\lccode`\(`\(
\lccode`\)`\)
\lccode`\[`\[
\lccode`\]`\]
\hyphenation{chro-mium-(III)}
\hyphenation{lam-bic-(Bel-gian)}
\setlength\textwidth{1mm} % just for this example
\begin{document}
. chromium(III) % start with some character b/c pdflatex doesn't hyphenate the first word of a paragraph
. lambic(Belgian)
\end{document}
At that answer, when Lover of Structure asked "Do your first four commands have side effects?", David replied
"yes they make ()[] letters for the hyphenation algorithm so (foobar)
will be looked up as the 8 letter word (foobar)
not the 6 letter word foobar
, this can affect hyphenation all over. But if you restrict it to areas just containing technical constructs it's probably ok as natural language hyphenation patterns are not always appropriate there anyway."
I should add (Steven talking again) that David's words "affect hyphenation all over" should not be taken to mean "prevent hyphenation of parenthesized words not specifically set with a hyphenation pattern." In the following MWE, we see that the \lccode
definitions do not prevent the hyphenation of words enclosed in parentheses:
\documentclass{article}
\lccode`\(`\(
\lccode`\)`\)
\lccode`\[`\[
\lccode`\]`\]
\setlength\textwidth{1in} % just for this example
\begin{document}
Testing (calisthenics)
Testing calisthenics
\end{document}
Best Answer
(CW from comments)
By setting
in the document preamble, no explicit hyphen will be used for a line break.