Как получить фокус для нового кадра Emacs, когда он был поднят снаружи Emacs (например, из emacsclient или edit-server)? В настоящее время новый кадр получает фокус ввода, но не display focus, т.е. вы вводите текст, но он находится где-то за другими окнами (в терминологии ОС Windows). Был подобный вопрос , и он помечен как ответ, но без решения.
emacsclient
edit-server
Emacs 23,3.
Функция raise-frame может вывести рамку на передний план.
raise-frame
Какую версию Emacs вы используете? Я использовал put в gnuserv-visit-hook:
(select-frame-set-input-focus (window-frame (selected-window)))
Но в Emacs 23 это значение по умолчанию, управляемое server-raise-frame.
server-raise-frame
См. Также функцию select-frame-set-input-focus:
select-frame-set-input-focus
«Выберите РАМКУ, поднимите ее и установите фокус ввода, если это возможно.»