Rust tilida yozilgan Kosmonavt brauzeri dvigateli taqdim etildi

Loyiha doirasida kosmonavt To'liq Rust tilida yozilgan va Servo loyihasining ba'zi ishlanmalaridan foydalangan holda brauzer dvigateli ishlab chiqilmoqda. Kod tarqaladi MPL 2.0 (Mozilla Public License) ostida litsenziyalangan. Renderlash uchun OpenGL ulanishlari qo'llaniladi gl-rs Rust tilida. Oyna boshqaruvi va OpenGL kontekstini yaratish kutubxona tomonidan amalga oshiriladi Glyutin. Komponentlar HTML va CSS-ni tahlil qilish uchun ishlatiladi html5ever и cssparserloyiha tomonidan ishlab chiqilgan Servo.
DOM bilan ishlash uchun kod loyiha ishlanmalariga asoslanadi Kuchiki, HTML/XML bilan manipulyatsiya qilish uchun kutubxonani ishlab chiqadi. Amaldagi loyihalar orasida eksperimental veb-motor ham qayd etilgan Robinson, taxminan 5 yil davomida yarim tashlandiq holatda bo'lgan.

Rivojlanishning hozirgi bosqichida asosiy HTML qo'llab-quvvatlashi va cheklangan CSS imkoniyatlari to'plami taqdim etiladi, ular ko'pchilik zamonaviy sahifalarni ko'rish uchun hali etarli emas. Shunga qaramasdan oddiy sahifalar CSS bilan divs to'g'ri chizilgan. Loyiha avvaliga bir yil avval brauzer dvigatellarini ishlab chiqish jarayonini o‘rgatish maqsadida tashkil etilgan bo‘lsa-da, hozirda dasturning yangi bo‘shliqlarini topishga harakat qilmoqda.

Nima allaqachon amalga oshirilgan:

  • HTML tahlili, CSS kichik to'plami, kaskadli CSS, DOM.
  • Sahifani ko'rsatish, kontent tartibini bloklash.
  • Abstrakt uchun qisman qo'llab-quvvatlash quti modellari va xususiyatlari "yo'nalish".
  • Ko'rsatilgan elementlar daraxti bilan disk raskadrovka dumplarini yaratish.
  • Yuqori DPI ekranlar uchun o'zboshimchalik bilan o'lchov omillarini qo'llab-quvvatlaydi.
  • FreeType kutubxonasi yordamida matnni ko'rsatish.
  • qo'llab-quvvatlash Oqim tartibi, kontekstga sezgir inline formatlash va renderlash.

Manba: opennet.ru

a Izoh qo'shish