Swift 소스 코드를 원본과 정확히 대응하는 구문 트리로 파싱하고 검사·생성·변환하는 Swift 라이브러리 모음입니다.
syntax-tree/unist-util-visit
Markdown AST 같은 구문 트리에서 노드를 순회하고 방문하는 unist 유틸리티로, 테스트 필터와 enter/exit 방문자를 지원합니다.
- 스타
- 359
- 포크
- 23
- 열린 이슈
- 0
- 마지막 커밋
- 14일 전
어떤 프로젝트인가요?
unist-util-visit는 mdast-util-from-markdown이 생성하는 MDAST 트리처럼 unist 기반 구문 트리를 순회하며 각 노드에서 visitor 함수를 호출합니다. unist-util-is와 같은 테스트 형식을 사용해 방문할 노드를 제한할 수 있으며, 노드 타입 문자열 등을 테스트로 지정할 수 있습니다.
visitor에는 노드, 부모에서의 인덱스, 부모 노드가 전달됩니다. 각 visitor는 순회를 계속하는 CONTINUE, 중단하는 EXIT, 노드의 자식 순회를 건너뛰는 SKIP을 반환할 수 있습니다. 노드의 자식 처리가 끝난 뒤 실행되는 별도의 exit visitor도 지정할 수 있습니다. 이 패키지는 ESM 전용이며 Node.js 16 이상을 대상으로 하고, esm.sh를 통해 Deno와 브라우저에서도 사용할 수 있습니다.
각 노드의 모든 조상 경로가 필요하다면 자매 패키지인 unist-util-visit-parents를 사용하세요. 이 패키지는 같은 방식으로 작동하지만 parent와 index를 제공합니다.
핵심 기능
- 01unist 트리의 모든 노드를 방문하며, 노드 타입 등의 테스트로 대상을 필터링할 수 있습니다.
- 02visitor에는 노드와 인덱스, 부모 노드가 전달됩니다.
- 03CONTINUE, EXIT 또는 SKIP을 반환해 순회를 제어할 수 있습니다.
- 04별도의 enter 및 exit visitor를 지원합니다.
- 05esm.sh를 통해 Node.js, Deno, 브라우저에서 사용할 수 있습니다.
활용 사례
- remark 또는 unified 플러그인에서 모든 텍스트 노드나 코드 노드처럼 특정 Markdown 노드를 찾고 변환하기.
- 빌드 단계에서 구문 트리의 정보를 수집하기.
- unist 호환 파서를 기반으로 커스텀 린터나 변환기를 만들기.
빠른 시작
- 1
npm으로 패키지를 설치합니다(Node.js 16 이상).
npm install unist-util-visit - 2
visit를 가져와 fromMarkdown으로 생성한 것과 같은 구문 트리를 순회합니다.
사용 전 알아둘 점
- 이 패키지는 ESM 전용이므로 CommonJS 프로젝트에서 require()로 불러올 수 없습니다.
- unist 트리를 위한 저수준 트리 순회 유틸리티입니다. 입력을 생성하려면 mdast-util-from-markdown과 같은 파서가 필요합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- unist-util-visit은(는) 무엇인가요?
- Markdown AST 같은 구문 트리에서 노드를 순회하고 방문하는 unist 유틸리티로, 테스트 필터와 enter/exit 방문자를 지원합니다. unist-util-visit는 mdast-util-from-markdown이 생성하는 MDAST 트리처럼 unist 기반 구문 트리를 순회하며 각 노드에서 visitor 함수를 호출합니다. unist-util-is와 같은 테스트 형식을 사용해 방문할 노드를 제한할 수 있으며, 노드 타입 문자열 등을 테스트로 지정할 수 있습니다.
- unist-util-visit은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- unist-util-visit은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- unist-util-visit은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. unist-util-visit의 마지막 커밋은 2026년 10월 24일입니다.
- unist-util-visit은(는) 어디에 사용할 수 있나요?
- remark 또는 unified 플러그인에서 모든 텍스트 노드나 코드 노드처럼 특정 Markdown 노드를 찾고 변환하기. 빌드 단계에서 구문 트리의 정보를 수집하기. unist 호환 파서를 기반으로 커스텀 린터나 변환기를 만들기.
- unist-util-visit는 어떻게 설치하나요?
- npm으로 패키지를 설치합니다(Node.js 16 이상).: npm install unist-util-visit visit를 가져와 fromMarkdown으로 생성한 것과 같은 구문 트리를 순회합니다.
- unist-util-visit은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/syntax-tree/unist-util-visit
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Python 버전별 문법을 지원하고, 오류 복구와 원본 소스 보존 기능을 갖춘 Python 파서입니다.
MDX는 Markdown 문서 안에 JSX 컴포넌트를 작성할 수 있는 형식으로, 번들러와 React, Preact, Vue를 위한 컴파일러를 제공합니다.
JavaScript, TypeScript, CSS, HTML, Markdown, YAML 등의 코드를 일관된 스타일로 다시 출력하는 주관이 뚜렷한 코드 포매터입니다.
구체 구문 트리를 만들고 소스 파일이 편집될 때마다 갱신하는 증분 파서 생성기이자 파싱 라이브러리입니다.