unity gain voltage follower: ic or discrete transistors? (for output pins of ard

I want to protect the Digital outputs pins of the Arduino when I connect to other devices (that may accidently short to ground). Up until now I have been using a discrete npn transistor in common collector configuration to act as a voltage follower and to simultaneously drive an output led.
This works fine and is small (tiny transistor and a few resistors) but when I am using a lot of outputs that I would like to protect it would be nice to lower the part count.
Is it better to use a quad opamp configured as for voltage followers? or a hex/octal buffer IC? If the latter, what is a good IC to use?

The leds I drive are low current (<2mA) and the arduino outputs are being connected to 100k loads.

Frankly, the simplest protection mechanism is a resistor. If you add a 220 ohm series resistor in each output that's already a pretty good form of protection as current will be limited to 5V/220ohm = 23mA. It also functions as a series limiting resistor for your LED's (you can always add more resistance to limit current to 2mA for your specific LED's).

If you buy a Ruggeduino the resistors are built in ;)

-- The MegaRAM shield: add 128 kilobytes of external RAM to your Arduino Mega/Mega2560

I need to drive led and output simultaneously (from one pin).

So I would probably have 4k resistor to the led (1mA current is fine) and the 220ohm in parallel to the output jack, both connected to the same pin.

I guess I could double the 220R if I was worried about multiple outputs being shorted at the same time? (rare but I can assume the worst).

I have already been using your input protection scheme of a 5.1V Zener and a 220R.

What do you suggest for protecting the analog ins? Usually I need some kind of filter cap at those inputs in order to reduce jittery readings.

So I would probably have 4k resistor to the led (1mA current is fine) and the 220ohm in parallel to the output jack, both connected to the same pin.

Yes, or you could just leave the 220ohm resistor permanently in series, go from there to the output, then add a further 3.7k resistor (or so) to go to the LED in series.

I guess I could double the 220R if I was worried about multiple outputs being shorted at the same time? (rare but I can assume the worst).

Not really following that one...I was assuming one 220R per pin.

What do you suggest for protecting the analog ins? Usually I need some kind of filter cap at those inputs in order to reduce jittery readings.

If you're positively sure you will never use them as outputs then you can forego the 220R. If you're worried about overvoltage, then resistor+zener it is.

A filter cap isn't really necessary if you have the processing power to filter the data in software.

-- The Rugged Motor Driver: two H-bridges, more power than an L298, fully protected