Dosya kaydetmede Intellij yeniden biçimlendirme


353

Dosyaları kaydedildiklerinde yeniden biçimlendirmek (temizlemek) için IntelliJ veya Eclipse ayarlarında gördüğümü hatırlıyorum. Nasıl bulurum (ayarlarda bulamadım)

Yanıtlar:


236

Kaydetme eylemleri eklentisini öneririm . Ayrıca, içe aktarmayı optimize etmeyi ve kodu yeniden düzenlemeyi destekler.

Eclipse formatter eklentisi ile birlikte iyi çalışır .

Eklentiyi arayın ve etkinleştirin:

resim açıklamasını buraya girin

Yapılandırın:

resim açıklamasını buraya girin

Düzenleme: Görünüşe göre Intellij'in kaydetme eklentisinin son sürümü otomatik Intellij kaydetme tarafından tetikleniyor. Hala düzenleme yaparken vurduğunda oldukça can sıkıcı olabilir.

Eklentinin bu github sorunu, bazı olası çözümlere bir ipucu veriyor:

https://github.com/dubreuia/intellij-plugin-save-actions/issues/63

Aslında Ctrl+ işaretini yeniden atamaya çalıştım Sve işe yaradı - tasarruf artık otomatik olarak yapılıyor.


Bunu kullandım, ancak Android Studio 1.5.1'e güncelledikten sonra artık bulamıyorum.
r1k0

1
Eklenti (şu andan itibaren) en son 10.02.2016 tarihinde güncellendi ve Compatibility This plugin works with Java 6+ and Intellij IDEA Community Edition after 131 (around version 13).IntelliJ Android Studio'nun hangi sürümüne dayandığını bilmiyorum diyor . Bunu kontrol edebilir misin?
Benjamin Peter

Yukarı çık!
Nick Grealy

Neredeyse benim için çalıştı. Ne yazık ki, "yeniden biçimlendirme kodu" yalnızca "Kod> Kodu yeniden biçimlendir" öğesinin yalnızca bir alt kümesini yapar (en azından Scala kodu için). Neden?
Thilo

Bunu denedim ama IntelliJ çok sık tasarruf ediyor. İthalat düzenlemek 2-3 tuş vuruşuna neden olur.
Ashley

443

