Hat Ihnen dieser Beitrag gefallen?

t3n Social News ist ein offenes News- und Link-Portal rund um die Themenbereiche Open Source, Web 2.0, Webentwicklung, Apple, Linux und TYPO3.
Syntax Highlighter für TYPO3
GreenBanana GmbH hat für den Eigengebrauch eine TYPO3-Erweiterung programmiert, mit der Quelltext in verschiedenen Sprachen publiziert werden kann.
Websitebetreiber erhalten damit eine einfache Möglichkeit mit wenigen Klicks Quellcode lesbar und übersichtlich darzustellen.
Die Extension ist im offiziellen TYPO3 Extension Repository erhältlich.
Ein herzliches Dankeschen möchten wir an Herr Alex Gorbatchev richten. Er hat die verwendete JavaScript-Library programmiert.
Beispiel: PHP
/**
* initializes the flexform and all config options ;-)
*/
function init(){
$this->pi_initPIflexForm(); // Init and get the flexform data of the plugin
$this->lConf = array(); // Setup our storage array...
// Assign the flexform data to a local variable for easier access
$piFlexForm = $this->cObj->data['pi_flexform'];
// Traverse the entire array based on the language...
// and assign each configuration option to $this->lConf array...
foreach ( $piFlexForm['data'] as $sheet => $data ) {
foreach ( $data as $lang => $value ) {
foreach ( $value as $key => $val ) {
$this->lConf[$key] = $this->pi_getFFvalue($piFlexForm, $key, $sheet);
}
}
}
}
Beispiel: JavaScript
/**
* Creates new toolbar for a highlighter.
* @param {Highlighter} highlighter Target highlighter.
*/
create : function(highlighter)
{
var div = document.createElement('DIV'),
items = sh.toolbar.items
;
div.className = 'toolbar';
for (var name in items)
{
var constructor = items[name],
command = new constructor(highlighter),
element = command.create()
;
highlighter.toolbarCommands[name] = command;
if (element == null)
continue;
if (typeof(element) == 'string')
element = sh.toolbar.createButton(element, highlighter.id, name);
element.className += 'item ' + name;
div.appendChild(element);
}
return div;
},
Beispiel: XML
<T3DataStructure>
<sheets>
<sheet1>
<ROOT>
<TCEforms>
<sheetTitle>Syntax-Highlighter</sheetTitle>
</TCEforms>
<type>array</type>
<el>
<codesnippet>
<TCEforms>
<label>Code Snippet</label>
<config>
<type>text</type>
<cols>30</cols>
<rows>20</rows>
</config>
</TCEforms>
</codesnippet>
<language>
<TCEforms>
<label>Language</label>
<config>
<type>select</type>
<items type="array">
<numIndex index="0" type="array">
<numIndex index="0">Plain</numIndex>
<numIndex index="1">plain</numIndex>
</numIndex>
<numIndex index="1" type="array">
<numIndex index="0">Bash</numIndex>
<numIndex index="1">bash</numIndex>
</numIndex>
</items>
</config>
</TCEforms>
</language>
</el>
</ROOT>
</sheet1>
</sheets>
</T3DataStructure>
Kommentare
Blog Netiquette
Dieses Blog ist eine offene Dialog-Plattform, auf der Mitarbeiter von GreenBanana Beiträge veröffentlichen.
Umgangston im Blog vom GreenBanana
- Behandeln Sie andere hier im Blog immer so, wie Sie selbst behandelt werden möchten.
- Jeder hat eine eigene Meinung und das Recht seine Meinung hier kundzutun. Sachliche Diskussionen, auch eine gesunde Streitkultur ist bei kritischen Themen wünschenswert. «Hart, aber fair», lautet die Devise hier im Blog.
- In diesem Blog haben persönliche Angriffe, übertriebener Sarkasmus, Beleidigungen oder Beschimpfungen nichts zu suchen.
- Die Blog-Kommentarfunktion soll somit eine sachliche Diskussion ermöglichen. Um dies zu gewährleisten, behalten wir uns auch vor, Kommentare zu löschen, die einer Diskussion nicht dienlich sind und die sich nicht auf die Beiträge beziehen. Es besteht kein Anspruch auf Veröffentlichung.
Wir löschen bzw. sperren Kommentare bei:
- Aufforderungen zu Gewalt gegen Personen, Institutionen oder Unternehmen
- Pornografie
- Missbrauch als Werbefläche für Webseiten oder Dienste
- Rassismus und Hasspropaganda
- Beleidigungen, Verletzungen, persönliche Angriffe oder Entwürdigungen von Personen oder Firmen in jeglicher Form.
- Aufruf zu Demonstrationen und Kundgebungen jeglicher politischer Richtung
- Kommentare, die sich nicht auf den kommentierten Beitrag beziehen
Ausschlussklausel für Haftung
Die Kommentare zu unseren Beiträgen spiegeln allein die Meinung einzelner Leser wider. Für die Richtigkeit und Vollständigkeit der Inhalte übernimmt GreenBanana keinerlei Gewähr.



