如何在Mac上启动MonoDevelop的多个实例?


Answers:


173

在Mac上,如果您打开了一个应用程序并尝试再次启动它,则Mac只会切换到打开的应用程序。您可以通过将选项“ -n”传递给启动器来强制其打开新实例。在终端中运行

open -n /Applications/MonoDevelop.app

还要注意,MonoDevelop可以打开多个解决方案。为此,只需在“打开”对话框中取消选中“关闭当前解决方案”复选框,或在“欢迎页面”中单击最近打开的项目之一时按住控制键即可。

编辑:对于Xamarin Studio(已在Mac上替换了MonoDevelop),命令是

open -n /Applications/Xamarin\ Studio.app

编辑2:

对于已替换Xamarin Studio的Visual Studio for Mac,命令为

open -n /Applications/Visual\ Studio.app

2
嗨-我在Mac OS上运行MonoDevelop 2.4,但没有看到该复选框或控制键行为。最近有改变吗?
David Moles 2010年

2
仍然为我工作。请注意,仅当您已经打开解决方案时,才会出现“欢迎页面”中的复选框和提示,而仅当您在对话框中实际选择解决方案或项目时,才会出现该复选框。
Mikayla Hutchinson

更新到复选框标签,以防万一有人找到它,它现在说“关闭当前工作区”
Tiago 2012年

仅供参考-如果您使用此方法,则所有其他解决方案都将在同一个monodevelop窗口中打开...这根本不是我在Windows上使用VS / MD所期望的。显然,我们不得不诉诸下面的方法来获取不同的窗口单独的解决方案..
大卫Jeske

2
仍然可以在Xamarin Studio中使用,尽管我仍然怀疑Miguel投了垒球:open -n /Applications/Xamarin\ Studio.app/ ; ^)
ruffin 2015年

40

如其他人所描述的那样,使用shell输入命令来启动一个额外的实例很好,但是我更喜欢在停靠栏上有一个我可以单击的图标。

很容易做到:

  1. 打开AppleScript编辑器,然后输入以下内容:

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

  2. 使用“ MonoDevelop Launcher”之类的名称进行保存,并确保为文件格式指定Application

  3. 将图标拖到您的基座上。

  4. 确保检查下面Bright的有关用MonoDevelop替换通用图标的评论。

重复单击以享受多个MonoDevelop实例的复杂性。


1
结合其他两个答案中最好的一个
BlackTigerX

10
要将脚本启动器图标替换为MonoDevelop图标,您可以打开包内容,并用monodevelop图标替换applet.icns文件(来自MonoDevelop包内容。)只需记住将文件复制后重命名为applet.icns即可。 。
明亮的

1
完善!感谢Subfuzion,并感谢Bright提供的图标更换提示。
Leigh Bowers

关于更改图标的提示,很不错。另外,请参阅下面Glinkot的答案和Luke关于在Xamarin Studio中处理空间的评论,该Xamarin Studio替代了MonoDevelop。
Subfuzion

13

为了方便起见,我只创建了三个MonoDevelop副本。

在Finder中突出显示MonoDevelop,复制,粘贴,将新副本重命名为“ MonoDevelop-2”,然后重复进行以使您满意。

它还可以帮助我跟踪不同实例中发生的情况。通常,我会在“ MonoDevelop”中保持我最重要的项目为打开状态,使用“ MonoDevelop-2”来测试与我的主项目相关的想法,并使用“ MonoDevelop-3”来进行随机刮刮。

当您使用alt-tab(打开Apple-tab(命令-tab(whvr)))时,可执行文件的名称显示在应用程序列表中其图标下方,因此,只要我遵守约定,我总是知道(ish)我要选择的实例的内容,无论我打开了多少其他应用程序窗口。我不必遍历它们来解决。

这不是完美的-当我运行“ MonoDevelop”时,如果我尝试启动其中一个,则首次尝试启动将失败。您只是尝试再次启动它-它第二次起作用。不过,这只是自最近一次构建以来才发生的,我认为这可能与自动更新或加载项管理有关。还没有研究太多。既然没有任何问题,一旦启动并运行,我不必担心:)

结果是,使用start-it-twice方法,对于要启动的MonoDevelop的任何其他实例,最终都需要四次单击而不是双击。大约需要15秒的时间,而且由于我一直在运行MonoDevelop(以及“ MonoDevelop-1”和“ MonoDevelop-2”),因此,每周可能总共要多花30秒的时间。方法,为了方便起见,公平交易。

有点黑,但对我来说效果很好。

而且所有很酷的孩子都在做。


1
好想法!如果您创建符号链接而不是复制它仍然有效吗?
Mikayla Hutchinson,2009年

1
启动失败是插件注册表重新扫描中的已知错误。当MD检测到其dll已更改或“移动”时,它将重建插件注册表,有时此后崩溃。您可以设置一个环境变量,以使其使用不同的注册表位置,您可以用它来分隔三个实例的注册表,尽管我不确定如何在Mac上设置每个应用程序的环境变量。可能必须将其修补到MonoDevelop.app/Contents/macOS/MonoDevelop脚本中。
Mikayla Hutchinson,2009年

除了复制,我没有尝试过其他任何方法,尽管您的想法更有意义-在获取最新的MonoDevelop版本时不必重复工作。当我做这样的事情(为自己创建肮脏的解决方案)时,我倾向于走最懒惰的路线来满足我的书呆子欲望。但是现在我想知道。当然,我完成这项工作所花的时间远远少于我撰写此评论所花费的时间……这违背了我的懒惰目的。我必须去。我必须去尝试...
罗里·布莱斯

邓诺(Dunno)为什么我等了这么久才回答这个问题-我写完以上评论后就尝试建立符号链接-没用:| OS X没有上当。所以我仍然在做我的复制工作。但是,嘿-它有效。我已经想到了几种自动化方法,并在文件名中传递了不仅仅是-2,-3等更有意义的信息,以便通过应用程序进行制表,但是我还没有达到Need> Laziness阈值,但提示我来构建工具:)
罗里·布莱斯

6

-XAMARIN STUDIO--

截至2013年2月,Monodevelop称为Xamarin Studio,事实上它具有空格,这意味着上述功能不起作用。摆弄一些以后,我发现您需要嵌套两种类型的引号,以下内容将在applescript中起作用:

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

请享用


5
它确实起作用,您只需要逃脱空间即可,例如open -n /Applications/Xamarin\ Studio.app
Luke

另一个提示,您也需要在脚本中转义反斜杠,例如do shell script "open -n /Applications/Xamarin\\ Studio.app/"
Mick Byrne

6

您也可以使用较短的版本:

Open -n -a "Xamarin Studio.app"

编辑:对于Mac和/或更短的Visual Studio,命令为

Open -n -a "Visual Studio"

3

如果可以在一个 Xamarin Studio 实例中打开两个解决方案,可以通过导航到“文件”->“最近的解决方案”,然后按住Ctrl并单击另一解决方案来做到这一点。这将在Xamarin Studio的同一实例中打开两个解决方案。


3

您可以通过制作Xamarin Studio启动器的redth(现为Xamarin员工)来检出此应用程序:http ://redth.codes/Xamarin-Studio-Launcher-v3/ 。由于它是一个应用程序,因此没有可发布的代码。但是,好处是它为您打包为.dmg。它甚至可以与.sln文件一起使用。硬链接到v4(2015年1月12日)下载: http //redth.codes/assets/Xamarin.Studio.Launcher.v4.zip


1

编辑您的〜/ .bashrc或〜/ .zshrc并配置以下快捷方式:

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

从CLI使用如下:

xam ReactiveUI.sln

1

一种更简单的方法...。

只需打开终端,从应用程序中拖动Xamarin Studio应用程序,其路径将类似于 /Applications/Xamarin\ Studio.app并在/Applications/Xamarin\ Studio.app

现在完整的命令就像 open -n /Applications/Xamarin\ Studio.app


0

只需打开Terminal write或below命令,您可以更改实例名称编号,例如(/ Xamarin \ Studio1),它打开了另一个Xamarin Studio,例如(/ Xamarin \ Studio1)

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

使用上述方法,您可以创建任何.app多实例。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.