NerdkramsInternes
Ein wenig Java­Script-Nost­al­gie: clippy.js und WordPress

Älte­re, win­dows­er­fah­re­ne Anwen­der oder sol­che, die (etwa im öffent­li­chen Dienst) mit betag­ter Soft­ware arbei­ten dür­fen („müs­sen“ wäre zu viel gesagt, die aktu­el­len Office-Pake­te von Micro­soft sind eine Her­aus­for­de­rung für die Ner­ven jedes eini­ger­ma­ßen anspruchs­vol­len Anwen­ders), sind sicher bereits mit Micro­softs „Agen­ten“ – etwa dem Such­hund Rover aus Win­dows XP, der sei­ne Ursprün­ge noch in Micro­softs expe­ri­men­tel­ler Windows‑3.1‑Oberfläche Bob hat, oder dem längst legen­dä­ren, schreck­lich auf­dring­li­chen Karl Klam­mer aus Micro­soft Office – bekannt gemacht worden.

Eini­ge die­ser „Agen­ten“ waren seit Win­dows 2000 unter der Pro­dukt­be­zeich­nung „Micro­soft Agent“ sepa­rat lauf­fä­hig und sogar dazu in der Lage, Tex­te auf Web­sei­ten und sogar aus dem IRC – mIRC etwa bie­tet eine Schnitt­stel­le hier­für an – vor­zu­le­sen. Mit der Neu­ge­stal­tung von Office 2007 (Office 12) wur­de die­ser Office-Assi­stent von Anfang an durch ein neu­es Hil­fe­sy­stem ersetzt, das Pro­dukt Micro­soft Agent wird zukünf­tig nicht mehr gepflegt.

Das ist scha­de. Zum Glück kann man zumin­dest auf sei­ner Web­site die „Agen­ten“ wie­der­be­le­ben, clippy.js macht es mög­lich. Hier­für benö­tigt man ledig­lich die jQuery-Biblio­thek – in Word­Press bereits ent­hal­ten – und die Datei­en clippy.min.js und clippy.css aus dem Ver­zeich­nis „build“ des öffent­li­chen Git­Hub-repo­si­to­rys. Das Ein­bin­den in Word­Press bedarf jedoch ein wenig Hand­ar­beit, da Word­Press jQuery im Kom­pa­ti­bi­li­täts­mo­dus betreibt und der Ope­ra­tor $ somit nicht funk­ti­ons­tüch­tig ist. In der Datei clippy.min.js ist daher zunächst mit einem Text­edi­tor jedes „$“ durch „jQuery“ zu ersetzen.

Nun kön­nen die bei­den Datei­en in ein belie­bi­ges Ver­zeich­nis, bevor­zugt inner­halb des Word­Press-Stamm­ver­zeich­nis­ses, hoch­ge­la­den wer­den. Im Fol­gen­den wird davon aus­ge­gan­gen, dass clippy.js im Ver­zeich­nis /wordpress/clippy.js/ auf dem Ser­ver liegt.

Zunächst soll­te das Style­sheet ein­ge­bun­den wer­den. Dies erle­digt man bevor­zugt über den Word­Press-The­me-Edi­tor in der „Kopf­zei­le“ (header.php):

<link rel="stylesheet" href="<?php bloginfo('url'); ?>/clippy.js/clippy.css" type="text/css" media="screen" />

Soll­te der „Agent“ auf jeder Word­Press-Sei­te erschei­nen kön­nen, so ist es emp­feh­lens­wert, das Java­Script ent­we­der eben­falls hier oder in der Fuß­zei­le (footer.php) ein­zu­bin­den, anson­sten kann dies auch an geeig­ne­ter Stel­le (etwa in der Datei single.php) erfol­gen:

<script src="<?php bloginfo('url'); ?>/clippy.js/clippy.min.js"></script>

