2 puan yazan GN⁺ 2025-02-28 | 1 yorum | WhatsApp'ta paylaş
  • Fish, macOS, Linux ve diğer Unix tabanlı işletim sistemleri için kullanıcı dostu bir komut satırı kabuğudur
  • 4.0.0 itibarıyla Fish'in çekirdek kodu C++'tan Rust'a taşındı
    • Bu, bağımlılıklar ve derleme yöntemi açısından büyük değişiklikler getiriyor, ancak kullanıcılar üzerinde doğrudan bir etkisi yok
  • Uyumsuz değişiklikler:
    • bind komutu için yeni bir tuş gösterimi kullanıma sunuldu
    • ctrl-c artık clear-commandline çağırıyor; önceki davranış ise cancel-commandline ile kullanılabiliyor
    • random fonksiyonunun tohum değerine göre ürettiği sonuçlar önceki sürümlerden farklı olabilir
    • Komut konumundaki değişkenler artık alt komut anahtar sözcüklerine genişletilemez
    • functions --handlers artık işleyicileri tanımlandıkları sıraya göre listeliyor
    • qmark-noglob özelliği artık varsayılan olarak etkin

İyileştirmeler ve düzeltmeler

  • Klavye protokolleri: XTerm'in modifyOtherKeys özelliği ve kitty'nin klavye protokolü destekleniyor
  • Kendi kendine kurulabilen ikili dosya: fish, kendi kendine kurulabilen bir ikili dosya olarak derlenebiliyor
  • Komut geçmişi: fish_should_add_to_history fonksiyonu ile hangi komutların geçmişe ekleneceği belirlenebiliyor
  • Geri alma özelliği: Komut çalıştırıldıktan sonra da geçmiş korunuyor
  • Kısaltma kısıtlaması: Kısaltmalar yalnızca belirli komutlar için genişletilebiliyor

Kullanımdan kaldırılan ve çıkarılan özellikler

  • commandline --tokenize, commandline --tokens-expanded ile değiştirildi
  • bind -k sözdizimiyle tuş adı belirtmek artık önerilmiyor
  • Yapıştırma modu kaldırıldı

Betik yazımı iyileştirmeleri

  • Yeni geçmiş komutu: history append ile komut çalıştırılmadan geçmişe eklenebiliyor
  • Yeni yönlendirme:

1 yorum

 
GN⁺ 2025-02-28
Hacker News görüşleri
  • Fish 4.0 hakkında en ilginç şey, artık Rust ile yazılmış olması
    • Test ederek gözle görülür bir fark olup olmadığını görmek isterim
  • Kullanıcıya doğrudan bir etkisi olmayacağı söyleniyor
    • Fish’in çekirdeği baştan yazıldı ama neredeyse her şey aynı şekilde çalışıyor
  • Fish shell’e geçenler için en büyük dezavantajın ne olduğunu merak ediyorum
    • Sistemde alıştıktan sonra şirket sunucularında Bash veya Zsh kullanmak zorunda kalmak
    • Bash’ten Fish’e geçecekseniz, Nushell’e geçmeyi de düşünebilirsiniz
  • Bir Zsh kullanıcısı olarak Fish’i denemek istiyorum
    • Zsh’ye eklentiler ekleyerek onu Fish gibi çalıştırıyorum
  • Homebrew kullanıyorsanız Fish henüz sunulmuyor
    • Eklenmesi planlanıyor
  • Fish’i uzun yıllardır kullanıyorum; bunun başlıca nedeni mükemmel otomatik tamamlama özelliği
    • Sadeleştirilmiş tema/istem sistemi ve oh-my-fish eklenti yönetimi de güzel ama ikincil önemde
  • Fish’in Bash ile uyumlu olmayan diğer özellikleri rahatsız edici
    • Özellikle ortam değişkeni yönetimi sorunlu
    • Prensipte Bash’ten daha iyi bir tasarım ama fark o kadar büyük değil ve seyrek kullanıldığı için her seferinde yeniden öğrenmek gerekiyor
    • Belgelerdeki yapılandırma talimatlarını kopyala-yapıştır yaparken rahatsız edici oluyor
  • Rust’a geçiş için geliştirme koordinasyonunun nasıl yapıldığını merak ediyorum
    • Yalnızca tek bir PR (#9512) görünüyor
  • Rust ile yeniden yazıldıktan sonra ikili dosyanın ne kadar büyüdüğünü merak ediyorum
  • clear-commandline ilginç bir özellik
    • Windows ve macOS arasında tutarlılığı korumak zor
    • Karabiner’i düzgün kullanamıyorum
    • Varsayılan cancel-commandline ayarına bakacağım