Wie kann ich unter OS X ein neues Wörterbuch zur Verwendung mit dem Bildschirmschoner „Wort des Tages“ installieren?

Der Grund ist trivial: Ich bin ein Fan des "Wort des Tages"-Bildschirmschoners und möchte Wörterbücher für andere Sprachen als Englisch und Japanisch hinzufügen (dies sind die beiden, die ich jetzt in den Bildschirmschoneroptionen auswählen kann).

Wie kann ich es tun?

Etwas Glück? Es scheint überhaupt keinen Sinn zu machen, dass nur englische und japanische Wörterbücher ausgewählt werden können, aber ich habe keinen Weg daran herum gefunden.
Scheint ein halbherziges Projekt/Osterei zu sein, das nach OS X 10.8 aufgegeben wurde.

Antworten (4)

In einem ziemlich obskuren Kommentar-Thread hat jemand erklärt, wo Sie die Wortliste finden könnten, die Apple verwendet, um den Bildschirmschoner zu betreiben. Es ist bei /System/Library/Graphics/Quartz\ Composer\ Plug-Ins/WOTD.plugin/Contents/Resources/NOAD_wotd_list.txt. Die Datei sieht so aus:

m_en_us1282510  quinsy
m_en_us1273791  orbicular
m_en_us1220945  alimony
m_en_us1250517  genome

Es ist eine Liste von tabulatorgetrennten Einträgen. Rechts haben Sie das Wort und links etwas, das wie eine ID aussieht. Aber wofür ist es eine ID, und wie können Sie sie für ein anderes Wort finden, das noch nicht auf der Liste steht?

Wie zu erwarten, bezieht sich die ID auf einen Eintrag in Apples Standardwörterbuch, dem „New Oxford American Dictionary“. (Dafür steht "NOAD" im obigen Wortlistenpfad.)

Wie finde ich die IDs für andere Wörter?

Ein Kollege namens Joseph Gentle zeigt in einer Reihe von Blogbeiträgen, wie man an die Daten kommt, die den Wörterbüchern von Apple zugrunde liegen. In seinem Beitrag "Apple Dictionaries, Part 2" zeigt er auf Code, der die relevante Binärdatei (gespeichert in /Library/Dictionaries) in XML entpackt. Unter Verwendung der hier gefundenen Dateien dedict.cund und nach dem Beispiel von Gentle habe ich die folgenden Bash-Befehle verwendet, um auf das XML von NOAD zuzugreifen (diese Befehle werden von dem Verzeichnis aus ausgeführt, in das Sie die Dateien heruntergeladen haben ) :strip.cdedict.cstrip.c

clang dedict.c -Wall -lz -o dedict
clang strip.c -Wall -lz -o strip
./dedict "New Oxford American Dictionary" | ./strip > dict.xml

Als ich headdie ersten paar Zeilen der dict.xmlDatei -ed, sah ich etwas vielversprechendes mit Einträgen, die so aussahen:

<d:entry xmlns:d="http://www.apple.com/DTDs/DictionaryService-1.0.rng" id="m_en_us1219333" d:title="abode" class="entry">

Beachten Sie, dass idparam ... es ein Bezeichner ist, der genauso aussieht wie der in der Wortliste des Bildschirmschoners!

Ich habe das folgende Ruby-Skript geschrieben, um das XML zu parsen und dann mit meiner eigenen Wortliste eine neue Bildschirmschonerdatei zu erstellen, die meine eigenen Wörter ihren IDs im Wörterbuch zuordnet:

raw = File.open("./dict.xml").read
my_words = File.open("./word_list.csv").readlines.map { |line| line.split(',')[1] }

word_id_map = {}

raw.scan(/<d:entry .*? id="(.*?)" d:title="(.*?)" class="entry">/).each do |entry|
   word_id_map[entry[1]] = entry[0]
end

my_words.each do |word|
  if id = word_id_map[word]
    puts [id, word].join('  ')
  end
end

Als ich die ursprüngliche Bildschirmschonerdatei durch diese neue ersetzte, funktionierte es. Sie können jetzt einen "Wort des Tages"-Bildschirmschoner haben, der Definitionen für die von Ihnen gewählten Wörter enthält.

Wenn Sie 10.8 haben, können Sie die Wörterbücher für Französisch, Deutsch, vereinfachtes Chinesisch und Spanisch in den Einstellungen von Dictionary.app aktivieren:

Sie scheinen jedoch nicht als Auswahlmöglichkeiten für den Bildschirmschoner „Wort des Tages“ angezeigt zu werden:

Ich habe auch versucht, nach dem Aktivieren der Wörterbücher neu zu starten.

Ja, sie erscheinen nicht genau im Bildschirmschoner.
Keine Ahnung, warum dieser Beitrag so viele Upvotes bekommen hat - hat die Frage überhaupt nicht gelöst :(

Falls sich jemand 2018 noch dafür interessiert und darauf stößt..

Ich habe gerade auf OS X Mojave aktualisiert und eine Word of the Day.saverDatei unter /System/Library/Screen Savers/. Gehen Sie in diesem Paket zu Contents/Resources/WordLists/, und Sie finden die 5 .plist-Dateien, die in Mojave WotD verwendet werden (sie haben drei Wörterbücher für Mandarin/Kantonesisch hinzugefügt). Dort können Sie die obige Methode von jsomers verwenden.

Außerdem ist es schon eine Weile her, seit Apple den Systemintegritätsschutz zu OS X hinzugefügt hat, also müssen Sie ihn deaktivieren, bevor Sie in die .plist-Datei schreiben.

Ich bin ziemlich froh, dass Apple das gute alte WotD nicht aufgegeben hat und es in Mojave ein wenig aktualisiert hat. Ich hoffe, sie können in Zukunft noch mehr Wörterbuchoptionen anbieten.

Dies sollte Ihr Problem lösen: http://www.makeuseof.com/tag/easily-expanding-apple-dictionary-–-mac-only/

Siehe Lauris Kommentar. Mit dem Bildschirmschoner geht es nicht.