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.
Vetëm gjuha angleze.
32 bit vetëm.
Live CD GNOME
GNOME desktop environment only.
Vetëm gjuha angleze.
32 bit vetëm.
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.
Vetëm gjuha angleze.
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
Shkarkim
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. Both hexadecimal numbers have been 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.Then this
+window appears:
Check the radio button Save File.
Checking the downloaded media integrity
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.
Paralajmërim
"dumping" an image onto a flash device destroys any previous file-system on
+the device; any other data will be lost and the partition capacity will be
+reduced to the image size.
To recover the original capacity, you must re-format the USB stick.
Është e këshillueshme për të gjithë instalimet
+Mageia për të vendosur një superpërdorues apo
+fjalëkalim administratori, zakonisht të quajtur fjalëkalimin
+root në Linux. Siq ju shkruani një fjalëkalim në kutinë e lartë
+ngjyra e mburojës së saj do të ndryshojë nga e kuqe në të verdhë të gjelbër
+në varësi të fuqisë e password. Një mburojë e gjelbër tregon se jeni duke
+përdorur një fjalëkalim të fortë. Ju duhet për të përsëritur të njëjtin
+fjalëkalim në kutinë vetëm nën kutinë e parë fjalëkalimi, kjo kontrollon se
+ju nuk e keni shtypur keq pyetjen fjalëkalimin e parë duke i krahasuar ato.
Shënim
Të gjitha fjalëkalimet janë raste të ndjeshme, është mirë përdorimi një
+përzierje të shkronjave (mëdha dhe të vogla), numra dhe karaktere të tjera
+në një fjalëkalim.
Fut një përdorues
Shto një përdorues këtu. Një përdorues ka më pak të drejta se
+super-përdoruesit (root), por të mjaftueshme për të shfletuar në internet,
+përdorimi aplikacioneve të zyrës ose luajnë lojëra dhe çdo gjë tjetër
+përdoruesi mesatar bën me kompjuterin e tij
Ikonë: nëse klikoni në këtë buton do të ndryshojë
+ikonën e përdoruesve.
Emri Vërtetë: Vendos emrin e vërtetë të përdoruesit në
+këtë kuti teksti.
Emri Hyrës: Këtu ju shkruani emrin e përdoruesit hyrës
+ose le draky përdorimin e një versioni të emrin e vërtetë
+përdoruesit. Emri hyrës është rast i ndjeshme.
Fjalëkalimi: Në këtë kutinë e tekstit ju duhet të
+shkruani fjalëkalimin e përdoruesit. Nuk është një mburojë në fund të kutisë
+të tekstit që tregon fuqinë e fjalëkalimin. (Shiko edhe Shënim)
Fjalëkalimi (përsëri): Rishkruaj fjalëkalimin e
+përdoruesit në këtë kuti të tekstit dhe DrakX do të kontrollojë ju keni të
+njëjtin fjalëkalim në secilën nga kutitë e tekstit përdorues fjalëkalim.
Shënim
Çdo përdorues ju shtoni gjatë instalimit Mageia, do të ketë një botë të
+lexueshëm (por shkrim i mbrojtur) skedari shtëpi.
Megjithatë, duke përdorur instalmin tuaj të ri, çdo përdorues që të shtoni
+në MCC - System - Menaxho përdoruesit në sistem do të
+ketë një skedarë shtëpi që është me mbrojtje lexo dhe shkruaj.
Nëse ju nuk doni një skedarë të përgjithshëm të lexueshëm shtëpi për të
+gjithë, është këshilluar për të shtuar vetëm një përdorues të përkohshme
+tani dhe për të shtuar një të vërtetë pa(s) rinisjes.
Nëse ju preferoni skedarë të lexueshëm dokumente në shtëpi, ju mund të
+dëshironi të shtoni të gjithë përdoruesit shtesë të nevojshme në
+Konfiguracion - Përmbledhje hap gjatë
+instalimit. Zgjidh Menaxhimi Përdoruesit.
Lejet hyrëse gjithashtu mund të ndryshohet pas instalimit.
Menaxhim Përdoruesi Avancuar
Nëse avancimi butoni është i klikuar ju ofrohet një
+ekran që ju lejon të modifikoni cilësimet për përdoruesin që ju jeni duke
+shtuar. Përveç kësaj, ju mund të çaktivizoni ose të mundësoni një llogari
+vizitor.
Paralajmërim
Anything a guest with a default rbash guest account
+saves to his /home directory will be erased when he logs out. The guest
+should save his important files to a USB key.
Aktivizo llogarinë visitor: Këtu ju mund të mundësoni
+ose çaktivizoni një llogari visitor.Llogaria visitor lejon një visitor për
+të hyrë në dhe të përdorur PC'në, por ai ka qasje më të kufizuar se
+përdoruesit normal.
Shell: This drop down list allows you to change the
+shell used by the user you are adding in the previous screen, options are
+Bash, Dash and Sh
User ID: Here you can set the user ID for the user you
+are adding in the previous screen. This is a number. Leave it blank unless
+you know what you are doing.
Group ID: This lets you set the group ID. Also a
+number, usually the same one as for the user. Leave it blank unless you know
+what you are doing.
Përzgjedhja Media (Konfiguro Plotësues Media Instalimi)
Përzgjedhja Media (Konfiguro Plotësues Media Instalimi)
Ky ekran ju jep listën e Depove të njohura tashmë. Ju mund të shtoni burime
+të tjera për paketat, si një disk optik apo një burim të largët. Zgjedhja
+burim përcakton se cilat paketë do të jetë në dispozicion për përzgjedhje
+gjatë hapave të ardhshëm.
Për një burim të rrjetit, ka dy hapa që duhet të ndiqni:
Zgjedhja dhe aktivizimi i rrjetit, nëse nuk bërë tashmë.
Zgjedhjen e një pasqyrë apo një URL të specifikuar (hyrje e parë). Me
+zgjedhjen e një pasqyrë, ju keni qasje në zgjedhjen e të gjitha depove të
+menaxhuara nga Mageia, si jofalas, depot e njollosura dhe azhornimet. Me
+URL, ju mund të caktojë një depo të veçantë ose vet instalimin tuaj NFS.
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.
Shënim
Nëse ju ndryshoni ndonjë gjë, sigurohuni që ju ende keni një
+/ ndarje (root).
Çdo ndarje është treguar si vijimi: "Pajisje" ("Kapacitet", "Pikë montimi",
+"Tipi").
"Pajisja", është e përbërë nga: "hard-disku", ["numri i
+hard-diskut"(shkronjë)], "numri ndarjes" (për shembull, "sda5").
Nëse ju keni shumë ndarëse, ju mund të zgjidhni pika montuese shumë të
+ndryshme nga menyja poshtë, të tilla si /,
+/shtëpi dhe /var. Ju mund të bëni edhe
+vetë pikat montuese, për shembull /video për një ndarje
+ku ju doni të ruani filmat tuaj, ose /cauldron-shtëpi për
+/shtëpi ndarjet e një instalimi cauldron.
Për ndarëse që ju nuk keni të drejta në, ju mund të lënë pikë fushës
+montuese bosh.
Paralajmërim
ZgjedhMëparshëm në qoftë se ju nuk jeni të sigurt
+çfarë të zgjidhni, dhe pastaj shënoni Ndarja diskut
+personalizuar. Në ekran që vijon, ju mund të klikoni mbi një
+ndarje për të parë llojin e saj dhe madhësinë.
Nëse jeni të sigurt që pikat montuese janë të sakta, klikoni mbi
+Tjetër, dhe zgjidhni nëse ju vetëm dëshironi të
+formatoni ndarjen(s) DrakX sugjeruar, ose më shumë.
Në varësi të zgjedhjes tuaj këtu, ju mund të ju ofrohet ekran i mëtejshme
+për të akorduar gjobë zgjedhjes tuaj.
Pas përzgjedhjes hapave(s), ju do të shihni një shfaqje gjatë instalimit të
+paketës. Shfaqje mund të ç'aktiviohet duke shtypur butonin
+Detajet
Zgjidhni nëse ju preferoni të përdorni KDE ose
+Gnome mjedisin desktop. Të dy vijnë me një seri
+të plotë të aplikacioneve të dobishme dhe mjetet. Shenjë
+Personalizuar nëse ju nuk doni të përdorni asnjërin ose
+të dy, ose nëse ju doni diçka tjetër përveç zgjidhjes programit të
+paracaktuar për këto mjedise desktop. LXDE
+desktop është më e lehtë se dy të mëparshmit, mbështet karamele sy më pak
+dhe më pak paketa instaluese nga parazgjedhja.
Paketat janë të renditura në grupe, për të bërë zgjedhjen atyre që ju duhet
+në sistemin tuaj shumë më e lehtë. Grupet janë mjaft të vetë shpjegueshëm,
+megjithatë më shumë informacion në lidhje me përmbajtjen e secilit është në
+dispozicion në mjet-këshilla të cilat bëhen të dukshme kur miu fluturon mbi
+ta.
Stacion-pune.
Server.
Mjedis Grafike.
Zgjedhja Individuale Paketave: Ju mund të përdorni këtë opsion për të shtuar
+manualisht ose hequr paketa.
Këtu ju mund të shtoni ose hiqni çdo paketë shtesë për të rregulluar
+instalimin tuaj.
After having made your choice, you can click on the floppy
+icon at the bottom of the page to save your choice of packages
+(saving to a USB key works, too). You can then use this file to install the
+same packages on another system, by pressing the same button during install
+and choosing to load it.
Zgjidhni një X Server (Konfiguro Kartën tuaj Grafike)
Zgjidhni një X Server (Konfiguro Kartën tuaj Grafike)
DrakX has a very comprehensive database of video cards and will usually
+correctly identify your video device.
Nëse instaluesi nuk ka zbuluar kartën tuaj grafike të saktë dhe ju e dini
+cilën keni, ju mund të zgjidhni atë nga pema nga:
shitës
atëherë emrin e kartës tuaj
dhe lloji i kartës
Nëse ju nuk mund të gjeni kartën tuaj në listat shitësit (për shkak se ajo
+nuk është ende në bazën e të dhënave ose është një kartë të vjetër) ju mund
+të gjeni një drejtues të përshtatshme në kategorinë Xorg
Lista Xorg ofron më shumë se 40 drejtues përgjithshëm dhe të burimit hapur
+kartave video. Nëse ju ende nuk mund të gjeni një drejtues për emrin e
+kartës tuaj ekziston opsioni i përdorimit të drejtuesit vesa e cila ofron
+aftësitë themelore.
Të jenë të vetëdijshëm se në qoftë se ju zgjidhni drejtues papajtueshme ju
+vetëm mund të kenë të drejtë hyrje në Ndërfaqen Komandave.
Disa prodhues kartë video japin drejtues të pronarit për Linux cilat mund të
+jenë në dispozicion vetëm në depo jo-falas dhe në disa raste vetëm nga faqet
+e internetit të prodhuesit kartës.
Depoja jo-falas duhet të jenë të aktivizuara në mënyrë eksplicite për të
+hyrë në to. Nëse ju nuk e zgjidhni atë më parë, ju duhet të bëni këtë pas
+rinisjes tuaj të parë.
Pa marrë parasysh se cili mjedis grafik (e njohur edhe si mjedisi desktop)
+ju zgjidhni për këtë instalim i Mageia, ato janë
+të gjitha të bazuara në një sistem të përdoruesit ndërfaqe grafike të
+quajtur X Window Sistem, ose thjeshtë
+X. Pra, në mënyrë përKDE,
+Gnome, LXDE ose çdo mjedis tjetër
+grafik të punojnë mirë, në vijim X cilësimet duhet të
+jenë të saktë. Zgjidhni parametrat e saktë, nëse ju mund të shihni se
+DrakX nuk bëri një zgjedhje, ose në qoftë se ju
+mendoni se zgjedhja është e gabuar.
Karta Grafike: Zgjidhni kartën
+tuaj nga lista nëse është e nevojshme.
Monitor: Ju mund të zgjidhni
+Plug'n Play kur është e aplikueshme, ose zgjidhni
+monitorimin tuaj nga Shitës ose
+Përgjithshëm listë. Zgjidh
+Personalizuar nëse preferoni për të vendosur
+rifreskimin manual horizontal dhe vertikal të monitorimit tuaj.
Paralajmërim
Normat e pasakta Rifresko mund të dëmtojë monitoruar tuaj
Rezolucion: Vendos rezolucionin
+dhe ngjyra e dëshiruara në thellësinë e monitoruar tuaj këtu.
Test: Butoni Test jo gjithmonë
+duket gjatë instalimit. Nëse butoni është atje, ju mund të kontrollojë
+parametrat tuaj duke shtypur atë. Nëse ju shikoni një pyetje që ju pyet nëse
+parametrat tuaj janë të sakta, ju mund t'i përgjigjeni "Po", dhe cilësimet
+do të mbahen. Nëse ju nuk e shihni ndonjë gjë, ju do të ktheheni në ekranin
+e konfigurimit dhe të jeni në gjendje për të rikonfiguruar gjithçka derisa
+testi është i mirë.Sigurohuni që parametrat tuaj janë në anën e
+sigurt nëse botoni Test nuk është në dispozicion
Opsione: Këtu ju mund të
+zgjidhni të mundësoni ose çaktivizoni opsionet e ndryshme.
DrakX ka një bazë të dhënash shumë të plotë të vëzhguesve dhe zakonisht do
+të identifikojë saktë tuajat.
Paralajmërim
Zgjedhja e një monitori me karakteristika të ndryshme mund të
+dëmtojnë monitoruar tuaj ose pjesën-elektronike video. Ju lutem mos provoni
+diçka pa e ditur atë që ju po bëni. Nëse në dyshim ju duhet të
+konsultoheni me dokumentacionin tuaj monitorit
Personalizuar
Ky opsion ju lejon të vendosni dy parametra kritike, normën vertikale
+rifresko dhe shkalla horizontale sinkronizim. Rifresko Vertikal përcakton se
+sa shpesh në ekran është rifreskuar dhe sinkronizuar horizontalisht është
+shkalla në të cilën linjat skanuara janë shfaqur.
It is VERY IMPORTANT that you do not specify a monitor
+type with a sync range that is beyond the capabilities of your monitor: you
+may damage your monitor. If in doubt, choose a conservative setting and
+consult your monitor documentation.
Plug 'n Play
Kjo është alternativa e parazgjedhur dhe përpiqet për të përcaktuar llojin
+monitorit nga baza e të dhënave monitorëve.
Shitës
Nëse instaluesi nuk e ka zbuluar saktësisht monitoruar tuaj dhe ju e dini
+cilin ju keni, ju mund të zgjidhni atë nga pema duke përzgjedhur:
shitës
emri i prodhuesit të monitoruar
përshkrimi monitorit
Përgjithshëm
zgjedhja e këtij grupi tregon gati 30 konfigurime të ekranit të tilla si
+1024x768 @ 60Hz dhe përfshin Panele të sheshtë si laptop të përdorur. Kjo
+është shpesh një grup i mirë përzgjedhje monitorimi nëse ju duhet të
+përdorni drejtuesin kartës Vesa kur pajisja juaj grafike nuk mund të
+përcaktohet automatikisht. Edhe një herë kjo mund të jetë e mençur të jetë
+konservatore në zgjedhjen tuaj.
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
Për të gjitha veprimet e tjera: klikoni mbi ndarjen e dëshiruar të
+parë. Pastaj vështro atë, ose zgjidhni një dokumentacion-sistemi dhe një
+pikë montimi, ndrysho atë apo fshij atë.
Vazhdoni derisa ju të keni rregulluar gjithçka për dëshirat tuaja.
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.
Opsionet në dispozicion nga lista e meposhtme do të ndryshojnë në varësi të
+veçantë hard disku(t) paraqitjen dhe përmbajtjen.
Përdor ndarjet ekzistuese
Nëse ky opsion është në dispozicion, atëherë ndarjet ekzistuese Linux në
+përputhje janë gjetur dhe mund të përdoren për instalimin.
Përdor Hapësirën e Lirë
Nëse ju keni hapësirë të papërdorur në disk drive tuaj atëherë ky opsion
+do të përdorë atë për instalimin tuaj të ri Mageia.
Përdore Hapësirën e Lirë në Ndarjen Windows
Nëse ju keni hapësirë të papërdorur në një ndarje ekzistuese të Windows,
+instaluesi mund të ofrojë ta përdorni atë.
Kjo mund të jetë një mënyrë e dobishme për të bërë vend për instalimin tuaj
+të ri Mageia, por është një operacion i rrezikshëm kështu që ju duhet të
+jeni të sigurte që ju keni ruajtur rezervë gjitha dosjet e rëndësishme!
Vini re se kjo përfshin pakësimin madhësinë e ndarjes Windows. Ndarja duhet
+të jetë "e pastër", që do të thotë që Windows duhet të jenë mbyllur në
+mënyrë korrekte herën e fundit që është përdorur. Ajo duhet të ketë qenë
+de-fragmentuar, edhe pse kjo nuk është një garanci që të gjitha dosjet në
+ndarje janë zhvendosur nga zona që është gati për t'u përdorur. Është shumë
+e rekomanduar për të ruajtur dosjet tuaja personale rezervë.
Fshi dhe të përdor të Gjithë Diskun.
Ky opsion do të përdorin të gjithë diskun për Mageia.
Shënim! Kjo do të fshijë të gjitha të dhënat në hard diskun e
+zgjedhur. Kujdes!
Nëse keni ndërmend të përdorni një pjesë të diskut për diçka tjetër, ose ju
+tashmë keni të dhënat në disk që ju nuk jeni të përgatitur për të humbur,
+atëherë mos e përdorni këtë opsion.
Personalizuar
Kjo ju jep kontroll të plotë mbi vendosjen e instalimit në hard-disqet(s)
+tuaja.
Paralajmërim
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:
"Align to" "MiB"
"Free space preceding (MiB)" "2"
Gjithashtu sigurohuni që të gjitha ndarëset janë krijuar me një numër çift
+në megabajt.
Here you can choose which partition(s) you wish to format. Any data on
+partitions not marked for formatting will be saved.
Zakonisht të paktën ndarësja e zgjedhur DrakX duhet të jetë e formatuar
Kliko në Përparuar për të zgjedhur ndarësen ju doni
+të kontrolloni për të ashtuquajturën blloqe të këqija
Propozim
Nëse ju nuk jeni i sigurt që ju keni bërë zgjedhjen e duhur, ju mund të
+klikoni mbi butonin e Mëparshëm, përsëri në
+Mëparshëm dhe pastaj në
+Konfiguro të kthehet në ekranin kryesor. Në këtë
+ekran ju mund të zgjidhni për të parë atë që është në ndarëse tuaj.
Kur ju jeni të sigurt në lidhje me zgjedhjen, klikoni mbi
+Tjetër për të vazhduar.
Askush nuk do të shohë të gjitha ekranet instaluese që ju shihni në këtë
+manual. Cilat ekrane ju do të shihni, varet nga pjesët-elektronike tuaja dhe
+zgjedhjet që bëni gjatë instalimit.
Që nga ky version i Mageia u lirua, disa paketa
+duhet të ishin azhurnuar apo përmirësuar.
Zgjidhpo nëse ju dëshironi të shkarkoni dhe të
+instaloni ato, përzgjidhni jo nëse ju nuk doni të bëni
+këtë tani, ose në qoftë se ju nuk jeni të lidhur në internet
Nëse jeni të ri në GNU-Linux apo një përdorues me përvojë, instaluesi Mageia
+është projektuar për të ndihmuar të bëjë instalimin tuaj ose përditsimin sa
+më lehtë të jetë e mundur.
Meny ekranit fillestar ka opsione të ndryshme, gjithsesi i paracaktuaro do
+të fillojë instaluesin, i cili normalisht do të jetë gjithçka që ju do të
+keni nevojë.
Figura 1. Pamja Fillestare Instalimit
Ky është ekrani fillestar parazgjedhur kur përdorni një DVD Mageia:
Nga ky ekran i parë, është e mundur për të vendosur disa nga preferencat
+personale:
Gjuha (për instalimin e vetëm, mund të jet e ndryshme nga gjuha e zgjedhur
+për sistemin), duke shtypur butonin F2
Përdorni butonat shigjetë për të zgjedhur gjuhën dhe shtypni butonin Enter.
Here is for example, the French welcome screen when using a Live
+DVD/CD. Note that the Live DVD/CD menu does not propose: Rescue
+System, Memory test and Hardware
+Detection Tool.
Ndrysho rezolucionin e ekranit duke shtypur butonin F3.
Shtoni disa opsione kernel duke shtypur butonin F6.
If the installation fails, then it may be necessary to try again using one
+of the extra options. The menu called by F6 displays a new line called
+Boot options and propose four entries:
- Default, it doesn't alter anything in the default options.
- Safe Settings, priority is given to the safer options to the detriment of
+performances.
- No ACPI (Advanced Configuration and Power Interface), power management
+isn't taken into account.
- No Local APIC (Local Advanced Programmable Interrupt Controller), it is
+about CPU interruptions, select this option if you are asked for.
When you select one of these entries, it modifies the default options
+displayed in the Boot Options line.
Shënim
In some Mageia releases, it may happen that the entries selected with the
+key F6 does not appear in the Boot Options line,
+however, they are really taken into account.
Add more kernel options by pressing the key F1
Pressing F1 opens a new window with more available options. Select one with
+the arrow keys and press Enter to have more details or press the Esc key to
+go back to the welcome screen.
The detailed view about the option splash. Press Esc or select
+Return to Boot Options to go back to the options
+list. These options can by added by hand in the Boot
+options line.
Shënim
The help is translated in the chosen language with the F2 key.
Here is the default welcome screen when using a Wired Network-based
+Installation CD (Boot.iso or Boot-Nonfree.iso images):
It does not allow to change the language, the available options are
+described in the screen. For more information about using a Wired
+Network-based Installation CD, see the Mageia
+Wiki
Paralajmërim
The keyboard layout is the American one.
Hapat e instalimit
Procesi instalimit është i ndarë në një numër hapash, të cilat mund të
+ndiqen në panelin anësor të ekranit.
Secili hap ka një ose më shumë ekrane cili mund të ketë buton
+Përparuar me ekstra, më pak zakonisht të kërkuara,
+opsionet.
Shumica ekranet kanë buton Ndihmë të cilët japin
+shpjegime të mëtejshme në lidhje me hapin e tanishëm.
Shënim
Nëse diku gjatë instalimit ju vendosni për të ndalur instalimin, është e
+mundur për të rifilluar, por ju lutem mendoni dy herë para se të bëni
+këtë. Pasi një ndarje është formatuar ose më të reja kanë filluar të
+instaluari, kompjuteri juaj nuk është në të njëjtën gjendje dhe rifillimi i
+asaj shumë mirë mund të prishet nga ju dhe të jetë një sistem i papërdorshëm
+. Nëse, me gjithë këtë ju jeni shumë të sigurt për rifillimin dhe kjo është
+ajo që ju doni, shkoni në një terminal tekst duke shtypur tre çelësat
+Alt Ctrl F2 në të njëjtën kohë. Pas kësaj shtypni,
+Ctrl Alt Delete të njëjtën kohë për të rifilluar.
Problemet e Instalimit dhe Zgjidhje e Mundshme
Nuk ka Ndërfaqe Grafike
Pas ekranin fillestar ju nuk keni arritur në ekran përzgjedhjes gjuhës. Kjo
+mund të ndodhë me disa karta grafike dhe sistemet e vjetra. Provoni të
+përdorni rezolutë të ulët duke shtypur vgalo në komandë.
If the hardware is very old, a graphical installation may not be
+possible. In this case it is worth trying a text mode installation. To use
+this hit ESC at the first welcome screen and confirm with ENTER. You will be
+presented with a black screen with the word "boot:". Type "text" and hit
+ENTER. Now continue with the installation in text mode.
Instaluesi Ngrin
Nëse sistemi shfaq ngrirëje gjatë instalimit, kjo mund të jetë një problem
+me zbulimin e pjesve elektronike. Në këtë rast zbulimin automatik të
+pajisjeve mund të jetë anashkaluar dhe të trajtohen më vonë. Për të provuar
+këtë, shkruaj noauto në ekran. Ky opsion mund të kombinohet me
+opsione të tjera të nevojshme.
Probleme RAM
These will rarely be needed, but in some cases the hardware may report the
+available RAM incorrectly. To specify this manually, you can use the
+mem=xxxM parameter, where xxx is the correct amount of
+RAM. e.g. mem=256M would specify 256MB of RAM.
Ndarjet dinamike
If you converted your hard disk from "basic" format to "dynamic" format on
+Microsoft Windows, you must know that it is impossible to install Mageia on
+this disc. To go back to a basic disk, see the Microsoft documentation:
+http://msdn.microsoft.com/en-us/library/cc776315.aspx.
Këtu keni listën e depove në dispozicion. Jo të gjitha depot janë në
+dispozicion, sipas të cilit media që ju përdorni për të instaluar. Zgjedhja
+depove përcakton se cilat paketa do të jetë në dispozicion për përzgjedhje
+gjatë hapave të ardhshëm.
The Core repository cannot be disabled as it contains
+the base of the distribution.
The Nonfree repository includes packages that are
+free-of-charge, i.e. Mageia may redistribute them, but they contain
+closed-source software (hence the name - Nonfree). For example this
+repository includes nVidia and ATI graphics card proprietary drivers,
+firmware for various WiFi cards, etc.
The Tainted repository includes packages released under
+a free license. The main criteria for placing packages in this repository is
+that they may infringe patents and copyright laws in some countries,
+e.g. Multimedia codecs needed to play various audio/video files; packages
+needed to play commercial video DVD, etc.
Minimal Installation is intended for those with specific uses in mind for
+their Mageia, such as a server or a specialised
+workstation. You will probably use this option combined with Manual Package
+Selection, see seksioni i quajtur “Zgjidhni paketat individuale”.
If you choose this installation class, then the related screen will offer
+you a few useful extras to install, such as documentation and X.
DrakX made smart choices for the configuration of your system depending on
+the choices you made and on the hardware DrakX detected. You can check the
+settings here and change them if you want after pressing
+Configure.
Kjo është ajo ku ju vendosni ose ndryshoni paraqitjen e tastierës tuaj e
+cila do të varet nga vendndodhja juaj, gjuha ose lloji i tastierës.
Miu:
Here you can add or configure other pointing devices, tablets, trackballs
+etc.
Karta Zërit:
The installer uses the default driver, if there is a default one. The option
+to select a different driver is only given when there is more than one
+driver for your card, but none of them is the default one.
Ndërfaqe Grafike:
Ky seksion ju lejon të konfiguroni kartën tuaj grafike(s) dhe ekranin.
You can configure your network here, but for network cards with non-free
+drivers it is better to do that after reboot, in the Mageia
+Control Center, if you have not yet enabled the Nonfree media
+repositories.
Paralajmërim
Kur ju shtoni një kartë e rrjetit, mos harroni të vendosni murin-mbrojtës
+tuaj për të parë atë ndërfaqe gjithashtu.
Proxies:
A Proxy Server acts as an intermediary between your computer and the wider
+internet. This section allows you to configure your computer to utilize a
+proxy service.
Ju mund të kenë nevojë të konsultoheni me administratorin tuaj të sistemit
+për të marrë parametrat që ju duhet për të hyrë këtu
Siguria
Niveli Sigurisë:
Here you set the Security level for your computer, in most cases the default
+setting (Standard) is adequate for general use.
Kontrolloni opsionin i cili përshtatet më mirë përdorimit tuaj.
Muri-Mbrojtës:
A firewall is intended to be a barrier between your important data and the
+rascals out there on the internet who would compromise or steal it.
Select the services that you wish to have access to your system. Your
+selections will depend on what you use your computer for.
Paralajmërim
Të ketë parasysh se duke e lejuar çdo gjë (nuk ka mure-mbrojtës), mund të
+jetë shumë e rrezikshme.
diff --git a/installer/5/sq/content/nwSearchFnt.js b/installer/5/sq/content/nwSearchFnt.js
new file mode 100644
index 00000000..fc12d113
--- /dev/null
+++ b/installer/5/sq/content/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("
" + "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/installer/5/sq/content/search/punctuation.props b/installer/5/sq/content/search/punctuation.props
new file mode 100644
index 00000000..d3e3fcd2
--- /dev/null
+++ b/installer/5/sq/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/installer/5/sq/content/search/stemmers/de_stemmer.js b/installer/5/sq/content/search/stemmers/de_stemmer.js
new file mode 100644
index 00000000..7ff3822a
--- /dev/null
+++ b/installer/5/sq/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/installer/5/sq/content/search/stemmers/en_stemmer.js b/installer/5/sq/content/search/stemmers/en_stemmer.js
new file mode 100644
index 00000000..f58012f2
--- /dev/null
+++ b/installer/5/sq/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/installer/5/sq/content/search/stemmers/fr_stemmer.js b/installer/5/sq/content/search/stemmers/fr_stemmer.js
new file mode 100644
index 00000000..34f97431
--- /dev/null
+++ b/installer/5/sq/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
+
+
+
+ Niveli Sigurisë
Zgjidhni vendin tuaj ose rajonin. Kjo është e rëndësishme për të gjitha
+llojet e cilësimeve, si monedhe dhe domain pa tel rregullator. Vendosja në
+vend të gabuar mund të çojë në mos qenë në gjendje për të përdorur një rrjet
+Wireless.
If your country isn't in the list, click the Other
+Countries button and choose your country / region there.
Shënim
If your country is only in the Other Countries list,
+after clicking OK it may seem a country from the
+first list was chosen. Please ignore this, DrakX will follow your real
+choice.
Metodë hyrëse
In the Other Countries screen you can also select an
+input method (at the bottom of the list). Input methods allow users to input
+multilingual characters (Chinese, Japanese, Korean, etc). IBus is the
+default input method in Mageia DVDs, Africa/India and Asia/no-India
+Live-CDs. For Asian and African locales, IBus will be set as default input
+method so users should not need to configure it manually. Other input
+methods(SCIM, GCIN, HIME, etc) also provide similar functions and can be
+installed if you added HTTP/FTP media before package selection.
Shënim
If you missed the input method setup during installation, you can access it
+after you boot your installed system via "Configure your Computer" ->
+"System", or by running localedrake as root.
Përdorni këtë opsion për një instalim të freskët
+Mageia.
Azhurno
If you have one or more Mageia installations on
+your system, the installer will allow you to upgrade one of them to the
+latest release.
Paralajmërim
Only upgrading from a previous Mageia version that was still
+supported when this installer's version was released, has been
+thoroughly tested. If you want to upgrade a Mageia version that had already
+reached its End Of Life when this one was released, then it is better to do
+a clean install while preserving your /home partition.
Shënim
If during install you decide to stop the installation, it is possible to
+reboot, but please think twice before you do this. Once a partition has been
+formatted or updates have started to be installed, your computer isn't in
+the same state anymore and rebooting it could very well leave you with an
+unusable system. If in spite of that you are very sure rebooting is what you
+want, go to a text terminal by pressing the three keys Alt Ctrl
+F2 at the same time. After that, press Alt Ctrl
+Delete simultaneously to reboot.
Propozim
If you have discovered that you forgot to select an additional language, you
+can return from the "Install or Upgrade" screen to the language choice
+screen by pressing Alt Ctrl Home. Do
+not do this later in the install.
DrakX selects an appropriate keyboard for your language. If no suitable
+keyboard is found it will default to a US keyboard layout.
Make sure that the selection is correct or choose another keyboard
+layout. If you don't know which layout your keyboard has, look in the
+specifications that came with your system, or ask the computer vendor. There
+may even be a label on the keyboard that identifies the layout. You can also
+look here: en.wikipedia.org/wiki/Keyboard_layout
If your keyboard isn't in the list shown, click on
+More to get a full list, and select your keyboard
+there.
Paralajmërim
After choosing a keyboard from the More dialog,
+you'll return to the first keyboard choice dialog and it will seem as though
+a keyboard from that screen was chosen. You can safely ignore this anomaly
+and continue the installation: Your keyboard is the one you chose from the
+full list.
If you choose a keyboard based on non-Latin characters, you will see an
+extra dialog screen asking how you would prefer to switch between the Latin
+and non-Latin keyboard layouts
diff --git a/installer/5/sq/content/selectLanguage.html b/installer/5/sq/content/selectLanguage.html
new file mode 100644
index 00000000..33aa98c6
--- /dev/null
+++ b/installer/5/sq/content/selectLanguage.html
@@ -0,0 +1,45 @@
+
+
+
+
+ Ju lutemi zgjidhni një gjuhë për të përdorur
Zgjidhni gjuhën tuaj të preferuar, duke parë zgjerimin e listës për
+kontinentit tuaj. Mageia do të përdorë këtë
+përzgjedhje gjatë instalimit dhe për të instaluar sistemin tuaj.
Nëse është e mundshme që ju do duhen disa gjuhë të instaluar në sistemin
+tuaj, për veten apo përdoruesit e tjerë, atëherë ju duhet të përdorni
+butonin Gjuhë shumëfish për të shtuar ato tani. Do të
+jetë e vështirë për të shtuar mbështetje gjuhëve shtesë pas instalimit.
Paralajmërim
Even if you choose more than one language, you must first choose one of them
+as your preferred language in the first language screen. It will also be
+marked as chosen in the multiple languages screen .
If your keyboard language is not the same as your preferred language, then
+it is advisable to install the language of your keyboard as well.
Mageia uses UTF-8 (Unicode) support by default. This may be disabled in the
+"multiple languages" screen if you know that it is inappropriate for your
+language. Disabling UTF-8 applies to all installed languages.
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.
Propozim
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.
Paralajmërim
Linux systems which use the GRUB2 bootloader are not currently supported by
+GRUB (legacy) and will not be recognised 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.
Propozim
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.
Bootloader advanced option
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.
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.
Shënim
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.
Paralajmërim
Editing other things can leave you with an unbootable system. Please don't
+just try something without knowing what you are doing.
DrakX usually detects hard disks correctly. With some older SCSI controllers
+it may be unable to determine the correct drivers to use and subsequently
+fail to recognise the drive.
If this happens, you will need to manually tell Drakx which SCSI drive(s)
+you have.
DrakX should then be able to configure the drive(s) correctly.
In this screen the name of the driver that the installer chose for your
+sound card is given, which will be the default driver if we have a default
+one.
+
The default driver should work without problems. However, if after install
+you do encounter problems, then run draksound or start
+this tool via MCC (Mageia Control Center), by choosing the
+Hardware tab and clicking on Sound
+Configuration at the top right of the screen.
+
Then, in the draksound or "Sound Configuration" tool screen, click on
+Advanced and then on
+Troubleshooting to find very useful advice about how
+to solve the problem.
+
Avancuar
Clicking Advanced in this screen, during install, is
+useful if there is no default driver and there are several drivers
+available, but you think the installer selected the wrong one.
+
In that case you can select a different driver after clicking on
+Let me pick any driver.
+
Nëse Mageia nuk ju ka bindur ose ju nuk mund ta instaloni atë saktësisht, me
+pak fjalë ju doni ta hiqni atë. Kjo është e drejta juaj dhe Mageia
+gjithashtu ju jep mundësinë për të ç'instaluar. Kjo nuk është e vërtetë për
+çdo sistem operativ.
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.
Nëse jeni duke përdorur Windows XP, ju mund të krijoni një ndarje të re dhe
+ta formatoni atë (FAT32 apo NTFS). Ajo do të marrë një letër ndarje.
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.