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

Steve Willoughby steve at alchemy.com
Fri Aug 15 23:41:11 CEST 2008


Alan Gauld wrote:
> 
> "Lie Ryan" <lie.1296 at gmail.com> wrote
> 
>> I've seen vi(m) being praised a lot, well, personally the thing that I
>> hate the most about vim is its directional button (khjl) which is
>> unnatural
> 
> But very logical and easy to remember when you recall
> that ^H was backspace (go left), and ^j was linefeed
> (go down)  and the typists home position has the right hand
> on ,j,k,l, (and if you use your imagination K looks a bit like

Not only that, but a lot of early terminals actually had arrow symbols 
printed on the h j k l keycaps, so no imagination necessary :)

So a lot of it is tradition mixed with convenience (even if they're not 
strictly on the home positions, they're very easy and natural to get to 
as opposed to more mnemonic key bindings like ^P or ^N or whatever). 
Arrangements like wasz would probably have worked fine too but just 
didn't happen to.

> Remember that the default mode in vi is "editing mode" with is actually
> where you type commands. The mode you call editing mode is
> actually insert mode and only applies for the duration of a command.
> Thus it is logical, from command mode, to enter a command, enter trext
> and then hit ESC to escape from insert mode back to the native
> editing/command mode. You have to get used to the idea that inserting
> text is not the default activity, navigating and changing text is - 
> which is
> what most programmers do most of the time. So a command in
> vim consists of:

I guess this is where having come from TECO before learning vi paid off 
for me, so that was really ingrained by then :)

> But the whole point of vi/vim is that you are required to change your
> way of thinking about text editing. It is a different approach in the
> same way that Lisp or Prolog  or SQL are very different approaches
> to programming from Python. There is no escaping the fact that
> vi/vim are very powerful but only after you invest heavily in learning
> their ethos. Until you do they will drive you nuts! But if you use
> them regularly that only last a week or so... :-)

And that's an excellent point with regard to languages too.  Learning a 
new language is always a good thing to do if it changes how you look at 
programming.  Only knowing how to edit text in one fashion with one tool 
makes as much sense as only knowing one way to write a program, in one 
language.

--steve


More information about the Tutor mailing list