all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Stephen J. Turnbull" <stephen@xemacs.org>
To: Alin Soare <as1789@gmail.com>
Cc: Emacs Dev <emacs-devel@gnu.org>
Subject: Re: Add morph library to emacs
Date: Tue, 06 Mar 2012 11:31:09 +0900	[thread overview]
Message-ID: <87y5rea2aa.fsf@uwakimon.sk.tsukuba.ac.jp> (raw)
In-Reply-To: <CA+Xtq3XJeu3wtRCGBv7g12zrUmbjT6b8FLc8crDkaoAv4w515Q@mail.gmail.com>

Alin Soare writes:

 > The effort you depose to write tabs for emacs can be compared with
 > the effort to add to emacs a real graphical interface

Once again, you're talking to yourself, making us guess what you mean.

Your words make little sense to me.  I have two guesses, neither of
which seems to be what you mean.  Either Emacs already has a "real
graphical interface" (though limited in some ways), or making a "real
graphical interface" will require rewriting thousands of lines of code
spread over millions of lines of code to reorient Emacs from its TTY
roots to a modern (but not necessarily better!) graphical mode.

 > And if this is done, we will have a graphical interface of the same
 > power of that one of smalltalk.

I don't use Smalltalk, and nobody I hack with does.  Would you like to
try an example that the people you are addressing might understand?

 > >  > To add morphic objects to the actual structure of emacs it is
 > >  > also beyound the limits of the system.
 > >
 > > Again, XEmacs did so a decade ago,
 > >
 > This is a play. This graphical interface is limited to the
 > capabilities of emacs's matrix of glyphs.

You haven't looked closely enough.  It's true that XEmacs's
capabilities are limited, but it is capable of managing arrays of
widgets either horizontally or vertically, including arrays of widget
arrays.  In practice that's sufficient for any editor I need.  If you
need a canvas, I don't have one but on GTK+ I'm sure there's something
more or less usable that can be linked in.

More generally, on the X11 family of platforms, one can connect
directly to the X server via xlib.el (that's something developed by
one of the SXEmacs guys, but should work on Emacs as well as the
*XEmacsen), or on platforms where GCC supports FFI, use FFI to access
toolkits on the client side.

lwlib stands for "Lucid Widget Library" after the company that
developed it, but it could just as easily be named the "Lispy Widget
Library", as internally structures of widgets are built out of singly
linked lists.  It would be reasonably straightforward in XEmacs to
finish the work and have real widget objects in Lisp, and then build
up the whole user interface from there, in Lisp.  (I say "XEmacs"
because I suspect that the result would be too heavyweight both in
space and time, and the use of opaque types too great to pass Emacs
filters, but you could hope I'm wrong!)

 > Just start reading about the basics of oop and the link with
 > graphical interfaces.

I did that 20 years ago.  Boring stuff, to my taste.

Please understand: I have no interest in doing the work to implement
your ideas.  I don't find them attractive (not that the ideas are
unattractive, but they don't attract *me*).  All I want out of this
thread is for *you* to learn that Emacs is a very large, stable piece
of software, with all the capabilities you need to do what you want to
do.  However, if you want to take advantage of the unique capabilities
of Emacs in editing and as a workspace, you're going to need to work
within the framework of Emacs, which is not optimized for your GUI
purposes.

 > Seems that you never heard about morphs:

That's true, I haven't.  I have a teenage daughter and live in a
country full of lightweight politicians and frivolous journalists who
feed me more fads than I can stomach.  For me, Emacsen are a haven
from such froth.



  parent reply	other threads:[~2012-03-06  2:31 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-04  3:16 Add morph library to emacs Alin Soare
2012-03-05  7:22 ` Stephen J. Turnbull
2012-03-06  1:09   ` Alin Soare
2012-03-06  1:53     ` Óscar Fuentes
2012-03-06  2:31     ` Stephen J. Turnbull [this message]
2012-03-06  2:56       ` Alin Soare

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y5rea2aa.fsf@uwakimon.sk.tsukuba.ac.jp \
    --to=stephen@xemacs.org \
    --cc=as1789@gmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.