Mac Harf Ayrılma Sorununu Düzeltin
(Unicode Normalizasyonu)
Tarayıcılar ve sistemler arası dosya ismi uyuşmazlıklarını ve
harf ayrılmalarını anında çözer.
🔍 Detaylı Analiz (Kod Noktaları / Code Points)
Hakkında
Unicode metin normalleştirmesini (NFC, NFD, NFKC, NFKD) gerçek zamanlı olarak gerçekleştiren güçlü ve ücretsiz çevrimiçi bir API aracıdır. Farklı platformlardaki (macOS vs Windows) karakter kodlarını birleştirmek ve veritabanı aramalarında tutarsızlıkları gidermek için gereken işlemleri anında sağlar.
Metin işlemede sıkça karşılaşılan harf ayrılmaları (Özellikle Türkçe karakterlerdeki sedil ve inceltme işaretlerinin ana harften kopması) ve tam/yarım genişlik (full-width/half-width) uyuşmazlıkları gibi vakaları milisaniyeler içinde düzeltir. Ayrıca karakterlerin kod noktalarını (Code Points) ve Unicode varyasyonlarını detaylıca listeler.
Tüm işlemler yalnızca tarayıcınızın kaynaklarında tamamlanır, herhangi bir the-server bağlantısı veya API isteği gönderilmez.
Nasıl Kullanılır
Metni Girişi Yapın
Hataya sebep olan ya da kontrol etmek istediğiniz dosyayı/metni 'Normalize edilecek metni yapıştırın' alanına aktarın.
Formatı Tercih Edin
Projebize bağlı olarak normalleştirme biçimini seçin: Standart bir metinse NFC, Mac uyumu arıyorsanız NFD, veritabanına ekliyorsanız NFKC'dir.
Sonucu Kopyalayın
Saniyeler içinde oluşan temiz kodu/metni ve kod noktası analizini (Code Point diff) doğruladıktan sonra kopyalama butonunu kullanabilirsiniz.
Sözlük
- Unicode Standardı
- Dünya üzerindeki tüm dillerdeki karakterleri (harf, sembol, emoji vs.) benzersiz sayısal karşılıklara dönüştüren, standartlaştırılmış evrensel kodlama sistemidir.
- Dize Normalleştirmesi (String Normalization)
- Görsel olarak tamamen aynı görünen ama arka planda farklı bit/bayt kombinasyonlarıyla (örn: tekli ü vs u + ¨) işlenen metinleri, tutarlı tek bir mimariye oturtma sürecidir.
- Kavramsallaştırılmış (Birleşik) Karakterler
- Türkçedeki 'ç', 'ş', 'ğ' gibi altı ve üstünde noktalama işareti bulunan ana form karakterleridir. Kimi platformlar bunları iki harf olarak renderlar.
- NFD (Kanonik Ayrıştırma)
- Karakterleri acımasızca temel bileşenlerine ayıran filtredir. (Örn: "ş" karakterini "s" ve "," olarak ayırır). macOS işletim sistemlerinin çekirdeğinde veriler böyle saklanır.
- NFC (Kanonik Bileştirme)
- İnternetteki ve Windows'taki en baskın mantıktır. Ekleri ve ana harfleri (s + ,) birbirine sıkıca dikip ekrandaki mükemmel görselin aynısını veriye de uygular (ş).
- NFKC (Uyumluluk Bileşimi)
- Görsel nüansları da yok eden çok agresif bir filtredir. Daire içine alınmış harfleri ("②") normal olanlarla ("2") veya boşluklu harfleri sıradan harflerle birleştirerek devasa temizlik yapar.
SSS
- Q.Neden yazılım geliştirmede Unicode normalleştirmesi zorunludur?
- Bir kullanıcı Windows üzerinden "ş" kelimesini girer, mac işletim sistemi kullanan diğeri de "ş" kelimesini klavyeden tuşlarsa veritabanına gelen veriler (bayt düzeyinde) farklıdır. Veritabanını optimize etmeden (örn. NFC'ye çevirmeden önce) arama (search) işlemi yaparsanız Mac kullanıcısının kayıtları bulunamayabilir.
- Q.Uygulamada var olan 4 formattan hangisini seçmek daha garantilidir?
- Eğer antik bir sunucu yapısı için kod yazmıyorsanız internet için her zaman "NFC" opsiyonu seçilmelidir. Dünya İnternet Konsorsiyumu (W3C), HTML formatları dahi tüm global standartlarda tek protokol olarak NFC'yi referans alır.
- Q.Neden bir macOS klasöründen Windows'a metin/dosya adı kopyaladığımda harfler tuhaf hale bürünüyor?
- Buna "Dakuten" ya da harf ayrılması sorunu denir. macOS, dosyaların isimlerini NFD olarak zorla biçimlendirdiğinden noktalama ve çentikleri (örn. Ü'nün noktaları) ayrı bir karaktermiş gibi yan tarafa koyar. Aracımız bu metni "NFC" metoduyla işlediği süreçte bu kırılımları tekrar tek parçaya diker.
- Q.Süslü, emoji gibi görünen numara ikonlarını veya küçücük alt/üst simgeleri (superscript) metinden nasıl sökebilirim?
- "NFKC" geçiş yapısını etkinleştirin. Bu format, yalnızca boşlukları temizlemekle kalmaz; aynı manaya gelen dekoratif formları da sade (plain-text) yapılarına daraltır. (örneğin yuvarlak simgeli "①" sembolünü salt düz "1" rakamına çevirecektir).
- Q.Hassas verilerimi (Kişisel Verilerin Korunması) bu dev metin kutusuna yapıştırmam yasal açıdan beni tehlikeye atar mı?
- Kesinlikle tehlike ihtimali yoktur! Bütün hesaplamalar veya dönüşümler akıllı tarayıcınız olan Chrome, Safari veya Firefox'un içerisindeki gömülü, donanımsal olan izolasyon (String.normalize) odalarından sağlanır. Ağa veri çıkışı gerçekleşmez.
- Q.İşleme (Normalize Et) tıkladıktan sonra neden harf (karakter) sayısı azaldı/çoğaldı?
- NFC metodu iki farklı bağımsız parçayı (Örneğin U+006F ve U+0308 olan ö harfini) tek bir bütüne lehimlediğinde (Örn U+00F6 olan ö harfine) ekrandaki karakter tasarrufu artar ve uzunluk kısalır. NFKC metodunda ise bir Trademark (TM) ikonunu tam iki zıt harf olan T ve M harfine böldüğünden karakter şişmesi yaşanır.
Kullanım Senaryoları
Veritabanı Standardizasyonu
Farklı Apple aygıtlarından sitenize veri giren kullanıcıların metinlerini Backend'e yollamadan önce mutlak bir standarda oturtabilirsiniz.
Programlamada Karşılaştırmalar
Çalışmayan regex (düzenli ifade) ya da (if a === b) gibi komutları düzeltmek adına, aynı stringleri NFKC üzerinden sınayın.
Veri Ön İşleme (Preprocessing)
Doğal dil işleme (NLP, ChatGPT veya LLM eğitimi) ya da makine veri analizi senaryolarında noise (gürültü) oranını yarıya düşürün.
Şifreleme (Encoding) Hata Tespiti
Alt paneldeki muazzam fark analizörü (Code Point) sayesinde metninizdeki gizli ve görünmez anomalileri mikroskop altına alın.
Teknik Altyapı
String.prototype.normalize() API Yöntemi
Aracımız Deno/Node.js backend'ine bağlı olmak yerine tarayıcı yerel nesne metotları kullandığı için, milyonlarca satırlık çok büyük dize verileri bile hiçbir bant genişliği sorunu yaşamadan anlık (gerçek zamanlı) işlenebilir.