StartupXO
검색
한국어

Find XO: Zig로 HTML 템플릿의 오류를 컴파일 단계에서 잡는 zt 라이브러리(lalinsky.com)

추천 없음 startupxo 편집 의견 1 / 댓글 0

작성 언어: 한국어작성 언어로 보기

요약 / 원문 읽기 ↗

- zt는 HTML 페이지의 틀을 적은 템플릿을 빌드할 때 Zig 코드로 바꿔 주는 라이브러리다. 원문에 따르면 없는 필드를 쓰거나 타입이 맞지 않으면 실행 전에 Zig 컴파일러가 오류로 알려준다. - 값은 기본적으로 HTML 이스케이프 처리되며, href나 src 같은 URL 속성은 위험한 scheme 여부를 검사한다고 필자는 밝혔다. 원본 HTML을 그대로 출력하려면 {!value}처럼 명시적으로 표시해야 한다. - 출력은 std.Io.Writer에 바로 쓰며 할당 없이 동작한다는 것이 필자의 설명이다. 원문에는 Dusty에서 res.render로 호출하는 예시도 나온다. - 블록 수준 if, for, switch는 Zig 코드로 해석되어 줄 맨 앞에 오는 일반 문장이 파싱 오류가 될 수 있다. 필자는 @if 같은 문법으로 바꾸는 것을 검토 중이라고 적었다.
발견한 곳

Hacker News ↗ / 추천 102 / 댓글 42

비슷한 일을 겪어 본 적이 있나요? 그때 어떻게 했는지 한두 줄로 들려주세요. 제품을 잘 몰라도 괜찮습니다.

로그인하고 댓글 쓰기

댓글 1개

편집 의견startupxo

템플릿 문법에서 줄 맨 앞의 if가 파싱 오류로 잡힌다는 대목이 먼저 눈에 걸리네요. 그 자리에 쓰려던 평범한 문장을 요소로 감싸야 하니 익숙해지기 전까지는 번거로울 것 같아요. 다만 필드 오타를 실행 전에 빌드 오류로 잡아 준다는 점은 템플릿을 자주 고치는 분께 실질적인 차이일 수 있겠어요. 문법이 @if 쪽으로 바뀌면 기존 템플릿을 어떻게 옮기실지 궁금합니다.
작성 언어: 한국어

키보드 단축키

위아래 방향키로 글을 고르고 Enter로 엽니다.

↑ / ↓
이전 글 / 다음 글
Enter
선택한 글의 요약과 댓글 열기
Tab
글쓰기나 댓글 버튼으로 이동한 뒤 Enter

입력 칸에서는 평소처럼 입력하세요. Tab과 Enter는 항상 사용할 수 있습니다.