- Yazar, doktora tezini Typst kullanarak yazdı; bu, mevcut LaTeX yerine farklı ve yeni bir meydan okumaydı
- Hızlı derleme hızı, tutarlı ve güçlü bir betik dili, kolay yerleşim özelleştirmesi, üstün kod vurgulama sayesinde belge düzenleme ve şablon ayarlama çok verimliydi
- Kaynakça yönetimindeki zorluklar, LaTeX dönüşümünün sınırları, genç ekosistem nedeniyle şablon eksikliği, hata mesajlarının sınırlılıkları gibi belirgin rahatsızlıklar ve kısıtlar da vardı
- LaTeX ile uyumluluk, iş birliği ve tez tesliminde istenen biçim desteği hâlâ yetersiz; tez ortak yazımı ve konferans gönderimlerinde LaTeX'in fiili standart olduğu hissediliyor
- Typst, özellikle programatik esneklik ve modern özellikler gerektiğinde avantajlı, ancak yeni başlayanlar ve standart gereksinimler için önerilmiyor
Doktora tezini Typst ile yazma nedeni
- Yazar yakın zamanda doktora tezini Typst ile yazdı ve geleneksel olarak sık kullanılan LaTeX yerine yeni bir tipografi dilini denedi
- Typst, Markdown ile dinamik tipli Rust yaklaşımını birleştiren bir yapı sunuyor; belge yazımı LaTeX'e kıyasla daha doğal ve betik dili olarak genişletilebilirliği de güçlü
- Sözdizimi sezgisel ve kod ile belge arasında geçiş yapmak kolay
Typst'in avantajları
Derleme hızı
- Typst derleyicisi çok yüksek hız sunuyor; belge büyüse bile gerçek zamanlı PDF önizlemesi mümkün
- Tam derleme de yaklaşık 15 saniye içinde bitiyor; içerik değiştiğinde sonucu neredeyse anında görmek mümkün
- Yerleşim ve stil düzenlemeleri verimli biçimde tekrar edilerek nihai çıktının kalitesi artırılabiliyor
Dil tasarımı ve betik kullanımı
- Typst dili oldukça tutarlı ve Rust tabanlı tasarımı sayesinde öğrenme eğrisi düşük
- LaTeX'te her pakette farklılaşan sözdizimsel tutarsızlıkların yarattığı rahatsızlık Typst'te büyük ölçüde gideriliyor
- TOML dosyalarını doğrudan ayrıştırıp veriyi belge içinde otomatik olarak görselleştirme gibi programatik kullanım alanları zengin
- Modern araçlarla (derleyici, bağımlılık yönetimi, LSP vb.) entegrasyonu da güçlü bir yanı
Şablon ve yerleşim düzenleme
- Typst'in şablon yapısı açık olduğu için istenildiği gibi kolayca değiştirilebiliyor ve genişletilebiliyor
- LaTeX'in karmaşık şablon düzenlemelerine kıyasla çok daha sezgisel ve hızlı bir yapılandırma deneyimi sunuyor
Kod vurgulama
- Yerleşik syntax highlighting desteği sayesinde tez içindeki kodların okunabilirliği yüksek
- Textmate grammar kullanılabiliyor ve regex tabanlı özel tanımlar da kolayca uygulanabiliyor
- Betiklerle doğrudan ayrıştırıcı yazarak belirli sözdizimlerine özel vurgulamalar da denenmiş
Hata mesajları
- LaTeX'e kıyasla hata konumunu ve nedenini daha açık gösterdiği için sorun çözmeye harcanan süre önemli ölçüde azalıyor
- Gereksiz terminal çıktısı yok ve hata bilgileri pratikte gerçekten faydalı
Typst'in dezavantajları
Kaynakça (bibliography) yönetimi
- Tüm tez için yalnızca tek bir bibliography destekleniyor; bölüm bazında ya da tez içine dahil edilen çalışmalarda farklı kaynakça dosyaları kullanılamıyor
- Bibtex değişkenleri gibi gelişmiş özelliklere destek yetersiz olduğundan Makefile ile elle birleştirme gerekiyor
- Paketler (Alexandria) ile kısmi çözüm mümkün olsa da kullanım kolaylığı ve otomasyon seviyesi düşük
- Atıf stili dönüştürme, alan eşleme gibi ayrıntılı ayarlarda eksikler var ve elle müdahale kaçınılmaz
- Kaynakça alanları Bibtex standardından farklı olduğu için sonuçlarda fark oluşuyor
Hata mesajlarının sınırları
- Karmaşık durumlarda (ör. Alexandria kullanırken) ayrıntılı hata açıklaması yerine yalnızca basit bir başarısızlık mesajı görülebiliyor
- Durum tabanlı show rule gibi yapılarda hatanın yerini izlemek zor ve hata ayıklama güç
- Yerleşimle ilgili bazı uyarılarda nedenin ne olduğunu anlamak kolay değil
Karmaşık gerçeklik: uyumluluk ve ekosistem
LaTeX ile uyumluluk ve iş birliği
- Mevcut makaleler ve gönderilecek çalışmalar için LaTeX biçimi gerektiğinden, Typst ile yazılan içerikler Pandoc vb. ile dönüştürülerek kullanılıyor
- Yeni makaleler de Typst ile taslak olarak yazıldıktan sonra nihai gönderim için dönüştürülmek zorunda
- Typst'ten LaTeX'e otomatik dönüşüm kusursuz olmadığından bu iş için ayrı araçlar geliştirilmiş
- Dönüştürülen çıktının bazı bölümlerinde (ör. kod) LaTeX'in \includepdf komutu gerekebiliyor ve bu da yayınevi gereksinimleriyle uyuşmayabiliyor
- LaTeX standart olduğu için birlikte çalışılan kişilerin Typst'i ayrıca öğrenmesi gerekmesi de ayrı bir yük yaratıyor
Typst ekosisteminin durumu
- Typst hâlâ erken aşamadaki bir ekosistem; resmî şablonlar ve gönderim biçimleri sınırlı
- Kullanıcıların çoğu zaman kendi özel şablonlarını üretmesi gerekiyor
- Büyük konferanslar ve dergiler için Typst şablonlarının kapsama alanı ve kalitesi henüz kusursuz değil
Sonuç ve öneri
- Programlamayı seven ve araçları ayrıntılı biçimde özelleştirmekten hoşlananlar için tezi Typst ile yazmak rahatlıkla önerilebilir
- Çok sayıda yinelemeli deneme ve yüksek özelleştirme özgürlüğü sayesinde daha estetik sonuçlar elde etme avantajı sağlıyor
- Buna karşılık, ek ayar yapmadan hemen kullanılacaksa Typst henüz doktora tezi gibi büyük belgeler için uygun değil
- Küçük ölçekli belge yazımı veya kişisel deneyler için Typst'i denemek değerli olabilir
1 yorum
Hacker News görüşleri
gitgibi VCS'lerle de çok iyi çalışıyor. Betiklerle görsel vb. üretilirse LaTeX yeni dosyaları otomatik fark edip yeniden derleyebiliyor. Word'de ise her görseli tek tek bulup değiştirmek gerekiyor ve bu verimsiz. Belge büyüdükçe Word giderek daha rahatsız edici hale gelirken, LaTeX başta biraz kurulum gerektirip sonrasında daha verimli olabiliyor.makefile'lar da sık sık kararsız davranıyor. Doğru çıktı için birden fazla kez çalıştırmak gerekebiliyor; bazen sorunu çözmek içingit clean -xdfbile yapmak gerekiyor. Bunun neden olduğunu hâlâ tam bilmediğini vemakefile'ların da gereğinden fazla karmaşık olduğunu söyleyenler var.-outdirseçeneğiyle ara dosyalar ayrı yönetilebiliyor.bibtexvarsa üç kez, yoksa iki kez çalıştıran koşul bulunuyormuş. Şimdi dönüp bakınca o günlerin geride kalmış olmasına seviniyor.$x^2=1$gibi yazımlar aynen çalışıyor.