Chuyển đến nội dung chính

Hai quy trình làm việc của Crowdin

Hyperlocalise hiện hỗ trợ hai tích hợp Crowdin khác nhau:
  1. Chế độ đồng bộ gốc với i18n.yml cộng với sync push / sync pull
  2. Chế độ tệp tương thích với Crowdin cùng với crowdin.ymlhyperlocalise crowdin ...
Sử dụng chế độ đồng bộ gốc khi bạn muốn đồng bộ mục do Hyperlocalise quản lý. Sử dụng chế độ tệp khi bạn muốn một giải pháp thay thế sát hơn để thay thế trực tiếp cho các quy trình làm việc với tệp của Crowdin CLI.

Chế độ đồng bộ gốc

Cấu hình bắt buộc

{
  "storage": {
    "adapter": "crowdin",
    "config": {
      "projectID": "123456",
      "apiTokenEnv": "CROWDIN_API_TOKEN"
    }
  }
}

Crowdin Enterprise

Đặt apiBaseURL khi không gian làm việc của bạn sử dụng Crowdin Enterprise thay vì API Crowdin Cloud mặc định.
{
  "storage": {
    "adapter": "crowdin",
    "config": {
      "projectID": "123456",
      "apiTokenEnv": "CROWDIN_API_TOKEN",
      "apiBaseURL": "https://example.api.crowdin.com"
    }
  }
}

Các trường cấu hình tùy chọn

  • apiBaseURL: Ghi đè URL cơ sở API của Crowdin. Dùng tùy chọn này cho Crowdin Enterprise.
  • sourceLanguage
  • targetLanguages
  • timeoutSeconds

Chế độ tệp tương thích với Crowdin

Sử dụng crowdin.yml hoặc crowdin.yaml. Ví dụ:
project_id_env: CROWDIN_PROJECT_ID
api_token_env: CROWDIN_PERSONAL_TOKEN
preserve_hierarchy: true

files:
  - source: /src/messages.json
    translation: /locales/%locale%/%original_file_name%
    export_only_approved: true
Các trường crowdin.yml được hỗ trợ trong v1:
  • project_id
  • project_id_env
  • api_token
  • api_token_env
  • base_url
  • base_url_env
  • base_path
  • base_path_env
  • branch
  • preserve_hierarchy
  • files[].source
  • files[].translation
  • files[].languages_mapping
  • files[].excluded_target_languages
  • files[].skip_untranslated_strings
  • files[].skip_untranslated_files
  • files[].export_only_approved
Sử dụng giao diện CLI tương thích:
hyperlocalise crowdin init
hyperlocalise crowdin config validate
hyperlocalise crowdin upload sources
hyperlocalise crowdin upload translations --language fr
hyperlocalise crowdin download --language fr --export-only-approved --skip-untranslated-strings
hyperlocalise crowdin download --language fr --merge-approved
hyperlocalise crowdin download --language fr --include-sources
--merge-approved hợp nhất các khóa đối tượng JSON đã được phê duyệt vào các tệp dịch cục bộ hiện có và bảo toàn các khóa cục bộ bị bỏ qua khỏi bản xuất đã được phê duyệt của Crowdin. Khi Crowdin bao gồm các giá trị dự phòng của ngôn ngữ nguồn trong bản xuất đó, Hyperlocalise sẽ bỏ qua những giá trị vẫn khớp với JSON nguồn để các chuỗi nội bộ đã được dịch trước đó được giữ nguyên. --include-sources cũng tải các tệp nguồn Crowdin khớp xuống các đường dẫn files[].source đã cấu hình trước khi ghi bản dịch. Các đường dẫn nguồn chính xác có thể được tạo cục bộ nếu còn thiếu; các đường dẫn nguồn theo glob bị giới hạn ở những tệp khớp với phần mở rộng glob cục bộ. Sử dụng root branch: trong crowdin.yml hoặc truyền --branch <name> để tải lên và tải xuống các tệp từ một nhánh Crowdin. Cờ này ghi đè giá trị cấu hình cho lệnh đó. Xác thực sẽ thất bại theo mặc định an toàn đối với các trường hoặc lệnh Crowdin không được hỗ trợ.

Các vấn đề thường gặp

  • không tìm thấy token: export CROWDIN_API_TOKEN
  • Yêu cầu API Enterprise bị lỗi: xác minh storage.config.apiBaseURL trỏ đến máy chủ API Enterprise của bạn và sử dụng https
  • lỗi tra cứu dự án: kiểm tra ID dự án và quyền tài khoản
  • cập nhật từng phần: xem báo cáo xung đột với --output json
  • lỗi xác thực chế độ tệp: hãy xóa các trường crowdin.yml không được hỗ trợ hoặc chuyển sang chế độ đồng bộ i18n.yml gốc