2012-07-12 21 views
6

पर pygettext.py और msgfmt.py मैं अपने मैक ओएस एक्स 10.7 पर अपने पायथन ऐप में तारों का अनुवाद करना चाहता हूं। मैं gettext मॉड्यूल आयात कर सकता हूं लेकिन मुझे pygettext.py और msgfmt.py उपकरण नहीं मिल रहे हैं, जो कि पाइथन दस्तावेज़ों के अनुसार मेरे पायथन इंस्टॉलेशन में कहीं भी होना चाहिए।मैक ओएस एक्स

मैक ओएस एक्स 10.7 पर पूर्व-स्थापित पायथन संस्करण इन उपकरणों को याद कर रहा है और यदि हां, तो मैं उन्हें कैसे प्राप्त कर सकता हूं?

धन्यवाद।

उत्तर

7

उन दोनों स्क्रिप्ट पाइथन स्रोत की विविध उपकरण निर्देशिका में रहते हैं। यह निर्देशिका अक्सर ओएस एक्स में ऐप्पल द्वारा प्रदान की गई पाइथन की बाइनरी स्थापना में शामिल नहीं होती है। हालांकि, उन्हें पायथन स्रोत रिलीज से अलग से डाउनलोड करना आसान है; सबसे हालिया रिलीज देखें hereTools निर्देशिका python.org ओएस एक्स द्विआधारी संस्थापक द्वारा स्थापित किया गया है

$ curl -O http://www.python.org/ftp/python/2.7.3/Python-2.7.3.tgz 
$ tar -xf Python-2.7.3.tgz 
$ cd Python-2.7.3 
$ cd Tools/i18n/ 
$ ls 
makelocalealias.py msgfmt.py*   pygettext.py* 

अजगर 3.2 के साथ शुरुआत: वर्तमान अजगर 2.7.3 रिलीज़ के लिए, आप निम्न कार्य कर सकता है। आपको कम से अजगर ढांचे के अंदर यह मिल जाएगा:

/Library/Frameworks/Python.framework/Versions/3.2/share/doc/python3.2/examples/Tools 
+0

धन्यवाद धन्यवाद, मैं अलग से उपकरण डाउनलोड किया। – verbit

+0

मैक पर 10.8.5 कर्ल मेरे लिए काम नहीं करता है, लेकिन http: // www.python.org/ftp/python/2.7.3/पायथन-2.7.3.tgz' चाल है – jrgray

0

आप अजगर को सही ढंग से लिनक्स में स्थापित किया है आप कमांड लाइन से द्विआधारी संस्करण उपयोग करने में सक्षम होना चाहिए। तो, बर्तन फ़ाइल बनाने के लिए, आप टाइप कर सकते हैं:

$> pygettext [options] source_file_list 

मैंने पाया मैं 3.2 के लिए 2.7 के लिए एक से दो pygettext के संस्करणों, और एक अन्य की थी, लेकिन वे बहुत ज्यादा एक ही काम करने के लिए लग रहे हैं। .po फ़ाइलों से .mo फ़ाइलों को बनाने के लिए:

$> msgfmt [options] file.po 

लेकिन आपको यह सुनिश्चित करने की आवश्यकता है कि आप गलती से gnu संस्करण का उपयोग न करें। Msgfmt का पायथन संस्करण बहुत आसान है। दोनों आदेशों मदद है, तो आप के साथ विकल्प (और संस्करण) की जाँच कर सकते हैं:

$> pygettext --help 

और

$> msgfmt --help 

संदेह में हैं, जैसा कि ऊपर का सुझाव दिया अजगर स्रोत डाउनलोड करने बेल्ट और ब्रेसिज़ है दृष्टिकोण।

मैं अभी भी लग रहा है मेरे रास्ते दौर, अपने आप i18n तो कोई बेहतर जानता है, अपनी टिप्पणी :)

7

जोड़ने कृपया अजगर 3 के साथ और MacOS> = 10.9, homebrew के माध्यम से gettext स्थापित करने पुस्तकालयों लिंक नहीं किया जाएगा और यह त्रुटि Can't find msgfmt उत्पन्न करेगा।

यह मदद करता है:

$ brew install gettext # if not already done 
$ brew link gettext --force 

करने के लिए https://stackoverflow.com/a/8785138/621690