Bu çözüm benim için daha iyi çalıştı:

  1. Makro oluştur (İçe Aktarma Organize Et, Kodu Biçimlendir, Tümünü Kaydet'i kullandım)
  2. Bir tuş vuruşu atayın (overrode Ctrl+ S)

Not: Organize edilmiş içe aktarmalar için ilk kez "Bu mesajı bir daha gösterme" kutusunu işaretlemeniz gerekir, ancak bundan sonra beklendiği gibi çalışır.

IntelliJ 10.0 için adım adım:

  1. Kod -> "İçe Aktarmaları Optimize Edin ...", bir iletişim kutusu görünürse, "Bu mesajı tekrar gösterme" yazan kutuyu işaretleyin ve ardından "Çalıştır" ı tıklayın.
  2. Araçlar -> "Makro Kaydını Başlat"
  3. Kod -> "İçe Aktarmayı Optimize Edin ..."
  4. Kod -> "Kodu Yeniden Biçimlendir ..."
  5. Dosya -> "Tümünü kaydet"
  6. Araçlar -> "Makro Kaydını Durdur"
  7. Makroyu adlandırın ("biçimlendirilmiş kaydet" gibi bir şey)
  8. Dosya -> Ayarlar -> Tuş Haritası'nda, "Ana Menü -> Araçlar ->" biçimlendirilmiş kaydet "bölümünde bulunan makronuzu seçin
  9. "Klavye Kısayolu Ekle" yi tıklayın, ardından istediğiniz tuş vuruşunu gerçekleştirin. Seçerseniz Ctrl+ Sbenim gibi bir önceki ne yapacağını sorar Ctrl+ Skısayol. Onu kaldır. İsterseniz daha sonra istediğiniz zaman yeniden atayabilirsiniz.
  10. Zevk almak!

IntelliJ 11 için değiştirin

adım 2. ile: Düzenle -> Makrolar -> "Makro Kaydını Başlat" ile
adım 6. ile: Düzenle -> Makrolar -> "Makro Kaydını Durdur"

Diğer her şey aynı kalır.

IntelliJ 12

8. Tercihler, Tuş Haritası ayarlarını içerir. Ekran görüntüsünde gösterildiği gibi içeriği filtrelemek için giriş alanını kullanın.

Intellij / Tercihler / Anahtar Haritası / Makrolar


4
IntelliJ 11: 1'de: Makro kaydını başlat: Düzenle -> Makrolar -> Makro kaydını başlat. 2: Yukarıdaki talimatları uygulayın. 3: Makro kaydını durdur: Düzenle -> Makrolar -> Makro kaydını durdur. Tuş Haritasında makro Ana Menü -> Araçlar klasörü yerine Makrolar klasörüne kaydedilir.
Markus K

3
Kodun nasıl yeniden biçimlendirildiğinden memnunsanız , projedeki tüm kodu yeniden biçimlendirmeyi ve tümünü kaydetmeyi seçerseniz bu yaklaşım çok daha iyi çalışır . Aksi takdirde, çok dosyalı düzenlemeler yaptığınızda, yalnızca etkin olan tüm değişiklikler kaydedilmeden önce yeniden biçimlendirilir.
Drew Noakes

86

Aşağıda Neil'in cevabı güncellendi.

IntelliJ 13 Adımları:

  1. Kod -> Kodu Yeniden Biçimlendir resim açıklamasını buraya girin
  2. Düzenle -> Makrolar -> Makro Kaydını Başlat
  3. Kod -> Kodu Yeniden Biçimlendir
  4. Dosya -> Tümünü kaydet
  5. Düzenle -> Makrolar -> Makro Kaydını Durdur
  6. Makroyu adlandırın ("biçimlendirilmiş kaydet" gibi bir şey)
  7. Dosya -> Ayarlar -> Tuş Haritası
  8. Makroyu sağ tıklayın. Klavye Kısayolu Ekle. Klavye kısayolunu Control + S olarak ayarlayın. resim açıklamasını buraya girin
  9. IntelliJ kısayol tuşu çakışması konusunda sizi bilgilendirecektir. Diğer atamaları kaldırmak için "kaldır" ı seçin.

Ancak bu, "Kaydet" işlemini kaldırır. Posterin gördüğü şey, Eclipse'de bir dosya kaydedildiğinde kodu biçimlendirme ve içe aktarmayı otomatik olarak düzenleme seçeneğimiz var. Bu seçenek (sanırım) IntelliJ fikrinde yoktur. Bu, kayıt anahtarının yeniden biçimlendirme anahtarına bağlanmasını içeren bir çalışmadır.
Ganesh Krishnan

3
Katılmıyorum, @GaneshKrishnan. Bu geçici çözüm, "kaydetme anahtarını" "yeniden biçimlendirme anahtarına" bağlamaz. Bunu, OP tarafından istenen ve Eclipse'de uygulanan, ancak bir onay kutusuyla tetiklenen "yeniden biçimlendiren ve kaydeden" bir makroya bağlar .
dbm

1
Ben belki adım 1 için Reformat Dosya İletişim için varsayılanları ayarlamak için "Kod -> Göster Reformat İletişim Kutusu" demek olduğunu düşünüyorum (böylece adım 3 - Kod Yeniden Biçimlendirme için doğru ayarlanır)?
studgeek

61

Check-in sırasında otomatik olarak temizlemek için ayarladım, bu genellikle benim için yeterince iyi. Bir şey çok çirkinse, kısayola ( Ctrl- Alt- L, Return) çarpacağım . Ve ben hiç kullanmadım rağmen yapıştırılan kodu otomatik biçimlendirme için bir seçenek var görüyorum.


12
Biçimlendirmek için Ctrl-Shift-F tuşlarını da kullanabilirsiniz. Benim için çok daha iyi çalışıyor, çünkü Ctrl-Alt-L Ubuntu'daki kilit ekranı komutu.
Jason McVetta

22
Ctrl + Shift + F Yolda Bul'dur .
yığın

5
Check-in sırasında bir şeyi nasıl kurarsınız?
soymak

2
Eğer intelliJ kullanarak kontrol etmiyorsanız bu işe yarar yani komut satırı aracını kullanarak kontrol eğer işe yaramaz düşünüyorum.

Bu soruya nasıl cevap veriyor?
Ben

19

Ctrl+ Alt+ Lbiçim dosyasıdır (aşağıdaki ikisini içerir)

Ctrl+ Alt+ O, içe aktarmaları optimize eder

Ctrl+ Alt+ Ibelirli bir satırdaki girintiyi düzeltir

İşime başlamadan önce genellikle birkaç kez Ctrl+ Alt+ koşarım L. Temizleme / yeniden biçimlendirmeyi otomatik olarak komutumda yapmayı tercih ederim.


Mac için Ctrl'yi Cmd ile değiştirin
Gerard

12
Ctrl + Alt + LKilit Oturumunda olduğu gibi Linux'ta da dikkatli olun . İşlevlerden birini yeniden eşleştirmeniz gerekir.
bölünmez

18

InteliJ Idea Community 2018.2'niz varsa adımlar aşağıdaki gibidir:

  1. Üst menüde şunu tıklayın: Düzenle> Makrolar> Makro Kayıtlarını Başlat (ekranınızın sağ alt köşesinde makroların kaydedildiğini onaylayan bir pencere göreceksiniz)
  2. Üst menüde şunu tıklayın: Kod> Kodu Yeniden Biçimlendir (sağ alt köşede seçeneğin seçili olduğunu göreceksiniz)
  3. Üst menüde şunları tıklayın: Kod> İçe Aktarmayı Optimize Et (sağ alt köşede seçeneğin seçili olduğunu göreceksiniz)
  4. Üst menüde şunları tıklayın: Dosya> Tümünü Kaydet
  5. Üst menüde şunları tıklayın: Düzenle> Makrolar> Makro Kaydını Durdur
  6. Makroyu adlandırın: "Kodu Biçimlendir, İçe Aktarmayı Organize Et, Kaydet"
  7. Üst menüde saat: Dosya> Ayarlar. Ayarlar pencerelerinde Tuş eşlemini tıklayın
  8. Sağdaki arama kutusunda "kaydet" kelimesini ararsınız. Tümünü Kaydet'i (Ctrl + S) bulacaksınız. Üzerine sağ tıklayın ve "Ctrl + S'yi Kaldır" ı seçin
  9. Arama metninizi kutudan kaldırın, Tümünü Daralt düğmesine basın (sol üstteki ikinci düğme)
  10. Makrolara gidin, makrolarınızı genişletmek için oka basın, kayıtlı makronuzu bulun ve sağ tıklayın. Klavye Kısayolu Ekle'yi seçin ve Ctrl + S tuşlarına basın ve Tamam'a basın.

IDE'nizi yeniden başlatın ve deneyin.

Ne diyeceğini biliyorum, benden önceki çocuklar da aynı şeyi yazdı. Ama bu yazının üstündeki adımları kullanarak kafam karıştı ve IDE'nin en son sürümüne sahip insanlar için aptalca bir sürüm yazmak istedim.


13

Flutter'da geliştiriyorsanız, 5/1/2018 tarihinden itibaren kaydetme sırasında kodu biçimlendirmenize olanak tanıyan yeni bir deneme seçeneği vardır. Ayarlar


9

Ben - için varsayılan bağlama yerine Reformat code...eylemi yeniden bağlayarak yara .CtrlSSave All

İlk başta çılgınca gelebilir, ancak IntelliJ hemen hemen her eylemden tasarruf ediyor gibi görünüyor: bir editör sekmesini kapatırken bile testleri çalıştırmak, projeyi oluşturmak. Vurma alışkanlığım var Ctrl- Soldukça sık, bu aslında benim için oldukça iyi çalışıyor. Yeniden biçimlendirme için varsayılan ciltlemeden yazmak kesinlikle daha kolaydır.


5

IntellIJ 14 && 15: Değişiklikleri Yürüt iletişim kutusunda kodu kontrol ederken, Kodu yeniden biçimlendir onay kutusunu işaretleyin, ardından IntelliJ kontrol ettiğiniz tüm kodu yeniden biçimlendirir.

Kaynak: www.udemy.com/intellij-idea-secrets-double-your-coding-speed-in-2-hours



4
Bir kaynağın aşırı tanıtımının topluluk tarafından spam olarak yorumlanabileceğini unutmayın. İyi, alakalı cevaplar göndermelisiniz ve eğer bu kurstan bir veya iki tanesi söz konusuysa, bu iyidir - ancak her cevaba gönderiyorsanız, işaretlenecek ve silinecektir.
ArtOfCode

2

IntelliJ'de böyle bir şey olduğunu düşündüm, ama bulamıyorum. Kaydetme sırasında meydana gelen tek temizlik, satırların uçlarındaki beyaz boşluğun kaldırılmasıdır. Bu davranışı bir noktada belirtmem gerektiğini düşündüm, ancak bu noktada hiçbir şey görmüyorum.



0

Sürüm 2020.1'den bu yana, dosyalar için Run on save özelliğini doğrudan Prettier eklentisinin Tercihleri'nde etkinleştirebilirsiniz :

Prettier eklentisi tercihleri

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.