Artist
What is artist
Artist is an Emacs lisp package that allows you to
draw lines, rectangles, squares, poly-lines, ellipses and circles by
using your mouse and/or keyboard. The shapes are made up with the
ascii characters |
, -
, /
and
\
.
Features
- Intersecting
- When a `
|
' intersects with a `-
', a
`+
' is drawn, like this:
| \ /
--+-- X
| / \
- Rubber-banding
- When drawing lines you can interactively see the
result while holding the mouse button down and moving the mouse.
If your machine is not fast enough (a 386 is a bit to slow, but
a pentium is well enough), you can turn this feature off. You
will then see
1
's and 2
's which mark
the 1st and 2nd endpoint of the line you are drawing.
- Arrows
- After having drawn a (straight) line or a (straight) poly-line,
you can set arrows on the line-ends by typing
<
or >
.
- Flood-filling
- You can fill any area with a certain character by
flood-filling.
- Cut copy and paste
- You can cut, copy and paste rectangular regions. Artist also
interfaces with the rect package (this can be turned off if it
causes you any trouble) so anything you cut in artist can be
yanked with
C-x r y
and vice versa.
- Drawing with keys
- Everything you can do with the mouse, you can also do without
the mouse.
- Aspect-ratio
- You can set the variable artist-aspect-ratio to reflect the
height-width ratio for the font you are using. Squares and
circles are then drawn square/round. Note, that once your
ascii-file is shown with font with a different height-width
ratio, the squares won't be square and the circles won't be
round.
- Drawing operations
- The following drawing operations are implemented:
lines | | straight-lines |
rectangles | | squares |
poly-lines | | straight poly-lines |
ellipses | | circles |
text (see-thru) | | text (overwrite) |
spray-can | | set size for spray |
vaporizing line | | vaporizing lines |
erase characters | | erase rectangles |
Straight lines are lines that go horinzontally, vertically or
diagonally. Plain lines go in any direction. The shapes in the
right column are accessed by holding down the shift key while
drawing. You can also erase characters and rectangles.
It is possible to vaporize (erase) entire lines and connected lines
(rectangles for example) as long as the lines being vaporized are
straight and connected at their endpoints. Vaporizing is inspired
by the drawrect package by
Jari Aalto <jari.aalto@poboxes.com>.
- Picture mode compatibility
- Artist is picture mode compatible (this can be turned off)
Artist is written by Tomas
Abrahamsson. Send bug-reports and comments (and perhaps even
your ascii-creations drawn with artist :-) to
tab@lysator.liu.se
Screenshots
Here is a nice screencast of the drawing of a singly-linked list.
Here is a screenshot showing some
shapes (a text version). Here is
another one showing the A from the image
above (a text version).
Requirements
Requirements are: Emacs 19.28 or higher.
Artist has not been test with XEmacs.
Download
Artist is distributed under Gnu General Public
License. The latest version, 1.2.6, is available as a gzipped
tar-file: artist-1.2.6.tar.gz (72 kB)
and as single elisp-file: artist.el (192 kB)
for those who want to compile it themselves.
History
- 1.2.6, 6-Aug-2004
-
- Coerced with the artist.el that's in Emacs-21.3 (minor
editorial changes).
- 1.2.5, 4-Aug-2004
-
- Added tool selection via the mouse-wheel.
Function provided by Andreas Leue <al@sphenon.de>
- 1.2.4, 25-Oct-2001
-
- Some operations (the edit menu) had got hidden
- The first arrow for poly-lines was always pointing to the right
- Updated with changes made for Emacs 21.1
- 1.2.3, 20-Nov-2000
-
- Bugfix: Autoload cookie corrected.
- 1.2.2, 19-Nov-2000
-
- More documentation fixes.
- Bugfix: The arrow characters (`artist-arrows'), which had
got all messed up in 1.1, are now corrected.
- 1.2.1, 15-Nov-2000
-
- Documentation fixes.
- Bugfix: Sets next-line-add-newlines to t while in artist-mode.
Drawing with keys was confusing without this fix, if
next-line-add-newlines was set to nil.
Thanks to Tatsuo Furukawa <tatsuo@kobe.hp.com> for this.
- 1.2, 22-Oct-2000
-
- 1.1, 15-Aug-2000
-
- Works with Emacs 20.
- Cursor follows mouse pointer more closely.
- Support for customize
- 1.1-beta1, 21-Apr-1998
- New features:
- Spray-can, after an idea by Karl-Johan Karlsson
<kj@lysator.liu.se>.
It is utterly useless, I believe, but it is rather impressive.
- Freehand drawing.
- Vaporizing (erasing) lines, inspired by the drawrect package
by Jari Aalto
<jari.aalto@poboxes.com>.
- Text-rendering using
figlet.
- Picture mode compatibility.
Changes:
- All Artist keys now use the prefix
C-c C-a
in
order not to confict with Picture mode.
Bugfixes:
- No longer leaves traces of lines when rubberbanding if the
buffer auto-scrolls.
- Inifinite loop sometimes when rubberbanding was turned off.
- 1.0, 1-Mar-1998
- First official release
Old versions
Older versions are available:
- 1.2.5
- The tar archive: artist-1.2.5.tar.gz
- 1.2.4
- The tar archive: artist-1.2.4.tar.gz
- 1.2.3
- The tar archive: artist-1.2.3.tar.gz
- 1.2.2
- The tar archive: artist-1.2.2.tar.gz
- 1.2.1
- The tar archive: artist-1.2.1.tar.gz
- 1.2
- The tar archive: artist-1.2.tar.gz
- 1.1
- The tar archive: artist-1.1.tar.gz
- 1.1-beta1
- The tar archive: artist-1.1-beta1.tar.gz
- 1.0
- The tar archive: artist-1.0.tar.gz