(module tick-params * (import scheme) (import (chicken base) (chicken format) (chicken pathname) (chicken platform) (chicken process) (chicken process-context)) (cond-expand (chicken-6 (import (scheme base))) (else)) (import xdg-basedir) (define db-dir (let ((%cache-dir (get-environment-variable "TICK_CACHE_DIR"))) (make-parameter (if %cache-dir (make-pathname %cache-dir "db") (make-pathname (list (xdg-cache-home) "tick") "db"))))) (define git-program (make-parameter "git")) (define listing-format (make-parameter #f)) (define named-listings (make-parameter '())) (define named-sorters (make-parameter '())) (define named-queries (make-parameter '((my-open-tickets (and (= owner me) (<> status "closed")) #f) ))) (define default-query ;; Can be either a named query or a query expression (make-parameter 'my-open-tickets)) (define editor (make-parameter (lambda (file) (let ((editor (or (get-environment-variable "EDITOR") "emacs"))) (system* (sprintf "~a ~a" editor (qs file))))))) (define pager (make-parameter (case (software-type) ((windows) "more /s") (else "less")))) ) ;; end module