2
1
Fork
You've already forked plio
1

Kann nicht mit Ctrl+C beendet werden #2

Closed
opened 2023年05月04日 23:51:26 +02:00 by clausecker · 8 comments

Wenn ich versuche, plio mit Ctrl+C zu beenden, sagt es stattdessen:

Warning: UNKNOWN command detected!

und tut einfach nichts.

Wenn ich versuche, plio mit Ctrl+C zu beenden, sagt es stattdessen: Warning: UNKNOWN command detected! und tut einfach nichts.

Ja, es ist Ctrl-q für Quit in Benutzung.

Ja, es ist Ctrl-q für Quit in Benutzung.

Ja so funktioniert UNIX halt nicht... Ctrl+S und Ctrl+Q sind eh tabu, da die vom Terminal-Treiber für Flow-Control verwendet werden. Unterstütze doch einfach die Standardkonventionen, statt komischen eigenen Kram zu basteln.

Ich reder hier übrigens nicht vom Fenster (das nicht erscheint), sondern von der Konsole, in der plio läuft.

Ich verstehe auch ganz ehrlich nicht, wie du das tust. Die Nachricht kommt auch, wenn man direkt ein Signal schickt, Du scheinst also mehr zu machen, als das Terminal in den Raw-Modus zu schicken, sondern fängst auch Signale ab oder so.

Ja so funktioniert UNIX halt nicht... Ctrl+S und Ctrl+Q sind eh tabu, da die vom Terminal-Treiber für Flow-Control verwendet werden. Unterstütze doch einfach die Standardkonventionen, statt komischen eigenen Kram zu basteln. Ich reder hier übrigens nicht vom Fenster (das nicht erscheint), sondern von der Konsole, in der plio läuft. Ich verstehe auch ganz ehrlich nicht, wie du das tust. Die Nachricht kommt auch, wenn man direkt ein Signal schickt, Du scheinst also mehr zu machen, als das Terminal in den Raw-Modus zu schicken, sondern fängst auch Signale ab oder so.

Also meinen Firefox beende ich mit Ctrl-Q.

Ich habe plio immer unter X / i3 getestet.
Bzw. ein einziges mal hatte ich - ganz in der Anfangszeit - auch die Konsole genommen, da konnte ich das auch nicht beenden. Ich hatte das nicht mehr getestet dann.

Ctrl-Q mit Mauszeiger über dem Anzeigefenster unter X/i3 und das Programm beendet sich.
Ich nehme an, Du willst es anders benutzen und die Kommandos in dem xterm-/ Konsole-Fenster eingeben?

Also meinen Firefox beende ich mit Ctrl-Q. Ich habe plio immer unter X / i3 getestet. Bzw. ein einziges mal hatte ich - ganz in der Anfangszeit - auch die Konsole genommen, da konnte ich das auch nicht beenden. Ich hatte das nicht mehr getestet dann. Ctrl-Q mit Mauszeiger über dem Anzeigefenster unter X/i3 und das Programm beendet sich. Ich nehme an, Du willst es anders benutzen und die Kommandos in dem xterm-/ Konsole-Fenster eingeben?

Okay, Eingabe in ein Fenster und in die Konsole sind zwei paar Schuhe.

Ich will lediglich in der Lage sein, wie üblich mit Ctrl-C in der Konsole das Programm zu beenden (wie jedes andere auch). Konfiguriert man das nicht um, erzeugt Ctrl-C in der Konsole ein Signal SIGINT, was standardmäßig das Programm beendet. Das scheinst Du aber irgendwie umgebogen zu haben.

Im Fenster kannst Du das machen, wie Du magst, da dort keine Terminalsemantiken herrschen.

Okay, Eingabe in ein Fenster und in die Konsole sind zwei paar Schuhe. Ich will lediglich in der Lage sein, wie üblich mit Ctrl-C in der Konsole das Programm zu beenden (wie jedes andere auch). Konfiguriert man das nicht um, erzeugt Ctrl-C in der Konsole ein Signal SIGINT, was standardmäßig das Programm beendet. Das scheinst Du aber irgendwie umgebogen zu haben. Im Fenster kannst Du das machen, wie Du magst, da dort keine Terminalsemantiken herrschen.

Ich wollte anfangs genauso wie Du auch immer Ctrl-C benutzen zum Abbrechen. Ich hatte das dann aus den Augen verloren und mich dann dran gewöhnt, über das X-Fenster mit Ctrl-q zu beenden. Da ich Fullscreen eh als den typischen Zustand ansehe und das Terminal dann nur noch für die Text-Ausgaben da ist.

