diff options
Diffstat (limited to 'data/keyboards/Makefile.am')
-rw-r--r-- | data/keyboards/Makefile.am | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/data/keyboards/Makefile.am b/data/keyboards/Makefile.am index 12b5459..15db898 100644 --- a/data/keyboards/Makefile.am +++ b/data/keyboards/Makefile.am @@ -26,22 +26,35 @@ EXTRA_DIST = \ hangul-keyboard-ahn.xml.template \ hangul-combination-default.xml \ hangul-combination-full.xml \ + its/hangul-keyboard.its \ + its/hangul-keyboard.loc \ $(NULL) -# intltool로 xml 파일을 번역하면 주석이 모두 사라지고 attr의 순서도 -# 재정렬된다. 이를 방지하고자 name 부분만 별도의 name.xml로 만들어 +# its 폴더의 *.its, *.loc rule을 사용하기 위해 GETTEXTDATADIRS 지정 +MSGFMT_COMMAND = env GETTEXTDATADIRS=$(srcdir) $(MSGFMT) + +# msgfmt으로 xml 파일을 번역하면 들여쓰기 크기가 바뀌고 같은 줄에 달린 주석 +# 앞에 줄바꿈이 추가된다. 이를 방지하고자 root node와 name 부분만 별도의 +# name.xml로 만들어 (msgfmt 입출력은 valid XML만 가능하므로 root node도 포함.) # 번역한후 template과 name.xml을 병합하여 키보드 xml 파일을 생성한다. hangul-keyboard-%.xml: hangul-keyboard-%.name.xml hangul-keyboard-%.xml.template - sed -i -e '1 D' -e 's/^<name/ <name/' $< + sed -i -e '1 D' \ + -e '/^<hangul-keyboard/D' \ + -e '/^<\/hangul-keyboard/D' \ + -e 's/^ *<name/ <name/' $< sed \ - -e '/<_name>/r $<' \ - -e '/<_name>/a\ ' \ - -e '/<_name>/D' \ + -e '/<name>/r $<' \ + -e '/<name>/D' \ $(srcdir)/$@.template > $@ hangul-keyboard-%.name.xml.in: hangul-keyboard-%.xml.template grep "xml version=" $< > $@ - grep "<_name>" $< >> $@ + grep "<hangul-keyboard" $< >> $@ + grep "<name>" $< >> $@ + grep "</hangul-keyboard" $< >> $@ + +hangul-keyboard-%.name.xml: hangul-keyboard-%.name.xml.in Makefile + $(AM_V_GEN)$(MSGFMT_COMMAND) --xml --template $< -d $(top_srcdir)/po -o $@ CLEANFILES = \ hangul-keyboard-2.xml \ @@ -54,5 +67,3 @@ CLEANFILES = \ hangul-keyboard-ro.xml \ hangul-keyboard-ahn.xml \ $(NULL) - -@INTLTOOL_XML_RULE@ |