Cull v0.1

Earnest Cull
Download Cull 0.1


What is Cull?

Screenshot
I am going to date myself here. And no I don’t mean in the “taking myself to dinner and a movie in the hopes I get lucky” meaning.

I used to work on mainframes. Cobol, TSO, and ISPF. For those of you who don’t know, instead of having a PC on your desk, you used to have a terminal. A keyboard and a monitor attached to the mainframe. When you hit enter, the whole screen would be submitted to be processed and you could often do several things a one time. ISPF was the ‘display engine’, through a combination of templates and its own goofy language, you could make interfaces. There was an editor which I cannot imagine that I used to get anything done on. You would get a page at a time with space to the left of each line that you put place editing commands on (delete this line, move this line and the 3 after, etc.) and when you hit enter, it would send the whole page, applying any changes you made as well and any editing commands and then send back the page. Really. I’m not making this up!

As I said, I find it hard to believe that I ever got any coding actually done, but I recall doing quite a lot. Bizarrely, when the transition to PCs began, there were PC versions of this editor so we wouldn’t have to learn a whole new editor.

Anyway, to get somewhere vaguely near the point, one thing I actually miss about it was what you would get when you did a find on something. You would get back a ‘collapsed’ version of the file where only the matching lines were shown and the non-matching were collapsed to something like “<+ 12 lines not displayed +>”. You could also have it display a few line around the match for context. Cull replicates this to a small extent.

What's it written in?

Cocoa. And Python. The actual guts are a python script (Contents/Resources/cully.py in the application bundle) which is fully functional as a standalone from a shell. Actually you have a finer level of control over it via a shell. So its a Cocoa wrapper around a shell script.

What whizzo features does it have?

None. None whatsoever. (see section after next) You can specify the item to search for in the open dialog, and in the document windows, you can ‘recull’ a file with a different search string and/or change whether omitted lines are displayed and how many surrounding lines should be shown.

The search item can be more than just a string, it can be a regular expression (as understood by Python).

What sort of system requirements does it have?

Through an extensive, lengthy, and comprehensive* testing cycle, Cull has been certified to run on my machines. So as long are you are running it on one of my Macs, you are in the clear. Otherwise I can’t promise anything. I guess it should run on 10.3.2 as that is what I am running, might run on earlier but I really can’t say. Let me know how it works out for you, OK? (See the next section regarding the blasé attitude).

(*extensive = imagined, lengthy = “while staring”, comprehensive = “at a funny downloaded video”)

What does it cost?

Cost? Funny. As I have ranted on about in other venues, not every crappy little piece of software someone writes needs to be $19.95 shareware, and indeed, most of it should not be. Now that being said, if you want to give me money, by all means do, don’t let me stop you. I’m not stupid. Damaged goods perhaps, but not stupid.

What if I think Cull is REALLY useful except for it needing this critical feature?

Let me know. You might get it. Just as probable that you might not, but what the hey, what do you lose sending an e-mail beyond a few precious seconds of your life that you can never, ever get back. Ever. Never.

Any known problems, like crashes or causing severe retardation?

Sometimes, due to what appears to be a slightly temperamental implementation of NSTask, sometimes the results of the search don’t show up. Just hit the ‘Cull’ button again.

Addenda: I think I have this fixed, so if you see it, it must be just you.