Rust дээр бичигдсэн Космонавт хөтөчийн хөдөлгүүрийг танилцуулав

Төслийн хил хязгаарт Космонавт Бүхэл бүтэн Rust хэл дээр бичигдсэн, Servo төслийн зарим хөгжүүлэлтийг ашиглан хөтөчийн хөдөлгүүрийг боловсруулж байна. Код тараасан MPL 2.0 (Mozilla Public License) дагуу лицензтэй. OpenGL холболтыг дүрслэхэд ашигладаг gl-rs Rust хэлээр. Цонхны менежмент болон OpenGL контекст үүсгэх ажлыг номын сан хэрэгжүүлдэг Глютин. Бүрэлдэхүүн хэсгүүдийг HTML болон CSS-г задлан шинжлэхэд ашигладаг html5ever и cssparserтөслөөр боловсруулсан Servo.
DOM-тэй ажиллах код нь төслийн хөгжүүлэлт дээр суурилдаг Кучики, энэ нь HTML/XML-г удирдах номын санг хөгжүүлдэг. Ашигласан төслүүдийн дунд туршилтын вэб хөдөлгүүрийг дурьдсан болно Робинсон, 5 жил орчим хагас хаягдсан байдалд байсан.

Хөгжлийн өнөөгийн шатанд HTML-ийн үндсэн дэмжлэг болон хязгаарлагдмал CSS-ийн боломжууд хангагдсан бөгөөд эдгээр нь орчин үеийн ихэнх хуудсыг үзэхэд хангалттай биш байна. Гэсэн хэдий ч энгийн хуудаснууд CSS-тэй div дээр зөв зурсан байна. Энэхүү төсөл нь хөтчийн хөдөлгүүрийг хөгжүүлэх үйл явцыг заах зорилгоор жилийн өмнө байгуулагдсан боловч одоо шинэ хэрэглээний талбаруудыг хайж байна.

Аль хэдийн хэрэгжсэн зүйл:

  • HTML задлан шинжлэх, CSS дэд хэсэг, каскадын CSS, DOM.
  • Хуудасны дүрслэл, агуулгын байршлыг блоклох.
  • Хийсвэрийг хэсэгчлэн дэмжих хайрцагны загварууд болон шинж чанарууд "чиглэл".
  • Үзүүлсэн элементүүдийн модтой дибаг үүсгэж байна.
  • Өндөр DPI дэлгэцийн дурын масштабын хүчин зүйлсийг дэмждэг.
  • FreeType номын санг ашиглан текстийг буулгаж байна.
  • тусламж Урсгалын зохион байгуулалт, контекст мэдрэмтгий шугаман форматлах, үзүүлэх.

Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх