понедельник, 20 июня 2016 г.

Компиляция во всплывающем буфере Emacs

Начну с описания проблемы, которая давно меня раздражала в Emacs. Запускаем, допустим, компиляцию, и она открывает буфер в непредсказуемом месте, замещая уже открытые. Логику по которой она выбирает себе место - я так и не постиг. Но зато нашёл плагин, который борется с такими своевольными операциями - popwin.

Плагин умеет создавать "всплывающий" буфер, в который будет помещать вывод компиляции, справки или любого другого буфера, по желанию. Этот "временный" буфер автоматически закрывается по C-g или при переключении между буферами. Для работы с ним, установите плагин popwin и добавьте в конфиг:
(require 'popwin)
(popwin-mode 1)
Теперь можно работать:

Как видите я вызываю компиляцию, она отображается во всплывающем буфере и скрывается как только я переключаюсь в другое место. Потом я вызываю "M-x popwin:popup-last-buffer" и результаты компиляции опять отображаются. Потом тоже самое проделываю со справкой.

Из интересных команд:
  • M-x popwin:popup-last-buffer - показать предыдущий буфер
  • M-x popwin:messages - показать в таком буфере \*Messages\*
Из коробки он меня устраивает, но при желании можно настроить размеры буфера, положение, связать с другими командами и т.п. Повторять автора не буду, у него на github всё это описано.

Комментариев нет:

Отправить комментарий