Loading bin/hafas-m +34 −3 Original line number Diff line number Diff line Loading @@ -496,8 +496,28 @@ elsif ( $opt{journey} ) { $dir_line = ' → ' . $stop->direction; } my $tz_line = q{}; if ( $stop->tz_offset and ( $stop->arr or $stop->dep ) ) { $tz_line = ( $prod_line or $dir_line ) ? q{ · } : q{ }; $tz_line .= 'local '; if ( $stop->arr ) { $tz_line .= $stop->arr->clone->add( minutes => $stop->tz_offset ) ->strftime('%H:%M'); } if ( $stop->arr and $stop->dep ) { $tz_line .= ' → '; } if ( $stop->dep ) { $tz_line .= $stop->dep->clone->add( minutes => $stop->tz_offset ) ->strftime('%H:%M'); } $tz_line .= q{ }; } printf( "%s%5s %s %5s %-${delay_fmt}s%${occupancy_len}s%-${occupancy_len}s %s%s%s%s%s%s\n", "%s%5s %s %5s %-${delay_fmt}s%${occupancy_len}s%-${occupancy_len}s %s%s%s%s%s%s%s\n", $stop == $mark_stop ? $output_bold : q{}, $stop->arr_cancelled ? '--:--' : ( $stop->arr ? $stop->arr->strftime('%H:%M') : q{} ), Loading @@ -511,11 +531,12 @@ elsif ( $opt{journey} ) { : q{}, $stop->loc->name, $stop == $mark_stop ? $output_reset : q{}, ( $prod_line or $dir_line or $msg_line ) ( $tz_line or $prod_line or $dir_line or $msg_line ) ? spacer( $stop_len + 1 - length( $stop->loc->name ) ) : q{}, $prod_line, $dir_line, $tz_line, $msg_line, ); } Loading Loading @@ -555,6 +576,7 @@ if ($via) { my $delay_len = 0; my $occupancy_len = 0; my $offset_len = 0; for my $d (@results) { if ( $d->delay ) { $delay_len = max( $delay_len, length( $d->delay ) + 1 ); Loading @@ -562,6 +584,9 @@ for my $d (@results) { if ( $d->load and ( $d->load->{FIRST} or $d->load->{SECOND} ) ) { $occupancy_len = 2; } if ( $d->tz_offset ) { $offset_len = 1; } } my $message_id = 1; Loading Loading @@ -590,7 +615,8 @@ for my $d (@results) { } my $entry = [ $d->is_cancelled ? '--:--' : $d->datetime->strftime('%H:%M'), ( $d->is_cancelled ? '--:--' : $d->datetime->strftime('%H:%M') ) . ( $d->tz_offset ? q{*} : ( q{ } x $offset_len ) ), $d->is_cancelled ? q{} : format_delay( $d->delay, $delay_len ), Loading Loading @@ -619,6 +645,11 @@ for my $d (@results) { display_result(@output); if ($offset_len) { printf( "\n* reported for %s; local time differs\n", $status->get_active_service->{time_zone} // 'Europe/Berlin' ); } for my $m ( $status->messages ) { if ( $m->ref_count > 0 and $m->{show} ) { if ( $m->short ) { Loading Loading
bin/hafas-m +34 −3 Original line number Diff line number Diff line Loading @@ -496,8 +496,28 @@ elsif ( $opt{journey} ) { $dir_line = ' → ' . $stop->direction; } my $tz_line = q{}; if ( $stop->tz_offset and ( $stop->arr or $stop->dep ) ) { $tz_line = ( $prod_line or $dir_line ) ? q{ · } : q{ }; $tz_line .= 'local '; if ( $stop->arr ) { $tz_line .= $stop->arr->clone->add( minutes => $stop->tz_offset ) ->strftime('%H:%M'); } if ( $stop->arr and $stop->dep ) { $tz_line .= ' → '; } if ( $stop->dep ) { $tz_line .= $stop->dep->clone->add( minutes => $stop->tz_offset ) ->strftime('%H:%M'); } $tz_line .= q{ }; } printf( "%s%5s %s %5s %-${delay_fmt}s%${occupancy_len}s%-${occupancy_len}s %s%s%s%s%s%s\n", "%s%5s %s %5s %-${delay_fmt}s%${occupancy_len}s%-${occupancy_len}s %s%s%s%s%s%s%s\n", $stop == $mark_stop ? $output_bold : q{}, $stop->arr_cancelled ? '--:--' : ( $stop->arr ? $stop->arr->strftime('%H:%M') : q{} ), Loading @@ -511,11 +531,12 @@ elsif ( $opt{journey} ) { : q{}, $stop->loc->name, $stop == $mark_stop ? $output_reset : q{}, ( $prod_line or $dir_line or $msg_line ) ( $tz_line or $prod_line or $dir_line or $msg_line ) ? spacer( $stop_len + 1 - length( $stop->loc->name ) ) : q{}, $prod_line, $dir_line, $tz_line, $msg_line, ); } Loading Loading @@ -555,6 +576,7 @@ if ($via) { my $delay_len = 0; my $occupancy_len = 0; my $offset_len = 0; for my $d (@results) { if ( $d->delay ) { $delay_len = max( $delay_len, length( $d->delay ) + 1 ); Loading @@ -562,6 +584,9 @@ for my $d (@results) { if ( $d->load and ( $d->load->{FIRST} or $d->load->{SECOND} ) ) { $occupancy_len = 2; } if ( $d->tz_offset ) { $offset_len = 1; } } my $message_id = 1; Loading Loading @@ -590,7 +615,8 @@ for my $d (@results) { } my $entry = [ $d->is_cancelled ? '--:--' : $d->datetime->strftime('%H:%M'), ( $d->is_cancelled ? '--:--' : $d->datetime->strftime('%H:%M') ) . ( $d->tz_offset ? q{*} : ( q{ } x $offset_len ) ), $d->is_cancelled ? q{} : format_delay( $d->delay, $delay_len ), Loading Loading @@ -619,6 +645,11 @@ for my $d (@results) { display_result(@output); if ($offset_len) { printf( "\n* reported for %s; local time differs\n", $status->get_active_service->{time_zone} // 'Europe/Berlin' ); } for my $m ( $status->messages ) { if ( $m->ref_count > 0 and $m->{show} ) { if ( $m->short ) { Loading