Scroll to navigation

PO4A.1P(1) User Contributed Perl Documentation PO4A.1P(1)

பெயர்

PO4A - PO கோப்புகள் மற்றும் மொழிபெயர்க்கப்பட்ட ஆவணங்கள் இரண்டையும் ஒரு சாட்டில் புதுப்பிக்கவும்

சுருக்கம்

B <po4a> [i <poaths>] i <config_file>

விவரம்

PO4A (எதற்கும் PO) பாரம்பரிய உரைபெறு கருவிகளைப் பயன்படுத்தி ஆவணப்படுத்தல் மொழிபெயர்ப்பின் பராமரிப்பை எளிதாக்குகிறது. PO4A இன் முக்கிய நற்பொருத்தம் என்னவென்றால், அதன் ஆவண கட்டமைப்பிலிருந்து உள்ளடக்கத்தின் மொழிபெயர்ப்பை இது துண்டிக்கிறது. இந்த திட்டத்தின் மென்மையான அறிமுகத்திற்கு தயவுசெய்து l <po4a (7)> பக்கத்தைப் பார்க்கவும்.

செயல்படுத்தப்பட்டவுடன், B <PO4A> அதன் உள்ளமைவு கோப்பில் குறிப்பிடப்பட்டுள்ள அனைத்து ஆவணக் கோப்புகளையும் பாகுபடுத்துகிறது. ஆவணத்தில் எந்தவொரு மாற்றத்தையும் பிரதிபலிக்க இது PO கோப்புகளை (மொழிபெயர்ப்பைக் கொண்டுள்ளது) புதுப்பிக்கிறது, மேலும் அசல் முதன்மை ஆவணத்தின் கட்டமைப்பில் உள்ளடக்கத்தின் மொழிபெயர்ப்பை (PO கோப்புகளில் காணப்படுகிறது) செலுத்துவதன் மூலம் மொழிபெயர்க்கப்பட்ட ஆவணங்களை உருவாக்குகிறது.

முதலில், PO கோப்புகளில் அசல் ஆவணங்களிலிருந்து மொழிபெயர்க்க சரங்கள் மட்டுமே உள்ளன. இந்த கோப்பு வடிவம் மொழிபெயர்ப்பாளர்கள் பி <PO4A> ஆல் பிரித்தெடுக்கப்பட்ட ஒவ்வொரு பத்திக்கும் ஒரு மொழிபெயர்ப்பை கைமுறையாக வழங்க அனுமதிக்கிறது. மொழிபெயர்ப்பிற்குப் பிறகு ஆவணங்கள் மாற்றியமைக்கப்பட்டால், மொழிபெயர்ப்பாளர்களால் கையேடு மதிப்பாய்வைக் கோருவதற்காக PO கோப்பில் உள்ள "தெளிவில்லாதது" என்று தொடர்புடைய மொழிபெயர்ப்புகளை B <PO4A> குறிக்கிறது. மொழிபெயர்ப்பாளர்கள் "கூடுதல்" என்று அழைக்கப்படுவதையும் வழங்க முடியும், அவை கூடுதல் உள்ளடக்கமாகும், எடுத்துக்காட்டாக மொழிபெயர்ப்பை யார் செய்தார்கள், பிழைகள் எவ்வாறு புகாரளிப்பது.

 முதன்மை ஆவணங்கள் ---+----> --------> ---------+ 
(ஆவணப்படுத்தல்) | | 
V (po4a மரணதண்டனை)> -----+-> மொழிபெயர்க்கப்பட்டுள்ளது 
| | | ஆவணங்கள் 
தற்போதுள்ள PO கோப்புகள்->-> புதுப்பிக்கப்பட்ட PO கோப்புகள்>-+ | 
^ | | 
| வி | 
+ ---------- <--------- <-------+ ^ 
(கையேடு மொழிபெயர்ப்பு செயல்முறை) | 
| 
கூடுதல்-> ----------------------------------------+

B <PO4A> இன் பணிப்பாய்வு ஒத்திசைவற்றது, திறந்த மூல திட்டங்களுக்கு ஏற்றது. ஆவணப்படுத்தல் எழுத்தாளர்கள் மாச்டர் ஆவணங்களை தங்கள் சொந்த வேகத்தில் எழுதுகிறார்கள். மொழிபெயர்ப்பாளர்கள் PO கோப்புகளில் மொழிபெயர்ப்புகளை மதிப்பாய்வு செய்து புதுப்பிக்கிறார்கள். அண்மைக் கால மொழிபெயர்ப்பை அண்மைக் கால ஆவண கட்டமைப்பில் செலுத்துவதன் மூலம், PO கோப்புகளுக்கான அசல் ஆவணங்களில் எந்த மாற்றத்தையும் பிரதிபலிக்கவும், புதுப்பிக்கப்பட்ட ஆவணப்படுத்தல் மொழிபெயர்ப்புகளை உருவாக்கவும், பராமரிப்பாளர்கள் b <po4a> தேவைக்கேற்ப மறுபரிசீலனை செய்கிறார்கள்.

இயல்பாக, கொடுக்கப்பட்ட மொழிபெயர்க்கப்பட்ட ஆவணம் அதன் உள்ளடக்கத்தில் குறைந்தது 80% மொழிபெயர்க்கப்படும்போது தயாரிக்கப்படுகிறது. மொழிபெயர்க்கப்படாத உரை அசல் மொழியில் வைக்கப்பட்டுள்ளது. தயாரிக்கப்பட்ட ஆவணங்கள் மொழிபெயர்ப்பு முழுமையடையாவிட்டால் மொழிகளை கலக்கிறது. கீழே விவரிக்கப்பட்டுள்ள I <-keep> விருப்பத்துடன் 80% வாசலை மாற்றலாம். இருப்பினும், மொழிபெயர்ப்புகளை 100% ஆக நிராகரிப்பது மொழிபெயர்ப்பாளர்களுக்கு ஊக்கமளிக்கும் என்பதை நினைவில் கொள்க, அதன் பணி ஒருபோதும் பயனர்களுக்குக் காட்டப்படாது, அதே நேரத்தில் மிகவும் முழுமையற்ற "மொழிபெயர்ப்புகளை" காண்பிப்பது இறுதி பயனர்களுக்கு தொந்தரவாக இருக்கலாம்.

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

விரைவான தொடக்க பயிற்சி

