Можно ли сделать так, чтобы символическая ссылка (на папку .app) в каталоге приложений отображалась в центре внимания?

45

Я использовал Brew для установки MacVim, и он поместил его в /usr/local/Cellar/macvim/7.3-61/MacVim.app

Я хотел бы иметь возможность перейти в центр внимания и набрать MacVim для запуска приложения. Я попытался создать символическую ссылку в каталоге приложений для /usr/local/Cellar/macvim/7.3-61/MacVim.app. Но это, похоже, не проявляется в центре внимания. Я установил исполняемые биты на символическую ссылку. открыть MacVim.app из командной строки работает. Как я могу заставить MacVim появляться в поиске Spotlight?

m_sharp
источник
2
Прожектор не заглядывает внутрь скрытых папок и, очевидно, не работает и для псевдонимов. Вы используете прожектор для запуска приложений? Если это так, я должен рекомендовать alfredapp.com . Я использую это, и это здорово. Быстрее, чем в центре внимания!
kevin9794
Спасибо. Я установил alfred и добавил папку MacVim в область поиска. Я в гораздо лучшей форме.
m_sharp
3
Хорошо, я понял это. Если я сделаю псевдоним /usr/local/Cellar/macvim/7.3-61/MacVim.app, Spotlight его проиндексирует. Более подробную информацию о псевдонимами, проверьте switchingtomac.com/tutorials/creating-aliases-in-mac-os-x
m_sharp
3
Добро пожаловать, чтобы спросить другого! Если вы нашли решение, пожалуйста, опубликуйте его как ответ, чтобы другим с такой же проблемой было легче увидеть, что помогло. Пожалуйста, посмотрите на часто задаваемые вопросы для получения дополнительной информации. Спасибо.
Натан Гринштейн
1
Чтобы пояснить комментарий @ m_sharps, похоже, что Spotlight будет индексировать псевдонимы, но не символические ссылки ( ln -s).
Зортни

Ответы:

37

В Finder нажмите CommandShiftGдля Перейти в папку . Введите /usr/local/Cellar/macvim/7.3-61/и нажмите return. Выберите файл (на самом деле это папка) MacVim.app Нажмите CommandLдля Make Alias . В зависимости от разрешений вам может быть предложено ввести пароль администратора здесь.

Нажмите, CommandNчтобы создать новое окно поиска . Нажмите, CommandShiftAчтобы перейти в папку Приложения в этом окне.

Перетащите только что созданный псевдоним из окна, в котором он был создан, в окно, содержащее папку « Приложения ». Переименуйте псевдоним, чтобы он больше не заканчивался на «псевдоним».

Даниэль
источник
2
Я последовал твоим шагам, и MacVim появился в центре внимания. Однако при попытке запустить MacVim из центра внимания я получаю сообщение об ошибке «Элемент MacVim используется OS X и не может быть открыт».
m_sharp
Хммм. Как вы обычно запускаете MacVim, когда не используете Spotlight? Вы получаете сообщение об ошибке тогда?
Даниэль
Возможно, прожектор не может запустить его, потому что у него нет прав доступа к / usr / local / или что-то еще.
Styfle
Я заставил это работать, сначала изменив разрешения для / usr / local / Cellar с помощью sudo chflags nohidden / usr / local / Cellar (я фактически сделал это для / usr / usr / local и / usr / local / Cellar). Затем я использовал Finder для создания псевдонима для MacVim (тот, что в Cellar). Затем я переместил псевдоним в папку «Приложения». Spotlight теперь находит MacVim (смотрите внизу списка, пока не откроете его один раз).
Крис
Мне также нужно было сделать дополнительные изменения разрешений, по умолчанию кажется, что символическая ссылка была создана без каких-либо разрешений на выполнение, добавляя те, которые заставили символическую ссылку появиться в центре внимания. Как ни странно, псевдонимы, которые я создал и затем переименовал во что-то, что не включало слово «псевдоним» в конце, также не были замечены в центре внимания. Помещение «псевдонима» в конце имени символической ссылки исправило это
chrismarx
6

Метод псевдонима не работает для меня. Лучшим вариантом является использование Automator для создания приложения, которое запускает сценарий оболочки:введите описание изображения здесь

Кроме того, прямая ссылка на MacVim.app в каталоге Cellar, как предлагают некоторые другие ответы, привязывает вас к определенной версии. Если Brew обновит MacVim, ваша ссылка все равно будет указывать на старую версию. Скорее, вы должны использовать:

open /usr/local/opt/macvim/MacVim.app $@

так как это местоположение автоматически обозначается brew самой последней версией.

Это отлично сработало для меня. Я сохраняю файл Automator в iCloud, чтобы удобно добавить приложение на другие машины.

ZIM
источник
Это кажется самым надежным решением. Для чего $@?
Джектоз
1
$ @ Представляет аргументы, переданные сценарию. В этом случае любые аргументы, переданные в сценарий, перенаправляются в MacVim.app (т. Е. Имена файлов, параметры и т. Д.). См. Этот ответ о специальных переменных оболочки.
Зим
Ах, спасибо. Это действительно трудно гуглить $@. Будет ли это на самом деле что-то делать в этом случае, так как скрипт запускается только при выборе приложения?
Джектоз
1
Да, это полезно, например, если вы используете Open withкоманду для файла в Finder. Приложение будет запущено с путем к файлу в качестве первого аргумента. Или, если вы установите MacVim в качестве приложения по умолчанию для типа файла, например .txt, - тогда двойной щелчок по файлу .txt запустит MacVim с выбранным файлом в качестве первого аргумента.
Зим 13.09.16
4

