0 votos
147 visualizações

Nossos subtítulos em ambas as traduções estão em Capitalização de Títulos (Title Case), com todas as palavras tendo a primeira letra maiúscula (sem palavras menores, sem capitalização). No processo de uso do FLExTrans, às vezes há frases (por exemplo, para termos-chave) em que apenas a primeira palavra da frase é exibida com inicial maiúscula. Além disso, às vezes um demonstrativo que é um sufixo na língua de origem é, na verdade, uma palavra separada na língua de destino e é exibido em minúsculas. O exemplo a seguir mostra ambos os problemas:

\s1 Haruanga Babuna Mana Sipsipka Hanggalang   >   \s1 Pasilanga babuna Mana Sipsip xa Panggalang

Existe uma maneira nas regras de saída de texto (text out rules) para corrigir isso? Existe alguma expressão regular que alguém tenha que funcione nas regras de saída de texto para isso?

Tradução automática de English
FLExTrans por (126 pontos)
reexibida por [Administrator]
| 147 visualizações

1 Resposta

0 votos

Vejo o que está acontecendo. Sua entrada lexical é haruanga babuna, que está mapeada para pasilanga babuna. A capitalização da primeira palavra é mantida, mas a da segunda não. O mecanismo de transferência do FLExTrans não consegue lidar com isso, então você terá que fazer uma alteração pós-síntese.

No caso de Sipsipka virar Sipsip xa, como isso é produzido por uma regra, você pode envolver a string literal que está sendo exibida com o elemento 'get-case-from'. Ficaria assim:

Isso significa que, se a palavra original que entra estiver em maiúsculas, o xa sairá em maiúsculas. Da mesma forma, se estiver em minúsculas, sairá em minúsculas.

Mas, você pode ter outras palavras em um título de seção que estão saindo em minúsculas por vários motivos. Então, você pode querer uma solução geral para colocar todas as palavras em Capitalização de Títulos.

Não existe uma expressão regular de uma linha que faça isso. Então, vejo duas soluções possíveis:

1) Adicionar um módulo personalizado ao seu conjunto de módulos de Drafting que execute algum código Python para capitalizar todas as palavras em um cabeçalho de seção.

2) Adicionar uma expressão regular para cada letra do alfabeto. Não é tão bom ter 26 expressões nas suas regras de Text Out, mas funciona.

A expressão para 'a' seria Search For: (^\\s.*?\b)a(\w*) Replace with: \1A\2

Para facilitar a adição de todas essas, você pode adicionar as seguintes linhas xml abaixo de <SearchReplaceRules> no arquivo Output\fixup_synthesis_rules.xml:

 <SearchReplaceRule RegEx="yes" Inactive="no" Comment="">

   <SearchString>(^\\s.*?\b)a(\w*)</SearchString>

   <ReplaceString>\1A\2</ReplaceString>

 </SearchReplaceRule>

 <SearchReplaceRule RegEx="yes" Inactive="no" Comment="">

   <SearchString>(^\\s.*?\b)b(\w*)</SearchString>

   <ReplaceString>\1B\2</ReplaceString>

 </SearchReplaceRule>

 <SearchReplaceRule RegEx="yes" Inactive="no" Comment="">

   <SearchString>(^\\s.*?\b)c(\w*)</SearchString>

   <ReplaceString>\1C\2</ReplaceString>

 </SearchReplaceRule>

 <SearchReplaceRule RegEx="yes" Inactive="no" Comment="">

   <SearchString>(^\\s.*?\b)d(\w*)</SearchString>

   <ReplaceString>\1D\2</ReplaceString>

 </SearchReplaceRule>

 <SearchReplaceRule RegEx="yes" Inactive="no" Comment="">

   <SearchString>(^\\s.*?\b)e(\w*)</SearchString>

   <ReplaceString>\1E\2</ReplaceString>

 </SearchReplaceRule>

 <SearchReplaceRule RegEx="yes" Inactive="no" Comment="">

   <SearchString>(^\\s.*?\b)f(\w*)</SearchString>

   <ReplaceString>\1F\2</ReplaceString>

 </SearchReplaceRule>

 <SearchReplaceRule RegEx="yes" Inactive="no" Comment="">

   <SearchString>(^\\s.*?\b)g(\w*)</SearchString>

   <ReplaceString>\1G\2</ReplaceString>

 </SearchReplaceRule>

etc.

Tradução automática de English
por (336 pontos)

Uma Regex aprimorada é:

(^\\s[^\\]*?\b)r(.+?)(?=\\)

a substituição pode permanecer:

\1R\2

A melhoria impede que alterações de capitalização sejam feitas quando chega ao próximo backslash (\), o que é importante. 

Tradução automática de English

Perguntas relacionadas

0 votos
1 resposta 117 visualizações
Como executo um auto-teste de síntese em um texto no meu Projeto de Destino?
Sara 250 perguntada Abr 28, 2025
0 votos
1 resposta 320 visualizações
Como faço para excluir um afixo nas minhas regras de transferência?
rmdiamondl 336 perguntada Mai 8, 2022
0 votos
3 respostas 2,3k visualizações
Estou preparando Lucas e Atos para serem impressos como um folheto, e não consigo descobrir como inserir uma página de título intermediária antes do início de Atos.
Jamie 102 perguntada Ago 6, 2024
0 votos
1 resposta 222 visualizações
Como uso a lógica de exemplo que está no arquivo de regras de transferência?
Sara 250 perguntada Abr 28, 2025
0 votos
1 resposta 124 visualizações
Como me refiro a glosas de afixos em regras de transferência?
Sara 250 perguntada Abr 28, 2025
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
But if we walk in the light, as he is in the light, we have fellowship with one another, and the blood of Jesus, his Son, purifies us from all sin.
1 John 1:7
3,069 perguntas
6,030 respostas
5,700 comentários
2,038 usuários