SoftMaker.de

Deutschsprachiges Diskussionsforum
Aktuelle Zeit: 24.05.2013 04:48:38

Alle Zeiten sind UTC + 1 Stunde




Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 22.09.2008 19:59:54 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 23.02.2007 08:37:26
Beiträge: 2940
So, hier mal ein Skript, das einen sinnvollen Zweck erfüllt...

Bei der Erstellung von Layouts und/oder Dokumentenvorlagen wird als Fülltext in der Regel ein standardisierter Blindtext verwendet. Eine entsprechende Funktion findet sich vor allen in DTP-Anwendungen. TextMaker bietet eine entsprechende Funktion leider nicht.
Dieses Skript erzeugt mit komfortablen Konfigurationsmöglichkeiten beliebige Mengen an Blindtext.

Installation

Das angehängte Archiv kann in ein beliebiges Verzeichnis entpackt werden. Wichtig ist, dass die Wortliste im gleichen Verzeichnis wie das BasicMaker-Skript liegt.

Für die Einrichtung im TextMaker kann das mitgelieferte Symbol verwendet werden. Als Befehlszeile für den Start kann bspw. "C:\Programme\SoftMaker Office 2008\BasicMaker.exe" /s "c:\Dokumente und Einstellungen\[Ihr Benutzer]\Eigene Dateien\SoftMaker\Lorem Ipsum Generator\Lorem Ipsum Generator.bas" verwendet werden. Die Anführungszeichen müssen unbedingt mit angegeben werden!


Verwendung

Nach Start des Skriptes erscheint der folgende Dialog:
Dateianhang:
LoremIpsumGenerator.png
LoremIpsumGenerator.png [ 15.2 KiB | 1577-mal betrachtet ]


1: Definiert die Anzahl der zu erzeugenden Absätzen
2: Minimale und Maximale Wörter pro Absatz
3: Sollen innerhalb der Absätze einzelne Sätze erzeugt werden?

Fehler bei der Eingabe werden vom Skript abgefangen.


Das bringt die Zukunft

Es fehlen noch ein paar Funktionen, die noch nicht implementiert wurden. Hauptsächlich liegt es an Einschränkungen der OLE-Funktionalität von TM.

* Erzeugen von Überschriften
* Positionierung des Dialogs relativ zum Dokumentenfenster
* Vorgeben der Sprache der Absätze als "keine", damit der Text für die Rechtschreibprüfung transparent bleibt
* Setuproutine zur Erstellung/Entfernung der Symbolleistenverknüpfung
* Fortschrittsanzeige in der Statusleiste
* Geschwindigkeitsoptimierungen (Programm berücksichtigt Bug in Version 494 und wird ab 495 automatisch schneller)
* Optimierung des Codes


Nutzung und so weiter

Für privat kann das Skript frei verwendet werden. Das Skript bitte nicht verändern und erneut hier hochladen. Änderungen am Original werden von mir durchgeführt und das Skript dann zeitnah aktualisiert wieder eingestellt.

Anregungen, Vorschläge und Wünsche bitte als Antwort auf diesen Beitrag.

Eine Anmerkung zur Codequalität: Die aktuelle Version ist primär auf Funktion optimiert. Der Code wird noch ein bisschen aufgeräumt und eignet sich dann sicher auch für Einsteiger deutlich besser als Vorlage.


Versionshistorie

1.0
* Erste verfügbare Version

1.1
* Kleiner Fehler, es wird natürlich der BasicMaker und nicht der DataMaker angesprochen
* Zur Geschwindigkeitssteigerung wird eine eventuell aktivierte Rechtschreibprüfung vorübergehend abgeschaltet


Dateianhänge:
Lorem Ipsum Generator.zip [3.79 KiB]
131-mal heruntergeladen
Nach oben
 Profil  
 
BeitragVerfasst: 23.09.2008 04:11:21 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 27.08.2008 21:05:27
Beiträge: 250
Wohnort: Wiesbaden
* Erzeugen von Überschriften
* Vorgeben der Sprache der Absätze als "keine", damit der Text für die Rechtschreibprüfung transparent bleibt

Geht das als workaround nicht mit SendKeys? Ich weiß nur nicht wie man gezielt den richtigen Tab in den TM Format-Dialogen per Tastaur auswählt. TM macht ja stets den zuletzt aufgerufenen aktiv.


* Fortschrittsanzeige in der Statusleiste

Ich finde das Skript ist dafür zu schnell. :) Aber zum Experimentieren: wenn Du eine Dialogfunktion benutzen würdest, könnte der Dialog offen bleiben bis alles fertig ist, die Kontollelemente verschwinden dabei zu Gunsten z.B. eines Textes und eines Fortschrittsbalkens. Das existiert schon in einem - hoffe ich - gut dokumentierten Skript namens LoopCellsDialog.bas hier im BM Forum irgendwo. Ist für PM, aber die wesentlichen Teile (Fortschrittsbalken z.B.) kannst Du sehr leicht anpassen. Könntest Du evtl. geschriebene Wörter als Fort-Schritte benutzen anstatt verarbeiteter PM-Zellen?

_________________
SMO rev. 670 + Win XP                    Times without money are better than times without Mini - the original ;)


Nach oben
 Profil  
 
BeitragVerfasst: 23.09.2008 07:20:13 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 23.02.2007 08:37:26
Beiträge: 2940
Hoffie hat geschrieben:
* Erzeugen von Überschriften
* Vorgeben der Sprache der Absätze als "keine", damit der Text für die Rechtschreibprüfung transparent bleibt

Geht das als workaround nicht mit SendKeys? Ich weiß nur nicht wie man gezielt den richtigen Tab in den TM Format-Dialogen per Tastaur auswählt. TM macht ja stets den zuletzt aufgerufenen aktiv.

*brrrr* pfui... ;-)
Man hat ja auch einen gewissen Anspruch und da ist SendKeys leider etwas zu sehr Bastelzeug. Das Problem ist, dass diese Funktionen nur so lange Funktionieren wie die Zielapplikation den Focus hat. Sonst landet das Zeug irgendwo. Früher oder später findet sich eine Lösung dafür. Außerdem muss man ja auch immer Ansporn für den Hersteller liefern ;-)


Hoffie hat geschrieben:
Ich finde das Skript ist dafür zu schnell. :) Aber zum Experimentieren: wenn Du eine Dialogfunktion benutzen würdest, könnte der Dialog offen bleiben bis alles fertig ist, die Kontollelemente verschwinden dabei zu Gunsten z.B. eines Textes und eines Fortschrittsbalkens. Das existiert schon in einem - hoffe ich - gut dokumentierten Skript namens LoopCellsDialog.bas hier im BM Forum irgendwo.

Ich habe mir das alles schon angesehen. Das Problem ist halt, dass bei einer sehr kurzen Laufzeit ein ziemliches Herumgeblitze auf dem Display passiert weil Dinge sich aufbauen und dann sofort wieder verschwinden. Mich stört es schon, dass der BM am Ende der Ausführung bisweilen nochmal kurz aufblitzt um dann automatisch geschlossen zu werden -- nach meinem Dafürhalten ist das nicht nötig.
Das Skript ist nur dann schnell, wenn man nur wenige Absätze einfügen lässt. Sollen es zwei oder drei Seiten Text werden wird es etwas langsamer und da wäre halt ein Hinweis nicht schlecht -- und dafür finde ich eigentlich die Statuszeile prädestiniert.


Nach oben
 Profil  
 
BeitragVerfasst: 11.12.2011 20:46:21 
Offline

Registriert: 31.05.2004 22:07:48
Beiträge: 72
Wohnort: Hamburg
Ich habe das Skript von pbk, das in TM2008 einwandfrei läuft, versucht mit
TM2012 zu starten. Hmm, geht nicht. - Ich habe versucht, es mit dem
Skript zur Anmeldung von Icons vom Icon zu starten und aus dem Menu.

Fehlermeldung:

IpsumFile=bm.Application.ActiveDocument.Path+IpsumFile

Kann man das Skript an 2012 anpassen oder wo liegt mein
Anwender-Fehler?


Nach oben
 Profil  
 
BeitragVerfasst: 12.12.2011 14:50:27 
Offline
SoftMaker Team
SoftMaker Team

Registriert: 09.04.2008 08:50:06
Beiträge: 6312
Wohnort: Nürnberg
Ich habe bei den Entwicklern angefragt, ob das ein Fehler ist.

_________________
Sven Leßmann
SoftMaker Software GmbH


Nach oben
 Profil  
 
BeitragVerfasst: 14.12.2011 10:17:00 
Offline
SoftMaker Team
SoftMaker Team

Registriert: 03.12.2003 14:32:06
Beiträge: 2977
Das Problem liegt nicht an BasicMaker, sondern daran, wie das Script geschrieben ist.

Sie greifen mit IpsumFile=bm.Application.ActiveDocument.Path+IpsumFile auf das BasicMaker-Programmobjekt zu.

Wenn Sie das Script von BasicMaker aus starten, existiert tatsächlich ein BasicMaker, und das Script funktioniert. Wenn Sie das Script direkt von TextMaker aus starten, wird nur die Basic-DLL zur Scriptausführung gestartet. Ein voller BasicMaker läuft da gar nicht, und daher läuft der Zugriff auf BasicMaker ins Leere.

