Visual Studio Kodunda girinti nasıl değiştirilir?


344

Her daktilo dosyası için visual studio kodu 8 boşluk otomatik girinti kullanır. Bu benim zevkime göre biraz fazla ama nerede değiştireceğimi bulamıyorum.

Belki bir ayar olarak mevcuttur, ancak girintiyle ilgili hiçbir şey bulamadığım için farklı bir ad altında.

GÜNCELLEME

Şu anda Prettier kod biçimlendiricisini kullanıyorum ve kaydetme sırasında otomatik biçimlendirme ile tüm biçimlendirme sorunlarını çözüyor (sözdizimi hatası yoksa)

Yanıtlar:


112

Bunu global Userdüzeyde veya Workspaceseviyede değiştirebilirsiniz.

Ayarları açın: Kısayolu kullanarak ctrl + ,veya aşağıda gösterildiği gibi File>> Preferencesöğesine tıklayın Settings.

VS Kodu menüsündeki ayarlar

Ardından, aşağıdaki 2 değişikliği yapın: ( tabSizearama çubuğuna yazın)

  1. Onay kutusunun işaretini kaldırın. Detect Indentation
  2. Sekme boyutunu 2/4 olarak değiştirin (2'nin JS için doğru olduğunu düşünmeme rağmen :))

resim açıklamasını buraya girin


1
Lütfen girinti için 4 boşluk kullanın.
Bohdan Kuts

3
@ BohdanKuts ha ha, bu sonsuz bir tartışma olacak
Xin

Evet :) Bunu araştırdım ve neden 2 boşluk haline geldiğini buldum. Ve bana neden modası geçmiş gibi görünüyor, bu yüzden 4 boşluk kullanmanızı tavsiye edeceğim.
Bohdan Kuts

Bu sübjektiftir ve gerçek bir avantajı yoktur, js, html ve css gibi bazı dosya türleri için 2 boşluk ve sadece okunabilirlik için kod için 3 boşluk tutuyorum. 4 boşluklu HTML ve XML'de çok yakında sağa kaydırmanız gerekir.
Pablo Pazos

574

Sağ alt köşedeki araç çubuğunda aşağıdakine benzer bir öğe göreceksiniz: resim açıklamasını buraya girin Üzerine tıkladıktan sonra boşluk veya sekme kullanarak girinti yapma seçeneği elde edeceksiniz. Girinti türünüzü seçtikten sonra, bir girintinin büyüklüğünü değiştirme seçeneğiniz olacaktır. Yukarıdaki örnekte girinti, girinti başına 4 boşluk karakterine ayarlanır. Girinti karakteriniz olarak sekme seçilirse , Boşluklar yerine Sekme Boyutu'nu görürsünüz

Bunun tüm dosyalar için geçerli olmasını istiyorsanız ve dosya tabanlı değil, Kullanıcı Ayarları veya Çalışma Alanı Ayarları'ndakiEditor: Tab Size ve Editor: Insert Spacesayarlarını ihtiyaçlarınıza bağlı olarak geçersiz kılın.

Düzenle 1

Kullanıcı veya çalışma alanı ayarlarınıza ulaşmak için Tercihler -> Ayarlar'a gidin . Gereksinimlerinize bağlı olarak Kullanıcı veya Çalışma Alanı sekmesinde olduğunuzu doğrulayın ve ayarları bulmak için arama çubuğunu kullanın. Editor: Detect IndentationBu ayar, ayarladığınız şeyi Editor: Insert Spacesve Editor: Tab Sizene zaman etkinleştirileceğini geçersiz kılacağı için de devre dışı bırakmak isteyebilirsiniz


Resim bağlantısı bozuk.

34
Değişen editor.tabSpacesyok değil tüm dosyalarda aralığını değiştirmek. Yalnızca ileride oluşturulacak dosyalar için değiştirir. Tüm dosyaları tek bir işlemle düzeltmek için hala bir çözüm yok.
Jacob Stamm

3
vay. zihin karmaşası. bazen işler sadece düz bir şekilde saklanıyor
pingo

