I have files containing fragments of Old English texts. These files use the letter wynn (ƿ (U+01BF) and Ƿ (U+01F7)) which I want to print as modern w (U+0077) and W (U+0057). This I have no problem doing using the a mapping file, which I’ve compiled using teckit_compile into .tec file (teckit_compile oldenglish.map -o oldenglish.tec). I also want the sequence ‘ ·’ (space (U+0020) followed by an interpunct) to be mapped into ‘ ·’ (non-breaking space (U+00A0) followed by an interpunct), but this for some reason do not work.
This is my .map file (oldenglish.map):
LHSName "old"
RHSName "new"
pass(Unicode)
U+01BF <> U+0077 ; ‘ƿ’→‘w’
U+01F7 <> U+0057 ; ‘Ƿ’→‘W’
U+0020 U+00B7 <> U+00A0 U+00B7 ; ‘ ·’→‘ ·’
And this is an example LaTeX file and it’s output:
\documentclass{article}
\usepackage{fontspec}
\setmainfont[Mapping=oldenglish]{Junicode}
\begin{document}
abcwxyz · ABCWXYZ
abcƿxyz · ABCǷXYZ
\end{document}

I know U+0020 U+00B7 isn’t being replaced by U+00A0 U+00B7 because when I test it with U+0020 U+00B7 <> U+00A0 U+0078 in the last line I don’t get ‘abcwxyz x ABCWXYZ’ but ‘abcwxyz · ABCWXYZ’.
I guess it’s the space (U+0020) that causes this problem. Am I doing something wrong?
Thank you very much! ☺

U+0020) with ‘ ·’ (U+00A0) or ‘~·’ using my text editor or a program likesed? – Júda Ronén Dec 14 '14 at 16:23