Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
iScript •---->


Anmeldedatum: 29.03.2001 Beiträge: 1116
|
Verfasst am: 30.05.2006 - 08:53 Titel: ASS: wie kann ich unicode vermeiden |
|
|
hallöle zusammen
habe mal wieder ein AppleScriptStudio-Problem!
ich lese in meinem script dateinamen ein, und muss diese kürzen.
bei der wandlung in character sowieso bis sowieso werden umlaute in xcode aber scheinbar zu unicode! kann man das irgendwie vermeiden?
lese ich beispielsweise einen dateinamen mit umlauten aus, und lasse mir diesen in einem textfeld anzeigen, ist noch alles i.o.
sage ich aber character 1 thru end of dateiname, werden die umlaute zu unicode.
beispiel:
using terms from application "Xcode"
on opened theObject
set x to "unmöglich"
set y to characters 3 thru -1 of x
set contents of text field 1 of window 1 to x
set contents of text field 2 of window 1 to y
-- text field 2 liefert (m, "\U00f6", g, l, i, c, h)
end opened
end using terms from
da ich aber, wie gesagt, die dateinamen nur einkürzen will, kann ich den sch.... unicode nicht gebrauchen, wenn ich beispielsweise die letzten 5 buchstaben weglassen will.
die dateien lassen sich ja leider nicht in unicode umbenennen.
kann man das irgendwie umgehen?
gibt's vielleicht so etwas wie as ascii text oder so?
HIIIIILLLFFFEEE!
(as unter xcode scheint doch seine ganz eigene dialektik zu haben). _________________ - anholn deit kriegen - |
|
Nach oben |
|
 |
Skeeve •---->


Anmeldedatum: 20.04.2006 Beiträge: 1068
|
|
Nach oben |
|
 |
iScript •---->


Anmeldedatum: 29.03.2001 Beiträge: 1116
|
Verfasst am: 30.05.2006 - 10:30 Titel: |
|
|
hi skeeve.
ja, normales as unter osx ist noch alles okay.
selbst wenn ich den handler in xcode teste, funktionierts auch mit umlauten.
aber wenn ich die dateinamen übergebe, gehts nicht mehr.
ich bin mittlerweile ratlos:
using terms from application "Xcode"
on opened theObject
set x to "unmöglich"
set y to characters 3 thru -1 of x
set z to characters 3 thru -1 of x as text
set zz to y as text
set contents of text field 1 of window 1 to x
-- ergebnis: "unmöglich"
set contents of text field 2 of window 1 to y
-- ergebnis: (m, "\U00f6", g, l, i, c, h)
set contents of text field 3 of window 1 to z
-- ergebnis: "möglich"
set contents of text field 4 of window 1 to zz
-- ergebnis: "möglich"
(*z und zz wären okay, gelingt aber nicht bei dateinamen!?*)
----------------------------------------
-- mein handler zum einkürzen d. dateinamen:
-- so klappt er, aber nicht mit übergebenen dateinamen
display dialog eindampfen("unununumöglich")
-- ergebnis "möglich" (ist also eigentlich okay!!!!!)
display dialog eindampfen(dateiname)
-- ergebnis "m" (ab umlaut wird abgebrochen)
end opened
on eindampfen(dateiname) -- dateiname ab 8.buchstaben
set teil to ""
if length of dateiname > 7 then set teil to characters 8 thru -1 of dateiname as text
-- display dialog teil
return teil
end eindampfen
end using terms from _________________ - anholn deit kriegen - |
|
Nach oben |
|
 |
iScript •---->


Anmeldedatum: 29.03.2001 Beiträge: 1116
|
Verfasst am: 30.05.2006 - 10:51 Titel: |
|
|
scheint kein reines xcode-problem zu sein.
mit scripteditor 2.1.1 unter osx 10.4.6 habe ich das gleich problem.
hier mal eine demo/beweis des problems:
tell application "Finder"
-- datei mit namen "unmöglich.png" auswählen
set dateiname to name of file (choose file)
display dialog dateiname
-- ergebnis "unmöglich.png"
display dialog extrakt(dateiname) of me
-- ergebnis "mo" FALSCH
display dialog extrakt("unmöglich.png") of me
-- ergebnis "möglich.png" RICHTIG
display dialog (characters 3 thru -1 of dateiname as text)
-- ergebnis "mo" FALSCH
end tell
on extrakt(input) -- Text ab 3. Buchst.
set teil to ""
if length of input > 2 then set teil to characters 3 thru -1 of input as text
return teil
end extrakt
_________________ - anholn deit kriegen - |
|
Nach oben |
|
 |
iScript •---->


Anmeldedatum: 29.03.2001 Beiträge: 1116
|
Verfasst am: 30.05.2006 - 11:28 Titel: |
|
|
ach du schande. habe die lösung gefunden. und wo natürlich? hier im forum.
also diese änderung der zeile löst das problem:
set dateiname to name of file (choose file) as string
man sollte sich unter x eigentlich immer angewöhnen, den gewünschten variablen-typ gleich mit anzugeben. dann kann man sich ein paar std. debugging schenken. _________________ - anholn deit kriegen - |
|
Nach oben |
|
 |
till •--->


Anmeldedatum: 21.04.2005 Beiträge: 187 Wohnort: q-town (R-P)
|
Verfasst am: 30.05.2006 - 14:50 Titel: |
|
|
du sagst es! _________________ ein berühmter Philosoph (<-Ich) sagte einmal:
" es ist nicht das Problem was uns Kopfzerbrechen macht,
es ist der Kopf selbst, der sich erdrückt" |
|
Nach oben |
|
 |
|