பி <ஃபூ> என்ற ஒரு திட்டத்தை நீங்கள் பராமரிப்போம், அதில் ஒரு மனிதனின் பக்கம் எஃப் <மேன்/ஃபூ. மொழி). சில முறை முன்பு, யாரோ ஒரு செர்மன் மொழிபெயர்ப்பை F <Man/Foo.de.1> என்ற பெயரில் வழங்கினர். இது ஒரு சிக்கலாகும், ஏனென்றால் உங்கள் ஆவணத்தில் அனைத்து மொழிகளிலும் சரி செய்யப்பட வேண்டிய மிகுந்த தவறான தகவலைக் கொண்டுள்ளது என்று ஒரு பிழை அறிக்கை கிடைத்தது, ஆனால் நீங்கள் செர்மன் பேசவில்லை, எனவே நீங்கள் அசலை மட்டுமே மாற்ற முடியும், மொழிபெயர்ப்பு அல்ல. இப்போது, மற்றொரு பங்களிப்பாளர் சப்பானிய மொழியில் மொழிபெயர்ப்பை பங்களிக்க விரும்புகிறார், இது நீங்கள் மாச்டர் செய்யாத ஒரு மொழி.

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

மாற்றத்தில் இரண்டு படிகள் உள்ளன: PO4A உள்கட்டமைப்பை அமைத்து, முந்தைய செர்மன் மொழிபெயர்ப்பை முந்தைய படைப்புகளை காப்பாற்ற மாற்றவும். இந்த பிந்தைய பகுதி பின்வருமாறு s <po4a-getTextize> ஐப் பயன்படுத்தி செய்யப்படுகிறது. L <PO4A-GetTextize (1)> இன் ஆவணங்களில் விவரிக்கப்பட்டுள்ளபடி, இந்த செயல்முறை அரிதாகவே முழுமையாக தானியங்கி, ஆனால் அது முடிந்ததும், செர்மன் மொழிபெயர்ப்பைக் கொண்ட B <D.PO> கோப்பை உங்கள் PO4A பணிப்பாய்வுகளில் ஒருங்கிணைக்க முடியும்.

  PO4A-GetTextize --- வடிவ மனிதர்-மாச்டர் FOO.1-உள்ளூர்மயமாக்கப்பட்ட foo.de.1--po de.po

இப்போது PO4A ஐ உள்ளமைக்கலாம். பொருத்தமான கோப்பு தளவமைப்பு மூலம், உங்கள் உள்ளமைவு கோப்பு இதைப் போலவே எளிமையாக இருக்கலாம்:

 [PO_DIRECTORY] MAN/PO4A/

. $ lang.1

அனைத்து PO கோப்புகளும் (மொழிபெயர்ப்பாளர்களின் படைப்புகளைக் கொண்டவை) F <Man/Po4a/> கோப்பகத்தில் உள்ளன என்பதையும், உங்களிடம் ஒரே ஒரு முதன்மை கோப்பு மட்டுமே உள்ளது, f <man/foo.1>. உங்களிடம் பல முதன்மை கோப்புகள் இருந்தால், இரண்டாவது முறையைப் போன்ற பல வரிகள் உங்களிடம் இருக்கும். இதுபோன்ற ஒவ்வொரு வரியும் தொடர்புடைய மொழிபெயர்ப்பு கோப்புகளை எங்கு எழுதுவது என்பதையும் குறிப்பிடுகிறது. இங்கே, f <man/foo.1> இன் செர்மன் மொழிபெயர்ப்பு f <man/மொழிபெயர்க்கப்பட்ட/foo.de.1> இல் உள்ளது.

B <PO4A> இன் உள்ளமைவை நாம் கடைசியாக முடிக்க வேண்டியது, புதிய மொழிபெயர்ப்பைத் தொடங்க பயன்படுத்தப்பட வேண்டிய வார்ப்புரு பொருளைக் கொண்ட ஒரு பானை கோப்பு. குறிப்பிட்ட s <pot> நீட்டிப்புடன் ஒரு வெற்று கோப்பை உருவாக்கவும் <po_directory> (எ.கா. f <man/po4a/foo.pot>), மற்றும் b <po4a> அதை எதிர்பார்த்த உள்ளடக்கத்துடன் நிரப்பும்.

இந்த அமைப்பில் உள்ள கோப்புகளின் மறுபரிசீலனை இங்கே:

  Man மனிதன்/ 
│ ├œ foo.1 <- அசல் மேன் பக்கம், ஆங்கிலத்தில் 
│ ├ ├ ├ bo4a/ 
│ │ │ te.po <- செர்மன் பிஓ மொழிபெயர்ப்பு, getTextization இலிருந்து 
│ │ │ └ └ foo.pot <- எதிர்கால மொழிபெயர்ப்புகளின் பானை வார்ப்புரு (முதலில் காலியாக) 
மொழிபெயர்ப்பு உருவாக்கப்படும் இடத்தில் │ └ └ மொழிபெயர்ப்பு/ <- மொழிபெயர்ப்பு உருவாக்கப்படும் அடைவு 
Po 4a4a.cfg <- உள்ளமைவு கோப்பு

அமைத்ததும், B <PO4A> ஐ இயக்குவது உங்கள் ஆவணங்களை அலசவும், பானை வார்ப்புரு கோப்பைப் புதுப்பிக்கவும், PO மொழிபெயர்ப்பு கோப்புகளைப் புதுப்பிக்க இதைப் பயன்படுத்தவும், ஆவணப்படுத்தல் மொழிபெயர்ப்பு கோப்புகளைப் புதுப்பிக்க அவற்றைப் பயன்படுத்தவும். அனைத்தும் ஒரே கட்டளையில்:

        Po4a --verbose po4a.cfg

இதுதான். B <po4a> இப்போது முழுமையாக கட்டமைக்கப்பட்டுள்ளது. உங்கள் பிழையை f <man/foo.1> இல் சரிசெய்தவுடன், செர்மன் மொழிபெயர்ப்பில் புண்படுத்தும் பத்தி ஆங்கிலத்தில் நிலையான உரையால் மாற்றப்படும். மொழிகளைக் கலப்பது உகந்ததல்ல, ஆனால் நீங்கள் புரிந்து கொள்ளாத மொழிபெயர்ப்புகளில் பிழைகளை அகற்றுவதற்கான ஒரே வழி இதுதான், மேலும் பயனர்களுக்கு வழங்கப்பட்ட உள்ளடக்கம் ஒருபோதும் தவறாக வழிநடத்தாது என்பதை உறுதிப்படுத்தவும். தொடர்புடைய PO கோப்பில் செர்மன் மொழிபெயர்ப்பைப் புதுப்பிப்பது மிகவும் எளிதானது, எனவே மொழி கலவை நீண்ட காலம் நீடிக்காது. இறுதியாக, ஒரு சப்பானிய மொழிபெயர்ப்பாளர் ஒரு புதிய மொழிபெயர்ப்பை பங்களிக்க விரும்பினால், அவர் S <foo.pot> ஐ s <ja.po> என மறுபெயரிட வேண்டும் மற்றும் மொழிபெயர்ப்பை முடிக்க வேண்டும். உங்களிடம் இந்த கோப்பு கிடைத்ததும், அதை f <man/po4a/po/> இல் விடுங்கள். மொழிபெயர்க்கப்பட்ட பக்கம் f <man/மொழிபெயர்க்கப்பட்ட/foo.ja.1> (போதுமான உள்ளடக்கம் மொழிபெயர்க்கப்பட்டால்) நீங்கள் மீண்டும் b <po4a> ஐ இயக்கும்போது தோன்றும்.

