perltidy также, как и perlctitic использует use PPI; и задача, описанная выше вполне регулярная и решается этим модулем, там, конечно, документация к нему не айс, но врубиться можно нужно двигаться вот в каком направлении
https://github.com/mishin/presentation/blob/master/ppi_add_comment_to_previous_line.pl на вход дается строка из https://github.com/mishin/presentation/blob/master/test_perl_code.pl use 5.14.0; use PPI; #use Smart::Comments; my $file_name = shift or die "Usage: $0 file_4_transform\n"; my $doc = PPI::Document->new($file_name); my @comments = (); my @statament = (); $doc->find( sub { my ( $root, $node ) = @_; if ( $node->isa('PPI::Token::Comment')) { push @comments, $node; } if ( $node->isa('PPI::Statement')) { push @statament, $node; } } ); #$module->prune( 'PPI::Token::Comment' ); ## @comments ## @statament say join "",@comments; say join "",@statament; понятно, что сделано для 1-й строки, но правильно именно так, удачи нет времени допиливать -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
