Mercurial > octave
view build-aux/inplace_edit.pl @ 30997:5330efaf9476
Add optional second output to var and std (bug #62395)
* scripts/statistics/var.m: Add optional second output containing the mean
used to calculate the variance. Move weight isempty check ahead of vector
dimension isscalar check to avoid triggering incompatability error. Add BISTs
testing second output with different calling options. Add BIST testing empty
value passed as variance weight treated as zero. Add new output behavior to
docstring, and update function definitions to show the primary variable.
* scripts/statistics/std.m: Add passthrough for second output from var when
std called with two outputs. Add BISTs testing second output with different
calling options. Update docstring noting new output behavior.
* etc/NEWS.8.md: Note output changes to var and std under Matlab Compatability.
author | Nicholas R. Jankowski <jankowski.nicholas@gmail.com> |
---|---|
date | Thu, 12 May 2022 13:10:52 -0400 |
parents | 8b548f2f8086 |
children |
line wrap: on
line source
#!/usr/bin/perl -w ################################################################################ ## File: inplace_edit.pl ## Usage: perl inplace_edit.pl 'PERL_CODE' file1 [file2] [...] ## Purpose: Run snippet of PERL_CODE on each line in a file and replace ## existing line with the results of running the code. ## This replaces perl -i -pe 'PERL_CODE' file1 [file2] ... ## due to a problem in Perl 5.28 which restricts the number of files ################################################################################ ## Create Perl code from first argument (-e CODE) eval "sub per_line_code { $ARGV[0]; }"; shift @ARGV; ## Loop over each file foreach $fname (@ARGV) { rename ($fname, "$fname.$$") or die "Rename failed:$fname:$!"; open (my $FHI, "<", "$fname.$$") or die "Open failed:$fname.$$:$!"; open (my $FHO, ">", "$fname") or die "Open failed:$fname:$!"; ## Loop over each line while (<$FHI>) { per_line_code (); print $FHO $_; } close ($FHI); close ($FHO); unlink "$fname.$$" or die "Delete failed:$fname.$$:$!"; }