Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
OpenOffice-Wörterbücher mit Firefox und Thunderbird teilen
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Deutsche Dokumentation
View previous topic :: View next topic  
Author Message
Guenther Brunthaler
Apprentice
Apprentice


Joined: 22 Jul 2006
Posts: 217
Location: Vienna

PostPosted: Sun Apr 20, 2008 3:04 am    Post subject: OpenOffice-Wörterbücher mit Firefox und Thunderbird teilen Reply with quote

Dieser Artikel beschreibt, wie man bereits für OpenOffice installierte Wörterbücher gemeinsam mit Firefox und Thunderbird verwendet.

Also ohne eine sinnlose 2. Kopie dieser Wörterbücher installieren zu müssen was völlig sinnlos den doppelten Speicherplatz kosten würde!

Die hier gezeigte Methode installiert diese Wörterbücher ferner so dass sie für alle Benutzer des Rechners danach benutzbar sind.

Die hier beschriebene Methode gilt für Gentoo Linux und die aktuellen stabilen TB und FF Versionen zum Zeitpunkt als ich diese kleine Anleitung schrieb (April 2008). Und zwar die selbstkompilierten Versionen, also nicht die bin-Pakete. (Vielleicht funktioniert die Anleitung auch für die bin-Versionen von TB und FF - ich weiss es nicht. Auf meinen Rechner kommt mir jedenfalls kein Binärschrott den ich nicht selbst übersetzt habe; da könnte ich ja gleich UBUNTU nehmen.)

Ich merke dies deshalb an, da ich zahllose andere Guides zu diesem Thema fand, die alle etwas von einem components/myspell-Verzeichnis fantasierten - und allesamt NICHT funktionierten! Möglicherweise weicht die Gentoo-Installation hier daher von anderen Distros ab.

Wie auch immer - meine Methode funktioniert für die oben genannte Konfiguration.

Da die Installation Admin-Rechte erfordert, muss man die folgenden Schritte als "su - root" tun:

Als erstes müsste ihr natürlich die Wörterbücher von OOo installiert haben - falls noch nicht geschehen, so könnt ihr etwa die deutschen und englischen Wörterbücher für OOo installieren:

Code:
# emerge -vau app-dicts/myspell-{de,en}


Und hier nun das Recycling für OOo:

Das nachfolgende Script (etwa: "/usr/local/sbin/myspell-sync") speichern.

Code:
#! /bin/sh
# Symlinks installed myspell dictionaries
# for use with Mozilla Firefox and Thunderbird.
# Can also be used to update existing symlinks.
# Will also detect and remove outdated symlinks.
#
# Written in 2008 by Guenther Brunthaler


# Where to find the installed myspell dictionaries.
MYSPELLDICTS=/usr/share/myspell


die() {
   echo "ERROR: $*" >& 2
   exit 1
}


run() {
   "$@" && return
   die "Could not execute >>>$*<<<: return code ${?}!"
}


check_symlink() {
   local T RM
   T=`readlink --canonicalize "$1"`
   if test -f "$T"; then
      # Remove symlinks to be recreated.
      test x"${T#$MYSPELLDICTS/}" != x"$T" && RM=1
   else
      # Remove outdated symlinks.
      RM=1
   fi
   test -z "$RM" && return
   run rm "$1"
}


createlinks() {
   local D N N2 P X COLL BAD CI
   D=$2
   N=${1##*/}
   P=${1%/$N}
   N=${N%.*}
   # Collect extensions to be symlinked.
   set --
   for X in dic aff; do
      test -f "$P/$N.$X" && set -- "$@" "$X"
   done
   # Mozilla expects ll-CC* names instead of ll_CC* names.
   N2=`echo "$N" | sed -e 's/_/-/'`
   # Collision avoidance.
   CI=1
   while true; do
      BAD=
      for X in "$@"; do
         if test -e "$D/$N2$COLL.$X"; then
            BAD=1
            break
         fi
      done
      test -z "$BAD" && break
      COLL=$CI
      CI=`expr $CI + 1`
      test $COLL = 1 && COLL=
      COLL=_myspell$COLL
   done
   for X in "$@"; do
      run ln -s "$P/$N.$X" "$D/$N2$COLL.$X"
   done
}


run test -d "$MYSPELLDICTS"
# Add more paths to obtain symlinked copies of the
# myspell dictionaries in the lines below if you want.
for D in \
   /usr/lib/mozilla-firefox/dictionaries \
   /usr/lib/mozilla-thunderbird/dictionaries \
; do
   if test -d "$D"; then
      echo "Symlinking dictionaries into $D..."
      for L in "$D"/*; do
         test -L "$L" && check_symlink "$L"
      done
      # Match only dictionaries, not thesauri or hyph* files.
      for DICT in "$MYSPELLDICTS"/[a-z][a-z]_[A-Z][A-Z]*.dic; do
         test -f "$DICT" && createlinks "$DICT" "$D"
      done
   fi
done


Nach dem Speichern als ausführbar setzen:

Code:
# chmod +x /usr/local/sbin/myspell-sync


Und schließlich das Script ausführen:

Code:
# myspell-sync


Danach kann man im TB Settings-Dialog jedes der OOo-Wörterbücher für die Rechtschreibung auswählen.

Und auch nach dem nächsten Start von FF kann dann per Kontextmenü in jedem Eingabefeld die Rechtschreibung konfiguriert werden.

Ein sehr nützliches Feature für zu postende Artikel in Web-Foren!

Man bemerke, dass diese Lösung Symlinks installiert, so dass kein Speicherplatz verschwendet wird.

Das Skript prüft auch ob FF oder TB installiert sind bevor es versucht die Wörterbücher dorthin zu symlinken.

Ausserdem handhabt das Skript intelligent Namenskollisionen oder mehrfach vorhandene Wörterbücher.

Man kann das Skript auch mehrfach ausführen, etwa nachdem man neue Wörterbücher hinzu installiert oder entfernt hat. In diesem Fall aktualisiert das Skript entsprechend die Symlinks.

Eine Reinstallation von FF oder TB löscht ebenfalls die Symlinks, so dass man das Script auch in diesem Fall ausführen sollte.

Oder einfacher gesagt - man kann das Skript jederzeit ausführen wenn man den Eindruck hat dass etwas mit der Liste der in TB/FF angebotenen Wörterbüchern nicht stimmt.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) Deutsche Dokumentation All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum