ASCII-basierte oder Baum-basierte Editierung: problematische Alternativen |
Die meisten Nutzer sind daran gewöhnt, Quellcode mit einem
konventionellen Editor wie
Wir haben uns entschlossen in TeXmacs die zweite Alternative zu
verwenden. Genauer gesagt, jedes Dokument kann im
„Quellmodus” editiert werden. Das ist nur eine spezielle
Form der Darstellung, die die Baumstruktur besser erkennbar macht. Es
ist sehr instruktiv, irgendein Dokument zu nehmen und es im Quellmodus
zu betrachten. Dazu wählen Sie
Die Wahl zwischen ASCII-basiertem Editieren und Baum-basierten Editieren ist nicht trivial, denn TeXmacs Stil-Dateien und Pakete haben eine Doppelnatur. Sie sind einerseits Programme, die spezifizieren, wie Makros dargestellt werden, andererseits enhalten sie normalen Text. Es gibt eine Reihe von Gründen, warum Nutzer ein ASCII-basiertes Format vorziehen:
Wir versuchen möglichst viele dieser Vorteile in unser Konzept einer a strukturierten Dokument- Darstellung einfließen zu lassen, obwohl es offensichtlich schwierig ist, Punkt 4 angemessen zu berücksichtigen. Wir glauben, daß die in ersten drei Punkten genannten Vorteile in einer solchen strukturierten Umgebungen sogar deutlicher ausgeprägt sein werden. Jedoch erfordert die Verwirklichung dieses Konzeptes ein tiefes Verständnis davon, wie Nutzer Quellcode tatsächlich formatieren und editieren.
Lassen Sie uns beispielsweise dieses Stück formatierten Code betrachten:
if (cond) hop = 2;
else holala= 3;
Man erkennt, daß dieser Code mit in spezieller Weise formatiert ist. Die Formatierungsrichtlinien, die derjenige, der den Code formatierte, im Kopf hatte sind, im Code nicht enthalten. Wenn etwa die Variable cond in c umbenannt wird, oder wenn die Variable holala in hola umbenannt wird, muß der Code manuell neu formatiert werden.
Zum jetzigen Zeitpunkt stellt TeXmacs keine Werkzeuge bereit, die das Problem dieses Beispiels automatisch lösen könnten, aber einige wichtige Werkzeuge sind schon vorhanden. So hat der Anwender viele Möglichkeiten, Quellcode durch Einzüge zu gestalten und vernünftige Standardformatierungen sind vorhanden. Weitere Werkzeuge sollen in Zukunft entwickelt werden. Wir sind für Anregungen dankbar.