(Dass BasicMaker zur Scriptausführung nicht mehr komplett gestartet wird, war schon mit SoftMaker Office 2010 eingeführt worden. SoftMaker Office 2008 hat noch den vollständigen BasicMaker angeworfen.)

_________________
Martin Kotulla
SoftMaker Software GmbH


Nach oben
 Profil  
 
BeitragVerfasst: 14.12.2011 15:54:46 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 06.02.2007 14:01:47
Beiträge: 959
Zitat:
Ein voller BasicMaker läuft da gar nicht, und daher läuft der Zugriff auf BasicMaker ins Leere.
Könnte das auch dafür verantwortlich sein, dass bei Aufruf aus der Anwendung bei geöffnetem BM das BM geschlossen wird und sonst nichts passiert.

Ich hatte in dem Thread bei 2012 (viewtopic.php?f=176&t=13060) schon mal gefragt, wie das mit den Extensionen wird.

Das bedeutet doch dass man nach Möglichkeit ein Script aus BM startet oder mindestens ein Test aus der Anwendung wie TM macht.


Nach oben
 Profil  
 
BeitragVerfasst: 14.12.2011 16:19:15 
Offline
SoftMaker Team
SoftMaker Team

Registriert: 03.12.2003 14:32:06
Beiträge: 2977
Die Methoden und Eigenschaften des "BasicMaker"-Automation-Objekts sind gar nicht dokumentiert und sollten daher auch nicht benutzt werden. Dass sie da sind, ist eigentlich nur ein Nebeneffekt der Art, wie wir die OLE Automation integriert haben.

Ansonsten wüsste ich keine Unterschiede zwischen dem Laufenlassen in der BasicMaker-Umgebung und dem direkten Ausführen aus TextMaker oder PlanMaker.

_________________
Martin Kotulla
SoftMaker Software GmbH


Nach oben
 Profil  
 
BeitragVerfasst: 14.12.2011 19:33:21 
Offline

Registriert: 01.02.2010 19:38:04
Beiträge: 76
Zitat:
Ansonsten wüsste ich keine Unterschiede zwischen dem Laufenlassen in der BasicMaker-Umgebung und dem direkten Ausführen aus TextMaker oder PlanMaker.


Wie es trotzdem unter TM2012 läuft, siehe:
http://www.softmaker.com/diskussion/viewtopic.php?p=62721#p62721


Nach oben
 Profil  
 
BeitragVerfasst: 15.12.2011 03:45:01 
Offline
SoftMaker Volunteers
SoftMaker Volunteers

Registriert: 27.08.2008 21:05:27
Beiträge: 250
Wohnort: Wiesbaden
Ein wertvolles Thema, hatte mich schon bei einigen Skripten (still) gewundert.
Dankeschön für die Erklärung!

Ich habe mir erlaubt das Skript an SMO 2010 / 2012 anzupassen, in dem der Speicherort von Lorem.txt anders festgelegt wird.
- Er muss innerhalb der Eigenen Dateien liegen. (Das System liefert diesen Pfad des jeweiligen Benutzers)
- Der Pfad darüber hinaus wird mit Basicmaker (o.Ä.) am Skriptanfang voreingestellt (siehe dort).
- Der ganze Pfad wird dann im Dialog zur Kontrolle oder zum Ändern angezeigt.

So muss kein ellenlanger Pfad im Skript eingetragen werden.

Angehängt finden Sie das geänderte LoremIpsumGenerator-2012.bas

(@PBK: Es entspricht ansonsten dem originalen Skript.
Hab nur vor langem mal Unwesentliches gekürzt - ohne Verlust, weiß nicht mehr was...
Wenn Du möchtest kopiere es an den "zentralen Download Ort".)


Dateianhänge:
LoremIpsumGenerator-2012.zip [2.33 KiB]
43-mal heruntergeladen

_________________
SMO rev. 670 + Win XP                    Times without money are better than times without Mini - the original ;)
Nach oben
 Profil  
 
BeitragVerfasst: 21.12.2011 16:42:21 
Offline

Registriert: 31.05.2004 22:07:48
Beiträge: 72
Wohnort: Hamburg
Hoffie hat geschrieben:
Ein wertvolles Thema, hatte mich schon bei einigen Skripten (still) gewundert.
Dankeschön für die Erklärung!

Ich habe mir erlaubt das Skript an SMO 2010 / 2012 anzupassen, in dem der Speicherort von Lorem.txt anders festgelegt wird.
...


Vielen Dank für das Weihnachtsgeschenk!

Carsten


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.
Sie dürfen keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de