2011-11-18 4 views
0
나는 나뭇 가지를 사용

나는 다음과 같은 내용 번역 만들고 싶어 :번역 가능한 컨텐츠와 HTML 태그

{% trans %} 
You have actually <span class='messageNumber'>{{messageNumber}} message(s)</span> in your mailbox. 
{% endtrans %} 

을하지만이 번역 내용이 POEdit에 의해 구문 분석과 번역에 전송 될 때, 그들은 <span> 태그를 참조하고 속성. 이것을 피하려면 어떻게해야합니까?

나는 이런 식으로 일을 생각 :

{% messageNumberFormatted = "<span class='messageNumber'>"~messageNumber~"message(s)</span>" %} 

{% trans %} 
You have actually {{messageNumberFormatted}} in your mailbox. 
{% endtrans %} 

을하지만 그것은 번역에 대한 약간 무겁거나 심지어 나쁜 방법이 아닙니다? 이 경우 그들은 "메시지"라는 단어조차도 볼 수 없습니다.

답변

2

첫째, 당신은 다음과 같이 explicit interval pluralization와 transchoice을 사용해야합니다

{% transchoice message_count %} 
    {0}You have {{no messages}} yet|{1}You have {{one message}}|]1,+Inf]You have {{%count% messages}}. 
{% endtranschoice %} 

을 그리고 어쩌면 당신이 닫는 태그로 여는 태그와 {{}}을 대체 할 replace를 사용할 수 있습니다. 먼저 set를 사용하여 변수에 저장해야하는 경우 난 당신이 직접

{% transchoice message_count | replace('...') %} 

같은 체인 수 있는지 여부를 알고하지 마십시오.

1

문장을 나타내는 키와 함께 나뭇 가지 파일러 trans을 사용할 수 있습니다.

{{ you.have.actually|trans }} <span class='messageNumber'> {{ messageNumber message|trans }} </span> {{ in.your.mailbox|trans }} 
+2

그러나이 솔루션의 문제는 번역자가 문장의 단어 순서를 변경할 수 없다는 것입니다. 일부 언어에서는 특히 중요합니다. – lepix