Emacs เวอร์ชั่นใดใช้ Mac GUI ได้ดีที่สุด? [ปิด]


34

ใน Windows และ Ubuntu ฉันใช้ GNU Emacs แต่ FSF ไม่ได้จัดเตรียมไบนารีสำหรับ Mac

ฉันมีเวอร์ชั่นที่ดีที่มาพร้อมกับ Snow Leopard แต่เพิ่งทำงานในเทอร์มินัลทุบตี มีรุ่นที่ทำงานในหน้าต่างแบบสแตนด์อโลนและเป็นมิตรกับ Mac มากกว่าหรือไม่

ฉันดาวน์โหลด Emacs Cocoa จาก Macports แต่มันไม่ได้รวบรวม

คำตอบ:


30

ฉันลองใช้ Aquamacs แต่พบว่ามันยากเกินไปที่จะทำตัวเหมือน Mac นี่น่าจะดีถ้าคุณเป็นผู้ใช้ Mac ที่ยังใหม่กับ Emacs

หากคุณเป็นผู้ใช้ Emacs ใหม่สำหรับ Macs (เหมือนเมื่อสองสามปีก่อน) คุณอาจจะคุ้นเคยกับ Mac รุ่นมาตรฐาน Emacs ฉันได้รับจากเหมืองEmacs สำหรับ Mac OS X ลองสร้างมาตรฐานในหน้าแรกหรือคลิกที่ปุ่ม "รุ่นอื่น ๆ " เพื่อดูตัวเลือกเพิ่มเติม ฉันใช้เวอร์ชันทดลองใช้ล่าสุดเป็นเวลา 6-12 เดือนโดยไม่มีปัญหา


ถ้าคุณอยากจะเป็น studly และสร้างสำเนาของคุณเอง, ดูที่คำแนะนำเกี่ยวกับที่หน้าวิกิพีเดีย Emacs สำหรับ Mac OS X โดยเฉพาะอย่างยิ่งโปรดทราบว่าคุณต้องการสร้างด้วยตัวเลือกสำหรับขั้นตอนต่อไปและไม่ใช่โกโก้หรือคาร์บอน:

./configure --with-ns
make
make install

ฉันเป็นผู้ใช้ Mac ที่ใหม่มากและเป็นผู้ใช้ emacs ที่ค่อนข้างเก่าดังนั้นการสร้างเสียงของตัวเองในอุดมคติ ขอบคุณสำหรับเคล็ดลับเกี่ยวกับ ns
justinhj

ใน emacs สำหรับ Mac OS X ไม่มีการตั้งค่าให้ตั้งเมตาคีย์เป็นคำสั่ง (ต้องไม่มีแป้นพิมพ์ภาษาอังกฤษเนื่องจากเราใช้ปุ่ม alt มาก) นอกจากนี้ยังไม่มีเอกสารเลย คุณให้ข้อมูลกับฉันเพื่อแก้ปัญหานี้ได้ไหม ฉันต้องการใช้มัน :) ขอบคุณ
volothamp

พบด้วยตัวเอง: superuser.com/questions/160150/…
volothamp

22

นี่เป็นเธรดที่เก่ากว่า แต่ฉันเจอเมื่อฉันต้องการดูว่ามีการพัฒนาใหม่ในการกระจาย OSX emacs หรือไม่ หากคุณใช้homebrewคุณสามารถติดตั้ง cocoa emacs เวอร์ชันล่าสุดด้วย:

brew install emacs --HEAD --cocoa --srgb

โปรดทราบว่าคุณจำเป็นต้องติดตั้งบาซ่า หรือมิฉะนั้นคุณสามารถติดตั้งได้จาก git mirror ด้วย--use-git-head


สิ่งนี้ทำงานไม่ถูกต้อง ไม่ได้ติดตั้ง Emacs.app บรรทัดคำสั่งที่ถูกต้องคือ "ชงติดตั้ง --cocoa --srgb emacs" ลำดับของตัวเลือกมีความสำคัญ
javadba

