tab stops and fixed width fonts

What follows is the description of a minor annoyance and possible fix.

I’m one of those MMD users (actually, I use pandoc, but that is another story) who wishes that there was a “plain text” option for Scrivener’s editor, but I understand why there won’t be. For the most part, I can just set the editor to display a fixed width font and never notice the difference.

But there is one thing keeps me from noticing nothing at all: mixing a fixed-width font and tab stops often leads to misaligned text because the tab stops aren’'t some exact multiple of the character width of the font. This can be visually jarring and distracting.

Actually, it turns out that most 12pt fixed width fonts have a pitch of 10 (i.e., 10 characters per inch), so as long as my tab stops are set to every half inch, I’m fine.

But 12pt fonts are a bit small on the screen; 14pt fonts are easier on the eyes. Unfortunately, I don’t know what the pitch is of 14pt Monaco (and some time spent googling didn’t help) so I’m not sure where to set my tabs. Even if I did have that information (anybody?), it would mean setting each tab stop by hand each time I decided to try out a larger or smaller font.

All of which brings me to my wish: some way to tell the editor to keep the tab stops and font pitch properly related. Perhaps a button in the preference pane that ties the tab stops to the default font pitch: e.g., one tab stop for every (5 * the character width (em width?) of the default font)?

Obviously, I have no sense how hard this would be to implement. And, as I said, it is a minor annoyance, not a major gripe!


Short reply to my own post:

First, the pitch for 14 pt Monaco is 9 characters per inch.

Second, I mentioned the issue to someone in conversation and they said: “why don’t you just use Monaco 12 pt and zoom”, which is a good workaround.

Third, for the one case where I really care about alignment—writing tables in the simple format implemented by pandoc—everything breaks on export anyway, so I end up just editing the table in textmate with soft tabs.