Hacker News new | past | comments | ask | show | jobs | submit login

Looks great!

> assumes the terminal is 256 colors

Would there be a way to degrade gracefully somehow if not? Perhaps using grayscale?




Thank you. https://github.com/k4rthik/git-cal/commit/2c6b50b57fa818d943... should solve it partially (exit(1) if tput colors < 256)


Weird, because before this check was introduced this morning, Konsole reported 8 colours, but rendered your git-cal correctly, using more than 8.


Konsole may support more than 8 colors but if your TERM environment is set wrong then the OS won't know it can. If you bypass the OS and print the color escape sequences directly (as the script is doing, naughtily[1]) then it might just work.

[1] The proper way is to use terminfo to output the escape sequences for you. See http://perldoc.perl.org/Term/Cap.html for how to do this with standard Perl. EDIT: I can't get this to work—Seems Perl has poor terminfo support. :-( "tput setaf 10" is the correct way from sh.


Yes, this change was reverted. + Now there is --ascii option to view the graph with some ascii characters instead of ANSI colors


Yes, apparently it does the same thing as gnome-terminal, which does not advertise its support for 256 colors.


I would recommend my small library Color::ANSI::Util (https://metacpan.org/module/Color::ANSI::Util ) which has ansifg($rgb) and ansibg($rgb) function. They can detect terminal's color depth and output either 24-bit/256-color/16-color ANSI color escape codes.

But I guess the author wants to avoid using non-core dependencies.

Cool script, anyhow! I spent a lot of times looking at this kind of activity graph on Github.

As already submitted to the Github issues, the ability to show activity of multiple git repos as a single graph would be neat, as we tend work across multiple git repos.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: