मैं ओपन-सोर्स जावा प्रोजेक्ट पर काम करता हूं, और हमारे पास बहुत सारी संसाधन संपत्ति फाइलें हैं जिनमें स्थानीयकरण योग्य संदेश संसाधन हैं। उन फ़ाइलों का अनुवाद स्वयंसेवकों द्वारा 20+ भाषाओं में किया जाता है, और मैं एक डेवलपर हूं जो मुख्य रूप से कोड संपादित करता है।गुड जावा प्रॉपर्टी फाइल एडिटर
जावा में, विभिन्न लोकेशंस के लिए संसाधन फ़ाइलों को एक नामकरण सम्मेलन द्वारा एक साथ समूहीकृत किया जाता है। उदाहरण के लिए, यदि डिफ़ॉल्ट (सामान्यतः अंग्रेज़ी) संसाधन "foo.properties" है, तो जापानी संसाधन "foo_ja.properties" में है, फ़्रेंच एक "foo_fr.properties" है, आदि। इस प्रश्न के लिए, चलो इस समूह को कॉल करें एक "संसाधन समूह।"
अब, हर बार, मुझे उन संसाधन फ़ाइलों को दोबारा करने की आवश्यकता होती है। इसके अलावा, मुझे संपत्ति फ़ाइलों की मूल बातें का समर्थन करने के लिए टूल की आवश्यकता है। कुल मिलाकर, आवश्यकताओं की सूची को कुछ की तरह हैं:
- संपत्ति कुंजी नाम का नाम बदल रहा है, और मैं एक उपकरण के बिना मुझे व्यक्तिगत रूप से उन के माध्यम से जा रहा है, एक ही समूह में सभी फाइलों में सभी चाबियाँ नाम बदलना चाहते हैं।
- एक संसाधन समूह से दूसरे में एक संपत्ति ले जाएं, और मैं समूह में प्रत्येक संसाधन फ़ाइल के लिए ऐसा करने के लिए एक उपकरण चाहता हूं।
- जावा में, संसाधन फ़ाइलें आईएसओ -885 9 -1 एन्कोडिंग में हैं और प्लेटफ़ॉर्म डिफ़ॉल्ट एन्कोडिंग में नहीं हैं।
- मैं संपत्ति फ़ाइलों को संपादित/ब्राउज़ करते समय \ uXXXX नहीं देखना चाहता, लेकिन मुझे उम्मीद है कि उपकरण उन्हें संरक्षित करेगा।
- मैं नहीं चाहता कि उपकरण संसाधन फ़ाइल में गुणों के क्रम को पुनर्व्यवस्थित करें, न ही टिप्पणियों के साथ गड़बड़ करें। मैं उपकरण को संरक्षित करने की अपेक्षा करता हूं।
- मैं टूल को संसाधन फ़ाइलों के अन्य सिंटैक्स विवरणों को संभालने के लिए चाहता हूं, जैसे मल्टीलाइन टेक्स्ट।
दुर्भाग्यवश, मुझे इन मानदंडों को फिट करने वाला कोई भी अच्छा टूल नहीं मिल रहा है। मैं मुख्य रूप से एक इंटेलिजे आईडीईए उपयोगकर्ता हूं, लेकिन यह # 2 और # 3 नहीं करता है। ग्रहण अंतर्निहित संपत्ति फ़ाइल संपादक भी बदतर है, और AFAICT यह # 1, # 2, # 4 नहीं करता है। वास्तव में इस दृष्टिकोण में कमी है कि एक ही समूह में संसाधन फ़ाइलों में कटौती। NetBeans समान रूप से आदिम है। नेटबीन के लिए भी यही है, हालांकि यह # 4 है।
क्या कोई भी बिल को फिट करने वाले अच्छे टूल के बारे में जानता है?
+1 महान प्रश्न के लिए और कोहसुक होने के लिए +1 (मुझे यह जगह पसंद है, हर जगह रॉक सितारों!) –
(जैसा कि आप शायद जानते हैं) जावा 6 में आप अन्य एन्कोडिंग में गुण फ़ाइलों का उपयोग कर सकते हैं। आगामी ग्रहण भी इसका समर्थन करता है। तो आप यूटीएफ -8 में अपनी संपत्तियां प्राप्त कर सकते हैं और उन्हें ग्रहण में अच्छी तरह से प्रदर्शित किया है। –
शॉन: धन्यवाद! पीटर: क्या आपका मतलब Properties.load (Reader) है? लेकिन लोगों को लोकेल-विशिष्ट संसाधनों को लोड करने के लिए संसाधन बंडल का उपयोग करना चाहिए, और मुझे एन्कोडिंग निर्दिष्ट करने के लिए कुछ भी नहीं दिख रहा है (न ही मुझे इसकी आवश्यकता दिखाई दे रही है।) –