unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Fabian Ezequiel Gallina <galli.87@gmail.com>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: Emacs-Devel devel <emacs-devel@gnu.org>
Subject: Re: A new major-mode for Python
Date: Wed, 16 Feb 2011 03:46:47 -0300	[thread overview]
Message-ID: <AANLkTinr3Z3aGfNm=dDwC4wiRJrgMDeZ+867m6jZSZp4@mail.gmail.com> (raw)
In-Reply-To: <jwvipwkvs9b.fsf-monnier+emacs@gnu.org>

2011/2/15 Stefan Monnier <monnier@iro.umontreal.ca>:
>> I have come up with a *new* major-mode[1] for Python
>
> Help!!!
>
> More seriously.  Rather than a new python mode I'm interested in
> a maintainer for our python mode (i.e. someone who will fix bugs in it,
> add new features, and will accept to work with us when we want to make
> changes that he does not like, typically to make it behave in a more
> standard way).
>

At first, I started to hack on python.el, I even integrated it
with ipython. But then I realized lot of things were implemented
in a really complicated manner for a newbie like me and I was
struggling to make it work as I wished.

For instance I never liked the shell integration, and when I tried to
simplify it into something more like python-mode.el, but with the
possibility to launch dedicated shells for files, I found myself
fighting with the code instead of feeling comfortable to build upon
it.

I also felt lot of stuff were not necessary. Mainly the need of an
external python file to interact with the shell (coupling the shell
integration to an specific python version), all jython specific code
and the Bicycle Repairman integration.

It was at that time I started thinking in writing a python mode from
scratch in order to have a *clean* working version of the things I
expected from it. The result is this thing I uploaded to github :)

> So rather than replace our python.el with yours, I offer you to take
> over maintainership of our python.el.  This may sound like a crappy
> offer (why would you maintain some old code you don't like when you
> already have your own that works better, right?), but note that, as
> a maintainer of our python.el, you'll have the opportunity to replace
> pretty much any of "our" code with yours, thus morphing our python.el
> into yours.
>
> Another way to look at it, is that I'm asking you to take a "diff
> old-python.el new-python.el" and cut it into manageable and meaningful
> patches, so it is easier to see that it is moving forward.
>
> Or maybe, what I'm asking really is to merge our python.el with yours.
>

The possibility of being the maintainer is never a crappy offer, but
I'm really scared about the effort we would put into doing the kind of
merge you propose, I can't really see that approach as
productive. (The mode I wrote shares *very little* code with trunk's
python.el)

However since this mode implements the most important features from
python.el I think we can provide some define-obsolete-function-alias,
define-obsolete-variable-alias in order to keep it the most compatible
as possible.

I'm willing to add/re-implement ffap, python-check, skeletons. But I
can't think of a good reason to add Bicycle Repairman again.

When that stuff is done the new python.el would contain all the
features of the previous one while adding an important one:
compatibility with python 3 (even when using the default shell setup)

So in shorter terms what I'm willing to do is:

   1) Re-implement ffap, python-check, add some skeletons

   2) Set several define-obsolete-{variable,function}-alias(es) in
      order to add a some nice compatibility to trunk's python.el

   3) Maintain this stuff :)


What do you think? It still sounds like a bad idea?


Thanks,
-- 
Fabián E. Gallina
http://www.from-the-cloud.com



  parent reply	other threads:[~2011-02-16  6:46 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-15  8:05 A new major-mode for Python Fabian Ezequiel Gallina
2011-02-15 22:52 ` Stefan Monnier
2011-02-16  1:44   ` Chong Yidong
2011-02-16  6:46   ` Fabian Ezequiel Gallina [this message]
2011-02-16 15:20     ` Stefan Monnier
2011-02-16 15:34     ` Chong Yidong
2011-02-16 14:23 ` Neal Becker
2011-02-17 18:12   ` Fabian Ezequiel Gallina
2011-02-17  4:04 ` m h
2011-02-17 18:36   ` Fabian Ezequiel Gallina
  -- strict thread matches above, loose matches on Subject: below --
2011-02-17  3:58 Christoph
2011-02-17 18:22 ` Fabian Ezequiel Gallina
2011-02-18  0:31   ` Christoph
2011-03-28 22:55     ` Fabian Ezequiel Gallina
2011-03-28 23:21       ` Christoph Scholtes

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

  List information: https://www.gnu.org/software/emacs/

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

  git send-email \
    --in-reply-to='AANLkTinr3Z3aGfNm=dDwC4wiRJrgMDeZ+867m6jZSZp4@mail.gmail.com' \
    --to=galli.87@gmail.com \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /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 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).