[Tutor] What has Editor X got that PyWin32 hasn't?

Alan Gauld alan.gauld at btinternet.com
Wed Aug 13 02:11:57 CEST 2008


"Jaggo" <jaggojaggo at gmail.com> wrote

> I haven't much experience with programming.
> 
> Why do you use your editor rather than using Pywin? 

Thats one of the most contentious issues in programming. 
Coders love their editors like other people love their pets!

> What feature has editor X got that PyWin hasn't?

PyWin is a pretty basic editor. Although its much better 
than Notepad and indeed better than IDLE it is still a long 
way short of the power that heavyweight editors like vim, 
emacs, eclipse and so forth have.

I use Pythonwin for most of my short programming tasks
(with occasional forays into other tools like PyCrust and 
SPE) but for serious programming I use vim. Why?

1) Split screen editing of single or multiple files
2) the ability to perform any edit command without taking 
my hands from the keybioard home positioon - very important 
for touch typists! (actually its a lie, I'm not a touch typist, 
but many coders are and its a big deal for them!)
3) integration with the OS. Piping bufrers through the shell, 
running shell commands into a buffer, use of grep to find 
and navigate to files etc
4) navigation around code using tags. GoTo Tag and 
autoloading a file is great.
5) macros. Being able to easily record a keyboard macros 
to automate repetitive tasks is fabulous
6) command repeat compbined with next search. Use the 
n key to go to the next search location and '.' to repeat 
the last editing command at that point is super fast.
7) syntax highlighting in multiple languages not just 
python means I can load SQL files, batch files, HTML 
files etc etc and they are all syntax coloured (Note that 
scintilla the editing widget used in Pythonwin does this 
but pythonwin doesn't use it!)
8) intuitive commands. Once you figure out the arcane 
logic used in the vi command set you can pretty much 
guess what any given command will be.
9) built in help system for the editor. The pythonwin help  
system is more interested in the COM programming etc. 
Its nowhere near as full as the vim help

Against that, pythonwin gains from:

1) easy to learn
2) familiar style to other windows apps
3) better debugger than vim
4) better code browser than vim
5) better collapsing mode than vim
6) better tooltip help

So as a beginner I'd stick to Pythonwin. Once you have got 
the language under your belt you can start lokintg at power 
editors. I'd probably start with Eclipse. It is a more modern 
design than vim but packed with power tools and lots of 
add-in plugins. It may not be quite as fast in pure productivity 
terms but its a lot less intimidating than either vim or emacs.

HTH,


-- 
Alan Gauld
Author of the Learn to Program web site
http://www.freenetpages.co.uk/hp/alan.gauld



More information about the Tutor mailing list