Мне нужно написать глобус, чтобы он соответствовал разным типам файлов (*.{js,ts,md,json,yaml,yml,css,html}
) везде внутри моего каталога проекта и всех его подкаталогов, кроме ignored-folder
.Например:
should-match.js
src/should-match.ts
src/nested/should-match.css
ignored/should-NOT-match.json
Это довольно близко:
!(ignored-folder)/**/*.{js,ts,md,json,yaml,yml,css,html}
Однако, он не включает корневой уровень should-match.js
.Некоторый способ исправить это состоит в том, чтобы в основном дублировать последний сегмент следующим образом:
{*.{js,ts,md,json,yaml,yml,css,html},!(ignored-folder)/**/*.{js,ts,md,json,yaml,yml,css,html}}
С переменными это можно записать так:
{$EXTENSIONS,!(ignored-folder)/**/$EXTENSIONS}
Однако я не могуиспользуйте переменные, чтобы дублирование было немного неприятным.Есть ли лучший способ написать глобус?