Если вы планируете использовать внешний процесс (который вы указали в комментарии к другому вопросу), вы можете использовать следующее:
(start-process NAME BUFFER PROGRAM &rest PROGRAM-ARGS)
Это вернет процесс объект.Вы можете отправить вывод в буфер или добавить к процессу функцию фильтра .В последнем случае это функция, которая вызывается каждый раз, когда ваш процесс генерирует какие-либо выходные данные.
Кроме того, вы можете присоединить дозорную функцию к вашему процессу.Эта функция вызывается каждый раз, когда изменяется состояние вашего процесса, это полезно выяснить, когда он завершился.
В исходном коде Emacs есть несколько примеров вышеупомянутого, один такой пример - compile.el
.