[iOS, NodeJS] 구글 번역으로 글로벌 서비스 만들기 ( 1)

[iOS, NodeJS] 구글 번역으로 글로벌 서비스 만들기 ( 1)

그동안 다른 일들을 하느라 바빠서 업데이트를 하지 못하고 있었는데 이번에 새롭게 66 Days를 네이티브 앱으로 업데이트를 하게 되었습니다!! 대충대충 글로벌 서비스를 위해 구글 번역기를 이용하게 되는 과정을 정리하고 공유해보려고 합니다.

예전에 노가다로 한 줄 한 줄 구글 번역기를 돌리던... 것이 생각나서 자동화할 수 있는 방법을 찾아봤어요.

다행히 구글에서 npm를 제공하고 있었습니다. @google-cloud/translate를 이용해서 아주 쉽고 빠르게 글로벌 서비스를 만들어볼까요?!

1. xcode 현지화 설정 및 문자 추출하기

우선 지원하고 싶은 언어를 추가해주세요.

xcode 13.1

저는 기본 개발 언어를 한국어로 변경하였습니다. project.pbxproj 파일에서 developmentRegion를 ko로 변경해줍니다.

(한국어 기준으로 현지화를 진행할 수 있습니다)

SwiftUI의 Text 컴포넌트를 사용하면 자동으로 Localizable이 적용됩니다. 일반적인 String을 사용하실 땐 아래와 같이 LocalizedStringKey로 Localizable이 적용되도록 변경해주셔야 합니다.

xcode 13.1

이와 같이 현지화가 필요한 언어들을 추출합니다.

추출된 파일을 열어보면 위 사진처럼 문자를 넣을 수 있게 되어있습니다. 이 부분은 자동화하지 않았어요.

English에 있는 부분이 앞으로 번역이 될 문장입니다. Korean -> English로 복붙 노가다를 진행해주세요. ^^;;

이렇게 한국어로 채운 파일을 Import Localizations... 해줍니다.

/* No comment provided by engineer. */ "프로젝트" = "프로젝트"; /* 프로젝트 잠금 해제 */ "프로젝트 보기" = "프로젝트 보기"; /* No comment provided by engineer. */ "프로젝트 삭제" = "프로젝트 삭제"; /* No comment provided by engineer. */ "프로젝트 설정" = "프로젝트 설정"; /* No comment provided by engineer. */ "프로젝트 수정" = "프로젝트 수정"; /* No comment provided by engineer. */ "프로젝트 순서" = "프로젝트 순서"; /* No comment provided by engineer. */ "프로젝트 잠금" = "프로젝트 잠금"; /* No comment provided by engineer. */ "프로젝트 잠금 제거" = "프로젝트 잠금 제거"; /* No comment provided by engineer. */ "프로젝트 정보 및 통계" = "프로젝트 정보 및 통계";

Localizable (English)를 확인해보시면 위 사진처럼 변경되어있을 겁니다. 번역 데이터가 완성이 되었습니다.

이제 자동으로 번역을 해봅시다.

from http://loycord.tistory.com/2 by ccl(A) rewrite - 2021-11-29 17:00:40