Σελίδες

Δευτέρα 17 Ιουνίου 2013

Όταν οι πέτρες μιλούν


Kugána kámenyeno dúmı - Куга́на ка́менйено ду́ми

Αφιερωμένο στο κλαμπ της Φραγκουδάκη

Šáren kámen

 
Vı́dıyte go!
Izdä́lah go,
ızmı̈́h go,
ızbágrıh go,
da ye mázan ı šáren,
kámatnı̈yes, moy, póstar kámen.
Sas tóga so razbúdom ı zaspávom,
za tóga so zayávom ı nasalzä́vom,
vrıtsä́m go padávom ı razdávom
ı nı́kutromu go na predávom.
Vadá go na prebı́va,
zólezo go na razbı́va
ı ógan go na nadvı́va.
Kórenye dlö́go ye púsnal,
vaz Balkánase ı Kafkása ye fúknal,
bosnı́ckı̈, bälorúskı̈, ukránckı̈,
polónckı̈, slováckı̈, slovénckı̈,
čéhckı̈, sı̈́rpckı̈, hı̈rvátskı̈,
bulgárckı̈, pomáckı̈, rúskı̈
lıstá ı cvetyé ye spúsnal.

Ша́рен ка́мен

 
Ви́дийте го!
Издӓ́лах го,
измъ́х го,
изба́грих го,
да йе ма́зан и ша́рен,
ка́матнъйес, мой, по́стар ка́мен.
Сас то́га со разбу́дом и заспа́вом,
за то́га со зая́вом и насалзӓ́вом,
вритсӓ́м го пада́вом и разда́вом
и ни́кутрому го на преда́вом.
Вада́ го на преби́ва,
зо́лезо го на разби́ва
и о́ган го на надви́ва.
Ко́ренйе длӧ́го йе пу́снал,
ваз Балка́насе и Кафка́са йе фу́кнал,
босни́цкъ, бӓлору́скъ, укра́нцкъ,
поло́нцкъ, слова́цкъ, слове́нцкъ,
че́хцкъ, съ́рпцкъ, хърва́тскъ,
булга́рцкъ, пома́цкъ, ру́скъ
листа́ и цветйе́ йе спу́снал.

 

Τρίτη 11 Ιουνίου 2013

Συγκέντρωση υπογραφών για την εισαγωγή της Πομακικής στα σχολεία όπου φοιτούν Πομάκοι μαθητές

