2014-06-10 21 views
12

मैं एक साधारण पॉड पाठ फ़ाइल है:क्यों perldoc के रूप में मूल्यांकन करता है 'मंस्टर' 'म्युएन्स्टर'

$ cat test.pod 
=encoding UTF-8 

Münster 

यह फ़ाइल के इस शाब्दिक हेक्स डंप के अनुसार, UTF-8 में एन्कोड किया गया है:

00000000 3d 65 6e 63 6f 64 69 6e 67 20 55 54 46 2d 38 0a |=encoding UTF-8.| 
00000010 0a 4d c3 bc 6e 73 74 65 72 0a     |.M..nster.| 
0000001a 

"ü" को दो बाइट्स सी 3 और बीसी के रूप में एन्कोड किया जा रहा है।

लेकिन जब मैं फ़ाइल पर perldoc चलाता हूं तो यह मेरे सुंदर प्रारूपित यूटीएफ -8 अक्षरों को ASCII में बदल रहा है।

और भी, यह "ü" को "ue" के रूप में प्रस्तुत करने के जर्मन भाषा सम्मेलन को सही ढंग से संभालने में है।

$ perldoc test.pod | cat 
TEST(1)    User Contributed Perl Documentation    TEST(1) 

Muenster 

perl v5.16.3      2014-06-10       TEST(1) 

ऐसा क्यों कर रहा है?

क्या कोई अतिरिक्त घोषणा है जो मैं इसे रोकने से रोकने के लिए अपनी फाइल में डाल सकता हूं?


App::perlbrew के साथ अतिरिक्त जांच के बाद मैं अंतर पाया है पॉड का एक विशेष संस्करण :: perldoc होने से आता है।

perl-5.10.1 3.14_04 Muenster 
perl-5.12.5 3.15_02 Muenster 
perl-5.14.4 3.15_04 Muenster 
perl-5.16.2 3.17  Münster 
perl-5.16.3 3.19  Muenster 
perl-5.16.3 3.17  Münster 
perl-5.17.3 3.17  Münster 
perl-5.18.0 3.19  Muenster 
perl-5.18.1 3.23  Münster 

हालांकि मैं अभी भी चाहते हैं, यदि संभव हो तो, एक तरह से Pod :: perldoc 3.14, 3.15 बनाने के लिए, और 3.19 व्यवहार "सही ढंग से"।

उत्तर

6

मिले इस आर टी टिकट http://rt.cpan.org/Public/Bug/Display.html?id=39000

इस "बग" Perl 5.10 के साथ पेश किया जा रहा है और शायद इस बाद के संस्करणों में हल किया गया था।

यह भी देखें: How can I use Unicode characters in Perl POD-derived man pages? और incorrect behaviour of perldoc with UTF-8 texts

आपको निर्भरता के रूप में Pod::Perldoc का नवीनतम उपलब्ध संस्करण जोड़ना चाहिए।

+0

दिलचस्प है कि https://metacpan.org/source/MALLEN/Pod-Perldoc-3.23/Changes RT # 39000 के अनुसार 3.15_12 में तय किया गया था लेकिन मुझे 3.1 9 में एक रिग्रेशन दिखाई देता है। – Kaoru

+1

जिस समाधान पर मैं बस गया था वह निर्भरता के रूप में 'Pod :: Perldoc 3.21' को जोड़ना था, जिससे यह सुनिश्चित करना चाहिए कि मॉड्यूल का उपयोग करने वाले किसी भी व्यक्ति को वास्तव में पीओडी पढ़ने के लिए' perldoc' का पर्याप्त संस्करण है! – Kaoru

+0

हां, वहां कुछ अजीब खाना पकाने वाला है। नवीनतम संस्करण का उपयोग करना मैं सुझाव दे सकता हूं। –

संबंधित मुद्दे