File tree Expand file tree Collapse file tree 1 file changed +16
-2
lines changed Expand file tree Collapse file tree 1 file changed +16
-2
lines changed Original file line number Diff line number Diff line change @@ -58,8 +58,8 @@ our @section_data = (
58
58
pages => [qw/ perlhist perltodo perldelta/ ],
59
59
pagematch => qr / ^perl\d +delta$ / ,
60
60
sort => sub {
61
- (my $c = $a ) =~ s / .*?(\d )( \d +) .*/ $1 . $2 / ;
62
- (my $d = $b ) =~ s / .*?(\d )( \d +) .*/ $1 . $2 / ;
61
+ (my $c = $a ) =~ s / .*?(\d {2,}) .*/ _perldelta_version_to_numeric(" $1 ") / e ;
62
+ (my $d = $b ) =~ s / .*?(\d {2,}) .*/ _perldelta_version_to_numeric(" $1 ") / e ;
63
63
$d <=> $c
64
64
}
65
65
},
@@ -141,6 +141,20 @@ sub pages {
141
141
}
142
142
143
143
144
+ # --------------------------------------------------------------------------
145
+
146
+ sub _perldelta_version_to_numeric {
147
+ my $delta_version = shift ;
148
+ # 5005 -> 5.005
149
+ # 56 -> 5.006
150
+ # 561 -> 5.006001
151
+ # 5101 -> 5.010001
152
+ # 51010 -> 5.010010 (no such delta files currently)
153
+ my ($revision , $version , $subversion ) = $delta_version =~ / ^(\d )0*(\d (?=\d ?\z )|\d\d )(\d *)/ ;
154
+ return sprintf (' %d.%03d%03d' , $revision , $version , $subversion || 0);
155
+ }
156
+
157
+
144
158
# --------------------------------------------------------------------------
145
159
146
160
1;
You can’t perform that action at this time.
0 commit comments