விருப்பங்கள்

பி <-k>, பி <-கீப்>
மொழிபெயர்ப்பு சதவீதத்திற்கான குறைந்தபட்ச வாசல் (அதாவது எழுதுங்கள்) இதன் விளைவாக வரும் கோப்பை (இயல்புநிலை: 80). அதாவது. இயல்பாக, கோப்புகளை வட்டில் எழுத குறைந்தபட்சம் 80% மொழிபெயர்க்க வேண்டும்.
பி <-w>, பி <-அகலம்>
வடிவம் அதை ஆதரித்தால், இதன் விளைவாக வரும் கோப்பை மடிக்க வேண்டிய நெடுவரிசை (இயல்புநிலை: 76). வழங்கப்பட்ட மதிப்பு 0 அல்லது எதிர்மறையாக இருந்தால், இதன் விளைவாக வரும் கோப்பு மூடப்படாது. மீண்டும் எழுதும்போது உடைக்கக்கூடிய சில வடிவங்களுடன் இது பயனுள்ளதாக இருக்கும்.
பி <-h>, பி <-உதவி>
ஒரு குறுகிய உதவி செய்தியைக் காட்டு.
பி <-m>, பி <-மாச்டர்-சர்செட்>
மொழிபெயர்க்க ஆவணங்கள் கொண்ட கோப்புகளின் சார்செட். அனைத்து முதன்மை ஆவணங்களும் ஒரே எழுத்துக்களைப் பயன்படுத்த வேண்டும் என்பதை நினைவில் கொள்க.
உள்ளூர்மயமாக்கப்பட்ட ஆவணங்களைக் கொண்ட கோப்புகளின் சார்செட். மொழிபெயர்க்கப்பட்ட அனைத்து ஆவணங்களும் ஒரே சார்செட்டைப் பயன்படுத்தும் என்பதை நினைவில் கொள்க.
கூடுதல் சேர்க்கை. அனைத்து கூடுதல் அனைத்தையும் ஒரே எழுத்தில் இருக்க வேண்டும் என்பதை நினைவில் கொள்க.
பி <-v>, பி <-பதிப்பு>
ச்கிரிப்டின் பதிப்பைக் காண்பித்து வெளியேறவும்.
திட்டத்தின் சொற்களஞ்சியத்தை அதிகரிக்கவும்.
பி <-q>, பி <-அமைதியான>
நிரலின் சொற்களஞ்சியத்தைக் குறைக்கவும்.
பி <-d>, பி <-பிழைத்திருத்தம்>
சில பிழைத்திருத்த தகவல்களை வெளியிடுங்கள்.
பி <-o>, பி <-விருப்பம்>
வடிவமைப்பு சொருகி செல்ல கூடுதல் விருப்பம் (கள்). செல்லுபடியாகும் விருப்பங்கள் மற்றும் அவற்றின் அர்த்தங்கள் பற்றிய கூடுதல் தகவலுக்கு ஒவ்வொரு சொருகி ஆவணங்களையும் காண்க. எடுத்துக்காட்டாக, நீங்கள் அச்கிடோக் பாகுபடுத்தி '-o டேபிள்செல்சை' கடந்து செல்லலாம், அதே நேரத்தில் பாகம் பாகம் '-o தாவல்கள் = பிளவு' என்பதை ஏற்றுக் கொள்ளும்.
பி <-f>, பி <-படை>
B <PO4A> இது தேவையில்லை என்று கருதினாலும், எப்போதும் பானை மற்றும் PO கோப்புகளை உருவாக்குங்கள்.

இயல்புநிலை நடத்தை (பி <-படை> குறிப்பிடப்படாதபோது) பின்வருமாறு:

பானை கோப்பு ஏற்கனவே இருந்தால், ஒரு முதன்மை ஆவணம் அல்லது உள்ளமைவு கோப்பு மிக சமீபத்தியதாக இருந்தால் அது மீண்டும் உருவாக்கப்படும் (B <-no-Update> வழங்கப்படாவிட்டால்). பானை கோப்பு ஒரு தற்காலிக ஆவணத்திலும் எழுதப்பட்டுள்ளது மற்றும் மாற்றங்கள் உண்மையில் தேவை என்பதை B <PO4A> சரிபார்க்கிறது.

மேலும், ஒரு மொழிபெயர்ப்பு அதன் முதன்மை ஆவணம், PO கோப்பு, அதன் கூடுதல் ஒன்று அல்லது உள்ளமைவு கோப்பு மிக சமீபத்தியது என்றால் மட்டுமே மீண்டும் உருவாக்கப்படுகிறது. வாசல் சோதனையில் தேர்ச்சி பெறாத மொழிபெயர்ப்புகளை மீண்டும் உருவாக்க முயற்சிப்பதைத் தவிர்க்க (பி <-கீப்> ஐப் பார்க்கவும்), எஃப் <.po4a-stamp> நீட்டிப்பைக் கொண்ட ஒரு கோப்பை உருவாக்க முடியும் (பார்க்க b <-stamp>).

ஒரு முதன்மை ஆவணத்தில் கோப்புகள் இருந்தால், நீங்கள் பி <-படை> கொடியைப் பயன்படுத்த வேண்டும், ஏனெனில் இந்த சேர்க்கப்பட்ட கோப்புகளின் மாற்ற நேரம் கணக்கில் எடுத்துக்கொள்ளப்படாது.

msgmerge(1) அளவுரு -U உடன் பானையின் அடிப்படையில் PO கோப்புகள் எப்போதும் மீண்டும் உருவாக்கப்படுகின்றன.

