skupienie aplikacji na ramce emacsclient


10

Używam emacs24 i zwykle uruchamiam emacs jako demon na początku, a następnie używam ramek emacsclient.

Ale napotkałem problem: po utworzeniu pierwszej ramki, a następnie za każdym razem, gdy utworzyłem nową ramkę (po zamknięciu pierwszej ramki), pojawiał się komunikat systemowy "emacs24@myusername" is ready, aby nowa ramka straciła ostrość (fokus jest na wiadomość), co jest dość denerwujące. Wygląda na to, że dzieje się tak, ponieważ nawet jeśli zamknę wszystkie ramki, niektóre bufory są nadal otwarte (jak Scratch i Messages ). Zastanawiam się tylko, czy istnieje sposób, aby zapobiec wyskakiwaniu komunikatu systemowego?

Dzięki!

EDYCJA: zapomniałem wspomnieć, że używam Gnome 3.

Odpowiedzi:


9

Oto co robię:

(server-start)
(defun px-raise-frame-and-give-focus ()
  (when window-system
    (raise-frame)
    (x-focus-frame (selected-frame))
    (set-mouse-pixel-position (selected-frame) 4 4)
    ))
(add-hook 'server-switch-hook 'px-raise-frame-and-give-focus)

2
Dzięki! Naprawdę mi to przeszkadzało w Ubuntu 16.04 i rozwiązałem to z/usr/bin/emacsclient -c -e "(progn (raise-frame) (x-focus-frame (selected-frame)))"
Marduk
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.