In der letzten Version von Arachnophilia betraf die mit Abstand häufigste Beschwerde die Vorschau in Browsern
— sie schlossen sich, wenn sie nicht sollten oder schlossen nicht,
wenn sie es sollten, oder sie brachten Arachnophilia zum Absturz oder sie
brachten das ganze System zum Einfrieren, und so weiter.
Wenn alles perfekt wäre, würde der Browser nur einmal gestartet
und nicht 0 oder 20 mal. Er würde die Seite zeigen, von der man die Vorschau
sehen wollte, und er würde die Ansicht neu aufbauen, ohne abzustürzen
oder sich selbst zu vervielfältigen, sodass Sie die Änderungen in Ihrer Seite
anschauen könnten, ohne ewig auf einen Browser zu warten, der mal wieder startet.
Nach dem Feedback, das ich per e-Mail bekommen habe,
war letzteres aber anscheinend der weitaus seltenere Fall.
In Java hat man Zugunsten von Portabilität und viel mehr Absturzsicherheit
sehr viel weniger Kontrolle über den System-Browser. Deshalb wird in der
momentanen Version der Browser gestartet, und für die nächste Vorschau
wird dieser Prozess beendet und der Browser erneut gestartet.
Das ist bei Weitem der zuverlässigste und am leichtesten portierbare Ansatz.
Aber, passend zur kompletten Philosophie hinter Arachnophilia,
können Sie auch dieses Verhalten verändern, wenn Sie wollen.
Es gibt eine Vielzahl von speziellen Browser-Fähigkeiten, die es dem
Browser in manchen Fällen erlauben, die Seite ohne viel Stress neu aufzubauen.
Deshalb können Sie sich im Browser-Konfigurations-Dialog (normalerweise im
HTML-Menü) heraussuchen, ob Sie den vorhergehenden Bowser-Prozess
beenden wollen oder nicht (mit "close before opening"),
Sie können wählen, ob Sie die Funktion benutzen wollen,
mit der Sie zur momentan bearbeiteten Position in der Seite springen wollen
(siehe unten)(vor allem bequem, wenn der Browser jedesmal neu gestartet wird!),
und Sie können weitere eigene Parameter zum Browserstart eingeben.
Das Internet (und vor Allem auch das Usenet) ist überflutet mit
Vorschlägen, wie man Web-Browser auf viellerlei interessante Arten starten kann.
Sie können die meisten davon in Arachnophilia einbauen,
indem Sie die Datenfelder in den Browser-Einstellungen verwenden.
Das einzige, was Sie beachten sollten, ist, dass das Symbol "$1"
irgendwo in dem Befehlswort mit drin steht, damit die Vorschau-Datei auch
als Ziel zum Browser übergeben werden kann.
Vielleicht ist es auf den zweiten Blick sogar sinnvoll, wenn Sie die temporäre
Datei überhaupt nicht benutzen, sondern stattdessen Ihre Datei abspeichern
und dann die Vorschau starten. In diesem Fall müssen Sie dann den Dokument-Namen
als "file:/[FullPath]" oder etwas ähnliches (statt "$1") übergeben.
In diesem Fall arbeitet aber die unten beschriebene Funktion nicht.
Einige weitere Details. Aus verschiedenen Gründen generiert Arachnophilia für die Vorschau
eine temporäre Datei. Diese temporäre Datei befindet sich in dem selben Verzeichnis
wie die Datei selbst, wenn sie schoneinmal gespeichert wurde, oder im Standard-Verzeichnis des Benutzers,
wenn sie erst noch gespeichert werden muss. Diese temporäre Datei wird entweder gelöscht,
wenn man andere Seiten anschaut oder andere Browser verwendet, oder wenn man Arachnophilia beendet.
Der ursprüngliche Grund für die temporäre Datei war,
es dem HTML-Anfänger möglich zu machen, eine Seite anzuschauen,
die er noch nicht gespeichert hatte oder überhauptnicht speichern wollte.
Aber es stellt sich so nach und nach heraus, dass eine separate Vorschau-Datei
ein recht bequemer Nebeneffekt ist — lesen Sie weiter!
Mit der neuen Version von Arachnophila stellte ich bald fest,
dass ich es nicht hinbekam, die Seitenvorschau in jedem Browser
auf jeder Plattform zu erneuern, ohne auch den Browser neu zu starten.
Dabei wurde mir klar, dass dieser neu gestartete Browser unvermeidlich das obere Ende der Vorschau-Seite
anzeigen würde. Deshalb habe ich mir Gedanken gemacht, wie man den Browser dazu bringen könnte,
an die bearbeitete Stelle zu scrollen — nun füge ich einfach ein Dokument-Referenz-Tag
in die Vorschaudateu ein (so eine Art HTML-Lesezeichen) und übergebe dem Browser
mit der Adresse diese Referenz, was normalerweise den Browser dazu bringt,
diese so bezeichnete Stelle zu suchen und dorthin zu springen.
Das funktioniert leider nicht unter allen Umständen —
das Tag wird in die Vorschaudatei hineingeschrieben, ohne großartig Plätze zu vermeiden,
an denen es nicht erkannt werden kann (wie zum Beispiel innerhalb einer Tabelle aber außerhalb
der <td></td>-Tags). Aber normalerweise wird der Bereich angezeigt,
an dem momentan gearbeitet wird — wenn alles klappt :-)