# generate a form FORM containing TEXT
# TEXT can contain newlines (final newline usually undesirable)
# if FORM not specified, generates Arg0 Arg1 Arg2 in sequence
-# character set is SPC 0-9 a-f + * (`*' glyph is `=/=').
+# character set is SPC 0-9 a-f + *
#
# We generate a physical indication of which commit was used.
#
# 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
# 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, ...
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;
}
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);
+ }
+ }
}
}
+ *
- r
- # ###
-### #
- # ###
- L
+ # #
+ # \#/
+### ###
+ # /#\
+ # #