unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Spreadsheet display mode
@ 2007-11-22 16:23 Richard Stallman
  2007-11-22 19:19 ` Glenn Morris
  0 siblings, 1 reply; 14+ messages in thread
From: Richard Stallman @ 2007-11-22 16:23 UTC (permalink / raw)
  To: emacs-devel

Someone suggested that Emacs should have a spreadsheet display mode.
I did some thinking about the idea.  A list of cell definitions could
control how to display each line, and they could go in a `display'
property that might be on an overlay or text property (so that you
could display just a part of the buffer as a spreadsheet).

The actual text would use delimiters to separate cell contents.
The cell definitions could specify what delimiters to use.

What do you think?

^ permalink raw reply	[flat|nested] 14+ messages in thread
* Re: Spreadsheet display mode
@ 2007-11-23  1:03 David O'Toole
  2007-11-23  8:18 ` Bastien
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: David O'Toole @ 2007-11-23  1:03 UTC (permalink / raw)
  To: emacs-devel; +Cc: rms

Hi Richard,

I wrote something called "cell-mode" that seems similar to what you
describe. It holds a grid of cells whose "labels" are
application-defined strings with text properties, and draws them to a
buffer. The display code can do several things:

  - Insert display-property "specified spaces" during rendering so
that all cells in a column
    are the same width---even when there are images and text in the label
  - optional vertical and/or horizontal "zebra stripes" (i.e. every
other column / row is tinted)
  - seamlessly tile various identically-sized rectangular images

I did have a version that supported embedding an interactive
spreadsheet UI into random buffers as a minor mode, using display
properties. You can't put point inside the text, but it can still
receive mouse clicks and keyboard events, so I could just draw a fake
cursor (with an overlay) and map keystrokes to commands that move the
fake cursor.  The illusion was pretty good.

Anyway, I'm trying to make it into a very general-purpose library that
could be used as a front-end for SES and all the other "display stuff
in a table interactively" modes (dired, buffer list, etc)

Here are some screenshots:

an old demo with some interactive objects:
http://dto.freeshell.org/images/cell-mode.png

a recent shot of a rudimentary XPM pixel art drawing program:
http://dto.freeshell.org/images/pixel-preview.png

an example of embedding cell-mode in a buffer:
http://dto.freeshell.org/images/EcaSpace-alpha.png

image tiling stuff:
http://dto.freeshell.org/images/RogueLike-11.png
http://dto.freeshell.org/images/RogueLike-12.png

larger images:
http://dto.freeshell.org/images/cell-mode-2.png

I've been looking for an excuse to work on cell-mode again. It does
need some fixes (especially to make it work well on ttys) but if
anyone is interested i will clean it up and post it to
gnu.emacs.sources.
------------------------------------

From: Richard Stallman <rms <at> gnu.org>
Subject: Spreadsheet display mode
Newsgroups: gmane.emacs.devel
Date: 2007-11-22 16:23:02 GMT (8 hours and 5 minutes ago)

Someone suggested that Emacs should have a spreadsheet display mode.
I did some thinking about the idea.  A list of cell definitions could
control how to display each line, and they could go in a `display'
property that might be on an overlay or text property (so that you
could display just a part of the buffer as a spreadsheet).

The actual text would use delimiters to separate cell contents.
The cell definitions could specify what delimiters to use.

What do you think?

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2007-11-25  5:31 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-11-22 16:23 Spreadsheet display mode Richard Stallman
2007-11-22 19:19 ` Glenn Morris
2007-11-23  4:35   ` Richard Stallman
  -- strict thread matches above, loose matches on Subject: below --
2007-11-23  1:03 David O'Toole
2007-11-23  8:18 ` Bastien
2007-11-24  3:12   ` Richard Stallman
2007-11-23 12:03 ` Johan Bockgård
2007-11-23 13:35   ` Johan Bockgård
2007-11-24 15:20     ` Richard Stallman
2007-11-23 14:00   ` David O'Toole
2007-11-24  3:13 ` Richard Stallman
2007-11-24 11:49   ` David O'Toole
2007-11-24 22:05     ` Richard Stallman
2007-11-25  5:31       ` David O'Toole

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).