பி <-முத்திரை>
ஒரு மொழிபெயர்ப்பு உருவாக்கப்படாதபோது முத்திரை கோப்புகளை உருவாக்க B <PO4A> சொல்கிறது, ஏனெனில் அது வாசலை அடையவில்லை. இந்த முத்திரை கோப்புகள் F <.PO4A- SPAMP> நீட்டிப்புடன் எதிர்பார்த்த மொழிபெயர்க்கப்பட்ட ஆவணத்தின் படி பெயரிடப்பட்டுள்ளன.

குறிப்பு: இது F <.po4a-stamp> கோப்புகளின் உருவாக்கத்தை மட்டுமே செயல்படுத்துகிறது. முத்திரை கோப்புகள் எப்போதும் இருந்தால் அவை பயன்படுத்தப்படுகின்றன, மேலும் அவை B <-RM- மொழிபெயர்ப்பு> அல்லது கோப்பு இறுதியாக மொழிபெயர்க்கப்படும்போது அகற்றப்படும்.

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

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

பி <-ஆர்.எம்-டிரான்ச்லேசன்ச்>
மொழிபெயர்க்கப்பட்ட கோப்புகளை அகற்று (பி <-மொழிபெயர்ப்புகள் இல்லை>).
பி <-இல்லை-பின்-பின்>
இந்த கொடி 0.41 முதல் எதுவும் செய்யாது, பின்னர் வெளியீடுகளில் அகற்றப்படலாம்.
பி <-ஆர்.எம்-பேக்அப்கள்>
இந்த கொடி 0.41 முதல் எதுவும் செய்யாது, பின்னர் வெளியீடுகளில் அகற்றப்படலாம்.
பி <-மொழிபெயர்ப்பு-மட்டும்> நான் <மொழிபெயர்க்கப்பட்ட-கோப்பு>
குறிப்பிட்ட கோப்பை மட்டுமே மொழிபெயர்க்கவும். ஒரு உள்ளமைவு கோப்பில் நிறைய கோப்புகள் இருந்தால் செயலாக்கத்தை விரைவுபடுத்துவது பயனுள்ளதாக இருக்கும். இந்த விருப்பம் PO மற்றும் POT கோப்புகளை புதுப்பிக்காது என்பதை நினைவில் கொள்க. இந்த விருப்பத்தை பல முறை பயன்படுத்தலாம்.
பி <-மாறி> நான் <ar> பி <=> நான் <மதிப்பு>
B <PO4A> உள்ளமைவு கோப்பில் விரிவாக்கப்படும் ஒரு மாறியை வரையறுக்கவும். I <$ (var)> இன் ஒவ்வொரு நிகழ்வும் i <value> ஆல் மாற்றப்படும். இந்த விருப்பத்தை பல முறை பயன்படுத்தலாம்.
PO கோப்புகளைப் புதுப்பித்து, மொழிபெயர்க்கப்பட்ட ஆவணங்களை குறிப்பிட்ட மொழிக்கு மட்டுமே உருவாக்கவும். இந்த விருப்பத்தை பல முறை பயன்படுத்தலாம்.
B <PO4A> உள்ளமைவு கோப்பில் குறிப்பிடப்பட்டுள்ள அனைத்து உள்ளீட்டு ஆவணங்களுக்கும் அடிப்படை கோப்பகத்தை அமைக்கவும்.

நான் <setdir> மற்றும் i <srcdir> இரண்டும் குறிப்பிடப்பட்டால், உள்ளீட்டு கோப்புகள் பின்வரும் கோப்பகங்களில் தேடப்படுகின்றன, வரிசையில்: i <stddir>, தற்போதைய அடைவு மற்றும் நான் <srcdir>. வெளியீட்டு கோப்புகள் குறிப்பிடப்பட்டால் அல்லது தற்போதைய கோப்பகத்திற்கு I <stdir> க்கு எழுதப்படுகின்றன.

B <PO4A> உள்ளமைவு கோப்பில் குறிப்பிடப்பட்டுள்ள அனைத்து வெளியீட்டு ஆவணங்களுக்கும் அடிப்படை கோப்பகத்தை அமைக்கவும் (மேலே உள்ள B <-SRCDIR> ஐப் பார்க்கவும்).
Specifies the Perl module name used for context generation (such as gettext msgctxt). This option can be set individually for each master document.

The module name must be discoverable by the po4a Perl program (you may need to adjust the "PERL5LIB" environment variable, for example) and must contain a subroutine named exactly "get_msgctxt". This subroutine takes a single hash reference as an argument and should return either "undef" (indicating no context) or a context string value.

The hash reference argument contains several fields: "msgid", "reference", "type", "previous", and "others". The "msgid", "reference", and "type" fields contain string values for the message. The "previous" field is a hash reference to the previous message. The "others" field may be provided by individual format modules. To supply these additional fields, the format module implementation must override the "translate" subroutine in the "TransTractor" module and pass the "context_arguments" option.

For details, refer to its usage section below.

பானை தலைப்பை மாற்றியமைக்கும் விருப்பங்கள்

குறிப்பு வடிவமைப்பைக் குறிப்பிடவும். உரையாடல் நான் <வகை> எந்தவொரு குறிப்பையும் தயாரிக்காத b <eney> இல் ஒன்றாகும், பி <கோப்பு> வரி எண் இல்லாமல் கோப்பை மட்டுமே குறிப்பிட, பி <கவுண்டர்> வரி எண்ணை அதிகரித்து வரும் கவுண்டரால் மாற்றவும், மற்றும் பி <முழு > முழுமையான குறிப்புகளைச் சேர்க்க (இயல்புநிலை: முழு).
பி <-மடக்கு-போ> பி <இல்லை> | பி <புதிய லைன்ச்> | நான் <எண்> (இயல்புநிலை: 76)
PO கோப்பை எவ்வாறு மூட வேண்டும் என்பதைக் குறிப்பிடவும். இது நன்றாக மூடப்பட்டிருக்கும், ஆனால் அறிவிலி மோதல்களுக்கு வழிவகுக்கும் அல்லது தானாகவே கையாள எளிதான கோப்புகளுக்கு இடையேயான தேர்வை அளிக்கிறது, ஆனால் மனிதர்களுக்காக படிக்க கடினமாக உள்ளது.

வரலாற்று ரீதியாக, கெட்டெக்ச்ட் தொகுப்பு அழகுசாதனப் பொருட்களுக்காக 77 வது நெடுவரிசையில் PO கோப்புகளை மறுவடிவமைத்துள்ளது. இந்த விருப்பம் PO4A இன் நடத்தையைக் குறிப்பிடுகிறது. ஒரு எண் மதிப்புக்கு அமைக்கப்பட்டால், PO4A இந்த நெடுவரிசைக்குப் பிறகு மற்றும் உள்ளடக்கத்தில் புதிய லைன்களுக்குப் பிறகு PO கோப்பை மூடிவிடும். பி <புதிய லைன்ச்> என அமைக்கப்பட்டால், PO4A உள்ளடக்கத்தில் புதிய லைன்களுக்குப் பிறகு MSGID மற்றும் MSGSTR ஐ மட்டுமே பிரிக்கும். பி <இல்லை> என அமைக்கப்பட்டால், PO4A PO கோப்பை மூடாது. குறிப்பு கருத்துகள் எப்போதும் நாங்கள் உள்நாட்டில் பயன்படுத்தும் கெட்டெக்ச்ட் கருவிகளால் மூடப்பட்டிருக்கும்.

இந்த விருப்பத்தின் மதிப்பின் அடிப்படையில், பொருத்தமான கொடிகள் (--no-wrap அல்லது --width=number) அடிப்படையான உரைபெறு பயன்பாடுகளுக்கு அனுப்பப்படும். துரதிருச்டவசமாக உரைபெறு --wrap-po no க்கு எந்த இணையையும் வழங்கவில்லை, அதனால் --no-wrap அனுப்பப்படும் (--wrap-po newlines போன்றது).

MSGID மற்றும் MSGSTR எவ்வாறு மூடப்பட்டிருக்கும் என்பதில் இந்த விருப்பம் எந்த தாக்கத்தையும் ஏற்படுத்தாது என்பதை நினைவில் கொள்க, அதாவது இந்த சரங்களின் உள்ளடக்கத்தில் புதியவை எவ்வாறு சேர்க்கப்படுகின்றன என்பதில்.

பி <-மாச்டர் மொழி>
மொழிபெயர்க்க ஆவணங்களைக் கொண்ட மூல கோப்புகளின் மொழி. அனைத்து முதன்மை ஆவணங்களும் ஒரே மொழியைப் பயன்படுத்த வேண்டும் என்பதை நினைவில் கொள்க.
எம்.எச்.சி.ஐ.டி பிழைகளுக்கான அறிக்கை முகவரியை அமைக்கவும். இயல்பாக, உருவாக்கப்பட்ட பானை கோப்புகளுக்கு அறிக்கை இல்லை-MSGID-BUGS-TO புலங்கள் இல்லை.
பி <-பதிப்புரிமை-ஓல்டர்> நான் <string>
பதிப்புரிமை வைத்திருப்பவரை பானை தலைப்பில் அமைக்கவும். இயல்புநிலை மதிப்பு "இலவச மென்பொருள் அறக்கட்டளை, இன்க்."
பி <-தொகுப்பு-பெயர்> நான் <string>
பானை தலைப்புக்கு தொகுப்பு பெயரை அமைக்கவும். இயல்புநிலை "தொகுப்பு".
பி <-தொகுப்பு-பதிப்பு> நான் <string>
பானை தலைப்புக்கு தொகுப்பு பதிப்பை அமைக்கவும். இயல்புநிலை "பதிப்பு".

PO கோப்புகளை மாற்றுவதற்கான விருப்பங்கள்

msgmerge(1)க்கான கூடுதல் விருப்பங்கள்.

குறிப்பு: பி <$ lang> தற்போதைய மொழிக்கு நீட்டிக்கப்படும்.

பி <-இல்லை-ப்ரீவ்ச்>
இந்த விருப்பம் msgmerge(1)க்கு அனுப்பப்பட்ட விருப்பங்களிலிருந்து --முந்தைய ஐ நீக்குகிறது. 0.16க்கு முந்தைய gettext(3) பதிப்புகளை ஆதரிக்க இது தேவை.
பி <-முந்தைய>
இந்த விருப்பம் msgmerge(1)க்கு அனுப்பப்பட்ட விருப்பங்களுக்கு --முந்தைய சேர்க்கிறது. இதற்கு gettext(3) 0.16 அல்லது அதற்குப் பிந்தையது தேவைப்படுகிறது, மேலும் முன்னிருப்பாகச் செயல்படுத்தப்படும்.

உள்ளமைவு கோப்பு

PO4A ஒரு உள்ளமைவு கோப்பை வாதமாக எதிர்பார்க்கிறது. இந்த கோப்பில் பின்வரும் கூறுகள் இருக்க வேண்டும்:

  • PO கோப்புகளுக்கான பாதை மற்றும் திட்டத்தில் இருக்கும் மொழிகளின் பட்டியல்;
  • விருப்பமாக, சில உலகளாவிய விருப்பங்கள் மற்றும் தனிப்பட்ட முதன்மை கோப்புகளை உள்ளமைக்க வார்ப்புருக்களாகப் பயன்படுத்தப்படும் உள்ளமைவு மாற்றுப்பெயர்கள்;
  • குறிப்பிட்ட அளவுருக்களுடன் மொழிபெயர்க்க ஒவ்வொரு முதன்மை கோப்பின் பட்டியல்.

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

சில முழு எடுத்துக்காட்டுகள் இந்த பக்கத்தில் வழங்கப்பட்டுள்ளன, மற்ற எடுத்துக்காட்டுகளை மூல விநியோகத்தின் சி <டி/சி.எஃப்.சி> கோப்பகத்தில் காணலாம்.

PO மற்றும் POT கோப்புகளைக் கண்டறிதல்

பின்வருமாறு, பானை மற்றும் பிஓ கோப்புகளுக்கான பாதையை வெளிப்படையாகக் கொடுப்பதே எளிமையான தீர்வு:

 [po4a_paths] man/po/project.pot de:man/po/de.po fr:man/po/fr.po

இது முதலில் பானை கோப்பிற்கான பாதையையும், பின்னர் செர்மன் மற்றும் பிரஞ்சு பிஓ கோப்புகளுக்கான பாதைகளையும் குறிப்பிடுகிறது.

நகல்/ஒட்டுதல் பிழைகள் அபாயத்தைக் குறைக்க இதே தகவல்களை பின்வருமாறு எழுதலாம்:

 [PO4A_LA_LASS] fr
.

வழங்கப்பட்ட மொழிகள் பட்டியலைப் பயன்படுத்தி சி <$ lang> கூறு தானாகவே விரிவுபடுத்தப்படுகிறது, இது ஒரு புதிய மொழி சேர்க்கப்படும்போது நகல்/ஒட்டுதல் பிழையின் அபாயத்தைக் குறைக்கிறது.

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

 [Po_directory] மனிதன்/போ/

