How do I change Eclipse to use spaces instead of tabs?

Java Editor

  1. Click Window » Preferences
  2. Expand Java » Code Style
  3. Click Formatter
  4. Click the Edit button
  5. Click the Indentation tab
  6. Under General Settings, set Tab policy to: Spaces only
  7. Click OK ad nauseam to apply the changes.

[Note: If necessary save profile with a new name as the default profile cannot be overwritten.]

Default Text Editor

Before version 3.6:

Window->Preferences->Editors->Text Editors->Insert spaces for tabs

Version 3.6 and later:

  1. Click Window » Preferences
  2. Expand General » Editors
  3. Click Text Editors
  4. Check Insert spaces for tabs
  5. Click OK ad nauseam to apply the changes.

Note that the default text editor is used as the basis for many non-Java editors in Eclipse. It's astonishing that this setting wasn't available until 3.3.

C / C++

  1. Click Window » Preferences
  2. Expand C/C++ » Code Style
  3. Click Formatter
  4. Click the New button to create a new profile, then OK to continue
  5. Click the Indentation tab
  6. Under General Settings, set Tab policy to: Spaces only
  7. Click OK ad nauseam to apply the changes.

HTML

  1. Click Window » Preferences
  2. Expand Web » HTML Files
  3. Click Editor
  4. Under Formatting, select the Indent using spaces radio button
  5. Click OK to apply the changes.

CSS

Follow the same instructions for HTML, but select CSS Files instead of HTML Files.

JSP

By default, JSP files follow the formatting preferences for HTML Files.

XML

XML files spacing is configured in Preferences.

  1. Click Window » Preferences
  2. Expand XML » XML Files
  3. Click Editor
  4. Select Indent using spaces
  5. You can specify the Indentation size if needed: number of spaces to indent.

For the default text editor:

  • General » Editors » Text Editors » Insert spaces for tabs (check it)

For PHP:

  • PHP » Code Style » Formatter » Tab policy (choose "spaces")
  • PHP » Code Style » Formatter » Indentation size (set to 4)

For CSS:

  • Web » CSS » Editor » Indent using spaces (select it)
  • Web » CSS » Editor » Indentation size (set to 4)

For HTML:

  • Web » HTML » Editor » Indent using spaces (select it)
  • Web » HTML » Editor » Indentation size (set to 4)

For XML:

  • XML » XML Files » Editor » Indent using spaces (select it)
  • XML » XML Files » Editor » Indentation size (set to 4)

For Javascript:

  • Javascript » Preferences » Code Style » Formatter » Edit » Indentation (choose "spaces only")
  • Rename the formatter settings profile to save it

For Java:

  • Java » Preferences » Code Style » Formatter » Edit » Indentation (choose "spaces only")
  • Rename the formatter settings profile to save it

From changing tabs to spaces in eclipse:

Window » Preferences » Java » Code Style » Formatter » Edit » Indentation (choose "Spaces Only")