Преобразование пробелов во вкладки
Я пишу файлы TypeScript
и HTML
, а вкладки преобразуются в пробелы.
В моем проекте TypeScript
каждая вкладка преобразуется в пробелы, я хочу отключить ее, и вместо пробелов есть вкладка.
Это мои настройки:
{
"editor.insertSpaces": false
}
ОБНОВЛЕНИЕ 1:
Кажется, он работает в файлах .html
, но не в файлах .ts
.
Ответы
Ответ 1
В .vscode/settings.json
есть 3 варианта:
// The number of spaces a tab is equal to.
"editor.tabSize": 4,
// Insert spaces when pressing Tab.
"editor.insertSpaces": true,
// When opening a file, 'editor.tabSize' and 'editor.insertSpaces' will be detected based on the file contents.
"editor.detectIndentation": true
editor.detectIndentation
обнаруживает его в вашем файле, вы должны отключить его.
Если это не помогло, убедитесь, что у вас нет настроек с более высоким приоритетом.
Например, когда вы сохраняете его в настройках пользователя, он может быть перезаписан настройками рабочей области, которые находятся в папке вашего проекта.
Update:
Вы можете просто открыть файл " Настройки " Настройки или использовать ярлык:
CTRL+, (Windows, Linux)
⌘+, (Mac)
Update:
Теперь у вас есть альтернатива редактированию этих опций вручную.
Нажмите на селектор Пробелы: 4 в правом нижнем углу редактора:
![Ln44, Col . [Spaces:4] . UTF-8 with BOM . CTRLF . HTML . :)]()
Если вы хотите преобразовать существующий ws во вкладку, установите расширение из Marketplace
EDIT:
Чтобы преобразовать существующие отступы из пробелов во вкладки, нажмите Ctrl+Shift+P и введите:
>Convert indentation to Tabs
Это изменит отступ для вашего документа на основе определенных настроек на вкладки.
Ответ 2
Чтобы изменить настройки вкладки, щелкните текстовую область справа на текст Ln/Col в строке состояния в правом нижнем углу окна vscode.
Название может быть Tab Size
или Spaces
.
Появится меню со всеми доступными действиями и настройками.
![введите описание изображения здесь]()
Ответ 3
Ctrl + Shift + P, затем "Преобразовать отступы во вкладки"
Ответ 4
Если вы хотите использовать вкладки вместо пробелов
Попробуйте это:
- Перейдите на
File
➤ Preferences
➤ Settings
или просто нажмите Ctrl + ,
- В верхней части настроек поиска вставьте
editor.insertSpaces
- Вы увидите что-то вроде этого: Редактор: вставьте пробелы, и это, вероятно, будет проверено. Просто снимите флажок, как показано на изображении ниже
![Editor: Insert Spaces]()
- Перезагрузите код Visual Studio (нажмите
F1
➤ типа reload window
➤ нажмите Enter)
Если это не помогло, попробуйте следующее:
Это, вероятно, из-за установленного плагина JS-CSS-HTML Formatter
(Вы можете проверить это, перейдя в File
➤ Preferences
➤ Extensions
или просто нажав Ctrl + Shift + X, в включенном списке вы найдете JS-CSS-HTML Formatter)
Если это так, вы можете изменить этот плагин:
- Нажмите F1 ➤ типа
Formatter config
➤ нажмите Enter (откроется файл formatter.json
)
- Измените файл следующим образом:
4| "indent_size": 1,
5| "indent_char": "\t"
——|
24| "indent_size": 1,
25| "indentCharacter": "\t",
26| "indent_char": "\t",
——|
34| "indent_size": 1,
35| "indent_char": "\t",
36| "indent_character": "\t"
- Сохраните его (перейдите в
File
➤ Save
или просто нажмите Ctrl + S)
- Перезагрузите код Visual Studio (нажмите F1 ➤ введите
reload window
➤ нажмите Enter)
Ответ 5
В моем случае проблема заключалась в том, что расширение JS-CSS-HTML Formatter было установлено после обновления в январе. Свойство по умолчанию indent_char
является пробелом. Я удалил его, и странное поведение прекращается.
Ответ 6
Ниже настройки работают хорошо для меня,
"editor.insertSpaces": false,
"editor.formatOnSave": true, // only if you want auto fomattting on saving the file
"editor.detectIndentation": false
Вышеуказанные параметры будут отображаться и применяться к каждому файлу. Вам не нужно указывать/форматировать каждый файл вручную.
Ответ 7
Проверьте это в официальной настройке vscode:
// Controls whether 'editor.tabSize#' and '#editor.insertSpaces' will be automatically detected when a file is opened based on the file contents.
"editor.detectIndentation": true,
// The number of spaces a tab is equal to. This setting is overridden based on the file contents when 'editor.detectIndentation' is on.
"editor.tabSize": 4,
// Configure editor settings to be overridden for [html] language.
"[html]": {
"editor.insertSpaces": true,
"editor.tabSize": 2,
"editor.autoIndent": false
}
Ответ 8
Файл → Настройки → Настройки или просто нажмите Ctrl + , и найдите пробелы, затем просто отключите эту опцию:
![enter image description here]()
Мне пришлось заново открыть файл, чтобы изменения вступили в силу.