வழங்கப்பட்ட கோப்பகத்தில் PO கோப்புகளின் தொகுப்பு இருக்க வேண்டும், ஒவ்வொன்றும் C <xx.po> என பெயரிடப்பட்ட C <xx> இந்த கோப்பில் பயன்படுத்தப்படும் மொழியின் ISO 639-1. கோப்பகத்தில் சி <.pot> கோப்பு நீட்டிப்புடன் ஒற்றை பானை கோப்பும் இருக்க வேண்டும். முதல் ஓட்டத்திற்கு, இந்த கோப்பு காலியாக இருக்கக்கூடும், ஆனால் அது இருக்க வேண்டும் (PO4A நீட்டிப்புக்கு முன் பயன்படுத்த வேண்டிய பெயரை யூகிக்க முடியாது).

C <po_directory> மற்றும் c <po4a_paths> க்கு இடையில் ஒன்றை மட்டுமே நீங்கள் தேர்வு செய்ய வேண்டும் என்பதை நினைவில் கொள்க. முதல் ஒன்று (c <po_directory>) மிகவும் கச்சிதமானது, நகல்/ஒட்டுதல் பிழையின் அபாயத்தை மேலும் குறைக்கிறது, ஆனால் எதிர்பார்க்கப்படும் திட்ட அமைப்பு மற்றும் கோப்பு பெயர்களைப் பயன்படுத்த உங்களைத் தூண்டுகிறது. இரண்டாவது (c <po4a_paths>), உங்கள் முதல் திட்டத்தை PO4A உடன் அமைக்கும்போது மிகவும் வெளிப்படையானது, அநேகமாக படிக்கக்கூடியது, மேலும் அறிவுறுத்தப்படுகிறது.

மையப்படுத்தப்பட்ட அல்லது பி.ஓ.

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

மாச்டர் கோப்புக்கு ஒரு பிஓ கோப்பை வைத்திருக்க, நீங்கள் பின்வருமாறு சி <[PO4A_Paths]> வரியில் உங்கள் PO கோப்புகளின் பெயரில் C <$ master> என்ற சரத்தை பயன்படுத்த வேண்டும்.

 [po4a_paths] Doc/$ master/$ master.pot $ lang: doc/$ master/$ lang.po

இந்த வரியுடன், PO4A ஒவ்வொரு ஆவணத்திற்கும் மொழிபெயர்க்க தனித்தனி பானை மற்றும் PO கோப்புகளை உருவாக்கும். எடுத்துக்காட்டாக, உங்களிடம் 3 ஆவணங்கள் மற்றும் 5 மொழிகள் இருந்தால், இது 3 பானை கோப்புகள் மற்றும் 15 பிஓ கோப்புகளை ஏற்படுத்தும். இந்த கோப்புகள் சி <PO4A_PATHS> வார்ப்புருவில் குறிப்பிடப்பட்டுள்ளபடி பெயரிடப்பட்டுள்ளன, சி <$ மாச்டர்> மொழிபெயர்க்க ஒவ்வொரு ஆவணத்தின் அடிப்படை பெயருக்கு மாற்றாக. பெயர் மோதலின் விசயத்தில், சி <பாட் => அளவுருவுடன், பின்வருமாறு பயன்படுத்த பானை கோப்பைக் குறிப்பிடலாம்.

இந்த நற்பொருத்தம் பல மொழிபெயர்க்கப்பட்ட கோப்புகளை ஒரே பானை கோப்பில் தொகுக்கவும் பயன்படுத்தப்படலாம். பின்வரும் எடுத்துக்காட்டு 2 பானை கோப்புகளை மட்டுமே உருவாக்குகிறது: f <l10n/po/foo.pot> (f <foo/gui.xml> இலிருந்து பொருளைக் கொண்டுள்ளது) மற்றும் f <l10n/po/bar.pot> (இரண்டிலிருந்தும் பொருளைக் கொண்டுள்ளது F <bar/gui.xml> மற்றும் f <bar/cli.xml>).

 [PO4A_LANGS] DE FR JA
. $ lang.po
. $ lang.xml pot = foo
. $ lang.xml pot = bar
. $ lang.xml pot = மதுக்கூடம்

பிளவு பயன்முறையில், அனைத்து PO கோப்புகளுக்கும் இடையிலான மொழிபெயர்ப்புகளைப் பகிர்ந்து கொள்ள, பி <PO4A> PO புதுப்பிப்பின் போது ஒரு தற்காலிக தொகுப்பை உருவாக்குகிறது. இரண்டு PO கோப்புகள் ஒரே சரத்திற்கு வெவ்வேறு மொழிபெயர்ப்புகளைக் கொண்டிருந்தால், B <PO4A> இந்த சரத்தை தெளிவற்றதாகக் குறிக்கும் மற்றும் இந்த சரம் கொண்ட அனைத்து PO கோப்புகளிலும் இரண்டு மொழிபெயர்ப்புகளையும் சமர்ப்பிக்கும். மொழிபெயர்ப்பாளரால் மறைக்கப்படாதபோது, ஒவ்வொரு PO கோப்புகளிலும் மொழிபெயர்ப்பு தானாகவே பயன்படுத்தப்படுகிறது.

மொழிபெயர்க்க ஆவணங்களைக் குறிப்பிடுகிறது

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

 [type: sgml] "doc/my stuff.sgml"  "fr:doc/fr/mon truc.sgml"  de:doc/de/mein\ kram.sgml
 [type: man] script fr:doc/fr/script.1 de:doc/de/script.1
 . 
DE: DOC/DE/Script.xml

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

 [Type: SGML] Doc/my_stuff.SGML $ lang: Doc/$ lang/my_stuff.sgml
[Type: Man] Script.1 $ lang: PO/$ LANG/SCRIPT.1
[Type: Docbook] Doc/Script.xml $ lang: Doc/$ lang/script.xml

விருப்பங்களைக் குறிப்பிடுகிறது

இரண்டு வகையான விருப்பங்கள் உள்ளன: PO4A விருப்பங்கள் PO4A கட்டளை வரி விருப்பங்களுக்கு இயல்புநிலை மதிப்புகள், நான் <வடிவமைப்பு விருப்பங்கள்> வடிவ பாகுபடுத்திகளின் நடத்தையை மாற்ற பயன்படுகிறது. ஒரு PO4A விருப்பங்கள் என, உங்கள் உள்ளமைவு கோப்பில் B <-Keep> கட்டளை வரி அளவுருவின் இயல்புநிலை மதிப்பு 80% க்கு பதிலாக 50% என்று குறிப்பிடலாம். நான் <வடிவமைப்பு விருப்பங்கள்> ஒவ்வொரு பாகுபடுத்தும் தொகுதியின் குறிப்பிட்ட பக்கத்தில் ஆவணப்படுத்தப்பட்டுள்ளன, எ.கா. L <locale :: po4a :: நீகுமொ (3pm)>. பிரித்தெடுக்கப்பட்ட சரங்களைச் சுற்றியுள்ள இடைவெளிகளை அகற்றாமல் இருக்க, எக்ச்எம்எல் பாகுபடுத்தி பி <sostrip> க்கு நீங்கள் கடந்து செல்லலாம்.

சி <opt:> மற்றும் c <opt_xx:> ஆகியவற்றைப் பயன்படுத்தி ஒரு குறிப்பிட்ட முதன்மை கோப்பிற்காக அல்லது அந்த கோப்பின் ஒரு குறிப்பிட்ட மொழிபெயர்ப்புக்கு கூட இந்த விருப்பங்களை நீங்கள் அனுப்பலாம். <Xx> மொழிக்கு. பின்வரும் எடுத்துக்காட்டில், பி <sostrip> விருப்பம் எக்ச்எம்எல் பாகுபடுத்தலுக்கு (எல்லா மொழிகளுக்கும்) அனுப்பப்படுகிறது, அதே நேரத்தில் நுழைவு பிரெஞ்சு மொழிபெயர்ப்புக்கு 0% ஆக குறைக்கப்படும் (அது எப்போதும் வைக்கப்படுகிறது).

 [type:xml] toto.xml $lang:toto.$lang.xml தேர்வு:"-o nostrip" opt_fr:"--0 வை

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

  . 
. 
[type:xml] toto.xml $lang:toto.$lang.xml opt:--keep opt:20 opt:-o opt:nostrip opt_fr:--keep opt_fr:0

பானை கோப்பை உருவாக்கும்போது மொழி குறிப்பிட்ட விருப்பங்கள் பயன்படுத்தப்படாது என்பதை நினைவில் கொள்க. எடுத்துக்காட்டாக, பிரஞ்சு மொழிபெயர்ப்பை உருவாக்கும்போது மட்டுமே பி <sostrip> ஐ பாகுபடுத்தலுக்கு அனுப்புவது சாத்தியமில்லை, ஏனென்றால் ஒவ்வொரு மொழிகளையும் புதுப்பிக்க அதே பானை கோப்பு பயன்படுத்தப்படுகிறது. எனவே மொழி சார்ந்ததாக இருக்கக்கூடிய ஒரே விருப்பங்கள், மொழிபெயர்ப்பை உருவாக்கும் போது பயன்படுத்தப்படுகின்றன, சி <-கீப்> விருப்பமாக.

உள்ளமைவு மாற்றுப்பெயர்கள்

ஒரே விருப்பங்களை பல கோப்புகளுக்கு அனுப்ப, ஒரு வகை மாற்றுப்பெயரை பின்வருமாறு வரையறுப்பதே சிறந்தது. அடுத்த எடுத்துக்காட்டில், சி <-கீப் 0> இந்த சி <test> வகையைப் பயன்படுத்தி ஒவ்வொரு இத்தாலிய மொழிபெயர்ப்பிற்கும் அனுப்பப்படுகிறது, இது சி <மேன்> வகையின் நீட்டிப்பாகும்.

  . 
[type: test] man/page.1 $lang:man/$lang/page.1

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

  . 
[type: man] man/page.1 $lang:man/$lang/page.1

உலகளாவிய இயல்புநிலை விருப்பங்கள்

எல்லா கோப்புகளுக்கும் அவற்றின் வகையைப் பொருட்படுத்தாமல் பயன்படுத்த வேண்டிய விருப்பங்களை வரையறுக்க சி <[விருப்பங்கள்]> வரிகளையும் பயன்படுத்தலாம்.

  [விருப்பங்கள்] -கீப் 20 --option நாசி

கட்டளை வரி விருப்பங்களைப் போலவே, உள்ளமைவு கோப்பில் அனுப்பப்பட்ட அளவுருக்களை நீங்கள் சுருக்கமாகக் கூறலாம்:

  [விருப்பங்கள்] -K 20 -o நாசி

விருப்பம் முன்னுரிமைகள்

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

  • சி <[விருப்பங்கள்]> வரிகள் இயல்புநிலை மதிப்புகளை வழங்குகின்றன, அவை வேறு எந்த மூலத்தாலும் மீறப்படலாம்.
  • வகை மாற்றுப்பெயர்கள் பின்னர் பயன்படுத்தப்படுகின்றன. மொழி குறிப்பிட்ட அமைப்புகள் அனைத்து மொழிகளுக்கும் பொருந்தக்கூடியவற்றை மேலெழுதும்.
  • கொடுக்கப்பட்ட முதன்மை கோப்பிற்கு குறிப்பிட்ட அமைப்புகள் இயல்புநிலை மற்றும் வகை மாற்றுப்பெயரிலிருந்து வரும்வை இரண்டையும் மேலெழுதும். இந்த விசயத்திலும், மொழி குறிப்பிட்ட அமைப்புகள் உலகளாவியவற்றை மேலெழுதும்.
  • இறுதியாக, B <PO4A> கட்டளை வரியில் வழங்கப்பட்ட அளவுருக்கள் உள்ளமைவு கோப்பிலிருந்து எந்த அமைப்புகளையும் மேலெழுதும்.

எடுத்துக்காட்டு

இடைவெளிகளையும் மேற்கோள்களையும் எவ்வாறு மேற்கோள் காட்டுவது என்பதைக் காட்டும் ஒரு எடுத்துக்காட்டு இங்கே:

 [Po_directory] மனிதன்/போ/

[விருப்பங்கள்]-மாச்டர்-சார்ட் யுடிஎஃப் -8

. . OPT: "-k 75" opt_it: "-l utf-8" opt_fr:-VERBOSE

Context

po4a supports context features such as "msgctxt" in the GNU gettext PO file format. See GNU gettext utilities - Contexts <https://www.gnu.org/software/gettext/manual/html_node/Contexts.html> for the motivation behind this feature. In short, it allows multiple messages with the same "msgid" (master language message) to coexist in a single PO file. Here's a simple example. Consider this Markdown document, context.md:

  # Foo
  Foo

In this case, both the title and paragraph share the same "msgid" "Foo". If we want to translate the title "Foo" as "BAR" and the paragraph "Foo" as "Bar", we encounter a problem: the PO file only supports one message for this msgid, forcing us to choose a single translation. This is where the context feature becomes useful. By tagging each message with a distinct context—for example, "title" or "paragraph"—we can treat them as separate messages, allowing each to have its own translation in the generated output.

