@@ -102,16 +102,17 @@ (define file (or (assoc 'filename attrs) "")) (define codeblock `(pre [[class "code"]] (code ,@elems))) (cond [(string>? file "") `(@ (div [[class "listing-filename"]] 128196 " " ,file) ,codeblock)] [else codeblock])) -(define (html-index . elems) - `(a [[id ,(here-id (list "_idx-" (uri-encode (car elems))))] - [href ,(string-append "/keyword-index.html#" (uri-encode (string-downcase (car elems))))] - [data-index-entry ,(car elems)] +(define (html-index attrs elems) + (define index-key (maybe-attr 'key attrs (tx-strs `(span ,@elems)))) + `(a [[id ,(here-id (list "_idx-" (uri-encode index-key)))] + [href ,(string-append "/keyword-index.html#" (uri-encode (string-downcase index-key)))] + [data-index-entry ,index-key] [class "index-link"]] - ,@(cdr elems))) + ,@elems)) (define (html-say . elems) `(@ (dt ,(car elems) (span [[class "x"]] ": ")) (dd ,@(cdr elems)))) (define (html-verse attrs elems)