2013-03-17 3 views
0

Firebreath를 사용하여 크롬 확장을 만듭니다. http://slimtext.org 그리고 문제가 발생합니다. Windows에서 중국어 문자를 잘 지원하지 않습니다. 많은 연구 후 나는 이것을 찾았다 : http://www.boost.org/doc/libs/1_50_0/libs/locale/doc/html/default_encoding_under_windows.html부스트 로케일과 Firebreath를 함께 사용하십시오.

나는 해결책이 부스트/로케일을 사용하는 것이라고 생각한다. 그러나 https://github.com/firebreath/firebreath-boost 프로젝트에는 부스트/로켈이 포함되어 있지 않습니다. 1.50.0 브랜치는 마스터 브랜치보다 새로운 부스트를 포함하지만 어느 쪽도 부스트/로케일을 포함하지 않습니다.

나는 외부 부스트를 사용하거나 외부 부스트에서 로케일 코드를 복사하려했으나 실패했습니다.

귀하의 제안은 무엇입니까 (수 있도록 할 때 로케일로 연결하지 수)? Firebreath와 함께 부스트 로케일을 어떻게 사용할 수 있습니까?

답변

0

Windows에서 외부 부스트로 Firebreath 프로젝트를 컴파일하지 못했습니다. 많은 조사가 끝나면 부스트/로케일이 내 원래의 문제에 대한 핵심인지 의심하기 시작합니다. 중국어 문자 인코딩 문제입니다. : 당신은 윈도우와 다른 운영 체제, 예를 들어 별도 코드를 작성해야 할 수도 있습니다 때마다

    1. 사용 문자열 대신 wstring을 :

      마지막으로 내가 부스트/로케일없이 해결

      #ifdef _WIN32

      file.open(path.c_str()); //path is std::wstring 
      
      fs::path the_path(path);    
          file.open(the_path.generic_string().c_str()); 
      

      #endif

  • +0

    파이어 브레스 기능 FB :: utf8_to_wstring 및 FB :: wstring_to_utf8 참고 – taxilian

    1

    firebreath-boost는 전체 부스트 중 일부입니다. 수동으로 모든 부스트 설치를 사용하고 시스템 부스트를 사용하십시오. http://www.firebreath.org/display/documentation/Prep+Scripts

    +0

    #else

    는 회신 주셔서 감사합니다. 나는 최신 부스트 1.53.0을 컴파일하고 설치하려고했고 당신이 올린 지침을 따른다. 운이 없다. firebreath는 부스트 1.53.0과 호환됩니까? –

    +0

    부스트 시스템을 연결해야합니다 – taxilian

    +0

    firebreath-boost 프로젝트에 로케일을 추가 할 계획이 있습니까? 그런 다음 이전과 마찬가지로 프로젝트를 실행할 수 있습니다. 이제는 많은 디버깅 및 구성 작업을 수행해야합니다. (나는 여전히 Windows에서 작동하지 않는다). 나는 로케일이 i18n에게 매우 중요하다고 생각한다. 그렇지 않으면 firebreath는 다른 아스키 외의 언어를 지원할 수 없습니다. –