MicroLighter: CSS Custom Highlight API 기반 초경량 문법 하이라이터 공개
Introducing MicroLighter
Dave Rupert가 만든 MicroLighter는 CSS Custom Highlight API를 활용한 클라이언트 사이드 문법 하이라이터로, 약 2KB(gzipped) 크기에 의존성이 없습니다. Textmate 문법을 사용해 다양한 언어를 지원하며, 언어별 문법은 필요할 때만 로드됩니다. 기존 하이라이터와 달리 DOM을 변경하지 않고 CSS 하이라이트 API를 사용하며, light-dark() 함수로 라이트/다크 테마를 통합했습니다. 추가 기능은 <micro-lighter> 커스텀 엘리먼트로 분리했습니다.
분명히 저는 웹 컴포넌트 변태지만, 모든 것을 핵심 라이브러리에 욱여넣는 것보다 관심사 분리 측면에서 훌륭한 선택이라고 생각합니다.