This may sound appealing, but it can be complicated to use due to its maximum flexibility. The "context-module" option takes a Perl module name, which must contain a "get_msgctxt" subroutine. A minimal example looks like this:

  package ContextExample;
  use strict;
  use warnings;
  sub get_msgctxt {
      my $args = shift;
      $args->{msgid} eq 'Foo' or return;
      if ( $args->{type} eq 'Title #' ) {
          return 'title';
      } else {
          return 'paragraph';
      }
  }
  1;

Save this Perl module to "/path/to/lib/ContextExample.pm". The configuration file "/path/to/po4a.conf" should contain the following:

  [po4a_paths] master.pot trans:translation.po
  [type:Text] context.md trans:translation.md \
              opt:"--option markdown \
                   --context-module=ContextExample"

Then run "PERL5LIB=/path/to/lib:$PERL5LIB po4a /path/to/po4a.conf". Note that you must set the Perl library path environment variable so that po4a can locate the provided module.

There are some important caveats when using this feature:

Embedding the "reference" value as-is is strongly discouraged because file paths tend to change, which would cause all messages with that context to change as well. Use concise, clear, and consistent context values that reflect your intention.
You may need to investigate the exact Perl string literal using debug print statements in your context module. For example, if the "msgid" contains "’" (a right single quotation mark), the value passed to the "get_msgctxt" subroutine will contain "\x{2019}" instead. In this case, you would write a conditional such as "$args-"{msgid} eq "\x{2019}scuse me?".>

கூடுதல்: மொழிபெயர்ப்பில் கூடுதல் உள்ளடக்கத்தைச் சேர்ப்பது

மொழிபெயர்ப்பில் கூடுதல் பகுதியை நீங்கள் சேர்க்க விரும்பினால், எடுத்துக்காட்டாக மொழிபெயர்ப்பாளருக்கு கடன் வழங்க, உங்கள் முதன்மை கோப்பை வரையறுக்கும் வரிக்கு ஒரு சேர்க்கையை வரையறுக்க வேண்டும். கூடுதல் கோப்புகளின் தொடரியல் பற்றிய கூடுதல் விவரங்களுக்கு L <PO4A (7)> பக்கத்தைப் பார்க்கவும்.

 [type: pod] script fr:dr/fr/script.1 \ கூட்டு fr:doc/l10n/script.for.add

நீங்கள் பின்வருமாறு மொழி வார்ப்புருக்களையும் பயன்படுத்தலாம்:

 . 
add_ $ lang: doc/l10n/ச்கிரிப்ட். $ lang.add

ஒரு கூடுதல் விண்ணப்பிக்கத் தவறினால், மொழிபெயர்ப்பு நிராகரிக்கப்படுகிறது.

கூடுதல் அறிவிப்புக்கான மாற்றியமைப்பாளர்கள்

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

பி <?>
இந்த கோப்பு இருந்தால் நான் <addendum_path> ஐ சேர்க்கவும், இல்லையெனில் எதுவும் செய்யாதீர்கள்.
பி <@>
நான் <addendum_path> ஒரு வழக்கமான சேர்க்கை அல்ல, ஆனால் கூடுதல் பட்டியல் கொண்ட கோப்பு, ஒன்று வரியால். ஒவ்வொரு சேர்க்கையும் மாற்றியமைப்பாளர்களால் முன்னதாக இருக்கலாம்.
பி <!>
நான் <addendum_path> நிராகரிக்கப்பட்டுள்ளது, அது ஏற்றப்படவில்லை, மேலும் கூடுதல் சேர்க்கை விவரக்குறிப்பால் ஏற்றப்படாது.

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

 [வகை: பாட்] ச்கிரிப்ட் $lang:doc/$lang/script.1 add_$lang:?doc/l10n/script.$lang.add

பின்வருவனவற்றில் ஒவ்வொரு மொழிக்கும் கூடுதல் பட்டியல் அடங்கும்:

 [வகை: பாட்] ச்கிரிப்ட் $lang:doc/$lang/script.1 add_$lang:@doc/l10n/script.$lang.add

மொழிபெயர்க்கப்பட்ட சரங்களை வடிகட்டுதல்

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

  [வகை: டாக் புக்] book.xml \ 
pot_in: book-filtered.xml \ 
$ லாங்: நூல். $ lang.xml

இந்த அமைப்பின் மூலம், மொழிபெயர்ப்பதற்கான சரங்கள் f <book-filtered.xml> இலிருந்து பிரித்தெடுக்கப்படும் (இது b <po4a> ஐ அழைப்பதற்கு முன்பு தயாரிக்கப்பட வேண்டும்) அதே நேரத்தில் மொழிபெயர்க்கப்பட்ட கோப்புகள் F <book.xml> இலிருந்து கட்டப்படும். இதன் விளைவாக, f <book.xml> இன் ஒரு பகுதியாக இருக்கும் எந்தவொரு சரமும் ஆனால் f <book-filtered.xml> இல் இல்லை PO கோப்புகளில் சேர்க்கப்படாது, மொழிபெயர்ப்பாளர்கள் அவற்றுக்கான மொழிபெயர்ப்பை வழங்குவதைத் தடுக்கிறது. எனவே மொழிபெயர்க்கப்பட்ட ஆவணங்களை உருவாக்கும் போது இந்த சரங்கள் மாற்றப்படாமல் விடப்படும். இது இயற்கையாகவே மொழிபெயர்ப்பின் அளவைக் குறைக்கிறது, எனவே ஆவணம் எப்படியும் தயாரிக்கப்படுவதை உறுதிசெய்ய உங்களுக்கு சி <-கீப்> விருப்பம் தேவைப்படலாம்.

மேலும் காண்க

L <po4a-getTextize (1)>, l <po4a (7)>.

ஆசிரியர்கள்

 டெனிச் பார்பியர் <barbier@linuxfr.org> 
நிக்கோலா பிரான்சுவா <nicolas.francois@centraliens.net> 
மார்ட்டின் குயின்சன் (Mquinson#debian.org)

பதிப்புரிமை மற்றும் உரிமம்

பதிப்புரிமை 2002-2023 ச்பை, இன்க்.

இந்த நிரல் இலவச மென்பொருள்; நீங்கள் அதை மறுபகிர்வு செய்யலாம் மற்றும்/அல்லது அதை gpl v2.0 அல்லது அதற்குப் பிறகு மாற்றலாம் (நகலெடுக்கும் கோப்பைப் பார்க்கவும்).

2026-03-23 perl v5.42.0