Як налаштувати коефіцієнт перетворення «вкладку-простір» під час використання коду Visual Studio?
Наприклад, зараз у HTML видається два пробіли на натискання TAB, але в TypeScript він створює 4.
Як налаштувати коефіцієнт перетворення «вкладку-простір» під час використання коду Visual Studio?
Наприклад, зараз у HTML видається два пробіли на натискання TAB, але в TypeScript він створює 4.
Відповіді:
За замовчуванням Visual Studio Code спробує відгадати ваші параметри відступу залежно від файлу, який ви відкриєте.
Ви можете вимкнути відгадування через "editor.detectIndentation": false.
Ви можете легко налаштувати це за допомогою цих трьох налаштувань для Windows у меню Файл → Налаштування → Налаштування користувача та для Mac у меню Код → Налаштування → Налаштування або ⌘,:
// The number of spaces a tab is equal to. This setting is overridden
// based on the file contents when `editor.detectIndentation` is true.
"editor.tabSize": 4,
// Insert spaces when pressing Tab. This setting is overriden
// based on the file contents when `editor.detectIndentation` is true.
"editor.insertSpaces": true,
// When opening a file, `editor.tabSize` and `editor.insertSpaces`
// will be detected based on the file contents. Set to false to keep
// the values you've explicitly set, above.
"editor.detectIndentation": false
tabSizeмову? наприклад, під час редагування декількох файлів на різних мовах в одній робочій області (наприклад, Ruby, JavaScript, CSS тощо) - Ruby буде 2пробілами, але CSS буде 4... як правило.
Я використовую версію 1.21, але, думаю, це може стосуватися і більш ранніх версій.
Погляньте на праву нижню частину екрана. Ви повинні побачити те , що говорить Spacesабо Tab-Size.
Шахта показує пробіли, →
Це працює лише на документ, а не на весь проект. Якщо ви хочете застосувати його у всьому проекті, вам також потрібно додати його "editor.detectIndentation": falseдо налаштувань користувача.
Ну, якщо вам подобається спосіб розробника, Visual Studio Code дозволяє вам вказати різні типи файлів для tabSize. Ось приклад мого settings.jsonчотирьох пробілів за замовчуванням та двох просторів JavaScript / JSON:
{
// I want my default to be 4, but JavaScript/JSON to be 2
"editor.tabSize": 4,
"[javascript]": {
"editor.tabSize": 2
},
"[json]": {
"editor.tabSize": 2
},
// This one forces the tab to be **space**
"editor.insertSpaces": true
}
PS: Ну, якщо ви не знаєте, як відкрити цей файл (спеціально в новій версії Visual Studio Code), ви можете:
За замовчуванням Visual Studio Code автоматично визначає відступ поточного відкритого файлу. Якщо ви хочете вимкнути цю функцію і зробити всі відступи, наприклад, два пробіли, зробіть наступне в налаштуваннях користувача або в налаштуваннях робочої області.
{
"editor.tabSize": 2,
"editor.detectIndentation": false
}
Ми можемо керувати розміром вкладки за типом файлу за допомогою EditorConfig та його EditorConfig для розширення коду VS. Тоді ми можемо зробити Alt+ Shift+ Fконкретними для кожного типу файлів.
ext install EditorConfig
[*]
indent_style = space
[*.{js,ts,json}]
indent_size = 2
[*.java]
indent_size = 4
[*.go]
indent_style = tab
EditorConfig замінює всі параметри settings.json для редактора. Не потрібно міняти editor.detectIndentation.
extви говорите (будь ласка, відповідайте, редагуючи свою відповідь, а не тут, у коментарях (як це доречно))? Якийсь Node.js? Яка платформа?
Якщо ви використовуєте більш гарне розширення у Visual Studio Code, спробуйте додати це до файла settings.json:
"editor.insertSpaces": false,
"editor.tabSize": 4,
"editor.detectIndentation": false,
"prettier.tabWidth": 4,
"prettier.useTabs": true // This made it finally work for me
У Visual Studio Code версії 1.31.1 або новішої версії (я думаю): Як і sed Alex Alex Dima , ви можете легко налаштувати це за допомогою цих параметрів
Ви хочете переконатися, що ваш configconfig не суперечить конфігурації налаштувань вашого користувача чи робочої області, тому що я просто роздратовано думав, що налаштування файлів налаштувань не застосовуються, коли моя конфігурація редактора скасовує ці зміни.
Це lonefy.vscode-js-css-html-formatterвинен. Відключіть його та встановіть HookyQR.beautify.
Тепер на збереженні ваші вкладки не будуть перетворені.
У правому нижньому куті є пробіли: пробіли: 2
Там ви можете змінити відступ відповідно до своїх потреб: Параметри відступу
Під час використання TypeScript ширина вкладки за замовчуванням завжди дві, незалежно від того, що написано на панелі інструментів. Вам потрібно встановити "prettier.tabWidth" у налаштуваннях користувача, щоб змінити його.
Ctrl+ P, Введіть → налаштування користувача, додайте:
"prettier.tabWidth": 4
Якщо прийнята відповідь на цю публікацію не працює, спробуйте:
У моєму редакторі був встановлений EditorConfig для коду Visual Studio , і він продовжував переосмислювати мої користувацькі налаштування, які були встановлені для файлів відступу за допомогою пробілів. Кожен раз, коли я перемикався між вкладками редактора, мій файл автоматично отримував би відступи від вкладок, навіть якщо я перетворив відступи в пробіли !!!
Одразу після того, як я видалив це розширення, відступ більше не змінюється між переключеннями вкладок редактора, і я можу працювати зручніше, а не потрібно вручну конвертувати вкладки в пробіли кожного разу, коли я перемикаю файли - це боляче.
Вже є багато хороших відповідей наших улюблених членів громади. Я насправді хотів додати вкладку розміру коду C # і знайшов цю тему. Я знайшов багато рішень, і офіційні документи VS Code є приголомшливими. Я просто хочу поділитися своїм налаштуванням C #:
"[csharp]": {
"editor.insertSpaces": true,
"editor.tabSize": 4
},
просто скопіюйте та вставте вище код у settings.jsonфайл та збережіть. Дякую
Файл меню → Налаштування → Установки
Додати до налаштувань користувача:
"editor.tabSize": 2,
"editor.detectIndentation": false
потім клацніть правою кнопкою миші документ, якщо його вже відкрили, і натисніть кнопку Форматувати документ, щоб ваш існуючий документ виконував ці нові налаштування.
Рішення @ alex-dima з 2015 року змінить розміри вкладок та пробіли для всіх файлів, а рішення @ Tricky з 2016 року лише змінить налаштування для поточного файлу.
Станом на 2017 рік я знайшов ще одне рішення, яке працює на мові. Visual Studio Code не використовував належних розмірів вкладок або параметрів місця для Elixir , тому я виявив, що можу змінити налаштування для всіх файлів Elixir.
Я натиснув мову в рядку стану ("Elixir" у моєму випадку), вибрав "Налаштувати налаштування на основі мови" Elixir "..." та відредагував мовні налаштування Elixir. Я просто скопіював налаштування "editor.tabSize" та "editor.insertSpaces" із налаштувань за замовчуванням зліва (я радий, що це показано), а потім змінив їх праворуч.
Це спрацювало чудово, і тепер усі файли мов Elixir використовують належний розмір та вкладку.
Мені довелося зробити багато редагувань налаштувань, як і попередні відповіді, тому я не знаю, що змусило його працювати після багатьох змін.
Нічого не працювало , поки я не закрив і openen мій IDE, але останні три речі , які я зробив Вимикає lonefy.vscode-js-css-html-formatter, "html.format.enable": true,і перезапустити Visual Studio.
{
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"workbench.colorTheme": "Default Light+",
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features",
"editor.tabSize": 2,
"editor.detectIndentation": false,
"editor.insertSpaces": true
},
"typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": true,
"editor.tabSize": 2,
"typescript.format.insertSpaceAfterConstructor": true,
"files.autoSave": "afterDelay",
"html.format.indentHandlebars": true,
"html.format.indentInnerHtml": true,
"html.format.enable": true,
"editor.detectIndentation": false,
"editor.insertSpaces": true,
}
Якщо це для Angular 2, а CLI генерує файли, які ви хотіли б відформатувати іншим чином, ви можете редагувати ці файли, щоб змінити те, що створюється:
npm_modules/@angular/cli/blueprints/component/files/__path__/*
Не рекомендується масово, оскільки оновлення npm видалить вашу роботу, але це заощадило мені багато часу.
Користувач3550138 правильний. lonefy.vscode-js-css-html-formatterпереосмислює всі налаштування, згадані в інших відповідях. Однак не потрібно вимикати або видаляти її, як це можна налаштувати.
Повні інструкції можна знайти, відкривши бічну панель розширень та натиснувши на це розширення, і він відобразить інструкції щодо налаштування в робочій області редактора. Принаймні, це робиться для мене у Visual Studio Code версії 1.14.1.