unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* About GSoC 2013
@ 2013-04-22 12:32 xfq
  2013-04-22 12:59 ` Jambunathan K
  2013-04-22 15:08 ` Stefan Monnier
  0 siblings, 2 replies; 6+ messages in thread
From: xfq @ 2013-04-22 12:32 UTC (permalink / raw)
  To: emacs-devel

Hi,

Having used Emacs for almost 4 years, I am a Chinese student in Beijing,
and I have experience with both C and Lisp.  I'd like to work on Emacs
under the GNU umbrella for GSoC 2013.  There are several ideas:

* Improve VC
  There's a lot of work to be done there.  vc-pull, vc-push, vc-ignore,
  dealing with branches and so on.  I'm not quite familiar with VC, but
  it worth my time to investigate it.  I think Paul, Stefan, ESR and ttn
  are really good mentors on this idea.

* Guix support
  An Emacs interface to GNU Guix[fn:1], like Tom's `package.el'.

* emacs-xwidget
  Like Daimrod[fn:2], I'm also interested in contributing to the
  `emacs-xwidget' branch.  It will be great if Joakim can be my mentor.
  There's a lot of work to be done in this branch (I'm reading the long
  README.xwidget now), so Daimrod and me can work in the same branch
  with little conflict.  (Joakim will be pretty busy, tho.)

* Having tabs above a window to switch buffers in it.

* Extending text properties
** zero-width text properties
** Text property that says "don't break line in middle of this".
   Don't break the line between two characters that have the
   same value of this property.

* Set up a facility to save backtraces when errors happen during
specified filters, specified timers, and specified hooks.

* Maybe replace etags.c with a Lisp implementation.
  http://lists.gnu.org/archive/html/emacs-devel/2012-06/msg00354.html

* Merge ibuffer.el and buff-menu.el.
  More specifically do what's needed to make ibuffer.el the default,
  or just an extension of buff-menu.el.

* Add "link" button class
  Add a standard button-class named "link", and make all other link-like
  button classes inherit from it.  Set the default face of the "link" button
  class to the standard "link" face.

All these are just ideas (many of them are from etc/TODO), and of course
you can suggest something different for any of them.

I've already done the copyright assignment, and I'm already a member of
the emacs group on Savannah.[fn:3]

If you are interested in mentoring any of these projects (or you have
any other ideas), post it here (or contact me personally)!  Thank you.

Footnotes:

[fn:1] http://www.gnu.org/software/guix/

[fn:2] http://lists.gnu.org/archive/html/emacs-devel/2013-04/msg00486.html

[fn:3] https://savannah.gnu.org/project/memberlist.php?group=emacs


--
Best regards, Xue Fuqiao.



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

* Re: About GSoC 2013
  2013-04-22 12:32 About GSoC 2013 xfq
@ 2013-04-22 12:59 ` Jambunathan K
  2013-04-22 13:13   ` xfq
  2013-04-22 18:03   ` Aurélien Aptel
  2013-04-22 15:08 ` Stefan Monnier
  1 sibling, 2 replies; 6+ messages in thread
From: Jambunathan K @ 2013-04-22 12:59 UTC (permalink / raw)
  To: emacs-devel


> All these are just ideas (many of them are from etc/TODO), and of course
> you can suggest something different for any of them.

Stefan Monnier - the Emacs maintainer - has already indicated two
projects.  

Both concern overlays.  A very dedicated and an ambitious contributor
can, by pushing the limits, can even get intimate with the display
engine - apparently one of the holy grails.

1. Using interval trees for overlays 
   Programming language: C

   http://lists.gnu.org/archive/html/emacs-devel/2012-08/msg00308.html
   
2. Introduction of "text planes".  
   Programming language:  Mostly Emacs Lisp, may involve some C

   http://lists.gnu.org/archive/html/emacs-devel/2010-10/msg00177.html

For the most ambitious of the students,

3. Improving the performance of the display engine particularly for a
   typical Orgmode workload.

   Focus on Eli's followups in this thread.

   http://lists.gnu.org/archive/html/emacs-orgmode/2013-04/msg00696.html.

There may be some requirements on concurrent Emacs side.  I have never
seen a self-contained, well-defined work item myself.

Jambunathan K.





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

* Re: About GSoC 2013
  2013-04-22 12:59 ` Jambunathan K
@ 2013-04-22 13:13   ` xfq
  2013-04-22 18:03   ` Aurélien Aptel
  1 sibling, 0 replies; 6+ messages in thread
From: xfq @ 2013-04-22 13:13 UTC (permalink / raw)
  To: emacs-devel

