2015-04-08 16 views
6

Rozwijamy nasz projekt OSX przy użyciu cMake jako narzędzia do tworzenia projektu Xcode.CMake generuje projekt xcode z lokalizacjami

Jednak okazuje się, że potrzebujemy trochę lokalizacji, do czego potrzebujemy zarówno angielskich, jak i niemieckich plików .xib (lub .strings do ich generowania, to nie jest ważny fragment).

Mamy pliki w odpowiednim miejscu i utworzony poprawnie, ale kiedy cUpewnij generuje projekt, pliki są wstawiane do projektu Xcode jako dwa zupełnie odrębne i niezależne plików, takich jak:

Foo.xib Foo.xib

Zamiast dwóch "sub-files" w ramach tej samej nazwie:

Foo.xib - Foo.xib (angielski) - Foo.xib (niemiecki)

Jeśli przeciągnę i upuść elementy XIB znajdujące się w en.lproj i sv.lproj bezpośrednio do folderu zasobów w eksploratorze projektu: Xcode automatycznie wykrywa, że ​​są to różne języki tego samego interfejsu użytkownika, dlatego języki są dodawane do ustawienia projektu automatycznie. Również xibs otrzymują grupę MainMenu.xib w eksploratorze projektu trzy, składającym się z obu języków.

Próbuję dodać zlokalizowane xib do projektu poprzez cmake. Są dodawane do folderu zasobów, ale nie jako zidentyfikowane lokalizacje, otrzymuję tylko dwa xibs w eksploratorze projektu 3 bez lokalizacji brak połączenia między nimi.

Jak mogę sprawić, by lokalizacja działała poprzez generowanie cmake?

Czy istnieje sposób na generowanie projektów Xcode za pomocą cmake z działającymi pakietami .lproj?

+0

Czy znalazłeś jakieś rozwiązanie? Mam również problemy z I18N i L17N. – Lothar

+0

Skończyłem pisać naszą własną obsługę języka, zastępując tekst w aplikacji w czasie wykonywania ... –

+0

Czy kiedykolwiek myślałeś o tym, aby użyć Fazy Kompilacji? Napisałem system lokalizacji, który to zrobił. Podczas gdy my sami XIB nie byliśmy zlokalizowani (zdecydowaliśmy się na ciągi, które muszą być zlokalizowane, należy je aktualizować za pomocą kodu). –

Odpowiedz

2

Po prostu zrobiliśmy to sami. Niestety rozwiązanie nie jest ładne. Skończyłem na pisaniu własnego skryptu Pythona przy użyciu mod_pbxproj, aby zmodyfikować projekt xcode po wygenerowaniu go przez cmake. Jeśli uda Ci się uciec przy użyciu zwykłego projektu xcode zamiast wygenerowanego przez cmake, myślę, że jesteś w lepszej sytuacji. Co musisz zrobić, aby XCode rozpoznał zbiór plików, ponieważ lokalizacja jest dość złożona.

Powiązane problemy