Ana içeriğe geç
Programlama

Kod parçacıklarını animasyonla dönüştüren yeni yöntem geliştirildi

Öne çıkanlar

  • Keynote'un Magic Move özelliği kodları anlamsal dizgecikler yerine düz harf olarak işlediği için hatalı animasyon üretiyor.
  • Projede Myers diff yerine görsel süreklilik sağlayan ve O(n) sürede çalışan Paul Heckel algoritması tercih edildi.
  • Bento 1.0.19 sürümüne entegre edilen yöntem, AST yerine TextMate gramerleriyle hatalı kodları da başarıyla eşleştiriyor.

Jetpack Compose ekibinde çalışan bir mühendis, sunumlarda kod parçacıkları arasındaki geçişleri daha akıcı ve görsel olarak tutarlı hale getiren yeni bir yöntem geliştirdi. Apple Keynote bünyesindeki Magic Move gibi mevcut araçların kodu anlamsal olarak tanımaması nedeniyle harfleri rasgele kaydırdığını belirten geliştirici, Bento adlı açık kaynaklı çevrimdışı sunum aracına kod geçiş desteği ekledi.

Geliştirici, Myers diff algoritmasının en kısa düzenleme mesafesini hedeflediği için görsel sürekliliği bozduğunu, bu nedenle 1978 tarihli Paul Heckel algoritmasını temel aldığını açıkladı. Ağır derleyici altyapıları gerektiren Soyut Sözdizim Ağacı (AST) yerine TextMate sözdizimi tanımları kullanıldı. Bu sayede kodlar eksik veya hatalı olsa bile parçacıklar içerik, kapsam ve derinlik bilgileriyle dizgeciklere ayrıldı.

Heckel algoritması iki kod parçacığı arasında yalnızca bir kez geçen dizgecikleri çapa olarak belirliyor ve ardından ileri-geri adımlarla eşleşmeleri genişletiyor. Eşleşmeyen kısımlar ise toplu olarak siliniyor veya ekleniyor. Warp adıyla GitHub üzerinde yayımlanan algoritma, Bento'nun 1.0.19 sürümüne kod biçim değiştirme özelliği olarak entegre edildi.

Kaynak

Bu özet yapay zekâ ile hazırlanmıştır; ayrıntılar ve doğrulama için orijinal kaynağa başvurun.