On Mon, Apr 22, 2013 at 8:59 PM, Jambunathan K <kjambunathan@gmail.com> wrote:
> Stefan Monnier - the Emacs maintainer - has already indicated two
> projects.
>
> Both concern overlays.  A very dedicated and an ambitious contributor
> can, by pushing the limits, can even get intimate with the display
> engine - apparently one of the holy grails.
>
> 1. Using interval trees for overlays
>    Programming language: C
>
>    http://lists.gnu.org/archive/html/emacs-devel/2012-08/msg00308.html
>
> 2. Introduction of "text planes".
>    Programming language:  Mostly Emacs Lisp, may involve some C
>
>    http://lists.gnu.org/archive/html/emacs-devel/2010-10/msg00177.html
>
> For the most ambitious of the students,
>
> 3. Improving the performance of the display engine particularly for a
>    typical Orgmode workload.
>
>    Focus on Eli's followups in this thread.
>
>    http://lists.gnu.org/archive/html/emacs-orgmode/2013-04/msg00696.html.

Thanks for these pointers, I'll see them later.

> There may be some requirements on concurrent Emacs side.  I have never
> seen a self-contained, well-defined work item myself.

The concurrency concept is dimness to me: which form of concurrency
(locks, transactions, younameit)?

--
Best regards, Xue Fuqiao.



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

* Re: About GSoC 2013
  2013-04-22 12:32 About GSoC 2013 xfq
  2013-04-22 12:59 ` Jambunathan K
@ 2013-04-22 15:08 ` Stefan Monnier
  2013-04-22 22:57   ` Xue Fuqiao
  1 sibling, 1 reply; 6+ messages in thread
From: Stefan Monnier @ 2013-04-22 15:08 UTC (permalink / raw)
  To: xfq; +Cc: emacs-devel

> * Improve VC
>   There's a lot of work to be done there.  vc-pull, vc-push, vc-ignore,
>   dealing with branches and so on.  I'm not quite familiar with VC, but
>   it worth my time to investigate it.  I think Paul, Stefan, ESR and ttn
>   are really good mentors on this idea.

VC is in dire need of improvement, indeed.  I would welcome such
a project and would be happy to mentor.

> * Having tabs above a window to switch buffers in it.

That would be good as well, but only if the tab-widget can be placed
anywhere in the window tree (e.g. per-window, per-frame, or somewhere in
between) and can be used for different purposes (e.g. switch buffers in
a window or switch window-configs in a frame, or switch branches in
a VC-dir buffer).
There are existing branches providing some kind of tabs support already,
but they didn't get much traction.

> * Extending text properties
> ** zero-width text properties
> ** Text property that says "don't break line in middle of this".
>    Don't break the line between two characters that have the
>    same value of this property.

I'm not sure how useful these would be (the second point also seems
much too trivial for GSoC, it might not be much more than a two-liner).

But if you're interested on working around the text-property code,
I recommend the "using interval trees for overlays" and the
"text-property planes" suggestions already mentioned by Jambunathan.


        Stefan



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

* Re: About GSoC 2013
  2013-04-22 12:59 ` Jambunathan K
  2013-04-22 13:13   ` xfq
@ 2013-04-22 18:03   ` Aurélien Aptel
  1 sibling, 0 replies; 6+ messages in thread
From: Aurélien Aptel @ 2013-04-22 18:03 UTC (permalink / raw)
  To: Jambunathan K; +Cc: emacs-devel

On Mon, Apr 22, 2013 at 2:59 PM, Jambunathan K <kjambunathan@gmail.com> wrote:
> There may be some requirements on concurrent Emacs side.  I have never
> seen a self-contained, well-defined work item myself.

I don't know about the others but as far as I'm concerned, adding
concurrency in GNU Emacs seems very complex and if so few people
mentioned it in their ideas it's because it's daunting. As you said
it's a very open-ended problem. I certainly don't feel experienced or
knowledgeable enough to do it.



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

* Re: About GSoC 2013
  2013-04-22 15:08 ` Stefan Monnier
@ 2013-04-22 22:57   ` Xue Fuqiao
  0 siblings, 0 replies; 6+ messages in thread
From: Xue Fuqiao @ 2013-04-22 22:57 UTC (permalink / raw)
  To: Stefan Monnier; +Cc: emacs-devel

On Mon, Apr 22, 2013 at 11:08 PM, Stefan Monnier
<monnier@iro.umontreal.ca> wrote:
>> * Improve VC
>>   There's a lot of work to be done there.  vc-pull, vc-push, vc-ignore,
>>   dealing with branches and so on.  I'm not quite familiar with VC, but
>>   it worth my time to investigate it.  I think Paul, Stefan, ESR and ttn
>>   are really good mentors on this idea.
>
> VC is in dire need of improvement, indeed.  I would welcome such
> a project and would be happy to mentor.

Thank you.  I'll write a proposal about it and we can contact
personally.

--
Best regards, Xue Fuqiao.



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

end of thread, other threads:[~2013-04-22 22:57 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-22 12:32 About GSoC 2013 xfq
2013-04-22 12:59 ` Jambunathan K
2013-04-22 13:13   ` xfq
2013-04-22 18:03   ` Aurélien Aptel
2013-04-22 15:08 ` Stefan Monnier
2013-04-22 22:57   ` Xue Fuqiao

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