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

Anmeldedatum: 29.11.2000 Beiträge: 7
|
Verfasst am: 29.11.2000 - 23:46 Titel: Umlaute ersetzen |
|
|
Hi!
Wie kann ich mit AppleScript die Umlaute in einem Dokument erstetzen oder generell Buchstaben? Hintergrund ist folgender: Ich hab ne eigene website und programmier die von Hand mit PageSpinner. Da der Browser Umlaute nicht erkennt, muss man sie anders eingeben, ein "ü" z.B. ist in html "ü".
Nun möchte ich ein Skript schreiben, das die Umlaute automatisch in die html-Zeichen umwandelt. Ist dies überhaupt möglich? Meine Versuche sind bisher kläglich gescheitert...
mfg CABAL |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 29.11.2000 - 23:48 Titel: Umlaute ersetzen |
|
|
Vom Prinzip her denke ich mir, daß es mit entsprechenden Suchschleifen gehen könnte. Allerdings befürchte ich, daß dies ziemlich langsam geht.
Ich hab' das schon in FileMaker gemacht. Für jeden Umlaut ein extra Suchen/Ersetzen-Skript und dann ein Skript, das alle Einzelskripte nacheinander aufruft.
Aber für AppleScript fehlt mir auch noch die Lösung.
Also wenn jemand eine praktikable Lösung hat, mich würde das auch brennend interessieren. _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
maccer •->


Anmeldedatum: 29.11.2000 Beiträge: 10
|
Verfasst am: 29.11.2000 - 23:50 Titel: Umlaute ersetzen |
|
|
Da sollte man doch schon ein wenig Geld anpacken und einen AppleScript-fähigen Texteditor einsetzen
- mit dem ist es dann ein Kinderspiel.
Zur Not geht Tex-Edit Plus (Shareware).
Besser ist jedoch BBEdit (nicht die Light-Version - die kann kein AS). Die Vollversion kommt mit fertigen AppleScripts zur Umwandlung aller !! Sonderzeichen (der komplette ASCII highbit-Satz) in html. |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 29.11.2000 - 23:52 Titel: Umlaute ersetzen |
|
|
BBEdit kann ich auch wärmstens empfehlen. Trotzdem bräuchte ich noch eine Lösung in AS.
Bei meinem FileMaker-Projekt werden die Datensätze nacheinander ausgelesen. AS schreibt sie in eine Variable und setzt die HTML-Tags für Tabellenreihe und -Zelle davor bzw. die entsprechenden Abschlußtags danach.
Wenn alle Datensätze eingelesen sind, wird das so entstandene Tabellenlayout wieder bei Filemaker in ein Variablenfeld eingesetzt. Da laufen jetzt die FileMaker-Skripts zum Umlautersetzen drüber.
Der so korrigierte HTML-Text geht wieder an AS. Dort wird jetzt eine Textdatei erzeugt und auf die Festplatte gespeichert.
Das ist mir eine Runde zuviel in FileMaker. Deshalb bräuchte ich eine AS-Lösung. _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
maccer •->


