(add-hook 'kill-emacs-hook (lambda () (wg2-sess-save)))
(defun wg2-sess-save (&optional name)
"Save desktop with a name in curr project dir"
(interactive)
(let ((my-project-root (Hlpr-find-root-marker remo:var:marker-project-root)))
(and (stringp my-project-root) (not (matches-a-buffer-name? "COMMIT_EDITMSG"))
(progn
(frameset-to-register ?r)
(desktop-save (format "%s" my-project-root) t)
(message (format "%s %s%s" "Session saved to" my-project-root remo:var:marker-project-root))))))
А как бы так сделать, чтобы сессия не сохранялась, если она не открыта? =)