Was wird mir etwas wie Ruby Readline mit einem Standardwert geben?

8

Wenn ich eine Eingabeaufforderung mit einem bereits eingegebenen Standardwert auf dem Terminal haben möchte, wie kann ich das tun?

Rubys Standard Readline.readline() lässt mich den Verlauf festlegen, aber nicht einen Standardwert (so weit ich das sagen kann) angeben

Ich möchte etwas wie das:

code:

%Vor%

Konsole:

%Vor%     
jes5199 22.02.2010, 20:55
quelle

5 Antworten

5

+1 zu highline

versuche mit etwas wie:

%Vor%     
Pablo Castellazzi 27.04.2011 22:32
quelle
4

Was Sie fragen, ist mit Readline möglich. Es gibt einen Rückruf, bei dem Sie die Kontrolle übernehmen können, nachdem die Eingabeaufforderung angezeigt wird, und etwas Text in den Lesepuffer einfügen.

Das hat für mich funktioniert:

%Vor%

Übrigens, ich habe ziemlich versucht HighLine zu benutzen, aber es schien eine Alternative zu mir zu sein. Einer der enttäuschenden Gründe war die Tatsache, dass HighLine#ask Cursor-Bewegungstasten als reguläre Eingabe liest. Nach dieser Entdeckung habe ich aufgehört, in diese Richtung zu schauen.

    
Alex Fortuna 20.04.2015 08:49
quelle
3

Klingt wie ein Job für ncurses. Scheint so, als wäre rbcurse ( Ссылка ) die am besten gepflegte API im Moment.

    
Farrel 22.02.2010 23:55
quelle
2

Ich kämpfe mit der gleichen Sache.

Die Art, wie ich es gerade mache, ist:

%Vor%

Ja, es ist albern, aber es war der einzige Weg, den ich gefunden habe.

Hat jemand eine Lösung gefunden?

    
raf 03.11.2010 03:04
quelle
1

Highline tut nicht genau das, was du beschreibst, aber vielleicht ist es nahe genug.

    
Ken Liu 23.02.2010 00:09
quelle