all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Pascal J. Bourguignon" <pjb@informatimago.com>
To: help-gnu-emacs@gnu.org
Subject: Re: Using proportional (variable-width) fonts in Emacs23
Date: Wed, 30 Mar 2011 15:30:38 +0200	[thread overview]
Message-ID: <87sju47n29.fsf@kuiper.lan.informatimago.com> (raw)
In-Reply-To: 4d92ead3$0$23757$14726298@news.sunsite.dk

Uday Reddy <uDOTsDOTreddy@cs.bham.ac.uk> writes:

> On 3/30/2011 3:47 AM, rusi wrote:
>
>> By reducing these questions to habits, the implication is that say for
>> younger folk who only know 'modern' technology (like Word) things like
>> emacs will be suboptimal and in fact make no sense.
>
> No, I didn't imply that.  Monospace may be better for the younger folk
> too.  Or, maybe it isn't.  They will have to try out for themselves
> and figure out which works better.  I am afraid I don't have a theory
> of monospace.  You are probably looking for one ;-)
>
> On the other hand, the notion that proportional fonts are easier to
> read will have plenty of takers.  So, everything Emacs can do to
> support proportional fonts will be very welcome.

Yes, for text.

For programming languages, even if indentation is correctly impleented,
the situation is more difficult.

Program readability is often a 2D affair, where you want things to align
in columns to stress on the homogeneity of the structures.

For example, this first declaration block is more readable (use a
non-proportional font to read my messages!):

    var
        m:              integer;
        i:              integer;
        color:          integer;
        sizeOfTheBox:   cardinal;

than this other one, where I simulate proportional font with a different
number of spaces:

    var
        m:  integer
        i: integer;
        color: integer;
        sizeOfTheBox: cardinal;


Another example:

This is less readable:

    doSomething(object1,arg1,arg2forObject,arg3);
    doSomething(o2,arg1,a2o2,arg3);

than:

    doSomething(object1,arg1,arg2forObject,arg3);
    doSomething(o2,     arg1,a2o2,         arg3);

because in the later we see immediately that only the first and third
arguments change, while in the former, you need to parse it and give it
more attention.  Unfortunately, Editors with proportional fonts don't
have indenting and formating algorithms sophisticated enough to render
code like in the later example (that would require even more than
understanding the program!).

So proportional fonts are hoplessly useless for programming.


Now of course, emacs has a sizeable user community amongst the
novelists and literature authors, not counting the technical writers
editing software documentation, for whom proportional font support is
nice.

-- 
__Pascal Bourguignon__                     http://www.informatimago.com/
A bad day in () is better than a good day in {}.


  reply	other threads:[~2011-03-30 13:30 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-28 16:22 Using proportional (variable-width) fonts in Emacs23 Erin Brinkley
2011-03-28 18:29 ` Eli Zaretskii
2011-03-28 18:30 ` Tassilo Horn
     [not found] ` <mailman.5.1301337042.1646.help-gnu-emacs@gnu.org>
2011-03-28 23:58   ` Uday Reddy
2011-03-29  2:00     ` rusi
2011-03-29 19:28       ` Uday Reddy
2011-03-30  2:47         ` rusi
2011-03-30  8:33           ` Uday Reddy
2011-03-30 13:30             ` Pascal J. Bourguignon [this message]
2011-03-30 15:20               ` rusi
2011-03-30 15:53                 ` Pascal J. Bourguignon
2011-03-30 18:14                   ` Eli Zaretskii
2011-03-30 19:49                     ` PJ Weisberg
2011-03-30 20:29                       ` Eli Zaretskii
     [not found]                   ` <mailman.8.1301508895.9824.help-gnu-emacs@gnu.org>
2011-03-31  4:58                     ` Stefan Monnier
2011-03-31 18:42                       ` Eli Zaretskii
     [not found]                       ` <mailman.13.1301596981.19576.help-gnu-emacs@gnu.org>
2011-03-31 19:38                         ` Pascal J. Bourguignon
2011-03-31 19:51                           ` Eli Zaretskii
2011-04-01 17:26                         ` Stefan Monnier
2011-03-30 16:42               ` Peter Dyballa
2011-03-30  9:00 ` Thien-Thi Nguyen
     [not found] <mailman.0.1301334352.1646.help-gnu-emacs@gnu.org>
2011-03-28 23:01 ` Xah Lee

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87sju47n29.fsf@kuiper.lan.informatimago.com \
    --to=pjb@informatimago.com \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.