On Fri, Nov 23, 2012 at 07:22:13PM -0600, Jim Graham wrote: > On Sat, Nov 24, 2012 at 01:45:42AM +0100, Andre Kl?rner wrote: > > On Fri, Nov 23, 2012 at 05:04:38PM -0600, Jim Graham wrote: > > > Two questions about variable width fonts, then.... > > > > > > First, how does Mutt do with variable width fonts? I gather that it does > > > handle them, but how? My version (1.5.21, according to "mutt -v") > > > > Well, as mutt is a CLI application it doesn't care about what font is in > > use anyway as this is the task of the tool that displays the output. > > > > So in most cases I have seen the terminal that renders the fonts is putting > > each character in a cell, so you get no benefit from using a variable width > > font, despite that it looks ugly in most cases. So I have come to the > > conclusion that a perfect monospaced font like Terminus provides the best > > UI that one can achieve. > > Ok, but if variable width is such a good thing, using the twisted logic > that's been posted in this thread, every possible environment either > supports it or it's crap...right?
Yeah, I guess that's the way it is. > But you still haven't answered the other part: how does the MUA or > terminal keep plain test that is meant by the sender to be aligned > as he/she typed it? That was a part of the question that needs an > answer, as it MUST be handled properly or it's broken. So how IS > that done? Well, a terminal could be imagined as a table of cells. So you got e.g. a 80 by 25 grid of cells, and in each of them is one character rendered. So if anyone wants to properly align text under another text he should check for which location the above text has (e.g. col 3, row 5) and put it to x2 = x1 and y2 = y1 + 1 (so than col 3 and row 6). So if anyone sends a mail with e.g. an indent of 3 characters they transfer a line that looks like this: " foo bar" so mutt starts printing this line in column 1 and prints these ^^^ three spaces and continues with the rest. so actually every whitespace at the start of the line gets printed and is rendered by the terminal as "a character where no pixel is on" and this bitmap gets put out to the screen. I hope my answer is now much more clear. If you want to make this concept clear type a sample text into a spread sheet app and put one letter into each cell. Now go and change the font to another one. Maybe try out a monospaced font and reduce the cell sizes to the minimum. Than change the font to a variable width font. You will find out the effective width of the letters change, but not the cell size. regards, Andre -- Andre Klärner
smime.p7s
Description: S/MIME cryptographic signature