On 06/10/2004, at 11:14 PM, timothy martens wrote:
Any plans for XHTML/CSS code hinting?
Tim,
I was just about to ask the same question... : )
Please don't take the following as carping complaints(!), just my initial (self-important) impressions! ; )
I was initially very enthusiastic about TM's potential *for my use* (i.e. not it's general potential), but I'm not so sure right now...
I see the underlying power of the text engine, and the macro/script execution, and RegEx/patterns, but it may need a few corners smoothed, for me to feel at home! : ) If I were a big user of Reg Ex, I'd probably feel differently.
TM feels decidedly techie to me; and IMHO will require a more 'complex' interface over time, to become my editor of choice, and to conversely, be easier to use... but it will probably be perfect for the more hard core coders, all those vi and emacs lovers! ; )
I'm afraid I find the auto-complete somewhat underwhelming; it seems pretty basic, and (I think) belies it's simple pattern-matching basis -- it doesn't display any knowledge of syntax (e.g. will suggest 'body' in the context of a div tag, instead of 'border'), and is strict in it's matching (will match 'cellS...' for cellSpacing, but not 'cells...' -- oh, and hitting Escape each time isn't the most ergonomic aspect of editing.
One area that really shines are the snippets. I've been playing with snippets, and obviously see the power in the trigger mechanism above the key commands that other editors use; it gives a pretty good semblance of an auto-complete feature with code hinting. The keyboard trigger is the key feature, as opposed to mentally mapping a keyboard command to a snippet (of which there is also a smaller pool of options.)
In particular the tab stops are one of the killer features I've been seeking in a 'syntax editor' for a long time; I would like this concept spread to the syntax (with my emphasise on X/HTML, CSS etc.), so that perhaps with a modifier, so as not to over-ride entering tabs, you are able to tab between editing points according to the syntax, i.e. tab from outside a tag, successively into the tag's attributes, into the 'label section' of appropriate tags (e.g. hrefs) and to outside the end angle to enter a new tag, or tab through subsequent tags.
This is how predefined snippets operate, and it's great. Consider typing html, to get:
<html> <head> <title>*TAB1*</title> </head> <body> *TAB2* </body> </html>
...but of course, at the moment, you've got to do the heavy lifting! It would take some time to enter a useful set of snippets, but I've started... If anyone else has, we must share!
Folding is nicely done, though it might be good to have some more obvious folding controls; while the 'Toggle Foldings at Level x' function is useful, some more basic Un/Fold All would be good, to also reset folds. (BTW might that command be better phrased 'Toggle Folds at Level x'?
I own skEdit, and really like it's auto-complete feature, which you might consider more traditional, in that it's implemented similarly to other apps (e.g. Dreamweaver, HomeSite); it suggests the likely tag *as* you type, with a drop down menu that is likewise filtered in real-time.
In comparing the features you quickly see that skEdit's approach augment's the user's knowledge and memory of syntax (either reminding/reinforcing, or teaching), whereas TM requires a mental mapping of not only specifics of syntax, but an additional aspect, in the triggers. It may just be my perspective on this feature (i.e. largely reliably, and strict syntax of HTML, vs. highly variable, creative arrangements of syntax in programming languages,) but I don't find this approach as convenient for X/HTML editing.
Having said that, once I had a full compliment of HTML snippets, defining my coding standards (e.g. always include certain attributes, like class, id etc.), I could see it feeling more efficient... I guess the problem becomes finding the balances between these two different approaches, but the way I envisage it, my snippent menu will go on for ever!
Snippets obviously come into their own when completing large blocks of code, such as an HTML document skeleton, and tables, I'm not sure that there are a reliable enough set of 'primitives' that I can use to make this more productive that syntax-specific hinting supported by snippets -- it all depends on the granularity of the snippets.
skEdit also offers rudimentary syntax awareness, in that once you've typed a tag, it will suggest (mostly) valid attributes for that element. This is an invaluable feature, and can assist in producing valid markup (similar in theory to entry control in database applications.) Ideally this would go further and strictly conform to the syntax (e.g. only allow a single class attribute per tag, etc.)
Anyway, it's has gone long enough -- I'll be interested to see how TM develops.
marc
On 06/10/2004, at 11:14 PM, timothy martens wrote:
Any plans for XHTML/CSS code hinting?
And what about browser previews other than the built in safari rendering?
Also, can we just have the project drawer show up by default. There's hardly ever an instance where I wouldn't need/want it in view.
-t
textmate mailing list textmate@lists.macromates.com http://lists.macromates.com/mailman/listinfo/textmate