[TxMt] Re: [OT] BBEdit, virtues thereof
Chris Thomas
chris at cjack.com
Mon Mar 21 07:23:47 UTC 2005
On Mar 20, 2005, at 12:36 AM, Allan Odgaard wrote:
> On Mar 20, 2005, at 5:06, Chris Thomas wrote:
>
>> MPW-style worksheets are basically Terminal in a text window [...]
>> This would be a great thing to have in TextMate.
>
> Agree -- initially I dropped this item because I thought I'd have
> to do terminal emulation, which I still wait for some knight in
> shining armor to write for me. But I guess in majority of cases,
> this isn't necessary!?!
On reflection, there are different issues bundled up in the concept
of 'worksheets'.
(*) MPW-style worksheet capability is sort of separate from the
question of terminal emulation. The salient features of MPW as far as
I can remember are these:
- Per-window autosave-on-close (window always saves itself on close).
MPW had one 'Worksheet' window that was always open, but you could
create essentially any number of them by setting the autosave-on-
close per-window variable.
- Bind the execute-command-in-shell key to Enter (no modifiers) and
Command-Return.
- Redirection to a specific window. If I specify a pathname while
piping ("echo something | tm /path/to/file"), open a window for that
file and direct the output of the pipe to it. Probably want both
append and replace command-line options. If the file is already open
in TM, just bring the window to front. [In MPW, because the shell
language was intimately bound into the application, you'd actually
just redirect to the path of an open file using standard shell append
and replace redirection, and the output would appear in the file's
window, no intermediate tool required.]
(*) Full terminal emulation, sufficient to -- say -- run emacs,
doesn't make sense to me; Terminal and iTerm are fine. Others may
disagree (vehemently :). The question is what value TM can add to the
experience. Really basic interactivity -- sufficient to run language
interpreters -- is probably more interesting. irb with syntax
highlight and other features of TM's editor. I _think_ what you'd do
is allocate a psuedotty and do line-buffered input, i.e. do not send
each character, instead send a full line to the input pipe when the
user presses return. This does not handle all possible command-line
interactivity, but it ought to work for all the cases that are
interesting for a text editor/IDE, and also for some standard tools
like gdb and ssh. [I wonder what happens in the cases where it
doesn't work, though.]
My thoughts,
Chris
More information about the textmate
mailing list