Как добавить тег Finder в macOS программно, используя Swift, не помечая файл? - PullRequest
0 голосов
/ 07 января 2019

Я создаю приложение macOS, которое программно устанавливает теги Finder для файлов, используя расширенные атрибуты, аналогичные этому ответу для Swift 3: Установить цвет метки Finder . Это хорошо работает.

Однако я хотел бы создать тег и сделать его доступным в файловой системе, не добавляя тег к определенному файлу. Например, когда пользователь нажимает кнопку, я хочу создать тег, подобный Finder - Настройки - Теги , где вы можете создать новый тег, нажав кнопку +. Вам не нужно указывать файл или папку.

Я попытался добавить новый тег в _kMDItemUserTags фиктивной папки, используя setResourceValue API . Это создает тег, как и ожидалось. Однако в поиске этого тега теперь отображается фиктивная папка, что не очень приятно. Как только я снова удаляю тег из фиктивной папки (и никакой другой файл или папка не имеет этого тега), тег исчезает из списка доступных тегов.

Итак, мне интересно, как можно создать новый тег в Swift и сохранить его, не назначая его файлу?

...