Boşluktan Sekmeye Dönüştürücü

Metni yapıştırın ve baştaki boşlukları sekmeye çevirmek için sekme genişliğini ayarlayın.

Nasıl hesaplanır?

Araç her satırı ayrı ele alır ve yalnızca satırın en başındaki boşluklara bakar. Sekme genişliği w iken baştaki boşluk sayısını n olarak sayar, sonra sekme = ⌊n ÷ w⌋ adet sekme karakteri yazar, ardından artan n mod w boşluğu ve satırın geri kalanını olduğu gibi ekler. İlk boşluk olmayan karakterden sonraki boşluklara hiç dokunulmaz. Zaten sekmeyle başlayan bir satırda sayım o sekmede durur, yani ondan sonraki boşluklar boşluk olarak kalır. Genişlik tam sayıya yuvarlanır ve en az 1 olmalıdır. Sonuç, eklenen sekme sayısını ve okunan satır sayısını bildirir; sondaki satır sonu bir ek (boş) satır sayılır. Çıktıdaki satır sonları her zaman düz satır sonudur.

Örnek hesaplama

Sekme genişliği 4 olan dört satır alalım: girintisiz if ready:, 4 boşlukla girintili start(), 8 boşlukla girintili loop() ve 6 boşlukla girintili stop(). Birinci satırda 0 sekme olur. İkinci satırda 4 ÷ 4 = 1 sekme olur. Üçüncü satırda 8 ÷ 4 = 2 sekme olur. Dördüncü satırda 6 ÷ 4 = 1 sekme ve artan 2 boşluk vardır; satır bir sekme ve iki boşlukla başlar. Toplamda 4 satırda 4 sekme eklenmiş olur.

Bu örneği dene →

Sık yapılan hatalar

  • Dosyaya uymayan bir genişlik seçmek. Kod 2 boşlukla girintilendiyse ve 4 ile dönüştürürseniz 2 boşluklu satır hiç sekme almaz, 6 boşluklu satır bir sekme ve 2 boşluk alır.
  • Artan boşlukların kaybolacağını sanmak. Genişliğin katı olmayan girintilerde fazla boşluklar sekmelerin arkasında kalır ve hizasız görünebilir; önce bu satırları düzeltin.
  • Satır ortasındaki boşlukların değişeceğini beklemek. Kelimeler veya sütunlar arasındaki hizalama boşluklarına bilerek dokunulmaz, yalnızca satır başları dönüştürülür.
  • Zaten sekme ve boşluk karışık bir dosyada çalıştırmak. Satır başındaki sekmeden sonra gelen boşluklar dönüştürülmez, bu satırlar karışık kalır.
  • YAML gibi boşluk gerektiren biçimlerde ya da girintinin kod bloğu sayıldığı Markdown'da kullanmak. Sekmeler bunları bozabilir.

Bu hesaplama hakkında

Kaynak kod ve yapılandırma dosyaları bazen girinti biçimlerini karıştırır — bir bölümde baştaki boşluklar, başka bir bölümde sekme karakterleri — ve bu, hizalamanın bozulmasına, diff çıktısında gürültüye ya da Python gibi girintinin sözdizimsel olarak anlamlı olduğu dillerde hatalara yol açabilir. Baştaki boşlukları tutarlı bir genişlikte sekmeye dönüştürmek, girintiyi tekrar tekdüze hale getirmek için standart bir temizlik adımıdır.

Bu araç her satırı tarar, baştaki boşluk dizisini ölçer ve seçtiğiniz sekme genişliğine uyan her bloğu satır satır gerçek bir sekme karakteriyle değiştirir. Bir kod tabanının biçimlendirmesini standartlaştıran, farklı girinti kurallarına sahip editörler veya ekipler arasında bir projeyi taşıyan ya da boşluk yerine sekme bekleyen bir linter veya biçimlendirici için bir dosya hazırlayan geliştiriciler için rutin bir araçtır.

Bu faydalı oldu mu?

En fazla 3 tepki seçebilirsiniz.

Yorumlar

  • İlk yorumu siz yazın.

Popüler hesaplayıcılar

Tüm Hesaplayıcılar