Autor Thema: (Diskussion) zlango.js  (Gelesen 3905 mal)

Dark-Water

  • Gast
(Diskussion) zlango.js
« am: 09. Juni 2009, 11:09:15 »
So ich habe mal angefangen mich mit der Zlango Problematik zu beschäftigen.
Ganz ehrlich gesagt steige ich nicht durch die von ICQ mitgelieferten JS Dateien durch.
Besser gesagt ich verstehe das mit der Function Deklaration bzw. Aufruf nicht, vielleicht kann mir das ja mal einer erklären :)

Der Code stammt original von der zlango.js von ICQ 6.5, ich hoffe ich kann das hier mal hineinstellen, wegen Copyright und so.
Wenn nicht, dann bitte gleich löschen !

component.prototype.onShutDown = function (reason)
{
debugger;
}

component.prototype.getConnector = function ()
{
return this.connector;
}

component.prototype.getLanguage = function ()
{
return this.language;
}

component.prototype.getWordListForShortcuts = function ()
{
return this.wordListForShortcuts;
}

component.prototype.getReadyMessagesDomObject = function ()
{
return this.readyMessagesDomObject;
}

component.prototype.getComposeCategoryList = function ()
{
return this.composeCategoryList;
}

component.prototype.getExtraCategoryList = function ()
{
return this.extraCategoryList;
}

Aber trotz alle dem hab ich schon mal einen ersten Anfang zusammengebastelt und dabei auch mich gelich mal ein wenig mit AJAX beschäftigt
aller Anfang is ja schwer  ;)
Es macht zwar noch net viel aber es liesst schon mal die Einträge aus der XML Datei aus und Pakt sie in einen Array
// Wenn alles funktioniert wird dann diese Pfad angabe verwendet
// var Sprache = "de-de"

var Woerter = new Array();

var objXMLwoerter = new ActiveXObject("MSXML2.DOMDocument.3.0");
objXMLwoerter.load("C:/Program Files (x86)/Miranda IM/ieview/!tools/zlango/data/de-de/words_dict.xml");


// Wenn alles funktioniert wird dann diese Pfad angabe verwendet
// objXMLwoerter.load(AbsoluterPfad + "/zlango/data/" + Sprache + "/words_dict.xml");

var objXMLbilder = new ActiveXObject("MSXML2.DOMDocument.3.0");
objXMLbilder.load(AbsoluterPfad + "/zlango/data/words.xml");

var XMLwoerter = objXMLwoerter.getElementsByTagName("syn");


function zlango (message) {

for (var i = 0; i < XMLwoerter.length; i++) {
   Woerter[i] = XMLwoerter.item(i).getAttribute("label");
   document.write(Woerter[i]);
}

// document.write (AbsoluterPfad + '/zlango/data/' + Sprache + '/words_dict.xml')
return message;
}
Vorschläg und alles was man sonst noch gebrauchen könnte ist gerne willkommen.

Alle nötigen Dateien für zlango befinden sich bei ICQ in dem Ordner
JS Dateien = ICQ6.5\services\icqXtraz\ver1\content\zlango
Bilder und XML Dateien = ICQ6.5\Packages\zlango\zlango

Die JS Dateien laden aber soweit ich das gesehen habe nur die übergeordneten Gruppen und nicht die eigentlichen darzustellen Wörter.

words_dict.xml enthält alle Wörter und Synonyme (pro Wort eine Nummer)
words.xml enthält alle Bilder (pro bild eine Nummer)

progandy

  • Plugin-Autor
  • Akkordschreiber
  • ***
  • Beiträge: 626
    • progandy@hot-chilli.net"
    • http://progandy.miranda-vi.org"
    • Profil anzeigen
    • ProgAndy
Re: (Diskussion) zlango.js
« Antwort #1 am: 09. Juni 2009, 18:20:31 »
wie sieht denn der Text aus, den man vom ICQ-Benutzer bekommt?
Jetzt wo ich weiss wie es funktioniert versteh ich auch die Gebrauchsanleitung
[Status: Jabber]

Dark-Water

  • Gast
Re: (Diskussion) zlango.js
« Antwort #2 am: 09. Juni 2009, 18:22:50 »
Der Text ist ganz Normaler Text, keine Befehle oder Webseitenaufrufe.
Es werden lediglich Wörter durch die Symbole ersetzt bzw. wird über den Text das Symbol gezeigt.

progandy

  • Plugin-Autor
  • Akkordschreiber
  • ***
  • Beiträge: 626
    • progandy@hot-chilli.net"
    • http://progandy.miranda-vi.org"
    • Profil anzeigen
    • ProgAndy
Re: (Diskussion) zlango.js
« Antwort #3 am: 09. Juni 2009, 18:25:08 »
Steht da keine Info, dass nun zlango kommt, wenn man es in Miranda empfängt? Dann kann man ja gar nicht unterscheiden, ob zlango jetzt aktiviert werden soll.
Jetzt wo ich weiss wie es funktioniert versteh ich auch die Gebrauchsanleitung
[Status: Jabber]

Dark-Water

  • Gast
Re: (Diskussion) zlango.js
« Antwort #4 am: 09. Juni 2009, 18:40:46 »
ja es soll das lesen durch Symbole vereinfacht werden.
In Miranda könnte man ja in der config.js ein Schalter einbauen.

Wie macht das ICQ eigentlich. Müsste ich glatt mal probieren.

