web-dev-qa-db-fra.com

Comment lancer plusieurs instances de MonoDevelop sur le Mac?

J'aimerais ouvrir une nouvelle instance MonoDevelop pour travailler sur un projet différent sur le Mac, et le système d'exploitation m'empêche actuellement d'ouvrir une nouvelle instance.

121
miguel.de.icaza

Sur Mac, si vous avez une application ouverte et que vous essayez de la relancer, le Mac passe simplement à l'application ouverte. Vous pouvez le forcer à ouvrir une nouvelle instance en transmettant l'option "-n" au programme de lancement. Dans un terminal, lancez

open -n /Applications/MonoDevelop.app

Notez également que MonoDevelop est capable d'ouvrir plusieurs solutions. Pour cela, décochez simplement la case "Fermer la solution actuelle" dans la boîte de dialogue "Ouvrir" ou maintenez la touche Ctrl enfoncée lorsque vous cliquez sur l'un des projets récemment ouverts dans la page d'accueil.

EDIT: Pour Xamarin Studio, qui a remplacé MonoDevelop sur Mac, la commande est

open -n /Applications/Xamarin\ Studio.app

EDIT 2:

Pour Visual Studio pour Mac, qui a remplacé Xamarin Studio, la commande est

open -n /Applications/Visual\ Studio.app
173
Mikayla Hutchinson

Utiliser Shell pour entrer dans la commande comme d'autres l'ont décrit pour lancer une instance supplémentaire est acceptable, mais je préfère avoir une icône sur le dock sur laquelle je peux simplement cliquer.

C'est facile à faire:

  1. Ouvrez l'éditeur AppleScript et entrez les informations suivantes:

    do Shell script "open -n /Applications/MonoDevelop.app/"

  2. Enregistrez sous un nom tel que "MonoDevelop Launcher" et assurez-vous de spécifier Application pour le format de fichier.

  3. Faites glisser l'icône sur votre dock.

  4. Assurez-vous de consulter le commentaire de bright ci-dessous sur le remplacement de l'icône générique par celle de MonoDevelop.

Cliquez plusieurs fois pour profiter du groove de plusieurs instances de MonoDevelop.

41
Subfuzion

Pour plus de commodité, je viens de créer trois copies de MonoDevelop.

Mettez MonoDevelop en surbrillance dans le Finder, copiez, collez, renommez la nouvelle copie en "MonoDevelop-2" et renouvelez l'opération à votre satisfaction.

Cela m'aide également à garder une trace de ce qui se passe dans différents cas. Je garde généralement mon projet le plus important ouvert dans "MonoDevelop", utilise "MonoDevelop-2" pour tester les idées liées à mon projet principal et "MonoDevelop-3" pour un scratch aléatoire.

Lorsque vous alt-tab (open-Apple-tab (commande-tab (whvr))), le nom de l'exécutable apparaît sous son icône dans la liste des applications. Ainsi, tant que je m'en tiens à ma convention, je sais toujours (ish) le contenu de l'instance pour laquelle je fais alt-tabuler, quel que soit le nombre de fenêtres d'application ouvertes. Je n'ai pas à les parcourir pour le comprendre.

Ce n'est pas parfait - lorsque "MonoDevelop" est en cours d'exécution, si j'essaye de lancer l'un des autres, la première tentative de démarrage échouera. Vous essayez juste de le rallumer - cela fonctionne la deuxième fois. Cela ne se produit toutefois que depuis la dernière version et je pense que cela pourrait avoir un lien avec les mises à jour automatiques ou la gestion des compléments. Je n'ai pas trop étudié. Puisqu'il n'y a pas de problèmes une fois en marche, je ne m'inquiète pas pour ça :)

Le résultat est que, avec la méthode start-it-two, pour toute instance supplémentaire de MonoDevelop que vous souhaitez démarrer, vous devez cliquer quatre fois au lieu de double-cliquer. Cela ajoute environ quinze secondes au processus, et depuis que MonoDevelop (avec "MonoDevelop-1" et "MonoDevelop-2") fonctionne tout le temps, cela représente: peut-être, trente secondes supplémentaires chaque semaine. Un commerce équitable pour la commodité, à mon avis.

Un peu hacky, mais ça a bien fonctionné pour moi.

Et tous les enfants cools le font.

13
Rory Blyth

--XAMARIN STUDIO--

En février 2013, Monodevelop s'appelle Xamarin Studio et son espace insuffisant signifie que ce qui précède ne fonctionne pas. Un peu plus tard, je me suis rendu compte que vous deviez imbriquer deux types de citations.

do Shell script "open -n '/Applications/Xamarin Studio.app/'"

Prendre plaisir

6
Glinkot

Aussi, vous pouvez utiliser la version plus courte:

Open -n -a "Xamarin Studio.app"

Edit : Pour Visual Studio pour Mac et/ou plus court, la commande est

Open -n -a "Visual Studio"
6
Denis Gordin

Si vous êtes prêt à ouvrir deux solutions dans une instance de Xamarin Studio, vous pouvez le faire en allant dans "Fichier" -> "Solutions récentes", puis en maintenant la touche Ctrl enfoncée et en cliquant sur l'autre solution. Cela ouvre les deux solutions dans la même instance de Xamarin studio. 

3
willem

Vous pouvez consulter cette application par Redth (maintenant employé de Xamarin) qui a créé un lanceur Xamarin Studio: http://redth.codes/Xamarin-Studio-Launcher-v3/ . Il n'y a pas de code à poster puisqu'il s'agit d'une application. Mais la bonne chose est qu'il est emballé dans un fichier .dmg pour vous. Cela fonctionne même avec les fichiers .sln. Lien dur vers la v4 (12 janvier 2015) télécharger: http://redth.codes/assets/Xamarin.Studio.Launcher.v4.Zip

3
valdetero

Une autre façon la plus simple ....

Ouvrez simplement le terminal. Faites glisser l’application Xamarin Studio depuis une application. Le chemin emprunté sera le suivant: /Applications/Xamarin\ Studio.app et écrivez le paramètre open -n avant le /Applications/Xamarin\ Studio.app

Maintenant, la commande complète est comme open -n /Applications/Xamarin\ Studio.app

1
Pritish

Editez votre ~/.bashrc ou ~/.zshrc et configurez le raccourci suivant:

alias xam = 'open -n /Applications/Xamarin\ Studio.app'

Utilisez comme suit à partir de la CLI:

xam ReactiveUI.sln
1
Geoffrey Huntley

Il suffit d’ouvrir la commande d’écriture ou inférieure du terminal, vous pouvez modifier le numéro du nom de l’instance, par exemple (/ Xamarin\Studio1). 

$ open -na /Applications/Xamarin\ Studio.app --args -DataPath /Users/$(whoami)/Library/Application\ Support/Xamarin\ Studio1

En utilisant ci-dessus, vous pouvez créer n’importe laquelle des instances multiples .app.

0
Patel Pankaj