On Monday, 12 March 2012 at 02:52:15 UTC, Andrei Alexandrescu
wrote:
On 3/11/12 9:16 PM, Chad J wrote:
I remember doing colored terminal output in Python. It was
pretty nifty,
and allows for some slick CLI design. I think D can do better
by putting
it in the standard library.
I was thinking something along the lines of this:
http://www.chadjoan.com/d/dmd.2.058/html/d/phobos/std_format.html
I figure it would probably be easy to get some of the basics
down. More
advanced stuff would probably involve messing with terminfo or
<term.h>.
Windows' (terribly bad) command prompt can have some of these
capabilities implemented too, but in a roundabout way because
Windows
defines API functions that need to be called to affect
terminal graphics
and coloring. I figure that would require the help of the I/O
routines
if I were to work on that.
If there's interest, I might take a stab at it.
So, would this sort of thing make it in?
I don't know, seems interesting but I wonder how portable that
could be. Probably I'd define a more general means a la %q to
mean "send a control sequence" and then would define control
sequences as functions or constants.
Oh, on an unrelated note, Phobos' documentation make target is
quite
broken:
blahblah/dmd.git/src/phobos $ make -fposix.mak html
make: *** No rule to make target
`../web/phobos-prerelease/index.html',
needed by `html'. Stop.
I examined the makefile and concocted this line of bash that
constructs
my desired html file:
dmd -m32 -d -c -o- -version=StdDdoc -I../druntime/import
std/format.d
std.ddoc -Dfstd_format.html
and copied std.ddoc from a release version of dmd (it's in
src/phobos).
Since recently the Phobos doc build is meant to be driven from
the site build. I'll fix the standalone thing because it's
useful too, just I don't know when.
Andrei
Some basic stuff like Colors can be portable.
I can share my work if somebody is interested.
Best regards,
Damian Ziemba