Która wersja Emacsa najlepiej wykorzystuje GUI Mac? [Zamknięte]


34

W systemach Windows i Ubuntu używam GNU Emacs, ale FSF nie zapewnia plików binarnych dla komputerów Mac

Mam przyzwoitą wersję, która została dostarczona z Snow Leopardem, ale po prostu działa w terminalu bash. Czy jest wersja, która działa w niezależnym oknie i jest bardziej przyjazna dla komputerów Mac?

Pobrałem Emacs Cocoa z Macports, ale się nie skompilował.

Odpowiedzi:


30

Próbowałem Aquamacs, ale okazało się, że zbyt mocno starał się być podobny do Maca. Jest to prawdopodobnie dobre, jeśli jesteś użytkownikiem Maca, który jest nowy w Emacsie.

Jeśli jesteś użytkownikiem Emacsa nowym na komputerach Mac (tak jak kilka lat temu), prawdopodobnie będziesz bardziej zadowolony ze specyficznych dla komputerów Mac standardowych wersji Emacsa. Mam kopalni z Emacs dla Mac OS X . Wypróbuj standardową wersję na stronie głównej lub kliknij przycisk „Inne wersje”, aby uzyskać więcej opcji. Używam najnowszej wersji testu wstępnego przez 6-12 miesięcy bez problemów.


Jeśli naprawdę chcesz być studly i zbudować swoją własną kopię, spójrz na podpowiedzi na stronie wiki Emacs dla Mac OS X . Zwróć uwagę w szczególności, że chcesz budować z opcjami następnego kroku, a nie z kakao lub węgla:

./configure --with-ns
make
make install

Jestem bardzo nowym użytkownikiem Mac i dość starym użytkownikiem emacsa, więc tworzenie własnych dźwięków jest idealne. Dzięki za wskazówkę na temat ns.
justinhj

W emacs dla Mac OS X nie ma preferencji, aby ustawić klawisz meta na polecenie (obowiązkowa w żadnej angielskiej klawiaturze, ponieważ często używamy klawisza Alt). Ponadto nie ma żadnej dokumentacji. Czy możesz podać mi informacje, aby rozwiązać ten problem? Chciałbym go użyć :) Dzięki.
volothamp


22

To jest starszy wątek, ale natknąłem się na niego, gdy szukałem nowych rozwiązań w dystrybucji emacs OSX. Jeśli używasz homebrew , możesz zainstalować najnowszą wersję emacsa kakaowego za pomocą:

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

Pamiętaj, że musisz mieć zainstalowany bazar. Możesz też zainstalować go z git mirror za pomocą--use-git-head


To nie działa poprawnie. Emacs.app nie jest zainstalowany. Prawidłowy wiersz polecenia to „brew install --cocoa --srgb emacs”. Kolejność opcji jest ważna.
javadba,

16

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

