В центре внимания теперь обработка сценариев bash как «документа» вместо «исполняемого файла unix»

0

У меня есть каталог часто используемых скриптов bash, и я склонен запускать их через Альфред

Альфред, в свою очередь, полагается на Spotlight, чтобы индексировать скрипты и назначать им мета-тип контента «public.unix-исполняемый файл».

После обновления с Mavericks до El Capitan, Spotlight рассматривал НЕКОТОРЫЕ из этих сценариев как «public.data» и Kind = Document. Это означает, что их больше нельзя запускать из Alfred.

$ mdls pull_repo1

..
kMDItemContentType             = "public.data"
kMDItemContentTypeTree         = (
    "public.data",
    "public.item"
)
..
kMDItemKind                    = "Document"

Переиндексировав Spotlight с нуля, теперь он рассматривает ВСЕ эти сценарии как public.data.

Кто-нибудь может дать мне некоторое представление о том, почему это изменилось в недавнем OSX, и есть ли решения, чтобы это исправить?

carpii
источник
Кто-нибудь хочет объяснить, почему мой вопрос отклонен? Это совершенно правильный вопрос, а также актуален для SuperUser.
carpii
Щелкните правой кнопкой мыши один, получить информацию. Измените «Открыть с помощью» на предпочитаемое вами приложение, и кнопка «Изменить все ...» появится ниже. Может потребоваться перезагрузка и / или переиндексация, прежде чем Spotlight догонит
Tetsujin
@Tetsujin - Спасибо, но проблема, с которой я сталкиваюсь, другая. OSX уже знает, что мои скрипты являются исполняемыми и должны открываться в iTerm при запуске. Проблема в том, что Spotlight назначает им общий мета-тип public.data. Это не было поведением в Mavericks, где им правильно присвоили 'public.unix-исполняемый файл' в индексе Spotlights
carpii
Ах, я вижу - немного выше моей зарплаты, извините, но мне интересно, может ли RCDefaultApp справиться с этим. Может стоит посмотреть. На моей машине public.data настроен на открытие с TextEdit, public.unix-исполняемый с Терминалом [мне никогда не нужно было менять их самому]
Tetsujin
@Tetsujin - Никаких проблем, все равно спасибо
carpii

Ответы:

0

Я нашел решение, хотя и не идеальное

После переименования всех моих сценариев bash с расширением .sh Spotlight начинает индексировать их как kMDItemContentType = 'public.shell-script'

По крайней мере, это означает, что Альфред может его забрать

carpii
источник