Encoding Meaning

I experienced a homograph attack on my productivity today, courtesy of Microsoft Word.

This character, pasted here (–), looks like a hyphen, but it’s not. That codepoint is also Unicode Latin small letter a with circumflex: â, or â. When pasted into a PuTTY terminal window, it becomes a dot (Unicode full stop: .).

The readme file in the ConfigScripts package of example wsadmin scripts from IBM is an HTML document generated by Microsoft Word.

<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 10">

I’m not sure why it did this, and frankly I don’t have the time to investigate right now, but I am puzzled as to why it is pasting visibly as a hyphen, but is not being a hyphen. I suspect this is a side-effect of a helpful Word feature which turns hyphens into en dashes (–).

Look, Computer, if you don’t know how we’re encoding meaning in the characters, don’t guess. Sometimes a hyphen is just a hyphen. The meaning is in how it is read: not in the glyph itself.