Créer une icône de dock pour Spyder (installé avec Anaconda)

4

Comment créer une seule icône de dock pour une application lancée via le terminal?

J'ai installé un spyder utilisant l'anaconda. Je peux créer une application de lancement à l'aide de Platypus (voir cette réponse ). Mais l’application de spyder ouvre une nouvelle icône (laide) du dock intitulée "python" à côté: icônes de quai

La confusion commence lorsque je souhaite passer à l'application Spyder: je dois cliquer sur l'icône python et non sur celle de spyder ...

conducteur de train
la source

Réponses:

3

Platypus n’est pas forcément nécessaire pour ajouter une icône à spyder:

Le démarrage de Spyder dans la CLI est un processus en deux étapes:

~ / anaconda / bin / spyder est un script shell exécutant "l'application proxy" ~ / anaconda / bin / python.app qui lance lui-même une autre "application proxy" ~ / anaconda / python.app / Contents / MacOS / python avec un argument .


Puisque le dernier script shell réside dans un ensemble d'applications, vous pouvez simplement ajouter une icône:

Les deux applications proxy sont des "wrappers / launchers" pour toutes les autres applications scientifiques Python incluses dans Anaconda. Vous ne voulez pas casser Anaconda - vous devez donc créer deux lanceurs "pour espionnage uniquement".

Faites une copie de ~ / anaconda / bin / python.app: ~ / anaconda / bin / python.spyder.app et changez le script shell à l'intérieur (n'oubliez pas de changer également l'utilisateur dans le chemin!).

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

Créez ensuite une copie de ~ / anaconda / python.app: ~ / anaconda / python.spyder.app et ajoutez-y une icône.

Lancée à partir du terminal, la commande spyderlancera python.spyder.app avec l’icône personnalisée.

Maintenant, vous pouvez utiliser Platypus pour créer une application à lancer spyder(au lieu d'utiliser Terminal.app). Utilisez les paramètres suivants:

Platypus spyder

Cela peut casser après une mise à jour d'Anaconda ou d'un spyder.


Je ne pense pas que vous puissiez exécuter spyder avec une seule icône de dock de spyder (avec le lanceur Platypus spyder en tant qu'élément de dock permanent) car python.spyder.app/python.app lui-même est à nouveau un wrapper pour spyder. Ainsi, après avoir cliqué sur l'icône de l'application Platypus Spyder dans le Dock, vous obtiendrez toujours une deuxième icône Spyder - la raison pour laquelle votre solution affiche l'icône par défaut de python.app.

Klanomath
la source
0

Cette question est davantage une question de programmation qu'une question de facilité d'utilisation. Toutefois, il faudra probablement le faire par programmation, car macOS recherche normalement l'icône dans l'application en tant que partie d'un fichier .plist, et votre application ne l'a probablement pas parce que il est exécuté à partir de la ligne de commande en tant que script.

Voir: Changement d'icône d'application, de titre et de menu dans l'application Cocoa au moment de l'exécution

domaine inconnu
la source