Ich habe nichts umgebogen, sondern frage Ctrl-C nicht ab.
Gelesen wird das alles aber wohl eh nur über das X-Fenster, das heisst würde ich Ctrl-C abfragen, würde das eh nicht über das Terminal gehen.

Für das klassische Abbrechen mit Ctrl-C müsste ich in Erfahrung bringen, ob/wie das geht in SDL. So auf die Schnelle wird das nichts, aber klar, es wird über Terminal gestartet, dann ist Ctrl-C naheliegend für's beenden des Programms.

Ich wollte anfangs genauso wie Du auch immer Ctrl-C benutzen zum Abbrechen. Ich hatte das dann aus den Augen verloren und mich dann dran gewöhnt, über das X-Fenster mit Ctrl-q zu beenden. Da ich Fullscreen eh als den typischen Zustand ansehe und das Terminal dann nur noch für die Text-Ausgaben da ist. Ich habe nichts umgebogen, sondern frage Ctrl-C nicht ab. Gelesen wird das alles aber wohl eh nur über das X-Fenster, das heisst würde ich Ctrl-C abfragen, würde das eh nicht über das Terminal gehen. Für das klassische Abbrechen mit Ctrl-C müsste ich in Erfahrung bringen, ob/wie das geht in SDL. So auf die Schnelle wird das nichts, aber klar, es wird über Terminal gestartet, dann ist Ctrl-C naheliegend für's beenden des Programms.

Ich habe nichts umgebogen, sondern frage Ctrl-C nicht ab.
Gelesen wird das alles aber wohl eh nur über das X-Fenster, das heisst würde ich Ctrl-C abfragen, würde das eh nicht über das Terminal gehen.

Man muss Ctrl-C nicht abfragen. Das löst ein Signal aus, was standardmäßig sofort den Prozess beendet. Du behandelst irgendwie das Signal (vielleicht macht das auch SDL für dich) und beendest dann eben nicht den Prozess.

> Ich habe nichts umgebogen, sondern frage Ctrl-C nicht ab. Gelesen wird das alles aber wohl eh nur über das X-Fenster, das heisst würde ich Ctrl-C abfragen, würde das eh nicht über das Terminal gehen. Man muss Ctrl-C nicht abfragen. Das löst ein Signal aus, was standardmäßig sofort den Prozess beendet. Du behandelst irgendwie das Signal (vielleicht macht das auch SDL für dich) und beendest dann eben nicht den Prozess.

Ich habe an Signals nichts verbogen. SDL hat das disabled.
Muss ich mal schauen, daß ich das wieder aktiviere.

Ich habe an Signals nichts verbogen. SDL hat das disabled. Muss ich mal schauen, daß ich das wieder aktiviere.

OK, ich habe das Problem jetzt behoben. SDL hatte an den Signalhandlern Änderungen vorgenommen.

Signalhanlder von vor der SDL-Initialisierung werden nun nach der SDL-Initialisierung wieder aktiviert. Das hat schon ausgereicht.

Für eine sanfte Landung müsste ich dann später einen eigenen Handler einbauen, aber die Features, wo ich das brauche, existieren eh noch nicht.

Die Änderung ist ab Tag 2023_05_09.0 vorhanden.

OK, ich habe das Problem jetzt behoben. SDL hatte an den Signalhandlern Änderungen vorgenommen. Signalhanlder von vor der SDL-Initialisierung werden nun nach der SDL-Initialisierung wieder aktiviert. Das hat schon ausgereicht. Für eine sanfte Landung müsste ich dann später einen eigenen Handler einbauen, aber die Features, wo ich das brauche, existieren eh noch nicht. Die Änderung ist ab Tag 2023_05_09.0 vorhanden.
Sign in to join this conversation.
No Branch/Tag specified
main
2026_05_14.0
2026_01_10.0
sdl3-migration
sdl2
2025_12_29.0
2025_10_19.0
2025_10_09.0
2025_07_13.0
2025_02_01.0
2024_12_18.0
2024_11_01.0
2024_06_24.0
2024_03_12.0
2023_10_25.0
2023_09_26.0
2023_08_20.0
2023年08月20日.0
2023_07_31.0
2023_07_29.2
2023_07_29.1
2023_07_29.0
2023_07_25.0
2023_05_15.0
2023_05_14.0
2023_05_09.0
2023_05_08.0
2023_05_06.0
2023_05_04.1
2023_05_04.0
initrel
pre-initial-release
Labels
Clear labels
No items
No labels
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
klartext/plio#2
Reference in a new issue
klartext/plio
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?