Kaynak kodu formatlayıcı / indenter


17

Ubuntu 12.04 kullanıyorum. Bu bir şirket makinesi olduğu için herhangi bir kök veya sudo ayrıcalığım yok.

Ubuntu 12.04'ün normal kurulumunda, herhangi bir girinti içermeyen çirkin hatalı biçimlendirilmiş kaynak kodunu güzel görünümlü koda dönüştürmek için kullanabileceğim herhangi bir terminal programı var mı?

Yine, herhangi bir paket yükleyemiyorum, bu yüzden böyle bir şey varsa, Ubuntu ile birlikte gelen bir pakete ihtiyacım var.

Örneğin:

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

Ve sonra şuraya dönüştürün:

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

Kodu görmek veya düzenlemek için ne kullanıyorsunuz? Muhtemelen editöründe girintili olmasını istiyorsun değil mi? Veya bunu birden çok dosya için komut satırından mı yapmak istiyorsunuz?
terdon

Çevrimiçi bir araç gibi mi demek istiyorsun?
Braiam

1
Gedit IIRC'ye girintili girecek ve KDE'ye geçme yeteneğine sahipseniz kate filetype'a göre vurgulanacak ve girintili olacaktır
eyoung100

Yanıtlar:


12

Eğer vim editörü yüklü varsa, dosyayı açmak vim file.cve yazın =Gsonuna kadar başlaması dosyayı girinti için. Sonra ile kaydedin :wq.

Varsayılan kurulumlarda vi(değil vim) kurulur, bu nedenle gerekli identpakete sahip olmaz (karel tarafından belirtildiği gibi).


9

clang-format arkadaşın! Kullanımı kolay ve kullanışlı.
İşte bununla ilgili bazı bilgiler.

kullanım

$ clang-format file > formattedfile

Veya:

$ clang-format -i file


Adım adım kılavuz

1. Korkunç biçimlendirilmiş kod

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

main.cc

2. Büyülü komut

$ clang-format -i main.cc


3. İyi biçimlendirilmiş kod

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

main.cc

4. Mutluluk

Yükleme

Eğer isterseniz, ile yükleyebilirsiniz,

$ sudo apt-get install clang-format

Komut.


3

Terminali açın ve çalıştırın:

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

... burada biçimlendirilmemiş-kaynak-code.cpp, örneğinizdeki kod gibi biçimlendirilmemiş C ++ kaynak koduna sahip dosyadır.

Ya da yükleyemiyorsanız, paketi indirip apt-get download indentayıklayabilirsiniz:, dpkg-deb -x indent*.deb fs/girinti ikili dosyası, fs/usr/bin/fs'nin ana dizininizdeki herhangi bir dizin olduğu yerde bulunur . Unformatted-source-code.cpp dosyasını aynı yere kopyalarsanız fs/usr/bin/, kodu terminalden girintileme komutları şunlardır:

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

Bu komutlar normal kullanıcı olarak çalıştırılabilir. Kök olmak gerekli değildir.


2
Bu bir şirket makinesi olduğu için herhangi bir kök veya sudo ayrıcalığım yok.
user9993

5
@ user9993 Paketi ile indirip apt-get download indentayıklayabilirsiniz:, dpkg-deb -x indent*.deb fs/girinti ikili bulunur fs/usr/bin/.
Lekensteyn


1

akıl ve girinti akla gelen, ancak varsayılan bir Ubuntu yükleme de içermez. Tabii ki, bir C derleyiciniz varsa, bunları derleyebilir ve bir yere kendi PATH'ınıza kurabilirsiniz.

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

1

emacs:

  • c dosyasını aç

  • hepsini seç

  • girinti (sekme tuşu)

  • dosyayı kaydet

HTH

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.