Как я могу использовать вкладки для отступов в IntelliJ IDEA?


130

Как я могу использовать табуляции вместо нескольких пробелов для отступов в IntelliJ IDEA 11.0?

У меня установлен флажок «Использовать символ табуляции» в разделе «Стиль кода»> «Общие»> «Параметры отступа по умолчанию». А также пробовал поставить галочку "Умные вкладки", но не помогает.

Из документации :

Если этот флажок установлен, используются символы табуляции:

  • При нажатии клавиши Tab
  • Для отступа
  • Для переформатирования кода

В противном случае вместо табуляции используются пробелы.

Ответы:


59

IntelliJ IDEA 15

Только для текущего файла

У вас есть следующие возможности:

  1. Ctrl+ Shift+ A> напишите «вкладки»> дважды щелкните «В вкладки»

    К вкладкам

    Если вы хотите преобразовать табуляции в пробелы, вы можете написать «пробелы», а затем выбрать «В пробелы».

  2. Правка> Преобразовать отступы> В табуляции

    Чтобы преобразовать вкладки в пробелы, вы можете выбрать «В пробелы» в том же месте.

Для всех файлов

Пути в других ответах были немного изменены:

  • Файл> Настройки ...> Редактор > Стиль кода> Java> Табуляторы и отступы> Использовать символ табуляции Использовать символ табуляции
  • Файл> Другие настройки> Настройки по умолчанию ...> Редактор > Стиль кода> Java> Табуляции и отступы> Использовать символ табуляции
  • Файл> Настройки ...> Редактор > Стиль кода> Определить и использовать существующие отступы файлов для редактирования
  • Файл> Другие настройки> Настройки по умолчанию ...> Редактор > Стиль кода> Определить и использовать существующие отступы файлов для редактирования

Кажется, что не имеет значения, если вы установите / снимите флажок в настройках ... или в других настройках> Настройки по умолчанию ... , потому что изменение из одного окна будет доступно в другом окне.

Вышеуказанные изменения будут применены к новым файлам , но если вы хотите заменить пробелы на табуляцию в существующем файле , вам следует отформатировать файл, нажав Ctrl+ Alt+ L.


1
Вот что я называю объяснением! Большое спасибо. Я привык к пробелам, и другие вещи я установил, но я пропустил переформатирование.
geisterfurz007 06

210

Файл > Настройки > Редактор > Стиль кода > Java > Табуляторы и отступы > Использовать символ табуляции

При необходимости замените оружие на выбор для Java.


5
Обратите внимание: если вы меняете это, а также заменяете все табуляции / пробелы в файле, вам может потребоваться закрыть и снова открыть файл, чтобы исправить обнаружение после внесения изменений.
mlissner

3
Есть идеи, почему "Использовать символ табуляции" не включен по умолчанию?
Иван Балашов

2
@IvanBalashov Символы табуляции могут вызывать некоторые проблемы с форматированием при просмотре в других текстовых редакторах. Кроме того, некоторые языки, такие как Python, могут не работать, когда вы используете табуляцию вместо пробелов.
Cache Staheli

11
и что мне делать, если я хочу, чтобы вкладки были отступом ДЛЯ ВСЕХ ЯЗЫКОВ ?? действительно ли мне нужно выбирать 500 разных языков и применять их индивидуально?
phil294

3
Я сделал это, и IntelliJ все еще использует пробелы (см. Сообщение why-wont-intellij-use-tabs )
duplic1ejack

24

Я начал использовать IntelliJ IDEA Community Edition версии 12.1.3 и нашел настройку в следующем месте: -

File > Other Settings > Default Settings > {choose from Code Style dropdown}

4
Не нашел бы этого без вашего ответа. Спасибо!
MegaMatt 03

2
Вам может потребоваться отменить
выбор

14

Для тех, кто не может получить это, вам также нужно снять флажок со следующего

Preferences > Editor > Code Style
[] Enable EditorConfig support
EditorConfig may override the IDE code style settings

Моя версия IntelliJ 15.0.4


1
Спасибо! Вы только что сохранили мою клавиатуру.
Карл Бергквист,

У меня было 2 пробела в качестве размера вкладки, и последние много дней я пытался исправить это. Вот как я решил проблему. Большое спасибо @visheshd
ади

10

Еще одна полезная опция в IDEA, чтобы выключить или постоянно проверять, если вам это действительно нужно:

Preferences -> Code Style -> Detect and use existing file indents for editing

если ваша команда собирается переключиться на форматирование вкладок с существующим кодом, написанным с пробелами, снимите флажок


8

Вы пробовали .editorconfig ? Вы можете создать этот файл в корне вашего проекта и настроить отступ для разных типов файлов. Ваш код будет автоматически отформатирован. Вот пример:

# top-most EditorConfig file
root = true

# matches all files
[*]
indent_style = tab
indent_size = 4

# only json
[*.json]
indent_style = space
indent_size = 2

Этот файл переопределяет все остальное в настройках intellij. Очень важно сначала проверить этот файл.
Arashsoft

Перепробовав все - принятые или нет - на этой странице, это единственное, что преодолело тяжелую руку пробелов (Macos, Intellij CE 2018.3.4, существующий файл .rs).
cloudsurfin

0

Моя версия Intellij - 13.4.1

Intellij IDEA->Perference->Code Style(Project Setting)

0

Чтобы расширить ответ @Dmitiri Algazin: настройки для отдельных языков переопределяются общими настройками

Preferences -> Code Style -> Detect and use existing file indents for editing

Поэтому, если вам интересно, почему ваши новые настройки игнорируются после изменения настроек для определенного языка, есть вероятность, что этот флажок установлен.

В качестве примечания; изменение любых настроек по умолчанию автоматически создает клон профиля настроек (т. е. Default(1)), который, как я полагаю, существует, чтобы настройки IDE по умолчанию никогда не перезаписывались.

На самом деле, сначала это немного сбивает с толку, будет ли редактирование Defaultнастроек Project Settingsиметь какое-либо влияние на ваш проект, поскольку вы можете выбрать его Defaultиз раскрывающегося меню, а затем редактировать оттуда.

Если вы не хотите, чтобы случайные клоны Default заполняли ваши профили настроек, измените настройки проекта напрямую.


0

Для тех, у кого проблемы с отступом phpstorm, у меня есть совет, и я надеюсь, что они помогут ...

Сначала вам нужно перейти в файл-> настройки-> раскладка-> выбрать-> окна. введите описание изображения здесь введите описание изображения здесь

Если они на виндовс машине. Если вы используете Mac и выбираете macos.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.