Erweitern von Dreamweaver: Anpassen der Analyse von Tags von Drittanbietern.
Da ich in letzter Zeit Dreamweaver-Plugins entwickelt habe, gibt es nur sehr wenige chinesische Materialien und mein Englisch ist schlecht schwindlig. Nachdem ich einige wichtige Inhalte ins Chinesische übersetzen musste, fühlte ich mich beim Lesen viel erfrischter. Dieser Auszug ist ein Auszug aus „Extending Dreamweaver 8“, das mit Dreamweaver 8 geliefert wird. Bei der Übersetzung habe ich auf die von Xiakedao übersetzte „Dreamweaver 4 Chinese Help“ verwiesen. Aber um ehrlich zu sein, habe ich einige Zweifel, dass einige Teile der Hilfe mit einer Software wie Kingsoft Translation übersetzt wurden. Wie auch immer, sie ist schwieriger zu lesen als Englisch.
Serverseitige Technologien wie ASP, Macromedia ColdFusion, JSP und PHP verwenden eine spezielle Nicht-HTML-Syntax in HTML-Dateien, und der Server erstellt und stellt HTML-formatierte Inhalte basierend auf diesen Codes bereit. Wenn Dreamweaver Nicht-HTML-Tags erkennt, vergleicht Dreamweaver diese, indem es Tag-Definitionsdateien von Drittanbietern aufruft, die festlegen, wie Dreamweaver diese Tags liest und anzeigt.
Beispielsweise enthalten ASP-Dateien zusätzlich zur Standard-HTML-Sprache auch ASP-Code, den der Server analysieren kann. ASP-Code sieht ähnlich aus wie HTML-Tags. Er ist durch ein Tag-Paar gekennzeichnet, ein öffnendes <% und ein schließendes %>. Im Ordner „Configuration/ThirdPartyTags“ von Dreamweaver gibt es eine Datei mit dem Namen „Tags.xml“. Diese Datei wird zur Beschreibung verschiedener Tag-Spezifikationen von Drittanbietern, einschließlich ASP, verwendet und definiert, wie Dreamweaver diese Codes anzeigt. Mit diesem Ansatz wurde der ASP-Code in Tags.xml standardisiert, sodass Dreamweaver nicht mehr versucht, Code zwischen <%...%> zu analysieren. In der Entwurfsansicht wird jedoch ein Symbol angezeigt, das darauf hinweist, dass es sich um ASP-Code handelt. Sie können Ihre eigenen Tags definieren und für jeden Tag-Satz eine neue Tag-Bibliotheksdatei erstellen, um festzulegen, wie Dreamweaver Ihre Tags liest und anzeigt.
Hinweis: In diesem Abschnitt wird beschrieben, wie Sie eine Methode für Dreamweaver definieren, um eine benutzerdefinierte Beschriftung anzuzeigen. Es wird jedoch nicht beschrieben, wie der Inhalt oder die Eigenschaften der benutzerdefinierten Beschriftung bearbeitet werden. Informationen zum Erstellen eines Eigenschafteninspektors zum Überprüfen und Ändern der Eigenschaften einer benutzerdefinierten Beschriftung finden Sie unter Eigenschafteninspektor.
Jede Tag-Bibliotheksdatei definiert den Namen, den Typ, den Inhaltsmodus, die Anzeigespezifikation und das Symbol eines oder mehrerer benutzerdefinierter Tags. Sie können beliebig viele Tag-Bibliotheksdateien erstellen, diese müssen sich jedoch im Ordner „Configuration/ThirdPartyTags“ befinden, damit sie von Dreamweaver gelesen und verarbeitet werden können. Tag-Bibliotheksdateien verwenden die Dateierweiterung .xml.
Tipp: Wenn Sie gleichzeitig an mehreren verschiedenen Websites arbeiten (vorausgesetzt, Sie sind Freiberufler), können Sie alle Tag-Spezifikationen in einer Datei definieren und diese auf einer speziellen Site für die zukünftige Verwendung durch andere speichern. Wenn jemand die Site pflegt, Sie können die komplette Tag-Bibliothek übergeben, einschließlich benutzerdefinierter Symbole und Eigenschaftsinspektoren.
Sie müssen eine Tag-Spezifikation mithilfe eines XML-Tags namens „tagspec“ definieren. Der folgende Code stellt beispielsweise eine Tag-Spezifikation mit dem Namen „happy“ dar.
<tagspec tag_name="happy" tag_type="nonempty" render_contents="false" content_model="marker_model" icon="happy.gif" icon_width="18" icon_height="18"></tagspec>
Sie können Tagspec zum Definieren verwenden Zwei Arten von Etiketten:
·Gemeinsame Tags im HTML-Format
Das Happy-Tag-Beispiel ist ein gewöhnliches Tag im HTML-Format. Es beginnt mit dem Tag <happy>, enthält Daten zwischen dem öffnenden und schließenden Tag und endet mit dem Tag </happy>.
· Durch Zeichenfolgen getrennte Tags Durch Zeichenfolgen getrennte Tags beginnen mit einer Zeichenfolge und enden mit einer anderen Zeichenfolge. Sie ähneln leeren HTML-Tags (z. B. img), da sie weder Inhalt noch schließende Tags enthalten. Wenn es sich bei „happy“ ebenfalls um ein durch Zeichenfolgen getrenntes Tag handelt, muss seine Definitionsspezifikation zwei Attribute enthalten: start_string und end_string. ASP-Tags sind alle durch Zeichenfolgen getrennte Tags. Sie beginnen mit <% und enden mit %>, und es gibt kein schließendes Tag.
Die folgenden Informationen listen die verschiedenen Attribute und gültigen Werte des Tags „Tagspec“ auf. Attribute mit einem Sternchen („*“) weisen darauf hin, dass sie nicht auf durch Zeichenfolgen getrennte Tags anwendbar sind, und optionale Attribute sind mit geschweiften Klammern ({}) gekennzeichnet. Daraus lässt sich leicht ableiten, dass andere Eigenschaften, die nicht mit geschweiften Klammern gekennzeichnet sind, erforderlich sind Eigenschaften.
<tagspec>
Beschreibt
dieStandardinformationsattribute
zu Tags von Drittanbietern
tag_name, {tag_type}, {render_contents}, {content_model}, {start_string}, {end_string}, {detect_in_attribute}, {parse_attributes}, icon, icon_width, icon_height, { equal_tag}, {is_visual}, {server_model}
tag_name steht für einen benutzerdefinierten Namen. Bei durch Zeichenfolgen getrennten Tags wird tag_name nur verwendet, um zu überprüfen, ob ein bestimmter Eigenschafteninspektor auf das Tag anwendbar ist. Wenn die erste Zeile des Attributinspektors den Tag-Namen an einer konformen Position (tatsächlich in der ersten Zeile der Deklaration) enthält und mit einem Sternchen („*“) markiert ist, darf der Inspektor das Typetikett überprüfen . Der Tag-Name des ASP-Codes lautet beispielsweise ASP. Inspektoren, die die Überprüfung von ASP-Code ermöglichen, müssen *ASP* in der ersten Zeile enthalten. Informationen zur Property Inspector-API finden Sie unter Property Inspector.
tag_type bestimmt, ob das Tag leer ist (wie das zuvor erwähnte img) oder ob Inhalte zwischen den öffnenden und schließenden Tags platziert werden können (wie das Code-Tag). Dieses Attribut ist für normale (nicht durch Zeichenfolgen getrennte) Tags erforderlich, hat jedoch keine Auswirkung auf durch Zeichenfolgen getrennte Tags, da diese immer leer sind. Zu den gültigen Werten gehören „empty“ und „nonempty“.
render_contents bestimmt, ob das Etikett den Inhalt in der Designansicht anzeigt oder ihn durch ein bestimmtes Symbol ersetzt. Dieses Attribut ist nur für nicht leere Tags erforderlich und hat keine Auswirkung auf leere Tags (leere Tags selbst haben keinen anzuzeigenden Inhalt). Dieses Attribut gilt nur für Tags, die außerhalb des Attributs eingefügt werden. Wenn ein Tag in den Attributwert anderer Tags eingefügt wird, wird sein Inhalt nicht angezeigt (dieser Absatz ist etwas schwer zu verstehen. Ich denke an Objekte wie RealMedia und Flash . Innerhalb dieser Parameter-Tags? Gültige Werte sind „wahr“ oder „falsch“.
content_model beschreibt, welche Art von Inhalt dieses Tag enthalten kann und wo dieses Tag in die HTML-Datei eingefügt werden kann. Zu den gültigen Werten gehören „block_model“, „head_model“, „marker_model“ und „script_model“:
·block_model bedeutet, dass das Tag Blockobjekte wie div und p enthalten kann und das Tag nur im Körperbereich oder angezeigt werden kann in andere Body-Content-Tags eingefügt werden, z. B. div, Layer und td.
·head_model bedeutet, dass die Beschriftung nur Text enthalten und nur im HEAD-Bereich erscheinen kann.
·marker_model bedeutet, dass das Tag jeden gültigen HTML-Code enthalten und an einer beliebigen Stelle in der HTML-Datei platziert werden kann. Der integrierte HTML-Validator von Dreamweaver ignoriert als marker_model definierte Tags. Der in diesen Tags enthaltene Inhalt wird jedoch vom Validator nicht ignoriert. Obwohl das Tag selbst an einer beliebigen Stelle platziert werden kann, kann sein Inhalt in einigen Teilen des HTML zu Fehlern führen. Beispielsweise kann im Kopfbereich des Dokuments kein einfacher Text angezeigt werden (außer bei legalen Kopfelementen), daher können Sie im Kopfbereich kein marker_model-Tag platzieren, das einfachen Text enthält (wenn Sie dies möchten, müssen Sie das ändern). Inhaltsmodell des Tags. Ersetzt durch marker_model durch head_model. Tags, die marker_model verwenden, werden in einer Zeile angezeigt (innerhalb eines Blockelements wie einem p oder div – zum Beispiel innerhalb eines Absatzes), lassen Sie davor und danach Leerzeilen Es wird empfohlen, diesen Modus nicht zu verwenden.
·script_model ermöglicht die Platzierung dieses Tags an einer beliebigen Stelle zwischen HTML-Tags im Dokument. Wenn Dreamweaver in diesem Modus ein Tag erkennt, wird der gesamte Inhalt des Tags ignoriert. Dreamweaver analysiert solche Tags (z. B. bestimmte ColdFusion-Tags) bei Verwendung nicht.
start_string gibt ein Trennzeichen als Ausgangspunkt für durch Zeichenfolgen getrennte Beschriftungen an. Durch Zeichenfolgen getrennte Beschriftungen können überall dort platziert werden, wo ein Kommentar eingefügt werden kann. Dreamweaver analysiert, codiert oder verknüpft den Code zwischen start_string und end_string weder. Dieses Attribut ist erforderlich, wenn end_string definiert wurde.
end_string gibt ein Trennzeichen als Endpunkt einer durch Zeichenfolgen getrennten Bezeichnung an. Außerdem ist dieses Attribut erforderlich, wenn start_string definiert wurde.
discover_in_attribute gibt an, ob der gesamte Code zwischen start_string und end_string (oder zwischen den Start- und End-Tags, wenn diese beiden Zeichenfolgen nicht definiert sind) ignoriert werden soll, unabhängig davon, ob Attribute oder Werte zwischen diesen Codes eingefügt werden. Der Standardwert ist „false“, aber im Allgemeinen sollte dieser Wert für durch Zeichenfolgen getrennte Tags auf „true“ gesetzt sein. Beispielsweise gibt die ASP-Tag-Spezifikation „detect_in_attribute="true" an. Selbst wenn Anführungszeichen mit Attributwerten innerhalb des ASP-Tags vorhanden sind, werden diese von Dreamweaver ignoriert.
parse_attributes gibt an, ob die Attribute des Tags analysiert werden sollen. Bei der Einstellung „true“ (Standardeinstellung) analysiert Dreamweaver diese Eigenschaften; bei der Einstellung „false“ ignoriert Dreamweaver den gesamten Code vor dem „>“ außerhalb der Anführungszeichen. Bei Tags wie „cfif“ sollte dieses Attribut beispielsweise auf „false“ gesetzt sein (da Dreamweaver ein Tag wie „<cfif a is 1>“ nicht als Attributname/Wert-Paar analysieren kann).
icon gibt den Pfad und Dateinamen des Symbols an, das dieser Bezeichnung entspricht. Diese Eigenschaft ist für leere Tags sowie für nicht leere Tags erforderlich, deren Inhalt nicht in der Entwurfsansicht des Dokumentfensters angezeigt werden kann.
icon_width gibt die Pixelbreite des Symbols an.
icon_height gibt die Pixelhöhe des Symbols an.
„äquivalent_tag“ gibt einfache HTML-Äquivalente für bestimmte Tags an, die mit Formularen in ColdFusion verknüpft sind. Dieses Attribut kann nicht von anderen Tags verwendet werden.
is_visual gibt an, ob das Label auf der Seite sichtbar ist. Beispielsweise gibt das ColdFusion-Tag cfgraph keinen Wert für is_visual an (daher wird der Standardwert „true“ verwendet), und das ColdFusion-Tag cfset gibt für is_visual einen Wert von „false“ an. In der Spalte „Unsichtbare Elemente“ des Standarddialogfelds können Sie die Sichtbarkeit von Serverbeschriftungen steuern; die Sichtbarkeit von visuellen Serverbeschriftungen und nicht-visuellen Serverbeschriftungen kann separat eingestellt werden.
Wenn server_model festgelegt ist, gibt es an, dass das Tagspec-Tag nur auf Seiten angewendet werden kann, die zum angegebenen Servermodell gehören. Wenn nicht festgelegt, kann die Tagspec auf alle Seiten angewendet werden. Beispielsweise sind die Trennzeichen für ASP und JSP dieselben, aber das auf JSP anwendbare Tagspec-Tag gibt den Servermodus als „JSP“ an. Wenn Dreamweaver also ein bestimmtes Trennzeichen auf einer JSP-Seite erkennt, zeigt es ein JSP-Symbol an Wenn Code auf einer Nicht-JSP-Seite erkannt wird, wird das ASP-Symbol angezeigt.
KeinInhalt
(leerer Tag).
Container
Keiner.
Beispiel
<tagspec tag_name="happy" tag_type="nonempty" render_contents="false" content_model="marker_model" icon="happy.gif" icon_width="18" icon_height="18"></tagspec>
Benutzerdefiniertes Tag im Design Wie Die Ansicht, wie
benutzerdefinierte Tags in der Designansicht des Dokumentfensters angezeigt werden, hängt von den Werten des Attributs tag_type und des Attributs render_contents des Tags spec ab (siehe Analyse benutzerdefinierter Tags von Drittanbietern). Wenn der Wert von tag_type „leer“ ist, wird das durch das Symbolattribut definierte angegebene Symbol angezeigt. Wenn der Wert von tag_type „nonempty“ ist, der Wert von render_contents jedoch „false“, wird das Symbol auch wie ein leeres Tag angezeigt. Das folgende Beispiel zeigt, wie eine Instanz des soeben definierten Happy-Tags in HTML-Code eingefügt werden kann:
<p>Dies ist ein Absatz, der eine Instanz des <code>happy</code>-Tags enthält (<happy>Joe</ happy>).</p>
Da render_contents in der Tag-Spezifikation auf „false“ gesetzt wurde, wird das Happy-Tag (Wort Joe) nicht angezeigt und die öffnenden und schließenden Tags einschließlich des Inhalts dazwischen werden durch a ersetzt Einfaches Symbol.
Bei einem nicht leeren Tag mit einem render_contents-Wert von „true“ zeigt die Entwurfsansicht es nicht als Symbol an, sondern zeigt den Inhalt zwischen den öffnenden und schließenden Tags an (z. B. den Text zwischen den Tags, etwa so: < mytag> Dies ist der Inhalt zwischen dem öffnenden und schließenden Tag </mytag>). Wenn in der Menüoption „Ansicht“ > „Visuelle Assistenten“ > „Unsichtbare Elemente“ ausgewählt ist, wird dieser Inhalt mit der Tag-Farbe eines Drittanbieters hervorgehoben, die durch den Parameter „Code-Farbe“ angegeben wird („Code-Farbe“ gilt nur für Tag-Bibliotheksdateien.
So ändern Sie sie Hervorhebungsfarbe von Drittanbieter-Tags:
1.
Wählen Sie in den Menüoptionen Bearbeiten > Einstellungen und dann die Spalte „Codefarbe“.
2. Klicken Sie auf das Farbfeld für Drittanbieteretiketten, um die Farbauswahl anzuzeigen.
3. Wählen Sie eine Farbe aus, klicken Sie dann auf „OK“ und schließen Sie das Voreinstellungsdialogfeld. Informationen zum Auswählen von Farben finden Sie unter „Verwenden von Dreamweaver“.
Vermeiden Sie das Umschreiben von Tags von Drittanbietern
. Dreamweaver korrigiert bestimmte Fehler im HTML-Code. Weitere Informationen finden Sie unter Verwenden von Dreamweaver. Standardmäßig verhindert Dreamweaver Änderungen am HTML-Code in Dateien mit bestimmten Dateierweiterungen, einschließlich .asp (ASP), .cfm (ColdFusion), .jsp (JSP) und .php (PHP). Diese Standardeinstellung soll sicherstellen, dass Dreamweaver nicht versehentlich Code ändert, der in Nicht-HTML-Tags enthalten ist. Sie können das standardmäßige Neuschreibverhalten von Dreamweaver ändern, sodass HTML-Code beim Öffnen solcher Dateien neu geschrieben wird, und Sie können der Liste der Dateitypen, die Dreamweaver das Umschreiben verbietet, weitere Dateitypen hinzufügen.
Wenn Sie bestimmte Sonderzeichen in den Eigenschafteninspektor eingeben, kodiert Dreamweaver diese in numerische Werte. Im Allgemeinen ist es am besten, diese Kodierung von Dreamweaver durchführen zu lassen, da diese Sonderzeichen auf verschiedenen Plattformen und Browsern wahrscheinlich besser angezeigt werden. Da sich diese Kodierung jedoch auf Tags von Drittanbietern auswirkt, möchten Sie möglicherweise das Kodierungsverhalten von Dreamweaver ändern, wenn Sie Dateien bearbeiten, die Tags von Drittanbietern enthalten.
Erlauben Sie Dreamweaver, HTML in mehr Dateitypen umzuschreiben:
1. Wählen Sie „Bearbeiten“ > „Einstellungen“ in den Menüoptionen und dann die Spalte „Code-Umschreiben“.
2. Wählen Sie eine der folgenden Optionen:
·Korrigieren Sie illegale verschachtelte Tags oder endlose Tags. ·Löschen Sie überflüssige schließende Tags
3. Führen Sie einen der folgenden Schritte aus:
· Entfernen Sie eine oder mehrere Dateierweiterungen aus der Liste „Code niemals neu schreiben: in Dateien mit Erweiterungen“.
· Deaktivieren Sie die Option „Code niemals neu schreiben: in Dateien mit Erweiterungen“. Bitte beachten Sie: Dadurch kann Dreamweaver HTML-Code in jedem Dateityp neu schreiben.
Fügen Sie Dateitypen hinzu, die Dreamweaver nicht umschreiben darf:
1. Wählen Sie „Bearbeiten“ > „Einstellungen“ in den Menüoptionen und dann die Spalte „Code-Umschreiben“.
2. Wählen Sie eine der folgenden Optionen:
·Korrigieren Sie illegale verschachtelte Tags oder endlose Tags. ·Löschen Sie überflüssige schließende Tags
3. Bestätigen Sie, dass das Element „Code niemals neu schreiben: in Dateien mit Erweiterungen“ ausgewählt ist, und fügen Sie die neue Dateierweiterung zur Liste im Textfeld hinzu.
Wenn der neue Dateityp nicht im Popup-Menü des Dialogfelds „Datei“ > „Öffnen“ angezeigt wird, müssen Sie ihn möglicherweise zum Ordner „Configuration/Extensions.txt“ hinzufügen. Einzelheiten finden Sie unter Ändern des Standarddateityps.
Deaktivieren Sie die Codierungsoptionen von Dreamweaver:
1. Wählen Sie in den Menüoptionen Bearbeiten > Einstellungen und dann die Spalte „Code-Umschreibung“.
2. Deaktivieren Sie eine der beiden Optionen „Sonderzeichenkodierung“.
Weitere Informationen zum Auswählen von Code Rewrite-Einstellungen finden Sie unter Verwenden von Dreamweaver.