Od 5 lat jestem użytkownikiem emacsa i wypróbowałem wszystkie porty Mac. To jest zdecydowanie najlepszy, jakiego użyłem, zarówno pod maską, jak i pod względem wyglądu. Ma nawet płynne przewijanie pikseli, przybliżone powiększanie i kilka ciekawych optymalizacji dla komputerów Mac.

  • Obsługa Cg Możesz wyjść (podczas t) i (polecenie powłoki „sleep 100”). Brak aktywacji fałszywego paska menu podczas tych ocen.

    • Emulacja „select” bez okresowego odpytywania Nie wykorzystuje czasu procesora, gdy interpreter Lisp jest bezczynny i czeka na pewne zdarzenia, nawet w przypadku podprocesów lub połączeń sieciowych.

    • Pełne zakończenie Jeśli spróbujesz się wylogować / zamknąć / uruchomić ponownie, pozostawiając zmodyfikowany i niezapisany bufor do przeglądania plików, pojawi się wyskakujące okienko z potwierdzeniem. Jeśli anulujesz zakończenie Emacsa (w tym Cg lub ESC), cały proces wylogowania / zamknięcia / ponownego uruchomienia zostanie również natychmiast anulowany (tj. Natychmiast zobaczysz okno dialogowe „anulowane”, a nie „przekroczone limit czasu”). Jeśli nie masz niezapisanych buforów, buforów powłoki itp., Nie zobaczysz niepotrzebnego potwierdzenia.

    • Obsługa zdarzeń Apple Można zdefiniować moduły obsługi zdarzeń Apple na poziomie Lisp. Właściwie powyższe zakończenie z gracją jest przykładem obsługi zdarzeń Apple na poziomie Lisp. Innym przykładem jest moduł obsługi „Uzyskaj adres URL”, który pozwala nam wywoływać dostosowanego przez użytkownika program pocztowy za pomocą programu „mail-user-agent”, np.

    $ osascript -e 'powiedz aplikacji „Emacs”, aby otworzyła lokalizację „mailto: foo@example.com” ”

    Jeśli ustawisz Emacsa jako domyślny program pocztowy za pomocą preferencji Mail.app, program pocztowy Emacs skonfiguruje bufor roboczy po kliknięciu łącza mailto: w przeglądarce internetowej.

    • Obsługa DictionaryService Możesz wyszukać słowo pod wskaźnikiem myszy w wybranym oknie, wpisując Command-Control-D (lub dwukrotnie / pojedynczo dotykając gładzika trzema palcami w systemie Mac OS X 10.7 / 10.8, odpowiednio).

    • Niezależność od rozdzielczości (zalecane 10,4 - 10,6, 10,5) Skalowanie działa w trybie skalowania szkieletowego w przeciwieństwie do (rozmytego) trybu powiększenia dla portu węglowego. Uwaga: ten typ niezależności rozdzielczości jest przestarzały w systemie Mac OS X 10.7.

    • 64-bitowy (10.5 i nowszy) Możesz zbudować i uruchomić 64-bitowy plik binarny z obsługą GUI, określając CC = "gcc -arch x86_64" lub CC = "gcc -arch ppc64" podczas konfiguracji.

    • Kilka drobnych ulepszeń wizualnych

      • Wyrównane powiązania klawiszy w menu
      • Wskaźnik postępu (odpowiadający klepsydrze) na pasku tytułu
      • Elementy, których nie można używać w panelu czcionek, są ukryte. Spróbuj Opcje -> Pokaż / Ukryj -> Panel czcionek z paska menu lub klawisz RET w trybie Mx mac-font-panel-panel.
      • Zaktualizuj wyświetlanie podczas przeciągania kontrolki zmiany rozmiaru (lub suwaka w panelu czcionek)
    • fullscreen' frame parameter, with all values supported: Fullboth ' fullwidth',fullheight' i 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 viamenu-bar-open ' Control-F2' (if full keyboard access enabled), orCommand-Shift- /' (w Mac OS X 10.5 lub nowszy) nawet dla ramek fullboth gdzie pasek menu jest zazwyczaj ukryte. Zmiana czcionek lub szerokości wewnętrznej ramki w ramkach pełnoekranowych nie zakłóca wyświetlania. W środowiskach z wieloma monitorami można przenosić ramki pełnoekranowe na inny monitor, odpowiednio ustawiając parametry left' andgórnej ramki. Dołączanie / odłączanie monitorów zewnętrznych powinno działać nawet w przypadku ramek pełnoekranowych.

    • Parametr `` lepkiej '' ramki, który pozwala nam zachować widoczność poszczególnych ramek dla wszystkich Spaces w Mac OS X 10.5 i nowszych.
    • Funkcja system-move-file-to-trash', which can be specified as a value ofusuwania przez przeniesienie do kosza ”.
    • Wyświetlanie obrazu SVG. Można to zrobić za pomocą frameworka WebKit, więc nie potrzebujesz librsvg.
    • Wielostronicowe obrazy TIFF.
    • Funkcja 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 ”.
    • Wyświetlanie znaków Unicode, w tym znaków innych niż BMP.
    • Złożony układ tekstu i kształtowanie tekstu. Są one implementowane za pomocą silnika układu Core Text lub NS Text, więc nie potrzebujesz libotf.
    • Wybór glifów za pomocą selektorów wariacji. Większość glifów ideograficznych Adobe-Japan1 jest dostępna za pośrednictwem IVSes (Sekwencje wariacji ideograficznych), nawet dla czcionek Hiragino w pakiecie z systemem operacyjnym, które nie zawierają podtabeli UVS w tabeli cmap od Mac OS X 10.6.

    • Można skompilować z obsługą ImageMagick. Nawet bez biblioteki ImageMagick port Mac zapewnia awarię przy użyciu frameworku we / wy Image, dzięki czemu można skalować i obracać obrazy.

    • Zmienna tool-bar-style' works like in GTK+. The values oba-poziomy „ text-image-horiz' are synonymous withoba”.
    • Koło myszy oparte na pikselach płynne przewijanie dla nowszych myszy / gładzików.
    • Obsługa zdarzeń gestów dla nowszych trackpadów. Domyślnie pinch out / in są powiązane ze skalowaniem rozmiaru tekstu. Klawisz Shift włącza / wyłącza pełny ekran ramki.
    • Wysyłanie zdarzeń Apple z (a) synchroniczną obsługą odpowiedzi. Jako przykład dodano obsługę pakietu ODB Editor Suite. (Testowane tylko z QuickCursor. Dodaj „org.gnu.Emacs” do elementów QCEditInChoices w QuickCursor.app/Contents/Info.plist. W QuickCursor 2.0 musisz zabić bufor po zapisaniu, aby odzwierciedlić zmiany w oryginalny obszar tekstu).
    • Obsługiwane jest ustawienie „Kliknij pasek przewijania, aby: Przeskoczyć do klikniętego miejsca” w Preferencjach systemowych. Naciśnięcie klawisza opcji podczas klikania tymczasowo przełącza to zachowanie.
    • Zmiana ustawienia progu wygładzania tekstu w panelu Wygląd w Preferencjach systemowych jest natychmiast odzwierciedlana.
    • Kilka skrótów klawiaturowych (w szczególności do Nawigacji za pomocą klawiatury) wymienionych w Preferencjach systemowych działa tak jak inne aplikacje.
    • Gdy schowek zawiera zarówno dane tekstowe, jak i graficzne, szarpnięcie wstawia to pierwsze i wsuwa je do pierścienia zabijania, aby ten drugi można było później wstawić za pomocą szarpnięcia.
    • Użyj niecałkowitych pozycji x do wyświetlania antyalialnych czcionek proporcjonalnych. Możesz zobaczyć różnicę, umieszczając kursor pola nad Helvetica 12pt `I ', którego idealna szerokość wynosi 3,33398, ale wyświetlana jest na przykład z zaokrągloną szerokością 3.
    • Węzły informacyjne Emacsa są dostępne poprzez pole wyszukiwania w menu Pomoc w systemie Mac OS X 10.6 i nowszych.
    • Element menu „Otwórz wybrany plik w Emacsie” jest domyślnie wyświetlany w usługach lub menu kontekstowym innych aplikacji w systemie Mac OS X 10.6 i nowszych, gdy zaznaczony jest tekst bezwzględnie podobny do ścieżki.
    • Odwrotna konwersja w Kotoeri działa nawet bez wyboru. Dwukrotne naciśnięcie klawisza Eisu / Kana na klawiaturze JIS (lub Control-Shift -; / J / K na klawiaturze amerykańskiej) również działa dwa razy.
    • Nowa funkcja mac-file-alias-p', which is parallel to file-symlink-p '.
    • Eksperymentalna obsługa ułatwień dostępu w odniesieniu do niestandardowego widoku ramek Emacsa. Wymagana jest obsługa funkcji „zamiany tekstu na mowę” w systemie Mac OS X 10.7. Nadal jest kilka usterek.
    • Może wyświetlać kolorowe czcionki bitmapowe, takie jak Apple Color Emoji, jeśli zostały skompilowane i wykonane w systemie Mac OS X 10.7 lub nowszym. Obsługuje również wyświetlanie niektórych kombinacji regionalnych symboli wskaźników, takich jak U + 1F1EF, a następnie U + 1F1F5, jako flagi narodowe. Obsługiwane są również selektory odmian 15 (w stylu tekstu) i 16 (w stylu emoji).
    • Nowa funkcja `mac-start-animation ', która zapewnia efekty animacji w systemie Mac OS 10.5 i nowszych za pośrednictwem Core Animation. Domyślne animacje z przełączaniem bufora można zobaczyć, przesuwając / przesuwając w poziomie, wychodząc z ekranu powitalnego, wpisując „q” oraz elementy menu „About Emacs” i „Preferences ...” w menu aplikacji (oznaczone jako „Emacs” ) na pasku menu.

