[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs as the windows manager for graphical windows, How can I help?

From: joakim
Subject: Re: Emacs as the windows manager for graphical windows, How can I help?
Date: Wed, 03 Apr 2013 13:41:58 +0200
User-agent: Gnus/5.130006 (Ma Gnus v0.6) Emacs/24.3.50 (gnu/linux)

"Malk'Zameth" <address@hidden> writes:

> Hello all!
> I have always dreamed of using emacs as my WM, or at least opening a
> graphical webbrowser inside Emacs, (only program I use outside Emacs
> is my browser anyway, and I do use w3m.el for loads of stuff).
> I was not the only one dreaming, because during the @EmacsConf this
> past weekend I saw a presentation of the Emacs xwidget patch (
> http://bzr.savannah.gnu.org/lh/emacs/xwidget/files ) by Joakim Verona
> ( http://www.emacswiki.org/emacs/JoakimVerona ) that does just that!
> During his presentation he opens a webkit browser inside emacs,
> watches streaming html5 videos and opens an Emacs inside Emacs.
> So I asked Joakim : "Can this be merged into mainline Emacs?"
> and he answered : "It is a matter of someone having the time and
> patience to format the patch so it can be accepted into the mainline
> Emacs"
> Well, time to put my free time where my mouth is : I volunteer to work
> on that, giving it all my "sideproject time" from the first of may
> until completion.

Thanks for the offer!

> I have never hacked Emacs source itself (maybe there is a welcome
> guide somewhere?) and I am a newbie to Emacs lisp itself (only emacs
> lisp I've done: ugly init.el config
> https://github.com/malk/.emacs.d/blob/master/init.el ) but I am a
> developer by trade and I do want to invest my time on that.
> This Email here is to announce me volunteering but also to ask:
> 1. What needs to be done? what "format" does a code needs to conform
> to be acceptable by the mainline Emacs?

A good start would be to check out the branch and read the README.xwidget
file. (the Emacs Xwidget branch is packaged in AUR and Gentoo, I think,
so maybe its pretty easy there)

The readme can be read here:

The readme is in org format.

That said, the remaining work should not be underestimated. The work
should be documented as TODO:s in the readme, but briefly, these are the
hard remaining tasks:

- I have a bunch of hard coded C arrays in xwidget.c that should be
  switched over to lisp data.

- there are many different attempts simultaneously represented in
  xwidget.c to achieve the difficult emacs split window paradigm with
  external widgets. The old ones should be removed and the best one
  should be fully implemented. the best approach so far being:

  - rendering widgets offscreen and blit copies on-screen(this is
  implemented and works well for webkit but not for sockets)

  - flesh out the gnome introspection approach, that i believe is the
  most promising. (its called "xwgir" in the code). When xwgir works
  properly, potentially any gtk widget could be used dynamically in an
  Emacs buffer.

  - event copying and propagation works well for webkit but oddly enough
  not for simpler widgets like buttons. this needs to be investigated,
  and is extra hard because Emacs has its own event handling.
- sockets are xtra hard(which I used for the Emacs-in-Emacs demo). I
  want to use the same approach as for the webkit case, but offscreen
  rendering and event propagation is especially messy in this case.  

Then we need to split up the branch in reviewable patches that can be
applied to trunk piece by piece. 

so, to summarize, "format" isn't quite the right word(but I think you
knew that), and theres more C than Lisp work. (OTOH, I want to remove
quite a lot of C code and turn it into Lisp)
> 2. Where do I need to apply to have the right to contribute those
> changes to emacs at all? I understand I need to sign away a
> contributor agreement with the FSF, I have no problem with that (and
> my employer is eager to, being a FLOSS company) but what do I need to
> do exactly?

You need to fill out a form that the FSF copyright clerk will send to
you. This takes some time. I dont remember how I got mine, so someone
else will hopefully chime in. 

> sorry for the wall of text
> Have a nice day

Joakim Verona

reply via email to

[Prev in Thread] Current Thread [Next in Thread]