Я решил это с помощью сценария оболочки и аппликации.

Например, создайте скрипт с текстовым редактором, который содержит

#!/bin/bash

/usr/local/Cellar/macvim/7.3-61/MacVim.app

Тогда получите appify - http://git.abackstrom.com/appify.git

Запустите appify в сценарии оболочки, и он создаст приложение, которое вы можете поместить в / Applications, и будет вызывать MacVim. Это будет отображаться в центре внимания.

Дин Смит
источник
1
Если вы собираетесь сделать это таким образом, просто создайте приложение Automator для запуска сценария.
ocodo
Да @Slomojo, это оказалось самым простым подходом. Я создал шеллскрипт, который запускает приложение (в моем случае libreoffice) и поместил его в / usr / bin. Затем я использовал Automator, чтобы просто вызвать скрипт, и сохранил приложение, созданное Automator, в папке «Приложения» с именем, которое я хотел использовать в Spotlight. Абсурд.
atripes
3

Чтобы все было хорошо и можно было создавать сценарии, вы можете использовать osascriptнебольшой AppleScript и автоматически создавать свой псевдоним.

osascript <<END

  set macvim to POSIX file "/usr/local/Cellar/macvim/7.3-61/MacVim.app" 
  set applications_folder to POSIX file "/Applications"

  tell application "Finder"
    make alias file to macvim at applications_folder
  end tell

END
ocodo
источник
Это на самом деле работает, в отличие от многих однослойных osascript, которые я нашел в разных местах.
Ксандер Данн
1
Я бы порекомендовал переместить приложение MacVim в «Приложения». Или установить его через бочку. Псевдонимы индексируются в центре внимания, но их рейтинг раздражающе низок.
ocodo
Спасибо. Я заметил, что Spotlight трудно выбрать мой псевдоним MacVim.
Ксандер Данн
2

Для тех, кто использует homebrew для установки macvim (полностью рекомендуется)

Запустите следующее после установки

brew linkapps macvim
DevByStarlight
источник
1
К сожалению, они не отображаются в центре внимания.
Джектоз
но вы можете создать псевдоним для ссылки MacVim в каталоге / Applications, псевдоним выбирается Spotlight.
Петр Чапла
К сожалению, «brew linkapps» больше не существует и не заменяется.
Катаржина
2
  1. Символические ссылки (ln -s) не работали для меня, не похоже, что Spotlight увидит это как приложение.

  2. Создание псевдонима поиска (как описано Дэниелом) работало лучше при запуске из Finder, но не при использовании Finder Open With ... , псевдоним оставался серым.

В частности, как упоминалось в других комментариях, я также хотел, чтобы MacVim был доступен при использовании Open With ... из Finder, но с символьной ссылкой или псевдонимом Finder MacVim останется серым.

Для меня сработал простой скрипт Automator (как описано в zim) с командой «Run Shell Script». Единственное, что я должен был сделать иначе, чем то, что показал zim в своем ответе, это добавить параметр -a для открытия :

open -a /usr/local/opt/macvim/MacVim.app $@

Без -a, при использовании с «Открыть с помощью ...», MacVim запускается, но также и имя файла параметров открывается с любым приложением по умолчанию, поэтому я получаю как MacVim с пустым документом, так и TextEdit с файлом, который я выбрал открыть (а не MacVim с моим выбранным файлом открыт).

Сценарий automator может быть скопирован или добавлен в папку «Приложения». Я также изменил значок своего сценария автоматизатора на значок MacVim, скопировав и вставив значок из всплывающих окон «Информация о поиске» в Finder.

Эндрю Гилкрист
источник
0

После того, как я попробовал несколько из предложенных решений, мне лучше всего было скопировать приложение из Homebrew Cellar в каталог приложений:

cp -r /usr/local/Cellar/macvim/7.3-66/MacVim.app / Applications /

Центр внимания нашел это немедленно.

user39587
источник
0

Простой процесс установки homebrew позволил мне создать символическую ссылку на Sublime Text. Возможно, вам нужно больше.

Установите homebrew здесь, если у вас есть macOS

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

а затем из командной строки (при условии, что ST установлен)

ln -s "/ Applications / Sublime Text.app/Contents/SharedSupport/bin/subl" / usr / local / bin / subl

Майкл Сефранек
источник
-2

Похоже, вы могли бы сделать следующее из терминала.

$ ln -s /usr/local/Cellar/macvim/7.3-61/MacVim.app /Applications

Возможно, вам придется использовать, sudoчтобы поместить символическую ссылку в каталог / Applications.

afragen
источник
3
Spotlight обрабатывает символические ссылки на «системные файлы» как системные файлы, поэтому они не отображаются в обычных результатах. Псевдонимы все же.
Lri
Любой способ создать псевдоним OS X программно в Bash?
Матиас Биненс,
@MathiasBynens - посмотрите мой ответ, небольшой AppleScript сделает это.
ocodo