X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=make%2Fconsole.pm;h=4e7b32d4963b01185923830b612d330d3933b0f9;hb=32b789eec181ccbe720fa75abed8b2f3fddaff47;hp=9be5ef47c3ad40331e6c87776dce16bd55eeb845;hpb=b0676698152d88c76020b0fa51942d7297f152f3;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/make/console.pm b/make/console.pm index 9be5ef47c..4e7b32d49 100644 --- a/make/console.pm +++ b/make/console.pm @@ -20,9 +20,10 @@ package make::console; BEGIN { - require 5.8.0; + require 5.10.0; } +use feature ':5.10'; use strict; use warnings FATAL => qw(all); @@ -55,7 +56,7 @@ sub __console_format($$) { sub print_format($;$) { my $message = shift; - my $stream = shift || *STDOUT; + my $stream = shift // *STDOUT; while ($message =~ /(<\|(\S+)\s(.+?)\|>)/) { my $formatted = __console_format $2, $3; $message =~ s/\Q$1\E/$formatted/; @@ -80,13 +81,13 @@ sub prompt_bool($$$) { return $answer =~ /y/i; } -sub prompt_dir($$$) { - my ($interactive, $question, $default) = @_; +sub prompt_dir($$$;$) { + my ($interactive, $question, $default, $create_now) = @_; my ($answer, $create); do { $answer = rel2abs(prompt_string($interactive, $question, $default)); $create = prompt_bool($interactive && !-d $answer, "$answer does not exist. Create it?", 'y'); - if ($create) { + if ($create && $create_now) { my $mkpath = eval { mkpath($answer, 0, 0750); return 1; @@ -106,7 +107,7 @@ sub prompt_string($$$) { print_format "$question\n"; print_format "[<|GREEN $default|>] => "; chomp(my $answer = ); - print "\n"; + say ''; return $answer ? $answer : $default; }