X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=commitid.scad.pl;h=48585d5fd11909e402306a99ede5870aa166545c;hp=ae1ebb42b531626ba76a8930dd0272312ac05f1e;hb=0bd64b9ae61ec61a944e56c6d15e7466720d837d;hpb=f64a67465347be98626be64b92207aba039e7b32 diff --git a/commitid.scad.pl b/commitid.scad.pl index ae1ebb4..48585d5 100755 --- a/commitid.scad.pl +++ b/commitid.scad.pl @@ -69,16 +69,18 @@ $SIG{__WARN__} = sub { die @_; }; # digits by 1. # # Small4S: -# Small6S: -# Small8S: +# Small6S: Small6T: +# Small8S: Small9T: # Small10S: -# same but split into two lines eg -# Small4S 10 -# 70 +# same but split into two lines (S) or three lines (T) eg +# Small4S 10 Small6t 1 +# 70 07 +# 0* # # Git4 Git4S -# Git6 Git6S +# Git6 Git6S Git6T # Git8 Git8S +# Git9 Git9T # Git10 Git10S # git-rev-parse HEAD (prefix of requested length) # eg @@ -102,6 +104,12 @@ $SIG{__WARN__} = sub { die @_; }; # If tree is dirty, + or * is suffixed to count (but not to # commitid) reducing number of digits by 1. # +# Full6T +# Full9T +# Full12T +# Full15T +# As Full but commit is split over two lines for a 3-line message +# # FontDemo # # Arg0, Arg1, ... @@ -269,13 +277,22 @@ sub ljustt ($$$) { # always includes $suffix return sprintf "%-${sz}.${sz}s%s", $whole, $suffix; } +sub gentextmodule_q ($$$) { + my ($form, $s, $lines) = @_; + $gtm_demo_j++; + my $l = length $s; + return if $l % $lines; + my $e = $l/$lines; + return if $e < 2; + $gtm_demo_j--; + gentextmodule($form, $s =~ m/.{$e}/g); +} + sub gentextmodule_plusq ($$) { my ($form, $s) = @_; - my $l = length $s; gentextmodule($form, $s); - if (!($l & 1) && $l>=4) { - gentextmodule("${form}S", substr($s,0,$l/2), substr($s,$l/2)); - } + gentextmodule_q("${form}S", $s, 2); + gentextmodule_q("${form}T", $s, 3); } our @gcmd; @@ -332,22 +349,27 @@ sub do_git () { } foreach my $sz (3..10) { - gentextmodule_demo_start_batch($sz-3, 0); + gentextmodule_demo_start_batch($sz-3); gentextmodule_plusq("Small$sz", rjustt($sz, $git_count.$git_dirty)) if defined $git_count; - gentextmodule_demo_start_batch($sz-3, 2); - gentextmodule_plusq("Git$sz", ljustt($sz, $git_object, $git_dirty)) if defined $git_object; - gentextmodule_demo_start_batch($sz-3, 4); - - gentextmodule("Full$sz", - rjustt($sz, $git_count.$git_dirty), - ljustt($sz, $git_object, '')) - if defined $git_count && defined $git_object; + if (defined $git_count && defined $git_object) { + gentextmodule("Full$sz", + rjustt($sz, $git_count.$git_dirty), + ljustt($sz, $git_object, '')); + + if (!($sz % 2)) { + my $e = $sz/2; + gentextmodule("Full".($e*3)."T", + rjustt($e, $git_count), + ljustt($e*2, $git_object, $git_dirty) + =~ m/.{$e}/g); + } + } } }