shorthands for hyphens with \penalty, \allowbreak, breaking up ligatures etc.
In LaTeX with babel option german there are several shortcuts needed for typesetting german texts with their large amount of composita. Some of them are defined in Context, too, but not all (maybe I didn't find them yet). In typesetting german there is the need of breaking up some ligatures, too. Here are some examples of what I'm talking about: composita | line break | Babel shortcut | pure TeX-Code ---------------|------------|-------------------|------------------------ (Kinder-)Armut | (Kinder-) | (Kinder"~)""Armut | (Kinder\protect10000 | Armut | | -)\allowbreak Armut | | | Bundestag und | (...) und | (...) und "~rat | (...) und \hbox{-rat} -rat | -rat | | [\protect1000 doesn't | | | seem to work here] ----------------------- breaking up ligatures --------------------------- Auffassung | Auffassung | Auf"|fassung | ??? (babel code: | (not | | \textormath{\penalty\@M | Auļ¬assung) | | \discretionary{-}{}% | | | {\kern.03em}% | | | \allowhyphens}{}%) Is there any context way to define these kind of shorthands? (Babel has the \declare@shorthand internal command.) TIA, olli -- Oliver Heins heins@sopos.org http://oliverheins.net/ http://blog.overheins.net/ F27A BA8C 1CFB B905 65A8 http://scriptorium-adp.de/ 2544 0F07 B675 9A00 D827 1024D/9A00D827 2004-09-24 -- gpg --recv-keys 0x9A00D827 Please avoid sending me Word or PowerPoint attachments: http://www.gnu.org/philosophy/no-word-attachments.html
Oliver Heins wrote:
Is there any context way to define these kind of shorthands? (Babel has the \declare@shorthand internal command.)
None are predefined, but you can install your own operations into context's || discretionary command. Try this, I think it is ok: \definetextmodediscretionary {-)} {\prewordbreak \discretionary{-)}{}{-)}\prewordbreak} \definetextmodediscretionary {!-} {\hbox{-}} \definetextmodediscretionary {ff} {f\discretionary{-}{}{}\kern.03em\prewordbreak f} \starttext (Kinder-)Armut -rat Auffassung (Kinder|-)|Armut |!-|rat Au|ff|assung \hsize 0pt (Kinder-)Armut -rat Auffassung (Kinder|-)|Armut |!-|rat Au|ff|assung \stoptext
Taco Hoekwater
Oliver Heins wrote:
Is there any context way to define these kind of shorthands? (Babel has the \declare@shorthand internal command.)
None are predefined, but you can install your own operations into context's || discretionary command.
Try this, I think it is ok:
Thank you, Taco, it works. I changed the definition of
\definetextmodediscretionary {ff} {f\discretionary{-}{}{}\kern.03em\prewordbreak f}
to \definetextmodediscretionary {!!} {\discretionary{-}{}{}\kern.03em\prewordbreak} because the other ligatures (fl, fi, ft, fj etc.) might have to be broken up, too. However, I noticed that the |-| discretionary command produces wrong results: Ein|-|Euro|-|Job Ein -Euro -Job regardless of your definitions. \starttext \hsize 1em Ein|-|Euro|-|Job \stoptext -- Oliver Heins heins@sopos.org http://oliverheins.net/ http://blog.overheins.net/ F27A BA8C 1CFB B905 65A8 http://scriptorium-adp.de/ 2544 0F07 B675 9A00 D827 1024D/9A00D827 2004-09-24 -- gpg --recv-keys 0x9A00D827 Please avoid sending me Word or PowerPoint attachments: http://www.gnu.org/philosophy/no-word-attachments.html
participants (3)
-
Oliver Heins
-
Taco Hoekwater
-
Wolfgang Schuster