Στην ανάγνωση ενός δημοσιεύματος της εφημερίδας "Ζαγάλισα" στην ηλεκτρονική της έκδοση (http://www.zagalisa.gr) με τίτλο "«ΕΣΥ, ΟΥΤΕ ΤΟΥΡΚΙΚΑ ΔΕΝ ΞΕΡΕΙΣ ΚΑΛΑ!» Απίστευτη δήλωση καθηγητή σε Πομάκο μαθητή. Νέα «δικαίωση» του προγράμματος Φραγκουδάκη", που μπορείτε να διαβάσετε εδώ, τα κύτταρά μου, το είναι μου όλο, άρχισε να επαναστατεί και δεν μπορώ, πλέον, να τα συγκρατήσω. Αυτό ήταν! Δεν χρειάζεται κάτι άλλο.

Το ποτήρι ξεχείλισε και νομίζω ότι όλοι αυτοί οι καραγκιόζηδες, όπως και να λέγονται, σε όποιον θεό και να πιστεύουν και σε όποιο έθνος κι αν ανήκουν, μαζί με τους πολιτικούς μας ταγούς θα πρέπει να πάρουν τη δέουσα απάντηση.

Εμπρός, λοιπόν, Πομάκοι, δείξτε σε όλους αυτούς τί πραγματικά μπορείτε να κάνετε και μην τους αφήνετε να ντροπιάζουν και να εξευτελίζουν τα παιδιά σας κι εσάς τους ίδιους κατ' αυτόν τον βάρβαρο τρόπο. Στείλτε τους περίπατο όλους αυτούς, τη Φραγκουδάκη και το σατανικό της πρόγραμμα.

Υπογράψτε για την εισαγωγή της Πομακικής Γλώσσας, έστω σε συμβολικό επίπεδο, στα σχολεία όπου φοιτούν τα παιδιά μας και τότε να ιδούμε τα μούτρα όλων αυτών.

Κυριακή 2 Ιουνίου 2013

Ο συλλαβισμός στην Πομακική

réčkovo delénye ή rečkodelénye

 

Την παραπάνω σύνθετη πομακική λέξη δε θα τη βρείτε σε κανένα λεξικό της Πομακικής, συμπεριλαμβανομένου του Δ’ Σώματος Στρατού, όσο και να ψάξετε.  Απλά δεν υπήρχε, μέχρι που να αρχίσω να γράφω αυτές εδώ τις γραμμές.  Το ξέρω ότι είναι πολύ πιθανό να κατηγορηθώ για γλωσσοπλασία.  Δεν θα με πείραζε όμως καθόλου αυτό, διότι είναι η ίδια η ζωή και οι ανάγκες τις, εν τέλει, η πραγματική δημιουργός δύναμη και κάπως έτσι θαρρώ πως δημιουργήθηκαν πολλές, αν όχι οι περισσότερες, λέξεις όλων των γλωσσών του κόσμου.  Αυτά σαν παρένθεση.

Με τη σημερινή ραγδαία ανάπτυξη και εξέλιξη της επιστήμης των υπολογιστών δεν είναι καθόλου απίθανο σε λίγα χρόνια να εκλείψει παντελώς η ανάγκη του συλλαβισμού των κειμένων και η ίδια η λέξη «συλλαβισμός» να καταργηθεί από το λεξιλόγιό μας.  Ρίξτε μια ματιά εδώ κι εδώ για του λόγου το αληθές.  Μέχρι τότε όμως, για να μπορούμε να χρησιμοποιούμε την πλήρη στοίχιση στα μονόστηλα, δίστηλα ή πολύστηλα κείμενά μας με το καλύτερο δυνατό αισθητικό, λειτουργικό και πρακτικό αποτέλεσμα, θα είμαστε αναγκασμένοι να χρησιμοποιούμε τον συλλαβισμό με το κατάλληλο «σπάσιμο» των λέξεων σύμφωνα με ορισμένους κανόνες.

Οι κανόνες συλλαβισμού της Πομακικής δε θα μπορούσε παρά να είναι κάποιοι πολύ απλοί και βασικοί κανόνες σαν τους παρακάτω, οι οποίοι ενυπάρχουν και σε πολλές άλλες γλώσσες, με κάποιες μικρές διαφορές, ίσως, και ορισμένες εξαιρέσεις.  Είναι μετρημένοι στα δάχτυλα του ενός χεριού και είναι οι εξής:

1. Ένα σύμφωνο ανάμεσα σε δύο φωνήεντα συλλαβίζεται με το δεύτερο φωνήεν
π.χ.  va-dá, ža-ná, dé-te, ko-rá, pé-pel, na-gá, ra-ká κλπ.

2.  Δύο σύμφωνα ανάμεσα σε δύο φωνήεντα συλλαβίζονται με το δεύτερο φωνήεν, εάν απ’ αυτά τα σύμφωνα αρχίζει λέξη της Πομακικής (ανεξαρτήτου προέλευσης).  Διαφορετικά, χωρίζονται και το πρώτο σύμφωνο πάει με το προηγούμενο φωνήεν, το δεύτερο με το ακόλουθο.
π.χ.
α) ko-prı́va (prı́lıka), a-gledálo (glavá), má-slo (slónce), pa-trı́šom (trahá, trendráfel), patá-vra (vrána) κλπ.
β) per-perúda, úr-da, yúr-va, pór-ta, sól-za, fúr-ka, vór-ga, bór-no, bán-ga κλπ.

3.  Τρία σύμφωνα ανάμεσα σε δύο φωνήεντα συλλαβίζονται με το ακόλουθο φωνήεν, όταν απ’ αυτά τα σύμφωνα αρχίζει λέξη της Πομακικής.  Σε διαφορετική περίπτωση, χωρίζονται και το πρώτο σύμφωνο πάει με το προηγούμενο φωνήεν, το τρίτο (τελευταίο) σύμφωνο με το ακόλουθο φωνήεων και το δεύτερο (ενδιάμεσο) σύμφωνο υπάγεται στον δεύτερο κανόνα συλλαβισμού.  Εάν, δηλαδή, από το δεύτερο και τρίτο σύμφωνο αρχίζει λέξη της Πομακικής, τότε αυτό ακολουθεί το τρίτο σύμφωνο και πάει με το επόμενο φωνήεν, αλλιώς, μένει πίσω με το πρώτο σύμφωνο και το προηγούμενο φωνήεν.
π.χ.
α) pa-smračáva so (smračáva so), pa-strašávom (strašávom, strah, strášan), pa-splatnä́vom (splatnä́vom), pa-skrapä́vom (skrapä́vom, skram, skramcá), pad-skrafı́savom (skrafı́som) κλπ.
β) amar-tvä́vom, skı̈rč-yásavom, borč-yásavom κλπ.

