X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;ds=sidebyside;f=doc%2Fyazphp.dsl;fp=doc%2Fyazphp.dsl;h=0f3f672817d008c9b4bac93744ea0a77223b6069;hb=1f14d2d8be1c47d9e97fdd8ec55e2e5113abe899;hp=0000000000000000000000000000000000000000;hpb=e992383c6389f2b4d55c31d78d1c7d68a749284f;p=yaz-moved-to-github.git diff --git a/doc/yazphp.dsl b/doc/yazphp.dsl new file mode 100644 index 0000000..0f3f672 --- /dev/null +++ b/doc/yazphp.dsl @@ -0,0 +1,85 @@ + + + +]> + + + + + +(define %html-ext% ".php") +(define %shade-verbatim% #t) + +(define (php-code code) + (make processing-instruction + data: (string-append "php " code "?"))) + +(define (html-document title-sosofo body-sosofo) + (let* (;; Let's look these up once, so that we can avoid calculating + ;; them over and over again. + (prev (prev-chunk-element)) + (next (next-chunk-element)) + (prevm (prev-major-component-chunk-element)) + (nextm (next-major-component-chunk-element)) + (navlist (list prev next prevm nextm)) + + ;; Let's make it possible to control the output even in the + ;; nochunks case. Note: in the nochunks case, (chunk?) will + ;; return #t for only the root element. + (make-entity? (and (or (not nochunks) rootchunk) + (chunk?))) + + (make-head? (or make-entity? + (and nochunks + (node-list=? (current-node) + (sgml-root-element))))) + (doc-sosofo + (if make-head? + (make sequence + (php-code "require \"../id_common.inc\"") + (make element gi: "HTML" + (make element gi: "HEAD" + (make element gi: "TITLE " title-sosofo) + ($standard-html-header$ prev next prevm nextm)) + (make element gi: "BODY" + attributes: (append + (list (list "CLASS" (gi))) + %body-attr%) + (header-navigation (current-node) navlist) + body-sosofo + (footer-navigation (current-node) navlist) + ) + ) + (php-code "id_footer();") + ) + body-sosofo + ) + ) + ) + (if make-entity? + (make entity + system-id: (html-entity-file (html-file)) + (if %html-pubid% + (make document-type + name: "HTML" + public-id: %html-pubid%) + (empty-sosofo)) + doc-sosofo) + (if (node-list=? (current-node) (sgml-root-element)) + (make sequence + (if %html-pubid% + (make document-type + name: "HTML" + public-id: %html-pubid%) + (empty-sosofo)) + doc-sosofo) + doc-sosofo)))) + + + + + +