GenericMappingTools/pygmt

Typesetting backticks ` and straight single quote '

Opened this issue · 0 comments

Backtick (or grave accent) ` and straight single quote ' are ASCII characters and can be typed using a normal keyboard.

If you compare the Adobe ISOLatin1+ encoding, and the ISO 8859-1 encoding, you will see that,

  • code 027 is ' in ISO 8859-1, and is in Adobe ISOLatin1+
  • code 060 is ` in ISO 8859-1, and is in Adobe ISOLatin1+

There must be some historical or typographic reasons behind the differences. Due to the above differences, typesetting `' in PostScript results in ‘’, which means users have to use octal codes if they need the `' characters.

Here is a minimal example to reproduce the issue:

import pygmt

label = "A ` ' \" “ ” ‘ ’ B"
fig = pygmt.Figure()
fig.basemap(region=[0, 10, 0, 5], frame=True, projection="x1c")
fig.text(x=5, y=2, text=label, font="50p")
fig.show()

The script produces the following image:

quotes

It's possible to patch the ISOLatin1+ encoding mapping table so that `' are displayed like `', rather than ‘’. But it's a breaking change. So, do we want to break it or not?