[[szakdoli:menu|Szakdolgozat: Véges automaták és reguláris nyelvek kapcsolata]] \\ ====== Több nyelves rendszer felépítése ====== ===== Nyelvi fájlok ===== A rendszer úgy lett felépítve, hogy tetszőleges nyelvre lefordítható és használható azon. A karakter kódolása UTF-8, amely lehetőséget kínál a Földön előforduló összes fontos nyelv kódolására. A nyelvi fájlok a 'language' könyvtárban kell elhelyezni, és '.lng' kiterjesztésűek. Mivel nem szükséges túl sok nyelvi szöveg (kb. 170 különböző szó vagy kifejezés) a rendszer használatához ezért elég volt minden szükséges nyelvi anyagot egy fájlban elhelyezni. Jelenleg elkészült anyagok: hu_hu.lng Magyar nyelv en_gb.lng Angol nyelv de_de.lng Német nyelv ===== Nyelv választása ===== Az egyes nyelvek kiválasztása a főmenü jobb oldalán található ország jelző zászlókkal lehetséges. A kiválasztást a rendszer megjegyzi, és a legközelebbi betöltéskor azzal a nyelvel jelenik meg. Azért, hogy olyan böngészőben is működjön a nyelv választás, amelyik nem rendelkezik a 'localStorage' rendszerrel, kiegészítettem egy másodlagos módszerrel is ezt a funkciót. A zászlókra való klikkezéskor az oldal újratöltődik, és a cím sorban az 'index.php' mellett paraméterként átadódik a kiválasztott nyelv azonosítója is, pl.: lang=hu_hu. Így képes a rendszer minden böngészőben a különböző nyelv kiválasztására. ===== Új nyelvi fájl bevezetése ===== A következőkben ismertetem az instrukciókat egy új nyelvre való lefordításhoz. - Másolja le valamelyik '.lng' állományt, amelyről le kívánja fordítani a rendszert. - A sor elején található azonosító számokat és az '=' jelet hagyja figyelmen kívül és ne változtassa meg! A mögöttük lévő szöveget fordítsa le. - Közvetlenül az '=' mögé írja a lefordított szöveget egy sorban (ne legyen sortörés). - Ha esetleg van valamilyen HTML formázási rész a szövegben, akkor azt tartsa meg a megfelelő megjelenés végett. Az új és elkészült nyelvi fájl megjelenítéséhez kérje a rendszer fejlesztőjének segítségét. ===== A nyelvi fájlban található azonosítók rendszere ===== A nyelvi fájlban található azonosítók meghatározott rendszerbe vannak szervezve. Az első betűk jelzik, hogy melyik laphoz vagy funkcióhoz kapcsolódik az adott kifejezés. m - Menü szavai i - Impresszum oldal szavai a - Véges automata modul szavai n - Reguláris nyelv modul szavai b - Véges automata modul-hoz tartozó script-ek által kezelt szavak p - Reguláris nyelv modul-hoz tartozó script-ek által kezelt szavak Az m,i,a,n szavak az egyes oldalak HTML kódjában az 'LNG' nevű attribútummal adhatók meg, ezáltal egyszerűen bővíthetők egy későbbi fejlesztés során a szavak kezelése a HTML oldal szerkesztésével. Ha egy nyelvi kód 't' karakterrel záródik, akkor nem a normál szöveget fogja lecserélni a rendszer, hanem az adott HTML elemhez tartozó TITLE attribútum szövegét azaz a felbukkanó információs szöveget.