OS X emacs: ความแตกต่างระหว่าง X11 กับ NS กับ Cocoa?


10

ฉันเชื่อว่ามีสามวิธีในการสร้าง emacs บน osx --- x11, ns (ขั้นตอนต่อไป?) และโกโก้ ใครสามารถอธิบายได้ว่าตัวเลือกการสร้างหมายถึงอะไร / ความแตกต่างระหว่างทั้งสามนี้คืออะไร


1
ไม่กี่เดือนที่ผ่านมาตั้งแต่ฉันสร้างรุ่น x11 บน OSX แต่ใช้เวลาเล็กน้อยที่จะคิดว่าจำเป็นต้องใช้--with-ns=no --with-xเป็นส่วนหนึ่งของตัวเลือกบรรทัดคำสั่ง ฉันพูดถึงเรื่องนี้ในกรณีที่คนอื่นสนใจที่จะสร้างรุ่น x11 บน OSX ฉันคิดว่าคำตอบที่ได้รับการยอมรับจะรวมถึงการกล่าวถึงวัสดุที่จำเป็นสำหรับการสร้างที่ประสบความสำเร็จ - เช่น XQuartz (ระบบ X Window) และอื่น ๆ
กฎหมาย

@ กฎหมายรายการอ่ารู้ดี! เหตุผลหนึ่งที่ฉันถามคำถามนี้ก็เพราะฉันต้องการสร้าง emacs ด้วย x11 (สำหรับ xwidgets) บน osx แต่ฉันสงสัยว่าฉันจะเสียอะไรจาก NS ไปถึง x11

1
ดูหัวข้อนี้ที่เกี่ยวข้องในหัวข้อ " คอมไพล์ emacs กับ xwidget ภายใต้ OSX? ": emacs.stackexchange.com/questions/25037/ ...... แป้นพิมพ์ลัดแบบกำหนดเองที่ฉันใช้ในเวอร์ชัน GUI ของ Emacs ที่สร้างขึ้น--with-nsไม่ทำงานในเวอร์ชัน x11 ดังนั้นฉันจึงยังไม่สามารถใช้ x11 ได้อย่างมีประสิทธิภาพ ฉันจะต้องเรียนรู้วิธีกำหนดค่าแป้นพิมพ์ลัดใน x11 - ผู้ใช้ Linux น่าจะอยู่ที่บ้านกับรุ่น x11 แต่ฉันก็หลงทางอยู่
กฎหมาย

คำตอบ:


12

Emacs มีหลายรุ่นสำหรับ macOS รวมไปถึง:

  • Emacs อย่างเป็นทางการบน macOS สร้างโดยใช้พอร์ต "NS" หรือที่เรียกว่าพอร์ต "โกโก้" ดังที่ชื่อแนะนำพอร์ตของ Emacs นี้กำเนิดขึ้นใน Emacs สำหรับระบบปฏิบัติการ NextSTEP และเป็น Emacs GUI อย่างเป็นทางการบน macOS มาตั้งแต่ Emacs 23

  • Mitsuharu Yamamoto-san ยังคง "พอร์ต Mac" ของ Emacs มันมี GUI ทางเลือกพร้อมชุดคุณสมบัติที่แตกต่างเมื่อเทียบกับพอร์ต NS สิ่งนี้มาจากพอร์ต Emacs ไปยัง Mac OS 8/9 และพอร์ต "Carbon" ของ Emacs 22 (พอร์ตนี้เรียกอีกอย่างว่า "รถไฟแมว" Emacs เช่นเดียวกับที่brewโฮสต์สูตรนี้)

  • Aquamacs ใช้พอร์ต NS ของ Emacs และมีการปรับปรุงจำนวนมากทำให้มันทำงานเหมือนแอพพลิเคชั่น macOS แบบดั้งเดิม

  • X11: มันเป็นไปได้ที่จะสร้าง Emacs ด้วย GUI เดียวกับที่ใช้กับระบบ X11 อย่างไรก็ตามมันต้องใช้เซิร์ฟเวอร์ X11 เพื่อทำงาน น่าเสียดายที่ผลลัพธ์สุดท้ายจะไม่ได้มีรูปลักษณ์และความรู้สึกของ macOS สิ่งต่าง ๆ เช่นเมนูดูเหมือนว่าคุณกำลังทำงานบนระบบที่เหมือนยูนิกซ์ อันที่จริงนี่ไม่ใช่ GUI เดียว แต่เป็นตระกูลของ GUI: s เนื่องจากเป็นไปได้ที่จะสร้างโดยใช้ไลบรารีการสนับสนุน X11 ที่ต่างกันเช่น GTK +

  • เทอร์มินัลเท่านั้น สิ่งนี้ทำให้คุณมี Emacs ที่สามารถทำงานได้ในหน้าต่างเทอร์มินัลเหมือนกับ GUI Emacs ทำงานเมื่อผ่าน-nwตัวเลือก

ดังนั้นสิ่งที่คุณควรเลือก

ถ้าคุณขี้เกียจรับอย่างเป็นทางการ Emacs - คุณสามารถดาวน์โหลดรุ่นที่สร้างไว้ล่วงหน้าจากhttps://emacsformacos.com

หากคุณต้องการใช้เวลาในการรับ Emac ที่ดีที่สุดสำหรับคุณลองทั้ง Emacs อย่างเป็นทางการและพอร์ต "mac" โดยรวมแล้วค่อนข้างคล้ายกัน แต่มีชุดคุณสมบัติที่แตกต่างกันเล็กน้อย

โดยทั่วไปฉันจะไม่แนะนำให้ใช้พอร์ต X11 เนื่องจากคุณจะไม่ได้รับรูปลักษณ์และความรู้สึกของ macOS อย่างไรก็ตามในบางสถานการณ์มันอาจเป็นที่สนใจ:

  • คุณต้องการคุณสมบัติที่มีอยู่ในพอร์ต X11 เท่านั้นเช่นการสนับสนุน xwidget
  • คุณคุ้นเคยกับ X11 และต้องการรูปลักษณ์และความรู้สึกเดียวกันเมื่อใช้ Emacs บน macOS
  • คุณต้องการการนำไปใช้ "อ้างอิง" ของ Emacs เช่นเมื่อมีส่วนร่วมในพอร์ต NS ของ Emacs

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