Other articles in the series Will Hack For Food!
Adam continues the summer Mac conference circuit, reporting on how he spent several sleep-deprived nights in Dearborn, Michigan at the ADHOC (formerly MacHack) conference. In particular, check out the winners of the ADHOC Showcase programming competition! Also in this issue, Matt Neuburg goes face to (type)face with Insider Software's FontAgent Pro, and we note the releases of Salling Clicker 2.2 and WebSTAR 5.3.3.
by Jeff Carlson
Salling Clicker 2.2 Adds Capabilities -- Jonas Salling has updated his Bluetooth-based remote control software, Salling Clicker, to version 2.2 (see "Salling Clicker in Action" in TidBITS-694)Show full article
Salling Clicker 2.2 Adds Capabilities -- Jonas Salling has updated his Bluetooth-based remote control software, Salling Clicker, to version 2.2 (see "Salling Clicker in Action" in TidBITS-694). Billed as "The Digital Hub, on Steroids," the new version bulks up with support for controlling EyeTV and Squeezebox media devices, and VLC (VideoLAN client) software. When used to control PowerPoint 2004 as a presentation device, Clicker 2.2 displays the title of the next slide. This version also adds support for new Bluetooth phones and handhelds, including phones running the Symbian OS. Salling Clicker 2.2 is a free upgrade for current users, or $20 for new users, and is a 3.7 MB download. It can be used in trial mode, which is limited to 30 clicks. [JLC]
WebSTAR Update Patches Vulnerabilities -- 4D, Inc. has released version 5.3.3 of its 4D WebSTAR Web, email, and FTP server suite to address reported vulnerabilities and add other enhancementsShow full article
WebSTAR Update Patches Vulnerabilities -- 4D, Inc. has released version 5.3.3 of its 4D WebSTAR Web, email, and FTP server suite to address reported vulnerabilities and add other enhancements. The update is free to all licensed WebSTAR V owners. WebSTAR versions 5.3.2 and earlier have a stack overflow vulnerability in their FTP service that could allow an attacker to gain administrative privileges by sending a long FTP command; a sample script included with WebSTAR could allow directory indexing of any directory on the server; and the Web server component could allow an attacker to download the php.ini files that might contain sensitive information such as the account name and password used by PHP to communicate with databases. All WebSTAR server administrators should update their servers to the latest version. 4D says the upgrade also offers improved spam filtering, with the addition of IP address whitelisting and the capability to filter messages pre-tagged with SpamAssassin headers. [MHA]
It is tempting to see, when faced with a decline for the quantitative attendance numbers for a conference, some larger trend or lurking bogeyman. Such an explanation would be appropriate for the thinning of the herd at the just-passed Macworld Expo in Boston, nominally hampered by the refusal of Apple and other large companies to exhibitShow full article
It is tempting to see, when faced with a decline for the quantitative attendance numbers for a conference, some larger trend or lurking bogeyman. Such an explanation would be appropriate for the thinning of the herd at the just-passed Macworld Expo in Boston, nominally hampered by the refusal of Apple and other large companies to exhibit. In reality, it is not difficult to understand Apple's stance: this second of two major trade shows creates an artificial and potentially troubling product release deadline, forces the company to cede some level of control over any announcements, and does not particularly serve the goal of introducing the Macintosh and iPod to new customers. Ironically, with the recent releases of AirPort Express, the current crop of large monitors, and the Click Wheel iPod, Apple would have had plenty of announcement fodder for Macworld Expo, but at this point, Apple doesn't need the customer clumping of a trade show to gain media attention for such announcements. In addition, the Apple Stores meet the goal of introducing potential Macintosh and iPod users to their new digital buddies.
All that explains the drastic drop in attendance for Boston's Macworld Expo. But there are no such sweeping explanations for the small number of attendees at last week's ADHOC - the Advanced Developer Hands On Conference - previously known, of course, as MacHack. In the past, MacHack has never been a particularly large conference, maxing out under 500 attendees, but attendance this year was notably sparse, with roughly 100 developers present. It's not as though there are that many fewer developers out there, and although Apple had almost no presence at ADHOC, there hasn't been much of an official Apple contingent for some years.
No, the explanation is simply that ADHOC's committee of volunteers never managed to do much of the necessary marketing to introduce the conference to people who hadn't attended in the past. Also problematic was the name change and a new date that moved the conference a month later to escape the heavy tread of Apple's Worldwide Developer Conference (for which attendance is nearly mandatory if you're a Macintosh developer). The new date fell right after Macworld Expo and at the same time as a Digital Design conference in Seattle that lured at least one long-time MacHack regular away (PDF expert Leonard Rosenthol couldn't turn down the offer of being paid to talk in Seattle - a financial and geographical win over paying to attend ADHOC in the charmless Dearborn, Michigan).
In essence, though, the problem lies with the fact that the people who market the conference - the volunteer committee of attendees - have no financial interest in the conference itself. That interest lies with Expotech, a small conference organizing company that has always handled all the logistics for MacHack (actually, given their lengthy relationship with the conference, everyone at MacHack thinks of Expotech as Carol Lynn and Maurita Plouff and their increasingly grown-up daughters,). And while the committee's attendance goal - attracting like-minded geeks to network with - is admirable, decoupling it from the goal of turning a profit results in a marketing approach that tends toward the haphazard.
Although this year's reduced attendance is undoubtedly troubling and will hopefully result in renewed efforts on the part of this year's committee, it didn't seem to make a qualitative difference. Yes, there were fewer people to talk with in the hotel lobby, and there were fewer sessions and papers, and we weren't able to take over an entire theater for the annual movie screening (thus eliminating the opportunity for group heckling of "I, Robot"), but the conference retained its full sense of utility and fun. The sessions I attended, such as James Goebbel's session on Extreme Project Management and the Hardware Technical Trends talk from Chad Magendanz, were extremely valuable. And I'm not even a developer! I hope in the future to see more business-oriented sessions (such as my Hacking the Press session, and one I wasn't able to attend on using eSellerate by Josh Ferguson). That would make the conference more attractive to other types of highly technical users and executives.
There was some concern that ADHOC wouldn't really be MacHack, particularly because the always notable MacHax Group's Best Hack Contest was replaced by the ADHOC Showcase, featuring "demos" that attendees later voted on with fake investment capital. However, the change in name wasn't accompanied by more sweeping changes, and as much as the new organizers of the ADHOC Showcase tried to set themselves apart from the 17 years of the Best Hack Contest, everyone found it difficult to break from the old terms and traditions. Nonetheless, despite some presentation mishaps, everyone had a good time and the lowered attendance meant that it was possible to get to bed by 2 AM instead of 5 AM.
In short then, whatever that elusive thing that set MacHack apart from every other conference was, ADHOC had it. The familiar faces were there, the sessions were good, the demos were amusing, and this year I managed to hook up with the group making the annual pilgrimage to Zingerman's, an absolutely stunning deli in Ann Arbor. Although ex-Mac OS 9 technical lead Keith Stattenfield wasn't able to attend, he and some other Apple programmers joined us via iChat AV (projected for the entire room) for a couple of hours of humorous dissection of the movie "I, Robot." Rather than attempt to describe an event for which you almost certainly had to be there, you can see some short movies I took with my Canon PowerShot S400 of the festivities. (Three warnings: the movies make the most sense if you have seen "I, Robot" already; you should watch them in order; and they're about 100 MB combined, so don't even try unless you have a high-speed Internet connection.)
ADHOC Showcase Top Demos -- Even if the ADHOC Showcase wasn't the full-metal straitjacket experience of the MacHax Best Hack Contest, a number of the demos were still highly amusing. I hosted a SubEthaEdit document for notes, and a number of people who couldn't be at the conference joined via the Internet as well. Here then are the top five demos, the first three of which actually tied for 3rd (or 5th, if you prefer).
Lisa Lippincott showed off Scroll Plate, which involved a program that used an iSight to do color recognition, scrolling the document up or down based on the color of an arrow (drawn on a plate) in the iSight's field of view. Some devices have scroll wheels; now we have a scroll plate!
Wolf Rentzsch developed EtherPEG Cocoa, which was a port of a previous year's hack, EtherPEG, to Cocoa. EtherPEG displays images being transferred across an unencrypted Wi-Fi network; Wolf enhanced it by making the images appear in order instead of randomly. He would have done more, but while testing, someone started using Google Image Search, and thus they developed a new game that took the rest of their time. One person would do a search and the other would watch the images and try to guess the search terms. Who knows, maybe it will become the next game craze to sweep the nation.
Adam Goldstein, a student, wrote ExposeHopper, a game in which you invoke Expose, then navigate your player from window to window in an attempt to collect the checkmarks in the corners. The trick is that moving between windows causes your player to disappear in a puff of Dock smoke.
In second place was Mike Zornek's demo, The MegaMan Effect, which replaced the standard icon bouncing animation of an application launching with a full screen animation of the icon zooming through a star field, taken from a cheesy video game from years ago.
Lastly, winning the first ADHOC Showcase was Jorg Brown's Unsummarize, a clever bit of code that takes a short sentence or phrase and "expands" it in the reverse of the way Apple's Summarize service works (select text in a Services-aware application then choose Services > Summarize from the application menu). Unsummarize works (perhaps with some smoke and mirrors for the demo) by performing a Web search using the selected text and using the search results as the expansion. Jorg got the idea for Unsummarize from a joke David Pogue made during the ADHOC keynote about how Summarize was cool, but he'd really like something that went the other direction so the Mac could write his articles for him.
I hope the ADHOC committee will figure out a way to make these and other demos available to the public, as has been done in the past by the MacHax Group.
Conference Rating -- ADHOC is, as you've gathered, an extremely unusual conference whose 18 years as MacHack colors every aspect of the experience. That undoubtedly skews my conference rating system somewhat. I won't attempt to rate ADHOC as an exhibitor (since there aren't any). In terms of speaker ratings, I'll note merely that there's no payment, no moderators, and fairly confused logistics, but all that is sort of beside the point, since speaking at ADHOC is something one does to contribute to the community - it's a peer-to-peer event. And from the press perspective, it makes no sense to have a press room, nor is there ever much in the way of a news event (short of the results of the Hack Contest/ADHOC Showcase), but neither is important in the context of the conference (and the logistics are really easy). As for my rating of the conference as an attendee, here goes:
Cost/value. ADHOC is about as cheap a conference as you'll find, with prices ranging from $325 for a speaker who registers early to $550 for a normal attendee who registers at the last minute. High school and college students pay only $50, and anyone who has a paper accepted by the paper committee gets free admission. The hotel costs about $120 per night, but many people share rooms and split the cost. Flying to Detroit is relatively easy and can be cheap, since it's a Northwest Airlines hub. +1 point.
Time/place. ADHOC is intentionally in a somewhat odd place in part to avoid attendees wanting to leave the hotel, and the hotel itself is part of the tradition of the conference at this point. (The big question is, in my running joke of hacking the hotel, will my four-foot wooden stake be found this year, after it survived all of last year in the lobby in plain sight, staking up one of the plants? See the links below for the entire story of the stake.) The timing for the conference was mediocre this year, coming as it did in such close proximity to so many other conferences. 0 points.
Logistics. Expotech makes the logistics surrounding ADHOC simple, and the fact that they've been exactly the same for years helps. The main oddity for newcomers is remembering that when booking tickets, even though the conference nominally runs from a Thursday through Saturday, the keynote is really Wednesday night and things don't end until early in the morning on Sunday. +1 point.
Breadth and depth of exhibitors. There are no exhibitors, though a few companies sponsor different aspects of the conference, including Bare Bones, Nvidia, O'Reilly, QuickSilver, Speakeasy, and well, us (to help promote our Take Control ebooks we donated some money to buy fruit for the snack room). 0 points.
Product support. If someone with a company you need help from is in attendance, it's easy to find some time to get one-on-one support. I had an extremely helpful talk with eSellerate's Josh Ferguson, for instance, that helped make the conference even more worthwhile. +1 point.
Session Quality. Although I can't rate the quality of the developer-specific sessions, all the others I attended were top-notch. +1 point.
Keynote. MacHack keynotes are legendary events that start at midnight and continue for hours, with well known speakers such as Ted Nelson, John Warnock, Steve Wozniak, Andy Ihnatko, and numerous others. This year's lead-off keynote at ADHOC was ably given by David Pogue, who initially seemed a little shocked by the extreme level of interactivity traditionally shown by the audience. But David rolled with it, and quickly drew everyone in with his witty song parodies and jokes. His Panther tips were a challenge to members of the audience, which tried (successfully on a number of occasions) to tell David things he didn't know. The second night's keynote (also at midnight) was delivered by Apple's Steve Hayman, substituting for an ill Jordan Hubbard. Steve drew on his experience with Apple's large education installations (the places that have thousands of iBooks in school systems) and years of working with Unix to give a talk that was both hilarious and useful, in that he showed how simple it was to use development tools like AppleScript Studio to marry a graphical interface and a command line utility. +2 points.
Free wireless Internet access. Although it has long been commonplace for MacHack to offer free wireless Internet access, this year was notable for its lack of networking problems. Steve Yuhasz, who always runs the network, may have dodged some of them by requiring that everyone sign up for a static IP number, thus eliminating any confusion about who would be responsible for network problems. So the network access was flawless this year, and the T-1 donated by Speakeasy worked well other than a few hours of emergency maintenance time. And although the conference didn't specifically coordinate SubEthaEdit notetaking, I ran it during the ADHOC Showcase, and a number of people asked for my notes afterwards. +1 point.
Great deals. Short of the 50 percent off any Take Control order we gave attendees, there weren't any other deals I was aware of this year. 0 points.
Freebies. There were tons, and it seemed that everyone went home with books from O'Reilly, a wide variety of t-shirts, mugs, and stickers. The big prizes came from Nvidia, which raffled off a number of high-end video cards. +1 point.
Snacks. ADHOC provides not only snacks and a constant supply of drinks but two lunches, a brunch, several pizza dinners, a banquet dinner, and an ice cream social. The snacks and drinks have tended toward serious junk food, which was why we donated money for fruit, but there was no reason to go hungry. My only complaint was that hotel food this year was below the standard of last year, and decidedly sub-par. +1 point.
Fun. It's almost impossible to convey how much fun people have at ADHOC, but suffice to say that there are people who use vacation time to come each year. To be fair, the conference might be less fun for people who have trouble interacting socially with geeks, but my experience as a non-programmer was still stellar. +2 points.
Community. The entire point of ADHOC is community, and the hotel lobby is always occupied by attendees working on their hacks or just hanging out and talking. Deals are made, relationships are cemented, and the standard farewell is, "See you next year, if not before." Younger attendees aren't just tolerated, they're welcomed and encouraged, and perhaps the only negative I could think of in this category is that it would be nice if more women attended. This year was no different. +2 points.
I'd like to reiterate that these ratings should not be compared to those I gave Macworld Expo recently; to do so would be to compare apples and oranges. I hope the ratings give you a sense of whether you'd like to attend next year; I'll certainly be there. And for those regular attendees who skipped this year, we missed you, but it was definitely your loss. See you all next year, if not before!
by Matt Neuburg
In past TidBITS articles, I've talked about what a problem font management on the Macintosh has always been, and what steps I've taken to alleviate it on my own machineShow full article
In past TidBITS articles, I've talked about what a problem font management on the Macintosh has always been, and what steps I've taken to alleviate it on my own machine. For many years I was strongly attached to DiamondSoft's Font Reserve, but it foundered somewhat on the breakers of Mac OS X; initially it didn't support many Mac OS X fonts, and Classic activation was never reliable. I then tried Extensis's Suitcase and stayed with it happily for a year or so, but eventually it broke against Panther, and although a revised version was issued, I found it sluggish and undependable. Also, by that time, Extensis had acquired Font Reserve, ending the healthy competition between the two, and the steam seemed to go out of the development on both products. So, since the advent of Panther, I've kept my font management minimal, using Apple's own Font Book as described in my ebook "Take Control of Customizing Panther."
Recently, however, I've put a tentative toe back into the font management waters by taking a look at FontAgent Pro, from Insider Software. I had tried out an earlier version of this program, but shied away because I found it too intrusive: the installer demanded my password, which I found suspicious; it wanted to take control of my already installed fonts; and when it imported fonts, it reported having performed hundreds of "repairs" to them, without asking my permission and without explaining just what it had done. But the current version, FontAgent Pro 2.1, is much more user-compliant. It can manage installed fonts (except for /System/Library/Fonts, which it leaves alone), and it can install a startup item so that your chosen fonts will be activated the next time you restart, but these are preferences under your control. In general, FontAgent Pro appears simple and dependable.
How It Looks -- When you use FontAgent Pro, fonts are activated by an invisible background application, FontAgent Activator. FontAgent Pro is thus essentially just a window for telling FontAgent Activator what to do; your fonts are still managed even if you quit FontAgent Pro. (This architecture is similar to Font Reserve, where Font Reserve itself is invisible, and the Browser is its visible face.)
FontAgent Pro thinks in terms of libraries and sets. A library is basically a physical folder on disk where FontAgent Pro has collected fonts. A set is a purely conceptual grouping, clumping together some of a library's fonts, and is basically just a way to activate or deactivate multiple fonts simultaneously. Sets can be nested, and a font can be a member of more than one set.
The FontAgent Pro window consists of three panes. The first two panes are almost identical - both can list fonts grouped by library or by set, optionally grouping fonts into families - but the first can also list all fonts alphabetically. The third pane displays font previews that you can cycle through and compare. The panes can be resized; the first and third panes can also be completely hidden.
Using the window is simple. The first two panes are outlines, where fonts may appear clumped hierarchically by font family, set, or library. Each item in the outline has two icons next to it, indicating whether it is activated and whether it is shared. (I describe font sharing later in this article.) Click an icon to toggle the state for that item (meaning that font, if the item is a font, or all subordinate fonts, if the item is a font family, set, or library); or, select an item and click a button in the window's toolbar. Sets can be created with a button on the toolbar, and fonts can be moved or copied into sets by dragging within a pane or from one pane to another, in a delightfully clean and intuitive fashion. The hierarchy's outline can also be controlled using decent keyboard navigation: you can move the selection up and down, you can open and close a "folder," and you can jump to an item by typing the start of its name.
What It Does -- As I've said in past articles, my font management needs are fairly simple. I don't use large numbers of fonts, I don't manage multiple jobs requiring specific fonts, and I'm certainly not a publishing or prepress shop. That said, let me describe my basic font needs and how FontAgent Pro meets them:
(1) I am massively confused about what fonts I have. The difficulty is greatly exacerbated by the fact that many of my fonts on Mac OS X are in suitcases, which don't behave like folders the way they did in System 7 through Mac OS 9, so I can't readily see inside them. When you hand a font over to FontAgent Pro (which you can do by dragging font files or entire folders onto its window), it is copied into the FontAgent Pro library folder. Fonts that live in suitcases (e.g., because they are bitmaps, or because they are the old style of TrueType font with bitmaps) are broken up and created anew, one font per suitcase; and fonts are arranged by families in folders named for letters of the alphabet. Also, FontAgent Pro checks to make sure that bitmaps and Postscript files form complete font families. Thus you know at a glance, in the Finder as well as in FontAgent Pro, what fonts you have.
So, for example, when I handed FontAgent Pro three Garamond bitmap suitcases and a bunch of Postscript font files, these were put in the ITC Garamond subfolder of the "G" folder, and the suitcases were reconstituted as 14 suitcases with names like Garamond Book, Garamond BookCondensed, and so forth.
(2) I like to be able to activate fonts in Classic, from within Mac OS X. The reason is that I still occasionally run a Classic-only program, such as FrameMaker, and when I do, I want to activate certain fonts. I could just install the necessary fonts in my Classic Fonts folder, thus making them available to all Classic programs; but then they would be active in Mac OS X all the time as well. (Of course, I could prevent that using Font Book; but it's confusing for me to use both Font Book and a third-party program.) FontAgent Pro has the capability to activate in Classic applications whatever Classic-compatible fonts it has activated under Mac OS X.
(3) I have more than one computer, and coordinating fonts between them is something of a nightmare. If I have a Workgroup Edition license for FontAgent Pro, I can stop worrying about this, because as long as two computers are on the same local network, they can share fonts. Let's say machine A has the fonts in question in its FontAgent Pro library. In machine A's copy of FontAgent Pro, I click the "share" icons for those fonts. In machine B's copy of FontAgent Pro, I switch to the Sharing tab of the second pane, and presto, thanks to the magic of Rendezvous, machine A is listed, as if it were a set consisting of all the shared fonts. So, still on machine B, I activate them just as if they really were on machine B, and now I can use them in all applications just like any other font. The whole process is delightfully easy, and eerily cool.
What It Needs -- Even though my font requirements are minimal, FontAgent Pro and I crossed swords in a few places. This is a list of suggestions more than of criticisms; they are places where I felt FontAgent Pro fell short or behaved oddly, or wasn't being as helpful as it might. They are not serious enough to make me not use FontAgent Pro, but they are the sort of thing that might keep me looking for other font management alternatives, and they certainly could matter to some users.
FontAgent Pro gives no information about fonts it is not managing. This means it doesn't tell you what fonts are activated through the system, and it doesn't tell you whether activating a font through FontAgent might cause some sort of conflict with a system-based font. Also, it doesn't prevent possible conflicts within itself; it lets you import two non-identical fonts with the same name and activate them, even though the system won't distinguish them. (Contrast Suitcase, which shows you all active fonts and warns of possible conflicts when you activate a font.) Although it can be set to "verify fonts," FontAgent Pro still fails to warn of a font's internal oddities; for example, I have some old TrueType fonts that used to work, but under Mac OS X they don't (in one of them, for example, typing "A" gives an "L"), and FontAgent Pro isn't getting me any closer to understanding why. Plus, I found that if I imported a suitcase containing multiple TrueType variants of a single font - such as Palatino, Palatino Bold, and Palatino Italic - FontAgent Pro failed to list the variants. (Contrast Font Book, which does list them.)
The simplicity of FontAgent Pro's interface is perhaps carried a bit too far. You can't start with a font and ask what sets it belongs to. You can search for fonts, limiting the All Fonts pane to fonts whose name contains the letters you type; but then there is no way to learn that you're seeing a filtered list, and there's no button to cancel the filtering.
There is no way to export information about sets. This means that if you have FontAgent Pro on two machines, you can't easily configure them with identical sets. (Contrast Font Reserve, which lets you export and import set configurations.) The font preview feature is not as useful as it might be, because with a Unicode font you are not shown the region of the font that's important. (Contrast Font Book, which shows a Cyrillic alphabet for a chiefly Cyrillic Unicode font and a Hebrew alphabet for a chiefly Hebrew Unicode font.)
The main FontAgent Pro window suffers from a frequent Mac OS X problem: its buttons are enabled even when the window is not frontmost. This means you can click the window in the background, intending to switch to it, and accidentally activate some button, perhaps deleting a font from a set without realizing it. I also noticed that if the Preferences window is already open but hidden behind another window, choosing the Preferences menu item does not activate it, which is mystifying because it looks as if nothing has happened.
Finally I should mention FontAgent Pro's font activation feature, which is intended to allow a document in any application to activate needed fonts as it is opened, provided those fonts are in a FontAgent Pro library. Plug-ins to enable this feature are provided for InDesign, Photoshop, Illustrator and QuarkXPress; in other programs it's just supposed to work automatically. But it didn't work for me with a Microsoft Word document containing several specialized language fonts. This is not a deal breaker for me, but some users probably depend on this feature.
Conclusions -- FontAgent Pro is simple and easy to use. It activates fonts quickly and reliably and without bogging down the system. Its single window is clean and intuitive. The capability to make sets within sets is very nice, the multiple libraries feature is useful for distinguishing multiple copies of a font which would otherwise conflict (a frequent problem in publishing environments), and the Rendezvous-based font sharing is a joy. Activation of fonts in Classic programs works fine. All these features could easily justify use of FontAgent Pro. On the other hand, FontAgent Pro doesn't warn of font conflicts and internal font problems, and so I still feel that I'm groping my way ignorantly through a mysterious world of fonts, and that FontAgent Pro isn't doing as much to light my way as my imaginary ideal font management program would do.
FontAgent Pro 2.1.1 costs $90, or $140 for the Workgroup Edition. It requires Mac OS X 10.2.8, or 10.3.2 or later. A free 30-day trial version is available as a 2.8 MB download. (Mac OS 9 and Windows versions are also available.)
The second URL below each thread description points to the discussion on our Web Crossing server, which will be much faster, though it doesn't yet use our preferred design. Lightning taking out Ethernet anecdotes -- Readers share their own electrifying experiences with lightning and computer hardwareShow full article
The second URL below each thread description points to the discussion on our Web Crossing server, which will be much faster, though it doesn't yet use our preferred design.
Lightning taking out Ethernet anecdotes -- Readers share their own electrifying experiences with lightning and computer hardware. (6 messages)
Comments on Word 2004 -- Readers continue to comment on Microsoft's newest word processor, including embedded fonts in documents and PDF output. (22 messages)