apparently some people think parentheses are ugly

This commit is contained in:
AlexKnauth 2015-08-21 14:03:36 -04:00
parent ea76ac4296
commit 4c01d8cd8c
2 changed files with 26 additions and 21 deletions

View File

@ -12,6 +12,7 @@
"unstable-lib"
"fancy-app"
"alexis-util"
"sweet-exp"
"scribble-lib"))

View File

@ -1,13 +1,13 @@
#lang racket/base
#lang sweet-exp racket/base
(provide scribble-include/no-subsection)
provide scribble-include/no-subsection
require syntax/parse/define
racket/match
scribble/core
for-syntax racket/base
syntax/parse
(require syntax/parse/define
racket/match
scribble/core
(for-syntax racket/base
syntax/parse
))
;; scribble-include/no-subsection requires that the module to be included:
;; - has no title
@ -15,16 +15,20 @@
;; - has exactly one (list 'part (generated-tag)) tag
;; - has no subsections
;; - has no `to-collect` content
(define-syntax scribble-include/no-subsection
(syntax-parser
[(~and stx (scribble-include/no-subsection mod))
#:with doc-from-mod (datum->syntax #'mod 'doc)
(unless (module-path? (syntax->datum #'mod))
(raise-syntax-error #f
"not a module path"
#'stx
#'mod))
#'(begin
(require (only-in mod [doc-from-mod doc]))
(match-define (part #f (list (list 'part (generated-tag))) #f style '() blocks '()) doc)
(nested-flow style blocks))]))
define-syntax scribble-include/no-subsection
syntax-parser
(~and stx (scribble-include/no-subsection mod))
#:with doc-from-mod
datum->syntax #'mod 'doc
unless (module-path? (syntax->datum #'mod))
raise-syntax-error #f
"not a module path"
#'stx
#'mod
syntax
begin
require (only-in mod [doc-from-mod doc])
match-define
part #f (list (list 'part (generated-tag))) #f style '() blocks '()
doc
nested-flow style blocks