ฉันจะเปิด MonoDevelop หลายอินสแตนซ์บน Mac ได้อย่างไร


121

ฉันต้องการเปิดอินสแตนซ์ MonoDevelop ใหม่เพื่อทำงานในโปรเจ็กต์อื่นบน Mac และระบบปฏิบัติการกำลังป้องกันไม่ให้ฉันเปิดอินสแตนซ์ใหม่

คำตอบ:


173

บน Mac หากคุณเปิดแอพไว้และพยายามเปิดอีกครั้ง Mac ก็จะเปลี่ยนไปใช้แอพที่เปิดอยู่ คุณสามารถบังคับให้เปิดอินสแตนซ์ใหม่ได้โดยส่งตัวเลือก "-n" ไปยังตัวเรียกใช้งาน ในเทอร์มินัลให้เรียกใช้

open -n /Applications/MonoDevelop.app

โปรดทราบด้วยว่า MonoDevelop สามารถเปิดโซลูชันต่างๆได้ ในการดำเนินการนี้เพียงแค่ยกเลิกการเลือกช่องทำเครื่องหมาย "ปิดโซลูชันปัจจุบัน" ในกล่องโต้ตอบ "เปิด" หรือกดแป้นควบคุมค้างไว้เมื่อคลิกที่โครงการที่เพิ่งเปิดในหน้ายินดีต้อนรับ

แก้ไข: สำหรับ Xamarin Studio ซึ่งแทนที่ MonoDevelop บน Mac คำสั่งคือ

open -n /Applications/Xamarin\ Studio.app

แก้ไข 2:

สำหรับ Visual Studio for Mac ซึ่งแทนที่ Xamarin Studio คำสั่งคือ

open -n /Applications/Visual\ Studio.app

2
สวัสดี - ฉันใช้ MonoDevelop 2.4 บน Mac OS และฉันไม่เห็นช่องทำเครื่องหมายนั้นหรือลักษณะการทำงานของปุ่มควบคุม เมื่อเร็ว ๆ นี้มีการเปลี่ยนแปลงหรือไม่?
David Moles

2
ยังคงใช้งานได้สำหรับฉัน โปรดสังเกตว่าช่องทำเครื่องหมายและคำใบ้ในหน้ายินดีต้อนรับจะปรากฏเฉพาะเมื่อคุณเปิดโซลูชันไว้แล้วและช่องทำเครื่องหมายจะปรากฏขึ้นเมื่อคุณเลือกโซลูชันหรือโครงการในกล่องโต้ตอบเท่านั้น
Mikayla Hutchinson

อัปเดตป้ายกำกับช่องทำเครื่องหมายในกรณีที่มีผู้พบสิ่งนี้ตอนนี้มีข้อความว่า "ปิดพื้นที่ทำงานปัจจุบัน"
Tiago

FYI - หากคุณใช้วิธีนี้โซลูชันเพิ่มเติมทั้งหมดจะเปิดขึ้นในหน้าต่าง monodevelop เดียวกัน ... นี่ไม่ใช่สิ่งที่ฉันคาดหวังจากการใช้ VS / MD บน Windows เห็นได้ชัดว่าเราต้องใช้วิธีการด้านล่างเพื่อแยกหน้าต่างสำหรับโซลูชันแยกต่างหาก ..
David Jeske

2
ยังคงใช้งานได้ใน Xamarin Studio แม้ว่าฉันยังสงสัยว่ามิเกลขว้างลูกซอฟต์บอล: open -n /Applications/Xamarin\ Studio.app/ ; ^)
ruffin

40

การใช้เชลล์เพื่อป้อนคำสั่งตามที่คนอื่นอธิบายไว้เพื่อเปิดอินสแตนซ์พิเศษนั้นใช้ได้ แต่ฉันชอบมีไอคอนบนท่าเรือที่ฉันสามารถคลิกได้

ทำได้ง่ายมาก:

  1. เปิด AppleScript Editor และป้อนข้อมูลต่อไปนี้:

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

  2. บันทึกด้วยชื่อเช่น"MonoDevelop Launcher"และอย่าลืมระบุApplicationสำหรับรูปแบบไฟล์

  3. ลากไอคอนไปที่ท่าเรือของคุณ

  4. อย่าลืมดูความคิดเห็นของ bright ด้านล่างเกี่ยวกับการเปลี่ยนไอคอนทั่วไปด้วย MonoDevelop

คลิกซ้ำ ๆ เพื่อเพลิดเพลินไปกับความสนุกสนานของอินสแตนซ์ MonoDevelop หลายรายการ


1
คำตอบที่ดีที่สุดจากอีกสองคำตอบรวมกัน
BlackTigerX

10
ในการแทนที่ไอคอนตัวเรียกใช้สคริปต์ด้วยไอคอน MonoDevelop คุณสามารถเปิดเนื้อหาแพ็คเกจและแทนที่ไฟล์ applet.icns ด้วยไอคอน monodevelop (จากเนื้อหาแพ็คเกจ MonoDevelop) เพียงอย่าลืมเปลี่ยนชื่อไฟล์เป็น applet.icns หลังจากคัดลอก .
สว่าง

