Автоматична заміна VSCode від однієї до подвійних лапок


109

Коли я виконую Format Documentкоманду у файлі Vue Component.vue VSCode, замінюю всі рядки з одинарними цитатами на рядки з подвійними лапками.

У моєму конкретному випадку це правило вступає в конфлікт із конфігурацією ворсу електрон-vue, яка вимагає одинарного цитування.

У мене не встановлені красивіші розширення (ні prettier.singleQuoteв моєму налаштуванні)

Як налаштувати VSCode, щоб уникнути цього?


Відповіді:


137

У мене не встановлено prettierрозширення, але після прочитання можливої ​​повторюваної відповіді я додав з нуля в моєму налаштуванні користувача ( UserSetting.json, Ctrl +, ярлик):

"prettier.singleQuote": true

Частина зеленого попередження ( Unknown configuration setting) одинарні лапки більше не замінюються.

Я підозрюю, що красивішого розширення не видно, але воно вбудоване всередину розширення Vetur .


2
Це не спрацювало для мене. Мені довелося використовувати vetur.format.defaultFormatterOptionsзамість цього. Див. Https://vuejs.github.io/vetur/formatting.html#settings .
user1620220

Відкривши швидкий пошук, введіть "> Налаштування користувача" та натисніть "Налаштування: Відкрити Налаштування користувача". У вікні пошуку за вашими уподобаннями введіть "prettier.singleQuote" і поставте прапорець біля кращої одинарної котирування.
Коді,

3
Це не спрацювало для мене, quote_type = singleу [*.myDesiredFileExtension]розділі у .editorconfigфайлі було рішення.
Самотній

82

Ну, як і згаданий хлопець (@ user2982122), але замість Файл перейдіть до Коду -> Налаштування -> Налаштування, потім знайдіть Quote , виберіть Prettier та встановіть обидва прапорці

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


1
Чи потрібно перезавантажувати ці налаштування, щоб вони набрали чинності? У мене їх обох перевірено, але коли я зберігаю файл .jsx, подвійні лапки не змінюються на одинарні.
J Woodchuck,

Це дивно, я використовую цю версію: Випуск 1.14, збірка 1.14.0-17740
Мустафа Мехатрія

58

Для проектів, які використовують .editorconfigфайл за замовчуванням. Форматер буде ігнорувати правила в налаштуваннях і використовувати правила в .editorconfig, тоді ви можете:

  • Видаліть .editorconfigфайл і скористайтеся налаштуваннями VSCode.
  • Додайте quote_type = singleдо .editorconfigфайлу, що стосується вашого типу файлу. Ви також можете встановити quote_typeзначення doubleабо auto.

1
Я зробив це, і це не спрацювало, незалежно від того, чи встановив я editorconfig глобально, чи намагаюся подати в суд на editorconfig за код VS. :(
acarlstein

Дякую, моя програма Angular використовує .editorconfigза замовчуванням (не знала цього), і ваше рішення виправило мою проблему
benshabatnoam

будь ласка, розгляньте: ви не можете видалити, .editorconfigякщо це звичайний версійний проект
Lonely

36

Схоже, це помилка, відкрита для цього випуску: Prettier Bug

Жодне з вищезазначених рішень не працювало для мене. Єдине, що спрацювало, це додавши цей рядок коду в package.json:

"prettier": {
    "singleQuote": true
  },


14

будь ласка, розгляньте .editorconfigперезапис усіх, використовуйте:

[*]
quote_type = single

12

Правильне рішення:

Я додаю файл .prettierrc.js у свій основний кореневий проект і пишу

module.exports = {
    singleQuote: true
  };

Я спробував це, але це видає помилку: "ESLint: Не вдалося завантажити конфігурацію" за замовчуванням / конфігурації / eslint "для розширення з". Найкраще було б додати це в package.json. Рішення
Avjol Sakaj

ви розмістили файл .prettierrc.js у кореневій частині проекту?
Омар Хасан,

8

Для таких початківців, як я:

У меню панелі навігації вгорі: виберіть Файл -> Налаштування -> Налаштування. У текстовому полі пошуку введіть Quote. У відфільтрованому списку, що з’явиться нижче, знайдіть значок шестірні та поруч із ним - „Prettier”. Клацніть на прапорець, щоб увімкнути "Привабливіше: одинарна пропозиція"


7

Встановіть красивіше розширення та вставте нижче код у свій settings.jsonфайл VSCode

 "prettier.useEditorConfig": false,
 "prettier.singleQuote": true

це ігноруватиме налаштування вашого .editorconfigфайлу.


6

Як зазначає @attdona, розширення Vetur включає красивіші.

Хоча ви можете змінити гарніші налаштування, відповідно до прийнятої відповіді, ви також можете змінити форматор для певних регіонів компонента vue.

Ось, наприклад, я встановив Vetur використовувати форматтер vscode-typecript, оскільки він використовує одинарні лапки за замовчуванням:

налаштування vscode vetur -



6

У мене була та сама проблема в vscode. Просто створіть файл .prettierrc у своєму кореневому каталозі та додайте наступний json. Для одинарних лапок додайте:

{
  "singleQuote": true
}

Для подвійних лапок додайте:

  {
      "singleQuote": false
  }

6

Спробуйте одне з цих рішень

  1. Додайте цей запис у файл vscode settings.json "prettier.singleQuote": true
  2. У файлі vscode, якщо у вас є .editorconfigфайл, додайте цей рядок під кореневим символом [*]quote_type = single
  3. У файлі vscode, якщо у вас є .prettierrcфайл, додайте цей рядок
{
    "singleQuote": true,
    "vetur.format.defaultFormatterOptions": {
        "prettier": {
            "singleQuote": true
        }
    }
}

1
другий варіант працював, до жаль , інші відповіді на цій сторінці не працює
Мо

5

Єдине рішення, яке працювало для мене: і лише для Angular Projects:

Просто зайдіть у файл ".editorconfig" проекту та вставте 'quote_type = single'. Сподіваюся, це також може спрацювати і на вас.


4

Я додав файл, який називається .prettierrcу моїй папці проекту. Вміст файлу:

{
    "singleQuote": true,
    "vetur.format.defaultFormatterOptions": {
        "prettier": {
            "singleQuote": true
        }
    }
}

2

Ви можете використовувати це в settings.json

"javascript.preferences.quoteStyle": "single"


1

У мене працює перевірка одинарної лапки в Prettier, а також tslint.autoFixOnSave as true

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

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


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.