wiki:PadrePluginFix

Version 23 (modified by azawawi, 2 years ago) (diff)

--

Padre::Plugin::Fix

Usage


Uses PPI to identify and transform stuff from form A to B.

sub a {
}

die "hello world";

sub b {
}
  • From ticket:1200, Replace one or all occurrences of indirect notations such as this:
new Something("bla");

should become

Something->new("bla");
  • Over selection text range, provide the ability to quote it and choose qq{} or q{}
  • Negate if block form with unless and vice versa
if(defined $fh) {
  say "File is open";
} else {
  say "File is not open!";
}

should become

unless(defined $fh) {
  say "File is not open!";
} else {
  say "File is open";
}
  • Transform if single statement into postfix form and vice versa:
if(defined $fh) {
  print "File is open";
} 

should become

print "File is open" if defined $fh;
  • Add forgotten else clause to if block
  • Transform qq{string} where string does not contain escape sequences into q{string} or 'string'
  • if use v5.10; or greater is used, then print "something\n" can be transformed into say "something"
  • Transform my $param1 = shift into my ($param1) = @_; and vice versa
  • if-elsif-else transformation into given-when. Please see Switch statements
if($type eq 'a') {
} elsif($type eq 'b') {
} else {
}

should become

given($type) {
when ('a') { }
when ('b') { }
default    { }
}
  • Add Padre::Document::Perl::Beginner checks and convert them to PPI

No image "PadrePluginFix.png" attached to PadrePluginFix

TODO

  • Fix ticket:829
  • Fix ticket:992
  • Fix ticket:1200
  • Fix ticket:502
  • Move beginner checks from Padre here:
    Padre::Document::Perl::Beginner
    
  • Move ::QuickFix from Padre here:
    Padre::QuickFix
    Padre::Document::Perl::QuickFix
    Padre::Document::Perl::QuickFix::StrictWarnings
    Padre::Document::Perl::QuickFix::IncludeModule
    

Resources

__END__