Blogger templates


தமிழ் தேதியிலிருந்து ஆங்கில தேதியை கணக்கிடுவது எப்படி?

தமிழ் நாட்காட்டி

ஆங்கில தேதியைப் பயன்படுத்தும் முறை எங்கும் நீக்கமற நிறைந்து விட்டது. அதை தவிர்க்கவும் முடியாது, பயன்படுத்துவதில் தவறும் இல்லை.  
 
ஆனால் இன்றும் தமிழ் தேதியை வெளியில் பயன்படுத்துகிறோமோ இல்லையோ, இல்லங்களில் பயன்படுத்திக் கொண்டுதான் இருக்கிறோம்.  இந்து பண்டிகைகள், திருமண தேதி இவற்றை தமிழில் குறிக்கும் பழக்கம் தொன்றுதொட்டு பழக்கத்தில் உள்ளது.  என் அம்மாவுக்கு என் பிறந்த தேதி ஆங்கிலத்தில் சரியாகத் தெரியாது, தமிழ் தேதியை உடனே சொல்லி விடுவார்.



நம்ம ப்ரியாவோட கல்யாணமா அது மாசி 10ந்தேதி எனச் சொன்னால், நம்மிடம் 2011 நாட்காட்டி இருந்தால் ஆங்கில தேதியை தெரிந்து கொள்ளலாம் இல்லை புது நாட்காட்டி கிடைக்கும் வரை காத்திருக்க வேண்டியதுதான்.  இதுவே ஒரு தேதி என்ன கிழமை எனக் கேட்டால் கணக்கில் மேதாவியாக இருப்பின் ஒரு காகிதமும் பேனாவும் போதும், அல்லது கணிப்பொறியின் உதவியுடன் துல்லியாமாக சொல்லிவிட முடியும்.   

கணித சமன்பாடுகள் எதையுமே கணினியில் ஏற்றி வேலைகளை எளிமை படுத்த முடியும்.  ஜாதக கட்டத்தில் இருக்கும் கிரக நிலை முதல் வின்னில் செலுத்தும் செயற்கைகோள் வரை அனைத்தும் கணிதம்தான் என்பதை அறிவோம்.  இந்த வரிசையில் ஆங்கில தேதியிலிருந்து தமிழ் தேதியும், தமிழ் தேதியிலிருந்து ஆங்கில தேதியையும் கணக்கிடும் சூத்திரம் தெரிந்தால் எளிதாக கணினியிலும் ஏற்றி விடலாம்.   இணையத்தில் இப்பணியைச் செய்து முடிக்க சில இணையதளங்கள் உள்ளன.  



http://www.prokerala.com/general/calendar/tamilcalendar.php
http://www.tamil-calendar.com  
http://www.barathonline.com/Articles/TamilCalendar2010.htm
http://tamildailycalendar.com/

கணக்கிடும் முறையை பெரும்பாலும் பகிர்ந்து கொள்ளப் படாததால் நிறைய நிரல்கள் நம்மிடம் இல்லை.  இது நமக்கு தெரிந்தால் டெஸ்க்டாப்பிலேயே தமிழ் நாட்காட்டி வைத்துக் கொள்ள இயலும், செல்பேசிகளில் பயன்படுத்தும் வண்ணம் சிறு மென்கலங்களை உருவாக்கலாம், இன்னும் நம் கற்பனை எல்லைகளை நீட்டிக் கொள்ள இயலும்.   இணையத்தில் எவ்வளவு தேடியும் தமிழ் தேதி கணக்கீட்டு முறையை அறிந்து கொள்ள முடியவில்லை.  இதனைக் குறித்து அறிந்தவர்கள் தகுந்த சுட்டியோ அல்லது விளக்கமோ அளிக்குமாறு தாழ்மையுடன் கேட்டுக் கொள்கிறேன்.

MARCH 09, 2010

