diff --git a/README.md b/README.md new file mode 100644 index 0000000..3b4a2a0 --- /dev/null +++ b/README.md @@ -0,0 +1,45 @@ +# Console Progress Bar + +Simple progress bar for long-running operations. + +## Java/Groovy + +Build with gradle: + + gradle assemble + + +Example usage: + +```java +import com.jdbernard.util.ConsoleProgressBar + +// ... + +ConsoleProgressBar progressBar = new ConsoleProgressBar() +progressBar.setOut(System.out) // optional +progressBar.setMax(100) + +for (int i = 0; i <= 100; i++) { + progressBar.update(i, "Message for " + i); + Thread.sleep(500); +} +``` + +## Nim + +Install the library using nimble: + + nimble install + +Example usage: + +```nim +import os, console_progress + +var progress = newProgress(sout = stdout, maxValue = 100) + +for i in 0..100: + progress.updateProgress(i, "Message for " & i) + sleep(500) +``` diff --git a/build.gradle b/build.gradle index 78c4cb8..729d92f 100644 --- a/build.gradle +++ b/build.gradle @@ -2,7 +2,7 @@ apply plugin: "groovy" apply plugin: "maven" group = "com.jdbernard" -version = "1.0" +version = "1.1" repositories { mavenLocal() diff --git a/console_progress.nimble b/console_progress.nimble index 32b6e75..e48ebb9 100644 --- a/console_progress.nimble +++ b/console_progress.nimble @@ -1,6 +1,6 @@ # Package -version = "1.0" +version = "1.1" author = "Jonathan Bernard" description = "Utility for writing dynamic progress bars to the console." license = "BSD" diff --git a/src/main/groovy/com/jdbernard/util/.ConsoleProgressBar.groovy.swp b/src/main/groovy/com/jdbernard/util/.ConsoleProgressBar.groovy.swp deleted file mode 100644 index 1ff9039..0000000 Binary files a/src/main/groovy/com/jdbernard/util/.ConsoleProgressBar.groovy.swp and /dev/null differ diff --git a/src/main/groovy/com/jdbernard/util/ConsoleProgressBar.groovy b/src/main/groovy/com/jdbernard/util/ConsoleProgressBar.groovy index 9736216..a29770d 100644 --- a/src/main/groovy/com/jdbernard/util/ConsoleProgressBar.groovy +++ b/src/main/groovy/com/jdbernard/util/ConsoleProgressBar.groovy @@ -8,7 +8,7 @@ package com.jdbernard.util * counter is 1-based because the current step is complete for this counter. * @author Jonathan Bernard (jdbernard@gmail.com) */ -class ConsoleProgressBar { +public class ConsoleProgressBar { int MAX_STEP = 30 long max = 10 @@ -21,7 +21,7 @@ class ConsoleProgressBar { public void setMax(long max) { this.max = Math.max(max, 1) } - void update(long value, String info) { + public void update(long value, String info) { if (value == 0 || startTime == 0) startTime = System.currentTimeMillis() @@ -60,7 +60,7 @@ class ConsoleProgressBar { out.flush() } - void erase() { + public void erase() { out.print '\b' * lastLinePrinted.length() out.print ' ' * lastLinePrinted.length() out.print '\b' * lastLinePrinted.length()