1
ที่สมบูรณ์แบบ! ขอบคุณ Subfuzion และขอบคุณความสว่างสำหรับเคล็ดลับการเปลี่ยนไอคอน
Leigh Bowers

เคล็ดลับดีๆจากความสดใสเกี่ยวกับการเปลี่ยนไอคอน นอกจากนี้โปรดดูคำตอบด้านล่างโดย Glinkot และความคิดเห็นของ Luke เกี่ยวกับการจัดการพื้นที่ใน Xamarin Studio ซึ่งแทนที่ MonoDevelop
Subfuzion

13

เพื่อความสะดวกฉันแค่สร้างสำเนาของ MonoDevelop สามชุด

ไฮไลต์ MonoDevelop ใน Finder คัดลอกวางเปลี่ยนชื่อสำเนาใหม่เป็น "MonoDevelop-2" และทำซ้ำตามความพอใจของคุณ

นอกจากนี้ยังช่วยให้ฉันติดตามสิ่งที่เกิดขึ้นในกรณีต่างๆ โดยปกติฉันมักจะเปิดโปรเจ็กต์ที่สำคัญที่สุดของฉันไว้ใน "MonoDevelop" ใช้ "MonoDevelop-2" เพื่อทดสอบแนวคิดที่เกี่ยวข้องกับโปรเจ็กต์หลักของฉันและ "MonoDevelop-3" สำหรับการขูดแบบสุ่ม

เมื่อคุณ alt-tab (open-Apple-tab (command-tab (whvr))) ชื่อของไฟล์ปฏิบัติการจะปรากฏขึ้นใต้ไอคอนในรายการแอปพลิเคชันดังนั้นตราบใดที่ฉันยึดมั่นในแบบแผนของฉันฉันก็รู้เสมอ (ish) เนื้อหาของอินสแตนซ์ที่ฉันกำลังแท็บ alt ไม่ว่าฉันจะเปิดหน้าต่างแอปอื่น ๆ กี่หน้าต่างก็ตาม ฉันไม่ต้องวนรอบพวกเขาเพื่อคิดออก

มันไม่สมบูรณ์แบบ - เมื่อฉันมี "MonoDevelop" ทำงานอยู่ถ้าฉันพยายามที่จะยิงอีกคนหนึ่งความพยายามครั้งแรกในการเริ่มต้นจะล้มเหลว คุณเพียงแค่พยายามยิงมันอีกครั้ง - มันได้ผลในครั้งที่สอง สิ่งนี้เกิดขึ้นตั้งแต่รุ่นล่าสุดเท่านั้นและฉันคิดว่ามันอาจเกี่ยวข้องกับการอัปเดตอัตโนมัติหรือการจัดการ Add-in ยังไม่ได้ดูมากเกินไป เนื่องจากไม่มีปัญหาเมื่อเริ่มใช้งานฉันจึงไม่ต้องกังวลกับมัน :)

ผลลัพธ์ก็คือเมื่อใช้วิธี start-it-twice สำหรับอินสแตนซ์เพิ่มเติมของ MonoDevelop ที่คุณต้องการเริ่มต้นคุณจะต้องคลิกสี่ครั้งแทนการดับเบิลคลิก เพิ่มเวลาประมาณสิบห้าวินาทีในกระบวนการและเนื่องจากฉันมี MonoDevelop (พร้อมด้วย "MonoDevelop-1" และ "MonoDevelop-2") ทำงานตลอดเวลาอาจเพิ่มเวลาทำงานได้ถึงสามสิบวินาทีในแต่ละสัปดาห์ การค้าที่เป็นธรรมเพื่อความสะดวกสบาย

แฮ็คนิดหน่อย แต่ก็ใช้ได้ดีสำหรับฉัน

และเด็ก ๆ ทุกคนกำลังทำมัน


1
ความคิดที่ดี! ยังใช้งานได้หรือไม่ถ้าคุณสร้าง symlink แทนการคัดลอก?
Mikayla Hutchinson

1
ความล้มเหลวในการเริ่มต้นระบบเป็นข้อบกพร่องที่ทราบแล้วในการสแกนรีจิสทรีของ addin เมื่อ MD ตรวจพบว่า dll มีการเปลี่ยนแปลงหรือ "ย้าย" มันจะสร้างรีจิสทรี addin ขึ้นมาใหม่และบางครั้งก็ขัดข้องเมื่อหลังจากนี้ มีตัวแปรสภาพแวดล้อมที่คุณสามารถตั้งค่าให้ใช้ตำแหน่งรีจิสทรีที่แตกต่างกันซึ่งคุณสามารถใช้เพื่อแยกการลงทะเบียนสามอินสแตนซ์ของคุณได้ แต่ฉันไม่แน่ใจว่าคุณจะตั้งค่า env vars ต่อแอปบน mac อย่างไร อาจจะต้องแก้ไขลงในสคริปต์ MonoDevelop.app/Contents/macOS/MonoDevelop
Mikayla Hutchinson

