aboutsummaryrefslogtreecommitdiffstats
path: root/draklive/9/el/content/search
diff options
context:
space:
mode:
authorPapoteur <papoteur@mageia.org>2023-06-11 15:31:32 +0200
committerPapoteur <papoteur@mageia.org>2023-06-11 15:31:32 +0200
commit08cd9375867f09293f90ac7bf66efd5ee7dac813 (patch)
tree607b5345444f1083b3be589591ad70172325eec4 /draklive/9/el/content/search
parent2c354b6aa7fef3cac9aa369bdb7a33310e971328 (diff)
downloaddoc-08cd9375867f09293f90ac7bf66efd5ee7dac813.tar
doc-08cd9375867f09293f90ac7bf66efd5ee7dac813.tar.gz
doc-08cd9375867f09293f90ac7bf66efd5ee7dac813.tar.bz2
doc-08cd9375867f09293f90ac7bf66efd5ee7dac813.tar.xz
doc-08cd9375867f09293f90ac7bf66efd5ee7dac813.zip
Adding or refreshing draklive in el
Diffstat (limited to 'draklive/9/el/content/search')
-rw-r--r--draklive/9/el/content/search/default.props1
-rw-r--r--draklive/9/el/content/search/en-us.props45
-rw-r--r--draklive/9/el/content/search/es-es.props179
-rw-r--r--draklive/9/el/content/search/htmlFileInfoList.js17
-rw-r--r--draklive/9/el/content/search/htmlFileList.js18
-rw-r--r--draklive/9/el/content/search/index-1.js479
-rw-r--r--draklive/9/el/content/search/index-2.js478
-rw-r--r--draklive/9/el/content/search/index-3.js475
-rw-r--r--draklive/9/el/content/search/ja-jp.props1
-rw-r--r--draklive/9/el/content/search/nwSearchFnt.js513
-rw-r--r--draklive/9/el/content/search/punctuation.props31
-rw-r--r--draklive/9/el/content/search/stemmers/de_stemmer.js247
-rw-r--r--draklive/9/el/content/search/stemmers/en_stemmer.js187
-rw-r--r--draklive/9/el/content/search/stemmers/fr_stemmer.js299
14 files changed, 2970 insertions, 0 deletions
diff --git a/draklive/9/el/content/search/default.props b/draklive/9/el/content/search/default.props
new file mode 100644
index 00000000..22edf439
--- /dev/null
+++ b/draklive/9/el/content/search/default.props
@@ -0,0 +1 @@
+DEF01=a \ No newline at end of file
diff --git a/draklive/9/el/content/search/en-us.props b/draklive/9/el/content/search/en-us.props
new file mode 100644
index 00000000..da284ce5
--- /dev/null
+++ b/draklive/9/el/content/search/en-us.props
@@ -0,0 +1,45 @@
+DEF01=this
+DEF02=is
+DEF03=the
+DEF04=in
+DEF05=i
+DEF06=on
+DEF07=a
+DEF08=about
+DEF09=an
+DEF10=are
+DEF11=as
+DEF12=at
+DEF13=be
+DEF14=by
+DEF15=com
+DEF16=de
+DEF17=en
+DEF18=for
+DEF19=from
+DEF20=how
+DEF21=it
+DEF22=la
+DEF23=of
+DEF24=on
+DEF25=or
+DEF26=that
+DEF27=to
+DEF28=was
+DEF29=what
+DEF30=when
+DEF31=where
+DEF32=who
+DEF33=will
+DEF34=with
+DEF35=und
+DEF36=Next
+DEF37=Prev
+DEF38=Home
+DEF39=Motive
+DEF40=Inc
+DEF41=Copyright
+DEF42=All
+DEF43=rights
+DEF44=reserved
+DEF45=Up \ No newline at end of file
diff --git a/draklive/9/el/content/search/es-es.props b/draklive/9/el/content/search/es-es.props
new file mode 100644
index 00000000..fb73bdcc
--- /dev/null
+++ b/draklive/9/el/content/search/es-es.props
@@ -0,0 +1,179 @@
+DEF01=un
+DEF02=una
+DEF03=unas
+DEF04=unos
+DEF05=uno
+DEF06=sobre
+DEF07=todo
+DEF08=tambin
+DEF09=tras
+DEF10=otro
+DEF11=algn
+DEF12=alguno
+DEF13=alguna
+DEF14=algunos
+DEF15=algunas
+DEF16=ser
+DEF17=es
+DEF18=soy
+DEF19=eres
+DEF20=somos
+DEF21=sois
+DEF22=estoy
+DEF23=esta
+DEF24=estamos
+DEF25=estais
+DEF26=estan
+DEF27=como
+DEF28=en
+DEF29=para
+DEF30=atras
+DEF31=porque
+DEF32=por
+DEF33=estado
+DEF34=estaba
+DEF35=ante
+DEF36=antes
+DEF37=siendo
+DEF38=ambos
+DEF39=pero
+DEF40=por
+DEF41=poder
+DEF42=puede
+DEF43=puedo
+DEF44=podemos
+DEF45=podeis
+DEF46=pueden
+DEF47=fui
+DEF48=fue
+DEF49=fuimos
+DEF50=fueron
+DEF51=hacer
+DEF52=hago
+DEF53=hace
+DEF54=hacemos
+DEF55=haceis
+DEF56=hacen
+DEF57=cada
+DEF58=fin
+DEF59=incluso
+DEF60=primero
+DEF61=desde
+DEF62=conseguir
+DEF63=consigo
+DEF64=consigue
+DEF65=consigues
+DEF66=conseguimos
+DEF67=consiguen
+DEF68=ir
+DEF69=voy
+DEF70=va
+DEF71=vamos
+DEF72=vais
+DEF73=van
+DEF74=vaya
+DEF75=gueno
+DEF76=ha
+DEF77=tener
+DEF78=tengo
+DEF79=tiene
+DEF80=tenemos
+DEF81=teneis
+DEF82=tienen
+DEF83=el
+DEF84=la
+DEF85=lo
+DEF86=las
+DEF87=los
+DEF88=su
+DEF89=aqui
+DEF90=mio
+DEF91=tuyo
+DEF92=ellos
+DEF93=ellas
+DEF94=nos
+DEF95=nosotros
+DEF96=vosotros
+DEF97=vosotras
+DEF98=si
+DEF99=dentro
+DEF100=solo
+DEF101=solamente
+DEF102=saber
+DEF103=sabes
+DEF104=sabe
+DEF105=sabemos
+DEF106=sabeis
+DEF107=saben
+DEF108=ultimo
+DEF109=largo
+DEF110=bastante
+DEF111=haces
+DEF112=muchos
+DEF113=aquellos
+DEF114=aquellas
+DEF115=sus
+DEF116=entonces
+DEF117=tiempo
+DEF118=verdad
+DEF119=verdadero
+DEF120=verdadera
+DEF121=cierto
+DEF122=ciertos
+DEF123=cierta
+DEF124=ciertas
+DEF125=intentar
+DEF126=intento
+DEF127=intenta
+DEF128=intentas
+DEF129=intentamos
+DEF130=intentais
+DEF131=intentan
+DEF132=dos
+DEF133=bajo
+DEF134=arriba
+DEF135=encima
+DEF136=usar
+DEF137=uso
+DEF138=usas
+DEF139=usa
+DEF140=usamos
+DEF141=usais
+DEF142=usan
+DEF143=emplear
+DEF144=empleo
+DEF145=empleas
+DEF146=emplean
+DEF147=ampleamos
+DEF148=empleais
+DEF149=valor
+DEF150=muy
+DEF151=era
+DEF152=eras
+DEF153=eramos
+DEF154=eran
+DEF155=modo
+DEF156=bien
+DEF157=cual
+DEF158=cuando
+DEF159=donde
+DEF160=mientras
+DEF161=quien
+DEF162=con
+DEF163=entre
+DEF164=sin
+DEF165=trabajo
+DEF166=trabajar
+DEF167=trabajas
+DEF168=trabaja
+DEF169=trabajamos
+DEF170=trabajais
+DEF171=trabajan
+DEF172=podria
+DEF173=podrias
+DEF174=podriamos
+DEF175=podrian
+DEF176=podriais
+DEF177=yo
+DEF178=aquel
+DEF179=qu \ No newline at end of file
diff --git a/draklive/9/el/content/search/htmlFileInfoList.js b/draklive/9/el/content/search/htmlFileInfoList.js
new file mode 100644
index 00000000..b04be917
--- /dev/null
+++ b/draklive/9/el/content/search/htmlFileInfoList.js
@@ -0,0 +1,17 @@
+fil = new Array();
+fil["0"]= "configureTimezoneUTC.html@@@Διαμόρφωση της ζώνης ώρας@@@null";
+fil["1"]= "ar01s02.html@@@Εκκίνηση της Mageia ως σύστημα Live@@@null";
+fil["2"]= "selectKeyboardLive.html@@@Επιλογή του πληκτρολογίου@@@null";
+fil["3"]= "login.html@@@Οθόνη σύνδεσης@@@null";
+fil["4"]= "diskPartitioning.html@@@Διαμερισμός@@@null";
+fil["5"]= "selectLanguage.html@@@Παρακαλώ επιλέξτε τη γλώσσα που θα χρησιμοποιηθεί@@@null";
+fil["6"]= "Select-and-use-ISOs.html@@@Επιλογή και χρήση των ISO@@@null";
+fil["7"]= "acceptLicense.html@@@Άδεια χρήσης και σημειώσεις έκδοσης@@@null";
+fil["8"]= "bestTime.html@@@Ρυθμίσεις του ρολογιού@@@null";
+fil["9"]= "installUpdates.html@@@Ενημερώσεις@@@null";
+fil["10"]= "addUser.html@@@Διαχείριση χρηστών:@@@null";
+fil["11"]= "reboot.html@@@Επανεκκίνηση@@@null";
+fil["12"]= "unused.html@@@Διατήρηση ή αφαίρεση των μη χρησιμοποιούμενων συσκευών@@@null";
+fil["13"]= "uninstall-Mageia.html@@@Απεγκατάσταση της Mageia@@@null";
+fil["14"]= "setupBootloader.html@@@Πρόγραμμα εκκίνησης@@@null";
+fil["15"]= "testing.html@@@Δοκιμάστε την Mageia ως σύστημα Live@@@null";
diff --git a/draklive/9/el/content/search/htmlFileList.js b/draklive/9/el/content/search/htmlFileList.js
new file mode 100644
index 00000000..bd9a535a
--- /dev/null
+++ b/draklive/9/el/content/search/htmlFileList.js
@@ -0,0 +1,18 @@
+//List of files which are indexed.
+fl = new Array();
+fl["0"]= "configureTimezoneUTC.html";
+fl["1"]= "ar01s02.html";
+fl["2"]= "selectKeyboardLive.html";
+fl["3"]= "login.html";
+fl["4"]= "diskPartitioning.html";
+fl["5"]= "selectLanguage.html";
+fl["6"]= "Select-and-use-ISOs.html";
+fl["7"]= "acceptLicense.html";
+fl["8"]= "bestTime.html";
+fl["9"]= "installUpdates.html";
+fl["10"]= "addUser.html";
+fl["11"]= "reboot.html";
+fl["12"]= "unused.html";
+fl["13"]= "uninstall-Mageia.html";
+fl["14"]= "setupBootloader.html";
+fl["15"]= "testing.html";
diff --git a/draklive/9/el/content/search/index-1.js b/draklive/9/el/content/search/index-1.js
new file mode 100644
index 00000000..40913ed8
--- /dev/null
+++ b/draklive/9/el/content/search/index-1.js
@@ -0,0 +1,479 @@
+var indexerLanguage="en";
+//Auto generated index for searching.
+w["-"]="6,10,13,14";
+w["-l"]="6";
+w["-sa"]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["0"]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["00"]="6";
+w["0027"]="10";
+w["0x2"]="6";
+w["0x81"]="6";
+w["1"]="4,6,14";
+w["1-1"]="6";
+w["100"]="6";
+w["1000"]="6";
+w["1100"]="6";
+w["12"]="4";
+w["128"]="6";
+w["14"]="6";
+w["160"]="4";
+w["18mjtwlmpucc3ssb"]="6";
+w["19"]="4";
+w["1m"]="6";
+w["2"]="4,6,14";
+w["255"]="6";
+w["27"]="6";
+w["2gb"]="6";
+w["3"]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["32"]="6,14";
+w["4"]="4,6";
+w["4096"]="4";
+w["4194304"]="6";
+w["43"]="6";
+w["4gb"]="6";
+w["5"]="4";
+w["50"]="4";
+w["50gb"]="4";
+w["512"]="4";
+w["512-byte"]="6";
+w["6"]="4";
+w["604531"]="6";
+w["64"]="6,14";
+w["7"]="13";
+w["72594"]="6";
+w["72595"]="6";
+w["770528"]="6";
+w["770533"]="6";
+w["770536"]="6";
+w["770537"]="6";
+w["770539"]="6";
+w["770713"]="6";
+w["770719"]="6";
+w["771122"]="6";
+w["772447"]="6";
+w["8"]="6,14";
+w["8564"]="6";
+w["8gb"]="6";
+w["963238"]="6";
+w["963626"]="6";
+w["964104"]="6";
+w["964108"]="6";
+w["965025"]="6";
+w["965031"]="6";
+w["967251"]="6";
+w["969446"]="6";
+w["acpi"]="14";
+w["advanc"]="14";
+w["ansi"]="6";
+w["apic"]="14";
+w["assum"]="6";
+w["attach"]="6";
+w["bio"]="1,4,14";
+w["bittorr"]="6";
+w["block"]="6";
+w["boot"]="4,14";
+w["bs"]="6";
+w["byte"]="4";
+w["cach"]="6";
+w["cc"]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["cd"]="6";
+w["cfg"]="14";
+w["com"]="14";
+w["configur"]="14";
+w["control"]="14";
+w["csm"]="1";
+w["custom"]="14";
+w["data"]="4";
+w["dd"]="6";
+w["del"]="1";
+w["desc"]="6";
+w["detect"]="6";
+w["dev"]="6";
+w["devic"]="6";
+w["direct-access"]="6";
+w["disk"]="6";
+w["diskdrak"]="4";
+w["dmesg"]="6";
+w["download"]="6";
+w["drakx"]="4,6,10,14";
+w["drakx-installer-stage2"]="6";
+w["drive"]="6";
+w["dvd"]="1,6,11,13,15";
+w["efi"]="4,14";
+w["en"]="14";
+w["enter"]="1";
+w["ep"]="6";
+w["esc"]="1";
+w["esp"]="4,14";
+w["f10"]="1";
+w["f11"]="1";
+w["f2"]="1";
+w["f8"]="1";
+w["fat32"]="13";
+w["fdisk"]="6";
+w["file"]="6";
+w["firefox"]="10";
+w["flash"]="6";
+w["found"]="6";
+w["gb"]="4,6";
+w["gib"]="6";
+w["gmt"]="0";
+w["gnome"]="3,6";
+w["gnu"]="6";
+w["gpart"]="4,13";
+w["gpt"]="4,14";
+w["grub"]="14";
+w["grub-custom"]="14";
+w["grub2"]="14";
+w["grub2-efi"]="14";
+w["grub2-efi_and_mageia"]="14";
+w["high-spe"]="6";
+w["home"]="4,6,10";
+w["host8"]="6";
+w["http"]="6,14";
+w["https"]="14";
+w["idproduct"]="6";
+w["idvendor"]="6";
+w["if"]="6";
+w["imag"]="6";
+w["input"]="6";
+w["interfac"]="14";
+w["interrupt"]="14";
+w["interv"]="6";
+w["irq"]="14";
+w["iso"]="6";
+w["isodump"]="6";
+w["jetflash"]="6";
+w["kde"]="3";
+w["kmail"]="10";
+w["lilo"]="14";
+w["linux"]="4,6,10,13";
+w["live"]="1,6,15";
+w["logic"]="6";
+w["mageia"]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["mageia-6-x86_64-dvd"]="6";
+w["manufactur"]="6";
+w["mass"]="6";
+w["master"]="14";
+w["mb"]="4,6";
+w["mbr"]="14";
+w["md5sum"]="6";
+w["mfr"]="6";
+w["mib"]="4";
+w["microfram"]="6";
+w["mode"]="6";
+w["net_applet"]="15";
+w["netinstal"]="6";
+w["netinstall-nonfre"]="6";
+w["new"]="6";
+w["no"]="6";
+w["ntfs"]="13";
+w["ntp"]="8";
+w["number"]="6";
+w["o"]="4";
+w["off"]="6";
+w["org"]="14";
+w["output"]="6";
+w["page"]="6";
+w["partit"]="4,14";
+w["path"]="6";
+w["plasma"]="3,6";
+w["power"]="14";
+w["pq"]="6";
+w["product"]="6";
+w["programm"]="14";
+w["protect"]="6";
+w["record"]="14";
+w["refind"]="14";
+w["remov"]="6";
+w["rodsbook"]="14";
+w["root"]="4,6,10,14";
+w["round"]="6";
+w["rufus"]="6";
+w["say"]="6";
+w["scsi"]="6";
+w["sd"]="6";
+w["sda"]="4";
+w["sda1"]="14";
+w["sdb"]="4,6";
+w["sdc"]="4";
+w["sdd"]="6";
+w["sdd1"]="6";
+w["sddm"]="3";
+w["sens"]="6";
+w["serialnumb"]="6";
+w["sha1sum"]="6";
+w["sha512sum"]="6";
+w["sha55122sum"]="6";
+w["smp"]="14";
+w["ssd"]="4,15";
+w["storag"]="6";
+w["string"]="6";
+w["su"]="6";
+w["swap"]="4";
+w["sync"]="6";
+w["system"]="4,14";
+w["through"]="6";
+w["thunderbird"]="10";
+w["transcend"]="6";
+w["uefi"]="1,4,14";
+w["umask"]="10";
+w["unicod"]="5";
+w["usb"]="1,4,6,11,14";
+w["usb-storag"]="6";
+w["use"]="6";
+w["user"]="6";
+w["utc"]="0,8";
+w["utf-8"]="5";
+w["var"]="4";
+w["video"]="4";
+w["vista"]="13";
+w["wiki"]="3,6,14";
+w["win32"]="6";
+w["window"]="4,6,13,14";
+w["write"]="6";
+w["www"]="14";
+w["x"]="6";
+w["x201c"]="4,6";
+w["x201d"]="4,6";
+w["xfce"]="6";
+w["xhci_hcd"]="6";
+w["xp"]="13";
+w[" "]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["©"]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["´"]="14";
+w["·"]="6";
+w["άγνωστο"]="13";
+w["άδεια"]="7";
+w["άδειας"]="7";
+w["άδειες"]="10";
+w["άθροισμα"]="6";
+w["άλλα"]="13,14";
+w["άλλες"]="4,14";
+w["άλλη"]="4";
+w["άλλο"]="4,10,14";
+w["άλλον"]="4";
+w["άλλου"]="4";
+w["άλλων"]="6,13,14";
+w["άνω"]="4";
+w["έκδοση"]="6,7,9";
+w["έκδοσης"]="6,7";
+w["έλεγχο"]="4";
+w["έλεγχος"]="1,4,6,15";
+w["έλλειψης"]="4";
+w["ένα"]="0,1,4,6,13,14";
+w["έναν"]="1,6,8,10,14,15";
+w["έναρξη"]="13";
+w["ένας"]="4,10,15";
+w["έξοδος"]="7";
+w["έπεισε"]="13";
+w["έπειτα"]="7";
+w["έτοιμος-η"]="4,11";
+w["έτσι"]="6,13";
+w["έχει"]="2,4,6,10,14";
+w["έχετε"]="0,4,6,10,11,13,14";
+w["έχουν"]="0,4,9";
+w["ή"]="0,1,3,4,6,8,9,10,12,13,14,15";
+w["ήδη"]="4,14,15";
+w["ήχος"]="15";
+w["ίδια"]="0,11";
+w["ίδιο"]="10";
+w["ίσως"]="1,6";
+w["α"]="14";
+w["αγγίξετε"]="14";
+w["αγγλική"]="6";
+w["αθροίσματα"]="6";
+w["αθροίσματος"]="6";
+w["αιτήσεις"]="14";
+w["ακεραιότητας"]="6";
+w["ακολουθήσει"]="11";
+w["ακολουθία"]="11";
+w["ακολουθούμενη"]="15";
+w["ακολουθούμενος"]="4";
+w["ακριβής"]="14";
+w["ακριβώς"]="14";
+w["ακόλουθων"]="4";
+w["ακόμα"]="13";
+w["αλγόριθμο"]="6";
+w["αλλά"]="4,6,10,13,14";
+w["αλλάζει"]="10";
+w["αλλάξετε"]="4,5,10";
+w["αλλάξτε"]="4";
+w["αλλαγές"]="6";
+w["αλλαγή"]="4,13,14";
+w["αλυσιδωτή"]="14";
+w["αλφαριθμητικών"]="6";
+w["αμέσως"]="1";
+w["αν"]="0,1,4,5,6,7,9,10,12,13,14,15";
+w["ανάγκες"]="4,6";
+w["ανάγνωση"]="6";
+w["ανάγνωσης"]="1,10";
+w["ανάκτηση"]="13";
+w["ανάλογα"]="3,4";
+w["αναβάθμιση"]="6";
+w["αναγνωρίσετε"]="13";
+w["αναγνωριστεί"]="14";
+w["αναγνωριστικό"]="6";
+w["αναγράφεται"]="4";
+w["αναδημιουργήσετε"]="6";
+w["αναδιαμορφώσετε"]="1";
+w["αναζητά"]="12";
+w["αναζητήστε"]="6";
+w["ανακτήσετε"]="6";
+w["αναλόγως"]="10";
+w["αναπτυσσόμενο"]="4";
+w["αναπτυσσόμενου"]="4";
+w["ανατρέξτε"]="3,4,6,14";
+w["αναφέραμε"]="6";
+w["ανεξαρτήτου"]="14";
+w["ανοίξει"]="6";
+w["ανοίξετε"]="6";
+w["ανοίξτε"]="6";
+w["ανοιχτό"]="4";
+w["αντί"]="4";
+w["αντίγραφα"]="4,13";
+w["αντιγράψτε"]="6";
+w["αντιγραφή"]="6,12";
+w["αντιγραφεί"]="6";
+w["αντιθέσει"]="13";
+w["αντικαταστήσετε"]="6";
+w["αντικείμενο"]="14";
+w["αντιστοιχούν"]="6";
+w["ανωτέρω"]="1,14";
+w["αξιόπιστη"]="14";
+w["απ"]="14";
+w["απαιτεί"]="14";
+w["απαιτείται"]="6,14";
+w["απαιτούνται"]="6";
+w["απαραίτητα"]="6";
+w["απαραίτητους"]="10";
+w["απεγκατάσταση"]="13";
+w["απεγκαταστήσετε"]="13";
+w["απελευθερωμένο"]="13";
+w["απενεργοποίηση"]="5";
+w["απενεργοποιηθεί"]="5";
+w["απευθείας"]="1";
+w["απλά"]="4,7,15";
+w["απλή"]="6";
+w["απλώς"]="1";
+w["αποδέχεστε"]="4";
+w["αποδεχτείτε"]="7,12";
+w["αποδοχή"]="7";
+w["αποεπιλέξτε"]="14";
+w["αποεπιλογή"]="14";
+w["αποθήκευση"]="6,13";
+w["αποθήκευσης"]="4";
+w["αποθετήρια"]="14";
+w["αποθηκευμένο"]="14";
+w["αποθηκεύετε"]="4";
+w["αποκαλούμε"]="6";
+w["αποκερμάτωση"]="4";
+w["αποκλειστικά"]="14";
+w["αποκτήσει"]="13";
+w["αποκωδικοποιητές"]="6";
+w["απολαύσετε"]="3";
+w["απολύτως"]="14";
+w["αποσυνδέσετε"]="6";
+w["αποτέλεσμα"]="6";
+w["αποτελεί"]="4";
+w["αποτυπωθεί"]="6";
+w["αποτυπώσετε"]="6";
+w["αποτυχαίνει"]="14";
+w["αποτύπωμα"]="6";
+w["αποτύπωση"]="6";
+w["αποφασίσετε"]="7,15";
+w["αποφυγή"]="10";
+w["από"]="0,1,4,5,6,9,10,12,13,14,15";
+w["αργό"]="1";
+w["αριθμού"]="14";
+w["αριθμό"]="4";
+w["αριθμός"]="4";
+w["αριθμών"]="10";
+w["αριστερά"]="4,13";
+w["αρκετά"]="1,10";
+w["αρχίζει"]="6";
+w["αρχεία"]="4,12,13";
+w["αρχείο"]="6";
+w["αρχείου"]="6";
+w["αρχείων"]="4,6,12";
+w["αρχική"]="6";
+w["αρχιτεκτονική"]="6,14";
+w["ασπίδα"]="10";
+w["ασφάλεια"]="14";
+w["ασφαλές"]="6";
+w["ασφαλείας"]="4,13";
+w["αυτά"]="1,4,6";
+w["αυτή"]="1,4,5,6,12,14";
+w["αυτήν"]="1,4,6,7,12,14,15";
+w["αυτομάτως"]="1,4";
+w["αυτούς"]="6";
+w["αυτό"]="4,5,6,10,11,12,14";
+w["αυτόματα"]="14";
+w["αυτόματο"]="8,14";
+w["αυτόν"]="14";
+w["αυτός"]="14";
+w["αφήσετε"]="4";
+w["αφήστε"]="10";
+w["αφαίρεση"]="12";
+w["αφαιρέσετε"]="4,11";
+w["αφαιρεθεί"]="14";
+w["αφαιρεθούν"]="12";
+w["αφαιρούμενο"]="14";
+w["αφορά"]="12";
+w["αφού"]="6,13,14";
+w["αχρησιμοποίητες"]="14";
+w["αχρησιμοποίητο"]="4";
+w["β"]="14";
+w["βάθος"]="14";
+w["βάθους"]="14";
+w["βάσει"]="0,2,4,6";
+w["βέβαιος-η"]="4";
+w["βήμα"]="10,12,15";
+w["βήματα"]="6,11";
+w["βίντεο"]="1,14";
+w["βαθύ"]="4";
+w["βελάκια"]="1";
+w["βελτιωθεί"]="9";
+w["βλέπετε"]="1,4";
+w["βλέπουμε"]="6";
+w["βοήθεια"]="4";
+w["βοηθήσει"]="6";
+w["βρέθηκαν"]="4";
+w["βρήκε"]="4";
+w["βρίσκεται"]="4,13";
+w["βρίσκονται"]="6";
+w["βραδύτερη"]="1";
+w["βρείτε"]="6";
+w["βρεθεί"]="4";
+w["βρεθείτε"]="3";
+w["γίνει"]="4,14";
+w["γενικώς"]="14";
+w["για"]="1,3,4,5,6,7,9,10,12,13,14,15";
+w["γκρίνουϊτς"]="0";
+w["γλώσσα"]="1,2,5,6";
+w["γλώσσας"]="1";
+w["γλώσσες"]="5,6";
+w["γνωρίζεται"]="14";
+w["γνωρίζετε"]="5,14";
+w["γνωστή"]="0";
+w["γνωστό"]="4";
+w["γράμμα"]="13";
+w["γραμμάτων"]="10";
+w["γραμμής"]="6";
+w["γραφεί"]="6";
+w["γραφείου"]="10";
+w["γραφικά"]="6";
+w["γραφικού"]="6";
+w["γραφικό"]="14";
+w["γραφικών"]="1,15";
+w["δίκτυο"]="6";
+w["δίνει"]="4,13,14";
+w["δίνεται"]="6,12,14";
+w["δίνετε"]="14";
+w["δίνονται"]="6";
+w["δίσκο"]="1,4,6,12,13,15";
+w["δίσκος"]="4";
+w["δίσκου"]="4,14";
+w["δίσκους"]="4";
+w["δίσκων"]="1,4,13";
+
diff --git a/draklive/9/el/content/search/index-2.js b/draklive/9/el/content/search/index-2.js
new file mode 100644
index 00000000..139ca4ce
--- /dev/null
+++ b/draklive/9/el/content/search/index-2.js
@@ -0,0 +1,478 @@
+//Auto generated index for searching.
+w["δείτε"]="1,4,6,7,11,12,14,15";
+w["δείχνει"]="11";
+w["δεδομένα"]="4,6,10";
+w["δεδομένων"]="4,6";
+w["δεν"]="1,4,5,6,9,10,12,13,14";
+w["δεξί"]="13";
+w["δευτερόλεπτα"]="3,14";
+w["δηλαδή"]="4";
+w["δημιουργήσετε"]="4,13";
+w["δημιουργία"]="4,6";
+w["δημιουργεί"]="4";
+w["δημιουργηθεί"]="4,14";
+w["δημιουργημένο"]="6";
+w["δημιουργούνται"]="4";
+w["διάκριση"]="10";
+w["διάσωση"]="6,13";
+w["διάταξη"]="2,4";
+w["διάφορα"]="4";
+w["διαβάστε"]="7";
+w["διαγράψει"]="4";
+w["διαγράψετε"]="12";
+w["διαγράψουν"]="10";
+w["διαγραφή"]="4,6,13";
+w["διαγραφής"]="4";
+w["διαδίκτυο"]="6,9,10";
+w["διαδικασία"]="14,15";
+w["διαδρομή"]="6";
+w["διαθέσει"]="4";
+w["διαθέσιμά"]="14";
+w["διαθέσιμα"]="6";
+w["διαθέσιμες"]="4,6";
+w["διαθέσιμη"]="4,14";
+w["διαθέσιμο"]="6,13,14";
+w["διαθέσιμος"]="4";
+w["διαθέσιμου"]="4";
+w["διαθέτει"]="1,6";
+w["διαθέτετε"]="4,14";
+w["διαθέτουν"]="15";
+w["διακινδυνευμένη"]="4";
+w["διακινδυνεύετε"]="6";
+w["διακομιστή"]="8";
+w["διακοπτών"]="14";
+w["διακοπών"]="14";
+w["διακόπτες"]="14";
+w["διακόπτοντας"]="14";
+w["διαμερισμού"]="4,15";
+w["διαμερισμό"]="4";
+w["διαμερισμός"]="4";
+w["διαμοιράσει"]="4";
+w["διαμόρφωση"]="0,4,6,10,14,15";
+w["διαμόρφωσης"]="6,14";
+w["διανέμεται"]="6";
+w["διανομή"]="7";
+w["διαρκεί"]="12";
+w["διαστήματος"]="4";
+w["διατήρηση"]="12";
+w["διατηρηθεί"]="15";
+w["διατηρηθούν"]="4";
+w["διαφορετικά"]="4,6,14,15";
+w["διαφορετικό"]="12,14";
+w["διαχείρισής"]="15";
+w["διαχείριση"]="10,11,13,14";
+w["διαχείρισης"]="13,14";
+w["διαχειρίζεται"]="14";
+w["διαχειριστή"]="6,10";
+w["διαχειριστή·"]="10";
+w["διαχειριστής"]="6";
+w["διαχειριστείτε"]="5";
+w["διεπαφή"]="14,15";
+w["διεργασία"]="6,12";
+w["διεργασίας"]="6,12";
+w["διεργασίες"]="1";
+w["δικά"]="4";
+w["δική"]="14";
+w["δικαίωμά"]="13";
+w["δικαιώματα"]="10";
+w["δικτυακή"]="6";
+w["δικτυακού"]="8";
+w["δικτύου"]="6,15";
+w["διπλές"]="1";
+w["διότι"]="6,14";
+w["δοκιμάσετε"]="6";
+w["δοκιμάστε"]="15";
+w["δοκιμάστηκε"]="4";
+w["δοκιμαστικής"]="15";
+w["δυνάμει"]="6";
+w["δυνατή"]="4";
+w["δυνατότητα"]="4,12,13,14";
+w["δυο"]="4,6";
+w["δυφίων"]="6,14";
+w["δύναμη"]="10";
+w["είδατε"]="15";
+w["είναι"]="1,4,5,6,10,11,13,14,15";
+w["είστε"]="4,9,11,14";
+w["είτε"]="6,14";
+w["εγγεγραμμένο"]="14";
+w["εγγράφου"]="15";
+w["εγγραφή"]="6,14";
+w["εγγραφής"]="1,6,10,14";
+w["εγγραφεί"]="6";
+w["εγγραφούν"]="10";
+w["εγγύηση"]="4";
+w["εγκαθιστά"]="14";
+w["εγκατάστασή"]="6";
+w["εγκατάσταση"]="1,4,5,6,7,9,10,12,14,15";
+w["εγκατάσταση·"]="6";
+w["εγκατάστασης"]="4,5,6,11,12,13,14,15";
+w["εγκαταλείψετε"]="15";
+w["εγκαταστάσεις"]="10";
+w["εγκαταστάσεων"]="6";
+w["εγκαταστάτη"]="4,6";
+w["εγκαταστάτης"]="4,6,14";
+w["εγκαταστήσει"]="1";
+w["εγκαταστήσετε"]="6,14";
+w["εγκαταστημένων"]="14";
+w["εγκατεστημένα"]="14";
+w["εγκατεστημένη"]="14";
+w["εγκατεστημένης"]="1,6";
+w["εγκατεστημένο"]="1,5";
+w["εγκατεστημένων"]="14";
+w["εδώ"]="2,4,6,8,10,14,15";
+w["ειδήμονα"]="4";
+w["εικονίδιο"]="10,15";
+w["εικόνα"]="4,6";
+w["εικόναiso"]="6";
+w["εικόνας"]="6,14";
+w["εικόνες"]="6";
+w["εικόνων"]="6";
+w["ειλημμένο"]="6";
+w["εισάγετε"]="6,10";
+w["εισαγάγετε"]="1,3,6,10";
+w["εισαγωγή"]="6,10";
+w["εισόδου"]="3,6";
+w["εκ"]="4,6";
+w["εκκίνηση"]="1,4,6,13,14,15";
+w["εκκίνησης"]="1,4,11,13,14";
+w["εκκινήσει"]="1";
+w["εκκινήσετε"]="1,14,15";
+w["εκκινήσεως"]="1";
+w["εκκινήσιμη"]="14";
+w["εκκινήσιμου"]="6";
+w["εκκινείται"]="14";
+w["εκκινηθεί"]="1";
+w["εκκινώντας"]="1";
+w["εκτέλεση"]="14";
+w["εκτελέσθηκε"]="15";
+w["εκτελεστεί"]="6,12";
+w["εκτιμάτε"]="14";
+w["εκτυπωτής"]="15";
+w["εκτός"]="4,14";
+w["εκτύπωση"]="15";
+w["εκχωρείται"]="4";
+w["εκχωρούνται"]="4";
+w["ελέγξει"]="10,14";
+w["ελέγξετε"]="15";
+w["ελέγξτε"]="4";
+w["ελέγχου"]="1,5,6,13,15";
+w["ελαφριά"]="6";
+w["ελεγκτή"]="14";
+w["ελευθερώσετε"]="13";
+w["ελεύθερο"]="4,6";
+w["ελεύθερος"]="4";
+w["ελεύθερου"]="4";
+w["εμπλέκει"]="4";
+w["εμφανίζει"]="4,6";
+w["εμφανίζεται"]="14";
+w["εμφανίσει"]="14";
+w["εμφανιστεί"]="10,12,14";
+w["εμφανιστούν"]="14";
+w["εν"]="1,3,6,10,13,14";
+w["ενέργεια"]="14";
+w["ενέργειας"]="14";
+w["ενέργειες"]="4";
+w["εναλλαγής"]="6";
+w["εναλλακτικά"]="1,6";
+w["εναλλακτική"]="14";
+w["ενδιαφέρον"]="7";
+w["ενεργοποίηση"]="14";
+w["ενεργοποιήσετε"]="8";
+w["ενεργοποιεί"]="14";
+w["ενεργοποιώντας"]="14";
+w["ενημέρωση"]="6,14";
+w["ενημερωθεί"]="9";
+w["ενημερώσεις"]="9";
+w["ενσωμάτωση"]="14";
+w["εντάξει"]="4,6,14,15";
+w["εντολή"]="6";
+w["εντολών"]="6";
+w["εντοπίζει"]="14";
+w["εντοπίσει"]="14";
+w["εντοπισμένο"]="4";
+w["εντοπισμού"]="6,14";
+w["εντοπισμό"]="14";
+w["εντοπισμός"]="14";
+w["εντοπιστεί"]="4";
+w["ενός"]="4,6,10,14,15";
+w["ενότητα"]="6,11,14,15";
+w["ενότητες"]="6";
+w["εξ"]="14";
+w["εξέλιξη"]="11";
+w["εξαιτίας"]="4";
+w["εξαρτάται"]="1";
+w["εξειδικευμένους"]="14";
+w["εξελιγμένη"]="14";
+w["εξοικονομεί"]="14";
+w["εξυπηρετούν"]="6";
+w["εξωτερικούς"]="14";
+w["εξόδου"]="6,15";
+w["επέκταση"]="6";
+w["επίσης"]="4,6,10";
+w["επαναλάβετε"]="6,10,14";
+w["επαναφορά"]="13";
+w["επανεκκίνηση"]="1,7,11";
+w["επανεκκίνησης"]="11";
+w["επανεκκινήσεις"]="14";
+w["επανεκκινήσετε"]="1";
+w["επανεκκινήστε"]="13";
+w["επεκτείνετε"]="13";
+w["επεξεργασία"]="4,14";
+w["επεξεργαστές"]="14";
+w["επεξεργαστείτε"]="14";
+w["επιβεβαίωση"]="4";
+w["επιβεβαιωμένο"]="6";
+w["επιθυμείτε"]="4,9,14";
+w["επιθυμητή"]="4";
+w["επικίνδυνο"]="6";
+w["επικύρωσης"]="4";
+w["επιλέγεται"]="6";
+w["επιλέγοντας"]="0";
+w["επιλέξατε"]="6,14";
+w["επιλέξει"]="4,6";
+w["επιλέξετε"]="0,1,4,6,8,14,15";
+w["επιλέξτε"]="0,4,5,7,9,10,13,14";
+w["επιλεγμένη"]="4";
+w["επιλεγμένο"]="4,6";
+w["επιλογές"]="1,4,6,14";
+w["επιλογή"]="1,2,4,5,6,13,14";
+w["επιλογής"]="13";
+w["επιλογών"]="1,14";
+w["επιπλέον"]="10,12";
+w["επιπροσθέτως"]="4";
+w["επιπτώσεις"]="14";
+w["επισκευή"]="6";
+w["επιστρέψετε"]="4";
+w["επιτρέπει"]="4,6,14";
+w["επιτρέπουν"]="14";
+w["επιτρέψει"]="14";
+w["επιφάνεια"]="6,15";
+w["επιφάνειας"]="6";
+w["επιφανειών"]="6";
+w["επόμενες"]="6";
+w["επόμενη"]="0,6,13";
+w["επόμενο"]="4,7,9,10,12,14";
+w["εργαλεία"]="6,13";
+w["εργαλείο"]="4,6";
+w["εργαλείου"]="4,6";
+w["εργασία"]="4";
+w["εργασίας"]="3,6,15";
+w["ερωτηθείτε"]="6";
+w["εσάς"]="15";
+w["ετικέτα"]="13";
+w["ετικέτας"]="4";
+w["ευελιξία"]="6";
+w["ευθύνη"]="14";
+w["ευχαριστούμε"]="7";
+w["εφαρμογές"]="10";
+w["εφαρμογή"]="6";
+w["εφαρμογών"]="10";
+w["εφαρμοστεί"]="5";
+w["εφεδρικά"]="13";
+w["εφεξής"]="3";
+w["εύρεση"]="6";
+w["εύρος"]="6";
+w["ζεύγος"]="1";
+w["ζυγό"]="4";
+w["ζωντανά"]="6";
+w["ζωντανής"]="15";
+w["ζωντανο"]="6";
+w["ζωντανού"]="1,6,15";
+w["ζωντανό"]="1,6,11";
+w["ζώνη"]="0,2";
+w["ζώνης"]="0,6";
+w["η"]="1,4,5,6,9,10,11,12,13,14,15";
+w["θέλατε"]="4";
+w["θέλετε"]="4,6,10,13,14";
+w["θέση"]="14";
+w["θα"]="1,3,4,5,6,7,10,11,12,13,14,15";
+w["θεωρείται"]="14";
+w["ιδιόκτητο"]="6";
+w["ιδιόκτητου"]="6";
+w["ιδιόκτητους"]="1";
+w["ικανοποιήσετε"]="4";
+w["ισχυρός"]="10";
+w["ισχύουν"]="7";
+w["κάθε"]="4,6,10,13";
+w["κάνατε"]="1";
+w["κάνει"]="4,6,10";
+w["κάνετε"]="4,6,9,10,11,13,14,15";
+w["κάνοντας"]="4,7";
+w["κάνουν"]="10";
+w["κάντε"]="1,4,6,7,9,13,14";
+w["κάποια"]="4,14";
+w["κάποιες"]="6";
+w["κάποιο"]="4,14";
+w["κάρτα"]="1,15";
+w["κάρτας"]="0,8";
+w["κάτι"]="14";
+w["κάτω"]="4,14";
+w["κέντρο"]="5,15";
+w["κίτρινο"]="10";
+w["καθαρή"]="4,6";
+w["καθαρίσετε"]="4";
+w["καθαρισμός"]="4";
+w["καθαρών"]="6";
+w["καθορίσετε"]="6,8";
+w["καθορισμός"]="10";
+w["καθρεπτισμό"]="6";
+w["καθυστέρηση"]="14";
+w["καθυστέρησης"]="14";
+w["καθώς"]="10";
+w["και"]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["καλό"]="14";
+w["καλύτερα"]="6";
+w["κανόνων"]="4";
+w["καρτέλα"]="4,8";
+w["κατ"]="6";
+w["κατά"]="1,6,10,11,13,14";
+w["κατάληξη"]="1";
+w["κατάλληλο"]="5";
+w["κατάλληλου"]="4,14";
+w["κατάλογο"]="4,10,14";
+w["κατάστιχο"]="1,4,12";
+w["κατάτμηση"]="4,6,13,14";
+w["κατάτμησης"]="4,13,14";
+w["καταλαβαίνετε"]="14";
+w["καταλόγων"]="11";
+w["καταστροφή"]="6";
+w["κατατετμημένο"]="4";
+w["κατατμήσεις"]="4,6,13";
+w["κατατμήσεων"]="4,13";
+w["καταχωρήσει"]="14";
+w["καταχώρησης"]="14";
+w["κατωτέρω"]="4";
+w["κειμένου"]="10,14";
+w["κενό"]="4";
+w["κεφαλαίων"]="10";
+w["κλασσική"]="6";
+w["κλασσικής"]="6";
+w["κλασσικό"]="6";
+w["κλασσικός"]="6";
+w["κλείσει"]="4";
+w["κλείσετε"]="11";
+w["κλειδί"]="1,4,6,11,14";
+w["κλειδιού"]="6";
+w["κλικ"]="4,6,7,9,10,12,13,14,15";
+w["κλπ"]="4";
+w["κοινά"]="1,6";
+w["κοινόχρηστο"]="4";
+w["κοντά"]="0";
+w["κορυφή"]="4";
+w["κουμπί"]="7,10";
+w["κουμπιού"]="15";
+w["κρυπτογράφηση"]="4";
+w["κρυπτογράφησης"]="4";
+w["κυανό"]="4";
+w["κυκλοφόρησε"]="9";
+w["κυρίως"]="6";
+w["κωδικοί"]="10";
+w["κωδικού"]="10,14";
+w["κωδικό"]="3,10,14";
+w["κωδικός"]="10,14";
+w["κωδωνισμός"]="15";
+w["κωλύματα"]="14";
+w["κόκκινο"]="10";
+w["κύρια"]="4";
+w["κύριες"]="4,14";
+w["λάβετε"]="14";
+w["λέγεται"]="10";
+w["λήψη"]="6,9";
+w["λήψης"]="11";
+w["λίγα"]="13";
+w["λίγο"]="6,12";
+w["λίστα"]="4";
+w["λαθών"]="10";
+w["λαμβάνετε"]="15";
+w["λανθασμένα"]="6";
+w["λείπει"]="14";
+w["λειτουργία"]="1,4,14,15";
+w["λειτουργίας"]="15";
+w["λειτουργικά"]="0,14";
+w["λειτουργικού"]="6,13,14";
+w["λειτουργικό"]="1,14";
+w["λειτουργικών"]="4,13,14";
+w["λεπτομέρειές"]="4";
+w["λεπτομερειών"]="4";
+w["λευκή"]="12";
+w["ληφθέντος"]="6";
+w["λιγότερα"]="10";
+w["λιγότερες"]="6";
+w["λογικούς"]="4";
+w["λογικών"]="4";
+w["λογισμικού"]="6,11";
+w["λογισμικό"]="6,14";
+w["λοιπών"]="10";
+w["λόγια"]="13";
+w["λόγο"]="4";
+w["λόγος"]="12";
+w["λόγω"]="14";
+w["λύση"]="14";
+w["μέγεθος"]="4,13,14";
+w["μέγεθός"]="4";
+w["μέγιστη"]="6";
+w["μέγιστο"]="4";
+w["μέθοδος"]="14";
+w["μέρος"]="4";
+w["μέσα"]="6";
+w["μέσο"]="1,3,6";
+w["μέσος"]="10";
+w["μέσου"]="1,6,15";
+w["μέσω"]="6,14,15";
+w["μέσων"]="6,11";
+w["μέχρι"]="4";
+w["μήνυμα"]="14";
+w["μας"]="6,14";
+w["με"]="1,2,3,4,6,7,10,11,12,13,14,15";
+w["μεγέθη"]="4";
+w["μεγέθους"]="6,14";
+w["μεγαλύτερα"]="4";
+w["μεγαλύτερος"]="4";
+w["μενού"]="1,4,14,15";
+w["μερικά"]="3,6,9,10";
+w["μερικές"]="10";
+w["μερικοί"]="4";
+w["μερικούς"]="14";
+w["μετά"]="1,5,10,11,12";
+w["μεταβείτε"]="14";
+w["μετακινηθεί"]="4";
+w["μεταξύ"]="4,6,10";
+w["μη"]="4,12";
+w["μην"]="4,6,7,14";
+w["μητρική"]="1";
+w["μητρικής"]="0,8";
+w["μηχάνημα"]="14";
+w["μια"]="0,2,4,6,10,11,12,13,14";
+w["μιας"]="1,4,6,14,15";
+w["μικρές"]="6";
+w["μικρό"]="6";
+w["μικρότερα"]="6";
+w["μικρότερος"]="4";
+w["μικτών"]="10";
+w["μνήμης"]="1,6";
+w["μοναδική"]="4";
+w["μορφή"]="10";
+w["μορφοποίηση"]="4";
+w["μορφοποιήσετε"]="4,6,13";
+w["μορφοποιηθούν"]="4";
+w["μορφοποιημένο"]="6";
+w["μπορέσετε"]="4";
+w["μπορεί"]="4,5,6,14";
+w["μπορείτε"]="0,1,2,3,4,5,6,7,8,10,12,13,14,15";
+w["μπορούν"]="4,6,10,13";
+w["μόνη"]="6";
+w["μόνο"]="1,4,6,13,14";
+w["μόνον"]="14";
+w["νέα"]="4,13";
+w["νέο"]="14";
+w["νέοι"]="4";
+w["νέου"]="14";
+w["να"]="0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["ναι"]="9";
+w["νωρίτερα"]="6";
+w["ξένου"]="14";
+w["ξανά"]="4,10,14";
+w["ξεκινά"]="1";
+w["ξεκινήσετε"]="4";
+w["ξεφορτωθείτε"]="13";
+
diff --git a/draklive/9/el/content/search/index-3.js b/draklive/9/el/content/search/index-3.js
new file mode 100644
index 00000000..ec396525
--- /dev/null
+++ b/draklive/9/el/content/search/index-3.js
@@ -0,0 +1,475 @@
+//Auto generated index for searching.
+w["ξεχάσετε"]="6";
+w["ξεχωριστή"]="4";
+w["ο"]="1,4,6,10,14,15";
+w["οδηγοί"]="4";
+w["οδηγούς"]="1,4,6";
+w["οδηγό"]="1,4,5,6,14,15";
+w["οδηγός"]="4";
+w["οθόνη"]="0,1,3,4,5,6,12,15";
+w["οθόνης"]="14";
+w["οι"]="4,6,7,10,13,14,15";
+w["ολα"]="4";
+w["ολοκλήρωση"]="6";
+w["ολόκληρη"]="7";
+w["ολόκληρο"]="4";
+w["ολόκληρου"]="4";
+w["ονόματος"]="10";
+w["οπισθοδρομήσετε"]="4";
+w["οποία"]="1,4,10";
+w["οποίες"]="4,6";
+w["οποίο"]="6,14";
+w["οποίος"]="6";
+w["οποιαδήποτε"]="4";
+w["οποιουδήποτε"]="6";
+w["ορίζει"]="14";
+w["ορίσετε"]="4,14";
+w["ορίστε"]="10";
+w["ορισμού"]="14";
+w["ορισμό"]="8,14";
+w["ορισμός"]="6";
+w["οριστεί"]="4";
+w["οτιδήποτε"]="10";
+w["ούτως"]="4";
+w["π"]="14";
+w["πάντα"]="4,13";
+w["πάρει"]="4,13";
+w["πέρας"]="1,11,12";
+w["πίνακας"]="13";
+w["παίζει"]="10";
+w["παγκόσμια"]="8";
+w["παιχνίδια"]="10";
+w["πακέτα"]="6,9,12";
+w["πακέτων"]="6";
+w["παλαιού"]="1,14";
+w["παλαιών"]="14";
+w["παλιά"]="14";
+w["παλιό"]="4,14";
+w["παρά"]="1";
+w["παράδειγμα"]="4,6,14";
+w["παράθυρο"]="6";
+w["παράμετροι"]="10";
+w["παρέχει"]="4,6";
+w["παρέχουμε"]="6";
+w["παραδείγματος"]="6,14";
+w["παρακάτω"]="4,6,14";
+w["παρακαλώ"]="5,7";
+w["παραπάνω"]="6";
+w["παρατηρήσετε"]="11";
+w["παρούσα"]="4";
+w["παρόλο"]="14";
+w["πείτε"]="14";
+w["πεδίο"]="4,10";
+w["πεζών"]="10";
+w["περάσετε"]="14";
+w["περίπτωσή"]="6";
+w["περίπτωση"]="1,6";
+w["περασμένες"]="14";
+w["περιέχει"]="6";
+w["περιέχουν"]="6";
+w["περιβάλλον"]="3,6,14";
+w["περιβάλλοντα"]="6";
+w["περιβάλλοντος"]="6";
+w["περιεχόμενο"]="4";
+w["περιλαμβάνει"]="6";
+w["περιμένετε"]="1,6";
+w["περιοχής"]="4";
+w["περιπτώσεις"]="6,14";
+w["περισσότερα"]="0,14";
+w["περισσότερες"]="4,6,14";
+w["περισσότερο"]="14";
+w["περιττά"]="12";
+w["πηγής"]="6";
+w["πιέσετε"]="1";
+w["πιέστε"]="1,11";
+w["πια"]="14";
+w["πιθανών"]="1";
+w["πιο"]="6";
+w["πιστεύετε"]="14";
+w["πλήκτρα"]="1";
+w["πλήρη"]="3,4";
+w["πλήρους"]="6";
+w["πλαίσιο"]="10,14";
+w["πληκτρολογήσει"]="10";
+w["πληκτρολογήστε"]="6";
+w["πληκτρολογίου"]="2";
+w["πληκτρολογίου​​"]="2";
+w["πληκτρολογείστε"]="10";
+w["πληκτρολογείτε"]="10";
+w["πληκτρολόγηση"]="14";
+w["πληκτρολόγησης"]="10";
+w["πληροφορίες"]="4,6,7,14";
+w["πλοηγείται"]="10";
+w["ποια"]="6";
+w["ποιες"]="4";
+w["ποικίλουν"]="4";
+w["πολλά"]="6";
+w["πολλαπλές"]="1,4,5";
+w["πολλαπλών"]="14";
+w["πολυδιεργασία"]="14";
+w["πολυχρησιμοποιείται"]="14";
+w["πολύ"]="6,12";
+w["πολύπλοκα"]="14";
+w["που"]="1,3,4,5,6,9,10,12,13,14,15";
+w["πράσινη"]="10";
+w["πράσινο"]="10";
+w["πράττετε"]="14";
+w["πρέπει"]="1,4,6,7,10,14";
+w["πραγματικού"]="10";
+w["πραγματικό"]="10";
+w["πραγματοποίηση"]="6";
+w["πραγματοποιήσατε"]="15";
+w["πραγματοποιήσετε"]="4,6,9,13";
+w["πριν"]="4,7,14";
+w["προαιρετικό"]="14";
+w["προβάλετε"]="4";
+w["προβλήματα"]="14";
+w["προβολή"]="4";
+w["προγράμματα"]="14";
+w["προγράμματος"]="6,11,13,14";
+w["προγραμμάτων"]="14";
+w["προγραμματιζόμενο"]="14";
+w["προειδοποίηση"]="4,6,14";
+w["προεπιλεγεί"]="2";
+w["προεπιλεγμένης"]="14";
+w["προεπιλογή"]="5,10";
+w["προεπισκόπηση"]="6";
+w["προηγείται"]="4";
+w["προηγμένες"]="8";
+w["προηγμένες3"]="12";
+w["προηγμένη"]="14";
+w["προηγμένο"]="14";
+w["προηγουμένως"]="10";
+w["προηγούμενα"]="6";
+w["προηγούμενη"]="6,14,15";
+w["προηγούμενο"]="4";
+w["προηγούμενου"]="4,6";
+w["προηγούμενων"]="2";
+w["προκαθορισμένο"]="14";
+w["προκαλέσει"]="14";
+w["προοριζόμενο"]="4";
+w["προς"]="4,6,14";
+w["προσάρτησης"]="4";
+w["προσέξτε"]="4";
+w["προσαρμοσμένη"]="4";
+w["προσαρμοσμένο"]="4";
+w["προσαρμόσετε"]="4";
+w["προσαρτήσετε"]="6";
+w["προσαρτηθεί"]="4";
+w["προσαρτημένη"]="4";
+w["προσεκτικά"]="7";
+w["προσθέσει"]="14";
+w["προσθέσετε"]="10,14";
+w["προσθέτετε"]="10";
+w["προσθήκη"]="6,14";
+w["προσοχή"]="10";
+w["προσοχη"]="4";
+w["προσπέλαση"]="1";
+w["προσπαθήσετε"]="1,6";
+w["προσπαθεί"]="14";
+w["προσπελάσετε"]="1";
+w["προστασία"]="10";
+w["προσφάτως"]="14";
+w["προσωπικό"]="4,10";
+w["προτάσεις"]="4";
+w["προτέρων"]="4";
+w["προτίμησής"]="5";
+w["προταθεί"]="11";
+w["προτείνει"]="4";
+w["προτεινόμενης"]="4";
+w["προτεραιότητα"]="1";
+w["προτιμούν"]="6";
+w["προτιμώμενη"]="2";
+w["προτιμώμενος"]="4";
+w["προχωρήσετε"]="1,12,14,15";
+w["προχωρημένους"]="4,14";
+w["προόδου"]="11";
+w["πρωτόκολλο"]="8";
+w["πρόγραμμα"]="4,12,14";
+w["πρόκειται"]="4,6,12";
+w["πρόσβαση"]="6,10,14";
+w["πρόσβασης"]="3,10,14";
+w["πρόταση"]="12";
+w["πρότυπα"]="14";
+w["πρότυπο"]="14";
+w["πρότυπου"]="4";
+w["πρώτα"]="4,6";
+w["πρώτη"]="1";
+w["πρώτου"]="14";
+w["πυρήνα"]="14";
+w["πυρήνων"]="14";
+w["πχ"]="6,14";
+w["πως"]="4,6";
+w["πόλη"]="0";
+w["ράβδων"]="11";
+w["ριζική"]="4";
+w["ρολογιού"]="0,8";
+w["ρυθμίσεις"]="8";
+w["ρυθμίσεων"]="2";
+w["ρυθμίστε"]="2";
+w["ρυθμιστεί"]="0";
+w["ρύθμιση"]="0,14";
+w["ρύθμισης"]="14";
+w["σάρωση"]="15";
+w["σίγουρος-η"]="4";
+w["σαρωτής"]="15";
+w["σας"]="0,4,5,6,7,11,12,13,14,15";
+w["σε"]="0,1,3,4,5,6,8,10,11,12,13,14,15";
+w["σειρά"]="11";
+w["σελίδα"]="6";
+w["σελίδας"]="15";
+w["σημαίνει"]="4,6,10,14,15";
+w["σημαντικά"]="6,13";
+w["σημαντικές"]="7";
+w["σημαντικό"]="4,6,11";
+w["σημαντικών"]="4";
+w["σημεία"]="4";
+w["σημείο"]="4";
+w["σημείου"]="4";
+w["σημείων"]="4";
+w["σημείωση"]="0,1,4,6,10,14,15";
+w["σημειωθεί"]="4";
+w["σημειώσεις"]="7";
+w["σημειώστε"]="14";
+w["σιγουρευτείτε"]="0,4,6,11";
+w["σκληρού"]="4,14";
+w["σκληρούς"]="4";
+w["σκληρό"]="1,4,6,12,15";
+w["σκληρός"]="4";
+w["σκληρών"]="4";
+w["σκοπεύετε"]="4";
+w["σκοπούς"]="15";
+w["σκοπό"]="4";
+w["στα"]="4,6,13,14";
+w["στη"]="4,6,13,15";
+w["στην"]="0,1,3,4,5,6,8,11,13,14,15";
+w["στιγμή"]="9";
+w["στιγμιότυπο"]="4,14";
+w["στιγμιότυπο·"]="6";
+w["στις"]="4,6,14";
+w["στο"]="0,1,3,4,6,7,9,10,12,13,14,15";
+w["στοίχιση"]="4";
+w["στον"]="0,1,4,6,10,12,13,14,15";
+w["στους"]="4";
+w["συγκεκριμένα"]="6";
+w["συγκεκριμένη"]="9";
+w["συγκεκριμένης"]="1";
+w["συγκεκριμένο"]="4";
+w["συγκρίνετε"]="6";
+w["συγκρίσει"]="1";
+w["συγχρονισμό"]="8";
+w["συμβαίνει"]="6";
+w["συμβατές"]="4";
+w["συμβατότητας"]="15";
+w["συμβολοσειρά"]="6";
+w["συμμετρική"]="14";
+w["συμπεριφορά"]="12";
+w["συμφωνείτε"]="4";
+w["συνέχεια"]="4,6,13,15";
+w["συνέχιση"]="6";
+w["συνήθως"]="1,4,14";
+w["συνδέσετε"]="1";
+w["συνδέστε"]="6";
+w["συνδεδεμένο"]="1";
+w["συνδεδεμένος-η"]="9";
+w["συνδεθεί"]="14";
+w["συνδεθείτε"]="6";
+w["συνεχίσετε"]="1,4,7,9";
+w["συνεχίστε"]="4";
+w["συνηθίζεται"]="10";
+w["συνθήκες"]="7";
+w["συνιστάται"]="10,14";
+w["συνιστούμε"]="4";
+w["συνολικά"]="4";
+w["συνολική"]="6";
+w["συνολικού"]="4";
+w["συνολικός"]="4";
+w["συντονισμένη"]="8";
+w["συρρίκνωση"]="4";
+w["συσκευές"]="14,15";
+w["συσκευή"]="1,4,6,14,15";
+w["συσκευής"]="6";
+w["συσκευών"]="1,6,12";
+w["συστήματα"]="0,14";
+w["συστήματος"]="1,4,6,13,14,15";
+w["συστήματός"]="5";
+w["συστημάτων"]="4,13,14";
+w["σφαλμάτων"]="14";
+w["σχέση"]="6";
+w["σχήμα"]="4";
+w["σχετικά"]="2,6,7";
+w["σωστά"]="4,13";
+w["σωστές"]="6";
+w["σωστή"]="4";
+w["σωστής"]="15";
+w["σωστού"]="4";
+w["σύμφωνα"]="14";
+w["σύνδεση"]="6";
+w["σύνδεσης"]="3,10";
+w["σύνολο"]="14";
+w["σύνολό"]="0";
+w["σύνοψη"]="10";
+w["σύρσιμο"]="4";
+w["σύστημα"]="1,4,5,6,12,14,15";
+w["τέλει"]="3";
+w["τέλος"]="6,14";
+w["τέτοια"]="4";
+w["τέτοιους"]="4";
+w["τα"]="1,4,6,10,11,12,13,14";
+w["ταινίες"]="4";
+w["ταιριάζει"]="6,14";
+w["ταιριάζουν"]="6";
+w["τεκμηρίωση"]="3,14";
+w["τελευταία"]="4";
+w["τελικά"]="7";
+w["τερματικό"]="6";
+w["τερματισμού"]="11";
+w["τερματισμό"]="1";
+w["τερματισμός"]="11";
+w["τη"]="0,1,2,4,5,6,7,9,13,14";
+w["τηλεφορτώσατε"]="6";
+w["τηλεφορτώσετε"]="6";
+w["τηλεφόρτωση"]="11";
+w["την"]="0,1,2,3,4,5,6,7,10,11,12,13,14,15";
+w["της"]="0,1,3,4,5,6,7,8,9,10,11,12,13,14,15";
+w["τι"]="4,6,14";
+w["τις"]="1,4,5,6,7,10,13,14";
+w["τμήμα"]="4";
+w["τμήματα"]="4";
+w["το"]="1,3,4,5,6,7,9,10,11,12,13,14,15";
+w["τομέα"]="14";
+w["τομέων"]="4";
+w["τομείς"]="4";
+w["τον"]="1,3,4,5,6,8,10,11,13,14";
+w["τοπική"]="0,8";
+w["τοπικής"]="0";
+w["τοπικού"]="14";
+w["τοπικό"]="6,14";
+w["τοπικότητα"]="5";
+w["τοπικότητας"]="12";
+w["τοποθεσία"]="13";
+w["του"]="0,1,2,3,4,5,6,7,8,10,11,13,14,15";
+w["τουλάχιστον"]="4";
+w["τους"]="0,4,7,10,14,15";
+w["τούτου"]="6";
+w["τρέχουσα"]="1,6";
+w["τρέχουσες"]="4";
+w["τρίγωνο"]="14";
+w["τρεις"]="4,6";
+w["τροποποιήσετε"]="4,14";
+w["τροποποιηθούν"]="10";
+w["τυχαίες"]="14";
+w["τω"]="6";
+w["των"]="2,4,6,11,12,13,14";
+w["τότε"]="4,12,14";
+w["τύπο"]="4";
+w["τύποι"]="6";
+w["τύπος"]="4";
+w["τύπου"]="1,4,14";
+w["τώρα"]="4,6,9";
+w["υβριδικά"]="6";
+w["υλικού"]="4,6,12,15";
+w["υλικό"]="12";
+w["υπάρχει"]="4,6,12,14";
+w["υπάρχον"]="14";
+w["υπάρχοντα"]="10";
+w["υπάρχοντος"]="14";
+w["υπάρχουν"]="6,13,14";
+w["υπάρχουσα"]="4,13";
+w["υπαρχουσών"]="4";
+w["υποδοχής"]="6";
+w["υπολειπόμενη"]="4";
+w["υπολειπόμενος"]="4";
+w["υπολογισμένο"]="6";
+w["υπολογιστή"]="0,1,4,6,7,10,11,13";
+w["υπολογιστής"]="1,6,14";
+w["υποστήριξη"]="5";
+w["υποστήριξης"]="5";
+w["υποστηρίζει"]="6,14";
+w["υποστηρίζεται"]="14";
+w["υπόδειξη"]="1,4,6";
+w["υπόλοιπες"]="4";
+w["υπόλοιπο"]="4,6";
+w["υπόψιν"]="10";
+w["υφίσταται"]="4";
+w["φάκελο"]="10";
+w["φαίνονται"]="14";
+w["φανεί"]="4,6,14";
+w["φορά"]="4";
+w["φορτωτή"]="14";
+w["φορτωτών"]="14";
+w["φροντίστε"]="13";
+w["φτάσαμε"]="6";
+w["φυσικό"]="6";
+w["φυσιολογική"]="12";
+w["φόρτωση"]="14";
+w["χ"]="14";
+w["χάριν"]="14";
+w["χάσετε"]="4";
+w["χαλασμένα"]="4";
+w["χαρακτήρων"]="6,10";
+w["χαρακτηριστικά"]="6";
+w["χειροκίνητα"]="6,14";
+w["χρήσει"]="6,10";
+w["χρήση"]="1,4,6,10,14";
+w["χρήσης"]="7,15";
+w["χρήσιμη"]="14";
+w["χρήσιμο"]="4,6,14";
+w["χρήστες"]="10";
+w["χρήστη"]="3,10,14";
+w["χρήστη·"]="10";
+w["χρήστης"]="10";
+w["χρειάζεστε"]="4,12";
+w["χρειάζεται"]="1,4,6";
+w["χρειάζονται"]="6";
+w["χρειαστεί"]="6";
+w["χρησιμοποιήθηκαν"]="4";
+w["χρησιμοποιήθηκε"]="4";
+w["χρησιμοποιήσατε"]="3";
+w["χρησιμοποιήσει"]="4,5,10";
+w["χρησιμοποιήσετε"]="4,6,14";
+w["χρησιμοποιήστε"]="1,4";
+w["χρησιμοποιεί"]="5,10,14";
+w["χρησιμοποιείτε"]="4,13,14";
+w["χρησιμοποιηθεί"]="4,5,6,14";
+w["χρησιμοποιηθούν"]="4,6,13";
+w["χρησιμοποιούμενα"]="12";
+w["χρησιμοποιούμενο"]="4,12";
+w["χρησιμοποιούμενων"]="12";
+w["χρησιμοποιούν"]="4,6";
+w["χρησιμοποιούνται"]="6";
+w["χρησιμοποιούσαν"]="13";
+w["χρησιμοποιώντας"]="6";
+w["χρηστών"]="10";
+w["χρωματικού"]="14";
+w["χρωματικό"]="14";
+w["χρόνου"]="8";
+w["χρώμα"]="10";
+w["χωρίς"]="4,6,13,14";
+w["χωρητικότητα"]="4,6";
+w["χώρα"]="0";
+w["χώρο"]="4,10,13";
+w["χώρος"]="4";
+w["χώρου"]="4,13";
+w["ψηφιακό"]="6";
+w["ωρολογιακή"]="0,2";
+w["ως"]="0,1,4,6,14,15";
+w["ωστόσο"]="4,6,14";
+w["όλα"]="0,4,6,13,15";
+w["όλες"]="4,5,6,10,15";
+w["όλοι"]="10";
+w["όλους"]="10,14";
+w["όλων"]="4";
+w["όνομα"]="3,4,6,10,14";
+w["όποιο"]="6";
+w["όπου"]="4,6";
+w["όπως"]="4,6,10,13,14";
+w["όροι"]="7";
+w["όρους"]="7";
+w["όταν"]="4,6,11,14";
+w["ότι"]="0,4,5,6,10,11,14,15";
+w["όχι"]="9";
+w["ώρα"]="0,8";
+w["ώρας"]="0,8";
+w["ώστε"]="4,10";
+
diff --git a/draklive/9/el/content/search/ja-jp.props b/draklive/9/el/content/search/ja-jp.props
new file mode 100644
index 00000000..27568054
--- /dev/null
+++ b/draklive/9/el/content/search/ja-jp.props
@@ -0,0 +1 @@
+J01=\\u306B \ No newline at end of file
diff --git a/draklive/9/el/content/search/nwSearchFnt.js b/draklive/9/el/content/search/nwSearchFnt.js
new file mode 100644
index 00000000..0111559c
--- /dev/null
+++ b/draklive/9/el/content/search/nwSearchFnt.js
@@ -0,0 +1,513 @@
+/*----------------------------------------------------------------------------
+ * JavaScript for webhelp search
+ *----------------------------------------------------------------------------
+ This file is part of the webhelpsearch plugin for DocBook WebHelp
+ Copyright (c) 2007-2008 NexWave Solutions All Rights Reserved.
+ www.nexwave.biz Nadege Quaine
+ http://kasunbg.blogspot.com/ Kasun Gajasinghe
+ */
+
+//string initialization
+var htmlfileList = "htmlFileList.js";
+var htmlfileinfoList = "htmlFileInfoList.js";
+var useCJKTokenizing = false;
+
+/* Cette fonction verifie la validite de la recherche entrre par l utilisateur */
+function Verifie(ditaSearch_Form) {
+
+ // Check browser compatibitily
+ if (navigator.userAgent.indexOf("Konquerer") > -1) {
+
+ alert(txt_browser_not_supported);
+ return;
+ }
+
+
+ var expressionInput = document.ditaSearch_Form.textToSearch.value;
+ //Set a cookie to store the searched keywords
+ $.cookie('textToSearch', expressionInput);
+
+
+ if (expressionInput.length < 1) {
+
+ // expression is invalid
+ alert(txt_enter_at_least_1_char);
+ // reactive la fenetre de search (utile car cadres)
+ document.ditaSearch_Form.textToSearch.focus();
+ }
+ else {
+
+ // Effectuer la recherche
+ Effectuer_recherche(expressionInput);
+
+ // reactive la fenetre de search (utile car cadres)
+ document.ditaSearch_Form.textToSearch.focus();
+ }
+}
+
+var stemQueryMap = new Array(); // A hashtable which maps stems to query words
+
+/* This function parses the search expression, loads the indices and displays the results*/
+function Effectuer_recherche(expressionInput) {
+
+ /* Display a waiting message */
+ //DisplayWaitingMessage();
+
+ /*data initialisation*/
+ var searchFor = ""; // expression en lowercase et sans les caracte res speciaux
+ //w = new Object(); // hashtable, key=word, value = list of the index of the html files
+ scriptLetterTab = new Scriptfirstchar(); // Array containing the first letter of each word to look for
+ var wordsList = new Array(); // Array with the words to look for
+ var finalWordsList = new Array(); // Array with the words to look for after removing spaces
+ var linkTab = new Array();
+ var fileAndWordList = new Array();
+ var txt_wordsnotfound = "";
+
+
+ /*nqu: expressionInput, la recherche est lower cased, plus remplacement des char speciaux*/
+ searchFor = expressionInput.toLowerCase().replace(/<\//g, "_st_").replace(/\$_/g, "_di_").replace(/\.|%2C|%3B|%21|%3A|@|\/|\*/g, " ").replace(/(%20)+/g, " ").replace(/_st_/g, "</").replace(/_di_/g, "%24_");
+
+ searchFor = searchFor.replace(/ +/g, " ");
+ searchFor = searchFor.replace(/ $/, "").replace(/^ /, "");
+
+ wordsList = searchFor.split(" ");
+ wordsList.sort();
+
+ //set the tokenizing method
+ if(typeof indexerLanguage != "undefined" && (indexerLanguage=="zh" || indexerLanguage=="ja" ||indexerLanguage=="ko")){
+ useCJKTokenizing=true;
+ } else {
+ useCJKTokenizing=false;
+ }
+ //If Lucene CJKTokenizer was used as the indexer, then useCJKTokenizing will be true. Else, do normal tokenizing.
+ // 2-gram tokenizinghappens in CJKTokenizing,
+ if(useCJKTokenizing){
+ finalWordsList = cjkTokenize(wordsList);
+ } else {
+ finalWordsList = tokenize(wordsList);
+ }
+
+ //load the scripts with the indices: the following lines do not work on the server. To be corrected
+ /*if (IEBrowser) {
+ scriptsarray = loadTheIndexScripts (scriptLetterTab);
+ } */
+
+ /**
+ * Compare with the indexed words (in the w[] array), and push words that are in it to tempTab.
+ */
+ var tempTab = new Array();
+ for (var t in finalWordsList) {
+ if (w[finalWordsList[t].toString()] == undefined) {
+ txt_wordsnotfound += finalWordsList[t] + " ";
+ } else {
+ tempTab.push(finalWordsList[t]);
+ }
+ }
+ finalWordsList = tempTab;
+
+ if (finalWordsList.length) {
+
+ //search 'and' and 'or' one time
+ fileAndWordList = SortResults(finalWordsList);
+
+ var cpt = fileAndWordList.length;
+ for (var i = cpt - 1; i >= 0; i--) {
+ if (fileAndWordList[i] != undefined) {
+ linkTab.push("<p>" + txt_results_for + " " + "<span class=\"searchExpression\">" + fileAndWordList[i][0].motslisteDisplay + "</span>" + "</p>");
+
+ linkTab.push("<ul class='searchresult'>");
+ for (t in fileAndWordList[i]) {
+ //DEBUG: alert(": "+ fileAndWordList[i][t].filenb+" " +fileAndWordList[i][t].motsliste);
+ //linkTab.push("<li><a href=\"../"+fl[fileAndWordList[i][t].filenb]+"\">"+fl[fileAndWordList[i][t].filenb]+"</a></li>");
+ var tempInfo = fil[fileAndWordList[i][t].filenb];
+ var pos1 = tempInfo.indexOf("@@@");
+ var pos2 = tempInfo.lastIndexOf("@@@");
+ var tempPath = tempInfo.substring(0, pos1);
+ var tempTitle = tempInfo.substring(pos1 + 3, pos2);
+ var tempShortdesc = tempInfo.substring(pos2 + 3, tempInfo.length);
+
+ //file:///home/kasun/docbook/WEBHELP/webhelp-draft-output-format-idea/src/main/resources/web/webhelp/installation.html
+ var linkString = "<li><a href=" + tempPath + ">" + tempTitle + "</a>";
+ // var linkString = "<li><a href=\"installation.html\">" + tempTitle + "</a>";
+ if ((tempShortdesc != "null")) {
+ linkString += "\n<div class=\"shortdesclink\">" + tempShortdesc + "</div>";
+ }
+ linkString += "</li>";
+ linkTab.push(linkString);
+ }
+ linkTab.push("</ul>");
+ }
+ }
+ }
+
+ var results = "";
+ if (linkTab.length > 0) {
+ /*writeln ("<p>" + txt_results_for + " " + "<span class=\"searchExpression\">" + cleanwordsList + "</span>" + "<br/>"+"</p>");*/
+ results = "<p>";
+ //write("<ul class='searchresult'>");
+ for (t in linkTab) {
+ results += linkTab[t].toString();
+ }
+ results += "</p>";
+ } else {
+ results = "<p>" + "Your search returned no results for " + "<span class=\"searchExpression\">" + txt_wordsnotfound + "</span>" + "</p>";
+ }
+ //alert(results);
+ document.getElementById('searchResults').innerHTML = results;
+}
+
+function tokenize(wordsList){
+ var stemmedWordsList = new Array(); // Array with the words to look for after removing spaces
+ var cleanwordsList = new Array(); // Array with the words to look for
+ for(var j in wordsList){
+ var word = wordsList[j];
+ if(typeof stemmer != "undefined" ){
+ stemQueryMap[stemmer(word)] = word;
+ } else {
+ stemQueryMap[word] = word;
+ }
+ }
+ //stemmedWordsList is the stemmed list of words separated by spaces.
+ for (var t in wordsList) {
+ wordsList[t] = wordsList[t].replace(/(%22)|^-/g, "");
+ if (wordsList[t] != "%20") {
+ scriptLetterTab.add(wordsList[t].charAt(0));
+ cleanwordsList.push(wordsList[t]);
+ }
+ }
+
+ if(typeof stemmer != "undefined" ){
+ //Do the stemming using Porter's stemming algorithm
+ for (var i = 0; i < cleanwordsList.length; i++) {
+ var stemWord = stemmer(cleanwordsList[i]);
+ stemmedWordsList.push(stemWord);
+ }
+ } else {
+ stemmedWordsList = cleanwordsList;
+ }
+ return stemmedWordsList;
+}
+
+//Invoker of CJKTokenizer class methods.
+function cjkTokenize(wordsList){
+ var allTokens= new Array();
+ var notCJKTokens= new Array();
+ var j=0;
+ for(j=0;j<wordsList.length;j++){
+ var word = wordsList[j];
+ if(getAvgAsciiValue(word) < 127){
+ notCJKTokens.push(word);
+ } else {
+ var tokenizer = new CJKTokenizer(word);
+ var tokensTmp = tokenizer.getAllTokens();
+ allTokens = allTokens.concat(tokensTmp);
+ }
+ }
+ allTokens = allTokens.concat(tokenize(notCJKTokens));
+ return allTokens;
+}
+
+//A simple way to determine whether the query is in english or not.
+function getAvgAsciiValue(word){
+ var tmp = 0;
+ var num = word.length < 5 ? word.length:5;
+ for(var i=0;i<num;i++){
+ if(i==5) break;
+ tmp += word.charCodeAt(i);
+ }
+ return tmp/num;
+}
+
+//CJKTokenizer
+function CJKTokenizer(input){
+ this.input = input;
+ this.offset=-1;
+ this.tokens = new Array();
+ this.incrementToken = incrementToken;
+ this.tokenize = tokenize;
+ this.getAllTokens = getAllTokens;
+ this.unique = unique;
+
+ function incrementToken(){
+ if(this.input.length - 2 <= this.offset){
+ // console.log("false "+offset);
+ return false;
+ }
+ else {
+ this.offset+=1;
+ return true;
+ }
+ }
+
+ function tokenize(){
+ //document.getElementById("content").innerHTML += x.substring(offset,offset+2)+"<br>";
+ return this.input.substring(this.offset,this.offset+2);
+ }
+
+ function getAllTokens(){
+ while(this.incrementToken()){
+ var tmp = this.tokenize();
+ this.tokens.push(tmp);
+ }
+ return this.unique(this.tokens);
+// document.getElementById("content").innerHTML += tokens+" ";
+// document.getElementById("content").innerHTML += "<br>dada"+sortedTokens+" ";
+// console.log(tokens.length+"dsdsds");
+ /*for(i=0;i<tokens.length;i++){
+ console.log(tokens[i]);
+ var ss = tokens[i] == sortedTokens[i];
+
+// document.getElementById("content").innerHTML += "<br>dada"+un[i]+"- "+stems[i]+"&nbsp;&nbsp;&nbsp;"+ ss;
+ document.getElementById("content").innerHTML += "<br>"+sortedTokens[i];
+ }*/
+ }
+
+ function unique(a)
+ {
+ var r = new Array();
+ o:for(var i = 0, n = a.length; i < n; i++)
+ {
+ for(var x = 0, y = r.length; x < y; x++)
+ {
+ if(r[x]==a[i]) continue o;
+ }
+ r[r.length] = a[i];
+ }
+ return r;
+ }
+}
+
+
+/* Scriptfirstchar: to gather the first letter of index js files to upload */
+function Scriptfirstchar() {
+ this.strLetters = "";
+ this.add = addLettre;
+}
+
+function addLettre(caract) {
+
+ if (this.strLetters == 'undefined') {
+ this.strLetters = caract;
+ } else if (this.strLetters.indexOf(caract) < 0) {
+ this.strLetters += caract;
+ }
+
+ return 0;
+}
+/* end of scriptfirstchar */
+
+/*main loader function*/
+/*tab contains the first letters of each word looked for*/
+function loadTheIndexScripts(tab) {
+
+ //alert (tab.strLetters);
+ var scriptsarray = new Array();
+
+ for (var i = 0; i < tab.strLetters.length; i++) {
+
+ scriptsarray[i] = "..\/search" + "\/" + tab.strLetters.charAt(i) + ".js";
+ }
+ // add the list of html files
+ i++;
+ scriptsarray[i] = "..\/search" + "\/" + htmlfileList;
+
+ //debug
+ for (var t in scriptsarray) {
+ //alert (scriptsarray[t]);
+ }
+
+ tab = new ScriptLoader();
+ for (t in scriptsarray) {
+ tab.add(scriptsarray[t]);
+ }
+ tab.load();
+ //alert ("scripts loaded");
+ return (scriptsarray);
+}
+
+/* ScriptLoader: to load the scripts and wait that it's finished */
+function ScriptLoader() {
+ this.cpt = 0;
+ this.scriptTab = new Array();
+ this.add = addAScriptInTheList;
+ this.load = loadTheScripts;
+ this.onScriptLoaded = onScriptLoadedFunc;
+}
+
+function addAScriptInTheList(scriptPath) {
+ this.scriptTab.push(scriptPath);
+}
+
+function loadTheScripts() {
+ var script;
+ var head;
+
+ head = document.getElementsByTagName('head').item(0);
+
+ //script = document.createElement('script');
+
+ for (var el in this.scriptTab) {
+ //alert (el+this.scriptTab[el]);
+ script = document.createElement('script');
+ script.src = this.scriptTab[el];
+ script.type = 'text/javascript';
+ script.defer = false;
+
+ head.appendChild(script);
+ }
+
+}
+
+function onScriptLoadedFunc(e) {
+ e = e || window.event;
+ var target = e.target || e.srcElement;
+ var isComplete = true;
+ if (typeof target.readyState != undefined) {
+
+ isComplete = (target.readyState == "complete" || target.readyState == "loaded");
+ }
+ if (isComplete) {
+ ScriptLoader.cpt++;
+ if (ScriptLoader.cpt == ScriptLoader.scripts.length) {
+ ScriptLoader.onLoadComplete();
+ }
+ }
+}
+
+/*
+function onLoadComplete() {
+ alert("loaded !!");
+} */
+
+/* End of scriptloader functions */
+
+// Array.unique( strict ) - Remove duplicate values
+function unique(tab) {
+ var a = new Array();
+ var i;
+ var l = tab.length;
+
+ if (tab[0] != undefined) {
+ a[0] = tab[0];
+ }
+ else {
+ return -1
+ }
+
+ for (i = 1; i < l; i++) {
+ if (indexof(a, tab[i], 0) < 0) {
+ a.push(tab[i]);
+ }
+ }
+ return a;
+}
+function indexof(tab, element, begin) {
+ for (var i = begin; i < tab.length; i++) {
+ if (tab[i] == element) {
+ return i;
+ }
+ }
+ return -1;
+
+}
+/* end of Array functions */
+
+
+/*
+ Param: mots= list of words to look for.
+ This function creates an hashtable:
+ - The key is the index of a html file which contains a word to look for.
+ - The value is the list of all words contained in the html file.
+
+ Return value: the hashtable fileAndWordList
+ */
+function SortResults(mots) {
+
+ var fileAndWordList = new Object();
+ if (mots.length == 0) {
+ return null;
+ }
+
+ for (var t in mots) {
+ // get the list of the indices of the files.
+ var listNumerosDesFicStr = w[mots[t].toString()];
+ //alert ("listNumerosDesFicStr "+listNumerosDesFicStr);
+ var tab = listNumerosDesFicStr.split(",");
+
+ //for each file (file's index):
+ for (var t2 in tab) {
+ var temp = tab[t2].toString();
+ if (fileAndWordList[temp] == undefined) {
+
+ fileAndWordList[temp] = "" + mots[t];
+ } else {
+
+ fileAndWordList[temp] += "," + mots[t];
+ }
+ }
+ }
+
+ var fileAndWordListValuesOnly = new Array();
+
+ // sort results according to values
+ var temptab = new Array();
+ for (t in fileAndWordList) {
+ tab = fileAndWordList[t].split(',');
+
+ var tempDisplay = new Array();
+ for (var x in tab) {
+ if(stemQueryMap[tab[x]] != undefined){
+ tempDisplay.push(stemQueryMap[tab[x]]); //get the original word from the stem word.
+ } else {
+ tempDisplay.push(tab[x]); //no stem is available. (probably a CJK language)
+ }
+ }
+ var tempDispString = tempDisplay.join(", ");
+
+ temptab.push(new resultPerFile(t, fileAndWordList[t], tab.length, tempDispString));
+ fileAndWordListValuesOnly.push(fileAndWordList[t]);
+ }
+
+
+ //alert("t"+fileAndWordListValuesOnly.toString());
+
+ fileAndWordListValuesOnly = unique(fileAndWordListValuesOnly);
+ fileAndWordListValuesOnly = fileAndWordListValuesOnly.sort(compare_nbMots);
+ //alert("t: "+fileAndWordListValuesOnly.join(';'));
+
+ var listToOutput = new Array();
+
+ for (var j in fileAndWordListValuesOnly) {
+ for (t in temptab) {
+ if (temptab[t].motsliste == fileAndWordListValuesOnly[j]) {
+ if (listToOutput[j] == undefined) {
+ listToOutput[j] = new Array(temptab[t]);
+ } else {
+ listToOutput[j].push(temptab[t]);
+ }
+ }
+ }
+ }
+ return listToOutput;
+}
+
+function resultPerFile(filenb, motsliste, motsnb, motslisteDisplay) {
+ this.filenb = filenb;
+ this.motsliste = motsliste;
+ this.motsnb = motsnb;
+ this.motslisteDisplay= motslisteDisplay;
+}
+
+function compare_nbMots(s1, s2) {
+ var t1 = s1.split(',');
+ var t2 = s2.split(',');
+ //alert ("s1:"+t1.length + " " +t2.length)
+ if (t1.length == t2.length) {
+ return 0;
+ } else if (t1.length > t2.length) {
+ return 1;
+ } else {
+ return -1;
+ }
+ //return t1.length - t2.length);
+} \ No newline at end of file
diff --git a/draklive/9/el/content/search/punctuation.props b/draklive/9/el/content/search/punctuation.props
new file mode 100644
index 00000000..d3e3fcd2
--- /dev/null
+++ b/draklive/9/el/content/search/punctuation.props
@@ -0,0 +1,31 @@
+Punct01=\\u3002
+Punct02=\\u3003
+Punct03=\\u300C
+Punct04=\\u300D
+Punct05=\\u300E
+Punct06=\\u300F
+Punct07=\\u301D
+Punct08=\\u301E
+Punct09=\\u301F
+Punct10=\\u309B
+Punct11=\\u2018
+Punct12=\\u2019
+Punct13=\\u201A
+Punct14=\\u201C
+Punct15=\\u201D
+Punct16=\\u201E
+Punct17=\\u2032
+Punct18=\\u2033
+Punct19=\\u2035
+Punct20=\\u2039
+Punct21=\\u203A
+Punct22=\\u201E
+Punct23=\\u00BB
+Punct24=\\u00AB
+Punct25=
+Punct26=
+Punct27=\\u00A0
+Punct28=\\u2014
+
+
+
diff --git a/draklive/9/el/content/search/stemmers/de_stemmer.js b/draklive/9/el/content/search/stemmers/de_stemmer.js
new file mode 100644
index 00000000..7ff3822a
--- /dev/null
+++ b/draklive/9/el/content/search/stemmers/de_stemmer.js
@@ -0,0 +1,247 @@
+/*
+ * Author: Joder Illi
+ *
+ * Copyright (c) 2010, FormBlitz AG
+ * All rights reserved.
+ * Implementation of the stemming algorithm from http://snowball.tartarus.org/algorithms/german/stemmer.html
+ * Copyright of the algorithm is: Copyright (c) 2001, Dr Martin Porter and can be found at http://snowball.tartarus.org/license.php
+ *
+ * Redistribution and use in source and binary forms, with or without modification, is covered by the standard BSD license.
+ *
+ */
+
+//var stemmer = function Stemmer() {
+ /*
+ German includes the following accented forms,
+ ä ö ü
+ and a special letter, ß, equivalent to double s.
+ The following letters are vowels:
+ a e i o u y ä ö ü
+ */
+
+ var stemmer = function(word) {
+ /*
+ Put u and y between vowels into upper case
+ */
+ word = word.replace(/([aeiouyäöü])u([aeiouyäöü])/g, '$1U$2');
+ word = word.replace(/([aeiouyäöü])y([aeiouyäöü])/g, '$1Y$2');
+
+ /*
+ and then do the following mappings,
+ (a) replace ß with ss,
+ (a) replace ae with ä, Not doing these, have trouble with diphtongs
+ (a) replace oe with ö, Not doing these, have trouble with diphtongs
+ (a) replace ue with ü unless preceded by q. Not doing these, have trouble with diphtongs
+ So in quelle, ue is not mapped to ü because it follows q, and in feuer it is not mapped because the first part of the rule changes it to feUer, so the u is not found.
+ */
+ word = word.replace(/ß/g, 'ss');
+ //word = word.replace(/ae/g, 'ä');
+ //word = word.replace(/oe/g, 'ö');
+ //word = word.replace(/([^q])ue/g, '$1ü');
+
+ /*
+ R1 and R2 are first set up in the standard way (see the note on R1 and R2), but then R1 is adjusted so that the region before it contains at least 3 letters.
+ R1 is the region after the first non-vowel following a vowel, or is the null region at the end of the word if there is no such non-vowel.
+ R2 is the region after the first non-vowel following a vowel in R1, or is the null region at the end of the word if there is no such non-vowel.
+ */
+
+ var r1Index = word.search(/[aeiouyäöü][^aeiouyäöü]/);
+ var r1 = '';
+ if (r1Index != -1) {
+ r1Index += 2;
+ r1 = word.substring(r1Index);
+ }
+
+ var r2Index = -1;
+ var r2 = '';
+
+ if (r1Index != -1) {
+ var r2Index = r1.search(/[aeiouyäöü][^aeiouyäöü]/);
+ if (r2Index != -1) {
+ r2Index += 2;
+ r2 = r1.substring(r2Index);
+ r2Index += r1Index;
+ } else {
+ r2 = '';
+ }
+ }
+
+ if (r1Index != -1 && r1Index < 3) {
+ r1Index = 3;
+ r1 = word.substring(r1Index);
+ }
+
+ /*
+ Define a valid s-ending as one of b, d, f, g, h, k, l, m, n, r or t.
+ Define a valid st-ending as the same list, excluding letter r.
+ */
+
+ /*
+ Do each of steps 1, 2 and 3.
+ */
+
+ /*
+ Step 1:
+ Search for the longest among the following suffixes,
+ (a) em ern er
+ (b) e en es
+ (c) s (preceded by a valid s-ending)
+ */
+ var a1Index = word.search(/(em|ern|er)$/g);
+ var b1Index = word.search(/(e|en|es)$/g);
+ var c1Index = word.search(/([bdfghklmnrt]s)$/g);
+ if (c1Index != -1) {
+ c1Index++;
+ }
+ var index1 = 10000;
+ var optionUsed1 = '';
+ if (a1Index != -1 && a1Index < index1) {
+ optionUsed1 = 'a';
+ index1 = a1Index;
+ }
+ if (b1Index != -1 && b1Index < index1) {
+ optionUsed1 = 'b';
+ index1 = b1Index;
+ }
+ if (c1Index != -1 && c1Index < index1) {
+ optionUsed1 = 'c';
+ index1 = c1Index;
+ }
+
+ /*
+ and delete if in R1. (Of course the letter of the valid s-ending is not necessarily in R1.) If an ending of group (b) is deleted, and the ending is preceded by niss, delete the final s.
+ (For example, äckern -> äck, ackers -> acker, armes -> arm, bedürfnissen -> bedürfnis)
+ */
+
+ if (index1 != 10000 && r1Index != -1) {
+ if (index1 >= r1Index) {
+ word = word.substring(0, index1);
+ if (optionUsed1 == 'b') {
+ if (word.search(/niss$/) != -1) {
+ word = word.substring(0, word.length -1);
+ }
+ }
+ }
+ }
+ /*
+ Step 2:
+ Search for the longest among the following suffixes,
+ (a) en er est
+ (b) st (preceded by a valid st-ending, itself preceded by at least 3 letters)
+ */
+
+ var a2Index = word.search(/(en|er|est)$/g);
+ var b2Index = word.search(/(.{3}[bdfghklmnt]st)$/g);
+ if (b2Index != -1) {
+ b2Index += 4;
+ }
+
+ var index2 = 10000;
+ var optionUsed2 = '';
+ if (a2Index != -1 && a2Index < index2) {
+ optionUsed2 = 'a';
+ index2 = a2Index;
+ }
+ if (b2Index != -1 && b2Index < index2) {
+ optionUsed2 = 'b';
+ index2 = b2Index;
+ }
+
+ /*
+ and delete if in R1.
+ (For example, derbsten -> derbst by step 1, and derbst -> derb by step 2, since b is a valid st-ending, and is preceded by just 3 letters)
+ */
+
+ if (index2 != 10000 && r1Index != -1) {
+ if (index2 >= r1Index) {
+ word = word.substring(0, index2);
+ }
+ }
+
+ /*
+ Step 3: d-suffixes (*)
+ Search for the longest among the following suffixes, and perform the action indicated.
+ end ung
+ delete if in R2
+ if preceded by ig, delete if in R2 and not preceded by e
+ ig ik isch
+ delete if in R2 and not preceded by e
+ lich heit
+ delete if in R2
+ if preceded by er or en, delete if in R1
+ keit
+ delete if in R2
+ if preceded by lich or ig, delete if in R2
+ */
+
+ var a3Index = word.search(/(end|ung)$/g);
+ var b3Index = word.search(/[^e](ig|ik|isch)$/g);
+ var c3Index = word.search(/(lich|heit)$/g);
+ var d3Index = word.search(/(keit)$/g);
+ if (b3Index != -1) {
+ b3Index ++;
+ }
+
+ var index3 = 10000;
+ var optionUsed3 = '';
+ if (a3Index != -1 && a3Index < index3) {
+ optionUsed3 = 'a';
+ index3 = a3Index;
+ }
+ if (b3Index != -1 && b3Index < index3) {
+ optionUsed3 = 'b';
+ index3 = b3Index;
+ }
+ if (c3Index != -1 && c3Index < index3) {
+ optionUsed3 = 'c';
+ index3 = c3Index;
+ }
+ if (d3Index != -1 && d3Index < index3) {
+ optionUsed3 = 'd';
+ index3 = d3Index;
+ }
+
+ if (index3 != 10000 && r2Index != -1) {
+ if (index3 >= r2Index) {
+ word = word.substring(0, index3);
+ var optionIndex = -1;
+ var optionSubsrt = '';
+ if (optionUsed3 == 'a') {
+ optionIndex = word.search(/[^e](ig)$/);
+ if (optionIndex != -1) {
+ optionIndex++;
+ if (optionIndex >= r2Index) {
+ word = word.substring(0, optionIndex);
+ }
+ }
+ } else if (optionUsed3 == 'c') {
+ optionIndex = word.search(/(er|en)$/);
+ if (optionIndex != -1) {
+ if (optionIndex >= r1Index) {
+ word = word.substring(0, optionIndex);
+ }
+ }
+ } else if (optionUsed3 == 'd') {
+ optionIndex = word.search(/(lich|ig)$/);
+ if (optionIndex != -1) {
+ if (optionIndex >= r2Index) {
+ word = word.substring(0, optionIndex);
+ }
+ }
+ }
+ }
+ }
+
+ /*
+ Finally,
+ turn U and Y back into lower case, and remove the umlaut accent from a, o and u.
+ */
+ word = word.replace(/U/g, 'u');
+ word = word.replace(/Y/g, 'y');
+ word = word.replace(/ä/g, 'a');
+ word = word.replace(/ö/g, 'o');
+ word = word.replace(/ü/g, 'u');
+
+ return word;
+ };
+//} \ No newline at end of file
diff --git a/draklive/9/el/content/search/stemmers/en_stemmer.js b/draklive/9/el/content/search/stemmers/en_stemmer.js
new file mode 100644
index 00000000..f58012f2
--- /dev/null
+++ b/draklive/9/el/content/search/stemmers/en_stemmer.js
@@ -0,0 +1,187 @@
+// Porter stemmer in Javascript. Few comments, but it's easy to follow against the rules in the original
+// paper, in
+//
+// Porter, 1980, An algorithm for suffix stripping, Program, Vol. 14,
+// no. 3, pp 130-137,
+//
+// see also http://www.tartarus.org/~martin/PorterStemmer
+
+// Release 1 be 'andargor', Jul 2004
+// Release 2 (substantially revised) by Christopher McKenzie, Aug 2009
+
+
+var stemmer = (function(){
+ var step2list = {
+ "ational" : "ate",
+ "tional" : "tion",
+ "enci" : "ence",
+ "anci" : "ance",
+ "izer" : "ize",
+ "bli" : "ble",
+ "alli" : "al",
+ "entli" : "ent",
+ "eli" : "e",
+ "ousli" : "ous",
+ "ization" : "ize",
+ "ation" : "ate",
+ "ator" : "ate",
+ "alism" : "al",
+ "iveness" : "ive",
+ "fulness" : "ful",
+ "ousness" : "ous",
+ "aliti" : "al",
+ "iviti" : "ive",
+ "biliti" : "ble",
+ "logi" : "log"
+ },
+
+ step3list = {
+ "icate" : "ic",
+ "ative" : "",
+ "alize" : "al",
+ "iciti" : "ic",
+ "ical" : "ic",
+ "ful" : "",
+ "ness" : ""
+ },
+
+ c = "[^aeiou]", // consonant
+ v = "[aeiouy]", // vowel
+ C = c + "[^aeiouy]*", // consonant sequence
+ V = v + "[aeiou]*", // vowel sequence
+
+ mgr0 = "^(" + C + ")?" + V + C, // [C]VC... is m>0
+ meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$", // [C]VC[V] is m=1
+ mgr1 = "^(" + C + ")?" + V + C + V + C, // [C]VCVC... is m>1
+ s_v = "^(" + C + ")?" + v; // vowel in stem
+
+ return function (w) {
+ var stem,
+ suffix,
+ firstch,
+ re,
+ re2,
+ re3,
+ re4,
+ origword = w;
+
+ if (w.length < 3) { return w; }
+
+ firstch = w.substr(0,1);
+ if (firstch == "y") {
+ w = firstch.toUpperCase() + w.substr(1);
+ }
+
+ // Step 1a
+ re = /^(.+?)(ss|i)es$/;
+ re2 = /^(.+?)([^s])s$/;
+
+ if (re.test(w)) { w = w.replace(re,"$1$2"); }
+ else if (re2.test(w)) { w = w.replace(re2,"$1$2"); }
+
+ // Step 1b
+ re = /^(.+?)eed$/;
+ re2 = /^(.+?)(ed|ing)$/;
+ if (re.test(w)) {
+ var fp = re.exec(w);
+ re = new RegExp(mgr0);
+ if (re.test(fp[1])) {
+ re = /.$/;
+ w = w.replace(re,"");
+ }
+ } else if (re2.test(w)) {
+ var fp = re2.exec(w);
+ stem = fp[1];
+ re2 = new RegExp(s_v);
+ if (re2.test(stem)) {
+ w = stem;
+ re2 = /(at|bl|iz)$/;
+ re3 = new RegExp("([^aeiouylsz])\\1$");
+ re4 = new RegExp("^" + C + v + "[^aeiouwxy]$");
+ if (re2.test(w)) { w = w + "e"; }
+ else if (re3.test(w)) { re = /.$/; w = w.replace(re,""); }
+ else if (re4.test(w)) { w = w + "e"; }
+ }
+ }
+
+ // Step 1c
+ re = /^(.+?)y$/;
+ if (re.test(w)) {
+ var fp = re.exec(w);
+ stem = fp[1];
+ re = new RegExp(s_v);
+ if (re.test(stem)) { w = stem + "i"; }
+ }
+
+ // Step 2
+ re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/;
+ if (re.test(w)) {
+ var fp = re.exec(w);
+ stem = fp[1];
+ suffix = fp[2];
+ re = new RegExp(mgr0);
+ if (re.test(stem)) {
+ w = stem + step2list[suffix];
+ }
+ }
+
+ // Step 3
+ re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/;
+ if (re.test(w)) {
+ var fp = re.exec(w);
+ stem = fp[1];
+ suffix = fp[2];
+ re = new RegExp(mgr0);
+ if (re.test(stem)) {
+ w = stem + step3list[suffix];
+ }
+ }
+
+ // Step 4
+ re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/;
+ re2 = /^(.+?)(s|t)(ion)$/;
+ if (re.test(w)) {
+ var fp = re.exec(w);
+ stem = fp[1];
+ re = new RegExp(mgr1);
+ if (re.test(stem)) {
+ w = stem;
+ }
+ } else if (re2.test(w)) {
+ var fp = re2.exec(w);
+ stem = fp[1] + fp[2];
+ re2 = new RegExp(mgr1);
+ if (re2.test(stem)) {
+ w = stem;
+ }
+ }
+
+ // Step 5
+ re = /^(.+?)e$/;
+ if (re.test(w)) {
+ var fp = re.exec(w);
+ stem = fp[1];
+ re = new RegExp(mgr1);
+ re2 = new RegExp(meq1);
+ re3 = new RegExp("^" + C + v + "[^aeiouwxy]$");
+ if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) {
+ w = stem;
+ }
+ }
+
+ re = /ll$/;
+ re2 = new RegExp(mgr1);
+ if (re.test(w) && re2.test(w)) {
+ re = /.$/;
+ w = w.replace(re,"");
+ }
+
+ // and turn initial Y back to y
+
+ if (firstch == "y") {
+ w = firstch.toLowerCase() + w.substr(1);
+ }
+
+ return w;
+ }
+})(); \ No newline at end of file
diff --git a/draklive/9/el/content/search/stemmers/fr_stemmer.js b/draklive/9/el/content/search/stemmers/fr_stemmer.js
new file mode 100644
index 00000000..34f97431
--- /dev/null
+++ b/draklive/9/el/content/search/stemmers/fr_stemmer.js
@@ -0,0 +1,299 @@
+/*
+ * Author: Kasun Gajasinghe
+ * E-Mail: kasunbg AT gmail DOT com
+ * Date: 09.08.2010
+ *
+ * usage: stemmer(word);
+ * ex: var stem = stemmer(foobar);
+ * Implementation of the stemming algorithm from http://snowball.tartarus.org/algorithms/french/stemmer.html
+ *
+ * LICENSE:
+ *
+ * Copyright (c) 2010, Kasun Gajasinghe. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification,
+ * are permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice,
+ * this list of conditions and the following disclaimer in the documentation
+ * and/or other materials provided with the distribution.
+ *
+ *
+ * THIS SOFTWARE IS PROVIDED BY KASUN GAJASINGHE ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL KASUN GAJASINGHE BE LIABLE FOR ANY DIRECT,
+ * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
+ * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ */
+
+var stemmer = function(word){
+// Letters in French include the following accented forms,
+// â à ç ë é ê è ï î ô û ù
+// The following letters are vowels:
+// a e i o u y â à ë é ê è ï î ô û ù
+
+ word = word.toLowerCase();
+ var oriWord = word;
+ word = word.replace(/qu/g, 'qU'); //have to perform first, as after the operation, capital U is not treated as a vowel
+ word = word.replace(/([aeiouyâàëéêèïîôûù])u([aeiouyâàëéêèïîôûù])/g, '$1U$2');
+ word = word.replace(/([aeiouyâàëéêèïîôûù])i([aeiouyâàëéêèïîôûù])/g, '$1I$2');
+ word = word.replace(/([aeiouyâàëéêèïîôûù])y/g, '$1Y');
+ word = word.replace(/y([aeiouyâàëéêèïîôûù])/g, 'Y$1');
+
+ var rv='';
+ var rvIndex = -1;
+ if(word.search(/^(par|col|tap)/) != -1 || word.search(/^[aeiouyâàëéêèïîôûù]{2}/) != -1){
+ rv = word.substring(3);
+ rvIndex = 3;
+ } else {
+ rvIndex = word.substring(1).search(/[aeiouyâàëéêèïîôûù]/);
+ if(rvIndex != -1){
+ rvIndex +=2; //+2 is to supplement the substring(1) used to find rvIndex
+ rv = word.substring(rvIndex);
+ } else {
+ rvIndex = word.length;
+ }
+ }
+
+// R1 is the region after the first non-vowel following a vowel, or the end of the word if there is no such non-vowel.
+// R2 is the region after the first non-vowel following a vowel in R1, or the end of the word if there is no such non-vowel
+ var r1Index = word.search(/[aeiouyâàëéêèïîôûù][^aeiouyâàëéêèïîôûù]/);
+ var r1 = '';
+ if (r1Index != -1) {
+ r1Index += 2;
+ r1 = word.substring(r1Index);
+ } else {
+ r1Index = word.length;
+ }
+
+ var r2Index = -1;
+ var r2 = '';
+ if (r1Index != -1) {
+ r2Index = r1.search(/[aeiouyâàëéêèïîôûù][^aeiouyâàëéêèïîôûù]/);
+ if (r2Index != -1) {
+ r2Index += 2;
+ r2 = r1.substring(r2Index);
+ r2Index += r1Index;
+ } else {
+ r2 = '';
+ r2Index = word.length;
+ }
+ }
+ if (r1Index != -1 && r1Index < 3) {
+ r1Index = 3;
+ r1 = word.substring(r1Index);
+ }
+
+ /*
+ Step 1: Standard suffix removal
+ */
+ var a1Index = word.search(/(ance|iqUe|isme|able|iste|eux|ances|iqUes|ismes|ables|istes)$/);
+ var a2Index = word.search(/(atrice|ateur|ation|atrices|ateurs|ations)$/);
+ var a3Index = word.search(/(logie|logies)$/);
+ var a4Index = word.search(/(usion|ution|usions|utions)$/);
+ var a5Index = word.search(/(ence|ences)$/);
+ var a6Index = word.search(/(ement|ements)$/);
+ var a7Index = word.search(/(ité|ités)$/);
+ var a8Index = word.search(/(if|ive|ifs|ives)$/);
+ var a9Index = word.search(/(eaux)$/);
+ var a10Index = word.search(/(aux)$/);
+ var a11Index = word.search(/(euse|euses)$/);
+ var a12Index = word.search(/[^aeiouyâàëéêèïîôûù](issement|issements)$/);
+ var a13Index = word.search(/(amment)$/);
+ var a14Index = word.search(/(emment)$/);
+ var a15Index = word.search(/[aeiouyâàëéêèïîôûù](ment|ments)$/);
+
+ if(a1Index != -1 && a1Index >= r2Index){
+ word = word.substring(0,a1Index);
+ } else if(a2Index != -1 && a2Index >= r2Index){
+ word = word.substring(0,a2Index);
+ var a2Index2 = word.search(/(ic)$/);
+ if(a2Index2 != -1 && a2Index2 >= r2Index){
+ word = word.substring(0, a2Index2); //if preceded by ic, delete if in R2,
+ } else { //else replace by iqU
+ word = word.replace(/(ic)$/,'iqU');
+ }
+ } else if(a3Index != -1 && a3Index >= r2Index){
+ word = word.replace(/(logie|logies)$/,'log'); //replace with log if in R2
+ } else if(a4Index != -1 && a4Index >= r2Index){
+ word = word.replace(/(usion|ution|usions|utions)$/,'u'); //replace with u if in R2
+ } else if(a5Index != -1 && a5Index >= r2Index){
+ word = word.replace(/(ence|ences)$/,'ent'); //replace with ent if in R2
+ } else if(a6Index != -1 && a6Index >= rvIndex){
+ word = word.substring(0,a6Index);
+ if(word.search(/(iv)$/) >= r2Index){
+ word = word.replace(/(iv)$/, '');
+ if(word.search(/(at)$/) >= r2Index){
+ word = word.replace(/(at)$/, '');
+ }
+ } else if(word.search(/(eus)$/) != -1){
+ var a6Index2 = word.search(/(eus)$/);
+ if(a6Index2 >=r2Index){
+ word = word.substring(0, a6Index2);
+ } else if(a6Index2 >= r1Index){
+ word = word.substring(0,a6Index2)+"eux";
+ }
+ } else if(word.search(/(abl|iqU)$/) >= r2Index){
+ word = word.replace(/(abl|iqU)$/,''); //if preceded by abl or iqU, delete if in R2,
+ } else if(word.search(/(ièr|Ièr)$/) >= rvIndex){
+ word = word.replace(/(ièr|Ièr)$/,'i'); //if preceded by abl or iqU, delete if in R2,
+ }
+ } else if(a7Index != -1 && a7Index >= r2Index){
+ word = word.substring(0,a7Index); //delete if in R2
+ if(word.search(/(abil)$/) != -1){ //if preceded by abil, delete if in R2, else replace by abl, otherwise,
+ var a7Index2 = word.search(/(abil)$/);
+ if(a7Index2 >=r2Index){
+ word = word.substring(0, a7Index2);
+ } else {
+ word = word.substring(0,a7Index2)+"abl";
+ }
+ } else if(word.search(/(ic)$/) != -1){
+ var a7Index3 = word.search(/(ic)$/);
+ if(a7Index3 != -1 && a7Index3 >= r2Index){
+ word = word.substring(0, a7Index3); //if preceded by ic, delete if in R2,
+ } else { //else replace by iqU
+ word = word.replace(/(ic)$/,'iqU');
+ }
+ } else if(word.search(/(iv)$/) != r2Index){
+ word = word.replace(/(iv)$/,'');
+ }
+ } else if(a8Index != -1 && a8Index >= r2Index){
+ word = word.substring(0,a8Index);
+ if(word.search(/(at)$/) >= r2Index){
+ word = word.replace(/(at)$/, '');
+ if(word.search(/(ic)$/) >= r2Index){
+ word = word.replace(/(ic)$/, '');
+ } else { word = word.replace(/(ic)$/, 'iqU'); }
+ }
+ } else if(a9Index != -1){ word = word.replace(/(eaux)/,'eau')
+ } else if(a10Index >= r1Index){ word = word.replace(/(aux)/,'al')
+ } else if(a11Index != -1 ){
+ var a11Index2 = word.search(/(euse|euses)$/);
+ if(a11Index2 >=r2Index){
+ word = word.substring(0, a11Index2);
+ } else if(a11Index2 >= r1Index){
+ word = word.substring(0, a11Index2)+"eux";
+ }
+ } else if(a12Index!=-1 && a12Index>=r1Index){
+ word = word.substring(0,a12Index+1); //+1- amendment to non-vowel
+ } else if(a13Index!=-1 && a13Index>=rvIndex){
+ word = word.replace(/(amment)$/,'ant');
+ } else if(a14Index!=-1 && a14Index>=rvIndex){
+ word = word.replace(/(emment)$/,'ent');
+ } else if(a15Index!=-1 && a15Index>=rvIndex){
+ word = word.substring(0,a15Index+1);
+ }
+
+ /* Step 2a: Verb suffixes beginning i*/
+ var wordStep1 = word;
+ var step2aDone = false;
+ if(oriWord == word.toLowerCase() || oriWord.search(/(amment|emment|ment|ments)$/) != -1){
+ step2aDone = true;
+ var b1Regex = /([^aeiouyâàëéêèïîôûù])(îmes|ît|îtes|i|ie|ies|ir|ira|irai|iraIent|irais|irait|iras|irent|irez|iriez|irions|irons|iront|is|issaIent|issais|issait|issant|issante|issantes|issants|isse|issent|isses|issez|issiez|issions|issons|it)$/i;
+ if(word.search(b1Regex) >= rvIndex){
+ word = word.replace(b1Regex,'$1');
+ }
+ }
+
+ /* Step 2b: Other verb suffixes*/
+ if (step2aDone && wordStep1 == word) {
+ if (word.search(/(ions)$/) >= r2Index) {
+ word = word.replace(/(ions)$/, '');
+ } else {
+ var b2Regex = /(é|ée|ées|és|èrent|er|era|erai|eraIent|erais|erait|eras|erez|eriez|erions|erons|eront|ez|iez)$/i;
+ if (word.search(b2Regex) >= rvIndex) {
+ word = word.replace(b2Regex, '');
+ } else {
+ var b3Regex = /e(âmes|ât|âtes|a|ai|aIent|ais|ait|ant|ante|antes|ants|as|asse|assent|asses|assiez|assions)$/i;
+ if (word.search(b3Regex) >= rvIndex) {
+ word = word.replace(b3Regex, '');
+ } else {
+ var b3Regex2 = /(âmes|ât|âtes|a|ai|aIent|ais|ait|ant|ante|antes|ants|as|asse|assent|asses|assiez|assions)$/i;
+ if (word.search(b3Regex2) >= rvIndex) {
+ word = word.replace(b3Regex2, '');
+ }
+ }
+ }
+ }
+ }
+
+ if(oriWord != word.toLowerCase()){
+ /* Step 3 */
+ var rep = '';
+ if(word.search(/Y$/) != -1) {
+ word = word.replace(/Y$/, 'i');
+ } else if(word.search(/ç$/) != -1){
+ word = word.replace(/ç$/, 'c');
+ }
+ } else {
+ /* Step 4 */
+ //If the word ends s, not preceded by a, i, o, u, è or s, delete it.
+ if (word.search(/([^aiouès])s$/) >= rvIndex) {
+ word = word.replace(/([^aiouès])s$/, '$1');
+ }
+ var e1Index = word.search(/ion$/);
+ if (e1Index >= r2Index && word.search(/[st]ion$/) >= rvIndex) {
+ word = word.substring(0, e1Index);
+ } else {
+ var e2Index = word.search(/(ier|ière|Ier|Ière)$/);
+ if (e2Index != -1 && e2Index >= rvIndex) {
+ word = word.substring(0, e2Index) + "i";
+ } else {
+ if (word.search(/e$/) >= rvIndex) {
+ word = word.replace(/e$/, ''); //delete last e
+ } else if (word.search(/guë$/) >= rvIndex) {
+ word = word.replace(/guë$/, 'gu');
+ }
+ }
+ }
+ }
+
+ /* Step 5: Undouble */
+ //word = word.replace(/(en|on|et|el|eil)(n|t|l)$/,'$1');
+ word = word.replace(/(en|on)(n)$/,'$1');
+ word = word.replace(/(ett)$/,'et');
+ word = word.replace(/(el|eil)(l)$/,'$1');
+
+ /* Step 6: Un-accent */
+ word = word.replace(/[éè]([^aeiouyâàëéêèïîôûù]+)$/,'e$1');
+ word = word.toLowerCase();
+ return word;
+};
+
+var eqOut = new Array();
+var noteqOut = new Array();
+var eqCount = 0;
+/*
+To test the stemming, create two arrays named "voc" and "COut" which are for vocabualary and the stemmed output.
+Then add the vocabulary strings and output strings. This method will generate the stemmed output for "voc" and will
+compare the output with COut.
+ (I used porter's voc and out files and did a regex to convert them to js objects. regex: /");\nvoc.push("/g . This
+ will add strings to voc array such that output would look like: voc.push("foobar"); ) drop me an email for any help.
+ */
+function testFr(){
+ var start = new Date().getTime(); //execution time
+ eqCount = 0;
+ eqOut = new Array();
+ noteqOut = new Array();
+ for(var k=0;k<voc.length;k++){
+ if(COut[k]==stemmer(voc[k])){
+ eqCount++;
+ eqOut.push("v: "+voc[k]+" c: "+COut[k]);
+ } else {
+ noteqOut.push(voc[k]+", c: "+COut[k]+" s:"+stemmer(voc[k]));
+ }
+ }
+ var end = new Date().getTime(); //execution time
+ var time = end-start;
+ alert("equal count= "+eqCount+" out of "+voc.length+" words. time= "+time+" ms");
+ //console.log("equal count= "+eqCount+" out of "+voc.length+" words. time= "+time+" ms");
+}
+
+