Хорошо, я попробовал предложение wp78de, которое добавило больше обратной косой черты, и это сработало, ответ:
{
"Comment": {
"prefix": "#",
"body": "<!-- ${TM_FILEPATH/([^/]*\/[^/]*)$/$1/} -->"
}
}
троил фрагмент кода about, цель которого - добавить комментарий, который добавляет базовый каталог и имя файла<!-- templates/base.html -->
как это, но отбрасывает остальную часть пути. Я считаю, что это изначально основано на фрагментах TextMate.
Я перепробовал все, но не могу заставить его работать, возможно, это что-то глупое, но я не вижу, что я делаю неправильно.
Используя толькоTM_FILEPATH
без регулярного выражения приводит к<!-- /Users/johndoe/Sites/blog/blog/templates/base.html -->
Я использовал этоhttps://code.visualstudio.com/docs/editor/userdefinedsnippets чтобы найти пример для моего кода. Вот пример:
${TM_FILENAME/(.*)\\..+$/$1/}
| | | |
| | | |-> no options
| | |
| | |-> references the contents of the first
| | capture group
| |
| |-> regex to capture everything before
| the final `.suffix`
|
|-> resolves to the filename
Благодаря идеям двух комментаторов я наконец смог заставить его работать.
Один комментатор поставил меня на путь с двойной обратной косой чертой, чтобы ловить как Windows, так и Unix стиль.
Другой комментатор предложил квадратные скобки.
Конечный результат:
{
"Comment": {
"prefix": "#",
"body": "<!-- ${TM_FILEPATH/.*[\\/](.*[\\/].*)$/$1/} -->",
}
}