emacsclientフレームのアプリケーションフォーカス


10

私はemacs24を使用しており、通常は起動時にemacsをデーモンとして起動してから、emacsclientフレームを使用します。

しかし、問題が発生しました。最初のフレームを作成した後、新しいフレームを作成すると(最初のフレームが閉じた後)、システムメッセージ"emacs24@myusername" is readyが表示され、新しいフレームがフォーカスを失います(フォーカスがオンになります)。メッセージ)、これはかなり迷惑です。これは、すべてのフレームを閉じても、一部のバッファがまだ開いているためです(ScratchMessagesなど)。システムメッセージが飛び出さないようにする方法があるかどうか疑問に思っています。

ありがとう!

編集:私がGnome 3を使用していることを忘れていました。

回答:


9

これが私がすることです:

(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
ありがとう!これはUbuntu 16.04で私を本当に悩ませていました、そして私はそれで解決しました/usr/bin/emacsclient -c -e "(progn (raise-frame) (x-focus-frame (selected-frame)))"
Marduk
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.