Shift + Return, um Zeilenumbrüche in Python einzufügen

8

Ich versuche, das Verhalten typischer IM-Clients zu ermitteln, die Return verwenden, um einen Text zu senden, und Shift + Return , um einen Zeilenumbruch einzufügen. Gibt es eine Möglichkeit, dies mit minimalem Aufwand in Python zu erreichen, indem z. readline und raw_input ?

    
Manuel Ebert 05.07.2012, 11:24
quelle

4 Antworten

2

Ok, ich habe gehört, dass es auch mit der readline funktioniert, in gewisser Weise.

Sie können import readline setzen und in der Konfiguration Ihren gewünschten Schlüssel (Umschalt + Enter) auf ein Makro setzen, das ein spezielles Zeichen am Ende der Zeile und Zeilenumbruch platziert. Dann können Sie raw_input in einer Schleife aufrufen.

So:

%Vor%     
Jiri 05.07.2012, 12:19
quelle
1

Ich bezweifle, dass Sie dies nur mit dem readline -Modul tun könnten, da es die einzelnen Tasten nicht erfasst und nur die Zeichenantworten von Ihrem Eingabetreiber verarbeitet.

Du könntest es mit PyHook tun und wenn der Schlüssel Shift ist Zusammen mit der Taste Enter gedrückt, um eine neue Zeile in den Stream readline einzufügen.

    
Christian Witts 05.07.2012 11:30
quelle
1

Ich denke, dass mit minimalem Aufwand Sie urwid Bibliothek für Python verwenden können. Leider entspricht dies nicht Ihrer Anforderung, readline / raw_input zu verwenden.

Update: Siehe auch diese Antwort für andere Lösung.

    
Jiri 05.07.2012 11:30
quelle
0
%Vor%     
Whitehead 02.04.2017 07:53
quelle

Tags und Links