Thread Korrektureingaben in der Konsole (7 answers)
Opened by der_thomas at 2015-02-20 20:50

Linuxer
 2015-02-21 10:59
#179811 #179811
User since
2006-01-27
3890 Artikel
HausmeisterIn

user image
Mein erster Gedanke war auch Perldoc:Term::ReadLine.
Ich habe es allerdings noch nicht hinbekommen, "Eingaben" vorzudefinieren; wie also hier mit "Tomas" vozubelegen, damit es der Benutzer korrigieren kann.

Auch mit Deinem Beispiel funktioniert es bei mir nicht.
edit: Aber das liegt hier vielleicht auch an einem System mit eingeschränktem Funktionsumfang.

edit2:
Die Funktionsweise hängt mit dem verwendeten Backend zusammen.
CPAN:Term::ReadLine::Stub - welches mir auf dem eingeschränkten System zur Verfügung steht - bringt diese Funktion nicht mit.

Auf einem anderen System funktioniert es - und es verwendet im Hintergrund CPAN:Term::ReadLine::Gnu.

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#! /usr/bin/env perl
use strict;
use warnings;

use 5.010.000;
use Term::ReadLine;

my $term = Term::ReadLine->new("xyz");

say "Using " . $term->ReadLine;

my $predefined = "Tomas";
my $answer = $term->readline( "Check that name: ", $predefined );
say "Your answer was: $answer";

__END__

Using Term::ReadLine::Gnu
Check that name: Tomas
# mit Pfeilen nach links wandern und 'h' einfuegen; <Enter>
Your answer was: Thomas


edit3: Mit CPAN:Term::ReadLine::Perl als Backend funktioniert es auch.
Last edited: 2015-02-21 11:33:25 +0100 (CET)
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Korrektureingaben in der Konsole