தமிழ் குறியீட்டு முறைகளில் எழுத்துக்களுக்கு உள்ள எண்கள்

Code points of characters in different Tamil encodings


எண்ணென்ப ஏனை எழுத்தென்ப இவ்விரண்டும்
கண்ணென்ப வாழும் உயிர்க்கு.
                                                                     -குறள், 392 

தாங்கள் தமிழுக்கு குறியீட்டு மாற்றியோ(encoding coverter), விசைப்பலகை செயலியோ(keyboard driver) உருவாக்க எண்ணம் கொண்டிருந்தால் முதலில் ஒவ்வொரு தமிழ் எழுத்திற்கும் அந்தந்த குறியீட்டு முறையில் எந்த எண்களை(code point/ASCII value) ஒதுக்கியிருக்கிறார்கள் என்பதைத் தெரிந்து கொள்ள வேண்டும். டாம், ஒருங்குறியில்(unicode) தமிழ் எழுத்துக்களுக்கு ஒதுக்கப்பட்ட எண்களை ஒரு விரிதாள் கோப்பாக (spreadsheet)http://groups.google.com/group/freetamilcomputing குழுமத்தில் பதிவிட்டுள்ளேன். தங்களுக்குத் தேவைப்படும் மற்ற குறியீட்டு முறைமைகளுக்கு(எடு: பாமினி) தாங்களே அதனை விரிவுபடுத்திப் பயன்படுத்துங்கள். அதனைப் பதிவிறக்கி பயன்பெறவும்.



விசைப்பலகை செயலி உருவாக்குவதற்கு கீழ்காணுமாறு நிரலெழுதலாம்
if(keypressed == 'a')
print('அ');-----------------------------வழி 1

இதையே if(keypressed.value == 97) // 97 என்பது 'a'வின் ASCII மதிப்பு
print((char)\x0B85);---------------------வழி 2 


