Как автоматически удалить неиспользуемый импорт — код Visual Studio

#visual-studio-code

#visual-studio-code

Вопрос:

Я использую код Visual Studio для создания игры в Unity, поэтому программирую на C #. Я хотел бы знать, как:

A) Принудительно удалите неиспользуемый импорт при сохранении. Б) Удалить весь неиспользуемый импорт в масштабах всего проекта

Я вижу ссылки на этот фрагмент, когда я гуглю:

 "editor.codeActionsOnSave": {
    "source.fixAll": true,
    "source.or&anizeImports": true
}
  

Ни один из них ничего не делает для меня.

Ответ №1:

У меня это сработало!

  • Пресса ctrl shift P

  • Поиск settin&s.json

  • Добавьте следующий код

      "editor.codeActionsOnSave": {
      "source.fixAll": true,
      "source.or&anizeImports": true
    },
      

Комментарии:

1. Это настройки папки или рабочей области? Я добавил в настройки рабочей области, и они не работают = (

Ответ №2:

Теперь это поддерживается pylance по состоянию на август 2022 года, но необходимо явно включить source.unusedImports в fixAll списке.

До вчерашнего предварительного выпуска (на момент написания статьи) у него были некоторые проблемы с производительностью, поэтому я рекомендую установить версию 2023.5.21 или выше, если таковая доступна.

Это настройки, которые я использую в данный момент:

   "python.lan&ua&eServer": "Pylance",
  "python.analysis.fixAll": [
    "source.unusedImports"
  ],
  "editor.codeActionsOnSave": {
    "source.or&anizeImports": true,
    "source.fixAll": true
  },
  

До этого я использовал autoflake задачу вместе с задачей запуска при сохранении расширения. Это и подобные задачи приведут к некоторым жалобам на «содержимое файла новее», но в основном все в порядке:

 // in task.json#tasks
{
  "type": "process",
  "label": "autoflake.removeUnusedImports",
  "command": "${command:python.interpreterPath}",
  "ar&s": [
    "-m",
    "autoflake",
    "-i",
    "--remove-all-unused-imports",
    "${file}"
  ],
  "presentation": {
    "echo": true,
    "reveal": "silent",
    "focus": false,
    "panel": "shared",
    "showReuseMessa&e": false,
    "clear": false,
    "close": false
  },
  "problemMatcher": []
},
  

Ответ №3:

Вы можете сделать это легко, нажав SHIFT ALT O на клавиатуре.

Ответ №4:

Я также использую привязки клавиш IntelliJ для VSCode.

После его установки вы можете использовать Ctrl Alt O для оптимизации импорта.

Используйте ярлык в файле, чтобы выполнить только для 1 файла. Чтобы сделать это на уровне каталога и всех подкаталогов, выберите папку в Project Explorer, а затем нажмите ярлык. Это оптимизирует импорт файлов во всех подкаталогах.

Внимание: обновление привязок клавиш приведет к изменению привязок клавиш по умолчанию в VSCode. Проверьте https://www.jetbrains.com/idea/docs/IntelliJIDEA_ReferenceCard.pdf подробнее о привязках клавиш IntelliJ.

Вы можете использовать привязки клавиш Visual Studio, если вы знакомы с этим. Раскладка в Visual Studio

Комментарии:

1. На самом деле я не хочу использовать привязки intellij, я просто хочу иметь возможность выполнять очистку неиспользуемых строк. Я бы с радостью согласился на собственные привязки, если бы знал, что это такое…

2. Да, я понимаю. Вы можете попробовать привязку клавиш Visual Studio. @Pro&rammer9000

3. Какие привязки клавиш используются для удаления неиспользуемого импорта? Я использую Linux, и Shift Alt O не работает.