
Ich habe ein Wörterbuch im StarDict-Format ohne *.ifo-Datei.
Ich weiß, wie die Datei aussehen sollte, aber ich weiß nicht, wie viele Wörter das Wörterbuch genau hat und auch nicht, wie ich das überprüfen kann, ohne sie manuell zu zählen.
Ich habe mehrere Stunden damit verbracht, nach der Antwort zu suchen, aber keine gefunden.
Ich habe stardict-tools aus dem Software Center installiert, aber anscheinend ist es nicht mit der hier erwähnten Option „stardict-repair“ ausgestattet:http://code.google.com/p/stardict-3/wiki/RepairStarDictDicts, auf der Seite des StarDict-Projekts.
Meine Frage ist also zweigeteilt: 1. Wie erhalte ich Stardict-Repair unter Ubuntu 12.10 und bekomme es zum Laufen? 2. (Vielleicht etwas abseits vom Thema) wie erstelle ich bequem eine korrekte IFO-Datei, wenn keine vorhanden ist?
Antwort1
Die Tools sind unter installiert und sind beide vorhanden /usr/lib/stardict-tools/
. Da sie sich außerhalb Ihrer aktuellen PATH-Einstellung befinden, kann das Terminal sie nicht finden und ausführen.stardict-index
stardict-verify
Um sie vom Terminal aus auszuführen, haben Sie mehrere Möglichkeiten:
Öffnen Sie ein Terminal und verwenden Sie den vollqualifizierten Namen, der den Pfad enthält:
/usr/lib/stardict-tools/stardict-verify
Navigieren Sie zum Verzeichnis stardict-tools und verwenden Sie das
./
Präfix:cd /usr/lib/stardict-tools
, dann benutze./startdict-verify
Wenn Sie die Tools häufig verwenden, können Sie das Verzeichnis zum Pfad hinzufügen oder Aliase, Desktopdateien hinzufügen oder eigene Wrapper-Skripte usw. erstellen. Aber diese Dinge sind den Aufwand momentan wahrscheinlich nicht wert.
stardict-repair
ist jedoch nicht im Verzeichnis enthalten. Das Ubuntu-Paket ist nicht die aktuelle Version, das könnte der Grund sein, oder es kann einen anderen Grund geben.
Informationen zum Erstellen eigener Wörterbücher finden Sie unterStarDict Wörterbuch erstellen
Einzelheiten zum .ifo-Format finden Sie unterStarDict-Formate
Wenn Sie das Reparaturtool benötigen, müssen Sie das Paket aus der Quelle kompilieren und installieren.
So kompilieren Sie das Paket
Laden Sie den Quellcode herunter
Öffnen Sie ein Terminal in ~/Downloads
. Der Download wird in das Verzeichnis gesendet, in dem Sie sich befinden, wenn Sie den Download-Befehl ausführen.
Ausführen hg clone https://code.google.com/p/stardict-3/
, um den Quellcode herunterzuladen.
Schritte vor der Kompilierung
In zwei der Dateien ist ein Fehler, der behoben werden muss. Aufgrund von Änderungen an einer der erforderlichen Bibliotheken enthält jede Datei eine Zeile, die geändert werden muss, bevor sie kompiliert werden kann.
Die 2 Dateien sind libcommon.h
und libcommon.cpp
, aber Sie können die aktualisierten Dateien herunterladen.
Die Downloads finden Sie unterhttp://code.google.com/p/stardict-3/issues/detail?id=31. Scrollen Sie nach unten, bis Sie den Beitrag mit den angehängten Ersatzdateien sehen.
Laden Sie jede Datei in herunter ~/Downloads/stardict-3/lib/src
und sagen Sie „Ja“, wenn Sie gefragt werden, ob Sie die vorhandene Datei ersetzen möchten.
Bei einer Standardinstallation von Ubuntu sind die Tools zum Kompilieren nicht automatisch installiert und jede App verfügt über ihre eigenen erforderlichen Bibliotheken.
Für Stardict-Tools benötigen Sie:
sudo apt-get install build-essential automake libtool libmysqlclient-dev libpcre3-dev
Kompilieren
cd ~/Downloads/stardict-3/
Die meisten Pakete verfügen über eine vorgefertigte configure
Datei, die Sie an dieser Stelle ausführen würden. Bei diesem Paket müssen Sie ein Dienstprogramm ausführen, um die configure
Datei zu erstellen.
Stellen Sie sicher, dass Sie sich im stardict-3
Verzeichnis befinden (die Struktur enthält mehrere Autogen-Dateien und Sie müssen die richtige ausführen). Gehen Sie dann wie folgt vor:
./autogen.sh
Führen Sie nun die Konfigurationsdatei mit der --disable-dict
Option aus, nur die Tools zu kompilieren.
./configure --disable-dict
Kompilieren Sie das Paket mit make
(Beachten Sie, dass diesmal kein ./
„diesmal“ vorhanden ist)
make
wird normalerweise mit gefolgt make install
, aber ich glaube nicht, dass wir das hier tun sollten, da dadurch die installierten Dateien aus dem Ubuntu-Repository kopiert werden. Stattdessen cd tools/src
finden Sie dort die Binärdateien, die Sie gerade kompiliert haben.
Im Terminal sind Binärdateien die grünen Dateien und haben keine Erweiterung. (Dateien mit gleichem Namen und der Endung .o
sind Zwischendateien, die nicht mehr benötigt werden, Dateien mit der Endung .cpp
sind der ursprüngliche Quellcode und können ebenfalls ignoriert werden.)
Kopieren Sie stardict-repair
alle anderen Dateien, die möglicherweise nicht zuvor eingefügt wurden, in /usr/lib/stardict-tools
. Sie müssen nur die Binärdatei kopieren. Denken Sie ./
beim Ausführen daran.
Eine Anmerkung: Wir haben die neueste Version kompiliert. Es ist möglich, obwohl ich das für eher unwahrscheinlich halte, dass zwischen dieser Version von stardict-repair und dem Rest Ihres Pakets eine gewisse Inkompatibilität besteht. Wenn das der Fall ist, sollte es möglich sein, eine frühere Version des Tools zu kompilieren.