मैं ऑटोोटूल से सेमेक तक एक प्रोजेक्ट माइग्रेट कर रहा हूं। मेरे पास गेटटेक्स्ट समर्थन के बारे में एक सवाल है।क्या .pot फ़ाइलों को अद्यतन करने के लिए कोई cmake फ़ंक्शन है?
एक मौजूदा FindGettext.cmake मॉड्यूल एक अच्छा समारोह में प्रावधान है कि नहीं है:
GETTEXT_CREATE_TRANSLATIONS(foo.pot ALL fr.po de.po)
जहां एक बर्तन फ़ाइल और अनुवाद पो fil प्रदान करते हैं; समारोह पीओ फाइलों को जीएमओ फाइलों में बदलने का ख्याल रखता है, और यह सुनिश्चित करने के लिए उचित स्थापना लक्ष्य जोड़ता है कि फाइल रनटाइम पर पाई जा सकती है। सब अच्छा और अच्छा।
अब सवाल आता है: आप अपनी पॉट फाइलों को कैसे अपडेट करते हैं और जब आप नए संदेश जोड़ते हैं तो आप पीओ फाइलें कैसे करते हैं?
इसके लिए, ऑटोोटूल एक "अपडेट-पीओ" लक्ष्य उत्पन्न करेगा, (जिसे मैं समझता हूं), अनुवादित तार वाली सभी फाइलों की सूचियों के साथ एक POTFILES.in पढ़ता है, इसे अन्य जानकारी के साथ मिश्रित करता है, और समाप्त होता है पीओ उत्पन्न करने के लिए xgetext कॉलिंग। मुझे लगता है कि coresponding Makefile कार्य एक ऐसा ही कुछ होता है:
case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
'' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--msgid-bugs-address="$$msgid_bugs_address" \
;; \
*) \
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--package-name="$${package_gnu}ube" \
--package-version='0.4.0-dev' \
--msgid-bugs-address="$$msgid_bugs_address" \
;; \
esac
तो इससे पहले कि मैं पहिया बदलने, वहाँ एक ही बात करने के लिए एक मौजूदा cmake समारोह है,? या क्या मुझे xgettext निष्पादन योग्य खोजना है, फ़ाइलों को सूचीबद्ध करता है, और इसे हाथ से करता है? यह मेकफ़ाइल संस्करण काफी जटिल लगता है (हालांकि यह कई मामलों को संभालने लगता है); मैं नहीं cmake बराबर लिखने के लिए होने मन नहीं होता;)
धन्यवाद
पीएच
जबकि आपका उत्तर सहायक हो सकता है, तो आप 7-वर्षीय प्रश्न का उत्तर दे रहे हैं। कृपया पोस्ट करने से पहले उन संदेशों की पोस्टिंग तिथियां देखें जिन्हें आप जवाब देना चाहते हैं। –
लेकिन 7 साल की उम्र में समस्या क्या है? लोग इस प्रश्न पर जा रहे हैं (मुझे सहित) इस पृष्ठ पर जाएं। और यहां ऐसी कोई जानकारी नहीं थी। इस प्रश्न की खोज करने के बाद, मैंने भविष्य में खोजकर्ताओं के लिए यहां अपने परिणाम प्रदान किए। – Ashark