old-www/LDP/LG/issue42/gm/musings.html

523 lines
31 KiB
HTML

<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Mozilla/4.51 [en] (X11; I; Linux 2.0.36 i586) [Netscape]">
<title>Graphics Muse
</title>
</head>
<body text="#000000" bgcolor="#FFFFFF" link="#660000" vlink="#666666" alink="#FF6600">
<!-- =============================================================
These pages are designed by Michael J. Hammel. Permission to
use all graphics and other content is granted provided you give
me (or the original authors/artists) credit for the work and this
copyright notice is not removed.
(c)1997, 1998 Michael J. Hammel (mjhammel@graphics-muse.org)
============================================================= !-->
<br><img SRC="images/musings.jpg" height=50 width=245>
<table WIDTH="100%" >
<tr>
<td ALIGN=RIGHT WIDTH="100%"><font size=-2>&copy; 1999 <a href="mailto:mjhammel@graphics-muse.org">Michael
J. Hammel</a></font></td>
</tr>
<tr>
<td VALIGN=TOP BGCOLOR="#000000" cellpadding="0" cellspacing="0"><img SRC="images/cleardot.gif" ALT="indent" align=LEFT></td>
</tr>
</table>
<table BORDER=0 COLS=3 WIDTH="100%" NOSAVE >
<tr NOSAVE>
<td ALIGN=LEFT VALIGN=TOP WIDTH="140" NOSAVE>
<table BORDER CELLSPACING=0 CELLPADDING=2 COLS=1 WIDTH="100%" HEIGHT="100%" BGCOLOR="#FE992B" NOSAVE >
<tr NOSAVE>
<td NOSAVE><font face="Arial,Helvetica"><font size=-1><a href="#A Follow Up to Vector Drawing Tools on Linux">A
Follow Up to Vector Drawing Tools on Linux</a></font></font></td>
</tr>
<tr>
<td><font face="Arial,Helvetica"><font size=-1><a href="#A Little Eye-Candy, Please (continued)">A
Little Eye Candy, Please (continued)</a></font></font></td>
</tr>
</table>
</td>
<td WIDTH="1" NOSAVE></td>
<td ALIGN=LEFT VALIGN=TOP NOSAVE>
<table BORDER=0 CELLSPACING=0 CELLPADDING=3 COLS=1 WIDTH="100%" NOSAVE >
<tr>
<td><b><font face="Arial,Helvetica"><font size=+1>more musings...</font></font></b></td>
</tr>
</table>
</td>
</tr>
</table>
<hr SIZE=1 NOSHADE WIDTH="100%">
<br><a NAME="A Follow Up to Vector Drawing Tools on Linux"></a><b><font face="Arial,Helvetica"><font size=+1>A
Follow Up to Vector Drawing Tools on Linux</font></font></b>
<p><font face="Arial,Helvetica"><font size=-1>I received a lot of email
in response to my article on Vector Drawing tools for Linux.&nbsp; That's
good - it's really the only way I know anyone really reads this stuff.&nbsp;
Fortunately, it was all positive feedback, some praise and a lot of helpful
hints relating to the tools I discussed.&nbsp; Here is some of the email
I received, and my responses to them.</font></font>
<p>
<hr SIZE=1 NOSHADE WIDTH="85%">
<br><u><font face="Arial,Helvetica">One package I missed:&nbsp; ImPress</font></u>
<p><font face="Arial,Helvetica"><font color="#990000"><font size=-1>I'll
admit that ImPress has some bugs.&nbsp; Please give it a try sometime.</font></font></font>
<br><font face="Arial,Helvetica"><font color="#990000"><font size=-1><a href="http://www.ntlug.org/~ccox/impress/index.html">http://www.ntlug.org/~ccox/impress/index.html</a></font></font></font>
<p><font face="Arial,Helvetica"><font color="#990000"><font size=-1>Regards,</font></font></font>
<br><font face="Arial,Helvetica"><font color="#990000"><font size=-1>Chris</font></font></font>
<br><font face="Arial,Helvetica"><font color="#990000"><font size=-1><a href="mailto:ccox@acm.org">ccox@acm.org</a></font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><b><font color="#993300">'Muse:</font></b>&nbsp;
Whoa.&nbsp; I didn't even know that ImPress was a vector tool.&nbsp; So
much for my research capabilities.&nbsp; I downloaded it and took a quick
look.&nbsp; I have to say, this may be the simplest tool of the bunch.&nbsp;
For someone who wants to create simple diagrams and then print them out,
this may just be the tool.&nbsp; It has a simple interface that includes
all the basic shapes you might want, plus support for embedded text and
Postscript output.&nbsp; It's not nearly as full featured as the TGIF or
XFig, but it is simple to use and requires no special configuration.&nbsp;
It doesn't even require compiling - it's a Tcl/Tk script!&nbsp; Very impressive.&nbsp;
Here are a few screen shots.</font></font>
<br>&nbsp;
<center><table BORDER=0 CELLSPACING=0 CELLPADDING=4 NOSAVE >
<tr NOSAVE>
<td NOSAVE>
<center><img SRC="images/impress-1.gif" height=276 width=559></center>
</td>
<td>
<center><img SRC="images/impress-2.gif" height=308 width=94></center>
</td>
</tr>
<tr>
<td>
<center><b><font face="Arial,Helvetica"><font size=+1>Impress main window</font></font></b></center>
</td>
<td>
<center><b><font face="Arial,Helvetica"><font size=+1>Toolbox</font></font></b></center>
</td>
</tr>
</table></center>
<p><font face="Arial,Helvetica"><font size=-1>The downloadable package
doesn't include much in the way of documentation, unfortunately.&nbsp;
The Web site only contains HTML-ized versions of the documentation that
comes with the package.&nbsp; But this small amount of documentation should
still be enough to get you moving pretty quickly in this package.&nbsp;
I did note that at least one part of the documentation was wrong:&nbsp;
double clicking on the color palette entry in the main dialog doesn't bring
up the color editing dialog.&nbsp; You need to double click on the Fill
button instead.&nbsp; Minor detail.&nbsp; The program still works pretty
good.</font></font>
<p><font face="Arial,Helvetica"><font size=-1>My only question:&nbsp; how
did Chris get those pictures of Tux and the dinosaur into his example?&nbsp;
The dinosaur looks like it might be clip art (vector graphics), but the
Tux image looks like an imported raster graphic.&nbsp; There doesn't appear
to be a raster import feature in the version I have.&nbsp; Maybe its something
under development.</font></font>
<p>
<hr SIZE=1 NOSHADE WIDTH="80%">
<br><u><font face="Arial,Helvetica">KIllustrator</font></u>
<ol>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Killustrator
requires egcs 1.x OR gcc 2.8 since gcc 2.7.2 is so very broken for C++
code (ie no ANSI compliance).&nbsp; Not a problen on Redhat 5.x, since
the default C++ compiler on Redhat is egcs, and gcc is only for C code,
especially the old stable kernel series. 2.0.x</font></font></font></li>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>With KDE
installed already on my system, it was a standard source code install with
./configure ; make ; make install working flawlessly. (for 0.6.3 , there
are later versions)</font></font></font></li>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>It imports
Xfig drawings, apparantly, and exports GIF, eps, ppm, and xpm (it may support
more, but I don't have for instance tiff or png development libraries installed,
so configure may simple have selected to use those installed.) It also
saves to its own (XML?) based format.</font></font></font></li>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>For running
KDE applications you need the Qt libraries and the KDE libraries, nothing
more. To compile them Qt-devel, and kdesupport packages are needed.</font></font></font></li>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>For a
full KDE install, install packages in the order Qt, kdesupport, kdelibs,
all others in any order {kdebase, kdegames, kdegraphics, kdenetwork, korgransier,
klyx, kdeutils, kdetoys, kdemultimedia}</font></font></font></li>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Killustrator
was designed from the start as a KDE application so its unlikely to be
uncoupled. (unlike Gimp, which precedes GNOME). It only needs the kdelibraries
and Qt - it will happily run on any X11 system with them installed. Its
also the vector graphics package for the KDE office suite, and I think
0.6.x is the last release which will have a compile time option of running
without koffice support. (The website might need checked for that one)</font></font></font></li>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>As its
a koffice application, it can be emabedded in other applications using
the KOM/OP corba orb, which is usable independent of Qt and KDE, so it
may be possible to embed killustrator in another application understanding
KOM/OP.&nbsp; ie as is done throughout koffice (SuSE 6.1 has an alpha release
included)</font></font></font></li>
</ol>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>George
Russell</font></font></font>
<br><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1><a href="mailto:george.russell@clara.net">george.russell@clara.net</a></font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><b><font color="#993300">'Muse:</font></b>&nbsp;
This was very helpful information, especially the bit about what libraries
are needed to run and what libraries are needed to compile KDE applications.&nbsp;
Unfortunately, since it appears that KIllustrator is being tied to another
suite of tools (KDE Office Suite), I doubt I'll try it myself.&nbsp; I
don't need all those other pieces.&nbsp; Maybe they'll be part of the next
full distribution I purchase, in which case I'll take a look at them then.&nbsp;
I just don't feel like downloading huge amounts of stuff I won't really
use anyway.</font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Your
comments about KIllustrator in the Linux Gazette are missleading.&nbsp;
Killustrator isn't "tied to KDE" as you indicate, it runs perfectly fine
on any desktop.&nbsp; KIllustrator, however, uses KDE as application development
framework, which is something completely different.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>This
has nothing to do with "being KDE-aware", it's all about writing applications.&nbsp;
KDE is not just a desktop, it's a set of libraries and tools that makes
it possible to&nbsp; write applications. By asking programmers not to use
modern tools to develop their applications, you force them to re-invent
the wheel over and over again.In the best case this will provide us with
applications similar to xfig and tgif (which both cannot compete with modern
standards). In the worst case this leads to no applications at all.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Come'on,
installing software on linux today means a few clicks in kpackage, that
can't be that hard ;-)</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Matthias
Ettrich &lt;<a href="mailto:ettrich@kde.org">ettrich@kde.org</a>></font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><b><font color="#993300">'Muse:</font></b>&nbsp;
End users don't distiguish between "application development framework"
and dependencies.&nbsp; It's just symantics.&nbsp; KIllustrator is tied
to KDE because you need the appropriate KDE libraries to run the program
and/or compile it.&nbsp; The same is true of the Gimp - it's tied to Gtk.&nbsp;
The difference is that Gtk has been available in most Linux distributions,
and for a number of other Unix platforms, for some time now (at least the
past year).&nbsp; KDE is just now becoming part of most Linux distributions,
which will make grabbing the occassional extra KDE package from the net
a less complex issue in the future.</font></font>
<p><font face="Arial,Helvetica"><font size=-1>This isn't to say KDE is
a problem to deal with, it's just not currently convenient to the end user.&nbsp;
Gnome applications have the same problem.&nbsp; But for users on non-Linux
platforms, for which neither Gnome or KDE are available, these applications
are of no use.&nbsp; It's your choice as a developer, of course.&nbsp;
I prefer to write for any Unix platform, or at least as many as I can reasonably
support.</font></font>
<p>
<hr SIZE=1 NOSHADE WIDTH="80%">
<br><u><font face="Arial,Helvetica">XFig</font></u>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>I read
in your LG article that you could not get xfig to export or print. Is your
problem perhaps that you have not got fig2dev installed?&nbsp; This program
is part of the transfig package (see the xfig docs).</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Yours,</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Jeroen
Nijhof</font></font></font>
<br><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1><a href="mailto:J.H.B.Nijhof@aston.ac.uk">J.H.B.Nijhof@aston.ac.uk</a></font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><b><font color="#993300">'Muse:</font></b>&nbsp;
Looks like that could be the reason.&nbsp; I, indeed, do not have fig2dev
installed.</font></font>
<p>
<hr SIZE=1 NOSHADE WIDTH="80%">
<p><u><font face="Arial,Helvetica">Sketch</font></u>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>I've
just read the new issue of the Linux Gazette and your Graphics Muse column
and I was delighted to see that you investigated the vector drawing programs
available for Linux.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>As
the developer of Sketch, I was somewhat disappointed, as you can imagine,
when I read that you weren't able to install it. The points you raise are
perfectly valid, although most of the problems are caused by misleading
statements in PILs README, I think. I guess that everybody who is not very
experienced with building Python C-Extensions will have similar problems,
and I don't know how many people have given up installing Sketch because
of this.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>In
your column, you write:</font></font></font>
<blockquote><i><font face="Arial,Helvetica"><font size=-1>Sketch requires
Python v1.5.1 or later, the Python Imaging Library, v1.0b1 and Tcl/TK,
version 8.0 or later.&nbsp; To build the Python Imaging Library (aka PIL)
you can't use the RPM version of Python - you have to build the python
distribution from source and install it.&nbsp; This is because you have
to build PIL under the "Extensions" directory of the Python 1.5 directories.</font></font></i></blockquote>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>This is
not true, actually. The PIL README says that you should unpack the archive
in Python's Extensions directory, but you can in fact unpack it anywhere
you like (in your home directory for instance) and build it there.</font></font></font>
<blockquote><i><font face="Arial,Helvetica"><font size=-1>Although I have
Python 1.5 installed on my stock RH 5.2 box, there is no Extensions directory.&nbsp;
Plus, if I just made the directory where 1.5 is installed (/usr/lib/python1.5),
I'd have to build the PIL as the root user.&nbsp; Not a good thing.&nbsp;
So I downloaded the Python 1.5 source, built it, then tried the PIL buid.&nbsp;
It didn't work - something about missing a config directory.</font></font></i></blockquote>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>You don't
need the Python sources to build the PIL as long as you have a complete
installation of the Python interpreter and the C-header-files, libraries
and configuration files. RedHat has split Python into several packages.
The header files and configuration files are in the python-devel rpm, as
far as I can tell (I don't use RedHat, but I had a look at their ftp server),
so if you install that rpm you should be able to build PIL with these commands:</font></font></font>
<blockquote><font face="Arial,Helvetica"><font size=-1>% tar xvzf Imaging-1.0b1.tar.gz</font></font>
<br><font face="Arial,Helvetica"><font size=-1>% cd Imaging-1.0b1/libImaging/</font></font>
<br><font face="Arial,Helvetica"><font size=-1>% ./configure</font></font>
<br><font face="Arial,Helvetica"><font size=-1>% make</font></font>
<br><font face="Arial,Helvetica"><font size=-1>% cd ..</font></font>
<br><font face="Arial,Helvetica"><font size=-1>% make -f Makefile.pre.in
boot</font></font>
<br><font face="Arial,Helvetica"><font size=-1>% make</font></font></blockquote>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>and install
it under /usr/lib/python1.5/site-packages as described in the PIL README.
After that, installing Sketch itself should be simple, I hope :)</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>All
in all, I have to thank you for the article. As a developer, it's difficult
to guess where user's may have problems and the information you provide
is exactly what I need to make Sketch easier to install.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>I really
hope that you give Sketch another try and perhaps write about it and the
other programs again in a future graphics muse column.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Bernhard
Herzog &lt;<a href="mailto:sketch@online.de">sketch@online.de</a>></font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><b><font color="#993300">'Muse:</font></b>&nbsp;
Attention developers - this is <u>exactly</u> the way you should respond
to end user and press criticisms!&nbsp; I applaud Bernard for taking my
issues to heart and offering such useful feedback.&nbsp; I hope, for my
own projects, that I reply to criticisms' in the same professional and
meaningful manner.</font></font>
<p><font face="Arial,Helvetica"><font size=-1>Oh, and Bernard's feeback
was perfect.&nbsp; I managed to get things running pretty quick with his
help.&nbsp; Note that he is correct about the Red Hat RPMs - if you are
using the Red Hat 5.2 distribution you may not have automatically installed
the Python development package, which you need to build PIL.&nbsp; You'll
know this is the case if you try to run the Makefile.pre.in step (above)
and get a message about</font></font>
<blockquote><tt><font size=-1>No rule to make target `/usr/lib/python1.5/config/Makefile</font></tt></blockquote>
<font face="Arial,Helvetica"><font size=-1>That would be because the "config"
directory for Python only gets installed (using RPMs) with the <a href="http://rufus.w3.org/linux/RPM/redhat/5.2/i386/python-devel-1.5.1-5.i386.html">python-devel-1.5.1-5
RPM for i386 </a>package.&nbsp; Don't forget to also install the three
header files from PIL into the python include directories.&nbsp; The INSTALL
file for Sketch describes this simply enough.&nbsp; After getting the Python
development package and Python Imaging Library installed, the build for
sketch was very simple.&nbsp; Just folllow the steps in the README.&nbsp;
Sketch itself is easy to build.&nbsp; It's all the bits and pieces it requires
from Python that were a bit of a pain to get going.</font></font>
<p><font face="Arial,Helvetica"><font size=-1>One other thing:&nbsp; make
sure you build with the 0.6.0 version.&nbsp; I tried with an earlier 0.5.5
version and had some build incompatibilities with my Python 1.5.1 installation.&nbsp;
You can get around these easily enough, but its even easier if you just
grab the 0.6.0 (or later) source code.</font></font>
<center>
<p><img SRC="images/sketch.gif" VSPACE=10 height=424 width=583></center>
<p><font face="Arial,Helvetica"><font size=-1>Sketch's interface is fairly
simple to learn.&nbsp; Unlike TGIF or XFig, Sketch is more of an artists
tool, something like Adobe Illustrator (it even reads and writes Illustrator
files!).&nbsp; I wouldn't really put sketch in the same category as the
other two - they seem meant for different uses.&nbsp; Being more of an
artist (or at least a wanna-be artist), I really liked Sketch.&nbsp; Once
I managed to get it running.</font></font>
<p>
<hr SIZE=1 NOSHADE WIDTH="80%">
<p><u><font face="Arial,Helvetica">And just a little praise...</font></u>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>This
is a letter from a real Graphics Muse fan!&nbsp; You are doing a great
job with your column in the Linux Gazette, and all that monthly.&nbsp;
Congratulations!</font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><font color="#993300">'Muse:</font>&nbsp;
Thanks!</font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Sometimes,
I think of contributing more to the Linux community myself, but my daytime
job eats up most of my time/energy.&nbsp; How can you make such a neat
article every month?&nbsp; Where do you get your energy from? Kryptonite?&nbsp;
:-)</font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><font color="#993300">'Muse:</font><font color="#000000">&nbsp;
No, but a lack of anything that remotely resembles a social life helps.&nbsp;
As for your contribution to the cause - you're making it now, by providing
feedback to me.&nbsp; Don't underestimate the importance such feedback
plays.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Why
I'm really writing this letter...</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>In
[last] month's Gazette you compare tgif and xfig.&nbsp; In brief:&nbsp;
Well done.&nbsp; Great job!&nbsp; I liked especially the sentence that
your preference towards tgif is _not_ mirrored in the numerical "test"-result.&nbsp;
If every software comparison/test were done so carefully, we would have
far fewer flame wars in the news groups.</font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><font color="#CC0000">'Muse:
</font><font color="#000000">Maybe,
but human instinct is toward clarification from the point of view of the
reader.&nbsp; Which means argument is almost guaranteed at some point (at
least between relatively intellectually motivated individuals).&nbsp; But
I digress.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>As
I am a long-time (old-time?) user of both programs, I just want to add
some fine points to your careful judgment.&nbsp; Why the heck would you
want to use both?&nbsp; Well, once you are in the boat, you must row.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Almost
all of the documents I produce are typeset with LaTeX.&nbsp; From time
to time I have to include simple drawings.&nbsp; Now, because TeX produces
such wonderful looking documents, the graphics have to match that.&nbsp;
This means all the text (e.g. labels, legend) in a graph must be typeset
with TeX.&nbsp; Using fonts from a different family does not look good.&nbsp;
The problem is that TeX's graphing capabilities (i.e. the picture-environment)
are very limited.&nbsp; What the user wants is the full power of Postscript.&nbsp;
That said, xfig and it's companion programs transfig, and fig2dev are a
blessing.&nbsp; They allow for exactly what I have been describing.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>The
typical data-flow looks like this:</font></font></font>
<p><tt>&nbsp; editor&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
TeX&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
dvips</tt>
<br><tt>|-------> doc.tex ---------------+----> doc.dvi ---+----> doc.ps</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
^&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
^</tt>
<br><tt>&nbsp; xfig&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
fig2dev&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|</tt>
<br><tt>|-------> graph.fig ----+---> graph.tex&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
|</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+---> graph.ps ----------->+</tt>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>The
dependencies between the files are automatically updated with a Makefile.&nbsp;
OK, now you know why I am stuck with xfig: it is the only program that
can separate the text-output (read: TeX) from the graphic-output (read:
Postscript).</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Enter:
Postscript files.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Imagine
a colleague walking in and saying: "We should include one of these fancy
XYZ [insert program name yourself] outputs, you know that thing can produce
Postscript-files."&nbsp; Oh, oh -- this is bad news.</font></font></font>
<ol>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Sad but
true Postscript is not always Postscript.&nbsp; Some software has a very
particular idea of what makes up the Postscript-standard.</font></font></font></li>
<li>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Sure,
the program's output looks fancy, but it cannot be published without some
editing.&nbsp; How to edit a Postscript file?&nbsp; Lucky if you have Wolfgang
Glunz's pstoedit [currently version 3.03].&nbsp; <i>pstoedit</i> translates
a ps-file with the help of ghostscript into a tgif-compatible file.&nbsp;
For a long time pstoedit's tgif-driver was the only one leading from un-editable
Postscript back to an editable format.&nbsp; Later it was the best driver
to do that.&nbsp; Today the xfig-driver does as well as the fig-driver.&nbsp;
But I started editing my ps-files a long time ago, and that is why I am
using tgif.&nbsp; Once upon a time I was the only tool to do what I needed.</font></font></font></li>
</ol>
<font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>You see,
the stories behind the usage of this tool or that tool can be quite convoluted.&nbsp;
The numbers of an "arbitrary" test may not tell you what you need.&nbsp;
Therefore, your xfig versus tgif comparison is a shining example of how
to write about performance, usability and all that.</font></font></font>
<p><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>Christoph
L. Spiel</font></font></font>
<br><font face="Arial,Helvetica"><font color="#CC0000"><font size=-1>cspiel@ccmr.cornell.edu</font></font></font>
<p><font face="Arial,Helvetica"><font size=-1><font color="#993300">'Muse:</font>&nbsp;
All very good points!&nbsp; So often we measure tools objectively, using
what we think are absolute comparisons of speed or performance.&nbsp; But
we often fail to measure the seemingly intangible value of comfort that
lies within a tool for the individual user.&nbsp; Perhaps we should look
at software less as abstract pieces of pseudo-machinery and more as extensions
of our daily lives.&nbsp; We give life to our automobiles by referring
to them as "she".&nbsp; And if that automobile provides no comfort, then
it has limited value to the owner.&nbsp; Comfort, it seems, should be an
intrinsic part of our measurements of a software tool's usefulness to the
individual.</font></font>
<br>
<hr SIZE=3 NOSHADE WIDTH="100%">
<br><a NAME="A Little Eye-Candy, Please (continued)"></a><b><font face="Arial,Helvetica"><font size=+1>A
Little Eye Candy, Please (continued)</font></font></b>
<p><font face="Arial,Helvetica"><font size=-1>In my fvwm-menu file I've
added the following entries to run xscreensaver:</font></font>
<p><tt><font size=-1>AddToMenu XScreensaver "Screen Saver"&nbsp;&nbsp;&nbsp;
Title</font></tt>
<br><tt><font size=-1>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Matrix"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Function&nbsp;&nbsp;&nbsp; ScreenSaverMatrix</font></tt>
<br><tt><font size=-1>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "XSaver On"&nbsp;&nbsp;&nbsp;&nbsp;
Function&nbsp;&nbsp;&nbsp; ScreenSaverOn</font></tt>
<br><tt><font size=-1>+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "XSaver Off"&nbsp;&nbsp;&nbsp;
Function&nbsp;&nbsp;&nbsp; ScreenSaverOff</font></tt><tt><font size=-1></font></tt>
<p><tt><font size=-1>AddToFunc ScreenSaverMatrix</font></tt>
<br><tt><font size=-1>+ "I"&nbsp;&nbsp; Exec&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
exec xscreensaver -no-splash &amp;</font></tt>
<br><tt><font size=-1>+ "I"&nbsp;&nbsp; Exec&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
exec xscreensaver-command -select 1&amp;</font></tt>
<p><tt><font size=-1>AddToFunc ScreenSaverOn</font></tt>
<br><tt><font size=-1>+ "I"&nbsp;&nbsp; Exec&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
exec xscreensaver -no-splash &amp;</font></tt><tt><font size=-1></font></tt>
<p><tt><font size=-1>AddToFunc ScreenSaverOff</font></tt>
<br><tt><font size=-1>+ "I"&nbsp;&nbsp; Exec&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
exec xscreensaver-command -exit&amp;</font></tt>
<br><tt><font size=-1>+ "I"&nbsp;&nbsp; Exec&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
exec xset s on</font></tt><tt><font size=-1></font></tt>
<p><font face="Arial,Helvetica"><font size=-1>The first entry, Matrix,
will run only the xmatrix screensaver immediately and leave it running.&nbsp;
The second entry just starts the screensaver using the first entry in my
programs list in $HOME/.xscreensaver and allows it to cycle through the
list.&nbsp; This also starts only when the configured inactivity period
has expired.&nbsp; The last entry shuts xscreensaver off and returns my
X servers screen blanker back on.</font></font><font face="Arial,Helvetica"><font size=-1></font></font>
<p><font face="Arial,Helvetica"><font size=-1>The three programs that come
with xscreensaver - the xscreensaver daemon, xscreensaver-demo and xscreensaver-command
- also include extensive man pages in HTML&nbsp;format.&nbsp; It seems
a bit odd that there are som many options for something as simple as a
screensaver, but they are all useful options.&nbsp; Be sure to read through
the documentation before trying to set up running the screensaver from
your window manager as I&nbsp;have done in the examples above.</font></font><font face="Arial,Helvetica"><font size=-1></font></font>
<p><font face="Arial,Helvetica"><font size=-1>Some of the other intersting
hacks I have configured are:</font></font>
<center><img SRC="images/decayscreen.jpg" VSPACE=10 height=432 width=576>
<br><b><font face="Arial,Helvetica">Decay Screen</font></b>
<p><img SRC="images/spotlight.jpg" VSPACE=10 height=176 width=252>
<br><b><font face="Arial,Helvetica">Spotlight</font></b><br CLEAR=BOTH>
<BR>
<br><img SRC="images/radar.jpg" VSPACE=10 height=432 width=576>
<br><b><font face="Arial,Helvetica">Radar</font></b></center>
<p><font face="Arial,Helvetica"><font size=-1>It's just a fun thing to
play with, not much else really.&nbsp; If you dig into the code for some
of these hacks (and xscreensaver itself), however, you might just learn
quite a bit about how low level graphics work under X.</font></font><font face="Arial,Helvetica"><font size=-1></font></font>
<p><font face="Arial,Helvetica"><font size=-1>Enjoy!</font></font>
<br>&nbsp;
<table WIDTH="100%" >
<tr>
<td VALIGN=TOP COLSPAN="4" BGCOLOR="#000000" cellpadding="0" cellspacing="0"><img SRC="images/cleardot.gif" ALT="indent" align=LEFT></td>
</tr>
</table>
<table WIDTH="100%" >
<tr>
<td ALIGN=RIGHT><font size=-2>&copy; 1998 by <a href="mailto:mjhammel@graphics-muse.org">Michael
J. Hammel</a></font></td>
</tr>
</table>
</body>
</html>