4
Bu süper sezgisel değil. Boşlukları kullanmak için zaten girintiler ayarlanmış. Boşluk sayısını ayarlamak için ikinci, gizli bir menüye ulaşmak için neden boşluk seçeneğine tıklamam gerekiyor? Kullandığım diğer her editör, durum çubuğundaki girinti ayrıntılarına tek bir tıklamayla bir dizi boşluk seçeneği var. İstediğim menü değiştirmeye çalışmıyorum bir seçeneğin arkasında gizlendiğinden VS Kodunda Stack Overflow üzerinde bu bakmak gerekir.
ian.pvd

1
yeni bir dosya oluşturduğumda her zaman varsayılan olarak 4 boşluğa geri dönüyor gibi görünüyor?!?!
oldboy

143

Girintiyi programlama diline göre değiştirmek için :

  1. Komut Paletini ( CtrlShiftP| macOS:P )
  2. Tercihler: Dile özgü ayarları yapılandırın ... (komut kimliği:workbench.action.configureLanguageBasedSettings )
  3. Programlama dilini seçin (örneğin TypeScript)
  4. Bu kodu ekleyin:

    "[typescript]": {
        "editor.tabSize": 2
    }
    

Ayrıca bakınız: VS Kod Belgeleri


Komut kimliği nasıl (nerede) kullanılır? Dosya Tercihleri ​​altında "Dile Özel Ayarları Yapılandır" ı görmüyorum.
Alan Baljeu

@AlanBaljeu, klavye kısayolları, uzantılar, vb. İçin komut kimliğini kullanabilirsiniz. Böylece, Dosya > Tercihler > Klavye Kısayolları'na gidebilir , kimliği girişe yapıştırabilir ve örneğin Ctrl + K Ctrl + L komutuna atayabilirsiniz.
Martin Schneider

55

editor.detectIndentationElliot-J'nin cevabına ek olarak , değerini false olarak da ayarlamak isteyebilirsiniz .

Bir dosyanın farklı bir sekmesi veya boşluk girintisi düzeni olduğunu tespit ederse, VSCode dosya editor.tabSizeve editor.insertSpacesayarlarınızın üzerine yazar . Projenize varolan dosyaları eklerseniz veya Açısal Klip gibi kod üreteçlerini kullanarak dosya eklerseniz bu sorunla karşılaşabilirsiniz. Yukarıdaki ayar VSCode'un bunu yapmasını engeller.


44

Kod Biçimlendirme Kısayolu:

Windows'ta VSCode - Üst Karakter + Alt + F

MacOS'ta VSCode - Shift + Option + F

Ubuntu'da VSCode - Ctrl + Üst Karakter + I

Gerekirse tercih ayarını kullanarak da bu kısayolu özelleştirebilirsiniz.

klavye ile sütun seçimi Ctrl + Shift + Alt + Arrow


1
Shift + Alt + Fdosyamdaki tüm girintileri 8 boşluktan varsayılan 4 boşluk olarak değiştirdi. Tam aradığım şey :)
Harry12345

24

Benim durumumda " VS Kodu için EditorConfig " uzantısı VSCode ayarlarını geçersiz kılıyor. Yüklediyseniz, projenin kök klasöründeki .editorconfig dosyasını kontrol edin.

İşte bir örnek yapılandırma. "İndent_size" bir sekme için boşluk sayısını ayarlar.

# editorconfig.org
root = true

[*]
indent_style = space
indent_size = 4
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true

[*.md]
trim_trailing_whitespace = false

7

"VS Kodunda girintiyi değiştir" ibaresi olanlar için resimlerle basitleştirilmiş açıklama

1. Adım: Tercihler> Ayarlar'ı tıklayın

resim açıklamasını buraya girin

Adım 2: Aradığınız ayar "Girintiyi Algıla" dır, yazmaya başlayın. "Editör: Sekme Boyutu" nu tıklayın

resim açıklamasını buraya girin

Adım 3: "Düzenleyici: Sekme Boyutu" na gidin ve 2 (veya ihtiyacınız olanı) yazın.

