Created
November 11, 2011 19:38
-
-
Save hhutch/1358999 to your computer and use it in GitHub Desktop.
NodeJS + Node Multimeter in Clojurescript
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(ns cljs-demo.multimeter | |
(:require [cljs.nodejs :as node])) | |
(def multimeter (node/require "multimeter")) | |
(defn start [& _] | |
(let [multi (multimeter. node/process)] | |
(. multi (on "^C" | |
#((. (.charm multi) (cursor true)) | |
(.. multi (write "\n") (destroy)) | |
(. node/process (exit)) ))) | |
(. (.charm multi) (cursor false)) | |
(. multi (drop (fn [bar] | |
(def iv (js/setInterval | |
#(let [p (. bar (percent))] | |
(. bar (percent (+ p 1))) | |
(if (>= p 100) | |
(do | |
(js/clearInterval. iv) | |
(. (.charm multi) (cursor true)) | |
(.. multi (write "\n") (destroy)))) ) | |
25)))) ))) | |
(set! *main-cli-fn* start) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment