| kstati |
|
|
Темы:
5
Сообщения:
103
Участник с: 04 марта 2010
|
В своей работе часто использую emacs. GUI-версия меня не прельщает — нет в ней ничего, что я использую. А консольная даже при обычной работе может загружаться видимое для глаза время, кроме того она не контролирует открытые файлы в разных сессиях. Готовое решение давно имеется, надо только воспользоваться им — работа emacs в режиме демона. Стандартным методом использования является запуск демона emacs по команде emacs --daemon В общем такой подход может быть и удобный, но его можно и нужно совершенствовать. На мой взгляд требуется автоматизация запуска демона и прозрачное использование emacsclient. Этого можно добиться дописав пару функций и один алиас в начало .bashrc: load_emacs_daemon(){
local me=`whoami`
local template=`ps -AF -U ${me} | grep "[0-9] emacs --daemon"`
if [ -z "$template" ] ; then
emacs --daemon &>/dev/null
fi
}
load_emacs_client() {
if ! [ -z "$1" ] ; then
emacsclient -t [email protected]
else
emacsclient -t
fi
}
load_emacs_daemon
alias emacs="load_emacs_client"В результате появляется возможность прозрачного использования emacs клиент-сервер со всеми вытекающими от сюда плюсами, коими являются в том числе и актуальное состояние файлов во всех окнах emacs. |