diff options
Diffstat (limited to 'z.scm')
-rw-r--r-- | z.scm | 26 |
1 files changed, 15 insertions, 11 deletions
@@ -95,7 +95,7 @@ (define (cat-node id) (prn (read-node id))) -;; Indexing +;; Metadata (define (get-title id) (-> id @@ -103,17 +103,21 @@ (re.match "title: ([^\n]*)") (match:substring 1))) -(define (index-titles) - (fold - (lambda (node ls) (acons (get-title node) node ls)) - '() - (list-nodes))) - (define (get-by-title title) (let ([index (index-titles)]) (assoc title index))) -(comment - (define index-tags) - (define index-links) - ) +(define (get-tags id) + (-> id + read-node + (re.match "tags: ([^\n]*)") + (re.group 1) + (string.split #\space))) + +;; Indexing + +(define (index-titles) + (fold + (/. node ls (acons (get-title node) node ls)) + '() + (list-nodes))) |