2011-10-19 10 views
6

में घुंघराले ब्रेसिज़ पर बल "समान रेखा" मेरे जावा कोड फॉर्मेटर में, मेरी प्रोफ़ाइल में (वास्तव में यह ग्रहण डिफ़ॉल्ट है) "ब्रेसिज़" टैब में सभी विकल्प "समान रेखा" पर सेट हैं। फिर भी जब मैं इस तरह कोड का एक टुकड़ा है:ग्रहण फॉर्मेटर

interface TestI 
    { 
} 

और मैं फ़ॉर्मेटर आह्वान (कुंजी बाइंडिंग, संदर्भ मेनू, जो कुछ भी) सब मुझे मिलता है

interface TestI 
{ 
} 

यह उद्घाटन स्थानांतरित नहीं होता है उसी रेखा के धनुकोष्ठक, एक ही तरीके का, नियंत्रण बयानों आदि पर लागू होता है तो जब मैं मैन्युअल

interface TestI  { 
} 

के लिए इसे बदल यह तो करने के लिए यह प्रारूप:

interface TestI { 
} 

तो यह आम तौर पर मेरे द्वारा किए गए प्रारूप का सम्मान करता है लेकिन केवल ब्रेसिज़ और अन्य तत्वों के बीच की जगहों को प्रारूपित करता है।

मेरे स्वरूपक कार्य में अन्य स्वरूपण विकल्प निर्दिष्ट के रूप में कार्य करते हैं। मैं नवीनतम ग्रहण इंडिगो रिलीज 3.7.1 का उपयोग कर रहा हूं, मेरे पास 3.7 के साथ समान था, और मेरे दोस्त ने 3.5 रिलीज के साथ इसे आजमाया, इसलिए यह मुझे लगता है कि यह उद्देश्य पर है, लेकिन फिर फिर यह क्यों है "ब्रेसिज़ "टैब अगर मैं इस नियम का उपयोग कर कोड को दोबारा सुधार नहीं कर सकता ...

मुझे आशा है कि मुझे कुछ याद आ रहा है और आप मुझे एक पल में बेवकूफ़ बना देंगे और समस्या दूर हो जाएगी, क्योंकि मेरे पास है साफ करने के लिए कक्षाओं का एक गैज़िलियन और मैं इसे हाथ से नहीं करना चाहता .. :)

अद्यतन: जब मैं नियम को "समान रेखा" नहीं बल्कि "अगली पंक्ति" पर सेट करता हूं तो स्वरूपण अपेक्षा के अनुसार काम करता है, यह इस नियम पर बल दिया गया है कि मैंने कोड कैसे लिखा है, जैसे ही मैं इसे "समान रेखा" में बदलता हूं, फ़ॉर्मेटर इस नियम को मजबूर नहीं करता है।

उत्तर

13

यह मिला ... यह की वजह से किया गया था:

<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="false"/> 

जो फ़ॉर्मेटर जीयूआई की स्थापना में के तहत "रेखा रैपिंग/कभी शामिल होने के पहले से ही लिपटे लाइनों"

हाँ अब मैं इसे सेटिंग याद है, लेकिन मैंने कभी सोचा नहीं था कि यह ब्रेसिज़ सेटिंग को ओवरराइड करेगा ...

फ़ॉर्मेटर की एक अच्छी सुविधा है, तो अगर आप ऐसे विकल्पों को सेट करते हैं जो आपके द्वारा चुने गए अन्य विकल्पों के कारण नो-ऑप्स नहीं हैं उन्हें ओवरराइड सेट करें।

+3

दुर्भाग्यवश, यह फिर भी मेरी सावधानीपूर्वक गठबंधन सुंदर लपेटा फ़ंक्शन कॉल लेता है और मनमाने ढंग से लाइन-टूटी हुई गड़बड़ी की 2.5 लाइनों पर उन्हें एक साथ squashes। काश यह सिर्फ ब्रेसिज़ करेगा। – Cheezmeister

+0

@Cheezmeister हाँ! यह शर्म की बात है कि ब्रेसिज़ के लिए कोई विशिष्ट सेटिंग नहीं है ... –

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