ฉันไม่ได้ลองทำอะไรเลยนอกจากแค่การคัดลอกแม้ว่าไอเดียของคุณจะเข้าท่ากว่า - ก็ไม่ต้องพยายามทำซ้ำเมื่อคว้างานสร้าง MonoDevelop ล่าสุด เมื่อฉันทำสิ่งต่างๆเช่นนี้ (สร้างวิธีแก้ปัญหาที่สกปรกให้กับตัวเอง) ฉันมักจะใช้เส้นทางที่ขี้เกียจที่สุดเพื่อตอบสนองวิถีทางที่น่าเบื่อหน่ายของฉัน แต่ตอนนี้อยากรู้. แน่นอนฉันทำได้โดยใช้เวลาน้อยกว่าที่จะเขียนความคิดเห็นนี้ ... นี่คือการเอาชนะจุดประสงค์ของความขี้เกียจของฉัน ฉันต้องไป. ต้องไปลอง ...
Rory Blyth

Dunno ทำไมฉันรอนานมากที่จะตอบกลับสิ่งนี้ - ฉันพยายามสร้าง symlink ทันทีที่ฉันเขียนความคิดเห็นด้านบน - ไม่ได้ผล: | OS X ไม่ได้ถูกหลอก ดังนั้นฉันยังคงทำสิ่งที่คัดลอกอยู่ แต่เดี๋ยวก่อน - มันได้ผล ฉันคิดถึงวิธีการทำงานอัตโนมัติและการถ่ายทอดข้อมูลที่มีความหมายมากกว่าเพียงแค่ -2, -3 และอื่น ๆ ในชื่อไฟล์สำหรับการแท็บคำสั่งผ่านแอพ แต่ฉันยังไม่ถึงเกณฑ์ความต้องการ> เกณฑ์ความเกียจคร้าน แต่ก็ยังแจ้ง ฉันจะสร้างเครื่องมือของฉัน :)
Rory Blyth

6

- ซามารินสตูดิโอ -

ณ เดือนกุมภาพันธ์ 2013 Monodevelop เรียกว่า Xamarin Studio และความจริงแล้วมันมีช่องว่างอยู่หมายความว่าข้างต้นไม่ทำงาน บางคนเล่นซอในภายหลังฉันพบว่าคุณต้องซ้อนคำพูดสองประเภทและด้านล่างจะใช้งานได้ใน applescript:

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

สนุก


5
มันได้ผลคุณแค่ต้องหนีออกจากอวกาศเช่นopen -n /Applications/Xamarin\ Studio.app
ลูกา

อีกหนึ่งเคล็ดลับคุณต้องหลีกเลี่ยงแบ็กสแลชในสคริปต์เช่นdo shell script "open -n /Applications/Xamarin\\ Studio.app/"
มิกเบิร์น

6

นอกจากนี้คุณสามารถใช้เวอร์ชันที่สั้นกว่า:

Open -n -a "Xamarin Studio.app"

แก้ไข : สำหรับ Visual Studio for Mac และ / หรือคำสั่งที่สั้นกว่าคือ

Open -n -a "Visual Studio"

3

หากคุณ ok อยู่กับการเปิดสองโซลูชั่นในหนึ่งตัวอย่างของ Xamarin Studio คุณสามารถทำเช่นนี้ได้โดยไปที่ "File" -> "โซลูชั่นล่าสุด" แล้วกด Ctrl + คลิกที่วิธีการแก้ปัญหาอื่น ๆ วิธีนี้จะเปิดโซลูชันทั้งสองในอินสแตนซ์เดียวกันของ Xamarin studio


3

คุณสามารถตรวจสอบ app นี้โดย redth (ตอนนี้เป็นพนักงาน Xamarin) ที่ทำให้ตัวเปิด Xamarin สตูดิโอ: http://redth.codes/Xamarin-Studio-Launcher-v3/ ไม่มีรหัสที่จะโพสต์เนื่องจากเป็นแอป แต่สิ่งที่ดีคือบรรจุใน. dmg สำหรับคุณ มันยังใช้งานได้กับไฟล์. sln การเชื่อมโยงอย่างหนักเพื่อ v4 นี้ (12 มกราคม 2015) การดาวน์โหลด: 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

อีกวิธีหนึ่งที่ง่ายที่สุด ....

เพียงแค่เปิด Terminal ลากแอป Xamarin Studio จากแอปพลิเคชันมันจะใช้เส้นทางเหมือน/Applications/Xamarin\ Studio.appและเขียน open -n ก่อนหน้าไฟล์/Applications/Xamarin\ Studio.app

ตอนนี้คำสั่งที่สมบูรณ์เป็นเหมือน open -n /Applications/Xamarin\ Studio.app


0

เพียงแค่เปิดคำสั่ง Terminal write หรือด้านล่างคุณสามารถเปลี่ยนหมายเลขชื่ออินสแตนซ์เช่น (/ Xamarin \ Studio1) เปิดอีกอันหนึ่ง Xamarin Studio เช่น (/ Xamarin \ Studio1)

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

ใช้ด้านบนคุณสามารถสร้าง. app หลายอินสแตนซ์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.