다국어 지원

1. 플러그인 설치

  • mkdocs-static-i18n 플러그인 설치
`pip install mkdocs-static-i18n`

MkDocs 수정

theme: 
  name: material 
  features: 
    - i18n
  • features.i18n : 다국어 지원을 위한 기본적인 설정 제공
    • 다국어 전환 메뉴 표시:
      • 드롭다운 메뉴를 통해 사용자가 언어 전환 가능
      • 이 기능은 기본적으로 제공되지만, i18n 설정을 통해 테마에서 더욱 정교하게 관리 가능
    • 언어별 스타일 및 설정:
      • 각 언어에 대한 특정 스타일이나 설정 적용 가능
      • 텍스트 방향이나 언어별 폰트 설정 등.
    • 내비게이션 및 UI 요소의 언어별 번역
      • Material for MkDocs는 내비게이션, 버튼 등 다양한 UI 요소를 다국어로 번역할 수 있는 기능 제공
      • i18n을 추가하면 이러한 번역 기능을 손쉽게 사용 가능
    • 다국어 SEO:
      • 다국어 지원을 통해 검색 엔진 최적화(SEO)에서 각 언어별로 최적화된 페이지를 제공

구성

  • 다국어 지원을 위해 각 언어별로 문서 정리
  • 예를 들어, 영어(en), 한국어(ko), 일어(ja), 중국어(zh)를 지원 하는 경우

1. 문서구조 - folder

  • MkDocs 설정 파일 수정
site_name: Manual
theme:
  name: material
  features:
    - i18n
plugins:
  - search
  - i18n:
      docs_structure: folder
      fallback_to_default: true
      reconfigure_material: true
      reconfigure_search: true
      languages:
        - locale: en
          name: English
          default: true
          build: true
          site_name: "Manual"
          nav:
            - Home: en/index.md
        - locale: ko
          name: 한국어
          build: true
          site_name: "매뉴얼"
          nav:
            - : ko/index.md
        - locale: zh
          name: 中文
          build: true
          nav:
            - 主页: zh/index.md
        - locale: ja
          name: 日本語
          build: true
          nav:
            - ホーム: ja/index.md
  • 폴더 및 파일 구조
docs/
├── en/
│   ├── index.md
├── ko/
│   ├── index.md
├── ja/
│   ├── index.md
└── zh/
    ├── index.md
  • 각 언어 폴더 내에 문서를 작성
    • 예를 들어, docs/en/index.md 파일에는 영어로 된 콘텐츠, docs/ko/index.md 파일에는 한국어로 된 콘텐츠 작성

2. 문서 구조 - suffix

  • MkDocs 설정 파일 수정
site_name: Manual
theme:
  name: material
  language: en
  features:
    - i18n
plugins:
  - search
  - i18n:
      docs_structure: suffix
      fallback_to_default: true
      reconfigure_material: true
      reconfigure_search: true
      languages:
        - locale: en
          name: English
          default: true
          build: true
          site_name: "Manual"
        - locale: ko
          name: 한국어
          build: true
          site_name: "매뉴얼"
          nav_translations:
            Home: 
        - locale: zh
          name: 中文
          build: true
          site_name: "手册"
          nav_translations:
            Home: 主页       
        - locale: ja
          name: 日本語
          build: true
          site_name: "マニュアル"
          nav_translations:
            Home: ホーム
  • 폴더 및 파일 구조
docs/
├── index.en.md
├── index.ko.md
├── index.zh.md
├── index.ja.md
  • 각각의 언어 파일에 접미사를 붙여 작성
    • 예를 들어, docs/index.en.md 파일에는 영어로 된 콘텐츠, docs/index.ko.md 파일에는 한국어로 된 콘텐츠 작성

여기까지 하면 MkDocs 는 정상 동작 일렉트론으로 빌드하면 언어 설정은 안됨

mkdocs_build

mkdocs_multilan