2008-10-04 13 views
15

मेरे पास कुछ हद तक गड़बड़-स्वरूपित उद्देश्य-सी कोड आधार है। क्या कोडिंग मानक (यानी, ठीक से इंडेंट, रिक्त स्थान बनाम टैब इत्यादि) के अनुरूप एक संपूर्ण प्रोजेक्ट को एक्सकोड सुधारने का कोई तरीका है? क्या ऐसे अन्य उपकरण हैं जो इसे पूरा कर सकते हैं?उद्देश्य-सी टिडी

उत्तर

22

Uncrustify: http://uncrustify.sourceforge.net/

स्रोत कोड सी, सी ++, C#, ObjectiveC, डी, जावा, प्यादा और Vala के लिए Beautifier

आप कुछ सरल चाहते हैं, तो आप शायद कर सकता है सभी सफेद-स्थान/रेखा-ब्रेक को आसानी से अलग करके, ;{} पर एक नया लाइन-ब्रेक जोड़कर, और मैन्युअल रूप से कोड को फिर से इंडेंट करके कुछ नया तरीका प्राप्त करें। यह पूरी तरह से बाहर कोड के पास कहीं भी नहीं होगा, और reindenting बड़े कोड पर दर्द हो सकता है, लेकिन यह लगातार होगा।

+1

पर स्थापित है, प्रोजेक्ट – slf

+0

के नाम की वजह से पूरी तरह खोद गया है, मैं अब भी थोड़ी देर के लिए अविश्वास का उपयोग कर रहा हूं, और मैं इसके लिए भी वोट दे सकता हूं। – Moszi

7

इस blog post के अनुसार, bcpp उद्देश्य-सी के साथ काम करता है।

इसके अतिरिक्त, टूल इंडेंट आपकी मदद कर सकता है। इसका उद्देश्य सादा सी के लिए है, लेकिन इसमें एक गजलियन विकल्प हैं जो मदद कर सकते हैं। मुझे नहीं पता कि यह ओएस एक्स पर डिफ़ॉल्ट रूप से आता है या नहीं।

NAME 
     indent - changes the appearance of a C program by inserting or deleting 
     whitespace. 

SYNOPSIS 
     indent [options] [input-files] 

     indent [options] [single-input-file] [-o output-file] 

     indent --version 

DESCRIPTION 
     This man page is generated from the file indent.texinfo. This is Ediâ 
     tion of "The indent Manual", for Indent Version , last updated . 

     The indent program can be used to make code easier to read. It can 
     also convert from one style of writing C to another. 

     indent understands a substantial amount about the syntax of C, but it 
     also attempts to cope with incomplete and misformed syntax. 
+0

यह मेरी ओएस एक्स 10.5.5 मशीन पर है। मुझे लगता है कि इसे डेवलपर टूल के हिस्से के रूप में स्थापित किया जा सकता है। – dbr

+0

यह 10.6 – Joe

8

एक सरल, लेकिन सीमित, समाधान संपादन-> प्रारूप-> एक्सकोड में पुन: इंडेंट है, जो आपकी वर्तमान इंडेंटेशन सेटिंग्स (एक्सकोड-> प्राथमिकताएं ... -> इंडेंटेशन) लागू करेगा।

+0

अंडाकारों में भरना: एक्सकोड-> प्राथमिकताएं-> पाठ संपादन-> इंडेंटेशन – tomblah

5
Xcode से

:

1) आप क्या चाहते हैं मैच के लिए इंडेंटेशन वरीयताओं को बदलें।

2) पर काम करने और सभी (cmd-ए का चयन करें)

3) Shift वाम (cmd- [) कई बार जब तक सभी लाइनों खिड़की के बाएँ किनारे पर हैं कोई फ़ाइल चुनें।

4) का प्रयोग करें फिर से इंडेंट चयन (संपादित करें> प्रारूप से> या राइट क्लिक करें प्रासंगिक मेनू से)

केवल नहीं पूरी परियोजना एक समय में एक फाइल पर काम करता है। इंडेंटेशन के साथ ही सौदे करता है।

2

एकाधिक बाहरी स्वरूपकों और कमजोर आंतरिक एक्सकोड फॉर्मेटर के साथ टंकण करने के बाद, मैं अंततः अविश्वास के साथ बस गया। Uncrustify काफी अच्छा उद्देश्य-सी समर्थन है, आसानी से एक उपयोगकर्ता स्क्रिप्ट के रूप में xcode के साथ एकीकृत किया जा सकता है, और xcode मूल रूप से समर्थन करता है कि सभी भाषाओं के लिए एक केंद्रीकृत फॉर्मेटर प्रदान करता है।

अविश्वास के साथ सबसे बड़ी बाधा चुनौतीपूर्ण विन्यास फाइल है। मेरी सिफारिश, आपूर्ति किए गए नमूना कॉन्फ़िगरेशन में से एक लें (ben2.cfg बहुत अच्छा है), objc.cfg नमूना में विलय करें, और आवश्यकतानुसार ट्विक करें।

0

"GTMXcodePlugin" के एकमात्र सुविधा है, मैक Xcode के लिए उर्फ ​​गूगल उपकरण बॉक्स प्लगइन - का एक बड़ा काम करता है उद्देश्य से सी कोड, प्रभावी रूप से, और सुरक्षित रूप से सफेद जगहों को ट्रिमिंग।

The GTM Xcode 4 plugin वर्तमान में केवल पाठ फ़ाइलों से लाइन सफेद स्थान के अनावश्यक अंत दूर करने के लिए "संपादन" मेनू के अंत में एक "स्वच्छ ऊपर श्वेत रिक्ति" मेनू आइटम कहते हैं। उम्मीद है कि हम जल्द ही और अधिक सुविधाएं जोड़ देंगे। यह केवल एक्सकोड 4.2 के खिलाफ परीक्षण किया गया है।

0

इस लेखन के रूप में ऐसा करने का सबसे नया, सबसे अच्छा तरीका SpaceCommander है। यह क्लैंग के शीर्ष पर आधारित है, और इसमें कई अन्य साफ-सुथरे विशेषताएं हैं, और इस लेखन के रूप में बनाए रखा और सक्रिय है।

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