Emacs'ın GUI modunda olup olmadığını nasıl kontrol edebilirim (ve ancak o zaman `` araç çubuğu modu '' nu yürütebilirim)?


16

Dosyamda bu satır var .emacs:

(tool-bar-mode 0)

çünkü GUI emacs ( /Applications/Emacs.app/Contents/MacOS/Emacs) araç çubuklarından nefret ediyorum .

Ancak, terminaldeki ( /opt/local/bin/emacs) diğer metin tabanlı emac'ları başlattığımda bu komuttan şikayet ediyor:

Symbol's function definition is void: tool-bar-mode

Bir komutu yalnızca GUI emac'indeyken komutu ifyürütmesi için nasıl ekleyebilirim tool-bar-mode?

Teşekkürler!

Yanıtlar:


22

Tamam, kendim buldum. Sadece ekle

;; turn off toolbar
(if window-system
    (tool-bar-mode 0))

3

Bunu yapmanın başka bir yolu:

 (if (functionp 'tool-bar-mode) (tool-bar-mode 0))

bunun gibi, işlev sadece varsa çağrılır



0

Kullanımı window-systembir boolean olarak değişken kaldırılmış . Bunun yerine, kullanım display-graphic-pveya diğer herhangi display-*-p hangi rapor çerçevenin belirli UI ile ilgili yetenekleri yüklemleri.

Kodunuzun önceki Emacs sürümleriyle geriye dönük olarak uyumlu olmasını istiyorsanız, aşağıdaki uyumluluk paketi gitmenin yoludur:

(if (< emacs-major-version 23)
    (or window-system (getenv "DISPLAY"))
  (display-graphic-p))
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.