2011-04-21 13 views
15

Tüm yerelleştirilebilir dizeleri .xib dosyalarından ayıklamanın bir yolunu arıyorum ve hepsinin tek bir dosyada kayıtlı olmasını sağlayın. (Başka .strings, .plist falan olabilir)Tüm yerelleştirilebilir dizeleri tüm XIB dosyalarından tek dosyaya nasıl çıkarabilirim?

Muhtemelen bu ibtool içerir ama ben tek kelimenin sözlüğe tüm bu birleştirme yolu belirlemek mümkün değildi. Bu komut

+0

Bir cevap buldunuz mu? – Lukasz

+0

@Lukasz tam olarak değil, bir çözüm bulduğumda kesinlikle bir cevap vereceğim. – sorin

cevap

32

Açık terminali ve cd projenin kök dizinine (veya dizin tüm XIB dosyaları depolamak) ve türü:

find . -name \*.xib | xargs -t -I '{}' ibtool --generate-strings-file '{}'.txt '{}' 

sihirli bulmak ve birlikte çalışma komutları xargs. -I seçeneği, yer tutucu oluşturur. -t sadece ayrıntılı çıktı içindir (hangi komutların üretildiğini ve çalıştırıldığını görürsünüz). Aynı dizinde xib dosyaları ile aynı ada sahip txts dosyaları oluşturur. Bu komut, çıktıyı bir dosyaya birleştirmek için geliştirilebilir, ancak yine de iyi bir başlangıç ​​noktasıdır.

onları bir arada Katılma: Sen benzer Terminal komutunu kullanarak birine bu taze oluşturulan dosyaları arada kullanabilirsiniz

:

find . -name \*.xib.txt | xargs -t -I '{}' cat '{}' > ./xib-strings-concatenated.txt 

Bu komut bir dosya xib-dizeleri olarak birbirine bağlanmış içine tüm dizeleri koyacağız. kök dizinde txt.

(eğer isterseniz) tekrar bulmak ve xargs kullanarak kısmi dosyaları oluşturulan silebilirsiniz:

find . -name \*.xib.txt | xargs -t -I '{}' rm -f '{}' 
+1

Harika cevap. Komut satırı araçlarını nasıl yapacağımı öğrenebileceğim bir web kaynağı var mı? –

+0

@TusharKoul Bash scriptler dokümanlar ve öğreticiler? ;-) – Lukasz

+0

evet ... Beni her zaman atıfta bulunulan somut bir kaynağa yönlendirebileceğini umuyordum. Neyse, sanırım google'a çok tembel geliyordum: D –

5

bu artık çok daha kolay.

xcode,

sonra yerelleştirme

xcode irade çıkışı tüm projesinden tüm localisable dizeleri ile xliff dosyası için menü/editör/ihracat kullanmak projenizi (bir hedef) seçin.

+0

bu sadece xibs alır mı? veya .m dosyalarından mı? –

+0

Xib veya storyboard'lardan olası tüm dizeleri içerir mi? F.ex: tüm düğme durumları için başlıklar? – Lukasz