Inhaltstypen
Kennung:
org.eclipse.core.runtime.contentTypes
Seit:
3.0
Beschreibung:
Der Erweiterungspunkt der Inhaltstypen ermöglicht den Plug-ins die Ergänzung zum Plattform-Inhaltstypen-Katalog. Es gibt zwei Ergänzungsarten: content types und file associations.
-
Ein Inhaltstyp stellt ein Dateiformat sowie seine Namenskonventionen dar. Inhaltstypen können von Grund auf definiert werden oder können aus bereits vorhandenen übernommen werden, wobei sie angegeben werden.
-
Eine Dateizuordnung erweitert einen vorhandenen Inhaltstyp durch Zuordnen neuer Dateinamen und/oder Erweiterungen
Konfigurationsbefehle:
<!ELEMENT extension (content-type* , file-association*)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
- point - Vollständig qualifizierte Kennung des Zielerweiterungspunktes.
- id - Optionale ID des Erweiterungsexemplars
- name - Optionaler Name des Erweiterungsexemplars
<!ELEMENT content-type (describer?)>
<!ATTLIST content-type
id CDATA #REQUIRED
base-type CDATA #IMPLIED
name CDATA #REQUIRED
file-extensions CDATA #IMPLIED
file-names CDATA #IMPLIED
priority (low|normal|high) "normal"
default-charset CDATA #IMPLIED>
- id - Kennung für diesen Inhaltstyp (einfacher ID-Token, der für Inhaltstypen innerhalb des Erweiterungsnamensbereiches eindeutig ist). Das Token darf weder Punkte
(.) noch Leerräume aufweisen.
- base-type - Die vollständig qualifizierte Kennung dieses Inhaltstyp-Basistyps. Dieser Inhaltstyp wird die Dateizuordnungen seines Basistyps, die Inhaltsbeschreibungsfunktion und den Standardzeichensatz übernehmen, wenn sie erneut definiert werden
- name - Der aussagekräftige Name dieses Inhaltstyps.
- file-extensions - Eine durch Komma getrennte Liste mit Dateierweiterungen, die diesem Inhaltstyp zugeordnet sein soll.
- file-names - Eine durch Komma getrennte Liste mit Dateinamen, die diesem Inhaltstyp zugeordnet sein soll.
- priority - Die Priorität für diesen Inhaltstyp. Priorities are used to solve conflicts (when two content types are associated to the same file name/extensionPrioritäten werden zur Lösung von Konflikten eingesetzt (wenn zwei Inhaltstypen demselben Dateinamen/derselben Dateierweiterung zugeordnet sind).
- default-charset - Standardzeichensatz für diesen Inhaltstyp oder eine leere Zeichenfolge, wenn dieser Inhaltstyp keinen Standardzeichensatz haben sollte, auch wenn das übergeordnete Element einen hat.
<!ELEMENT describer (parameter*)>
<!ATTLIST describer
class CDATA #REQUIRED>
- class - Der vollständig qualifizierte Name einer Klasse, die org.eclipse.core.runtime.content.IContentDescriber oderorg.eclipse.core.runtime.content.ITextContentDescriber oder eine leere Zeichenfolge implementiert, wenn dieser Inhaltstyp keine Beschreibungsfunktion haben sollte, auch wenn das übergeordnete Element eine hat.
<!ELEMENT file-association EMPTY>
<!ATTLIST file-association
content-type CDATA #REQUIRED
file-names CDATA #IMPLIED
file-extensions CDATA #IMPLIED>
- content-type - Die vollständig qualifizierte Kennung für den Inhaltstyp, den diese Dateizuordnung ergänzt.
- file-names - Eine durch Komma getrennte Liste mit Dateinamen, die dem Zielinhaltstyp zugeordnet sein soll.
- file-extensions - Eine durch Komma getrennte Liste mit Dateierweiterungen, die dem Zielinhaltstyp zugeordnet sein soll.
<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
- name - Der Name dieses Parameters, der für Exemplare der angegebenen Anwendungsklasse zur Verfügung gestellt wird.
- value - Der Wert dieses Parameters, der für Exemplare der angegebenen Anwendungsklasse zur Verfügung gestellt wird.
Beispiele:
Beispiel einer XML-basierten Inhaltstypdeklaration, die XMLRootElementContentDescriber
verwendet (eine integrierte Beschreibungsfunktion):
<extension point=
"org.eclipse.core.runtime.contentTypes"
>
<content-type id=
"ABC"
base-type=
"org.eclipse.core.runtime.xml"
file-extensions=
"a,b,c"
>
<describer class=
"org.eclipse.core.runtime.content.XMLRootElementContentDescriber"
>
<param name=
"element"
value=
"abc"
/>
</describer>
</content-type>
</extension>
Dies ist ein Beispiel für einen einfachen textbasierenden Inhaltstyp mit einer spezifischen Dateierweiterung:
<extension point=
"org.eclipse.core.runtime.contentTypes"
>
<content-type id=
"MyText"
base-type=
"org.eclipse.core.runtime.text"
file-extensions=
"mytxt"
/>
</extension>
In einem Fall, wie bei dem oben aufgeführten Beispiel, wenn wir einem vorhandenen Inhaltstyp nur neue Dateinamne/Dateierweiterungen zuordnen möchten, ist es normalerweise das Beste, eine neue Dateizuordnung zu ergänzen:
<extension point=
"org.eclipse.core.runtime.contentTypes"
>
<file-association
content-type=
"org.eclipse.core.runtime.text"
file-extensions=
"mytxt"
/>
</extension>
API-Information:
Der Wert des Attributs "class" in dem Beschreibungsfunktionselement muss ein Implementierungselement von org.eclipse.core.runtime.content.IContentDescriber oder org.eclipse.core.runtime.content.ITextContentDescriber darstellen.
Bereitgestellte Implementierung:
Der Plug-In org.eclipse.core.runtime stellt folgende Inhaltstypen zur Verfügung:
- org.eclipse.core.runtime.text
- org.eclipse.core.runtime.xml
Andere Plug-ins in der Plattform ergänzen andere Inhaltstypen.
Außerdem stellt das Plug-in 'org.eclipse.core.runtime' gebrauchsfertige Implementierungen von Inhaltsbeschreibungsfunktionen bereit:
- org.eclipse.core.runtime.content.XMLRootElementContentDescriber
- org.eclipse.core.runtime.content.BinarySignatureDescriber
Copyright (c) 2004 IBM Corporation und Andere.
Alle Rechte vorbehalten. Dieses Programm und sein Begleitmaterial werden gemäß
den Bedingungen in der "Common Public License v1.0" zur Verfügung gestellt, die diese Verteilung
begleitet und unter
http://www.eclipse.org/legal/cpl-v10.html abgerufen werden kann.