(defun display-func (result path ppath request) (save-window-excursion (set-buffer (window-buffer)) (save-restriction (let* ((beg (window-start)) (end (window-end)) charset) (when (fboundp 'zmacs-deactivate-region) (zmacs-deactivate-region)) (narrow-to-region beg end) (let* ((htmlize-major-mode nil)) (set-buffer (htmlize-buffer-noninteractive (current-buffer)))) (setq charset (detect-mime-charset-region (point-min)(point-max))) (elserv-set-result-header result (list 'content-type (concat "text/html; charset=" (symbol-name charset)))) (elserv-set-result-body result (encode-mime-charset-string (buffer-string) charset)) (kill-buffer (current-buffer)))))) (elserv-publish (elserv-find-process) "/ht" :function 'display-func :description "Display current buffer" )