HomeSite Help

Code editing tools

 

We're moving!

This whole site is being moved to a shiny new server - as are all my sites, in fact. Apologies for the bumpy road ahead, but at the end of that road things will become fast and smooth.

Once the site at the new server is ready, this message will automatically disappear!

Meanwhile, you can see how the move is progressing at the status page.

 
   Home | HTML section | VTML section
On this page:
Introduction
How do you choose?
What can they do?
Downloads
 
 

Introduction

HomeSite and ColdFusion Studio offer several options for working with HTML and other tag-based code. Apart from directly typing your code into the editor window, HomeSite 3.01 and ColdFusion Studio 3.11 have Tag Insight and Tag Editors for entering and editing tags; there is also the Tag Chooser to select a tag for inserting into your code. In the versions 4.0 of these programs we now also have Tag Inspector, a property-sheet type interface.

All of these tools have distinct advantages and disadvantages. For some people speed is important and I have some thoughts about that, and how to choose your tools for speed. The table below will give you a quick overview of what you can do with these tools (and what not). Note that this overview does not treat Design View in versions 4.0 of the programs since you're not directly working with code there; I consider only what you can do with your code in the Editor window.  to menu

 
 

How do you choose?

Most people use a mixture of tools; most people never use some of the tools. Most people also mention that speed is important.

The question is: which speed?

  • In many cases simply typing your tag or simply typing or pasting the new value for an attribute is probably fastest.
  • For entering a new tag you can either use Tag Insight, or use Tag Chooser to select a Tag Editor. What's faster? It probably depends on the number of attributes (if any!) and how well you know your way around Tag Chooser and the Tag Editors.
  • For adding a single attribute to an existing tag without touching any other attributes Tag Inspector is probably the fastest way, immediately followed by Tag Insight, and a Tag Editor last.
  • For editing the value of a single existing attribute Tag Inspector will probably beat a Tag Editor.
  • For editing the values of several attributes, removing some, adding some, Tag Editor may beat Tag Inspector.

All of that speed is with creating code, however. What of maintaining it?

  • Hand-typed code carries a larger risk of typos - make sure you use the validator (the built-in one or CSE).
  • Tag Insight lets you add attributes at the place of your cursor so you can maintain consistency in the order of attributes: a great help if you need to do some Search-and-Replace changes. At the same time it doesn't help you with the order of attributes, it just doesn't get in the way.
  • Tag Insight also happily inserts multiple occurrences of the same attribute leading to hard-to find bugs - make sure you use the validator (the built-in one or CSE).
  • Tag Inspector will let you remove required attributes and enter different values where only ones from a limited set are actually allowed - make sure you use the validator (the built-in one or CSE).
  • Tag Inspector always enters a new attribute at the end of a tag: maintaining a consistent order of attributes becomes impossible. Changing combinations of attributes across your code with (Extended) Search-and-Replace will require great skill with regular expressions; and of course your code becomes harder to read.
  • Tag Inspector will not remove attributes that have default values or ones that are made irrelevant by others: that slows down not only your reading and understanding of what you've done - it also slows down the loading of the web page.
  • A Tag Editor can make sure you enter only values from a pre-defined list.
  • A Tag Editor can show you which attributes are required and make sure they are always written - if you don't enter a value the validator will catch you error.
  • A Tag Editor can remove irrelevant attributes or attributes with default values: you get tighter and more readable code.
  • Tag Editors can always maintain a consistent order of attributes - a great help for (Extended) Search-and-Replace changes; and your code is more readable when you know where to look for what.

If initial coding speed is all that matters, a combination of Tag Insight and Tag Inspector is likely to give you most speed. But if maintainability (including all the time spent reading code!) becomes important, you may be better off using Tag Editors all the time. May be? Yes, notice all the times I use "can" in the list above: Tag Editors can do a lot to help you create and maintain legal, consitent, and tight code - but they need to be designed to do that for you. Allaire's Tag Definitions were not - and the set is quite incomplete, particularly for HTML and VTML. My Tag Definitions certainly were designed to give you all that help and consistency.  to menu

 
 

What can they do?

The table below will give you an overview of what's possible (and what not) with the various code-editing tools. It's not meant to be an exhaustive summing-up of features; it will not only give you an idea of what is (im)possible with these tools and also illustrate to what a large extent these tools are dependent on the data files (.vtm) they use as information. Do you get the impression that Allaire itself has never quite realized the power of the VTML language and Tag Editors defined with them? I did. "Mine" generally refers to my HTML Tag Editors/Definitions but there's a set of VTML Tag Definitions as well.

Note that the column Tag Insight/Mine refers only to the version for HomeSite 4.0 and ColdFusion Studio 4.0 where the information is controlled by the Tag Definition; in the older versions Tag Insight is controlled by a separate file for which I don't have an update (nor do I plan to make one).

Some entries have extra comments in the form of tooltips (Netscape will show only the ones for the graphical markers, Internet Explorer shows all of them). The table is rather large and may cause horizontal scrolling in small window sizes.

 
  Tag Chooser Tag Insight Tag Inspector Tag Editor
  Allaire's Mine Allaire's Mine Allaire's Mine Allaire's Mine
Choosing which tag to insert Yes Yes N/A N/A N/A N/A N/A N/A
Entering a new tag N/A N/A After typing first part After typing first part No No Yes Yes
Editing an existing tag N/A N/A Yes Yes Yes Yes Yes Yes
Editing an existing attribute N/A N/A No No Yes Yes Yes Yes
Classification of tags (Partly) Yes N/A N/A N/A N/A N/A (Partly)
Show browser-specific tags No Yes N/A N/A N/A N/A No Yes
Show difference tags with/without Tag Editor No Yes N/A N/A N/A N/A N/A N/A
Show required attributes N/A N/A No No No In Categorized view No Yes
Ensure required attributes are written N/A N/A No No No No (Partly) Yes
Prevent double attributes N/A N/A No No Yes - but buggy Yes - but buggy Yes Yes
Ignore or remove irrelevant attributes N/A N/A No No No No No Yes
Show browser-specific attributes N/A N/A Color coding in version 3.x only
Color coding in version 3.x only
In Version view - but only partly In Categorized view Rarely Yes
Attributes easy to locate N/A N/A Type first character Type first character Better in Categorized view Better in Categorized view Inconsistent Yes
Show browser-specific attribute values N/A N/A No Yes No Yes No Yes
Enforce consistent order of attributes N/A N/A But controlled by cursor position But controlled by cursor position New attribute always at the end New attribute always at the end Partly Yes
Limit choice to listed values N/A N/A Not possible Not possible Not possible Not possible Possible Wherever applicable
Flexibility in quoting N/A N/A No No No No No Yes
Generate list values for attributes N/A N/A Existing list can be destroyed when editing Existing list can be destroyed when editing Existing list can be destroyed when editing Existing list can be destroyed when editing Existing list can be destroyed when editing Yes
Generate initial content tags N/A N/A No No No No No e.g. FORM: Select and Radio

Want to read more? Read more about my HTML Tag package! Tempted to try mine? See below!  to menu

 
 

Downloads

Interested in using my Tag Definitions? This is what is available now: