2009/8/13 Aaron W. Hsu <arcf...@sacrideo.us>:
> Firstly, how many of you using Acme for programming on a daily basis remap
> your fonts so that the fixed width font is the main one that you use?

i use proportional fonts in acme for programming.

> Secondly, if you do use proportional width fonts, why, and what troubles did
> you encounter; what benefits did you encounter?

i use them because they're more readable, and i get more
characters per line than in a similarly sized fixed-width font.

in C-like syntax, everything works just fine; a single
tab character is ideal for indentation.
use of tabs other than at the start of a line won't
guarantee alignment with other fonts, but this rarely matters
too much.

in LISP, i sometimes ended  up using a fixed-width font,
due to the convention of aligning a subform with part
of its parent, as you point out. variable-width fonts can
work ok in lisp, although the indentation tends to
end up slightly non-standard (although still passable).

in haskell, i used proportional spacing with single-tab
indentation, and it worked just fine apart from, AFAIR,
multiple assignments for a single let - i just always
used let...in.

> Thirdly, would you continue using proportional width fonts in cases like
> Lisp code, where you very often see something like the following indentation
> scheme, and how would you resolve these indentation problems with
> proportional width fonts if you did continue to use them?
>
>        (let ([foo bar]
>              [something else])
>          (some-func (called again)
>                     (with fun indentation)
>            (and yet)
>            (another)))

i presume you meant this:

        (let ([foo bar]
              [something else])
          (some-func (called again)
                     (with fun indentation)
                     (and yet)
                     (another)))

using a varwidth font, i'd format this as:

(let ([foo bar]
        [something else])
  (some-func
      (called again)
      (with fun indentation)
      (and yet)
      (another)))

(note 4-space indent, not 2-space indent
for the some-func arguments. not perfect, but ok, i reckon)

i found unlike macros, functions rarely need multiline continuation,
but i think the case is arguable. as i said, i've done it both ways.

PS. i'd really like to see an acme-integrated lisp environment. one of
these years
i'll get around to it...

Reply via email to