resim açıklamasını buraya girin



Değişiklikler otomatik olarak kaydedilir

resim açıklamasını buraya girin

Değişikliklerime örnek

resim açıklamasını buraya girin


6

Varolan tüm dosyaları ve yeni dosyaları boşluk tanıma olarak 2'ye ayarlamak için sadece settingns.json (json kök dizinine) koyun:

"[typescript]": {
        "editor.defaultFormatter": "vscode.typescript-language-features",
        "editor.tabSize": 2,
        "editor.insertSpaces": true,
        "editor.detectIndentation":false
 }

yapılandırmanın dil türünü ekleyebilirsiniz:

"[javascript]": {
    "editor.tabSize": 2,
    "editor.insertSpaces": true,
    "editor.detectIndentation":false
} 

Bu gün boşluk ve diğer uzun satırların yanı sıra başka bir şey hizalama ilgilenir gibi prettier.js ve js eklentisi kullanın.
HMR

1
Teşekkürler, harika cevap, benim için en iyi yol.
Swetabja Hazra

5

VS Kodundaki tüm dosyalarda 4 boşluk girintisi nasıl 2 boşluğa dönüştürülür

  • Dosya aramayı aç
  • Normal İfadeleri Aç
  • ( {2})(?: {2})(\b|(?!=[,'";\.:\*\\\/\{\}\[\]\(\)]))Arama alanına şunu girin:
  • $1Değiştir alanına girin:

VS Kodundaki tüm dosyalarda 2 boşluk girintisi 4 boşluğa nasıl dönüştürülür

  • Dosya aramayı aç
  • Normal İfadeleri Aç
  • ( {2})(\b|(?!=[,'";\.:\\*\\\/{\}\[\]\(\)]))Arama alanına şunu girin:
  • $1$1Değiştir alanına girin:

NOT: Önce PERL Regex'i açmanız gerekir. Bu nasıl:

  • Ayarları açın ve JSON dosyasına gidin
  • JSON dosyasına aşağıdakileri ekleyin "search.usePCRE2": true

Umarım birisi bunu görür.


1
Özellikle VS Kodu için, 4 ila 2 boşluğu dönüştürmek için bir uzantı da vardır .
tanius

4

Sorun: Kabul edilen cevap, mevcut belgedeki girintiyi düzeltmiyor.

Çözüm: Format DocumentBelgeyi geçerli (yeni) ayarlara göre yeniden işlemek için çalıştırın .

Sorun: Projelerimdeki HTML dokümanları, "HTML" değil "Django HTML" türündedir ve biçimlendirici yoktur.

Çözüm: Bunları "HTML" sözdizimine geçirin, biçimlendirin, ardından "Django HTML" ye geri dönün.

Sorun: HTML formatlayıcı, Django şablon etiketlerinin nasıl kullanılacağını bilmiyor ve dikkatle uygulanmış yuvalamamın çoğunu geri alıyor.

Çözüm: Girintiyi kesin olarak gerçekleştiren Indent 4-2 uzantısını geçerli dil sözdizimine bakmadan yükleyin (bu durumda istediğim budur).


2

Girintimi değiştirmek istedim Mevcut HTML 4 boşluktan 2 boşluğa .

Durum çubuğundaki 'Spaces: 4' düğmesine tıkladım ve bir sonraki iletişim kutusunda ikiye değiştirdim.

'Vim' uzantısını kullanıyorum. Vim olmadan yeniden girintiyi nasıl yapacağım

Mevcut dosyamı yeniden girintilemek için şunu kullandım:

gg

=

G

0

Ekleniyor: evet, boşluk ayarlarını yapılandırmak için sağ alt kullanıcı arayüzünü kullanabilirsiniz. Ancak, yeni boşlukla biçimlendirilmemiş mevcut bir kodunuz varsa, dosya içinde herhangi bir yeri sağ tıklayıp Belgeyi Biçimlendir'i tıklayabilirsiniz . Ben bu konuyu tökezleyene kadar bunu çözmem için biraz zaman aldı .

Belge Biçimi menüsü

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.