Как исключить все папки, кроме одной папки в vscode? - PullRequest
0 голосов
/ 06 марта 2020
└── target
    ├── W350
    ├── W400
    ├── W600
    ├── W600_HW_V2
    ├── W600_KT_HW_V2
    ├── W600_KT_HW_V2_neutral
    ├── W600_TK
    ├── W650
    ├── W650_HW_V2
    └── W750

Я хочу исключить все папки, кроме W600_KT_HW_V2. Затем VSCode должен показать это дерево:

└── target
    └── W600_KT_HW_V2

Что мне делать?

1 Ответ

0 голосов
/ 06 марта 2020

В общем, вы можете сделать это:

"files.exclude": {
  //  "**/node_modules": true,

  "**/[^1]*": true,    // all you need in your example
  "**/1[^2]*": true,
  "**/12[^3]*": true
},

В вашем случае понадобится только первое "**/[^1]*": true,. Дополнительные строки будут использоваться, если у вас есть папки типа 1abc, которые вы также хотите исключить. Насколько глубоко вы go зависит от сходства имен ваших папок. Но вы не даете много подробностей о том, насколько сложен ваш вариант использования.

Но вы видите шаблон. Vscode не поддерживает ! отрицание в files.exclude, поэтому вы должны исключить все, кроме того, что вы хотите, с помощью формы [^x].


После того, как вы обновили свою файловую структуру, она выглядит следующим образом работает:

"files.exclude": {
  "**/[^W]*": true,
  "**/W[^6]*": true,
  "**/W6[^0]*": true,

  "**/W600": true,         // the only one I had to "hardcode"
  "**/W600_[^K]*": true,
  "**/W600_KT_HW_V2_*": true
}

, что не так уж и плохо, учитывая, насколько похожа единственная папка, которую вы хотите, на те, которые должны быть исключены. Вы можете увидеть общую схему в двух примерах - мне удалось исключить несколько промежуточных соединений после того, как аналогичные папки были ранее исключены.


Также см. Как исключить все файлы, кроме определенных, в боковая панель в Visual Studio Code? для этого с расширениями файлов.

...