Создать Dock Icon для Spyder (устанавливается вместе с Anaconda)

4

Как я могу создать одну иконку дока для приложения, которое запускается через Терминал?

Я установил Spyder с помощью Anaconda. Я могу создать приложение запуска с помощью Platypus (см. Этот ответ ). Но фактическое spyder-приложение открывает новый (безобразный) значок дока с надписью «python» рядом с ним: иконки док

Путаница начинается, когда я хочу переключиться на приложение Spyder: я должен нажать на значок Python, а не на Spyder ...

машинист
источник

Ответы:

3

Утконос необязательно нужен для добавления иконки в шпион:

Запуск spyder в CLI является двухэтапным процессом:

~ / anaconda / bin / spyder - это скрипт оболочки, выполняющий «прокси-приложение» ~ / anaconda / bin / python.app, который сам запускает другое «прокси-приложение» ~ / anaconda / python.app / Contents / MacOS / python, включая аргумент ,


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

Два прокси-приложения являются «обертками / программами запуска» для всех других приложений Python Science, включенных в Anaconda. Вы не хотите ломать Анаконду - поэтому вам нужно создать две «спайдерные» пусковые установки.

Сделайте копию ~ / anaconda / bin / python.app: ~ / anaconda / bin / python.spyder.app и измените сценарий оболочки внутри (не забудьте также изменить пользователя в пути!).

#!/bin/bash
export PYTHONEXECUTABLE=/Users/user/anaconda/bin/python
/Users/user/anaconda/python.spyder.app/Contents/MacOS/python "$@"

Затем создайте копию ~ / anaconda / python.app: ~ / anaconda / python.spyder.app и добавьте в нее значок.

При spyderзапуске из терминала команда запустит python.spyder.app с пользовательским значком.

Теперь вы можете использовать Platypus для создания приложения для запуска spyder(вместо использования Terminal.app). Используйте следующие настройки:

Утконос спайдер

Это может сломаться после обновления Anaconda или spyder.


Я не думаю, что вы можете запустить spyder с одним значком стыковки spyder (со средством запуска spyder Platypus в качестве постоянного элемента Dock), потому что python.spyder.app/python.app сам по себе является оболочкой для spyder. Поэтому после нажатия на значок приложения Spyder Platypus в Dock вы всегда получите второй значок Spyder - причина, по которой ваше решение показывает значок python.app по умолчанию.

klanomath
источник
0

Этот вопрос является скорее вопросом программирования, чем вопросом юзабилити, однако, вероятно, его придется решать программно, поскольку macOS обычно ищет значок внутри приложения как часть файла .plist, а ваше приложение, вероятно, не имеет этого, потому что он запускается из командной строки как скрипт.

Взгляните на: Изменение значка приложения Какао, заголовка и меток меню во время выполнения

unknowndomain
источник