குறியீட்டு மாற்றிக்கு ஒரு துளி
string tamTxt = "îI›" // TAMல் எழுதப்பட்ட "தமிழ்" ஆங்கில எழுத்தில் இவ்வாறு தோன்றும்
string unicodeTxt;
for (i=0 to i=tamTxt.length())
{
switch(tamTxt[i].AscVal) {
case 220: // TAMல் 'அ'விற்கான எண்
unicodeTxt[i] = (char)2949 // யுனிகோடில் ‘அ'விற்கு ஒதுக்கப்பட்ட எண்
.
.
.
தாங்கள் ஒரு நிரலில் 0B85, 2949... போன்ற எண்களைப் பார்க்கும் போது அவை எந்த எழுத்தைக் குறிக்கின்றன என்பது புரியாமல் போக வாய்ப்பிருக்கின்றது. ஜாவா, ஜாவா ஸ்க்ரிப்ட் போன்ற மொழிகளில் வழி ஒன்றில் உள்ளதுபோல் ஒருங்குறி(யுனிகோட்) எழுத்துகளை நேரடியாகவே நிரலில் உள்ளிணைக்க முடியும். அனைத்து நிரலாக்க மொழிகளிலும்(எடு:விபி) இது சாத்தியமில்லை. ஒவ்வொரு நிரல் மொழியிலும் தமிழை எவ்வாறு பயன்படுத்த வேண்டுமெனத் தெரிந்திருந்தாலே போதுமானது, அழகான தமிழ் மென்பொருளை நாமாகவே உருவாக்கிடலாம்.

பொனடிக்(ஒலியியல்) முறையில் தமிழ் தட்டச்சிடும் ஜாவா மூல நிரல்

பொனடிக்(ஒலியியல்) முறையில் தட்டச்சு செய்வதற்கான ஜாவா நிரலை http://groups.google.com/group/freetamilcomputingலிருந்து பதிவிறக்கி சோதிக்கவும். தங்களிடம் JRE இருந்தால் போதுமானது. நிரலில் மாற்றம் செய்து அதனை மேம்படுத்த jdk 1.2 அல்லது அதற்கு பிந்தைய பதிப்பு வேண்டும். தங்கள் கணினியில் Latha (அ) Lohit Tamil யுனிகோட் எழுத்துரு இருக்க வேண்டும். அல்லது தங்களுக்கு விருப்பமான யுனிகோட் எழுத்துருவை நிரலில் சுட்டவும்.


நிரலை இயக்க           java TamilPad

compile செய்ய         javac encoding -utf16 TamilPad.java


நிரல்முழுதும் வெறும் if conditionனும், switch statementதான் நிறைந்திருக்கிருக்கும். நீங்கள் ஜாவா புலியாக இல்லாமல் என்னைப்போன்று ஜாவா எலியாகயிருந்தாலும் எளிமையாகக் கற்றுக் கொள்ளலாம்.

a அ aa A ஆ i இ ii I ஈ e எ ee E ஏ ai ஐ o ஒ 
oo O ஓ au ஔ Q ஃ


க் k g ... ன் n.


nj ஞ்ச் ng ங்க் ndh nth ந்த் (Relative consonants)


ka ga க gna; ங ca sa cha ச gna ஞ da ta ட Na n;a na; ண
tha dha d;a t;a ta; da; த na qna ந pa ba ப ma ம ya ய 
ra ர la ல va wa வ za zha ழ La la; l;a ள
r;a ra; Ra ற na ன


ki கி கீ kii kI கு ku கூ kuu ......


ha ஹ sha ஷ Sa c;a s;a sa; ஸ க்ஷ ksha ja ஜ sri ஸ்ரீ



ஒருங்குறியில் ஸ்ரீ என்பது தனி எழுத்தல்ல. நான்கு குறியீடுகளால் ஆனது.
 +  +  + ீ --->; ஸ்ரீ   Ligature எனப்படுகிறது (complex symbol).


என்னக் கொடும சரவணன். இதற்குத்தான் தமிழுக்கு ஒவ்வோர் எழுத்திற்கும் தனியிடம்(யுனிகோடில் TUNE, TACE16) கேட்கிறோம்.



தமிழில் ள,ற,ண,ந,த,ஸ ஆகிய வரிசையிலுள்ள எழுத்துக்களை ஒலியியல் (phonetic) முறையில் தட்டச்சு செய்யும் போது மிகுந்த சிரமத்திற்கு உள்ளாகிறோம். இதற்கு எளிய மாற்றாக TAM99 விசைப்பலகை வடிவமைப்பை பரிந்துரைப்பதும் உண்டு. குறுஞ்செய்திகளில்eppadi macchi irukka என்பதுபோல் ஆங்கில எழுத்திலேயே தாய்மொழியில் நலம் விசாரிக்கும் பாசாக்கார பிள்ளைகளுக்கு நிச்சயம் ஒலியியல் தட்டச்சுதான் பிடித்து போகும்.

ஓரளவிற்கு ஒலியியல் முறையிலேயே வேகமாக தட்டச்சு செய்ய ஷிப்ட் விசையை கொஞ்சம் தவிர்த்தாலே போதுமானது.  


நான் எழுதிய ஜாவா நிரலில் ';' விசையை எழுத்துக்களை மாற்றுவதற்கு பயன் படுத்தியிருக்கிறேன்.  



'ள்' தட்டச்சு செய்ய L என்று உள்ளிடுவதைவிட l; என உள்ளீடு செய்வது எளிமையாக இருக்குமெனக் கருதுகிறேன்.

இப்படி உள்ளீடு செய்து சோதிக்கவும்:
"பள்ளம்" வார்த்தையை pal;lam pall;am என உள்ளிடலாம்.


கண்ணன் kann;an kan;nan 
மஞ்சள் manjaL manjal;


நானாக நானில்லை தாயே naanAga naanillai thaayee
nAnAka nAnillai t;AyE


இந்நிலையில் iqnqnilaiyil q என்பது பழைய மதிப்பை(prevkey) அழிக்க வைத்திருக்கின்றேன்.


நினைவோ ஒரு பறவை ninaivoo oru par;avai
gangai kangai sangu nungu pangu vaangu vankam thangam thangai
kur;inji kaanjipuram banaaras; பனாரஸ் pattu kungumam


''கரத்திற்கு முன்னர் ''கரம்தான் வரும் 'ன'கரம் வராது.

எடு: உண்டு, வண்டு, கண்டு, உண்டியல், பண்டிகை, கொண்டான், கொண்டை, காண்டீபன்...

ஆகவே இதுபோன்று உள்ளீடு செய்ய uNdu, un;du என உள்ளிடுவதற்கு பதில் undu, kondai, mandu.. என உள்ளிட்டாலே போதுமானது.

அதேபோல் ''கரத்திற்கு முன் ‘'கரம்தான் வரும்.

எடு: கன்று, தின்றான், ஒன்று, பன்றி, மன்றம், தென்றல், ஊன்றுகோல், ஏனென்றால்...

indru இன்று inru இதுவும் இன்று எனச் சரியாக வரும்.


ஆகவே onRu என்பதற்கு பதில் onru என உள்ளிடுவது எவ்வளவு சுலபம் பாருங்கள்.


காற்று kaaRRu kaatru kaar;ru karru
rr அழுத்தினாலே "ற்ற்" என உள்ளீடு செய்து விடலாம்.

இவை இரண்டு ற்ற் வரும் எல்லா எழுத்துக்களுக்கும் பொருந்துமா என்றால் நிச்சயம் பொருந்தும். நீங்கள் என்னை சந்தேகிக்கலாம், நம் மொழியின் இலக்கணத்தை எவர் மறுத்து பேச இயலும்.

 ர்ர் ர்ரு ர்ரி ர்ரா ர்ரை... என வரவே வராது.


     மெய்ந்நிலை  சுட்டின்  எல்லா  எழுத்தும்
    தம்முன்  தாம்  வரூஉம்  ர, ழ  அலங்கடையே
                                                                               
                                                                               -(30வது பாடல்), தொல்காப்பியம்.


ர, ழ இந்த இரண்டு எழுத்துக்களைத் தவிர எல்லா உயிர்மை எழுத்துக்களும்(க,கா,கி,கீ,கை..) தனக்கு முன்னர் அதே மெய்யெழுத்தை பெற்று வரும்(க்).
ச்சா, ச்சி, க்கை, ட்டு ...
ழ்ழா, ர்ரா, ழ்ழி... என வந்தால் தமிழிலணக்கனத்தில் நீங்கள்தான் நூற்றுக்கு நூறு.

orrai என்பதை "ஒற்றை" என வரவழைப்பதில் என்ன சிக்கல்.
மாற்று marru நேற்று neerru nEtru
tr என்பதற்கு ற்ற் போட்டாலும் எளிமைதானே.
குற்றாலம் kutraalam kurraalam


நம் மொழியின் தொன்மையான இலக்கணம் அனைத்தையும் நிரலாக்கப் படுத்தினால் எப்படியிருக்கும் என எண்ணிப் பாருங்கள், விழிகள் விரியும்.


ஐந்து aindhu ஷர்மிளா sharmil;aa sharmilaa;
நாதஸ்வரம் naathaswaram சுஜாதா sujaathaa ஹரிணி harini;
tth த்த் முத்தம் muttham சொத்து sotthu
murugan ஞானப் பழம் gnaanap pazam.




        லினக்சில் executable jar கோப்பை திறக்க               
                                                                                                   
right click ---> open with java   
or
     use a custom command
            java -jar            

மொழியியல் மென்பொருள் உருவாக்கத்தில் இலகு மென்நிரல்கள்

Language computing with lightweight Scripting languages

       நிரல் மொழிகள் மூலம் எப்படிப்பட்ட மென்பொருளையும் உருவாக்க இயலும். இப்படி எல்லா செயல்பாடுகளையும் பெறுவதற்காக சிலயிடங்களில் சில சமரசங்களையும் (அளவு, வேகம், சார்பு/ dependency) செய்துகொள்ள வேண்டியுள்ளது. இவற்றில் பெரும் தலைவலியாக இருப்பது சார்பு. அது ஒரு இயக்கச்சூழலைச் சார்ந்ததாகவும் இருக்கலாம். அல்லது மென்பொருள், துணைநிரல்கள்(libraries/ frameworks), பயனர் மொழி (ஒருங்குறிக்கு/unicode ஆதரவில்லாமல் இருப்பது)என எதையோ சார்ந்து பிரச்சனைகளைக் கூட்டிக்கொண்டே போகலாம்.

சி, சி++, சி#, ஜாவா, விபி, விபி.நெட்... போன்றவை நிரல் மொழிகள் பிரிவில் வருபவை.


ஜாவா ஸ்க்ரிப்ட், பேர்ல், விபி ஸ்க்ரிப்ட் போன்றவற்றை இலகு மென்நிரல்கள் எனக் கொள்ளலாம்.

இன்னும் பி.எச்.பி, பைத்தான்... என திறமூல உலகிலிருந்து பெற்றவையும் ஏராளம்.

இதில் எந்த மொழியில் மென்பொருட்களை உருவாக்குவது?
இவை ஒவ்வொன்றிலும் அதன் சாதக பாதக அம்சங்கள் தனித்தன்மையுடன் நிறைந்திருக்கின்றன. இந்த தலைப்பிற்கும் தமிழ் மென்பொருட்களுக்கும் என்ன சம்பந்தம் என்று கேட்கிறீர்களா. இல்லாவிட்டால் தொடர்பு படுத்திக் கொள்வோம்.

நிரல் மொழிகளில் உள்ள அதீத திறன் நிரல் உருவாக்குபவர்களை பெரிதும் கவர்கிறது. அதற்குத் துணை புரியும் வகையில் என்னற்ற நிரலாக்க கருவிகளும் (programming tools/IDE) கிடைக்கின்றன. ஆனால் இதன் அடுத்தப் பக்கத்தில்,  இதில் உருவாக்கப்படும் நிரல்கள் சாமாணியப் பயனாளரை எளிதில் சென்றடைவதில்லை. பெரியளவில் மென்பொருட்களைத் தயாரிக்கும் மென்பொருள் நிறுவங்களில் இவற்றின் தேவைக்கு என்றும் குறைவிருக்காது என்பதற்கு எந்தவொரு மாற்றுக் கருத்தும் இல்லை.

எனினும் நிரல் மொழிகளைவிட இலகு மென்நிரல்களை அனைத்து இயக்கச் சூழல்களிலும் இயக்குவது சற்று சுலபமாகும். புதிதாய்க் கற்றுக் கொள்பவரும் எளிதாகக் கற்றுக் கொள்ளலாம்.

தேடுபொறிகள்(search engines), எழுத்திலிருந்து பேச்சோலி(text to speech), பேச்சிலிருந்து எழுத்து (speech to text), நிறுவனப் பயன்பாடுகள் (enterprise applications) போன்றக் கடினமான பணிகளுக்கு நிரல் மொழிகளில்தான் எளிவானத் தீர்வைத் தரயியலும். ஏனெனில் இலகு மென்நிரல்களில் அதற்கான வாய்ப்புகள் குறைவே. அதற்காக இலகு மென்நிரல்களின் வீச்சையும் ஒரேயடியாக ஒதுக்கிவிட முடியாது. இன்று பெரும்பாலும் இடைமுகப்பு(interface) பணிகளுக்கு மட்டுமே(அதிலும் இணையத்தில் இதன் பங்கு பெரிது) பயன்படுத்தப்பட்டு வருகின்றது.

இந்தக் கட்டுரையின் நோக்கம் அன்றாடப் பயன்பாடுகளுக்கான சிறுநிரல்களை இலகு மென்நிரல்களில் கிடைக்கச் செய்திடல் வேண்டும். எடுத்துக்காட்டிற்கு தமிழ் தட்டச்சை எடுத்துக் கொள்வோம். தமிழ் மட்டும் என்றல்ல எந்தவொரு மொழியையும் (ஆங்கிலத்திற்கு இயல்பாகவே கிடைத்து விட்டது) கணினியில் உள்ளீடு செய்வதற்கு ஒரு சிறப்பு மென்பொருள் (keyboard driver/IME-Input Method Editor) வேண்டும். இவற்றை இணையப் பக்கங்களிலிருந்து நேரடியாகவே உள்ளீடு செய்வதற்கும் வசதிகள் உள்ளன (suratha,quillpad) போன்ற இணைய தளங்கள். அதே பயன்பாடு இலகு மென்நிரலில்(ஜாவா ஸ்க்ரிப்ட் எடு: ILC Indian Language Computing தீர்வுகள்) நம் கணினியில் இருந்தால் இணைய இணைப்பு இல்லையென்றாலும், அதனை எளிமையாகப் பயன்படுத்திக் கொள்ள முடியும். மேலும் இலகு மென்நிரல்கள் குறைந்த அளவு இடத்தையே எடுத்துக் கொள்ளும். கணினியை இயக்க பயப்படுவர்கள்கூட (பெரியவர்கள், வேறு துறையைச் சார்ந்தவர்கள்...) மிக எளிமையாக பயன்படுத்திக் கொள்ளமுடியும்.

அவர்களிடம் நிறுவதற்கு .நெட் வேண்டும், ஜாவா வேண்டும், க்யூடி, இடம், இணையம்,அது-இது-தைரியம் எல்லாம் வேண்டும் என பயமுறுத்துவதற்கு பதில் சொடுக்கினால் (click & use)பயன்படுத்த ஆரம்பித்துவிடலாம் என்பதுபோல் தந்திடல் வேண்டும். இல்லையெனில் இயக்கச் சூழலிலேயே அவற்றை உட்பொதிந்து கொடுக்கப் படவேண்டும். அவ்வாறு செய்தால் மட்டும்தான் அது கணினியில் தாய்மொழியை உள்ளீடு செய்வதற்கு ஏற்ற சூழலாக அமையும்.

ஜாவா ஸ்க்ரிப்டில் செய்தால் மட்டும் அனைத்து உலாவிகளிலும் இயங்கி விடுமா என்ன? அதற்குத்தான் இருக்கவே இருக்கின்றன துணைநிரல்கள். தங்கள் மென்பொருள் உருவாக்கத்திற்கு துணைநிரலையும்(எடு: jQuery...) திறமூலத் தீர்வாக தேர்ந்தெடுப்பது அவசியம். யார் வேண்டுமானாலும் மென்பொருளில் மாற்றம் செய்யலாம் என்பது எவ்வளவு பெரிய சுதந்திரம். தொட்டதெற்கெல்லாம் சி#, விபி.நெட் ... போன்ற தனியார் தீர்வுகளின் அவசியமென்ன?

ஜாவா ஸ்க்ரிப்ட் (ECMA Script தகுதரப்படுத்தப் பட்டது/standardized) அறிந்த நண்பர்கள் கொஞ்சம் மனது வையுங்கள்.   jQuery தளத்தில் தேடிப் பார்த்தால் நம் மொழியைத் தவிர அனைத்து மொழிகளிலும் ஏராளமான கட்டுரைகளும், எடுத்துக்காட்டுகளும் உள்ளது. அத்தளத்தை ஒரு நோட்டம் விடவும்.
Share on Google Plus

About new news in france

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.

0 comments:

Post a Comment