[Tutor] Remaking Vim in Python (was Python Editors)

2005-09-23 Thread Ed Singleton
I'd like a little advice on whether I'm being really stupid here.

Having researched editors and stuff, I've not quite found what I'm
looking for, though Vim comes close (except that it's extremely
difficult to work out what to do with it).

My instinct was to try and write a small program similar to vim, but
in Python.  The very basics should be quite easy.  If I start a system
that is very easily expandable then as and when I need further
functionality I can add it in.

html colourisation and auto-completion should be easy enough to add
using a html parser, but what about python?  Is there a python module
that can parse python code and is reasonably easy to use?  Also, css?

I know it would be ambitious to try and do this, but is it stupidly ambitious?

Ed
___
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Remaking Vim in Python (was Python Editors)

2005-09-23 Thread Kent Johnson
Ed Singleton wrote:
 I'd like a little advice on whether I'm being really stupid here.
 
 Having researched editors and stuff, I've not quite found what I'm
 looking for, though Vim comes close (except that it's extremely
 difficult to work out what to do with it).
 
 My instinct was to try and write a small program similar to vim, but
 in Python.  The very basics should be quite easy.  If I start a system
 that is very easily expandable then as and when I need further
 functionality I can add it in.
 
 I know it would be ambitious to try and do this, but is it stupidly ambitious?

You might consider starting from one of the existing editors written in Python, 
e.g. IDLE, eric3, spe, DrPython, scite and modifying it to suit. Writing an 
editor is a big project. OTOH most of these editors probably started out with 
some developer scratching an itch. So I'm not sure I would call it stupidly 
ambitious...

Kent

___
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Remaking Vim in Python (was Python Editors)

2005-09-23 Thread Marcin Komorowski
Ed,
Before you dive into a full-fledged editor development project you might 
want to consider an existing extendible platform like Eclipse.  It is much 
more than just an editor, i.e. it is an advanced IDE platform.  The sweet 
thing is that it allows for developing plugins to add functionality.  I have 
not tried it, but someone already developed a vi input mode plugin for it.

Cheers,
Marcin
- Original Message - 
From: Kent Johnson [EMAIL PROTECTED]
Cc: tutor@python.org
Sent: Friday, September 23, 2005 9:52 AM
Subject: Re: [Tutor] Remaking Vim in Python (was Python Editors)


 Ed Singleton wrote:
 I'd like a little advice on whether I'm being really stupid here.

 Having researched editors and stuff, I've not quite found what I'm
 looking for, though Vim comes close (except that it's extremely
 difficult to work out what to do with it).

 My instinct was to try and write a small program similar to vim, but
 in Python.  The very basics should be quite easy.  If I start a system
 that is very easily expandable then as and when I need further
 functionality I can add it in.

 I know it would be ambitious to try and do this, but is it stupidly 
 ambitious?

 You might consider starting from one of the existing editors written in 
 Python, e.g. IDLE, eric3, spe, DrPython, scite and modifying it to suit. 
 Writing an editor is a big project. OTOH most of these editors probably 
 started out with some developer scratching an itch. So I'm not sure I 
 would call it stupidly ambitious...

 Kent

 ___
 Tutor maillist  -  Tutor@python.org
 http://mail.python.org/mailman/listinfo/tutor
 


___
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] Remaking Vim in Python (was Python Editors)

2005-09-23 Thread Andrei
Ed Singleton wrote:
 My instinct was to try and write a small program similar to vim, but
 in Python.  The very basics should be quite easy.  If I start a system
 that is very easily expandable then as and when I need further
 functionality I can add it in.

I'd say it's better to either adapt an existing editor or write a new 
editor from scratch, but using an existing editor component. Under 
wxPython you could use the Scintilla control. This approach is much less 
time consuming than writing your own text editor control which will most 
likely end up either being less powerful than what you'd get for free if 
building on existing functionality. Text editors are more fiddly than 
you might expect, because they offer a lot of functionality people don't 
even notice is there until they come across one which lacks it. E.g. I 
avoid IDLE and Leo simply because I don't like their editing components.

You might even be interested in customizing Vim itself. I don't know 
what your goals are, but you could e.g. look at Cream 
(http://cream.sf.net) for a more user-friendly Vim.

 I know it would be ambitious to try and do this, but is it stupidly ambitious?

It's not stupidly ambitious, but odds are (simply based on the amount of 
editors out there and the features they have) that you'll end up with 
not much more than a slightly fancy notepad. This can of course still be 
a useful learning exercise, but if you want to have an editor in which 
to be productive, it's probably better to invest some time in learning 
to use one of the existing options. Whether it's Spe, Scite, Komodo, 
Vim, Emacs or whatever else suits you, is not very relevant.

-- 
Yours,

Andrei

=
Mail address in header catches spam. Real contact info (decode with rot13):
[EMAIL PROTECTED] Fcnz-serr! Cyrnfr qb abg hfr va choyvp cbfgf. V 
ernq gur yvfg, fb gurer'f ab arrq gb PP.

___
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor