I've tried many HTML authoring and editing tools, but I've never found one that does everything for me. Until now, I used SoftQuad's HoTMetaL PRO 3.0 to create Web pages. HoTMetaL PRO came close to meeting my needs, but I always fell back on Notepad to do my final tweaks. And if I had a Cold Fusion page or an Active Server Page (ASP) with server-side scripting, I had to rely on Notepad exclusively. Now I've found a Web development tool, Allaire HomeSite 2.5, that has everything I need in an HTML editor and then some. I looked at a pre-release version of HomeSite 2.5, and by the time you read this column, Allaire will have released the final version.
So what about HomeSite won me over? Although the list of features is long, HomeSite has a few key features that make it a must-use product. For example, you can color-code text, globally search for and replace text, and easily locate and open files with the product's Explorer-like directory pane.
The individual features that HomeSite brings together aren't unique to this package, but putting them all in one place is what makes this package so powerful and easy to use. One of the first features to grab my attention was the use of color-coded text in HomeSite's HTML edit workspace, as you see in Screen 1, page 166. The program lets you do everything in a Notepad text-like environment but with color annotations. (You might recall that color coding was one feature I really liked in my review, "Microsoft's Visual InterDev 1.0, Beta," March 1997.) HomeSite assigns each type of markup a color, which makes editing a file easy because you can quickly scroll through a page and find what you're looking for. To make a good thing better, you can customize this feature, as you can almost every other HomeSite feature. For example, I do a lot of server-side scripting, so I use red to make these types of edits stand out. In contrast, I use gray to mark the comments in my edits, because although placing comments in pages is an important habit to have, I don't need them distracting me while I'm editing or troubleshooting a page.
HomeSite's global search-and-replace capability blew me away. With this feature, I can search and replace within selected files or an entire directory. I don't have another tool with this capability. For example, imagine you are hard-coding all your tags in every file, rather than using cascading style sheets or server-side includes to establish your background color or image, and you want to change the look of the entire project. You can change each file, or you can use HomeSite to select the whole group of files, search for a particular tag, and replace it.
HomeSite's directory pane feature is convenient because it lets you see the directories and files you're working on. This feature means you don't have to click File, Open to open a file. In the directory pane, you simply find the file you want to open and double-click it. The directory pane has two parts to its view: an upper pane that shows directories and a lower pane that shows the files in the selected directory. You can customize the directory pane to show only the file types you want to see, which keeps the interface clean.
The directory pane includes a thumbnail image viewer. You can go into any directory, right-click in the file portion of the pane, and select View Thumbnails. HomeSite then builds a little window with thumbnail images of all the graphics in that directory. This feature comes in handy either when you forget the filename of an image or when you need to delete early builds of a particular image. Another nice feature of the directory pane is that when you move the mouse over a file, the bottom status bar displays the title tag text for that document. So, if you didn't make the name of the document obvious, you can always browse through your files with this feature.
Although these features are not necessarily HomeSite's best features, they're the ones that really got my attention. HomeSite includes plenty of other bells and whistles I can tell you about.
Bells and Whistles
Although I won't describe the rest of HomeSite's features, I'll address some of the most important ones. A handy feature is support for context-sensitive menus that you access by right-clicking the mouse. With a Web document open, you can right-click different places in HomeSite and have various options available to you. For example, if you right-click within a document, you can check the document's weight. This feature lets you see how long your page takes to display on the Web at different connect speeds. But what makes the right-click feature really nice is that you can right-click within a tag and see all the options available to that particular tag. For example, if you right-click a Font tag, you can select the font size, color, and face. This technique works with all markup tags that have options. You can even close a document from a right-click menu.
HomeSite also has a tabbed document interface that makes moving among open documents easy. The tabs of unsaved files display a red square to let you know which files you have not saved.
HomeSite's markup tag list is just a CTRL+E away. This pop-up window shows you just about every tag available. To select one, put the cursor at a destination in your document and double-click the tag from the tag list. In addition to HTML tags, you'll find a list of Cold Fusion tags and ASP tags.
What if you frequently reuse a combination of tags? With HomeSite, you can create your tags just once and place them on a custom toolbar. You can even have six different themes for your custom tags--HomeSite provides six buttons that you can customize.
Another handy feature is the ability to organize an entire Web project. You can click the Projects tab at the bottom of the directory pane, as you see in Screen 1, and right-click within the Projects window to create a new project. You can then place files in the project. You're not changing the location of the files you add to the project, you're just creating a shortcut to the files. This ability to group files lets you locate all the files in one place instead of spreading them over several different directories, or in some cases, on different machines.
HomeSite is not a What-You-See-Is-What-You-Get (WYSIWYG) editor, but to me, that's a point in its favor because I prefer to see all the HTML tags when I'm creating a Web page. If you're working with an HTML document, you can click the Browse tab, which fires up an internal Web browser (Internet Explorer 3.01 is the default browser, but you can configure your internal and external browsers) and displays the document. However, don't rely on this method if you have a file with server-side scripting because you'll need to view the file live from a Web server to see the scripting in action.
Changes to the Final Release
Since the HomeSite 2.5 pre-release, Allaire has made a few changes that deserve mentioning. One change is that the final release is a lot faster than its predecessor--it loads files at least twice as fast, thanks to a faster editor. But this increase in speed comes at what I think is an unfortunate price: a loss of some basic functionality. For example, the final release has lost its drag-and-drop feature. I don't rely on or exclusively use the drag-and-drop feature for text replacement, but it is handy at times.
Another lost feature is proportional fonts. Although the die-hard, old-timer, green-screen programmers might love or tolerate fixed-width fonts, I think they're the pits. In all honesty, the fonts don't really affect me when I'm staring at my 21" monitor at work. But when I'm at home using the 800 * 600 screen on my laptop, the text of my document and part of HomeSite's workspace just seem to fall off the side of the screen. Anyone who's worked with Web documents knows that wordwrap just isn't a solution.
The feature removed from the final release that I'll miss the most is the multiword select feature (double-clicking a word and dragging your mouse over other words to select them). You can take away the drag-and-drop and proportional font features, but don't take away my ability to place the cursor exactly where I need it and drag it over the text I want!
If you're just beginning in the HTML arena, HomeSite might not be your first choice because it lacks the ability to view WYSIWYG formatting, which can help you understand what your page will do. But, if you're familiar with HTML or you love to dive into it and want a package that will give you functionality and the full capacity available in HTML, I strongly recommend HomeSite.