स्रोत कोड फ़ॉर्मेटर / इंडेंटर


17

मैं Ubuntu 12.04 का उपयोग कर रहा हूं। मेरे पास कोई मूल या sudo विशेषाधिकार नहीं है क्योंकि यह एक कंपनी की मशीन है।

क्या उबंटू 12.04 की एक सामान्य स्थापना में, कोई भी टर्मिनल प्रोग्राम जो मैं बदसूरत विकृत स्रोत कोड को चालू करने के लिए उपयोग कर सकता हूं जिसमें अच्छे दिखने वाले कोड में किसी इंडेंटेशन का अभाव है?

फिर से, मैं किसी भी पैकेज को स्थापित नहीं कर सकता, इसलिए मुझे एक की आवश्यकता है जो पहले से ही उबंटू के साथ आता है, अगर ऐसा कुछ मौजूद है।

उदाहरण के लिए:

    int main()
    {
test(1);
another_function(1);
}

और फिर इसे रूपांतरित करें:

int main()
{
    test(1);
    another_function(1);
}

कोड को देखने या संपादित करने के लिए आप क्या उपयोग करते हैं? संभवत: आप चाहते हैं कि यह आपके संपादक में सही हो? या आप कई फाइलों के लिए कमांड लाइन से ऐसा करना चाहते हैं?
टेराडॉन

आप एक ऑनलाइन उपकरण की तरह मतलब है?
Braiam

1
Gedit IIRC को इंडेंट करेगा, और केट हाइलाइट करेगा और यदि आप केडीई पर स्विच करने की क्षमता रखते हैं, तो आप इसे केडीई पर आधारित कर सकते हैं
eyoung100

जवाबों:


12

यदि आपके पास विम संपादक स्थापित है, तो फ़ाइल को खोलें vim file.cऔर =Gफ़ाइल को शुरू से अंत तक इंडेंट करने के लिए टाइप करें। फिर इससे बचाएं :wq

डिफ़ॉल्ट इंस्टॉलेशन पर, vi(नहीं vim) स्थापित है, इसलिए इसमें आवश्यक identपैकेज नहीं होगा (जैसा कि कैरेल ने उल्लेख किया है)।


9

clang- प्रारूप आपका दोस्त है! इसका उपयोग आसान और उपयोगी है।
इसके बारे में कुछ जानकारी इस प्रकार है।

प्रयोग

$ clang-format file > formattedfile

या:

$ clang-format -i file


कदम से कदम गाइड

1. बुरी तरह से स्वरूपित कोड

#include <iostream>
  using namespace std;
    int main() {
         cout << "Oh";
      cout << "clang format rulez!";       
             }

main.cc

2. जादुई आदेश

$ clang-format -i main.cc


3. अच्छी तरह से स्वरूपित कोड

#include <iostream>
using namespace std;
int main() {
  cout << "Oh";
  cout << "clang format rulez!";
}

मुख्य

सीसी 4. खुशी की

स्थापना

यदि आप इसे पसंद करते हैं, तो आप इसे स्थापित कर सकते हैं,

$ sudo apt-get install clang-format

आदेश।


3

टर्मिनल खोलें और चलाएं:

sudo apt-get install indent
indent -linux -l120 -i4 -nut unformatted-source-code.cpp

... जहाँ unformatted-source-code.cpp वह फाइल है जिसमें C ++ सोर्स कोड, जैसे कि आपके उदाहरण में unformatted C ++ सोर्स कोड है।

या यदि आप इसे स्थापित नहीं कर सकते हैं, तो आप पैकेज को इसके साथ डाउनलोड कर सकते हैं apt-get download indentऔर इसे निकाल सकते हैं:, dpkg-deb -x indent*.deb fs/इंडेंट बाइनरी उस स्थान पर स्थित है fs/usr/bin/जहां एफएस आपके घर की निर्देशिका में कोई भी निर्देशिका है। यदि आप unformatted-source-code.cpp फ़ाइल को उसी स्थान पर कॉपी करते हैं fs/usr/bin/, तो टर्मिनल से कोड को इंडेंट करने के लिए आदेश हैं:

cd path/to/fs/usr/bin/  # change directories to the location of "indent" executable
./indent -linux -l120 -i4 -nut unformatted-source-code.cpp

ये कमांड सामान्य उपयोगकर्ता के रूप में चलाए जा सकते हैं। जड़ होना जरूरी नहीं है।


2
मेरे पास कोई मूल या sudo विशेषाधिकार नहीं है क्योंकि यह एक कंपनी की मशीन है।
user9993

5
@ user9993 आप पैकेज डाउनलोड कर सकते हैं apt-get download indentऔर उसे निकाल सकते हैं:, dpkg-deb -x indent*.deb fs/इंडेंट बाइनरी में स्थित है fs/usr/bin/
लेकेनस्टाइन

2

डिफ़ॉल्ट रूप से नैनो को ubuntu में स्थापित किया जाना चाहिए।

आप nano -i fileऑटो-इंडेंट सक्षम के साथ संपादित करने के लिए उपयोग कर सकते हैं ।

यह मौजूदा लाइनों को नहीं बदल सकता है, इसके लिए आपको इसे मैन्युअल रूप से इंडेंट करना पड़ सकता है।

देखें: http://www.nano-editor.org/dist/v2.0/nano.html


1

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

# Something like -
./configure --prefix=$HOME/tools
make
make install
PATH=$PATH:$HOME/tools/bin

1

emacs:

  • खुली सी फ़ाइल

  • सभी का चयन करे

  • इंडेंट (टैब कुंजी)

  • फाइल सुरक्षित करें

HTH

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.