Nem

  • Forenfetischist
  • ****
  • Beiträge: 888
  • Geschlecht: Männlich
    • Profil anzeigen
Re: (Diskussion) zlango.js
« Antwort #5 am: 09. Juni 2009, 20:01:35 »
Hi

1. alle Grafiken in einen Ordner packen.

2. parser.js für jedes Wort benutzen um die dazugehörige Grafik einzubinden:
z.B. das Wort:sehen:          message = message.replace(/(sehen)/g,'<img src="Pfad\$1.png">');

Die Grafik müßte dann als sehen.png vorliegen.

Gruß Nem
« Letzte Änderung: 09. Juni 2009, 20:03:35 von Nem »

Übersicht über die Java-Skripte: http://mirandanem.mi.funpic.de/



Dark-Water

  • Gast
Re: (Diskussion) zlango.js
« Antwort #6 am: 09. Juni 2009, 20:10:35 »
Wollte ich Anfangs auch so machen aber da die Bilder ja alle englisch beschriftet sind und das sind nicht wenige müsste man ja auf jeden Fall mit SELECT und CASE eine Übersetzung basteln oder eventuell was mit online Übersetzung. Ausserdem enthält die XML auch Synonyme für alle Wörter und für jede Sprache gibst eine extra XML Datei. deswegen wollte ich das mit den XML Dateien machen.

Nem

  • Forenfetischist
  • ****
  • Beiträge: 888
  • Geschlecht: Männlich
    • Profil anzeigen
Re: (Diskussion) zlango.js
« Antwort #7 am: 09. Juni 2009, 20:27:12 »
Am einfachsten wäre es die Namen der Grafiken zu ändern. Das dauert zwar anfangs etwas aber das Skript wäre danach schneller und nicht so hungrig.

Übersicht über die Java-Skripte: http://mirandanem.mi.funpic.de/



Dark-Water

  • Gast
Re: (Diskussion) zlango.js
« Antwort #8 am: 09. Juni 2009, 20:31:02 »
Hm ist eigentlich eine gute Idee und die englischen User könnten die originalen Bilder nehmen.

Dann werde ich mich da mal dransetzen.


Nem

  • Forenfetischist
  • ****
  • Beiträge: 888
  • Geschlecht: Männlich
    • Profil anzeigen
Re: (Diskussion) zlango.js
« Antwort #9 am: 09. Juni 2009, 22:26:37 »
Hmmm
nur dann müssen die Wörter auch 100%ig stimmen, die als Bild angezeigt werden sollen.

Soll heißen, wenn nur das Bild "sehen" existiert, dann wird auch nur das Wort "sehen"
als Bild gezeigt. Wörter wie "gesehen", "sah" oder "sieht" werden dann nicht verändert.

Eine Möglichleit wäre:
message = message.replace(/gesehen/g,'sehen');
message = message.replace(/siehst/g,'sehen');
message = message.replace(/sah/g,'sehen');
message = message.replace(/(sehen)/g,'<img src="Pfad\$1.png">');

Jedoch wie langsam wird das denn, wenn man 100e von Wörtern ersetzen möchte?

Gruß Nem



Übersicht über die Java-Skripte: http://mirandanem.mi.funpic.de/



Dark-Water

  • Gast
Re: (Diskussion) zlango.js
« Antwort #10 am: 10. Juni 2009, 00:07:51 »
Hm stimmt, deswegen wollte ich das ja per Array machen.

Es gibt ja die Möglichkeit anstelle von von vorne bis hinten durch zu zählen auch die Möglichkeit den Array immer wieder in der Mitte zu teilen und so schneller zum Ergebnis zu kommen. Zumindest hatte ich so was mal in QBasic programmiert für grosse Arrays.

progandy

  • Plugin-Autor
  • Akkordschreiber
  • ***
  • Beiträge: 626
    • progandy@hot-chilli.net"
    • http://progandy.miranda-vi.org"
    • Profil anzeigen
    • ProgAndy
Re: (Diskussion) zlango.js
« Antwort #11 am: 10. Juni 2009, 08:08:49 »
Du kannst das ja auch als XML-DOM lassen und dann mit selectSingleNode oder so zugreifen ;)
Jetzt wo ich weiss wie es funktioniert versteh ich auch die Gebrauchsanleitung
[Status: Jabber]

Dark-Water

  • Gast
Re: (Diskussion) zlango.js
« Antwort #12 am: 10. Juni 2009, 12:35:56 »
Ich weiss, aber ich hab noch überhaupt kein Plan wie das genau Funktioniert. ::)
Wenn du dich da genauer auskennst, kannst es mir ja vielleicht mal erklären.

progandy

  • Plugin-Autor
  • Akkordschreiber
  • ***
  • Beiträge: 626
    • progandy@hot-chilli.net"
    • http://progandy.miranda-vi.org"
    • Profil anzeigen
    • ProgAndy
Re: (Diskussion) zlango.js
« Antwort #13 am: 10. Juni 2009, 17:17:58 »
Ich weiss, aber ich hab noch überhaupt kein Plan wie das genau Funktioniert. ::)
Wenn du dich da genauer auskennst, kannst es mir ja vielleicht mal erklären.
Leider nicht. Vor allem weiß ich nicht, wie du das mit den Synonymen dann lösen kannst.
Jetzt wo ich weiss wie es funktioniert versteh ich auch die Gebrauchsanleitung
[Status: Jabber]