CGI Программирование в Элиспе? - PullRequest
5 голосов
/ 07 октября 2009

Кто-нибудь написал какие-нибудь библиотеки для elisp для программирования CGI? Я собрал быстрый первый сценарий. Тем не менее, я всего лишь давний пользователь emacs и никогда не программировал его. Когда я увидел, что могу писать сценарии (--script) в emacs вместо bash, я подумал, что смогу это сделать.

#!/usr/bin/emacs --script

(princ "Content-type: text/html; charset=utf-8\n\n")

(progn (princ "<html>\n")
       (princ "<body>\n")
       (princ "<h1 style='text-align: center'>Elisp CGI Programming</h1>"))

(progn (princ "<table style='border:1px solid'>")
       (princ "<tr><th>One</th><th>Two</th></tr>")
       (princ "<tr><th>A</th><th>B</th></tr>")
       (princ "</table>")
       (princ "</body>")
       (princ "</html>")
)

Ответы [ 3 ]

3 голосов
/ 08 октября 2009

Это может вам помочь, простая библиотека cgi для emacs

http://www.emacswiki.org/emacs/cgi.el

3 голосов
/ 07 октября 2009

Я не писал никаких CGI-скриптов, но использовал xmlgen для генерации xml. Скорее всего, это будет проще, чем то, что у вас там было - поскольку в Emacs легко создавать списки и автоматически конвертировать их в xml / html.

Этот код генерирует ту же строку:

(require 'xmlgen)
(princ  "Content-type: text/html; charset=utf-8\n\n")
(princ (xmlgen '(html (body (h1 :style "text-align: center" "Elisp CGI Programming")
                      (table :style "border: 1px solid"
                             (tr (th "One")
                                 (th "Two"))
                             (tr (th "A")
                                 (th "B")))))))
2 голосов
/ 07 октября 2009

Один из способов сделать это - использовать сервер httpd в Emacs HttpServer и отправить запрос в emacs через прокси.

...