Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


Hallo Christian,


Am 01.08.2011 09:20, schrieb Christian Lohmaier:
Hi Uwe, *,

2011/7/31 Uwe Richter <richter68@gmx.de>:
Am 31.07.2011 21:46, schrieb Friedrich Strohmaier:
Am 31.07.2011 19:45 schrieb Uwe Richter:
[...]

Dies ist mein erstes Perl Script und hat mich einen Tag gekostet.

Alle Achtung. Dafür, dass es ein Erstlingswerk ist - nicht schlecht!
:o))

Danke! War aber viel try and error. :-)

Man merkt schon, daß es ein "Erstlingswerk" ist, es ist recht wenig
perl-like, z.B. array abgrasen per iterator-variable ist nicht
perl-typisch, aber davon abgesehen.


Ich wollte unbedingt zum Release von LibreOffice 3.4.2 ein Tool, dass
mir die Arbeit abnimmt.

Hinweise wie man das Ganze eleganter lösen kann nehme ich gerne
entgegen. ;-)

Nun, ohne Rückfrage das aktuelle Verzeichnis rekursiv löschen lassen,
ist außerordentlich mutig. :o))

Jup, das ist ziemlich gefährlich.  $dir sollte auf plausibilität
geprüft werden, bzw. gleich ein temporäres Verzeichnis anlegen und
dort die Arbeit machen.


Wie gesagt, ein Error Handling fehlt noch völlig. Die Feinarbeiten nehme
ich jetzt vor. Den Inhalt des Verzeichnisses kann ich natürlich auch
vorerst per Hand löschen.

Was auch "häßlich" ist, ist die fehlende Dokumentation, was es denn
mit den ebenso unansehnlichen @sof array auf sich hat.
Da ist viel redundant - der Sprachcode steckt ja beispielsweise 1:1 im
Dateinamen drin, und was es mit den Indizes auf sich hat ist mir beim
ersten kurzen Bick auch nicht klar geworden.


Ja, die Doku fehlt auch noch, kommt irgendwann noch rein. Für mich waren
die Arrays der einfachere Weg mein Problem zu lösen

Variablen könnten auch "sprechender" sein. @ndir ist nicht ganz klar,
@odir ist evtl output-dir.


Auch da gebe ich Dir recht, muss ich nach bessern.

Aber damit nicht nur gemeckert wird, sonder auch was konstruktives
dabei rumkommt..


Für mich ist das kein Gemecker, sondern konstruktive Kritik. Ich möchte
ja was lernen um mich zu verbessern. Hätte das Script ja auch still und
heimlich verwenden können. Aber es sollen ja für die Zukunft auch andere
etwas davon haben. ;-)

[...]


Aber wiegesagt, daß @soft-Array bedarf der Erläuterung - ebenso die
"magic numbers" in den For-Schleifen (und vermutlich gehts perl-like
auch viel übersichtlicher :-)


Das geht bestimmt.
Die Arrays gehören natürlich erklärt.
@odir enthält die Verzeichnisse aus denen die Archive geholt werden.
@ndir enthält die Verzeichnisse, die erstellt werden müssen.
zu @soft:
zuerst kommt das Indizes auf @ndir, an 2. Stelle das Indizes auf @odir,
an 3. Stelle der Suchstring für die Archive und zuletzt der Name zum
Umbenennen des Verzeichnisses.

Reicht doch eine Liste mit den gewünschten Sprachen, der Rest kann
sich doch das Skript zusammensuchen.... Warum also zig Einträge für
die installer, helppacks und langpacks vorhanden sind leuchtet mir
nicht ein, hast ja schon

use File::Find;

mit drinnen, aber dann bastelst Du Dir die Pfade umständlich über
indizierte Arrays mit mehreren Ebenen und mehreren Arrays zusammen.


Mit dem Find bin ich nicht klar gekommen, daher der umständliche Weg.
Ich habe jetzt aber eine Grundlage und kann die schrittweise verbessern. :-)

Das harlinken der Installer, nur um sie nach dem Auspacken wieder zu
löschen ist auch unnötig, man kann auch tar auch mit der Datei im
mirrorverzeichnis ausführen.


Auf die Idee bin ich auch nicht gekommen. Manchmal sieht man den Wald
vor lauter Bäumen nicht.
Also, vielen Dank für Deine Hinweise.

ciao
Christian


Tschüß
Uwe

-- 
Informationen zum Abmelden: E-Mail an discuss+help@de.libreoffice.org
Tips zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/discuss/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.