[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