Miałem również doskonałe wyniki z tym portem, po stwierdzeniu, że zarówno Aquamac, jak i „Emacs dla OS X” są nieodpowiednie - bardzo go polecam.
Aaron Miller,

1
Fajnie

Czy tego portu można używać z klawiszami modyfikującymi w stylu Aquamacs, tj. Opcją dla meta i komendą dla hyper / super? Kiedy spróbowałem, nie mogłem nic zrobić, oprócz dziwnych akcentów i postaci.
incandescentman

@incandescentman tak, może.
user1775655,

Dziękuję za tę informację! Całkowicie zgadzając się z @huyz Zastanawiam się tylko, czy istnieje podobna kompilacja dla Linuksa? Mam na myśli, czy istnieje kompilacja Emacsa z płynnym przewijaniem dla Linuksa?
avp

4

Cóż, używam waniliowych emacsa z łatką ns, ale z tymi ustawieniami

(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")

Mam je od faceta z githuba Emacsa Rocka. W ten sposób mogę używać ´ i innych znaków opcji, jak w każdej innej aplikacji, a także mam bardziej znane rozmieszczenie Meta Key (mam capslock jako ctrl btw)

Również

(setq x-select-enable-clipboard t)

Więc mogę skopiować i wkleić do emacsa (tj. I cmd + c na chrome i Cy na emacs do wklejenia i viceversa Cw cmd + v)



2

Jeśli zainstalujesz MacPorts , możesz zainstalować porządną kompilację emacsa i łatwo go aktualizować. Ma to tę zaletę, że umożliwia łatwy dostęp do wielu innych pakietów, jeśli chcesz.


2

Macports oferuje kilka wariantów emacsa:

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

Jest też emacs kakaowy:

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

To ten, który nie zbudował dla mnie. Zobaczę, czy uda mi się opublikować jakieś błędy
justinhj

1

Ponieważ korzystasz z systemu Snow Leopard, aplikacja emacs z MacPorts nie będzie się kompilować, ale aplikacja emacs-app-devel będzie!


0

Osobiście używaj Carbon Emacsa, ponieważ jest to ten, który nie został zafałszowany irytującymi zakładkami i najbardziej przypomina oryginalny. http://www.emacswiki.org/emacs/CarbonEmacsPackage

Jedna wskazówka, jeśli używasz spacji, polega na zmianie przełącznika między oknami na coś innego niż strzałka ctrl, ponieważ za każdym razem, gdy spróbujesz wykonać tabulację słowną w emacsie, przeniesie Cię do innego okna, które trochę się zużywa po chwili.

Obsługa czcionek jest nieco ograniczona w przypadku emacji węglowych, o których jeszcze nie miałem pojęcia.




-2

Po latach używania EMACS w różnych systemach UNIX, Linux, FreeBSD, OS / 2 i Windows, w końcu przestałem ... Zamiast tego używam Smultron . Odkryłem, że wersja EMACS Cocoa tak naprawdę nie integruje się tak dobrze z Mac OS i nie „czuję się” jak normalny EMACS dla mnie.

Większość mojego rozwoju odbywa się obecnie w specjalistycznych IDE (XCode, Unity lub Eclipse), więc zwykle nie tęsknię za EMACS. Z drugiej strony nigdy nie udało mi się użyć EMACS jako mojego systemu operacyjnego, podobnie jak edytora tekstu. :-)

Eddie to kolejny porządny darmowy edytor tekstowy dla OS X.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.