Beyaz boşluk karakteri

Programlamada, **beyaz boşluk** tipografide yatay veya dikey alanı temsil eden herhangi bir karakter veya karakter dizisidir. Oluşturulduğunda, bir boşluk karakteri görünür bir işarete karşılık gelmez, ancak genellikle bir sayfadaki bir alanı kaplar. Örneğin, ortak boşluk sembolü  (ayrıca ASCII 32), Batı'da kelime bölücü olarak kullanılan betik metinde boş bir noktalama işareti temsil eder.

## Genel bakış

Birçok klavye düzeninde,  kullanılarak yatay bir boşluk karakteri girilebilir. Yatay boşluk da  tuşunun kullanılmasıyla birçok klavyeye girilebilir, ancak boşluğun uzunluğu değişebilir. Dikey boşluk, kodlanma biçimine göre biraz daha çeşitlidir, ancak yazarken en belirgin olanı, uygulama programlarında 'yeni satır' kod dizisi oluşturan  sonucudur. Eski klavyeler bunun yerine  diyebilir, daktilo klavyesini sol durağa elektromekanik bir dönüş sağlayan 'Carriage-Return' anlamına gelir (CR kodunda ASCII-hex &amp;0D;) ve satır yayın veya sonraki satıra geçme (LF kodunda ASCII-hex &amp;0A;); bazı uygulamalarda, bunlar bağımsız olarak monitörlere metin hücresi tabanlı ekranlar çizmek veya traktör kılavuzlu yazıcılara yazdırmak için kullanılıyordu; bunlar, metin tabanlı çıkış cihazlarının daha karmaşık çıktılar elde etmesini sağlayan ters hareketler/konumlandırma kod dizileri de içerebilir. Birçok erken bilgisayar oyunu bir ekran çizmek için bu kodları kullandı (örneğin Kroz) ve kelime işlemci yazılımı bunu kalın, altı çizili ve üstü çizili gibi basılı efektler üretmek için kullanacaktır.

"Beyaz boşluk" terimi, sıradan kağıt üzerinde ortaya çıkan görünüşe dayanır. Bununla birlikte, bir uygulamanın içinde kodlanırlar, boşluk diğer karakter kodlarıyla aynı şekilde işlenebilir ve programlar, içinde bulundukları bağlam için tanımlandığı şekilde uygun eylemi yapabilir.

## Tanım ve belirsizlik
En yaygın boşluk karakterleri boşluk tuşu veya tab tuşu aracılığıyla yazılabilir. Bağlama bağlı olarak, dönüş veya enter tuşu tarafından oluşturulan satır sonu, boşluk olarak da düşünülebilir.

### Unicode
Aşağıdaki tabloda Unicode Karakter Veritabanındaki boşluk ("WSpace = Y", "WS") karakterleri olarak tanımlanan yirmi beş karakter listelenmektedir. On yedi çift yönlü yazma algoritmasıyla tutarlı bir boşluk alanı ("Çift Yönlü Karakter Türü = WS") kullanır ve "Bidi-WS" karakterleri olarak bilinir. Kalan karakterler de kullanılabilir, ancak bu "Bidi" türünde değildir.

*Not: Aşağıdaki tabloyu görüntülemek için kullanılan tarayıcıya ve yazı tiplerine bağlı olarak, tüm boşluklar düzgün görüntülenmeyebilir.*

#### Yedekler
Unicode ayrıca boşlukları temsil etmek için kullanılabilecek bazı görünür karakterler sağlar:



; Boşluk olmayan boşluklar
* Braille Patterns Unicode bloğu, hiçbir nokta yükseltilmemiş bir Braille alfabesi deseni olan  içerir. Bazı yazı tipleri karakteri sabit genişlikli bir boşluk olarak görüntüler, ancak Unicode standardı açıkça boşluk olarak hareket etmediğini belirtir.

; Tam alan
* Cambridge Z88, özel bir "tam alan" (kod noktası 160 aka 0xA0) (anahtar kısayoluyla çağrılabilir ,) işletim sisteminin ekran sürücüsü tarafından "…" olarak gösterilir. Bu nedenle BBC BASIC ile bağlantılı olarak "nokta boşluğu" olarak da bilinir.
*Kod noktası 224 (0xE0) altında, bilgisayar ayrıca üç karakter uzunluğunda özel bir SPACE sembolü de sağladı "SPC" (Unicode'un tek hücreli geniş U + 2420'sine benzer).

## Beyaz boşluk ve dijital tipografi

