From 61b720558e0d1776a6d5a734c6f3ad7c298c7815 Mon Sep 17 00:00:00 2001 From: briancain Date: Tue, 28 May 2013 10:05:05 -0700 Subject: [PATCH 1/8] Add blinking curser The : now blinks like a real digital clock --- .gitignore | 1 + tty-clock.dSYM/Contents/Info.plist | 20 +++++++++++++ .../Contents/Resources/DWARF/tty-clock | Bin 0 -> 16747 bytes ttyclock.c | 27 +++++++++++++++--- 4 files changed, 44 insertions(+), 4 deletions(-) create mode 100644 .gitignore create mode 100644 tty-clock.dSYM/Contents/Info.plist create mode 100644 tty-clock.dSYM/Contents/Resources/DWARF/tty-clock diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d734fe7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +tty-clock diff --git a/tty-clock.dSYM/Contents/Info.plist b/tty-clock.dSYM/Contents/Info.plist new file mode 100644 index 0000000..373e2f7 --- /dev/null +++ b/tty-clock.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.tty-clock + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/tty-clock.dSYM/Contents/Resources/DWARF/tty-clock b/tty-clock.dSYM/Contents/Resources/DWARF/tty-clock new file mode 100644 index 0000000000000000000000000000000000000000..6e1fdff57b40e5c260175ac5be8c7f2e77002093 GIT binary patch literal 16747 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 q;?lafb4V_(tTfjJT9E5aP2$Edxwsdate.hour[0], 1, 1); draw_number(ttyclock->date.hour[1], 1, 8); - /* 2 dot for number separation */ - wbkgdset(ttyclock->framewin, COLOR_PAIR(1)); - mvwaddstr(ttyclock->framewin, 2, 16, " "); - mvwaddstr(ttyclock->framewin, 4, 16, " "); + time_t seconds; + seconds = time(NULL); + + if (seconds % 2 == 0){ + flag = true; + } + else{ + flag = false; + } + + if (flag == false){ + /* 2 dot for number separation */ + wbkgdset(ttyclock->framewin, COLOR_PAIR(1)); + mvwaddstr(ttyclock->framewin, 2, 16, " "); + mvwaddstr(ttyclock->framewin, 4, 16, " "); + } + else if (flag == true){ + /*2 dot black for blinking */ + wbkgdset(ttyclock->framewin, COLOR_PAIR(2)); + mvwaddstr(ttyclock->framewin, 2, 16, " "); + mvwaddstr(ttyclock->framewin, 4, 16, " "); + } /* Draw minute numbers */ draw_number(ttyclock->date.minute[0], 1, 20); From 89fd0dbc47ee512d8f211053a5df3c6f2a20d821 Mon Sep 17 00:00:00 2001 From: briancain Date: Tue, 28 May 2013 10:06:51 -0700 Subject: [PATCH 2/8] Removing folder --- .gitignore | 1 + tty-clock.dSYM/Contents/Info.plist | 20 ------------------ .../Contents/Resources/DWARF/tty-clock | Bin 16747 -> 0 bytes 3 files changed, 1 insertion(+), 20 deletions(-) delete mode 100644 tty-clock.dSYM/Contents/Info.plist delete mode 100644 tty-clock.dSYM/Contents/Resources/DWARF/tty-clock diff --git a/.gitignore b/.gitignore index d734fe7..ea4e594 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ tty-clock +tty-clock.dSYM/ diff --git a/tty-clock.dSYM/Contents/Info.plist b/tty-clock.dSYM/Contents/Info.plist deleted file mode 100644 index 373e2f7..0000000 --- a/tty-clock.dSYM/Contents/Info.plist +++ /dev/null @@ -1,20 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleIdentifier - com.apple.xcode.dsym.tty-clock - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - dSYM - CFBundleSignature - ???? - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - - diff --git a/tty-clock.dSYM/Contents/Resources/DWARF/tty-clock b/tty-clock.dSYM/Contents/Resources/DWARF/tty-clock deleted file mode 100644 index 6e1fdff57b40e5c260175ac5be8c7f2e77002093..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16747 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 q;?lafb4V_(tTfjJT9E5aP2$Edxws Date: Tue, 28 May 2013 11:16:04 -0700 Subject: [PATCH 3/8] Fix code logic Cleaning up code logic --- ttyclock.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/ttyclock.c b/ttyclock.c index d214d52..bb7043b 100644 --- a/ttyclock.c +++ b/ttyclock.c @@ -203,7 +203,6 @@ draw_number(int n, int x, int y) void draw_clock(void) { - bool flag = false; /* Draw hour numbers */ draw_number(ttyclock->date.hour[0], 1, 1); draw_number(ttyclock->date.hour[1], 1, 8); @@ -211,20 +210,13 @@ draw_clock(void) time_t seconds; seconds = time(NULL); - if (seconds % 2 == 0){ - flag = true; - } - else{ - flag = false; - } - - if (flag == false){ + if (seconds % 2 != 0){ /* 2 dot for number separation */ wbkgdset(ttyclock->framewin, COLOR_PAIR(1)); mvwaddstr(ttyclock->framewin, 2, 16, " "); mvwaddstr(ttyclock->framewin, 4, 16, " "); } - else if (flag == true){ + else if (seconds % 2 == 0){ /*2 dot black for blinking */ wbkgdset(ttyclock->framewin, COLOR_PAIR(2)); mvwaddstr(ttyclock->framewin, 2, 16, " "); From ad835677bc07e76f2c57d54b5cbe3d2b75601ab6 Mon Sep 17 00:00:00 2001 From: Brian Cain Date: Sat, 1 Jun 2013 23:21:37 -0500 Subject: [PATCH 4/8] (maint) Add blink colon option Prior to this commit, my blinking colon pull req made blinking default. This commit makes it so that you have to pass in a flag -B to make the colons blink. This fits with the style of this program. --- README | 1 + ttyclock.c | 46 ++++++++++++++++++++++++++++++---------------- ttyclock.h | 1 + 3 files changed, 32 insertions(+), 16 deletions(-) diff --git a/README b/README index e18294d..dc82c6b 100755 --- a/README +++ b/README @@ -8,3 +8,4 @@ usage : tty-clock [-sctrvih] [-C [0-7]] [-f format] -v Show tty-clock version -i Show some info about tty-clock -h Show this page + -B Enable blinking colon diff --git a/ttyclock.c b/ttyclock.c index bb7043b..743e269 100644 --- a/ttyclock.c +++ b/ttyclock.c @@ -207,20 +207,28 @@ draw_clock(void) draw_number(ttyclock->date.hour[0], 1, 1); draw_number(ttyclock->date.hour[1], 1, 8); - time_t seconds; - seconds = time(NULL); - - if (seconds % 2 != 0){ - /* 2 dot for number separation */ - wbkgdset(ttyclock->framewin, COLOR_PAIR(1)); - mvwaddstr(ttyclock->framewin, 2, 16, " "); - mvwaddstr(ttyclock->framewin, 4, 16, " "); + if (ttyclock->option.blink){ + time_t seconds; + seconds = time(NULL); + + if (seconds % 2 != 0){ + /* 2 dot for number separation */ + wbkgdset(ttyclock->framewin, COLOR_PAIR(1)); + mvwaddstr(ttyclock->framewin, 2, 16, " "); + mvwaddstr(ttyclock->framewin, 4, 16, " "); + } + else if (seconds % 2 == 0){ + /*2 dot black for blinking */ + wbkgdset(ttyclock->framewin, COLOR_PAIR(2)); + mvwaddstr(ttyclock->framewin, 2, 16, " "); + mvwaddstr(ttyclock->framewin, 4, 16, " "); + } } - else if (seconds % 2 == 0){ - /*2 dot black for blinking */ - wbkgdset(ttyclock->framewin, COLOR_PAIR(2)); - mvwaddstr(ttyclock->framewin, 2, 16, " "); - mvwaddstr(ttyclock->framewin, 4, 16, " "); + else{ + /* 2 dot for number separation */ + wbkgdset(ttyclock->framewin, COLOR_PAIR(1)); + mvwaddstr(ttyclock->framewin, 2, 16, " "); + mvwaddstr(ttyclock->framewin, 4, 16, " "); } /* Draw minute numbers */ @@ -448,14 +456,16 @@ main(int argc, char **argv) ttyclock->option.color = COLOR_GREEN; /* COLOR_GREEN = 2 */ /* Default delay */ ttyclock->option.delay = 40000000; /* 25FPS */ + /* Default blink */ + ttyclock->option.blink = False; - while ((c = getopt(argc, argv, "tvsrcihfDd:C:")) != -1) + while ((c = getopt(argc, argv, "tvsrcihfDBd:C:")) != -1) { switch(c) { case 'h': default: - printf("usage : tty-clock [-sctrvihD] [-C [0-7]] [-f format] \n" + printf("usage : tty-clock [-sctrvihDB] [-C [0-7]] [-f format] \n" " -s Show seconds \n" " -c Set the clock at the center of the terminal \n" " -C [0-7] Set the clock color \n" @@ -466,7 +476,8 @@ main(int argc, char **argv) " -i Show some info about tty-clock \n" " -h Show this page \n" " -d delay Set the delay between two redraws of the clock \n" - " -D Hide date \n"); + " -D Hide date \n" + " -B Enable blinking colon \n"); free(ttyclock); exit(EXIT_SUCCESS); break; @@ -508,6 +519,9 @@ main(int argc, char **argv) case 'D': ttyclock->option.date = False; break; + case 'B': + ttyclock->option.blink = True; + break; } } diff --git a/ttyclock.h b/ttyclock.h index d6048f3..469e8f7 100644 --- a/ttyclock.h +++ b/ttyclock.h @@ -68,6 +68,7 @@ typedef struct char *format; int color; long delay; + Bool blink; } option; /* Clock geometry */ From 78f2238cfc9335db6c15e9cfe50a979ad8571e36 Mon Sep 17 00:00:00 2001 From: Brian Cain Date: Sat, 1 Jun 2013 23:26:48 -0500 Subject: [PATCH 5/8] More up to date readme The readme was out of date from what was reflected in the code. --- README | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/README b/README index dc82c6b..ab94f93 100755 --- a/README +++ b/README @@ -1,11 +1,13 @@ -usage : tty-clock [-sctrvih] [-C [0-7]] [-f format] - -s Show seconds - -c Set the clock at the center of the terminal - -C [0-7] Set the clock color - -t Set the hour in 12h format - -r Do rebound the clock - -f format Set the date format - -v Show tty-clock version - -i Show some info about tty-clock - -h Show this page - -B Enable blinking colon +usage : tty-clock [-sctrvihDB] [-C [0-7]] [-f format] + -s Show seconds + -c Set the clock at the center of the terminal + -C [0-7] Set the clock color + -t Set the hour in 12h format + -r Do rebound the clock + -f format Set the date format + -v Show tty-clock version + -i Show some info about tty-clock + -h Show this page + -d delay Set the delay between two redraws of the clock + -D Hide date + -B Enable blinking colon From 6ff646f569bf4bee208869ec4aea2dc8ebdc38c5 Mon Sep 17 00:00:00 2001 From: Justin Hammond Date: Tue, 6 Aug 2013 13:52:48 -0500 Subject: [PATCH 6/8] Added utc option --- ttyclock.c | 12 +++++++++++- ttyclock.h | 1 + 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/ttyclock.c b/ttyclock.c index 743e269..5e3fb3a 100644 --- a/ttyclock.c +++ b/ttyclock.c @@ -78,6 +78,9 @@ init(void) ttyclock->geo.w = (ttyclock->option.second) ? SECFRAMEW : NORMFRAMEW; ttyclock->geo.h = 7; ttyclock->tm = localtime(&(ttyclock->lt)); + if(ttyclock->option.utc) { + ttyclock->tm = gmtime(&(ttyclock->lt)); + } ttyclock->lt = time(NULL); update_hour(); @@ -145,6 +148,9 @@ update_hour(void) char tmpstr[128]; ttyclock->tm = localtime(&(ttyclock->lt)); + if(ttyclock->option.utc) { + ttyclock->tm = gmtime(&(ttyclock->lt)); + } ttyclock->lt = time(NULL); ihour = ttyclock->tm->tm_hour; @@ -459,7 +465,7 @@ main(int argc, char **argv) /* Default blink */ ttyclock->option.blink = False; - while ((c = getopt(argc, argv, "tvsrcihfDBd:C:")) != -1) + while ((c = getopt(argc, argv, "utvsrcihfDBd:C:")) != -1) { switch(c) { @@ -470,6 +476,7 @@ main(int argc, char **argv) " -c Set the clock at the center of the terminal \n" " -C [0-7] Set the clock color \n" " -t Set the hour in 12h format \n" + " -u Use UTC time \n" " -r Do rebound the clock \n" " -f format Set the date format \n" " -v Show tty-clock version \n" @@ -487,6 +494,9 @@ main(int argc, char **argv) free(ttyclock->option.format); exit(EXIT_SUCCESS); break; + case 'u': + ttyclock->option.utc = True; + break; case 'v': puts("TTY-Clock 2 © devel version"); free(ttyclock); diff --git a/ttyclock.h b/ttyclock.h index 469e8f7..d8b63b9 100644 --- a/ttyclock.h +++ b/ttyclock.h @@ -65,6 +65,7 @@ typedef struct Bool center; Bool rebound; Bool date; + Bool utc; char *format; int color; long delay; From e98c3805f5066afb58d83c567306dc5a9a48970f Mon Sep 17 00:00:00 2001 From: Justin Hammond Date: Tue, 6 Aug 2013 13:53:55 -0500 Subject: [PATCH 7/8] Updated README to add -u --- README | 1 + 1 file changed, 1 insertion(+) diff --git a/README b/README index ab94f93..1cff61f 100755 --- a/README +++ b/README @@ -3,6 +3,7 @@ usage : tty-clock [-sctrvihDB] [-C [0-7]] [-f format] -c Set the clock at the center of the terminal -C [0-7] Set the clock color -t Set the hour in 12h format + -u Use UTC time -r Do rebound the clock -f format Set the date format -v Show tty-clock version From 85f41f16a1c2a5033c0722219f32f09430c5e9ed Mon Sep 17 00:00:00 2001 From: Paul Tagliamonte Date: Sat, 17 Aug 2013 15:18:31 -0400 Subject: [PATCH 8/8] Add the f argument to optparse to avoid segfault. Otherwise optarg is set to 0, and we segfault when we try to strcpy it. --- ttyclock.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ttyclock.c b/ttyclock.c index 5e3fb3a..1a43ffb 100644 --- a/ttyclock.c +++ b/ttyclock.c @@ -465,7 +465,7 @@ main(int argc, char **argv) /* Default blink */ ttyclock->option.blink = False; - while ((c = getopt(argc, argv, "utvsrcihfDBd:C:")) != -1) + while ((c = getopt(argc, argv, "utvsrcihf:DBd:C:")) != -1) { switch(c) {