Mageia is distributed via ISO images. This page will help you to choose
+which image match your needs.
There is two families of media:
Classical installer: After booting the media, it will follow a process
+allowing to choose what to install and how to configure your target
+system. This give you the maximal flexibility for a customized installation,
+in particular to choose which Desktop Environment you will install.
LIVE media: you can boot the media in a real Mageia system without
+installing it, to see what you will get after installation. The
+installation process is simpler, but you get lesser choices.
Details are given in the next sections.
Vir
Definition
Here, a medium (plural: media) is an ISO image file that allows you to
+install and/or update Mageia and by extension any physical support the ISO
+file is copied to.
These ISOs use the traditional installer called drakx.
They are able to make a clean install or an update from previous releases.
DVD
Different media for architecture 32 or 64 bits.
Some tools are available in the Welcome screen: Rescue System, Memory Test,
+Hardware Detection Tool.
Each DVD contains many available desktop environments and languages.
You'll be given the choice during the installation to add non free software.
DVD dual arch
Both architectures are present on the same medium, the choice is made
+automatically according to the detected CPU.
Uses Xfce desktop only.
Not all languages are available. (be, bg, ca, de, en, es, fr, it, mk, pl,
+pt, ru, sv, uk) TO BE CHECKED!
It contains non free software.
Live media
Common features
Can be used to preview the distribution without installing it on a HDD, and
+optionally install Mageia on to your HDD.
Each ISO contains only one desktop environment (KDE or GNOME).
Different media for 32 or 64 bit architectures.
Live ISOs can only be used to create clean
+installations, they cannot be used to upgrade from previous
+releases.
They contain non free software.
Live CD KDE
KDE desktop environment only.
English language only.
32 bit only.
Live CD GNOME
GNOME desktop environment only.
English language only.
32 bit only.
Live DVD KDE
KDE desktop environment only.
All languages are present.
Different media for 32 or 64 bit architectures.
Live DVD GNOME
GNOME desktop environment only.
All languages are present.
Different media for 32 or 64 bit architectures.
Boot-only CD media
Common features
Each one is a small image that contains no more than that which is needed to
+start the drakx installer and find drakx-installer-stage2 and other packages
+that are needed to continue and complete the install. These packages may be
+on the PC hard disk, on a local drive, on a local network or on the
+Internet.
These media are very light (less than 100 MB) and are convenient when
+bandwidth is too low to download a full DVD, a PC without a DVD drive or a
+PC that can't boot from a USB stick.
Different media for 32 or 64 bit architectures.
English language only.
boot.iso
Contains only free software, for those people who refuse to use non-free
+software.
boot-nonfree.iso
Contains non-free software (mostly drivers, codecs...) for people who need
+it.
Downloading and Checking Media
Downloading
Once you have chosen your ISO file, you can download it using either http or
+BitTorrent. In both cases, a window gives you some information, such as the
+mirror in use and the possibility to change if the bandwidth is to low. If
+http is chosen, you may also see something like
md5sum and sha1sum are tools to check the ISO integrity. Use only one of
+them. Keep one of them for further
+usage. Then this window appears:
Check the radio button Save File.
Checking the downloaded media integrity
Both checksums are hexadecimal numbers calculated by an algorithm from the
+file to be downloaded. When you ask these algorithms to recalculate this
+number from your downloaded file, either you have the same number and your
+downloaded file is correct, or the number is different and you have a
+failure. A failure infers that you should retry the download.
Open a console, no need to be root, and:
- To use md5sum, type: [sam@localhost]$ md5sum
+path/to/the/image/file.iso.
- To use sha1sum, type: [sam@localhost]$ sha1sum
+path/to/the/image/file.iso.
and compare the obtained number on your computer (you may have to wait for a
+while) with the number given by Mageia. Example:
Burn or dump the ISO
The checked ISO can now be burned to a CD or DVD or dumped to a USB
+stick. These operations are not a simple copy and aim to make a boot-able
+medium.
Burning the ISO to a CD/DVD
Use whatever burner you wish but ensure the burning device is set correctly
+to burn an image, burn data or files is not
+correct. There is more information in the Mageia
+wiki.
Dump the ISO to a USB stick
All Mageia ISOs are hybrids, which means you can 'dump' them to a USB stick
+and then use it to boot and install the system.
Pozor
Odlaganje odtisa nosilca za namestitev na ključek USB izbriše vse njegove
+datotečne sisteme. Navidezna velikost naprave bo omejena na velikost
+odtisa. Izgubili boste vse podatke na njem.
To recover the original capacity, you must redo partitioning and re-format
+the USB stick.
Using a graphical tool within Mageia
Uporabite lahko orodje z grafičnim vmesnikom kot je IsoDumper
Using a graphical tool within Windows
You could try:
- Rufus z uporabo
+možnosti "ISO image" "ISO slika" ;
It is advisable for all Mageia installations to
+set a superuser or administrator's password, usually called the
+root password in Linux. As you type a password into the
+top box the colour of its shield will change from red to yellow to green
+depending on the strength of the password. A green shield shows you are
+using a strong password. You need to repeat the same password in the box
+just below the first password box, this checks that you have not mistyped
+the first password by comparing them.
Opomba
All passwords are case sensitive, it is best to use a mixture of letters
+(upper and lower case), numbers and other characters in a password.
Dodajte uporabnika
Add a user here. A user has fewer rights than the superuser (root), but
+enough to surf the internet, use office applications or play games and
+anything else the average user does with his computer
Icon: if you click on this button it will change the
+users icon.
Real Name: Insert the users real name into this text
+box.
Login Name: Here you enter the user login name or let
+drakx use a version of the users real name. The login name is case
+sensitive.
Password: In this text box you should type in the user
+password. There is a shield at the end of the text box that indicates the
+strength of the password. (See also Opomba)
Password (again): Retype the user password into this
+text box and drakx will check you have the same password in each of the user
+password text boxes.
Opomba
Any user you add while installing Mageia, will have a world readable (but
+write protected) home directory.
However, while using your new install, any user you add in MCC -
+System - Manage users on system will have a home directory that
+is both read and write protected.
If you don't want a world readable home directory for anyone, it is advised
+to only add a temporary user now and to add the real one(s) after reboot.
If you prefer world readable home directories, you might want to add all
+extra needed users in the Configuration - Summary step
+during the install. Choose User management.
Dovoljenje dostopa lahko spremenite tudi po namestitvi
Here you see the Linux partitions that have been found on your computer. If
+you don't agree with the DrakX suggestions, you
+can change the mount points.
Opomba
If you change anything, make sure you still have a /
+(root) partition.
Every partition is shown as follows: "Device" ("Capacity", "Mount point",
+"Type").
"Device", is made up of: "hard drive", ["hard drive number"(letter)],
+"partition number" (for example, "sda5").
If you have many partitions, you can choose many different mount points from
+the drop down menu, such as /, /home
+and /var. You can even make your own mount points, for
+instance /video for a partition where you want to store
+your films, or /cauldron-home for the
+/home partition of a cauldron install.
For partitions you don't need to have access to, you can leave the mount
+point field blank.
Pozor
Choose Previous if you are not sure what to choose,
+and then tick Custom disk partitioning. In the screen
+that follows, you can click on a partition to see its type and size.
If you are sure the mount points are correct, click on
+Next, and choose whether you only want to format the
+partition(s) DrakX suggests, or more.
You can boot directly from the media you used to burn your image (CD-ROM,
+DVD-ROM...). You usually just need to insert it in your CD/DVD drive for the
+bootloader to launch the installation automatically after rebooting the
+computer. If that does not happen you may need to reconfigure your BIOS or
+press one key that will offer you to choose the peripheral from which the
+computer will boot.
According to which hardware you have, and how it is configured, you get
+either one or another of the two screens below.
Z naprave USB
You can boot from the USB device on which you dumped your image
+ISO. According to your BIOS settings, the computer boots perhaps directly on
+the USB device already plugged in a port. If that does not happen you may
+need to reconfigure your BIOS or press one key that will offer you to choose
+the peripheral from which the computer will boot.
V načinu BIOS/CSM/Legacy
Prvi zaslon med zagonom v načinu BIOS
In the middle menu, you have the choice between three actions:
Boot Mageia: That means Mageia 5 will start from the connected media (CD/DVD
+or USB stick) without writing anything on the disk, so expect a very slow
+system. Once the boot is done, you can proceed to the installation on a hard
+disk.
Install Mageia: This choice will directly install Mageia on a hard disk.
Boot from hard disk: This choice allows to boot from hard disk, as usual,
+when no media (CD/DVD or USB stick) is connected. (not working with Mageia
+5).
V spodnjem meniju so na voljo zagonske možnosti:
F1 - pomoč. Razlaga možnosti »splash«, »apm«, »acpi« in »Ide«
F2 - jezik. Izbor jezika za prikaz na zaslonu.
F3 - ločljivost zaslona. Na voljo je izbor: tekst, 640x400, 800x600,
+1024x728
F4 - CD-Rom. CD-Rom or Other. Normally, the installation is performed from
+the inserted installation medium. Here, select other sources, like FTP or
+NFS servers. If the installation is carried out in a network with an SLP
+server, select one of the installation sources available on the server with
+this option.
F5 - Driver. Yes or No. The system is aware about the presence of an
+optional disk with a driver update and will require its insertion during
+installation process.
F6 - Kernel options. This is a way to specify options according to your
+hardware and the drivers to use.
V načinu UEFI
Prvi zaslon med zagonom sistema z diska v načinu UEFI
You have only the choice to run Mageia in Live mode (first choice) or to
+process the installation (second choice).
If you booted from a USB stick, you get two supplemental lines which are a
+duplicata of the previous lines suffixed with "USB". You have to choose
+them.
In each case, the first steps will be the same to choose language, timezone
+and keyboard, then the processes differ, with additional steps in Live mode.
diff --git a/draklive/5/sl/content/diskdrake.html b/draklive/5/sl/content/diskdrake.html
new file mode 100644
index 00000000..56b52043
--- /dev/null
+++ b/draklive/5/sl/content/diskdrake.html
@@ -0,0 +1,43 @@
+
+
+
+
+ Razdeljevanje diska po meri s programom DiskDrake
If you wish to use encryption on your / partition you
+must ensure that you have a separate /boot partition. The
+encryption option for the /boot partition must NOT be
+set, otherwise your system will be unbootable.
Adjust the layout of your disk(s) here. You can remove or create
+partitions, change the filesystem of a partition or change its size and even
+view what is in them before you start.
There is a tab for every detected hard disk or other storage device, like an
+USB key. For example sda, sdb and sdc if there are three of them.
Push Clear all to wipe all partitions on the selected
+storage device
For all other actions: click on the desired partition first. Then view it,
+or choose a filesystem and a mount point, resize it or wipe it.
Continue until you adjusted everything to your wishes.
Klikni Končano ko bo v redu.
Opomba
If you are installing Mageia on an UEFI system, check that an ESP (EFI
+System Partition) is present and correctly mounted on /boot/EFI (see above)
In this screen you can see the content of your hard drive(s) and see the
+solutions the DrakX partitioning wizard found for where to install
+Mageia.
The options available from the list below will vary depending on your
+particular hard drive(s) layout and content.
Uporabi obstoječe razdelke
If this option is available, then existing Linux compatible partitions have
+been found and may be used for the installation.
Uporabi razpoložljivi prostor
If you have unused space on your hard drive then this option will use it for
+your new Mageia installation.
Uporabi razpoložljivi prostor v razdelku za Windows
If you have unused space on an existing Windows partition, the installer may
+offer to use it.
This can be a useful way of making room for your new Mageia installation,
+but is a risky operation so you should make sure you have backed up all
+important files!
Note that this involves shrinking the size of the Windows partition. The
+partition must be "clean", meaning that Windows must have closed down
+correctly the last time it was used. It must also have been defragmented,
+although this is not a guarantee that all files in the partition have been
+moved out of the area that is about to be used. It is highly recommended to
+back up your personal files.
With this option, the installer displays the remaining Windows partition in
+light blue and the future Mageia partition in dark blue with their intended
+sizes just under. You have the possibility to adapt these sizes by clicking
+and dragging the gap between both partitions. See the screen-shot below.
Zbriši in uporabi celoten disk.
Ta možnost bo uporabila celoten pogon za Magejo.
Pozor! To bo pobrisalo VSE podatke na izbrani napravi. Pazljivo!
If you intend to use part of the disk for something else, or you already
+have data on the drive that you are not prepared to lose, then do not use
+this option.
Po meri
This gives you complete control over the placing of the installation on your
+hard drive(s).
Velikost razdelkov:
The installer will share the available place out according to the following
+rules:
If the total available place is lower than 50 GB, only one partition is
+created for /, there is no separate partition for /home.
If the total available place is over 50 GB, then three partitions are
+created
6/19 of the total available place is allocated to / with a maximum of 50 GB
1/19 is allocated to swap with a maximum of 4 GB
the rest (at least 12/19) is allocated to /home
That means that from 160 GB and over of available place, the installer will
+create three partitions: 50 GB for /, 4 GB for swap and the rest for /home.
Opomba
If you are using an UEFI system, the ESP (EFI System Partition) will be
+automatically detected, or created if it does not exist yet, and mounted on
+/boot/EFI. The "Custom" option is the only one that allows to check it has
+been correctly done
Pozor
Some newer drives are now using 4096 byte logical sectors, instead of the
+previous standard of 512 byte logical sectors. Due to lack of available
+hardware, the partitioning tool used in the installer has not been tested
+with such a drive. Also some ssd drives now use an erase block size over 1
+MB. We suggest to pre-partition the drive, using an alternative partitioning
+tool like gparted, if you own such a device, and to use the following
+settings:
»Poravnaj z ang.: Align to« »MiB«
"Free space preceding (MiB)" "2"
Also make sure all partitions are created with an even number of megabytes.
Here you can choose which partition(s) you wish to format. Any data on
+partitions not marked for formatting will be saved.
Usually at least the partitions DrakX selected, need to be formatted
Click on Advanced to choose partitions you want to
+check for so called bad blocks
Namig
If you're not sure you have made the right choice, you can click on
+Previous, again on Previous
+and then on Custom to get back to the main screen.
+In that screen you can choose to view what is in your partitions.
When you are confident about the selection, click on
+Next to continue.
No one will see all the installer screens that you see in this manual. Which
+screens you will see, depends on your hardware and the choices you make
+while installing.
Enter your user name and user password, and in a few seconds you will find
+yourself with a loaded KDE or GNOME desktop, depending on which live medium
+you used. You can now start using your Mageia installation.
Once the bootloader has been installed, you will be prompted to halt your
+computer, remove the live CD and restart the computer. When you restart, you
+will see a succession of download progress bars. These indicate that the
+software media are being downloaded (see Software management).
" + "Your search returned no results for " + "" + txt_wordsnotfound + "" + "
";
+ }
+ //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";
+ 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 += " dada"+sortedTokens+" ";
+// console.log(tokens.length+"dsdsds");
+ /*for(i=0;idada"+un[i]+"- "+stems[i]+" "+ ss;
+ document.getElementById("content").innerHTML += " "+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/5/sl/content/search/punctuation.props b/draklive/5/sl/content/search/punctuation.props
new file mode 100644
index 00000000..d3e3fcd2
--- /dev/null
+++ b/draklive/5/sl/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/5/sl/content/search/stemmers/de_stemmer.js b/draklive/5/sl/content/search/stemmers/de_stemmer.js
new file mode 100644
index 00000000..7ff3822a
--- /dev/null
+++ b/draklive/5/sl/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/5/sl/content/search/stemmers/en_stemmer.js b/draklive/5/sl/content/search/stemmers/en_stemmer.js
new file mode 100644
index 00000000..f58012f2
--- /dev/null
+++ b/draklive/5/sl/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/5/sl/content/search/stemmers/fr_stemmer.js b/draklive/5/sl/content/search/stemmers/fr_stemmer.js
new file mode 100644
index 00000000..34f97431
--- /dev/null
+++ b/draklive/5/sl/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
+
+
+
+ Select keyboard
You will be required to set the keyboard layout you wish to use in
+Mageia. The default one is selected according to your language and
+timezone previously selected.
Select your preferred language, by first expanding the list for your
+continent. Mageia will use this selection during
+the installation and for your installed system.
Mageia uses UTF-8 (Unicode) support by default.
You can change the language of your system after installation in the Mageia
+Control Center -> System -> Manage localization for your system.
If you prefer different bootloader settings to those chosen automatically by
+the installer, you can change them here.
You may already have another operating system on your machine, in which case
+you need to decide whether to add Mageia to your existing bootloader, or
+allow Mageia to create a new one.
Namig
The Mageia graphical menus are nice :
Using a Mageia bootloader
By default, Mageia writes a new GRUB (legacy) bootloader into the MBR
+(Master Boot Record) of your first hard drive. If you already have other
+operating systems installed, Mageia attempts to add them to your new Mageia
+boot menu.
Mageia now also offers GRUB2 as an optional bootloader in addition to GRUB
+legacy and Lilo.
Pozor
Linux systems which use the GRUB2 bootloader are not currently supported by
+GRUB (legacy) and will not be recognized if the default GRUB bootloader is
+used.
The best solution here is to use the GRUB2 bootloader which is available at
+the Summary page during installation.
Using an existing bootloader
If you decide to use an existing bootloader then you will need to remember
+to STOP at the summary page during the installation and click the Bootloader
+Configure button, which will allow you to change the
+bootloader install location.
Do not select a device e.g."sda", or you will overwrite your existing
+MBR. You must select the root partition that you chose during the
+partitioning phase earlier, e.g. sda7.
To be clear, sda is a device, sda7 is a partition on that device.
Namig
Go to tty2 with Ctrl+Alt+F2 and type df to check where
+your / (root) partition is. Ctrl+Alt+F7 takes you back to
+the installer screen.
The exact procedure for adding your Mageia system to an existing bootloader
+is beyond the scope of this help, however in most cases it will involve
+running the relevant bootloader installation program which should detect and
+add it automatically. See the documentation for the operating system in
+question.
Napredne možnosti zagonskega nalagalnika
If you have very limited disk space for the / partition
+that contains /tmp, click on
+Advanced and check the box for Clean /tmp
+at each boot. This helps to maintain some free space.
With an UEFI system
With an UEFI system, the user interface is slightly different as you cannot
+choose the boot loader since only Grub2-efi is available.
If Mageia is the first system installed on your computer, the installer
+created an ESP (EFI System Partition) to receive the bootloader
+(Grub2-efi). If there was already UEFI operating systems previously
+installed on your computer (Windows 8 for example), the Mageia installer
+detected the existing ESP created by Windows and added grub2-efi. Although
+it is possible to have several ESPs, only one is advised and enough whatever
+the number of operating systems you have.
Don't modify the "Boot Device" unless really knowing what you do.
You can add an entry or modify the one you select first, by pressing the
+relevant button in the Bootloader Configuration screen
+and editing the screen that pops up on top of it.
Opomba
If you have chosen Grub 2 as your bootloader, you cannot use
+this tool to edit entries at this step, press 'Next'. You need to manually
+edit /boot/grub2/custom.cfg or use grub-customizer
+instead.
Some things that can be done without any risk, are changing the label of an
+entry and ticking the box to make an entry the default one.
You can add the proper version number of an entry, or rename it completely.
The default entry is the one the systems boots into if you don't make a
+choice while booting up.
Pozor
Editing other things can leave you with an unbootable system. Please don't
+just try something without knowing what you are doing.
With an UEFI system
In this case you are using Grub2-efi and you cannot use this tool to edit
+entries at this step. To do that you need to manually edit
+/boot/grub2/custom.cfg or use grub-customizer
+instead. All you can do here, is to choose the default entry in the drop
+down list.
After a click on the Next button, another drop down
+list allows to choose the video resolution for Grub2 which is a graphical
+boot loader.
diff --git a/draklive/5/sl/content/takeOverHdConfirm.html b/draklive/5/sl/content/takeOverHdConfirm.html
new file mode 100644
index 00000000..4c75c898
--- /dev/null
+++ b/draklive/5/sl/content/takeOverHdConfirm.html
@@ -0,0 +1,36 @@
+
+
+
+
+ Confirm hard disk to be formatted
You get this screen if you selected "Boot Mageia". If not, you get the
+"Partitioning step"
Testing hardware
One of the Live mode goals is to test if the hardware is correctly managed
+by Mageia. You can check if all devices have a driver in the Hardware
+section of the Mageia Control Center. You can test the most current devices:
network interface: configure it with net_applet
graphical card: if you see the previous screen, it's already OK.
webcam:
sound: a jingle has already been played
printer: configure it and print a test page
scanner: scan a document from ...
If all is OK for you, you can process to the installation. If not, you can
+leave with the quit button.
The configuration settings you made here are kept for the installation.
Launch installation
To launch the installation of Mageia LiveCD or Live DVD to the hard disc or
+SSD drive, simply click on the icon "Install on Hard Disk". You will get
+this screen, and then the "Partitioning step" as for the direct
+installation.
If Mageia didn't convince you or you can't install it correctly, in short
+you want get rid of it. That is your right and Mageia also gives you the
+possibility to uninstall. This is not true for every operating system.
After your data backup, reboot your installation Mageia DVD and select
+Rescue system, then, Restore Windows boot loader. At the next boot, you will
+only have Windows with no option to choose your operating system.
To recover the space used by Mageia partitions on Windows, click on
+Start -> Control Panel -> Administrative Tools -> Computer Management
+-> Storage -> Disk Management to access to the partition
+management. You will recognize the Mageia partition because they are labeled
+Unknown, and also by their size and place in the
+disk. Right click on each of these partitions and select
+Delete. The space will be freed.
If you are using Windows XP, you can create a new partition and format it
+(FAT32 or NTFS). It will get a partition letter.
If you have Vista or 7, you have one more possibility, you can extend the
+existing partition that is at the left of the freed space. There are other
+partitioning tools that can be used, such as gparted, available for both
+windows and linux. As always, when changing partitions, be very careful, and
+make sure all important things have been backed up.
In this step, the installer looks for unused locales packages and unused
+hardware packages. Then it proposes you to delete them. It is a good idea to
+accept, except if you prepare an installation which has to run on different
+hardware.
The next step is the copying of files on hard disk. This takes some
+minutes. At the end, you get a blank screen for some time, it's normal.