Vite 한국어 번역 가이드
Vite 한국어 번역 리포지토리에 오신 것을 환영합니다. 이 문서는 Vite 한국어 번역에 기여하시는 분들을 위한 가이드입니다.
🚀 시작하기
설치
요구 사항:
- Node.js:
>=22
- PNPM:
9.15.3
이 프로젝트는 Node.js@22 및 PNPM@9.15.3를 이용합니다. PNPM은 Node Corepack을 이용합니다. 자세한 설정은 package.json 파일을 참고해 주세요.
# 1. 이 리포지토리를 클론합니다.
git clone https://github.com/vitejs/docs-ko
cd docs-ko
# 2. 모듈을 설치합니다.
corepack enable # 만약 Corepack이 활성화 되어있지 않다면 이 명령어를 실행해 주세요.
pnpm install
# 3. 개발 서버를 시작합니다. (http://localhost:5173/)
pnpm dev
# 4. 프로젝트를 빌드합니다. (dist 디렉터리에 빌드 결과물이 위치합니다)
pnpm build
브랜치
main
브랜치는 번역 작업을 진행하는 목적으로 사용됩니다.
기여하기
번역에 기여해 주신 모든 분께 감사드립니다.
- GitHub Issues에서 번역이 필요한 부분을 확인할 수 있습니다.
sync
라벨만 붙은 이슈 중, 아직 할당되지 않은 번역 작업을 오래된 것부터 찾아주세요. 최신 문서를 번역하는 경우 충돌이 발생할 수 있습니다. - 해당 Issue에서 "번역 작업을 진행하겠습니다"와 같은 코멘트를 남겨 작업을 진행하겠다는 의사를 표현해주세요. 승인된 경우, 번역 담당자로 자신이 Assign 된 것을 확인할 수 있습니다. (메인테이너의 경우 Self-Assign 기능을 이용할 수 있습니다.)
- 이 리포지토리를 Fork하고, 브랜치를 생성한 후, 번역 작업을 진행합니다. (작업을 진행하며
pnpm dev
명령을 통해 브라우저에서 실시간으로 확인할 수 있습니다.) - 커밋, 그리고 자신의 번역 리포지토리로 Push 후, 이 리포지토리의
main
브랜치로 PR을 생성해주세요. - 리뷰 단계에서 수정이 필요한 부분이 있을 경우 해당 부분을 수정하고 다시 Push 합니다.
- 더 이상 수정이 필요하지 않으면 메인테이너가 브랜치를 병합합니다. 감사합니다! 🎉
번역 대상
번역은 원본 리포지토리 내 docs
디렉터리를 대상으로 진행합니다(예: docs/guide/index.md
). 이 프로젝트는 Yuki-no를 사용해 자동으로 docs
디렉터리 내 모든 변경 사항을 GitHub Issues로 등록하고 관리합니다.
번역 대상 이슈에는 sync
라벨이 존재합니다. 이슈 본문에 변경 사항에 대한 GitHub Commit URL이 있으니, 이를 참고해 번역을 진행해 주세요. 다만 pending
라벨이 함께 존재하는 이슈는 번역 대상이 아닙니다. Vite 정식 릴리스에 포함되지 않은 변경 사항이며, 향후 릴리스가 되면 pending
라벨이 제거됩니다. 이는 Yuki-no에서 관리합니다.
아래 파일은 최신 내용만 유지하며, 번역하지 않습니다:
blogs/*.md
📄 번역 스타일
번역 규칙
경어체를 사용합니다.
PR 전 맞춤법 검사기를 사용해 문서를 검사합니다.
줄 바꿈 및 단락은 원본 문서와 동일하게 유지합니다.
공백(
), 큰따옴표(
""
), 작은따옴표(''
), 대시(-
), 백틱(`
) 등 모든 특수문자는 최대한 남겨 수정합니다.소스 코드는 주석만 번역하며, 나머지는 원본 문서와 동일하게 유지합니다. 에러 내용은 번역하지 않습니다.
ko.javascript.info의 번역 모범 사례를 읽고 작업에 참여해주세요.
원문에는 없으나 이해를 돕기 위해 추가하고자 하는 내용은 문장 중간이나 끝에
(... - 옮긴이)
형태로 작성해주세요. 길어지는 경우, 미주(Footnote)를 이용할 수 있습니다. 단, 이 경우에도 줄 바꿈 및 단락은 원본 문서와 동일하게 유지합니다.md이것은 예시입니다. (... - 옮긴이) 이것은 예시입니다. ^[(... - 옮긴이)]
번역 팁
- 번역은 단어를 그대로 옮기는 것이 아니라 의미를 전달하는 것이 목적입니다. 누락, 오역, 번역투가 아닌 문장이면 좋습니다.
번역 시 참고할 수 있는 자료
용어집
용어집은 TERMINOLOGY.md 문서에서 관리하고 있습니다.
원본 문서와의 차이점
- 본 프로젝트는 마지막으로 배포된 공식 배포 버전의 Vite 문서를 번역하는 것을 목표로 하고 있습니다. 따라서, 번역 문서는 원본 문서의 마지막 공식 배포 버전을 기준으로 작성합니다.
- 이전 버전의 Vite 문서를 참조하는 경우에는 원본 문서를 참조하도록 합니다:md
... 설정하여 동일한 [Vite v2 외부화 휴리스틱](https://v2.vite.dev/guide/ssr.html#ssr-externals)을 사용하여 ...
- 이전 버전의 Vite 문서를 참조하는 경우에는 원본 문서를 참조하도록 합니다:
- 번역 문서는 원본 문서와 동일한 디렉터리 구조를 가지고 있습니다.
- 번역 문서는 원본 문서의 파일명을 그대로 사용합니다.
🤝 컨벤션
PR 및 커밋 타이틀
PR과 커밋 타이틀은 시멘틱 커밋 메시지를 기반으로 합니다:
<type>(<scope>): <subject>
- type: 커밋의 타입을 나타냅니다.
docs
: 문서 수정feat
: 새로운 기능 추가fix
: 버그 수정style
: 코드 포맷팅, 세미콜론 누락, 코드 변경이 없는 경우refactor
: 코드 리팩토링test
: 테스트 코드, 리팩토링 테스트 코드 추가chore
: 빌드 및 패키지 매니저 수정
- scope: 커밋의 범위를 나타냅니다. (선택사항)
- subject: 커밋의 제목을 나타냅니다.
PR 규칙
- 논의가 필요한 PR은 수정 요청을 할 수 있습니다.
- PR 생성 시 체크리스트를 확인해주세요.
커스텀 앵커
본 리포지토리는 올바른 앵커 참조를 위해 커스텀 앵커를 사용하고 있습니다. 문서의 모든 제목은 커스텀 앵커를 지정해야 합니다.
제목 마지막에 {#custom-anchor-name}
와 같은 형태로 커스텀 앵커의 지정이 가능하며, 앵커 이름은 원본 문서를 기준으로 합니다. 예를 들면 다음과 같습니다:
<!-- 원본 -->
# Get Started with Node.js
<!-- 한글 번역 -->
# Node.js 시작하기 {#get-started-with-node-js}
규칙은 Vitepress에서 사용하는 @mdit-vue/shared
패키지의 slugify
함수와 동일합니다. 이 곳에서 직접 테스트해 볼 수도 있습니다.
이렇게 지정된 앵커는 다음과 같이 참조가 가능합니다:
[Node.js 시작하기](#get-started-with-node-js)
커스텀 앵커를 이용하기에 일반적으로 원본 Vite 문서에 대한 한글 문서는 도메인 네임만 ko.vite.dev
로 바꿔주면 참조가 가능합니다:
- 원본: https://vite.dev/guide/ssr.html#generating-preload-directives
- 한글 문서: https://ko.vite.dev/guide/ssr.html#generating-preload-directives
guide/cli.md 문서에서와 같이 중복된 타이틀이 존재할 수 있습니다. 이 경우 중복되는 타이틀에는 {#title-1}
형태로 커스텀 앵커를 지정해주세요:
## 옵선 {#options}
...
## 옵션 {#options-1}
...
## 옵션 {#options-2}
...
🤨 FAQ
광고가 보여요
본 번역 프로젝트는 영리 목적으로 시작된 것이 아니며, 어떠한 방식으로도 수익을 내지 않습니다. 또한 앞으로도 그럴 계획이 없습니다.
프로젝트는 Vite 리포지토리를 포크해 시작했습니다. 이 과정에서 대부분의 설정값을 그대로 사용하게 되었고, 광고와 관련된 설정 또한 원본과 동일하게 유지했습니다. 이로 인해 Vite 번역 문서에서 광고가 나타나게 되었으며 광고의 설정 및 내용은 Vite 공식 문서와 동일합니다.
🍍 그 외
문서 최신화 방법
본 리포지토리는 매 10분마다 원본이 되는 vitejs/vite 리포지토리의 docs
디렉터리의 변경 사항을 추적합니다. 이 작업은 GitHub Actions를 통해 진행되며, ryu-cho 오픈소스를 사용합니다. 원본 문서에 변경 사항이 생길 경우 이를 GitHub Issues에 남겨 알리도록 구성되어 있습니다.
다만, 간혹 커밋 순서가 잘못되는 경우가 있습니다(예: #686 및 #687). 이는 번역 시 줄 수가 맞지 않는 것으로 확인할 수 있으며, 해당 이슈의 코멘트로 남겨 알려주시기를 부탁드립니다(예: #686 코멘트).