Як відформатувати код під час збереження у коді VS


185

Я хотів би автоматично форматувати код TypeScript за допомогою вбудованого форматера, коли я зберігаю файл у коді Visual Studio.

Я знаю наступні варіанти, але жоден з них не є достатньо хорошим:

  • Форматування вручну Shift + Alt + F
  • Формат на тип "editor.formatOnType": true
    • Він форматує рядок при натисканні клавіші Enter. На жаль, він залишає його неформатованим, коли ви клацаєте мишею інший рядок або натискаєте стрілку вгору / вниз.
  • Використовуйте наявне розширення
    • Я спробував це одне , але це не схоже на роботу дуже добре.
  • Використовуйте прикрасити "beautify.onSave": true
    • Це не працює з TypeScript
  • Написати розширення користувача
    • Це складно, якщо ви хочете правильно обробляти автозбереження та збирати.

Відповіді:


279

З вересня 2016 року (VSCode 1.6) це зараз офіційно підтримується .

Додайте у settings.jsonфайл наступне :

"editor.formatOnSave": true

5
чи є спосіб виключити деякі файли? тобто я хочу лише форматувати .js файли, а не .html файли.
gabrielAnzaldo

@ gabodev77prettier у коді VS має параметри цього (наприклад, prettier.javascriptEnable, prettier.cssEnable ...), але не для HTML.
Freewalker

7
Чи можна його форматувати на автоматичному збереженні? formatOnSave працює для мене лише тоді, коли я вручну натискаю Cmd + S.
Freewalker

@gabrielAnzaldo Дивіться це питання про те , як виключити певні файли / типи файлів: stackoverflow.com/questions/44831313 / ...
Gama11

@LukeWilliams Це наразі неможливо, тут є запит на функцію: github.com/microsoft/vscode/isissue/45997
Gama11

64

Щоб автоматично форматувати код при збереженні:

  • Натисніть, Ctrl ,щоб відкрити налаштування користувача
  • Введіть наступний код у відкритий файл налаштувань

    {
        "editor.formatOnSave": true
    }
  • Зберегти файл

Джерело


33

Якщо ви хочете створити автоматичний формат збереження лише за допомогою джерела Javascript, додайте цей Users Setting(натисніть Cmd,або Ctrl,):

"[javascript]": { "editor.formatOnSave": true }

мою версію, я почав пошук "formatOnSave" і просто повинен був натиснути прапорець у користувальницькому інтерфейсі налаштувань коду Vs
Akin Hwan

26

Більше не потрібно додавати команди. Для тих, хто не знайомий з кодом Visual Studio і шукає простий спосіб відформатувати код при збереженні, будь ласка, виконайте наведені нижче дії.

  1. Відкрийте "Налаштування", натиснувши [Cmd+,]на Mac або використовуючи наведений нижче знімок екрана.

Код VS - Відкрийте командне налаштування зображення

  1. Введіть " формат " у вікні пошуку та увімкніть опцію " Форматувати при збереженні "

введіть тут опис зображення

Ви закінчили. Дякую.


4

Для користувача MAC додайте цей рядок у налаштування за замовчуванням

Шлях до файлу: / Користувачі / USER_NAME / Бібліотека / Підтримка додатків / Код / Користувач / settings.json

"tslint.autoFixOnSave": вірно

Зразок файлу:

{
    "window.zoomLevel": 0,
    "workbench.iconTheme": "vscode-icons",
    "typescript.check.tscVersion": false,
    "vsicons.projectDetection.disableDetect": true,
    "typescript.updateImportsOnFileMove.enabled": "always",
    "eslint.autoFixOnSave": true,
    "tslint.autoFixOnSave": true
}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.