Можно ли добавить собственные фрагменты кода в Visual Studio Code? И если да, то как? VSCode основан на Atom, поэтому это должно быть возможно.
Можно ли добавить собственные фрагменты кода в Visual Studio Code? И если да, то как? VSCode основан на Atom, поэтому это должно быть возможно.
Ответы:
Допустим, мы хотим открыть настраиваемые сниппеты для языка GO. Тогда мы можем сделать:
Фрагменты определены в формате JSON и хранятся в файле .json для каждого пользователя (languageId). Например, фрагменты Markdown помещаются в файл markdown.json.
Обновите новые инструменты:
Сайт генератора сниппетов: https://snippet-generator.app/
option - 1 Есть плагин VsCode под названием: snippet creator ..
После его установки все, что вам нужно сделать, это:
вариант - 2 проверить этот сайт . вы можете создавать сниппеты для кода vs, возвышенного текста и атома.
После создания сниппета на этом сайте. Перейдите к файлу фрагмента соответствующей среды IDE и вставьте его. Например, для фрагмента JS в коде VS перейдите в раздел File-> preference-> user snippet, затем он открывает файл javascript.json, затем вставляет фрагмент кода с указанного выше сайта внутрь него, и все готово.
Начиная с версии 0.10.6 вы можете добавлять собственные сниппеты. Прочтите документацию по созданию собственных сниппетов . Вы можете найти / создать собственные сниппеты, поместив файл json в C:\Users\<yourUserName>\AppData\Roaming\Code\User\snippets
. Например, пользовательские фрагменты javascript будут в\snippets\javascript.json
Вы также можете публиковать свои сниппеты, что тоже очень удобная функция. Джон Папа создал красивый фрагмент angular + typescript, который вы можете скачать как расширение на торговой площадке .
Вот пример фрагмента, взятого для документации по javascript для цикла:
"For Loop": {
"prefix": "for",
"body": [
"for (var ${index} = 0; ${index} < ${array}.length; ${index}++) {",
"\tvar ${element} = ${array}[${index}];",
"\t$0",
"}"
],
"description": "For Loop"
},
куда
For Loop
это имя сниппета prefix
определяет префикс, используемый в раскрывающемся списке IntelliSense. В этом случае для.body
- это содержимое фрагмента. Возможные переменные:
description
это описание, используемое в раскрывающемся списке IntelliSenseВы можете посмотреть это видео, чтобы получить краткое руководство
Перейдите в Файл -> Настройки -> Пользовательские фрагменты . Выберите желаемый язык.
Теперь введите следующий код, чтобы создать фрагмент цикла for:
"Create for loop":{
"prefix": "for",
"body":[
"for(int i = 0; i < 10; i++)",
"{",
" //code goes here",
"}"
],
"description": "Creates a for loop"
}
Вы сделали.
Наберите "for" в редакторе и воспользуйтесь первым предсказанием.
КОРОТКОЕ -
Надеюсь это поможет :)
Примечание: перейдите к File-> Preferences-> User Snippets. Затем выберите язык, на котором вы
создали фрагмент. Здесь вы найдете фрагмент.
Есть плагин VsCode под названием: snippet creator ..
После его установки все, что вам нужно сделать, это:
Вот и все ..
Примечание: если вы хотите отредактировать свои фрагменты, вы найдете их в [fileType] .json
Пример: Ctrl+ P, затем выберите «javascript.json»
Вы можете добавить собственные скрипты, перейдите по ссылке File --> Preferences --> User Snippets
. Выберите желаемый язык.
Если вы выберете Javascript, вы увидите собственный сценарий по умолчанию, console.log(' ');
например:
"Print to console": {
"prefix": "log",
"body": [
"console.log('$1');",
"$2"
],
"description": "Log output to console"
},
Я пробовал добавлять фрагменты в javascriptreact.json, но у меня это не сработало.
Я пробовал добавлять сниппеты в глобальную область видимости, и это работает как шарм.
FILE --> Preferences --> User snippets
здесь выберите New Global Snippets File
, дайте имя javas criptreact.code-snippets
.
Для других языков вы можете назвать [your_longuage] .code-snippets
На данный момент это недокументированная функция, но скоро появится. Есть папка, в которую вы можете добавить их, и они появятся, но она может измениться (по какой-то причине это недокументировано).
Лучший совет - добавить это на сайт с голосовыми сообщениями пользователей и дождаться его окончания. Но это приближается.
VSCode представляет это в версии 0.5, см. Здесь . Синтаксис фрагмента соответствует синтаксису фрагмента TextMate и может быть записан в пользовательских настройках.
Если вы не хотите писать свои сниппеты в JSON, попробуйте Snipster . Он позволяет вам писать фрагменты, как если бы вы писали сам код - без необходимости заключать каждую строку в кавычки, escape-символы, добавлять метаинформацию и т. Д.
Он также позволяет писать один раз, публиковать где угодно . Таким образом, вы можете использовать свой фрагмент в VS Code, Atom и Sublime, а также в других редакторах в будущем. Больше информации здесь .
Возможно, это не настоящий ответ (как некоторые ответили выше), но если вы заинтересованы в создании пользовательских фрагментов кода для других людей, вы можете создавать расширения, используя yeoman и npm (который по умолчанию поставляется вместе с NodeJS). ПРИМЕЧАНИЕ: это только для создания сниппетов для других систем. Но это также работает и для вас! За исключением того, что вам нужен код JS для всего этого.