C# ile jargonizeyşın

Jargonizeyşın derken, Jargon'u web sitende ya da masaüstü uygulamanda kullanmak.

  1. Adım 1 - Jargon'u edinim
    Derhal ana sayfa'ya ışınlanıp C# kaynak kodlarını veyahut ikili dosyaları indir, sonra gel ben buradayım.
  2. Adım 2 - Jargon'u derle (kodlar varsa)
    Jargon, .NET Framework v2.0 ile yazıldı ve proje dosyaları Visual Studio 2005 dosyalarıdır. Visual Studio 2008'de de muhtemelen sorun yaşamazsın ama açıkçası, denemedim.
    Jargon.Resources ve web'de kullanacaksan Jargon.Web.Controls projelerini derle. Jargon.Web.Controls kütüphanesi Jargon.Resources'a gereksinim duyar. Başka gereksinim yok hamdolsun.
  3. Adım 3a - Jargon'u web projene ekle

    Eğer projen web projesi değilse, Adım 3b'ye geç.

    İhtiyacın olan şey Jargon.Web.Controls projesi (ya da kütüphanesini) web projene referans olarak göstermek. Ayrıca, web sitenin altında herhangi bir dizine istediğin jargonlara ait .jar.xml dosyalarını kopyalaman gerek. Nereye koyacağını sen bilirsin; Jargon bütün jargon dosyalarını bulacaktır. Örneğin bu sitenin jargon dosyaları kök dizinin altındaki jargon dizininde. İnanmazsan bak: ../jargon/jargon.tr-TR.jar.xml

    Sonrasında, aşağıdaki tabloda her bir ASP.NET web kontrolüne karşılık gelen Jargon web kontrolünü kullan:

    ASP.NET Jargon
    asp:Button jar:Button
    asp:LinkButton jar:LinkButton
    asp:Literal
    asp:Localize
    asp:Label
    jar:Text
    Jargon web kontrolleri, benzer oldukları ASP.NET web kontrollerinden türerler. Buna tek istisna jar:Text web kontrolüdür, ki zaten düz metin olduğu için bir kontrolden türemesi gerekmedi. Demem o ki, jar:LinkButton ve jar:Button web kontrollerinin ASP.NET kontrollerinden hiç bir farkı yok, al birini vur ötekine. Tek fark, Jargon kontrollerindeki JargonKey ve LetterCase özellikleri. Bu özelliklerden JargonKey tahmin edebileceğin gibi kaynak dosyalarındaki anahtar sütunuyla aynı işleve sahip ve LetterCase de büyük/küçük harf olayını ayarlıyor. Örnek bir kullanımı önizleme sayfasından kopya geçiyorum:
    <tr>
        <td><jar:JargonText runat="server" ID="jargonText5" JargonKey="password"/></td>
        <td><input type="password" /><br /></td>
    </tr>
    <tr>
        <td colspan="2">
            <jar:JargonButton runat="server" ID="jargonButton1" JargonKey="login" />
            <jar:JargonButton runat="server" ID="jargonButton2" JargonKey="lostPassword" />
            <jar:JargonButton runat="server" ID="jargonButton3" JargonKey="signIn" />
        </td>
    </tr>
    Gerisine karışman gerekmez, nitekim Jargon web kontrolleri kullanıcının tarayıcı dil seçeneklerini alıp, en uygun jargonu seçecektir.
  4. Adım 3b - Jargon'u masaüstü projene ekle
    Senin ihtiyacın olan şey ise Jargon.Resources kütüphanesi (ya da projesi). Projene Jargon.Resources'ı referans olarak ekledikten sonra jargonlamak istediğin her Label kontrolünün Text alanını aşağıdaki gibi almak:
    lblPassword.Text = JargonReader.GetString(jargon_kodu, jargonKey, harfDurumu);
    Burada jargon_kodu kullanmak istediğin jargonun kodu, jargonKey jargon anahtarını, harfDurumu da harflerin büyük/küçük harf oluşunu gösterir.

    Jargon kodunu otomatik olarak almanın yollarını araştırıyorum, ama şimdilik öyle birşey yok; çünkü Windows el ile kültür kodu yazma olanağı sağlamıyor.

  5. Adım 4 - Ya sonrası?
    Sonraki adım olsa olsa kendi jargonunu yaratmak olur; ki o da ayrı bir hikaye (şurda)