Emulating Kav-Mafrid (em-dash) for the David Font

The David font that is used in Culmus-LaTeX lacks support for Kav-Mafrid, the ligature that is created by two consecutive dashes, --. Because the regular Hebrew dash, Maqaf, is positioned near the top of the line, one can’t use it instead of the Kav-Mafrid and expect a graphically pleasant result (while Kav-Mafrid can replace Maqaf and the text would still look ok). To make things even more problematic, this ligature is supported by Culmus-LaTeX’s default font, Frank Ruehl, which means one can’t easily switch fonts without hurting the layout.

At first, I’ve tried to use the English dash and en-dash, but the results weren’t satisfactory. Both of them were too light and positioned too low to be used in a Hebrew text written in the Culmus fonts (see screenshot).

So finally, I’ve decided to write a simple macro to emulate a Kav-Mafrid for the David font.

newcommand{dd}{lower0.17emhbox{-kern-0.13em-}}

The command works by kerning two Hebrew Maqafs together (with a slight overlap to adjust the width), and lowering their position to the middle of the line.

In the following screenshot, the first line features the Frank Ruehl font and its Maqaf and Kav-Mafrid. The second line features the David font with a Maqaf and the missing Kav-Mafrid ligature. The third line features the David font with an English dash and en-dash. The last line uses David with the regular Maqaf and the dd{} macro.

Different dash examples
Different dash examples

As can be seen, the dd{} macro does provide a good alternative for the Kav-Mafrid. However, this solution isn’t perfect. One can improve the macro by detecting whether the Kav-Mafrid ligature is present in the current font and, if so, using it instead of the kerned one. This would enable one to use the macro and safely switch fonts, knowing one will always get the best Kav-Mafrid possible.

One thought on “Emulating Kav-Mafrid (em-dash) for the David Font”

Leave a Reply

Your email address will not be published. Required fields are marked *