16

https://github.com/railwaycat/emacs-mac-port

เป็นผู้ใช้ emacs มา 5 ปีแล้วและได้ลองใช้พอร์ต mac ทั้งหมด นี่คือสิ่งที่ดีที่สุดที่ฉันเคยใช้ทั้งภายใต้ประทุนและในรูปลักษณ์ มันยังมีการเลื่อนพิกเซลที่ราบรื่นการบีบเหน็บและการปรับแต่งเฉพาะบางอย่างที่ดีสำหรับแม็ค

  • การจัดการ Cg คุณสามารถออกจาก (ในขณะที่ t) และ (คำสั่งเชลล์ "sleep 100") ไม่มีการเปิดใช้งานแถบเมนูปลอมในขณะที่การประเมินเหล่านี้

    • การจำลองของ `เลือก 'โดยไม่มีการสำรวจเป็นระยะมันไม่ได้ใช้เวลา CPU ในขณะที่ตัวแปล Lisp ไม่ได้ทำงานและรอให้เหตุการณ์บางอย่างมาถึงแม้จะมีการประมวลผลย่อยหรือการเชื่อมต่อเครือข่าย

    • การเลิกจ้างที่สง่างามหากคุณลองล็อกเอาต์ / ปิด / รีบูตในขณะที่ออกจากบัฟเฟอร์การเยี่ยมชมไฟล์ที่แก้ไขและไม่ได้บันทึกหน้าต่างป๊อปอัพจะปรากฏขึ้นเพื่อยืนยัน หากคุณยกเลิกการยกเลิก Emacs (รวมถึง Cg หรือ ESC) กระบวนการออกจากระบบ / ปิดระบบ / รีบูตทั้งหมดจะถูกยกเลิกทันทีเช่น (คุณจะเห็นกล่องโต้ตอบ "ยกเลิก" ทันทีแทนที่จะเป็น "หมดเวลา" หนึ่งครั้งหลังจากนั้น) หากคุณไม่มีบัฟเฟอร์ที่ไม่ได้บันทึกบัฟเฟอร์ของเชลล์ ฯลฯ คุณจะไม่เห็นการยืนยันที่ไม่จำเป็น

    • การจัดการเหตุการณ์ของ Apple หนึ่งสามารถกำหนดตัวจัดการเหตุการณ์ของ Apple ที่ระดับเสียงกระเพื่อม ที่จริงแล้วการเลิกจ้างที่สง่างามข้างต้นเป็นตัวอย่างของการจัดการเหตุการณ์แอปเปิ้ลในระดับเสียงกระเพื่อม อีกตัวอย่างหนึ่งคือ "รับ URL" ตัวจัดการที่ทำให้เราสามารถเรียกจดหมายที่คุณกำหนดด้วย `mail-user-agent 'เช่น

    $ osascript -e 'บอกแอปพลิเคชัน "Emacs" เพื่อเปิดตำแหน่ง "mailto: foo@example.com" "

    หากคุณตั้งค่า Emacs เป็นค่าเริ่มต้น mailer ผ่านการตั้งค่า Mail.app, Emacs mailer จะตั้งค่าบัฟเฟอร์ร่างเมื่อคุณคลิกลิงค์ mailto: ในเว็บเบราว์เซอร์

    • การสนับสนุน DictionaryService คุณสามารถค้นหาคำภายใต้ตัวชี้เมาส์ในหน้าต่างที่เลือกโดยพิมพ์ Command-Control-D (หรือแทร็กแพดสองครั้ง / แทปเดียวด้วยสามนิ้วบน Mac OS X 10.7 / 10.8, resp.)

    • ความเป็นอิสระของความละเอียด (แนะนำ 10.4 - 10.6, 10.5) การปรับขนาดทำงานในโหมด Framework-Scaled เมื่อเทียบกับโหมดขยายภาพ (พร่ามัว) สำหรับพอร์ตคาร์บอน หมายเหตุ: ความเป็นอิสระในการแก้ปัญหาประเภทนี้เลิกใช้บน Mac OS X 10.7

    • 64 บิต (10.5 ขึ้นไป) คุณสามารถสร้างและเรียกใช้ไบนารี 64 บิตพร้อมการสนับสนุน GUI โดยระบุ CC = "gcc -arch x86_64" หรือ CC = "gcc -arch ppc64" ในการกำหนดค่า

    • การปรับปรุงภาพเล็กน้อยบางอย่าง

      • การเชื่อมโยงคีย์ที่จัดแนวในเมนู
      • ตัวบ่งชี้ความคืบหน้า (สอดคล้องกับนาฬิกาทราย) ในแถบชื่อเรื่อง
      • รายการที่ไม่สามารถใช้งานได้ในแผงแบบอักษรจะถูกซ่อนไว้ลองตัวเลือก -> แสดง / ซ่อน -> แผงแบบอักษรจากแถบเมนูหรือ MET Mac-font-panel-mode RET
      • อัปเดตจอแสดงผลขณะที่ลากตัวควบคุมการปรับขนาด (หรือตัวเลื่อนในแผงแบบอักษร)
    • fullscreen' frame parameter, with all values supported: fullboth ' fullwidth',fullheight' และmaximized'. The fullboth frames, which don't have the title bar, still allow us to access the menu bar, the Dock, and the tool bars. The menu bar can also be activated viaเมนูบาร์เปิด ' Control-F2' (if full keyboard access enabled), orคำสั่ง Shift- /' (บน Mac OS X 10.5 และต่อมา) แม้สำหรับเฟรม fullboth ที่แถบเมนูมักจะถูกซ่อนอยู่ การเปลี่ยนแบบอักษรหรือความกว้างภายในกรอบในแบบเต็มหน้าจอไม่ได้แสดงความยุ่งเหยิง ในสภาพแวดล้อมที่หลากหลายของจอภาพหนึ่งสามารถย้ายเฟรมแบบเต็มหน้าจอไปยังจอภาพอื่นโดยการตั้งค่าleft' andพารามิเตอร์เฟรมด้านบน 'ตามลำดับ การต่อ / ถอดจอภาพภายนอกควรใช้งานได้กับเฟรมเต็มหน้าจอ

    • พารามิเตอร์ `sticky 'frame ซึ่งช่วยให้เราสามารถมองเห็นเฟรมเฉพาะสำหรับ Spaces ทั้งหมดใน Mac OS X 10.5 ขึ้นไป
    • ฟังก์ชั่นsystem-move-file-to-trash', which can be specified as a value ofลบโดยย้ายไปที่ถังขยะ '
    • การแสดงภาพ SVG สิ่งนี้สามารถทำได้ผ่านกรอบ WebKit ดังนั้นคุณจึงไม่จำเป็นต้องใช้ librsvg
    • รูปภาพ TIFF แบบหลายหน้า
    • ฟังก์ชั่นx-select-font' that provides modal font selection dialog in a compatible way with GTK+ and W32 ones. Note that a nonmodal counterpart has been available since Emacs 22 Carbon port viamac-font-panel-mode '
    • แสดงอักขระ Unicode รวมถึงรายการที่ไม่ใช่ BMP
    • เค้าโครงข้อความที่ซับซ้อนและการสร้างข้อความ พวกมันถูกนำมาใช้โดยใช้เครื่องมือโครงร่างข้อความหลักหรือข้อความ NS ดังนั้นคุณไม่จำเป็นต้องใช้ libotf
    • การเลือก Glyph พร้อมตัวเลือกชุดรูปแบบ ส่วนใหญ่ของ glyphs Adobe-Japan1 glyphs สามารถเข้าถึงได้ผ่าน IVSes (Ideographic Variation Sequences) แม้กระทั่งชุดอักษร Hiragino ที่มากับระบบปฏิบัติการซึ่งไม่ได้บรรจุ UVS subtable ในตาราง cmap ใน Mac OS X 10.6

    • สามารถรวบรวมได้ด้วยการรองรับ ImageMagick แม้ว่าจะไม่มีไลบรารี ImageMagick ก็ตามพอร์ต Mac ยังให้ทางเลือกโดยใช้เฟรมเวิร์ก Image I / O เพื่อให้คุณสามารถปรับขนาดและหมุนภาพได้

    • ตัวแปรtool-bar-style' works like in GTK+. The values ทั้งสองอันไกลโพ้น ', text-image-horiz' are synonymous withทั้งสอง'
    • การเลื่อนบนล้อเลื่อนของเมาส์แบบ Pixel เพื่อเมาส์ / แทร็กแพดใหม่
    • ท่าทางการจัดการเหตุการณ์สำหรับ trackpads ใหม่ โดยค่าเริ่มต้นการบีบนิ้วออก / เข้าจะถูกปรับขนาดของข้อความ ด้วยปุ่ม Shift พวกเขาจะเปิด / ปิดสถานะเต็มหน้าจอของเฟรม
    • เหตุการณ์ของ Apple ที่ส่งด้วย (a) การจัดการการตอบกลับแบบซิงโครนัส มีการเพิ่มการสนับสนุน ODB Editor Suite เป็นตัวอย่าง (ทดสอบกับ QuickCursor เท่านั้นเพิ่ม "org.gnu.Emacs" ไปยังองค์ประกอบของ QCEditInChoices ใน QuickCursor.app/Contents/Info.plist ใน QuickCursor 2.0 คุณต้องฆ่าบัฟเฟอร์หลังจากบันทึกเพื่อสะท้อนการเปลี่ยนแปลง พื้นที่ข้อความต้นฉบับ)
    • "คลิกในแถบเลื่อนเพื่อ: ข้ามไปยังตำแหน่งที่คลิก" การตั้งค่าในการตั้งค่าระบบได้รับการสนับสนุน กดปุ่มตัวเลือกในขณะที่คลิกเพื่อสลับพฤติกรรมนี้เป็นการชั่วคราว
    • การเปลี่ยนแปลงการตั้งค่าเกณฑ์การปรับข้อความให้เรียบในบานหน้าต่างลักษณะที่ปรากฏของการตั้งค่าระบบจะสะท้อนให้เห็นทันที
    • แป้นพิมพ์ลัดจำนวนมาก (โดยเฉพาะสำหรับการนำทางด้วยแป้นพิมพ์) ที่แสดงอยู่ในการตั้งค่าระบบทำงานได้เหมือนกับแอปพลิเคชันอื่น ๆ
    • เมื่อคลิปบอร์ดมีทั้งข้อความและข้อมูลภาพกระชากจะแทรกอดีตและดันทั้งสองเข้าไปในวงแหวนสังหารเพื่อให้สามารถแทรกหลังด้วย yank-pop หลังจากนั้น
    • ใช้ตำแหน่ง x ไม่รวมเพื่อแสดงฟอนต์ที่แบ่งสัดส่วน คุณสามารถเห็นความแตกต่างได้โดยวางเคอร์เซอร์ของกล่องไว้บน Helvetica 12pt `I 'ซึ่งความกว้างในอุดมคติคือ 3.33398 แต่แสดงด้วยความกว้างที่โค้งมน 3 ตัวอย่างเช่น
    • Emacs info nodes สามารถเข้าถึงได้ผ่านช่องค้นหาในเมนูวิธีใช้บน Mac OS X 10.6 และใหม่กว่า
    • รายการเมนู "เปิดไฟล์ที่เลือกใน Emacs" จะแสดงในบริการหรือเมนูบริบทของแอปพลิเคชันอื่น ๆ โดยค่าเริ่มต้นใน Mac OS X 10.6 และใหม่กว่าเมื่อเลือกข้อความเหมือนชื่อพา ธ สัมบูรณ์
    • การแปลงแบบย้อนกลับใน Kotoeri ทำงานได้โดยไม่ต้องเลือก การกดปุ่ม Eisu / Kana บนแป้นพิมพ์ JIS (หรือ Control-Shift -; / J / K บนแป้นพิมพ์สหรัฐฯ) สองครั้งก็ใช้งานได้
    • ฟังก์ชั่นใหม่mac-file-alias-p', which is parallel to file-symlink-p '
    • การสนับสนุนการทดลองสำหรับการเข้าถึงเกี่ยวกับมุมมองที่กำหนดเองสำหรับเฟรม Emacs จำเป็นต้องมีการสนับสนุน "Text to Speech" บน Mac OS X 10.7 ยังคงมีข้อบกพร่องหลายประการ
    • สามารถแสดงแบบอักษรบิตแมปสีเช่น Apple Color Emoji ถ้าคอมไพล์และดำเนินการใน Mac OS X 10.7 หรือใหม่กว่า นอกจากนี้ยังรองรับการแสดงชุดสัญลักษณ์สัญลักษณ์ภูมิภาคเช่น U + 1F1EF ตามด้วย U + 1F1F5 เป็นธงประจำชาติ รองรับ Variation Selectors 15 (text-style) และ 16 (emoji-style)
    • ฟังก์ชั่นใหม่ `mac-start-animation 'ซึ่งให้เอฟเฟกต์ภาพเคลื่อนไหวบน Mac OS 10.5 และใหม่กว่าผ่าน Core Animation คุณสามารถดูภาพเคลื่อนไหวที่เป็นค่าเริ่มต้นด้วยการสลับบัฟเฟอร์โดยการปัด / สะบัดแนวนอนออกจากหน้าจอเริ่มต้นด้วยการพิมพ์ "q" และรายการเมนู "เกี่ยวกับ Emacs" และ "Preferences ... " ในเมนูแอปพลิเคชัน ) ในแถบเมนู

ฉันยังได้ผลลัพธ์ที่ยอดเยี่ยมด้วยพอร์ตนี้หลังจากพบทั้ง Aquamacs และ "Emacs for OS X" ไม่เหมาะสม - ฉันขอแนะนำอย่างสูง
Aaron Miller

1
ดีนี่มันคุ้มค่าสำหรับการเลื่อนที่ราบรื่นเพียงอย่างเดียว
2557

พอร์ตนี้สามารถใช้กับคีย์ตัวดัดแปลงสไตล์ Aquamacs เช่นตัวเลือกสำหรับเมตาและคำสั่งสำหรับไฮเปอร์ / ซุปเปอร์หรือไม่? เมื่อฉันลองมันฉันไม่สามารถเลือกทำอะไรได้นอกจากเน้นเสียงหนักและตัวละคร
คุมหลอด

@ Incandescentman ใช่มันสามารถ
user1775655

ขอบคุณสำหรับข้อมูล! เห็นด้วยกับ @huyz ฉันแค่สงสัยว่ามี build ที่คล้ายกันสำหรับ Linux หรือไม่? ฉันหมายความว่าถ้ามีการสร้าง Emacs ที่มีการเลื่อนอย่างราบรื่นสำหรับ Linux?
avp

4

ดีฉันใช้วานิลลา emacs กับแพทช์ ns แต่ด้วยการตั้งค่านี้

(setq mac-command-modifier 'meta)
(setq mac-option-modifier nil)
(setq ns-function-modifier 'hyper)

;; keybinding to toggle full screen mode
(global-set-key (quote [M-f10]) (quote ns-toggle-fullscreen))

(add-to-list 'ido-ignore-files "\\.DS_Store")

;; Move to trash when deleting stuff
(setq delete-by-moving-to-trash t
      trash-directory "~/.Trash/emacs")

ฉันได้มาจากคนที่มาจากหิน emacs github ฉันคิดว่า ด้วยวิธีนี้ฉันจะใช้ ´และตัวเลือกอื่น ๆ เช่นเดียวกับในแอปพลิเคชั่นอื่น ๆ และยังมีการวางตำแหน่ง Meta Key ที่คุ้นเคยมากขึ้น (ฉันมี capslock เป็น ctrl btw)

ด้วย

(setq x-select-enable-clipboard t)

ดังนั้นฉันสามารถคัดลอกและวางใน emacs (เช่น. ฉัน cmd + c บนโครเมี่ยมและ Cy บน emacs เพื่อวางและ viceversa Cw cmd + v)



2

หากคุณติดตั้งMacPortsคุณสามารถติดตั้งบิลด์ emacs ที่เหมาะสมและอัพเดทได้อย่างง่ายดาย นี่เป็นข้อดีของการให้คุณเข้าถึงแพ็คเกจอื่น ๆ ได้ง่ายหากคุณต้องการ


2

macports มี emacs หลายรุ่น:

emacs has the variants:
   gtk: Builds emacs as an X11 program with GTK+2 widgets
     * requires x11
   motif: Builds emacs as an X11 program with Motif widgets
     * requires x11
   universal: Build for multiple architectures
   x11: Builds emacs as a X11 program with Lucid widgets

นอกจากนี้ยังมี emacs โกโก้:

emacs-app @23.1 (aqua, editors)
    The GNU Emacs text editor (Cocoa version)

นี่คือสิ่งที่ไม่ได้สร้างสำหรับฉัน ฉันจะดูว่าฉันสามารถโพสต์ข้อผิดพลาดบางครั้ง
justinhj

1

เมื่อคุณอยู่ใน Snow Leopard emacs-app จาก MacPorts จะไม่รวบรวม แต่ emacs-app-devel จะ!


0

ส่วนตัวใช้คาร์บอน emacs เพราะมันเป็นสิ่งที่ไม่ได้ปลอมปนด้วยแท็บที่น่ารำคาญและดูเหมือนว่าจะเป็นของจริงมากที่สุด http://www.emacswiki.org/emacs/CarbonEmacsPackage

หนึ่งเคล็ดลับถ้าคุณใช้ช่องว่างคือเปลี่ยนสวิตช์ระหว่างหน้าต่างให้เป็นอย่างอื่นนอกเหนือจาก ctrl-arrow เพราะทุกครั้งที่คุณลองทำแท็บคำใน emacs มันจะพาคุณไปยังหน้าต่างอื่นซึ่งทำให้เกิดการสึกหรอเล็กน้อย หลังจากนั้นไม่นาน

การสนับสนุนแบบอักษรนั้น จำกัด อยู่เพียงเล็กน้อยกับคาร์บอน emacs ซึ่งฉันยังไม่ได้รอบเพื่อต่อสู้กับมัน


0

ลองดูที่http://www.sanityinc.com/full-screen-support-for-cocoa-emacs-on-osxสำหรับ repo คอมไพล์ gps ของ typster และแพทช์ถึงโกโก้ emacs ด้วยการสนับสนุนเต็มหน้าจอที่สร้างขึ้นได้ดีสำหรับฉัน (ฉันไม่ได้ใช้พอร์ตหรือตำรวจตอนนี้ใช้ homebrew)



-2

หลังจากใช้ EMACS มาหลายปีใน UNIXes, Linux, FreeBSD, OS / 2 และ Windows หลายครั้งฉันก็หยุด ... ฉันใช้Smultronแทน ฉันพบว่าเวอร์ชัน EMACS ของ Cocoa ไม่ได้รวมเข้ากับ Mac OS ได้ดีและไม่ได้ "รู้สึก" เหมือนกับ EMACS ปกติสำหรับฉัน

การพัฒนาส่วนใหญ่ของฉันทำใน IDEs พิเศษ (XCode, Unity หรือ Eclipse) ในวันนี้ดังนั้นฉันมักจะไม่พลาด EMACS จากนั้นอีกครั้งฉันไม่เคยสามารถใช้ EMACS เป็นระบบปฏิบัติการของฉันได้เช่นเดียวกับโปรแกรมแก้ไขข้อความ :-)

Eddie เป็นตัวแก้ไขข้อความฟรีโปรแกรมเมอร์ที่ดีสำหรับ OS X

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