Pasek menu Emacsa i OS X.

11

Od jakiegoś czasu szukałem rozwiązania tego problemu. W trybie OS X dla nieletnich wypełnij pasek menu niepotrzebnymi pozycjami menu. Oto zrzut ekranu:

pasek menu] (! [pomniejsze tryby przejęte z paska menu

Jeśli nie możesz powiedzieć, elementy menu Emacsa blokują resztę mojego paska menu. Czy istnieje sposób, aby powiedzieć Emacsowi, aby nie korzystał z paska menu?

Korzystam z tego portu emacsa.

Ammar Alammar
źródło
Nie jestem pewien, czy dobrze rozumiem twój problem. Czy chcesz całkowicie wyłączyć pasek menu, czy po prostu chcesz usunąć pojedyncze elementy najwyższego poziomu?
lunaryorn
Według innych odpowiedzi nie można całkowicie usunąć paska menu, więc teraz szukam sposobu na usunięcie poszczególnych elementów.
Ammar Alammar,

Odpowiedzi:

10

Nie można ukryć paska menu w OS X przed Emacsem. Jest zawsze wyświetlany w aplikacjach nieekranowych, tak po prostu działa OS X. Aplikacje nie mają na to wpływu.

Brak paska menu

Jeśli chcesz korzystać z Emacsa bez paska menu, włącz tryb pełnoekranowy za pomocą M-x toggle-frame-fullscreen.

Usuwanie pojedynczych elementów

Jeśli chcesz po prostu usunąć poszczególne elementy z paska menu, dostosuj odpowiednie mapy klawiszy w swoim init.el. Na przykład następujący fragment usuwa menu „Opcje”, „Edytuj” i „Narzędzia”:

(define-key global-map [menu-bar options] nil)
(define-key global-map [menu-bar edit] nil)
(define-key global-map [menu-bar tools] nil)

Lista dyskusyjna post od Xah Lee ma więcej przykładów.

księżycowy
źródło
Niesamowite! Działa to w przypadku menu dodanych przez, (define-key global-map [menu-bar...ale nie działa w przypadku elementów dodanych przy użyciu innych pakietów, takich jak easymenu: czy masz na to rozwiązanie?
Ammar Alammar,
2
@AmmarAbdulaziz Cóż, usuń menu-barpowiązanie z odpowiedniej mapy kluczy. Szczegóły zależą od tego, gdzie i jak zdefiniowane jest menu. W razie wątpliwości przeczytaj źródło.
lunaryorn