[Catalyst-commits] r11063 - in Catalyst-Runtime/5.80/trunk: . lib/Catalyst lib/Catalyst/DispatchType

groditi at dev.catalyst.perl.org groditi at dev.catalyst.perl.org
Sat Aug 8 21:54:05 GMT 2009


Author: groditi
Date: 2009-08-08 21:54:04 +0000 (Sat, 08 Aug 2009)
New Revision: 11063

Modified:
   Catalyst-Runtime/5.80/trunk/Changes
   Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Chained.pm
   Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Path.pm
   Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Regex.pm
   Catalyst-Runtime/5.80/trunk/lib/Catalyst/Dispatcher.pm
Log:
make debug output prettier with large widths

Modified: Catalyst-Runtime/5.80/trunk/Changes
===================================================================
--- Catalyst-Runtime/5.80/trunk/Changes	2009-08-08 08:34:50 UTC (rev 11062)
+++ Catalyst-Runtime/5.80/trunk/Changes	2009-08-08 21:54:04 UTC (rev 11063)
@@ -18,6 +18,8 @@
          known issues with 5.8.3, and nobody is prepared to fix / support perl
          older than 5.8.6 any more. Patches to regain compatibility to older
          perls would be welcome.
+       - Debug output uses dynamic column sizing to create more readable output
+         when using a larger $ENV{COLUMNS} setting. (groditi)
 
   New features:
        - private_path method for Catalyst::Action + docs + tests (groditi)

Modified: Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Chained.pm
===================================================================
--- Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Chained.pm	2009-08-08 08:34:50 UTC (rev 11062)
+++ Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Chained.pm	2009-08-08 21:54:04 UTC (rev 11063)
@@ -80,14 +80,16 @@
 
     return unless $self->_endpoints;
 
-    my $column_width = Catalyst::Utils::term_width() - 35 - 9;
+    my $avail_width = Catalyst::Utils::term_width() - 9;
+    my $col1_width = ($avail_width * .50) < 35 ? 35 : int($avail_width * .50);
+    my $col2_width = $avail_width - $col1_width;
     my $paths = Text::SimpleTable->new(
-       [ 35, 'Path Spec' ], [ $column_width, 'Private' ],
+        [ $col1_width, 'Path Spec' ], [ $col2_width, 'Private' ],
     );
 
     my $has_unattached_actions;
     my $unattached_actions = Text::SimpleTable->new(
-        [ 35, 'Private' ], [ $column_width, 'Missing parent' ],
+        [ $col1_width, 'Private' ], [ $col2_width, 'Missing parent' ],
     );
 
     ENDPOINT: foreach my $endpoint (

Modified: Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Path.pm
===================================================================
--- Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Path.pm	2009-08-08 08:34:50 UTC (rev 11062)
+++ Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Path.pm	2009-08-08 21:54:04 UTC (rev 11063)
@@ -47,9 +47,11 @@
 
 sub list {
     my ( $self, $c ) = @_;
-    my $column_width = Catalyst::Utils::term_width() - 35 - 9;
+    my $avail_width = Catalyst::Utils::term_width() - 9;
+    my $col1_width = ($avail_width * .50) < 35 ? 35 : int($avail_width * .50);
+    my $col2_width = $avail_width - $col1_width;
     my $paths = Text::SimpleTable->new(
-       [ 35, 'Path' ], [ $column_width, 'Private' ]
+       [ $col1_width, 'Path' ], [ $col2_width, 'Private' ]
     );
     foreach my $path ( sort keys %{ $self->_paths } ) {
         my $display_path = $path eq '/' ? $path : "/$path";

Modified: Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Regex.pm
===================================================================
--- Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Regex.pm	2009-08-08 08:34:50 UTC (rev 11062)
+++ Catalyst-Runtime/5.80/trunk/lib/Catalyst/DispatchType/Regex.pm	2009-08-08 21:54:04 UTC (rev 11063)
@@ -47,8 +47,12 @@
 
 sub list {
     my ( $self, $c ) = @_;
-    my $column_width = Catalyst::Utils::term_width() - 35 - 9;
-    my $re = Text::SimpleTable->new( [ 35, 'Regex' ], [ $column_width, 'Private' ] );
+    my $avail_width = Catalyst::Utils::term_width() - 9;
+    my $col1_width = ($avail_width * .50) < 35 ? 35 : int($avail_width * .50);
+    my $col2_width = $avail_width - $col1_width;
+    my $re = Text::SimpleTable->new(
+        [ $col1_width, 'Regex' ], [ $col2_width, 'Private' ]
+    );
     for my $regex ( @{ $self->_compiled } ) {
         my $action = $regex->{action};
         $re->row( $regex->{path}, "/$action" );

Modified: Catalyst-Runtime/5.80/trunk/lib/Catalyst/Dispatcher.pm
===================================================================
--- Catalyst-Runtime/5.80/trunk/lib/Catalyst/Dispatcher.pm	2009-08-08 08:34:50 UTC (rev 11062)
+++ Catalyst-Runtime/5.80/trunk/lib/Catalyst/Dispatcher.pm	2009-08-08 21:54:04 UTC (rev 11063)
@@ -615,9 +615,15 @@
 sub _display_action_tables {
     my ($self, $c) = @_;
 
-    my $column_width = Catalyst::Utils::term_width() - 20 - 36 - 12;
+    my $avail_width = Catalyst::Utils::term_width() - 12;
+    my $col1_width = ($avail_width * .25) < 20 ? 20 : int($avail_width * .25);
+    my $col2_width = ($avail_width * .50) < 36 ? 36 : int($avail_width * .50);
+    my $col3_width =  $avail_width - $col1_width - $col2_width;
+    $c->log->debug("col1: $col1_width");
+    $c->log->debug("col2: $col2_width");
+    $c->log->debug("col3: $col3_width");
     my $privates = Text::SimpleTable->new(
-        [ 20, 'Private' ], [ 36, 'Class' ], [ $column_width, 'Method' ]
+        [ $col1_width, 'Private' ], [ $col2_width, 'Class' ], [ $col3_width, 'Method' ]
     );
 
     my $has_private = 0;




More information about the Catalyst-commits mailing list