Αυτή τη στιγμή δεν μπορώ να σκεφτώ κάποια λέξη που να περιέχει τέσσερα σύμφωνα στη σειρά.  Αυτό, αναμφίβολα, έχει να κάνει και με το αλφάβητο.  Εάν όμως προκύψει κάτι τέτοιο στην πορεία, νομίζω ότι αυτό θα μπορούσε χωρίς κανένα πρόβλημα να υπαχθεί στον τρίτο κανόνα συλλαβισμού.

Από τους παραπάνω κανόνες εξαιρούνται οι εξής περιπτώσεις:
α) Τα προθήματα (πρώτα συνθετικά) ab, ad, ız, nad, pad, raz, vaz δεν χωρίζονται.
β) Τα συμπλέγματα ck και čk στις καταλήξεις -ckı̈y, -cka, -cko, -ckı, -ckı̈ και -čkı̈y, -čka, -čko, -čkı, -čkı̈ ορισμένων επιθέτων με ή χωρίς το οριστικό άρθρο δεν χωρίζονται.

(Σημ.: Λέξη της Πομακικής που να αρχίζει από ck ή čk δεν υπάρχει και κανονικά θα έπρεπε να εφαρμοστεί ο αντίστοιχος κανόνας συλλαβισμού, ανάλογα με την περίπτωση, και να χωριστούν τα γράμματα c και από το k, κάτι το οποίο εγώ προσωπικά δεν επιθυμώ).
Αυτό είναι όλο κι όλο, για την ώρα τουλάχιστον.


Μπορείτε τώρα να κάνετε μια σύγκριση με τους κανόνες συλλαβισμού της Νεοελληνικής Γραμματικής του Μανόλη Τριανταφυλλίδη, σελ. 19, παρ. 24, και αυτούς της σύγχρονης Βουλγαρικής, όπως έχουν τροποποιηθεί από το 1983, ή άλλων γλωσσών και να βγάλετε τα όποια συμπεράσματά σας.

Όλα αυτά, βεβαίως, στη θεωρία.  Ας περάσουμε όμως τώρα στην πράξη και την υλοποίηση όλων αυτών των κανόνων στους υπολογιστές, προκειμένου να μπορεί να εφαρμόσει κανείς αυτόματο συλλαβισμό στα κείμενά του.


Την περιγραφή του γνωστού στους προγραμματιστές αλγορίθμου συλλαβισμού στους υπολογιστές του καθηγητή Franklin Mark Liang του Πανεπιστημίου Stanford μπορείτε να τη διαβάσετε εδώ.  Την υλοποίηση του παραπάνω αλγορίθμου, με κάποιες παραλλαγές, έχουν πραγματοποιήσει και ενσωματώσει στα έργα τους διάφοροι μεμονωμένοι προγραμματιστές, οργανισμοί και εταιρείες ανά τον κόσμο και μεταξύ αυτών και κάποια μεγάλης κλίμακας projects, όπως το OpenOffice και το LibreOffice κ.ά.


Μια τέτοια υλοποίηση γραμμένη σε C++ (για Linux) που μου κέντρισε το ενδιαφέρον είναι τούτη εδώ.  Αφού, λοιπόν, κατάφερα με κάποια δυσκολία, ομολογώ, να την μεταγλωττίσω σε περιβάλλον Windows και, όντας παιχνιδιάρης ο ίδιος, να «παίξω» μαζί της επί αρκετές ημέρες, διαπίστωσα με μεγάλη μου λύπη για άλλη μια φορά ότι το παιχνίδι δεν έβγαινε και ήταν σχεδόν αδύνατη η χρήση της στην περίπτωση της Πομακικής για δύο λόγους:  α) η χρήση διεθνών τυποποιήσεων σε ό,τι αφορά τις κωδικές ονομασίες των γλωσσών, στις οποίες δεν συμπεριλαμβάνεται η Πομακική, και β) οι πάρα πολλές και αμφιβόλου τελικού αποτελέσματος αλλαγές που θα έπρεπε να γίνουν στον κώδικα , λόγω του ιδιαίτερου συστήματος γραφής της Πομακικής (βλ. προηγούμενες αναρτήσεις).


