메인 컨텐츠로 이동

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

· 3분 읽기 분량
세바스티앵 로버(Sébastien Lorber)

세바스티앵 로버(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 i18n screenshot

Redwood: 도큐사우루스 도입#

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

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

Redwood i18n screenshot

Datagit: RTL 지원#

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

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

Datagit i18n screenshot

글을 마치며#

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

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

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

읽어 주셔서 감사합니다!

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