The problem happened again this morning. The battery had been on the trickle charger and it was showing "float" so the battery was fully topped off. The truck was cranked twice without starting. Next, I hooked the truck up to my car with jumper cables, because if the battery is old, it may not be supplying amps even though its volts are topped off. I cranked the truck and it did not start. I did hear my car's engine change idle speed when the grid heater on the truck kicked in.
Next, I "blipped" the starter several times, waiting ten seconds or so between attempts. As mentioned on this thread, this is the priming procedure for the pre-03 model year trucks. According to my user manual, this truck is supposed to be self-priming, but it was just something I could think of to do. After blipping the starter several times, I cranked again and it started up.
Next step I'm going to take is to change the fuel filter. We've only got about 8k... maybe 10k miles on this filter, but it can't hurt and it's a cheap and easy step to take.
In retrospect the whole "running out of fuel" thing may be suspect. What happened then was that my girlfriend drove the truck home, low on fuel, and parked it. Next time she went to start it it would not start, and it was very low on fuel, and it started up again when we put more fuel in it, so we figured that was it. But if you think about it, what are the chances that it was running all the way up the driveway and then crossed the line to "empty" just as she parked? The way that scenario played out is not inconsistent with the other times it wouldn't start: try to get it to start, it won't, then it eventually does. The only difference in that scenario is that we ran out to the gas station in the mean time.
Another thought: the jumper-cable step may not indicate much either. My car is a little Jetta. Its charging system may not be able to supply the amps that the truck needs to turn over. But I did take the truck to AutoZone and have them test the truck's battery and they said it tested good.