Tüm pencereler için tekli mod hattı


9

Tüm pencereler için yalnızca bir mod satırı (bazen "durum çubuğu" olarak adlandırılır) olabilir mi?

Bu tek mod satırının seçili olan arabellek hakkındaki bilgileri göstermesini istiyorum.


2
Belki de ekli iş parçacığında konsepti ödünç alabilir ve her çerçevenin altında özel bir pencere oluşturabilirsiniz, bu da yalnızca özel bir mod satırı gösterir? emacs.stackexchange.com/questions/7697/…
kanun listesi

Kesinlikle çerçeveler değil pencereler mi demek istediniz?
abo-abo

İyi yakalama. Evet, yani pencereler.
rgtk

Yanıtlar:


8

Tek bir modelin için bir çözümüm yok, ancak işte iki alternatif çözüm var:

1. Mod satırını yalnızca etkin pencerede oluşturun:

Elektrik hattı kullanıyorsanız, mod hattı formatınızı aşağıdakilere sarabilirsiniz:

((:eval (when (powerline-selected-window-active) ...)))

sonra mode-line-inactiveyüzü arka planınızla karışacak şekilde değiştirin, ancak yine de arabellekleri ayırın:

(set-face-attribute 'mode-line-inactive nil
                    :underline t
                    :background (face-background 'default))

Bu şöyle görünecektir:

resim açıklamasını buraya girin

2. kullanın frame-title-format

Kişisel frame-title-formatbir Arabirimdeki çalıştırırken çerçevenin üstünde göstermek ne belirler.

Set frame-title-format' like you would yourmod-line-format` ve onları şey boş-ish için mod-line-biçimini ayarlamak.


4

Sonunda bunu emac'ları hackleyerek başardım. gösteri

Kaynak kodunu https://github.com/amosbird/emacs/tree/onemodeline adresinden alabilirsiniz . Temel olarak, geçerli arabellek modelini oluşturmak için mini pencerenin başlık satırını kullanır.


Bu hala emacs 26.1 ile çalışıyor / çalışıyor mu?
rien333

@ rien333 Olmalı. Ancak bu yöntem gerçekten çok kırılgandır. Mini pencerenin bir satır olmasını gerektiren sabit kodlanmış mantık var. Ancak hepsini bulamadım.
Amos
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.