diff options
Diffstat (limited to 'web/view/markdown.scm')
-rw-r--r-- | web/view/markdown.scm | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/web/view/markdown.scm b/web/view/markdown.scm index b63e48d..a147231 100644 --- a/web/view/markdown.scm +++ b/web/view/markdown.scm @@ -7,11 +7,37 @@ #:use-module (ice-9 string-fun) #:use-module (ice-9 textual-ports) #:use-module (sxml simple) + #:use-module (web client) + #:use-module (web uri) + #:use-module (web request) #:use-module (web sxml) #:use-module (commonmark) - #:export (markdown-file->sxml)) + + #:export (markdown-file->sxml + markdown-github->sxml) + ) + (define (markdown-file->sxml fn) + "Parse a local file" (commonmark->sxml (call-with-input-file fn get-string-all))) + +;; --- fetch github style URLs +;; +;; https://github.com/genenetwork/gn-docs/master/general/brand/aging/home.md +;; https://github.com/genenetwork/gn-docs/edit/master/general/brand/aging/home.md + +(define (fetch-raw-file url) + (bytevector->string (receive (response-status response-body) + (http-request "https://github.com/genenetwork/gn-docs/master/general/brand/aging/home.md") + response-body) "UTF-8")) + + +(define (markdown-github->sxml fn) + "Parse a github file" + (commonmark->sxml + (call-with-input-file (pk fn) + get-string-all))) + |