### Ekran üstü görüntü
Metin düzenleyici, kelime işlemcileri ve masaüstü yayıncılık ekrandaki boşlukları nasıl temsil ettikleri ve satır veya sütun genişliğinden daha uzun satırların sonundaki boşlukları nasıl temsil ettikleri konusunda farklılık gösterir. Bazı durumlarda, boşluklar yalnızca boşluk olarak gösterilir; diğer durumlarda, bir yorumcu veya başka sembollerle temsil edilebilirler. Boşluk üretmek için birçok farklı karakter (aşağıda açıklanmıştır) kullanılabilir ve karakter olmayan işlevler (kenar boşlukları ve sekme ayarları gibi) boşlukları da etkileyebilir.

### Değişken genişlikli genel amaçlı alan
Bilgisayarda karakter kodlaması, genişliği yazı tipinin tasarımına göre değişecek normal bir **genel amaçlı alan** (Unicode karakter U+0020) vardır. Tipik değerler 1/5 em ile 1/3 em arasındadır (dijital tipografide em, yazı tipinin nominal boyutuna eşittir, bu nedenle 10 puntoluk bir yazı tipi için boşluk muhtemelen 2 ile 3.3 nokta arasında olacaktır). Gelişmiş yazı tipleri kalın, italik ve küçük harfli yüzler için farklı boyutlarda boşluklara sahip olabilir ve çoğu zaman besteciler metnin boyutuna ve önemine bağlı olarak boşluğun genişliğini manüel olarak ayarlarlar.

Bu genel amaçlı boşluğa ek olarak, belirli bir genişlikte bir boşluğu kodlamak mümkündür. Tam bir liste için aşağıdaki tabloya bakın.

### Tire etrafında saç boşlukları
Uzun çizgi parantez bölücüler olarak kullanılır ve sözcük birleştiriciler olarak kullanıldığında en tireler genellikle metinle sürekli olarak ayarlanır. Ancak, böyle bir çizgi isteğe bağlı olarak U+200A veya **ince alan**, U+2009 bir *saç alanı* ile çevrilebilir. Saç boşluğu sayısal karakter referansları kullanılarak HTML `&amp;#x200A;` eyav `&amp;#8202;` olarak yazılabilir veya adlandırılmış varlık `&amp;hairsp;`, ancak henüz tarayıcılarda evrensel olarak desteklenmemektedir,  İnce boşluğa `&amp;thinsp;` varlık denir ve sayısal referanslar `&amp;#x2009;` veya `&amp;#8201;`. Bu boşluklar normal boşluktan çok daha incedir (tek aralıklı (orantılı olmayan) bir yazı tipi hariç), saç alanı ikisinin daha incedir.

### Miktarların değerlerini biçimlendirme
Uluslararası Birimler Sistemi (SI), bir sayı ile ölçü birimi arasına ve bileşik birimlerdeki birimler arasına boşluk girilmesini öngörmektedir. Binlerce ayırıcı olarak ince bir alan kullanılmalıdır.

## Bilgi işlem uygulamaları
### Programlama dilleri

Programlama dili sözdiziminde, sözcüksel analizi açıkça ayırmak için boşluklar sıklıkla kullanılır. Çoğu dilde, birden çok boşluk karakteri tek bir boşluk karakteriyle aynı şekilde ele alınır (alıntılanan dizelerin dışında); bu tür dillere "serbest biçimli" denir. Haskell, occam, ABC ve Python dahil olmak üzere birkaç dilde, beyaz alan ve girinti sözdizimsel amaçlarla kullanılır. Beyaz boşluk adlı hiciv dilinde, boşluk karakterleri programlama için tek geçerli karakterken diğer karakterler yok sayılır.

Beyaz alanın aşırı kullanımı, özellikle de satırların sonundaki * arka boşluk * bir sıkıntı olarak kabul edilir. Ancak boşlukların doğru kullanımı kodun okunmasını kolaylaştırabilir ve grupla ilgili mantığa yardımcı olabilir.

Çoğu dil ASCII karakterlerini boşluk veya bazı durumlarda Unicode yeni satırları olarak tanır, ancak yukarıda listelenen karakterlerin çoğunu tanımaz. C dili boşluk karakterlerini "boşluk, yatay sekme, yeni satır, dikey sekme ve form besleme" olarak tanımlar. HTTP ağ protokolü, protokolün farklı bölümlerinde farklı türde boşlukların kullanılmasını gerektirir, örneğin: yalnızca status satırındaki boşluk karakteri, satır sonundaki CRLF ve üstbilgi değerlerinde "doğrusal boşluk".