Κι έτσι, μη έχοντας και πολλές επιλογές, στράφηκα προς την αυτοσχέδια λύση, η οποία θα ήταν και μια πρώτης τάξεως ευκαιρία να δοκιμάσω τις γνώσεις μου στη C++.  Το παίδεψα και με παίδεψε, είναι αλήθεια, κι έκανα σχέδια επί σχεδίων, έως ότου καταλήξω σε κάποιο σχήμα.  Στο τέλος νομίζω ότι κάτι έκανα.  Μια απλή κλάση της C++ με ελάχιστες ρουτίνες και συναρτήσεις και πολύ λίγες γραμμές κώδικα.  Οι χρόνοι είναι ικανοποιητικοί, μπορεί και καλύτεροι από άλλες αντίστοιχες υλοποιήσεις, και το τελικό αποτελέσμα το επιθυμητό• δεν έχει να ζηλέψει τίποτα από εκείνες των υπολοίπων.  Βελτιώσεις και διορθώσεις ασφαλώς και μπορούν να γίνουν τόσο στην υλοποίηση αυτή καθεαυτή όσο και στους κώδικες συλλαβισμού, ο αριθμός των οποίων μόλις που πλησιάζει τους χίλιους σε σύνολο αρκετών δεκάδων χιλιάδων τύπων λέξεων της Πομακικής.  Νομίζω ότι είναι μια πολύ καλή βάση και αρχή.


Ιδού ένα μέρος του κώδικα που αποτελεί και την κεντρική διαδικασία (ρουτίνα) της υλοποίησης.


void Hyphenator::hyphenate( wstring& wrd, int32_t idx, vector<int>& pos_indexes )
{
    if ( wrd.empty() || wrd.size() < 3 )
        return;

    wstring word, key, pat;

    map<wstring, wstring>::const_iterator it;

    UnicodeString ustr( wrd.c_str() );
    ustr.toLower();

    word += _T(".");
    word += ustr.getTerminatedBuffer();
    word += _T(".");

    wchar_t c;
    size_t p, l, r = 0, s = word.size();

    vector<int> v;
    v.reserve( s * s );

    for ( size_t pos = 0; pos < s; pos++ ) {
        for ( size_t i = s; i > pos; i-- ) {
            key = word.substr( pos, i - pos );
            it = _patterns.find( key );
            if ( it != _patterns.end() ) {
                pat = it->second;
                v.resize( v.size() + s );
                p = pos; l = 0;
                if ( p == 0 ) l = 1; else p--;
                for ( size_t j = l; j < pat.size(); j++ ) {
                    c = pat[j];
                    v[ ( r * s ) + p++ ] = _wtoi( &c );
                }
                r++;
            }
        }
    }

    int32_t n, t;

    for ( size_t i = 1; i < s -1; i++ ) {
        n = 0;
        for ( size_t j = 0; j < r; j++ ) {
            t = v[ ( j * s ) + i ];
            if ( t > n ) n = t;
        }
        if ( i < ( s - 2 ) ) {
            if ( n > 0 && n % 2 > 0 ) {
                pos_indexes.push_back( (idx + i) );
            }
        }
    }
}





Να επισημάνω εδώ ότι η μόνη αναγκαία εμπλοκή της βιβλιοθήκης ICU στην περίπτωση του συλλαβισμού συνίσταται στην μετατροπή των κεφαλαίων χαρακτήρων σε πεζούς, καθότι δεν μπόρεσα να βρω κάτι άλλο πιο αξιόπιστο.

Αυτή είναι εν ολίγοις η ιστορία με τον συλλαβισμό και δε νομίζω ότι χρειάζεται να προσθέσω ή να συμπληρώσω κάτι άλλο επί του παρόντος.  Τώρα, το ότι πονάνε λίγο τα δάχτυλα των χεριών μου από το πληκτρολόγιο και ότι δεν πρόλαβα ακόμη να υποβάλω τη φορολογική μου δήλωση ή ότι δεν βρήκα λίγο χρόνο για το αγαπημένο μου «σπορ», αυτά πια, νομίζω, δεν ενδιαφέρουν κανέναν.


Κατεβάστε το πακέτο με την εφαρμογή επίδειξης από εδώ (md5 checksum: c5149f132d15c101de1fb2baed0eb3de) για να δείτε ζωντανά το αποτέλεσμα όλων των παραπάνω στην οθόνη του υπολογιστή σας.  Μέσα στο φάκελο θα βρείτε τη γραμματοσειρά Andika, την οποία πρέπει να εγκαταστήσετε για τη σωστή προβολή του κειμένου, και το αρχείο SampleText.txt, ένα πομακικό παραμύθι από το βιβλίο της Δήμητρας Κατάκη «Ο παππούς και η γιαγιά είπαν...», γραμμένο στο αναθεωρημένο λατινικό αλφάβητο, για τις δοκιμές σας.  Το πακέτο είναι πλήρες, με όλα τα παρελκόμενα, και εκτός από λίγο χρόνο κάτι άλλο δε νομίζω ότι θα χρειαστείτε.  Δοκιμάστε το και σχολιάστε το (προαιρετικά είναι και τα δύο).


Εάν κάποιος ενδιαφέρεται να αποκτήσει το σύνολο του πηγαίου κώδικα, μπορεί να τον λάβει δωρεάν, αρκεί, απλά, να τον ζητήσει.