perl ppi-editor.pl cache file last_hex_id_file.sto not found. # it search for previous runs in the hardcoded filename last_hex_id_file.sto Insert the full path of a new file to edit and press enter (or CTRL-C to terminate) FILE PATH:./Exp.pm # <---- loading a file loading from cache ok 'last_hex_id_file.sto' succesfully read: using 5a459de7e28b9b423d7c8d5ba988fbdb Which PPI class do you want to edit? PPI CLASS:PPI::Statement::Sub # <---- selecting a PPI class to work on Each element of the type PPI::Statement::Sub will be proposed for edit (the content). insert your new input terminating it with CTRL-Z on a empty line. use a bare ENTER to skip the current element STATEMENT: sub new{ my $class = shift; my $validated = _validate( $_[0] ); return bless { validated => $validated, stored => [], },$class; } CONTENT: sub new{ my $class = shift; my $validated = _validate( $_[0] ); return bless { validated => $validated, stored => [], },$class; } EDIT: .... # <---- and so on for every sub statement storing cache hex_id: 5a459de7e28b9b423d7c8d5ba988fbdb in last_hex_id_file.sto Enter a filename if you want to save the current version (or ENTER to skip) OUTPUT FILE: #### perl ppi-editor.pl 'last_hex_id_file.sto' succesfully read: using 5a459de7e28b9b423d7c8d5ba988fbdb # it wants to reload previous edited file Which PPI class do you want to edit? # if it finds last_hex_id_file.sto PPI CLASS:PPI::Token::Quote # <-- search for Quote Each element of the type PPI::Token::Quote will be proposed for edit (the content). insert your new input terminating it with CTRL-Z on a empty line. use a bare ENTER to skip the current element STATEMENT: croak "No arg!" unless $_[0]; # statement including the PPI::Element CONTENT: "No arg!" # content of the PPI::Element itself EDIT:"No arguments!" # a minimal change EDIT:^Z storing cache hex_id: 057d482fed857c338ec5ff25f2312900 in last_hex_id_file.sto Enter a filename if you want to save the current version (or ENTER to skip) OUTPUT FILE:./Exp-bis.pm # save to a new file to play nicely.. C>diff Exp.pm Exp-bis.pm # check it out! 17c17 < croak "No arg!" unless $_[0]; --- > croak "No arguments!" unless $_[0];