OSX - konfiguracja Emacsa do korzystania z NSSpellChecker

Mam problem z odwrotną inżynierią Aquamacs, aby wyodrębnić użycie / funkcjonalność NSSpellChecker. Chciałbym włączyć to użycie / funkcjonalność do nagiej budowy Emacsa ze źródła. Znalazłem pozornie odpowiednie pliki -ns-win.el; flyspell.el; iispell.el - jednak zastąpienie tych plików z Aquamacs na Emacs nie włącza wyskakującego menu do uruchamiania sprawdzania pisowni, które jest rodzime dla OSX. Brakuje mi co najmniej jednego kawałka do układanki - otworzyłem wszystkie pliki Aquamacs * .gz i wyszukałem kilka słów kluczowych we wszystkich tych plikach, ale nie znalazłem żadnych innych plików, które wyglądają tak, jak mają coś wspólnego z tą funkcjonalnością. Funkcjonalność jest włączona przez Aquamacsbefore inicjowana jest strona startowa.

Nauczyłem się, jak budować Emacsa ze źródła używając tarballa, a także używając bzr. Gdyby ktoś wiedział, jak skonfigurować NSSpellChecker podczas procesu kompilacji, byłoby świetnie.

W Internecie nie znalazłem niczego, co opisuje jak to zrobić.

Funkcja sprawdzania pisowni Aspell przypomina mi, jak wyglądało życie w późnych latach 80-tych. Zyskało mi się menu podręczne z przyciskami, aby wybrać opcje sprawdzania pisowni.

Oto link do wyjaśnienia dotyczącego budowy Aquamacs, a przeglądanie skryptu kompilacji jest następne na mojej liście zadań:

http://www.emacswiki.org/cgi-bin/wiki/BuildingAquamacs

Edytuj 1: Skrypty do budowania mają trochę więcej do powiedzenia na temat NSSpellChecker, więc dodatkowe pliki, na które należy spojrzeć, obejmują:nsterm.m insfns.m. Nie sądzęaquamacs-menu.el lubosxkeys.el są konieczne, ponieważ ładują się po uruchomieniu site.el. Wygląda na to, że NSSpellChecker jest na stałe zapisywany w aplikacji podczas procesu kompilacji, w połączeniu z wymienionymi powyżej plikami.

Edytuj 2: Tak, to był brakujący element układanki. Plik wykonywalny Aquamacs w pakiecie aplikacji (tj.... Aquamacs.app/Contents/MacOS/Aquamacs) zawiera zakodowaną magię dla NSSpellChecker w połączeniu ze zmodyfikowanymi wersjami Aquamacsns-win.el; flyspell.el; iispell.el.

Edytuj 3: W tym momencie jedną z opcji byłoby zmodyfikowanie skryptu kompilacji Aquamacs i powiązanych plików używanych w procesie kompilacji w celu zbudowania niestandardowej aplikacji. Alternatywnie, możliwe jest również utworzenie hybrydy, ale pojawia się ona z powodu własnych problemów, ponieważ plik wykonywalny Aquamacs jest na stałe opatrzony specjalnościami, takimi jakone-frame-one-buffer-mode podczas otwierania pliku z Finder.app;switch-to-buffer-in-tab podczas otwierania pliku z Finder.app;ns-application-activated należy to zignorować; w tym identyfikator wersji w pliku init.el, aby poprawnie wyciszyć komunikat o błędzie; łatwe w obsłudze opcje menu skierowane do Aquamacs w celu oszczędzania opcji; i kilka innych kwestii, które są oczywiste. Krótko mówiąc, hybryda jest wykonalna, ale ból szyi. Mam działającą hybrydę, ale jestem pewien, że będę musiał zrobić więcej ulepszeń, ponieważ znajdę więcej dostosowań Aquamacs (stworzonych przez plik wykonywalny), którymi trzeba się zająć. Jest za wcześnie, aby opublikować jakąkolwiek odpowiedź. Modyfikacja skryptu kompilacji wydaje się być najlepszym rozwiązaniem, ale wymagałaby wiele czasu, aby ją poprawnie zmodyfikować, aby utworzyć niestandardową kompilację, która izoluje funkcję NSSpellChecker.

Edytuj 4: Mam działającą wersję z NSSpellChecker, która jest plikiem wykonywalnym niestandardowej kompilacji Aquamacs24 (pomijając prawie wszystko Aquamacs z wyjątkiem sprawdzania pisowni) oraz najnowszą kompilację Emacs-trunk emacs-trunk (wersja nocna). Czekam na wsparcie techniczne, aby użyć terminalu do pobrania najnowszej gałęzi Aquamacs24 za pomocą git, ponieważ mam pewne problemy z duplikowaniem wersji ZIP z terminalem. Jest to dość szczegółowe i chciałbym uprościć ten proces przed wysłaniem odpowiedzi, i chcę go wcześniej dokładnie przetestować.

NSSpellChecker http://lawlist.com/images/spellchecker.png

questionAnswers(1)

yourAnswerToTheQuestion