· kaynak Hacker News – Front Page (native)
Astroterm, gerçek zamanlı ASCII yıldız haritalarıyla açık kaynaklı bir terminal planetaryumu
Hacker News'te öne çıkan C ile yazılmış Astroterm, terminali canlı bir planetaryuma dönüştürüyor; herhangi bir tarih ve konum için yıldızları, gezegenleri, takımyıldızları ve ay evrelerini ASCII olarak çiziyor.
Düz metinle bir planetaryum
Astroterm, C dilinde yazılmış, bir terminal penceresini işlevsel bir planetaryuma dönüştüren açık kaynaklı bir uygulamadır. Yakında Hacker News'in ana sayfasında yer alan projenin GitHub deposuna göre, yıldızların, gezegenlerin ve takımyıldızların canlı konumlarını ASCII karakterleriyle çiziyor ve gökyüzünü geçmiş ya da gelecekteki herhangi bir tarih, saat ve konum için de aynı kolaylıkla gösterebiliyor.
Proje, gökyüzünü yaklaşık değerlerle temsil etmek yerine, yalnızca karakter hücresi grafiklerinin aktarabildiğiyle sınırlı, doğru bir simülatör olarak kendini tanıtıyor. Yıldız alanının yanı sıra ayın güncel evresini gösterebiliyor, takımyıldız çizgi figürlerini çizebiliyor, azimut gridini ekleyebiliyor ve renk katabiliyor.
Kontroller ve yetenekler
Komut satırı bayrakları temel işlevleri kapsıyor. Gözlemciler enlem ve boylamı doğrudan ayarlayabiliyor ya da birlikte gelen bir liste üzerinden aranan bir şehir adı belirtebiliyor. Gözlem tarih ve saati UTC olarak veriliyor; belirtilmediğinde sistem saati kullanılıyor. Varsayılanı 5.0 olan parlaklık eşiği hangi yıldızların çizileceğini, varsayılanı 0.25 olan daha sıkı ikinci bir eşik ise hangi yıldızların metin etiketi alacağını belirliyor. Parlaklık değerleri ters çalıştığından (düşük değerler daha parlak nesneler demek), eşiği yükseltmek gökyüzünü daha sönük yıldızlarla dolduruyor.
Animasyon da yapılandırılabilir: kare hızı bayrağının varsayılanı 24 fps ve varsayılanı 1.0 olan bir hız çarpanı, saatler süren gökyüzü hareketini saniyelere sığdırabiliyor. Render seçenekleri arasında takımyıldız çizgileri için Unicode karakterleri ve braille işaretleri, ayrıca hücre biçiminin projeksiyonu basık göstereceği terminaller için en-boy oranı geçersiz kılma seçeneği bulunuyor. Program kendi için Bash sekme tamamlamaları da üretebiliyor.
README, aracı iki örnekle tanıtıyor. Singapur gibi ekvatoral bir şehirde hızın 64 fps'de 10.000×'e çıkarılması "dönen küre" etkisi yaratıyor; belge, kutup noktalarına yakın konumlardan bakışların oldukça farklı göründüğünü, çünkü orada yıldızların ufuktan ufuğa yay çizmek yerine gök kutbunun çevresinde döndüğünü belirtiyor. İkinci örnek, Apollo 11'in fırlatıldığı sabah olan 16 Temmuz 1969, saat 08:00 UTC'de Kennedy Uzay Merkezi'nin üzerindeki gökyüzünü yeniden oluşturuyor — yazar, bu çıktının köklü planetaryum paketi Stellarium ile karşılaştırılarak doğrulandığını söylüyor.
Niş bir araç için geniş paketleme
Kurulum seçenekleri alışılmadık ölçüde geniş. Depoya göre astroterm, Arch Linux'un extra deposunda ve Fedora'nın 40. sürümden itibaren paket depolarında yer alıyor; Homebrew, Nix ve Guix üzerinden de edinilebiliyor. Önceden derlenmiş çalıştırılabilir dosyalar Linux x86_64, hem Intel hem Apple Silicon tabanlı macOS ve Windows x86_64'yü kapsıyor; Linux arm64 derlemelerinin Ubuntu arm64 derleme koşucularının kullanıma sunulmasını beklediği belirtiliyor ve kaynaktan derleme de belgelenmiş durumda.
İki tuhaflık kendi sorun giderme maddelerini almış. Görünüşe göre curl, en son GitHub sürümüne yapılan yönlendirmeyi izlemiyor; bu yüzden önerilen indirme yolu wget ya da sürümler sayfası. Linux'taki bozuk Unicode çıktısı ise bir yerel ayar sorunu olarak ele alınıyor ve en_US.UTF-8 gibi bir UTF-8 yerel ayarı yapılandırılarak giderilebiliyor.
Neden önemli
Astroterm iki geleneğin kesişiminde duruyor: uzun soluklu ASCII sanatı kültürü ve Unix benzeri sistemlerde şaşırtıcı derecede derin astronomi yazılımları. Onu bir merak ötesine taşıyan, simülasyonun gerçekten zamandan ve konumdan haberdar olması ve tek gereksinimi bir metin terminali olan küçük bir C programı tarafından hesaplanması — yani bir shell'in çalıştığı her yerde, başsız makineler ve SSH oturumları dahil çalışıyor. Büyük dağıtım depolarına girmesi, meraklılık olarak bırakılmadığını ve topluluk standartlarına göre bakımının yapıldığını gösteriyor. Gökyüzünü izleyenler, eğitimciler ve iyi yapılmış bir komut satırı oyuncağından keyif alan geliştiriciler içinse prompt'tan başını kaldırıp gökyüzüne bakmanın gerçekten yeni bir yolunu sunuyor.
- #open-source
- #terminal
- #astronomy
- #cli
- #ascii