Jak pozbyć się paska menu Emacsa w oknach terminali?
Standardowa odpowiedź to umieścić
(when (not (display-graphic-p))
(menu-bar-mode -1))
w init.el
. Jednak to rozwiązanie nie jest dobre, ponieważ wszystko to robi
usuń pasek menu po fakcie. Nadal możesz to zobaczyć w przypadku podziału
druga. To jest bardzo irytujące.
Patrząc na kod źródłowy w startup.el
Nie widzę oczywistego rozwiązania
do tego problemu. Myślę, że jedynym sposobem jest użycie before-init-hook
. Może
to może załatwić sprawę?
(add-hook 'before-init-hook
(lambda ()
(setq emacs-basic-display t)))
Ale ten hak jest uruchamiany wcześniej init.el
i inne pliki init są oceniane, więc
jak go używać?
Odpowiedzi:
Okazało się, że zależy to od wielkości okna terminala wszystkich rzeczy. Testowałem na
terminator
ixterm
aw obu przypadkach zwiększenie rozmiaru okna zatrzymało wyświetlanie paska menuemacs
ładował się. Domyśl. W szczególności, szerokość terminala> = 88 wydaje się zatrzymywać pojawiający się bufor menu. Wysokość wydaje się nieistotna. Można zatem zmienić domyślny rozmiar okna terminala, co może rozwiązać problem.Oczywiście nie jest to idealne rozwiązanie i nie pomaga, jeśli korzystasz z tty nie jest emulatorem terminala, ale może to być najlepsze, jakie uzyskasz bez zagłębiania się
emacs
kod źródłowy, który, jak sobie wyobrażam, nie będzie wart wysiłku, aby pozbyć się tak drobnej irytacji.źródło
Wątpię, czy istnieje sposób, aby go początkowo stłumić, przynajmniej chwilowy wygląd, o którym wspomniałeś. Możesz spróbować dostosować
initial-frame-alist
, ale mam wątpliwości, że ma to jakikolwiek skutek. próbowałememacs -nw -f menu-bar-mode
, i to wyłącza pasek menu, ale znowu pojawia się na chwilę.źródło