Anmeldedatum: 29.11.2000 Beiträge: 10
|
Verfasst am: 29.11.2000 - 23:53 Titel: Umlaute ersetzen |
|
|
Es liegt doch auf der Hand:
Schreibe die übernommenen Datensätze gleich aus AS in eine Datei und lese die dann (AS-gesteuert) in BBEdit ein (da Du das Programm empfiehlst, nehme ich an, daß Du es auch hast, und falls es eine Lösung für jemand anders ist, wirst Du dem leicht klar machen können, daß BBEdit billiger ist als Deine Programmierstunden). Warum denn eine "Suchen und Ersetzen" Funktion in AS programmieren, wenn Editierprogramme das viel besser und schneller können - insbesondere BBEdit, das in dieser Beziehung mit Abstand das schnellste ist was ich kenne (WIN- und UNIX-Programme eingeschlossen. |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 29.11.2000 - 23:56 Titel: Umlaute ersetzen |
|
|
Es geht ohne BBEdit! :biggrin:
Mich reizt es in diesem Fall, ohne BBEdit auszukommen. Jetzt geht es auch. Ich hatte in der bisherigen Lösung einen kleinen Denkfehler.
Ich wollte nicht, daß mir die Ersetzen-Funktion meine Termine in der Datenbank unleserlich macht. Jetzt habe ich einfach noch ein weiteres Datenfeld angelegt, in das automatisch die Daten des ersten Textfeldes übernommen werden. In diesem HTML-Feld werden nun die Umlaute ersetzt. Danach wird das Ganze erst ans AppleScript übergeben.
Jetzt läuft die Sache auch ruck zuck!
So und jetzt kommt eine reine AppleScript-Suchen/Ersetzen-Funktion dran.
Gruß _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com |
|
Nach oben |
|
 |
Snow Administrator


Anmeldedatum: 21.11.2000 Beiträge: 1946 Wohnort: Deiningen
|
Verfasst am: 29.11.2000 - 23:59 Titel: Umlaute ersetzen |
|
|
ICH HAB'S GESCHAFFT!! :cheesy:
Umlaute ersetzen in AppleScript.
Man braucht dazu die OSAX: "XCMD OSAX"
Ich habe ein Skript geschrieben, das auf meiner Download-Seite zu finden ist.
Habe versucht, es so gut wie möglich zu kommentieren. Das Skript kann leicht um weitere HTML-Entities ergänzt werden.
Bisher werden erkannt: ü, ä, ö, Ü, Ä, ÷, ß, & sowie doppelte Zeilenschaltungen = Absatz und einfache Zeilenschaltung = Linebreak
Es heißt: "Umlaute ersetzen" -- wie sonst?
Die XCMD OSAX könnt ihr dort ebenfalls gleich herunterladen.
Gruß
Download-Page _________________ Peter
-
Fischer-Bayern.de|Shadetreemicro.com
Zuletzt bearbeitet von Snow am 01.03.2003 - 17:12, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Folker •---->


Anmeldedatum: 11.12.2000 Beiträge: 649 Wohnort: Holsteinische Schweiz
|
Verfasst am: 11.12.2000 - 17:53 Titel: Umlaute ersetzen |
|
|
Hallo,
schaut doch mal auf die seite
http://www.alle-brandts.de/ascii_char.htm
Das ist mein Versuch dieser Problematik AS entgegenzustellen. Vorteil: Filter können leicht selbst erstellt werden und - weil ich damit auch x MB große Datendateien für FMP verarbeite, es läuft auf flotten Rechnern ebenso flott und mit vieln MB of Text.
Gruß, Folker _________________ Gruß,
Folker Brandt
=============================
Systemberatung · Datenbanken · Webdesign |
|
Nach oben |
|
 |
macgix •--->


Anmeldedatum: 13.12.2000 Beiträge: 206 Wohnort: K–ln
|
Verfasst am: 14.12.2000 - 09:39 Titel: Umlaute ersetzen |
|
|
Es geht auch so:
tell application "BBEdit 6.0"
set tSearchOptions to {search mode:literal, starting at top:true, wrap around:false, reverse:false, case sensitive:true, match words:false, extend selection:false}
activate
if window 1 exists then
replace "ü" using "ü" searching in text 1 of text window 1 options tSearchOptions
replace "ö" using "ö" searching in text 1 of text window 1 options tSearchOptions
replace "ä" using "ä" searching in text 1 of text window 1 options tSearchOptions
replace "Ü" using "Ü" searching in text 1 of text window 1 options tSearchOptions
replace "÷" using "Ö" searching in text 1 of text window 1 options tSearchOptions
replace "Ä" using "Ä" searching in text 1 of text window 1 options tSearchOptions
replace "ß" using "ß" searching in text 1 of text window 1 options tSearchOptions
-- etc...
save text window 1
close window 1
end if
end tell
mit BBEdit oder mit der SearchAndReplace OSAX von Latenight Software (Bestandteil der ScriptDebugger Suite) oder (sehr zu empfehlen) mit der FB Search OSAX von Jerry Stratton (Suchen und Ersetzen mit GREP!). Je nach verwendeter OSAX muss die "search ... replace" Zeile entsprechend angepasst werden.
Wie so oft in AS, viele Wege führen nach ROM... _________________ [macgix] |
|
Nach oben |
|
 |
|