aboutsummaryrefslogtreecommitdiff
path: root/module/main.scm
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2019-04-10 00:46:47 +0200
committerHugo Hörnquist <hugo@lysator.liu.se>2019-04-10 00:46:47 +0200
commit5709173103aedbab5079252709d83947f43b2ca4 (patch)
tree7924a1fd4e8844ab0c7f0c16c28cfd7ebc9135e9 /module/main.scm
parentStart using multi-set! (diff)
downloadcalp-5709173103aedbab5079252709d83947f43b2ca4.tar.gz
calp-5709173103aedbab5079252709d83947f43b2ca4.tar.xz
Minor cleanups.
Diffstat (limited to 'module/main.scm')
-rwxr-xr-xmodule/main.scm18
1 files changed, 13 insertions, 5 deletions
diff --git a/module/main.scm b/module/main.scm
index 0e3c23be..2e7759d1 100755
--- a/module/main.scm
+++ b/module/main.scm
@@ -108,6 +108,8 @@
)))
(let ((char (read-char)))
+ ;; (format (current-error-port)
+ ;; "c = ~c (~d)~%" char (char->integer char))
(case char
((#\L #\l)
(set! time (add-day time)
@@ -128,7 +130,6 @@
(when (or (eof-object? char)
(memv char (list #\q (ctrl #\C))))
(break)))
- ;; (format #t "c = ~c (~d)~%" char (char->integer char))
)))
@@ -136,7 +137,12 @@
(load "config.scm")
-(define (main args)
+;; Reads all calendar files from disk, and creates a list of "regular" events,
+;; and a stream of "repeating" events, which are passed in that order to the
+;; given procedure @var{proc}.
+;;
+;; Given as a sepparate function from main to ease debugging.
+(define (init proc)
(define calendars (map make-vcomponent calendar-files))
(define events (concatenate (map (cut children <> 'VEVENT) calendars)))
@@ -147,7 +153,9 @@
(let ((repeating (interleave-streams ev-time<?
(map generate-recurrence-set repeating))))
- (with-vulgar
- (lambda () (main-loop regular repeating))))))
-
+ (proc regular repeating))))
+(define (main args)
+ (init (lambda (regular repeating)
+ (with-vulgar
+ (lambda () (main-loop regular repeating))))))