లినక్స్ తెలుగు అనువాదాల సహాయ పత్రం
అవలోకనం
ఈ సహాయపత్రం సాఫ్ట్వేర్ తెలుగు లోకి అనువాదాము చేయుటకు ప్రత్యేక సమాచారము కలిగివున్నది. ఏ పదబంధాలు అనువాదం చేయాలి, ఏవి చేయకూడదు, బహువచన రూపాలు మరియు లాంచ్పాడ్ అనువాదాలు (రోజెట్టా) లేక ఇతర పరికరాలు వాడి అనువాదం చేసేటప్పుడు గుర్తుంచుకొనవలసిన విషయాలు తెలియచేస్తుంది. లాంచ్పాడ్ అనువాదాలు (రోజెట్టా) వాడుట గురించి సలహాలు దీనిలో లేవు, దాని కొరకు చూడండి.
అనువాదాల నాణ్యత తనిఖీకి మూల సూత్రాలు
క్రింద ఇవ్వబడిన కొన్ని సామాన్య సూత్రాలు వాడితే అనువాదాల నాణ్యత మెరుగుచేయుటకు వీలవుతుంది:
దీని లోని అన్ని విభాగాలపై దృష్టి పెట్టండి, ఇతర అనువాదకులతో సంపర్కంలో వుండండి.
పదబంధాన్ని అనువాదం చేసిన తరువాత, ఏమన్న తప్పులు వున్నాయా అని, లేక తెలుగులో సరిగా ధ్వనిస్తుందా అని చూడటానికి మరల చదివి చూడండి.
అనువాదిత పదబంధం మీకు లేక మీ తల్లిదండ్రులకు అర్ధం అయ్యేటట్లు లేకపోతే, అది నిజంగానే తప్పు, మీరు మరల అనువాదం చేయండి/ మార్చండి
వీలైతే, ఇంకొక సభ్యుడు/సభ్యురాలిని మీ అనువాదాన్ని సమీక్ష చేయమని అడగండి.
అనువాద ఏకరూపత అనువాద నాణ్యత కి చాలా ముఖ్యం. ఓపెన్ ట్రాన్ జాలస్థలి (Open Tran) వాడి, స్వేచ్ఛామూల సాఫ్ట్వేర్లలో పదము లేక పద బంధానికి అనువాదం ఎలా వుందో తెలుసుకోవచ్చు.
కంప్యూటర్ పదాలు కొరకు నిఘంటువు
కొత్త సభ్యులను చేర్చుకొనేటప్పడు, వారు ఇంతకుముందు సరియైన అనువాదం చేశారని, ఈ పత్రం చదివారని నిర్ధాయించుకోండి
వచన రూపాలు
ఇంగ్లీషు లాగానే తెలుగు లో రెండు వచనరూపాలు వున్నాయి. ఏక, బహు వచనం.
ఉదా (రొమేనియా భాషలో మూడు వచనరూపాలుంటాయి)
మూల పాఠం:
msgstr[0] %d thing
msgstr[1] %d things
msgstr[2] %g things
అనువాదం:
msgstr[0] %d విషయము
msgstr[1] %d విషయాలు
msgstr[2] %d విషయాలు
చుటుకు సహాయం:
మరిన్ని వివరాలకు చూడండి Gettext documentation section on plural forms.
మెనూ చురుకులు/కీ బోర్డు నొక్కులు
రకరకాల ప్రోగ్రామింగ్ భాషలు, ఛట్రాలు, రకరకాలుగా ఏ కీ బోర్డు నొక్కులు వాడితే ఆదేశం చేతనం అవుతుందో తెలుపుతాయి. చాలా సార్లు, అండర్ స్కోర్ (e.g. Save _As) లేక యాంపర్సాండ్ (e.g. Print previe&w), మొదటిలో కాని, పదబంధం మధ్యలో కాని వాడితో చురుకైన కీ బోర్డు నొక్కు అని గుర్తించండి.
నిర్దిష్ట కీ బోర్డు నొక్కు వుండేటట్లుగా చూడాలి. అయితే తెలుగు కీ బోర్డు వాడుతున్నప్పుడు, మామాలు మీటలకు అచ్చు గుర్తులు వుండటం వలన, వీటిని తెలుగులో వాడితే ఎబ్బెట్టుగా వుంటుంది. అందుకని ఇంగ్లీషు అక్షరాలనే వాడండి. వాటిని పదబంధం చివరలో ఒకవేళ : వుంటే దాని ముందు పెట్టండి. ఇవి నిజంగా మనకు కావాలా అన్నది చర్చించవలసిన విషయం.
మరిన్ని వివరాల కోసం, వివిధ భాషలలో కీ బోర్డు నొక్కులు ఎలా వాడతారో తెలుసుకోవడం గురించి చూడండి. http://bazaar-vcs.org/BzrTranslations/Tips
మెనూ చురుకుల ఉదాహరణలు:
_File: ఫైల్:(_F) ఫైలు (_F):
New &Tab కొత్త మరియు టాబ్ (&T) కొత్త టాబు(&T)
~Downloads పొందినవి(~D)
డాక్బుక్(DocBook) (XML) ఫైళ్ల అనువాదాలు
XML ఫైళ్లను లాంచ్పాడ్ వుపయోగించి అనువాదం చెయ్యవచ్చు. దీనికోసం xml ను pot ఫైల్ గా xml2po అనువర్తనం వాడి మార్చి తరువాత రోజెట్టాలో దిగుమతి చేయండి..
XML ఫైళ్లను అనువాదం చేసేటప్పుడు క్రింది సూచనలను గమనించండి:
XML టాగులు అక్షరాల స్వరూపం కీలకం. పెద్దవి చిన్నవి ఒకటిగా అనుకోకూడదు.
xml2po మరియు అనువాదంతరువాత po2xml వాడినపుడు XML టాగులు వాటి లక్షణాలు అక్షరస్వరూపము కీలకము. ఉదా:
మూలం: see the URL <ulink url="http://ubuntustudio.org/">
సరి: URL చూడు <ulink url="http://ubuntustudio.org/">
తప్పు:URL చూడు<UlinK Url="http://ubuntustudio.org/">
మెనూచాయిస్ (menuchoice) టాగ్
"menuchoice" టాగ్ లో "guibutton | guiicon | guilabel | guimenu | guimenuitem | guisubmenu | interface" మాత్రమే వుండాలి. ఏ ఇతర టాగులు, పాఠం వుండకూడదు.
ఉదా:
మూలం: <menuchoice><guimenu>Applications</guimenu><guisubmenu>Multimedia</guisubmenu><guimenuitem>Movie Player</guimenuitem></menuchoice>
సరి: <menuchoice><guimenu>అనువర్తనాలు</guimenu><guisubmenu>దృశ్య శ్రవణ</guisubmenu><guimenuitem>మూవీ ప్లేయర్</guimenuitem>
తప్పు: <menuchoice><guimenu>అనువర్తనాలు</guimenu><guisubmenu>దృశ్య శ్రవణ </guisubmenu>మూవీ <guimenuitem>ప్లేయర్</guimenuitem>
ఏవి అనువాదం చెయ్యకూడదు
ఈ విభాగములో అనువాదం చేయకూడని పదబంధాల గురించి సాధారణ సమాచారము మరియు వాటిని గుర్తించుటకు సమాచారము ఇవ్వబడినది.
ఇంకా అనువాదం చేయకూడని పదబంధాల గుర్తించుటకు, సాఫ్ట్వేర్ అభివృద్ధి కారులు పాఠం ఉద్దేశం మరియు దాని అనువాదం గురించి చిట్కాలు ఇస్తారు. ప్రతి పదానికి జత చేసిన వ్యాఖ్యలను తప్పక చూడండి.
దత్తాంశ స్థలకేటాయింపులు(placeholders) మరియు చలరాసి (variable) పేర్లు
చాలా కంప్యూటర్ భాషలలో స్థలకేటాయింపులకు వాడే %s లేక %d బదులుగా డాటా ప్రవేశపెడుతారు. ఇవి మరింత సంక్లిష్టంగా %(variablename)s, $name లేక ${name} లా వుండవచ్చు. వీటిని అలాగే (చివరలో s వున్నా కూడా) లక్ష్య భాషలో అర్థవంతమైనదిగా చేయటానికి కావలసిన వరుసలో పెట్టండి.
సందేహాలుంటే, వేరొక అనువాదకుడి సలహా తీసుకోండి.
ఉదా:
మూలము: I found $name ethernet device.
తప్పు: నేను కనుగొన్నాను $ పేరు ఈథర్నెట్ డివైస్
Right:నేను $name ఈథర్నెట్ డివైస్ కనుగొన్నాను
మూలం: Delete %(name)s ?
తప్పు: నిర్మూలించు %(పేరు)లు?
తప్పు: నిర్మూలించు %(పేరు)s?
తప్పు: నిర్మూలించు %(name)?
సరి: నిర్మూలించు %(name)s?
ఫార్మాటింగ్/XML టాగులు
HTML/XML టాగులు <strong>లాంటివి, పాఠాన్ని రూపుదిద్దటానికి వాడినవి చూడవచ్చు. వీటిని అలాగే నకలు చేసి సరియైన పాఠం భాగానికి జతచేయండి. తగినట్లుగా టాగులను ముగింపు చేయుట మరవవద్దు. ఈ పద్ధతి XML టాగులకు వాడాలి.
ఉదా:
మూలము: <strong>File name</strong>
తప్పు: <బలం>ఫైల్ పేరు</బలం>
సరి: <strong>ఫైల్ పేరు</strong>
ఇంకా xml టాగ్ లక్షణాలు మరియు వాటి విలువలు అనువాదం చేయకూడదు. (విలువలు అనువాదం చేసినట్లయితే, అభివృద్ధికారుల వ్యాఖ్యలు చూచి మీరు సరిగా చేస్తున్నారని నిర్ధారించుకోండి). ఉదా:
మూలము: <link linkend="desktop-themes">
తప్పు: <link linkend="రంగస్థల థీములు">
సరి: <link linkend="desktop-themes">
ప్రోగ్రామ్ పరామితులు
ఆదేశ లైను పరామితులు అనువాదము చేయకూడదు.
ఉదా:
మూలము: "The command line options are:\n"
" --quick speeds up the processing\n"
" --slow slows everything down."
తప్పు: "ఆదేశ లైను ఐచ్ఛికాలు:\n"
" --త్వరితం పని త్వరితము చేస్తుంది\n"
" --నెమ్మది ప్రతిదీ నెమ్మదిగా చేస్తుంది."
సరి: "ఆదేశ లైను ఐచ్ఛికాలు:\n"
" --quick పని త్వరితము చేస్తుంది\n"
" --slow ప్రతిదీ నెమ్మదిగా చేస్తుంది."
TRUE/FALSE, GTK స్థిరరాశులు
"TRUE" , "FALSE" లాంటి పదబంధాలు మరియు or gtk స్థిరరాశులు "gtk-ok", "gtk-cancel" or "toolbar-icon" అనువాదం చేయకూడదు.
చాలాసార్లు, అటువంటి పదబంధం కనబడితే, సాఫ్ట్వేర్ అభివృద్ధి కారులకు తెలియపరిచి వాటిని తొలగించుమని కోరాలి
GCONF అమరిక కీలు
ఉదాహరణలు:
మూలం: The port which the server will listen to if the 'use_alternative_port' key is set to true.
Valid values are in the range from 5000 to 50000.
తప్పు: Portul pe care să asculte serverul în cazul în care cheia „folosește_port_alternativ” este activată.
Valorile valide sunt între 5000 și 50000.
సరి: Portul pe care să asculte serverul în cazul în care cheia „use_alternative_port” este activată.
Valorile valide sunt între 5000 și 50000.
సందర్భ పాఠం
కొన్ని పాత GNOME అనువాదాలలో, అనువాద సందర్భం మూల పదబంధంలో ఇమిడి వుండవచ్చు. మరిన్ని వివరాలు
ఉదాహరణలు:
మూలం: "Orientation|Top"
తప్పు: "Orientare|Sus"
సరి: "Orientation|Sus"
సరి: "Sus"
అటువంటి పాఠం కనబడితే, బగ్ నివేదిక సమర్పించి అభివృద్ధికారులకు తెలియచేయండి
అనువాద గణాంకాలు
లాంచ్పాడ్ అనువాదాలలో, గణాంకాలు చూపించబడతాయి, వీటి ద్వారా అనువాద స్థితి తెలుసుకొని, పనిజరగవలసినవాటిని గుర్తించవచ్చు.
వుబుంటు లో కాటలాన్ భాషలో ఒక అనువాద మాదిరి గణాంకాలను ఉదాహరణగా చూడండి. :
స్థితి నిలువవరుసలో రంగులకు అర్ధాలు
అనువాద గణాంకాలు పదబంధం ప్రస్తుత స్థితికి రంగులద్వారా సూచిస్తాయి.
అనువాదమైన పదబంధాలు:
Green: the translation imported from the upstream project and the one in Launchpad are identical.
Blue: changed in Launchpad. The translation was imported from an upstream project, but translator chose to change it in Launchpad. The changed string will override the upstream one and be used in the distributed translations. Translators should keep these modifications to a minimum, and manually send them back to upstream if necessary.
Purple: newly translated in Launchpad. The string is only translated in Launchpad. Translations imported from upstream did not have a translation for the string.
అనువాదంకాని పదబంధాలు:
Red: untranslated. These strings have neither been translated in the upstream project nor in Launchpad
చుటుకు సహాయం:
జీవితచక్రము
అనువాద జీవితచక్రములో అనువాద స్థితిని తెలిపే రంగులు ఈ విధంగా మారవచ్చు. సర్వసాధారణంగా కనబడే వాటి వివరాలు క్రింద యివ్వబడినవి:
Red > Purple > Green. In this scenario, the string was untranslated (Red), the translator translated it in Launchpad and there was no translation upstream (Purple). In the next translation import, the upstream translation has been done and coincides with the Launchpad one. This was because either an upstream translator made exactly the same translation or because the translator sent the translations back to upstream.
Red > Purple > Blue > Green. The string was untranslated (Red), the translator translated it in Launchpad and there was no translation upstream (Purple). In the next translation import, the upstream translation has been done and is different to the Launchpad one. This was probably because there was no communication between the upstream translator and the downstream one: the latter did not send his/her changes back to upstream, so upstream didn't know someone had already translated this somewhere else and translated it again, but differently. The way to get this translation to green is for the two translators to agree in a common translation, and either change it in Launchpad or upstream, depending on which one they might want to adopt.
Red > Green. The translation has been done upstream and it has been imported into Launchpad.
Green > Blue. A translator deliberately overrode an upstream translation. Upstream and Launchpad translations differ. These should be kept to a minimum, if necessary at all.
స్థానికీకరణ జట్టను నిర్వహించుట
స్థానికీకరణ లింకులు
అనువాద మార్గదర్శక సూచనలు
క్రియాపదాల వాడుక: చేర్చాలి.
గ్రాంథిక లేక వ్యవహారిక శైలి:వ్యవహారిక శైలి
పారిభాషిక పదకోశం: చేర్చాలి.
తరచూ దొర్లే తప్పులు: చేర్చాలి.
అనువాదం చేయకూడని పదబంధాలు: చేర్చాలి
సాధారణ/మంచి పద్ధతులు
జట్టు నిర్వహణ కు సాధారణ పద్ధతులు
ఇతర అనువాదకులు లేక జట్టుల గురించి మర్చిపోవద్దు. చాలా సార్లు, స్వేచ్ఛామూలాల పర్యావరణంలో మీరొక్కరే అనువాదం చేయటంలేదని గమనించండి. మిగతా జట్టులతో సంపర్కంలో వుండండి. అందరూ వాడే ప్రసారాల ఛానల్ వాడి అనువాద సమస్యలు చర్చించండి.
Define a procedure for accepting new team members.
The acceptance level may vary according to the percentage of already finished translations. For languages with few translators and translations already done team acceptance could be lower than in the case of a language with many translators, translations made and the presence of GTP, OpenOffice , etc upstream translation projects.
Before accepting a member you may ask him/her to provide some translation. If the translations are great you may accept the new member. Otherwise giving feedback about why the translation are not good is a great help. Try to use a forum, mailinglist or IRC channel for giving feedback to potential new members.
Create a webpage/wikipage for the translations guide. This guide should contain:
First rule: "If a translation does not make sense for you / your grandmother, definitely it is wrong!".
Second rule: "Make your translation useful and adapt to the context. Don't follow always the original text". Like for example "Tile children" may sound funny in many languages so try "Arrange windows as tile". The original text is not always the correct one.
a common terminology or a link to a common terminology dictionary or glossary. Don't forget about open-tran.eu . You can also install the glossary used by Romanian teams (here is the code)
information about what should be translated and what not
specific rules for translating into your language
a list of frequent errors.
explaining the plural form for your language and how to use them
how you should translate menu accelerators / shortcuts
inform the translators about other translation project and how we should cooperate and work together
Make sure you have a good communication channel for all members of the team or subteam. Try to reach all communication types: mailinglist, forum, IRC channel.
Let Launchpad know about your translation guide
Create a webpage / wiki where people could find general information about your team, such as:
short and long term team goal
new membership acceptance conditions
translation guide
common terminology (ex a link to a glossary, terminology list, dictionary)
how to get in contact with the team (team contact or team members)
Make sure the team act as a team.
Keep the team members up to date with the latest actions
keep in contact with team members and try to collect feedback and status
guide new members and help them get along with the team and translation work
try to recruit new members into your translation team.
From time to time take a look at what other people are doing. In many cases you are not the only team/person translating software in your language.