Der Auf­ruf des „Agen­ten“ und eine Durch­füh­rung von Aktio­nen erfolgt anschlie­ßend per Java­Script im body der Sei­te. Ich habe Karl Klam­mer („Clip­py“) hier auf der Such­ergeb­nis-Sei­te ein­ge­bun­den. Der ent­spre­chen­de Code im Erfolgs­fall sieht so aus:

<script type="text/javascript">
clippy.load('Clippy', function(agent){
  agent.show();
  agent.speak('Offensichtlich suchen Sie nach "<?php echo $_GET['s'] ?>". Hier Ihre Ergebnisse.');
  //agent.hide();
});
</script>

Das „Ver­stecken“ des Agen­ten ist hier aus­kom­men­tiert, da es unter Umstän­den sofort erfolgt und somit nicht viel zu sehen ist. Eine voll­stän­di­ge Doku­men­ta­ti­on ist der Web­site zu entnehmen.

Zu beach­ten ist, dass die Datei clippy.min.js die Agen­ten und die benö­tig­ten Java­Script- und CSS-Datei­en stan­dard­mä­ßig von Ama­zon S3 bezieht, das die Daten­schutz­be­stim­mun­gen der EU zwar berück­sich­tigt, was den­noch unter Umstän­den zu Miss­trau­en füh­ren kann. Als Alter­na­ti­ve ist es mög­lich, die ent­spre­chen­den Datei­en (eben­falls im Git­Hub-repo­si­to­ry zu fin­den) auf sei­nem eige­nen Ser­ver zu spei­chern und die Pfa­de in der Datei clippy.min.js anzupassen.

Senfecke:

  1. Nach US-ame­ri­ka­ni­scher Gesetz­ge­bung dürf­te die Nut­zung unter Fair Use fal­len, zumal „Karl Klam­mer“ ein US-ame­ri­ka­ni­sches Pro­dukt ist. Inwie­weit deut­sches Recht da über­haupt anwend­bar ist, ist also noch so eine Fra­ge. Im Übri­gen ist der Assi­stent, wie mei­nen Links zu ent­neh­men ist, ein Free­ware-Pro­dukt, ihn also unent­gelt­lich sei­nem eigent­li­chen Nut­zen zuzu­füh­ren hal­te ich für unbedenklich.

  2. Dass deut­sches Recht anwend­bar ist, steht außer Fra­ge. In der Tat behaup­tet Fireplace:

    Per­mis­si­on is her­eby gran­ted, free of char­ge, to any per­son blablabla…

    Ande­rer­seits heißt es:

    All Micro­soft agents, inclu­ding agent names, the Clip­py brand and all resour­ces are the pro­per­ty of Micro­soft and their respec­ti­ve owners.

    Aber wen­de Dich doch ein­fach an Micro­soft Deutsch­land. :twisted:

  3. Ja, das sei mein Beruf: Lügen, betrü­gen und denun­zie­ren. Zumin­dest will mir das Netz es so einreden.

  4. thx für die anlei­tung. Viel­leicht noch erwäh­nen, dass clippy.css auch im rich­ti­gen ver­zeich­nis lie­gen muss.

Comments are closed.

https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_smilenew.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_biggrin2.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_sadnew.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_eek.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_shocked.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_confusednew.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_coolnew.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_lol.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_madnew.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_aufsmaul.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_seb_zunge.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_blushnew.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_frown.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_twistedevil1.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_twistedevil2.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/icon_mad.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_rolleyesnew.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_wink2.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_idea2.gif  https://tuxproject.de/blog/wp-content/plugins/wp-monalisa/icons/smiley_emoticons_arrow2.gif 
mehr...
 
 

Erlaubte Tags:
<strong> <em> <pre> <code> <a href="" title=""> <img src="" title="" alt=""> <blockquote> <q> <b> <i> <del> <span style=""> <strike>

Datenschutzhinweis: Deine IP-Adresse wird nicht gespeichert. Details findest du hier.