artist

Homepage: https://www.gnu.org/software/emacs

Author: Tomas Abrahamsson

Summary

Draw ascii graphics with your mouse

Commentary

What is artist?
---------------

Artist is an Emacs Lisp package that allows you to draw lines,
rectangles and ellipses by using your mouse and/or keyboard.  The
shapes are made up with the ascii characters |, -, / and \.

Features are:

* 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.

* 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                setting size for spraying
    vaporize line            vaporize lines
    erase characters         erase rectangles

  Straight lines are lines that go horizontally, vertically or
  diagonally.  Plain lines go in any direction.  The operations in
  the right column are accessed by holding down the shift key while
  drawing.

  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 .

* 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.

* Arrows: After having drawn a (straight) line or a (straight)
  poly-line, you can set arrows on the line-ends by typing < or >.

* 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.

* Picture mode compatibility: Artist is picture mode compatible (this
  can be turned off).

See the documentation for the function artist-mode for a detailed
description on how to use artist.


What about adding my own drawing modes?
---------------------------------------

See the short guide at the end of this file.
If you add a new drawing mode, send it to me, and I would gladly
include in the next release!

Dependencies

Reverse dependencies