Linux Mint
Laptop Acer Aspire V3-772G
Hallo,
via Terminal lässt sich bei mir ein Piepton erzeugen:
Code: Alles auswählen
echo -e "\a"
Nun würde ich das gerne aus meinen Lazarus-Progs heraus ermöglichen:
SysUtils.beep ist leider wirkungslos (warum eigentlich?)
[geht aber unter Lazarus auf Win11 auf diesem Gerät,
dann erklingt ein Windows-Systemklang]
Dann habe ich es über ein Script probiert:
Script piep.sh:
Code: Alles auswählen
#!/bin/bash
echo -e "Piep\\aTon"
exit 0
Direkt am Terminal funktioniert dieses Script wie erwartet.
(Ausgabe "PiepTon" und der Ton)
Geht aber nicht, wenn ich das Script aus Lazarus heraus aufrufe:
Code: Alles auswählen
...uses Process...
var s : string;
...
if RunCommand('/home/.../piep.sh', [], s)
then showmessage (s)
else showmessage ('Fehler');
Tausche ich im Script die Escape-Folge \a gegen \b (Backspace),
Code: Alles auswählen
echo -e "Piep\\bTon"
"PieTon" (ohne kleines p),
unter Lazarus erscheint jedoch praktisch genau das gleiche Ergebniss wie oben
Das Problem ist dann wohl allgemein, dass Escape-Folgen via RunCommand
nicht so behandelt werden wie im Terminal?