### Komut satırı kullanıcı arabirimleri
Komut satırı tarafından işlenen komutlarda, örneğin komut dosyalarında ve girilen boşluk karakteri, iki olası işlevi olduğu için sorunlara neden olabilir: bir komutun veya parametrenin bir parçası olarak veya bir parametre veya ad ayırıcı olarak. Belirsizlik, gömülü boşlukları yasaklayarak veya tırnak işaretleri arasında gömülü boşluklar içeren bir ad ekleyerek önlenebilir.

### İşaretleme dilleri
SGML gibi bazı biçimlendirme dilleri, boşlukları yazılı olarak korur.

XML ve HTML gibi web biçimlendirme dilleri, programcıların rahatlığı için boşluk karakterleri de dahil olmak üzere boşluk karakterlerini özel olarak ele alır. Bu işaretleme dili görüntü zamanı işlemcileriyle uyumlu olarak okunan bir veya daha fazla boşluk karakteri, anlamsal bağlamlarına bağlı olarak 0 veya 1 boşluğa daraltılır. Örneğin, metin içindeki çift (veya daha fazla) boşluk tek bir boşluğa daraltılır ve "`=`" öğesinin her iki tarafında bir öznitelik adını değerinden ayıran boşlukların, belgenin yorumlanması. Öğe bitiş etiketleri arka boşluklar içerebilir ve XML'deki boş öğe etiketleri `/>`" öncesi boşluklar içerebilir. Bu dillerde, gereksiz boşluk dosya boyutunu artırır ve bu nedenle ağ aktarımlarını yavaşlatabilir. Öte yandan, gereksiz boşluk koddaki yorumlara benzer, ancak koddaki yorumlardan daha az belirgin olan kodu dikkat çekici bir şekilde işaretleyebilir. Bu, kesme, kopyalama ve yapıştırma tarafından işlenmiş bir ihlal lisansının veya telif hakkının kanıtlanması istenebilir.

XML öznitelik değerlerinde, boşluk ayrıştırıcı tarafından okunduğunda boşluk karakterleri dizileri tek bir boşluk olarak ele alınır. XML öğesi içeriğindeki boşluk bu şekilde ayrıştırıcı tarafından değiştirilmez, ancak ayrıştırıcıdan bilgi alan bir uygulama öğe içeriğine benzer kurallar uygulamayı seçebilir. XML belgesi yazarı, ayrıştırıcıya aşağı akış uygulamasının o öğenin içeriğindeki boşlukları değiştirmesini engellemesini bildirmek için bir öğedeki `xml:space="preserve"` özniteliğini kullanabilir.

Çoğu HTML öğesinde, bir boşluk alanı dizisi, normalde kelimeler arasında bu tür boşluklar ekleyen bir dilde metin oluşturulurken tek bir boşluk karakteri olarak ortaya çıkabilen tek bir *sözcükler arası ayırıcı* olarak ele alınır. Uyumlu HTML oluşturucuların, `pre` etiketi ve CSS uygulamak için kullanıldığı herhangi bir öğe gibi önceden belirlenmiş birkaç öğe içinde daha boşluklu bir boşluk uygulaması uygulamak gerekir. `pre` benzeri boşluk işleme. Bu tür elemanlarda, boşluk karakterleri sözcükler arası ayırıcılara "daraltılmaz".

Hem XML hem de HTML'de, ayrılmaz alan karakteri, diğer "standart olmayan" boşluklarla birlikte, katlanabilir "boşluk" olarak değerlendirilmez, bu nedenle yukarıdaki kurallara tabi değildir.

### File names
Bu tür kullanım, gömülü alan kodlarıyla karıştırılan işletim sistemleri ve uygulamalar için yazılan çok kelimeli dosya adlarına benzer, bu dosya adları bunun yerine as_in_this_phrase sözcük ayırıcısı olarak alt çizgi (_) kullanır.

Böyle bir diğer sembol  idi. Bu, kodlama formları üzerine yazarken bilgisayar programlamanın ilk yıllarında kullanıldı. Keypunch operatörleri sembolü hemen "açık alan" olarak tanıdı. BCDIC'de kullanılmıştır, EBCDIC, ve ASCII-1963.

## Ayrıca bakınız

* Düzenli ifade
* Boşluk tuşu

## Kaynakça

## Dış bağlantılar
* Unicode Karakter Veritabanı Özellik Listesi