9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Paul Donnelly <paul-donnelly@sbcglobal.net>
To: 9fans@9fans.net
Subject: Re: [9fans] Using proportional fonts in Acme for Programming
Date: Thu, 13 Aug 2009 10:18:40 +0000	[thread overview]
Message-ID: <87y6porpv2.fsf@plap.localdomain> (raw)
In-Reply-To: <op.uyka0s1y0p3ku8@localhost>

"Aaron W. Hsu" <arcfide@sacrideo.us> writes:

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

You can't very well engage in weird formatting tricks, but I'm not much
a fan of those anyway. IMO, the more attractive letters and generally
lesser character width more than make up for the inability to precisely
align columns that don't contain whitespace. I just use tabs to give
myself a semantic clue.

> Thirdly, would you continue using proportional width fonts in cases
> like Lisp code, where you very often see something like the following
> indentation scheme,

No. Lisp indentation is hairy enough that I'd rather have the editor do
it anyway (I'll take a structure editor too, if you please), so Acme is
right out. Lisp code is so structurally complex that the indentation
scheme I use in C doesn't work so well. I really want arguments to a
function to begin at the same column, and for macro bodies to be
indented by two characters precisely, so I don't get hopelessly lost. I
just go on back to Emacs for Lisp coding.

> and how would you resolve these indentation problems with proportional
> width fonts if you did continue to use them?

I'd make leading spaces inherit their width from the characters above.

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

So in this example, the first space on line two would have the width of
"(", the second the width of an "l", and so on. But the space in
"something else" uses whatever width is defined in the font, since
spacing would get weird otherwise.

You couldn't do

(let ((foo       bar)
      (something else))
  ...)

and expect proper alignment, but like I said, I don't like that trick
anyway.



  parent reply	other threads:[~2009-08-13 10:18 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-13  9:14 Aaron W. Hsu
2009-08-13 10:09 ` matt
2009-08-13 10:18 ` Paul Donnelly [this message]
2009-08-13 10:22 ` roger peppe
2009-08-13 10:27 ` Robert Raschke
2009-08-13 11:12 ` Ethan Grammatikidis
2009-08-13 17:55 ` Daniel Lyons
2009-08-13 22:27   ` David Leimbach
2009-08-13 22:35     ` ron minnich
2009-08-13 22:40       ` erik quanstrom
2009-08-14  2:58   ` Roman V. Shaposhnik
2009-08-14  8:27     ` Robert Raschke
2009-08-14 18:27       ` [9fans] Lua on Plan9 Roman V. Shaposhnik
2009-08-14 21:47         ` John Floren
2009-08-14 21:52           ` Josh Wood
2009-08-14 21:54             ` John Floren
2009-08-17 10:34         ` Robert Raschke
2009-08-14 21:32     ` [9fans] Using proportional fonts in Acme for Programming Skip Tavakkolian
2009-08-14  9:16   ` Pavel Klinkovsky
2009-08-14 18:25     ` [9fans] Lua on Plan9 Roman V. Shaposhnik
2009-08-14 21:48       ` Skip Tavakkolian
2009-08-14 23:26   ` [9fans] Using proportional fonts in Acme for Programming Noah Evans
2009-08-15  2:28     ` Akshat Kumar
2009-08-15 10:29       ` Akshat Kumar
2009-08-17  9:09       ` Aaron W. Hsu
2009-08-17  9:09   ` Aaron W. Hsu
2009-08-14  9:15 ` Aaron W. Hsu
2009-08-14 16:49   ` Daniel Lyons
2009-08-14 18:28     ` Roman V. Shaposhnik
2009-08-16  7:30       ` Daniel Lyons
2009-08-17  9:09   ` Aaron W. Hsu

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=87y6porpv2.fsf@plap.localdomain \
    --to=paul-donnelly@sbcglobal.net \
    --cc=9fans@9fans.net \
    /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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).