Umlaute in Playlisten
- osterkamp24
- Beiträge: 36
- Registriert: 12. Januar 2012 20:10
- SqueezeBox Server läuft auf: Acer Homeserver H340
Re: Umlaute in Playlisten
Danke für die schnelle Rückmeldung - ich bin gleich noch unterwegs und melde mich morgen Abend mit den gewünschten Infos zurück ...
- osterkamp24
- Beiträge: 36
- Registriert: 12. Januar 2012 20:10
- SqueezeBox Server läuft auf: Acer Homeserver H340
Re: Umlaute in Playlisten
Kurze Zwischenmeldung: Irgendetwas funktioniert noch nicht, obwohl die Playlisten "eigentlich" jetzt exakt richtig aussehen. Ich muss da noch ausführlicher testen ...
Da ich bis Anfang April im Urlaub bin melde ich mich danach wieder und berichte über den aktuellen Stand.
Da ich bis Anfang April im Urlaub bin melde ich mich danach wieder und berichte über den aktuellen Stand.
-
- Beiträge: 2
- Registriert: 7. Oktober 2015 17:14
- SqueezeBox: SqueezePlay
- SqueezeBox Server läuft auf: Raspberry
Re: Umlaute in Playlisten
Hallo, leider hat sich osterkamp24 nicht mehr gemeldet. Ob er eine Lösung hat?
Ich bin es jedenfalls Leid mit Umlauten und Sonderzeichen und habe meine kompletten Titel und Playlisten bereinigt. Alles was unter ASCII 32 und größer 127 ist wird in passende ASCII Zeichen umgewandelt. Mit denselben Einstellungen habe ich dann auch noch die Playlisten durchlaufen lassen. Automatisch mit Autoit. Nun läuft es einwandfrei.
Mike
$dirs = @scriptdir
$dirs = StringReplace($dirs, "\Debug","")
HotKeySet("{ESC}", "_DoNothing")
$afile = ""
$alle_verz = ""
$unterverzeichnis = ""
$alle_verz = _FileListToArray($dirs, "*",2)
if not @error then
For $v = 1 to $alle_verz[0]
$verz_aktuell = $dirs & "\" & $alle_verz[$v]
$u_verz = ""
$u_verz = _FileListToArray($verz_aktuell, "*.mp3",1)
if not @error then
For $v_u = 1 to $u_verz[0]
;if $v_u = 1 = 1 then msgbox(4096,"name ", $verz_aktuell)
;msgbox(4096,"name ", $u_verz[$v_u])
$geaendert = false
$name = $u_verz[$v_u]
$noasc = false
For $x = 1 to StringLen($name)
$y = Stringmid($name,$x,1)
$yy = Asc($y)
if asc($y) < 32 or asc($y) > 127 then
$noasc = true
$x = StringLen($name)
endif
next
if $noasc then
;msgbox(4096,$v_u, $y & " " & $yy & " " & $name)
$namealt = $name
$name = _umlaute($name)
if $name <> $namealt then $geaendert = true
vorspann_pruefen ()
$name = $dirs & "\" & $unterverzeichnis & "\" & $name
;msgbox(4096,"name ", $dirs & "\" & $alle_verz[$v] & "\" & $namealt & @CRLF & " nach " & @CRLF & $name)
FileMove($dirs & "\" & $alle_verz[$v] & "\" & $namealt,$name,9)
ToolTip($v_u & " " & @CRLF & $dirs & "\" & $alle_verz[$v] & "\" & $namealt & @CRLF & $name ,100,100)
endif
next
endif
next
EndIf
MsgBox(4096,"Ergebnis","Alle Dateien Umlaute geaendert",5)
exit
func _umlaute ($zeile)
$zeile = stringreplace($zeile,Chr(220),"Ue ",0,1)
$zeile = stringreplace($zeile,Chr(214),"Oe ",0,1)
$zeile = stringreplace($zeile,Chr(196),"Ae",0,1)
$zeile = stringreplace($zeile,Chr(252),"ue",0,1)
$zeile = stringreplace($zeile,Chr(246),"oe",0,1)
$zeile = stringreplace($zeile,Chr(228),"ae",0,1)
$zeile = stringreplace($zeile,Chr(223),"ss",0,1)
$zeile = stringreplace($zeile,Chr(243),"o",0,1)
$zeile = stringreplace($zeile,"[","(",0,1)
$zeile = stringreplace($zeile,"]",")",0,1)
$zeile = stringreplace($zeile,"..",".",0,1)
$zeile = stringreplace($zeile," "," ",0,1)
$zeile = stringreplace($zeile," "," ",0,1)
$zeile = stringreplace($zeile," .mp3",".mp3",0,1)
$zeile = stringreplace($zeile,Chr(223),"e",0,1)
$zeile = stringreplace($zeile,Chr(234),"e",0,1)
$zeile = stringreplace($zeile,Chr(224),"a",0,1)
$zeile = stringreplace($zeile,Chr(233),"e",0,1)
$zeile = stringreplace($zeile,Chr(179),"'",0,1)
$zeile = stringreplace($zeile,Chr(243),"0",0,1)
$zeile = stringreplace($zeile,Chr(225),"a",0,1)
$zeile = stringreplace($zeile,Chr(192),"A",0,1)
$zeile = stringreplace($zeile,Chr(180),"'",0,1)
$zeile = stringreplace($zeile,Chr(250),"u",0,1)
$zeile = stringreplace($zeile,Chr(249),"u",0,1)
$zeile = stringreplace($zeile,Chr(176),"'",0,1)
$zeile = stringreplace($zeile,Chr(241),"n",0,1)
$zeile = stringreplace($zeile,Chr(232),"e",0,1)
$zeile = stringreplace($zeile,Chr(231),"c",0,1)
$zeile = stringreplace($zeile,Chr(242),"o",0,1)
$zeile = stringreplace($zeile,Chr(193),"A",0,1)
$zeile = stringreplace($zeile,Chr(146),"'",0,1)
$zeile = stringreplace($zeile,Chr(200),"E",0,1)
$zeile = stringreplace($zeile,Chr(202),"E",0,1)
$zeile = stringreplace($zeile,Chr(231),"c",0,1)
$zeile = stringreplace($zeile,Chr(242),"o",0,1)
$zeile = stringreplace($zeile,Chr(227),"a",0,1)
$zeile = stringreplace($zeile,Chr(239),"i",0,1)
return $zeile
endfunc
Func _DoNothing()
msgbox(4096,"name ", $u_verz[$v_u])
EndFunc ;==>_DoNothing
func vorspann_pruefen ()
$unterverzeichnis = StringLeft($name, 1)
if Asc($unterverzeichnis) > 122 then $unterverzeichnis = "# Num"
$vorspann = stringLeft($name,4)
if $vorspann = "The " then $unterverzeichnis = stringMid($name, 5,1)
if $vorspann = "Die " then $unterverzeichnis = stringMid($name, 5,1)
if $vorspann = "Der " then $unterverzeichnis = stringMid($name, 5,1)
if $vorspann = "Das " then $unterverzeichnis = stringMid($name, 5,1)
if not StringIsAlpha($unterverzeichnis) Then $unterverzeichnis = "# Num"
endfunc
Ich bin es jedenfalls Leid mit Umlauten und Sonderzeichen und habe meine kompletten Titel und Playlisten bereinigt. Alles was unter ASCII 32 und größer 127 ist wird in passende ASCII Zeichen umgewandelt. Mit denselben Einstellungen habe ich dann auch noch die Playlisten durchlaufen lassen. Automatisch mit Autoit. Nun läuft es einwandfrei.
Mike
$dirs = @scriptdir
$dirs = StringReplace($dirs, "\Debug","")
HotKeySet("{ESC}", "_DoNothing")
$afile = ""
$alle_verz = ""
$unterverzeichnis = ""
$alle_verz = _FileListToArray($dirs, "*",2)
if not @error then
For $v = 1 to $alle_verz[0]
$verz_aktuell = $dirs & "\" & $alle_verz[$v]
$u_verz = ""
$u_verz = _FileListToArray($verz_aktuell, "*.mp3",1)
if not @error then
For $v_u = 1 to $u_verz[0]
;if $v_u = 1 = 1 then msgbox(4096,"name ", $verz_aktuell)
;msgbox(4096,"name ", $u_verz[$v_u])
$geaendert = false
$name = $u_verz[$v_u]
$noasc = false
For $x = 1 to StringLen($name)
$y = Stringmid($name,$x,1)
$yy = Asc($y)
if asc($y) < 32 or asc($y) > 127 then
$noasc = true
$x = StringLen($name)
endif
next
if $noasc then
;msgbox(4096,$v_u, $y & " " & $yy & " " & $name)
$namealt = $name
$name = _umlaute($name)
if $name <> $namealt then $geaendert = true
vorspann_pruefen ()
$name = $dirs & "\" & $unterverzeichnis & "\" & $name
;msgbox(4096,"name ", $dirs & "\" & $alle_verz[$v] & "\" & $namealt & @CRLF & " nach " & @CRLF & $name)
FileMove($dirs & "\" & $alle_verz[$v] & "\" & $namealt,$name,9)
ToolTip($v_u & " " & @CRLF & $dirs & "\" & $alle_verz[$v] & "\" & $namealt & @CRLF & $name ,100,100)
endif
next
endif
next
EndIf
MsgBox(4096,"Ergebnis","Alle Dateien Umlaute geaendert",5)
exit
func _umlaute ($zeile)
$zeile = stringreplace($zeile,Chr(220),"Ue ",0,1)
$zeile = stringreplace($zeile,Chr(214),"Oe ",0,1)
$zeile = stringreplace($zeile,Chr(196),"Ae",0,1)
$zeile = stringreplace($zeile,Chr(252),"ue",0,1)
$zeile = stringreplace($zeile,Chr(246),"oe",0,1)
$zeile = stringreplace($zeile,Chr(228),"ae",0,1)
$zeile = stringreplace($zeile,Chr(223),"ss",0,1)
$zeile = stringreplace($zeile,Chr(243),"o",0,1)
$zeile = stringreplace($zeile,"[","(",0,1)
$zeile = stringreplace($zeile,"]",")",0,1)
$zeile = stringreplace($zeile,"..",".",0,1)
$zeile = stringreplace($zeile," "," ",0,1)
$zeile = stringreplace($zeile," "," ",0,1)
$zeile = stringreplace($zeile," .mp3",".mp3",0,1)
$zeile = stringreplace($zeile,Chr(223),"e",0,1)
$zeile = stringreplace($zeile,Chr(234),"e",0,1)
$zeile = stringreplace($zeile,Chr(224),"a",0,1)
$zeile = stringreplace($zeile,Chr(233),"e",0,1)
$zeile = stringreplace($zeile,Chr(179),"'",0,1)
$zeile = stringreplace($zeile,Chr(243),"0",0,1)
$zeile = stringreplace($zeile,Chr(225),"a",0,1)
$zeile = stringreplace($zeile,Chr(192),"A",0,1)
$zeile = stringreplace($zeile,Chr(180),"'",0,1)
$zeile = stringreplace($zeile,Chr(250),"u",0,1)
$zeile = stringreplace($zeile,Chr(249),"u",0,1)
$zeile = stringreplace($zeile,Chr(176),"'",0,1)
$zeile = stringreplace($zeile,Chr(241),"n",0,1)
$zeile = stringreplace($zeile,Chr(232),"e",0,1)
$zeile = stringreplace($zeile,Chr(231),"c",0,1)
$zeile = stringreplace($zeile,Chr(242),"o",0,1)
$zeile = stringreplace($zeile,Chr(193),"A",0,1)
$zeile = stringreplace($zeile,Chr(146),"'",0,1)
$zeile = stringreplace($zeile,Chr(200),"E",0,1)
$zeile = stringreplace($zeile,Chr(202),"E",0,1)
$zeile = stringreplace($zeile,Chr(231),"c",0,1)
$zeile = stringreplace($zeile,Chr(242),"o",0,1)
$zeile = stringreplace($zeile,Chr(227),"a",0,1)
$zeile = stringreplace($zeile,Chr(239),"i",0,1)
return $zeile
endfunc
Func _DoNothing()
msgbox(4096,"name ", $u_verz[$v_u])
EndFunc ;==>_DoNothing
func vorspann_pruefen ()
$unterverzeichnis = StringLeft($name, 1)
if Asc($unterverzeichnis) > 122 then $unterverzeichnis = "# Num"
$vorspann = stringLeft($name,4)
if $vorspann = "The " then $unterverzeichnis = stringMid($name, 5,1)
if $vorspann = "Die " then $unterverzeichnis = stringMid($name, 5,1)
if $vorspann = "Der " then $unterverzeichnis = stringMid($name, 5,1)
if $vorspann = "Das " then $unterverzeichnis = stringMid($name, 5,1)
if not StringIsAlpha($unterverzeichnis) Then $unterverzeichnis = "# Num"
endfunc