Con eclipse jamas tuve problemas tabulando, incluso un codigo sin identacion, los podes identar de forma automatica, tal ves no sea lo que uno desea pero al menos lo intenta.
Ademas el auto identado lo podes modificar a tu gusto, y ayuda a meter mucho menos TABs o espacios. Pero en un simple editor de textos es otro tema.
Respecto a TAB y espacios:
Entiendo que el espacio sea lo mejor al compartirlo entre distintos IDEs, ordenadores, etc. Esto hablando de hace tiempo ya, hoy en dia no deberia haber problemas.
Pero me quedo mil veces con un TAB y no un espacio, el tiempo perdido(mas que tiempo, es perdida de concentracion en el codigo) en estar contando el espacio es absurdo (sea 8 o 4 o 2), y con solo presionar una tecla ya tenes tu identado, y ni hablar si vas un poco mas alla con el identado, no veo practico estar haciendo 16 espacios por ejemplo.
Hay IDEs como el de MPLAB X ( netbeans ) que los TABs lo transforman en espacios, me refiero literalmente (no es que te lo muestra de x espacios). Y uno pensaria que seria la solucion definitiva, pero cuando queres borrar te encontras con vaaaaarios caracteres a borrar, que de otra forma seria un simple suprimir y que tenes que tener otra linea por encima o debajo o conocer cuantos espacios eran para que siga quedando identado, hay ayudas visuales tambien pero sigue siendo mucho mas trabajo que un simple TAB. Si uno tuviera VIM si podria hacer una combinacion de teclas y borrar la cantidad de espacios que uno quiera. En eclipse podes definir cuantos espacios equivale un TAB, pero siguen siendo TABs, esta si es lo mejor.
Por ultimo, como ves tampoco hay una definitiva con respecto a la cantidad de espacios a usar, cada uno hace lo que quiere. 2 espacios es simple pero a mi gusto no le da el aspecto visual mas legible, 4 ya me parece una locura de presionar teclas, 8 ni hablar.
De todas formas, todo se resume a que tan anidado se encuentran los codigos normalmente. Si llevan muchos niveles de identacion, a no ser que poseas un buen monitor con una muy buena resolucion entonces te conviene utilizar un identado mas pequeño ( 2 espacios ) sino sos de anidar demasiado, entonces 4 es suficiente. Pero con un TAB solo dejas al IDE hacer su trabajo y listo.
EDIT: La queja principal es que en grupos de trabajo el codigo es un desastre cuadno se comparte, porque cada uno tiene su forma de programar, si te metes a un grupo de trabajo que usa espacios y vos TAB, seguramente alguno ni se molesto en configurar su IDE a lo que esta acostumbrado. Entonces esa persona debe acomodarse a lo que se le pida en el grupo de trabajo.
Lo mismo pasaria al reves, si todo el mundo usa TAB y viene uno con espacios, si todos los verian igual que la persona que lo escribio, pero al momento de borrar y mover las cosas, seguramente se den cuenta, que no era tan facil como el TAB y tal ves hagan que esa persona vaya por un TAB.