danke dir, Theo! Die Unit LConvEncoding hat auch eine Funktion GuessCoding, mit der man die Kodierung erraten kann. Dabei kommt tatsächlich raus, dass der eingefügte Text in der ISO_8859_1 vorliegt. Somit kann ich durch die Konvertierung wieder Umlaute darstellen, bei chinesischen Schriftzeichen (beispielhaft, andere Sprachen habe ich nicht ausprobiert) klappt es aber weiterhin nicht. Hier erkennt die Funktion ein UTF8, kann damit aber nichts anfangen.
Code: Alles auswählen
procedure TfrmDisplaySongContent.memoCodePaste(Sender: TObject;
var AText: String; var AMode: TSynSelectionMode; ALogStartPos: TPoint;
var AnAction: TSynCopyPasteAction);
var
GuessedCoding: String;
Encoded: Boolean;
begin
GuessedCoding := GuessEncoding(AText);
ShowMessage(GuessedCoding); // zu Debug-Zwecken
AText:=ConvertEncodingToUTF8(AText, GuessedCoding, Encoded);
end;