Công cụ trình duyệt Kosmonaut, viết bằng Rust, được giới thiệu

Trong ranh giới của dự án nhà du hành vũ trụ Một công cụ trình duyệt đang được phát triển, được viết hoàn toàn bằng ngôn ngữ Rust và sử dụng một số phát triển của dự án servo. Mã số phân phối bởi được cấp phép theo MPL 2.0 (Giấy phép Công cộng Mozilla). Các ràng buộc OpenGL được sử dụng để hiển thị gl-rs bằng ngôn ngữ Rust. Quản lý cửa sổ và tạo bối cảnh OpenGL được thư viện triển khai Glutin. Các thành phần được sử dụng để phân tích HTML và CSS html5ever и trình phân tích cú pháp cssđược phát triển bởi dự án Servo.
Mã để làm việc với DOM dựa trên sự phát triển của dự án Kuchiki, phát triển một thư viện để thao tác HTML/XML. Trong số các dự án được sử dụng, một công cụ web thử nghiệm cũng được đề cập Robinson, đã ở trong tình trạng bán bỏ hoang trong khoảng 5 năm.

Ở giai đoạn phát triển hiện tại, hỗ trợ HTML cơ bản và một số khả năng CSS hạn chế được cung cấp, chưa đủ để xem hầu hết các trang hiện đại. Tuy nhiên trang đơn giản div có CSS ​​được hiển thị chính xác. Dự án ban đầu được thành lập cách đây một năm để dạy quy trình phát triển công cụ trình duyệt, nhưng hiện đang cố gắng tìm kiếm các lĩnh vực ứng dụng mới.

Những gì đã được thực hiện:

  • Phân tích cú pháp HTML, tập hợp con CSS, CSS xếp tầng, DOM.
  • Kết xuất trang, bố cục nội dung khối.
  • Hỗ trợ một phần cho bản tóm tắt mô hình hộp và tài sản"hướng".
  • Tạo các kết xuất gỡ lỗi với một cây gồm các phần tử được hiển thị.
  • Hỗ trợ các hệ số tỷ lệ tùy ý cho màn hình có độ phân giải cao.
  • Hiển thị văn bản bằng thư viện FreeType.
  • Hỗ trợ Bố cục luồng, định dạng và hiển thị nội tuyến theo ngữ cảnh.

Nguồn: opennet.ru

Thêm một lời nhận xét