본문으로 건너뛰기

도큐사우루스 i18n 기능을 공개합니다

· 약 9분
세바스티앵 로버(Sébastien Lorber)

오늘 우리는 공식적으로 도큐사우루스 2 i18n (국제화) 기능을 2.0.0-alpha.71에서 공개합니다.

도큐사우루스 2는 이제 도큐사우루스 1의 거의 모든 기능에 대한 호환성을 지원할 수 있습니다. 🎉 이제 몇 가지 추가적인 구조 업데이트와 테스트를 거치면 첫 번째 도큐사우루스 2 베타를 선보일 수 있을 겁니다.

우리는 더 많은 노력을 기울였고 새로운 i18n 기능은 도큐사우루스 1 보다 훨씬 좋아졌습니다.

이번 글에서는 번역 워크플로우를 설명하고 개발 시 반영한 설계원칙초기 도입한 사이트 사례를 다룹니다. Jest, Redwood, Datagit에서 도큐사우루스 2 i18n 기능을 적용한 사례를 소개합니다.

우리는 또한 도큐사우루스 2 사이트에서 i18n 지원을 위한 개밥먹기도 진행하고 있습니다. 이 글도 영어프랑스어로 확인할 수 있습니다!

사이트 번역하기

3가지 간단한 단계만으로 여러분의 도큐사우루스 사이트를 번역할 수 있습니다.

  1. 설정: docusaurus.config.js에서 기본 로케일과 대체 로케일을 설정합니다.
  2. 번역: 번역 파일을 정확한 파일시스템 위치에 가져다놓습니다.
  3. 배포: 단일 또는 멀티 도메인 전략에 따라 여러분의 사이트를 빌드하고 배포합니다.

i18n 지원은 매우 유연하고 파일시스템을 기반으로 동작합니다.

**i18n - 따라해보기**로 시작해보세요. 깃(Git) 또는 **크라우드인(Crowdin)**에서 어떻게 번역하면 되는지 안내해드릴 겁니다.

설계 원칙

도큐사우루스 i18n 시스템의 목표는 아래와 같습니다.

  • 간단함: 번역 파일을 정확한 파일시스템 위치에 가져다놓기만 하면 됩니다.
  • 유연한 번역 워크플로우: 깃(단일 저장소, 포크 또는 서브모듈), SaaS 소프트웨어, FTP를 사용할 수 있습니다.
  • 유연한 배포 옵션: 단일, 멀티 도메인 또는 두 가지를 같이 적용할 수 있습니다.
  • 모듈화: 플러그인 개발자에게 i18n을 지원하도록 허용합니다.
  • 최소한의 자원으로 실행: 대부분 정적인 파일로 문서를 만들며 무거운 자바스크립트 라이브러리나 추가 기능을 필요로 하지 않습니다.
  • 확장성 있는 빌드: 로케일 사이트를 독립적으로 빌드하고 배포할 수 있어야 합니다.
  • 애셋 번역: 사이트에 게시된 이미지에 포함된 텍스트도 번역할 수 있어야 합니다.
  • 유연한 결합: 특정 SaaS를 통합할 수 있어야 하지만 사용하도록 강제되지 않아야 합니다.
  • 크라우드인(Crowdin) 사용 편의성: 도큐사우루스 1에서 번역한 항목을 v2로 가져갈 수 있어야 합니다.
  • 기본적인 SEO 지원: hreflang 같은 유용한 SEO 헤더 설정이 제공되어야 합니다.
  • RTL 지원: 오른쪽에서 왼쪽으로 읽는 로케일(아랍어, 히브리어 등)을 지원하고 쉽게 구현할 수 있어야 합니다.
  • 기본 번역: 클래식 테마에서 제공하는 라벨은 다양한 언어로 기본 번역되어 제공되어야 합니다

쇼케이스

우리는 이번 배포 전에 몇몇 기여자들과 함께 i18n 지원 개밥먹기를 진행했습니다.

Jest: 도큐사우루스 업그레이드

번역된 도큐사우루스 1 사이트를 도큐사우루스 2로 업그레이드할 수 있습니다.

**Jest**는 도큐사우루스 1과 크라우드인을 사용하는 사이트 중 하나였습니다.

도큐사우루스 2 마이그레이션은 성공적이었으며 새로운 사이트가 배포되어 운영중입니다(관련 게시물).

Jest의 일본어 웹사이트 첫 페이지

Redwood: 도큐사우루스 도입

Redwood는 리액트 풀스택 기반 잼스택 프레임워크입니다.

그들은 국제화를 지원하는 학습 플랫폼을 만들기 위한 솔루션을 찾고 있었습니다. 그러던 중 도큐사우루스 2 i18n 기능을 적용하기로 했고 learn.redwoodjs.com를 공개했습니다. 프랑스어 번역을 위해 크라우드인을 사용하고 있습니다.

Redwood의 프랑스어 문서 페이지

Datagit: RTL 지원

i18n 시스템은 어떤 언어든지 잘 동작합니다. 오른쪽에서 왼쪽 언어를 포함해서요.

Datagit.ir는 페르시아어를 사용합니다. 간단한 옵션 설정만으로 RTL 지원을 추가하기 위해 도큐사우루스 테마를 뒤집어 사용하고 있습니다.

RTL 언어인 페르시아어로 작성된 Datagit의 웹사이트 사이드바는 창의 오른쪽에 표시되고 목차는 왼쪽에 나타납니다.

글을 마치며

우리는 여러분이 새로운 i18n 기능을 적용해보고 맘에 들기를 바랍니다.

이번 기능 구현은 쉽지 않았습니다. 힘든 여정을 함께 한 모든 분들께 감사드립니다.

  • Alexey는 v1보다 완벽하고 더 좋은 기능을 구현하기 위해 노력해주었습니다.
  • Simen은 Jest 마이그레이션에 참여해 많은 도움을 주었습니다.
  • Claire는 새로운 Redwood 플랫폼에 도큐사우루스 2를 적용하면서 많은 피드백을 보내줬습니다.
  • Massoud는 제가 참여한 Datagit의 RTL 작업을 같이 검토해주었습니다.
  • 크라우드인은 우리와 같이 번역 기능 향상을 위해 지원과 노력을 아끼지 않았습니다.
  • 인내심을 가지고 깃헙에 수 많은 유용한 피드백을 남겨준 도큐사우루스 커뮤니티에 감사드립니다.

읽어 주셔서 감사합니다!

🙏 여러분의 사이트에 i18n을 적용했다면 쇼케이스 페이지에 게시할 수 있도록 알려주세요. 우리는 모든 공개된 도큐사우루스 사이트를 이곳에 게시하고 기능별로 사이트를 필터링해서 참고할 수 있도록 개선 작업을 진행하고 있습니다.