# Garden Directory ``` ,(eval (begin (for-each eval (with-input-from-file "garden.scm" read-list)) (define (pad-string o max-len) (let* ((s (->string o)) (n (string-length s))) (if (> n max-len) (string-take s max-len) (conc s (make-string (- max-len n) #\space))))) (define (print-rule n) (print (make-string n #\-))) (let* ((headers '("Owner" "Created" "Plant Stage")) (colwidths '(20 30 15)) (total-width (apply + colwidths))) (apply print (map pad-string headers colwidths)) (print-rule total-width) (for-each (lambda (garden-file) (let ((g (with-input-from-file garden-file read))) (update-garden! g) (with-output-to-file garden-file (lambda () (write g))) (let ((fields (list (garden-prop 'user g) (seconds->string (garden-prop 'created g)) (garden-stage g)))) (apply print (map pad-string fields colwidths))))) (glob "accounts/*")) (print-rule total-width)))) ``` => ./ Return to the μBotany start page