Writing

Feed Software, technology, sysadmin war stories, and more.

Saturday, September 24, 2011

Text editors through the years, and my little "secret"

Back on the C-64, we sent text files around as "sequential files". They were the sort of thing you couldn't just "LOAD" into memory. That only worked on tokenized BASIC programs and some custom assembly stuff (with that trailing ,1 to preserve the address, naturally).

In those days, if you wanted to read or write a file like that, you had to go dig up a program to do it or write one yourself. It was annoying, since you had to load that program from one disk (slow), then swap in the data disk with your file and load that (also slow). Maybe this is why our BBSes tended to have so many "info" files online -- the sections called bulletins, information, library, "g-files', or whatever. It was actually easier than doing all of that other stuff locally!

I don't even remember what programs I would use to do that stuff on my local system. It was such a pain that it happened as infrequently as possible. I didn't start worrying about programs like that until my move to the DOS world.

Over there, things were different. First of all, the disk-swapping days were over, courtesy of affordable hard drives. I started out using something I found on the system by reading its manual: a little program called edlin.

It wasn't pretty but it did let me edit text files. That let me start doing things like writing batch files, again with the help of the DOS reference manual. Those were my earliest creations on that system.

Somewhere along the line, this massive PC Magazine book appeared in my life. It contained a floppy which had a bunch of weird little utilities. You could capture your LPT ports to a file, or play around with colors and sounds, or ... you could edit files! Yep, their collection included something called ted.

With ted, now I could actually use the cursor keys and cruise around a file using my whole screen. This kind of interface was much nicer than edlin, so I stuck with it. I kept using this for several years until I hit a snag: ted and my sysop-centric mail reader program did not get along. For whatever reason, it just would not behave properly. Rather than juggling two editors, I just switched... to QEdit.

QEdit was a natural move from TED. It kept me happy until I got into the world of Unix systems. That's when things got ugly.

vi was giving me fits by ignoring my cursor keys, and I won't even get into the whole insert mode vs. everything else mode. emacs would let me edit stuff and even save, but I couldn't figure out how to exit! All of this meta-this, meta-that didn't make much sense from my terminal: a rare Mac with an Ethernet card and NCSA telnet at my school. I finally had to ^Z out and kill the process when I was done.

This went on for a couple of days until I realized that I had a good editing experience while sending mail in Pine. I looked around, and there it was: pico, just the editor from pine, available for general purpose work! I was back to my full-screen, cursor-key using, able-to-exit productive self.

In the years which followed, pico was effectively replaced by nano for me, as it worked its way into the various base installs of systems I used. The licensing issue made no difference to me, but having it just be available instead of having to install pico every time I built a new box was nice.

So here we are in 2011, and you'd think I'd be using some other editor. Nope. I'm still using nano. It's probably the longest stint with the same editor experience, since pico and nano are interchangeable for me now. I'm typing this on a Mac in a terminal window, with nano running in that. All of my code? nano. README files and other docs? nano. *roff man page gunk? nano. Whatever.

People look at me funny when they look over my shoulder and see it. I'm getting tired of explaining that yes, I found something that worked, and it still works for me. Now I've moved on to creating things with my tools, rather than just fixating on the tools themselves. Who cares how you do it if it works for you? Show me what you've done with it.

Side note: I learned enough vi to be useful while doing my sysadmin-for-hire support job. It would have been irresponsible to not, given that installing an editor on someone else's machine just to twiddle some characters in a text file is right out.

Yo dawg