2012-11-01 1 views
2

NSLocalizedString을 여러 디렉터리에 여러 파일을 통해 확산 사용하고 약 100 인스턴스가 있습니다.genstrings NSLocalizedString 약 100 인스턴스 중 5 찾을 수

내가 먼저 .strings 파일을 생성하기 위해 높은 수준의 디렉토리에서이 명령을 사용하려고 :

find . -name \*.m | xargs genstrings -o en.lproj 

을하지만 그 오류 결과 :

couldn't connect to output directory en.lproj 

그래서 난 그냥이 실행

:

find . -name \*.m | xargs genstrings 

이로 인해 Localizable.strings 파일이 생성되었지만 그 내용은 선택되지 않았습니다. 2 개의 파일에서 NSLocalizedString 어커런스가 발생합니다. 우연히 동일한 디렉토리에있을 수는 없습니다.

왜 명령은 하나의 디렉토리 만 처리 한 다음 중지합니다. 나는 H 상위 레벨 디렉토리에서 명령을 실행 중이고이 소스 파일은 M에서 발견되었으므로 명령은 H/M을 찾았으나 NSLocalizedString 인스턴스가 들어있는 .m 파일을 포함하는 H/A H/B 등 H와 같은 피어 디렉토리가 있습니다.

왜 문제가 될 수 있습니까?

답변

2

genstrings은 공백이있는 이름이있는 폴더를 깨뜨리고 있다고 생각합니다. 이것은 나를 위해 일했다 :

find . -name "*.m" -print0 | xargs -0 genstrings -o "OUTPUT_FOLDER" 
0

en.lproj 디렉토리가 명령을 실행하는 디렉토리 (아마도 .xcodeproj가있는 위치)에 있어야합니다. 존재하지 않는 경우 간단히 작성하십시오.

+0

그것은 "출력 디렉토리에 연결할 수 없다"를 해결할 것이지만 NSLocalizedString의 인스턴스 수가 아주 적은 경우에만 소스 코드에서 문제가 해결된다. – Gruntcakes

0

고양이를 사용하여 모든 파일을 하나로 연결 한 다음 얻을 수있는 genstrings을 실행했습니다.

호기심에 대해 알고 싶다면 왜 그렇게하지 않았습니까?

관련 문제