[TextMate] TextMate first impression (longish)
Luc Heinrich
lucsky at mac.com
Wed Oct 6 22:32:09 UTC 2004
Greetings,
(this was cc-ed to feedback at macromates.com and contains screenshot
attachments, which I hope the ML server won't strip out).
A little background first: I'm a long time BBEdit user, I think that
it's a great product but I also think that it really starts to show its
age. It really looks like the BareBones guys are trapped in the
technology they used from day 1 and that if they'd want to get fresh,
they'd have to restart from scratch, which they probably won't. That's
why TextMate looks promising, and because it's built on top of modern
technologies it has the potential to become really great.
However, this v1.0 looks like nothing more than a good draft to me.
Yeah, shoot me, but that's David's hyping machine fault... :p
So here's a first batch of random comments about my first impressions.
They are mostly cosmetic and usability related, since I didn't really
used the product a lot yet, but I'm pretty sure I'll have some more as
time goes by.
- Ok so, I'm one of those who was very surprised not to find a
preferences dialog. When you think about configurability, you usually
think about preferences. I just saw a post about this on the MacroMates
blog, so let's just avoid this subject right now.
- Now let's go straight to the GUI itself. Here's a screenshot of a
TextMate default window (with my own default background color):
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TMDefaultWindow.png
Type: image/png
Size: 34459 bytes
Desc: not available
URL: <http://lists.macromates.com/textmate/attachments/20041007/da1a4709/attachment.png>
-------------- next part --------------
What I see here:
+ The color contrast between the gutter and the text area is pretty
low so the distinction is hard.
+ The gutter can only have 4 digits line numbers (no, files larger
than 9999 line are not that rare).
+ The (orange) wrap column line is almost invisible.
+ The lower status bar has loads of useless empty space.
+ The empty corner at the intersection of the scroll bar looks, well,
empty.
Here's my (photoshop) take on this:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TMDefaultWindow2.png
Type: application/applefile
Size: 16845 bytes
Desc: not available
URL: <http://lists.macromates.com/textmate/attachments/20041007/da1a4709/attachment-0001.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TMDefaultWindow2.png
Type: image/png
Size: 36197 bytes
Desc: not available
URL: <http://lists.macromates.com/textmate/attachments/20041007/da1a4709/attachment-0002.png>
-------------- next part --------------
+ A simple gray line to separate the gutter from the text area.
+ The gutter is a bit larger to allow 5 digits line numbers.
+ The outside limit of the wrap line is drawn in the same color than
the text area but with a lower brightness (that's currently how BBEdit
8 does it, it looks really nice imho).
+ The status bar is collapsed and put at the same level than the
horizontal scroll bar, saving lots of empty space. The left indicator
is the current line number, the right indicator is the column number
(again, that's how BBEdit does it, but they do it for a good reason).
Small icons could be added to make this more obvious.
+ No more weird empty corners.
Doesn't this look much tidy and cleaner like that ?
Let's move on to the project window. Here's how a basic project
currently looks in TextMate:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TMProjectWindow.png
Type: application/applefile
Size: 17560 bytes
Desc: not available
URL: <http://lists.macromates.com/textmate/attachments/20041007/da1a4709/attachment-0003.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TMProjectWindow.png
Type: image/png
Size: 46173 bytes
Desc: not available
URL: <http://lists.macromates.com/textmate/attachments/20041007/da1a4709/attachment-0004.png>
-------------- next part --------------
What we have here:
+ Weird looking tabs. They're not even tabs actually, and they really
look like they're quick hacks to me.
+ Weirdly sized icons in the drawer list.
+ (same comments than above for the text window itself).
Here's my take on this:
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TMProjectWindow2.png
Type: application/applefile
Size: 16845 bytes
Desc: not available
URL: <http://lists.macromates.com/textmate/attachments/20041007/da1a4709/attachment-0005.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TMProjectWindow2.png
Type: image/png
Size: 76586 bytes
Desc: not available
URL: <http://lists.macromates.com/textmate/attachments/20041007/da1a4709/attachment-0006.png>
-------------- next part --------------
+ Tabs looking like tabs (actually stolen from NetNewsWire and
resized a bit).
+ Smaller icons in the drawer list allowing for a more balanced look
(quite impressive to see what a couple more pixel space can do uh ?).
+ Folder name is bold.
+ (same modifications than above to the text window).
Let's move on to features:
- Find and replace feature:
+ There should be a "Use selection for replace" menu shortcut.
+ There should be a "Replace" menu shortcut.
+ There should be a "Replace all" menu shortcut.
+ There should be a "Replace and find next" menu shortcut.
All these would allow to perform basic search & replace operations
straight from the keyboard, *without* having to open the find panel at
all.
- I guess that you guys already know that and are already preparing
something to fix this problem, but I'll say it anyway: having to
manually go and edit plist files from the guts of the app to have some
decent colors (relax, I'm kidding, I just don't like thos ugly black
backgrounds) is ridiculous. Tell me you're working on something before
I start my own Cocoa 'tmbundle' editor.
- Something which I found pretty weird: each tmbundle defines its very
own color settings right ? So if I want to have the same background
color for *all* languages I have to change *all* tmbundle syntax files,
right ? Wouldn't it be much simpler to have "default" settings which
each tmbundle would inherit from and could then override or not ? So
just like CSS elements can inherit from their parents, a syntax file
could either inherit attributes from the defaults, or override with its
own values. That would greatly simplify the whole coloring settings I
think. Thoughts ?
- Another pretty obvious one: there is no "function popup", or any
other way to quickly navigate through the list of functions or methods
of a code file, or the structure of a markup file.
- Snippets are great, but the snippet menu is already pretty crowded. I
think that allowing snippets to be grouped in families (based on the
tmbundle they're coming from, to begin with) or categories or whatever,
could help minimize the clutter. Ditto for macros and commands.
- How about the ability to have the snippets, macros and commands in a
palette ?
- How about giving some basic abilities to a command to specify when it
is actually applicable ? A command menu item (or palette entry ;))
could then be disabled if it is not. For example, the "Compile" command
does not make sense for a '.html' file, or the "Reload in Safari"
command does not really make sense for a '.rb' file.
- Being able to write commands in something else than shell scripts
could be cool. Like, being able to directly write applescript instead
of having to go through 'osascript' commands.
- Hey, you seem to have pretty good text editing widget (that
OakTextView thingy), so why not also use it for command editing ? Heck,
why not even also use it for colored regexp editing in the find panel ?
- Detail: it seems like a lots of ATSUI related debug messages are
still being sent to the console.
- Snippets, macros and commands are good ways to automate a lot of
stuff, but are there any plans to allow TextMate plugins, for those
tasks which would require an elaborate GUI ?
Oh, and one final comment: I *R*E*A*L*L*Y* *H*A*T*E* the icon. It's
butt ugly. Really. Heck, you have John 'Magic' Marstall on the mailing
list, I'm pretty sure he could do something about this :))
--
Luc Heinrich - lucsky at mac.com - http://www.honk-honk.com
More information about the textmate
mailing list