0 votos
538 visualizações

Olá,

Eu estava apenas verificando o uso incorreto de maiúsculas. Em particular, sei que os tradutores às vezes escreveram acidentalmente “LORD” em vez de \nd Lord\nd*. Mas fiquei surpreso que Run Basic Checks…>Capitalization não tenha detectado instâncias de todas as letras em maiúsculas.

Esta expressão regular encontrará quaisquer duas letras maiúsculas adjacentes, mas também retorna muito ruído. Por exemplo, abreviações de nomes de livros, códigos de idioma e nomes de arquivos de imagem.
regex:\w*[A-ZĆÄÏÜ]\w*[A-ZĆÄÏÜ]\w
(para os iniciantes em expressões regulares, [A-ZĆÄÏÜ] significa qualquer caractere de A a Z, ou qualquer um dos caracteres especiais Ć, Ä, Ï e Ü - apenas maiúsculas)

Procurei lugares para alterar as regras de maiúsculas, mas só encontrei um lugar para aprovar ou desaprovar palavras com maiúsculas mistas (nas quais palavras em MAIÚSCULAS não aparecem).

Também pesquisei nos arquivos de ajuda do Paratext e neste fórum, mas não consegui encontrar nenhuma informação.

Existe atualmente uma maneira fácil de encontrar palavras em MAIÚSCULAS? Se não, essa funcionalidade poderia ser adicionada? Talvez isso pudesse aparecer nos resultados da pesquisa de maiúsculas mistas, mesmo que tecnicamente sejam todas maiúsculas. Ou, talvez fosse melhor que elas tivessem sua própria categoria.

Muito obrigado!

Tradução automática de English
Paratext por (379 pontos)
reexibida | 538 visualizações

6 Respostas

0 votos
Melhor resposta

Eu adoro usar expressões regulares, mas elas sempre me deixam com a cabeça girando. Aqui está como eu consegui decompor, para quem estiver interessado. Usei sublinhados como espaços para manter tudo alinhado.

Decomposição da expressão regular que encontra palavras em TODAS MAIÚSCULAS que não são precedidas por certos marcadores.
(?<!\\(id|h|toc|mt|fig).*)\b\p{Lu}+\b

  1. Procurar por um limite de palavra
    __________________________\b_________
  2. Procurar por qualquer letra maiúscula no início de uma palavra
    __________________________\b\p{Lu}___
  3. Procurar por uma ou mais letras maiúsculas, começando no início de uma palavra
    __________________________\b\p{Lu}+__
  4. Procurar por uma palavra de qualquer comprimento que esteja toda em maiúsculas
    __________________________\b\p{Lu}+\b
  5. Após encontrar uma palavra em todas as maiúsculas, verificar se havia um agrupamento opcional logo antes dela
    (?_______________________)\b\p{Lu}+\b
  6. Após encontrar uma palavra em todas as maiúsculas, garantir que não havia um backslash logo antes dela
    (?<!\\___________________)\b\p{Lu}+\b
  7. Após encontrar uma palavra em todas as maiúsculas, garantir que não havia um \id ou \h ou \toc ou \mt ou \fig logo antes dela
    (?<!\\(id|h|toc|mt|fig)__)\b\p{Lu}+\b
  8. Após encontrar uma palavra em todas as maiúsculas, garantir que não havia um \id ou \h ou \toc ou \mt ou \fig em qualquer lugar anterior na linha
    (?<!\\(id|h|toc|mt|fig).*)\b\p{Lu}+\b

Pessoalmente, acho que vou remover |mt porque quero verificar se há todas as maiúsculas nos títulos dos livros também.

Vem a mim a ideia de o que acontece se uma figura for inserida no início ou no meio de um versículo? Palavras subsequentes em TODAS MAIÚSCULAS não seriam detectadas por esta expressão regular.

(\\fig(.*?)\\fig\*) captura a tag da figura inteira, mas isso não ajudou. Foi o que eu consegui:
(?<!\\(id|h|toc).*)\b\p{Lu}+\b.*?(?!\\fig\*)

Aqui está a decomposição:

  1. Após encontrar uma palavra em todas as maiúsculas, garantir que não havia um \id ou \h ou \toc em qualquer lugar anterior na linha.
    (?<!\\(id|h|toc).*)\b\p{Lu}+\b______________
  2. Após encontrar uma palavra em todas as maiúsculas, garantir que não havia um \id ou \h ou \toc em qualquer lugar anterior na linha. Então, procurar à frente qualquer número de caracteres.
    (?<!\\(id|h|toc).*)\b\p{Lu}+\b.*?___________
  3. Após encontrar uma palavra em todas as maiúsculas, garantir que não havia um \id ou \h ou \toc em qualquer lugar anterior na linha. Então, procurar à frente qualquer número de caracteres para garantir que \fig* não seja encontrado em qualquer lugar posterior na linha.
    (?<!\\(id|h|toc).*)\b\p{Lu}+\b.*?(?!\\fig\*)

Por alguma razão, esta expressão regular não capturou “\mt1 GÉNESIS”. Alguma ideia do porquê?

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

Um \fig nunca deve estar dentro de um versículo ou parágrafo, pois ele quebrará o texto e a formatação de várias maneiras ruins, dependendo do seu software de saída. Ele precisa ser colocado no final de um parágrafo. Claro que executamos expressões regulares em todos os tipos de momentos em que o texto não está especialmente limpo, mas eu queria mencionar essa restrição.

Tradução automática de English
0 votos

Olá anon094061.
Você pode colocar a seguinte expressão regular no mecanismo de busca do Paratext para ver as palavras que estão todas em maiúsculas: regex:\b\p{Lu}+\b

onde:
“regex:” é o comando para informar ao Paratext que se trata de uma expressão regular.
“\b” é o limite de palavra
“\p{Lu}” indica letras maiúsculas
“+” indica uma ou mais vezes a fórmula acima.
Ou seja, ela procurará por uma ou mais letras maiúsculas consecutivas que tenham um delimitador de palavra nas extremidades, como espaços ou vírgulas.


De fato, o inventário de capitalização mista… considera combinações incomuns, portanto, não lista aqui palavras em todas as letras maiúsculas.

Tradução automática de English
por (973 pontos)
reexibida
0 votos

É um pouco mais complicado, mas você também pode usar:
regex:(?<!\\(id|h|toc|mt|fig).*)\b\p{Lu}+\b

isso é para ignorar o conteúdo de certos marcadores que já sabemos que serão capitalizados, como “id” ou “mt”.
Você pode adicionar outros marcadores para excluir adicionando um “|” e o nome do marcador como está no parêntese maior.

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

Uau, isso é realmente ótimo! Muito obrigado anon689242- é exatamente o que eu preciso.

Acho que essa verificação seria uma ótima adição a “Atribuições e Progresso”.

Tradução automática de English
0 votos

Ah, acabei de perceber que minha solução \fig \fig* filtra os resultados em TODAS MAIÚSCULAS que ocorrem em um versículo antes da figura. Portanto, é necessário algo mais avançado. Vou pesquisar como dizer à expressão regular para ignorar um grupo.

Tradução automática de English
por (379 pontos)
reexibida
+1 voto

Encontrei https://regex101.com/ útil na análise de expressões regulares, embora eu entenda que uma conexão com a Internet possa ser um problema para alguns. Não tenho certeza de qual “sabor” de expressão regular corresponde ao que o Paratext usa.

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

De acordo com minhas anotações, Paratext 9, RegEx Pal, PrintDraft Changes.txt e DBLchanges.txt todos usam
C# (NET 2.0-4.8.1 & .NET Core 1.0-3.0)

Ficaria feliz em ter isso confirmado.

Tradução automática de English
0 votos

Ótimas observações. Obrigado @Shegnada e @anon806807.

Eu estava apenas pensando que talvez quiséssemos que esta expressão regular verificasse também o texto alt das figuras. Acho que é apenas o nome do arquivo da imagem que está ofendendo, então por que não filtramos isso? Algo como
\b.*\.(TIF|GIF|JPG|JPEG)\b?

Talvez com uma verificação negativa antecipada? Algo assim?

(?:\b.*\.(TIF(F)|GIF|JP(E)G|PNG|EPS|BMP|WEBP)\b)

Ela deve ignorar algo como CN01628B.tif também.

Eu não estou sentado no meu computador enquanto escrevo isso, mas espero testá-lo em breve.

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

Perguntas relacionadas

0 votos
3 respostas 228 visualizações
(Paul Unger writes) I found a topic in the PT Supporters e-mail list that held promise for how to do this. It ... track. Does anyone know what I need to put for small caps?
anônimo perguntada Abr 10, 2015
0 votos
2 respostas 309 visualizações
Uma equipe que estou ajudando gostaria que o nome de Deus fosse exibido em maiúsculas (não em minúsculas). O que preciso ... que o conteúdo de \nd \nd* seja exibido em maiúsculas?
Ruth Mathys 153 perguntada Out 25, 2023
0 votos
6 respostas 810 visualizações
Olá, tenho uma pergunta sobre a marcação em massa de palavras como incorretas na lista de palavras. Estamos nas ... agora um pedido para torná-lo possível! Obrigada, Lizzie
anon859055 130 perguntada Jul 14, 2021
0 votos
6 respostas 450 visualizações
Quero que o estilo \nd esteja em versais. Quando exporto do PT para RTF, \nd fica sublinhado. Marquei a caixa ... distinção de estilo. O que posso fazer para obter versais?
anon054969 123 perguntada Fev 20, 2021
0 votos
0 respostas 162 visualizações
The KJVA uses \sc markup for signs and inscriptions like \sc King of the Jews\sc*. \sc stands ... Scripture Typesetting trainer & Regular Expression Specialist Dallas TX aDllas TX
anon467281 571 perguntada Mar 15, 2019
Welcome to Support Bible, where you can ask questions and receive answers from other members of the community.
For where two or three gather in my name, there am I with them.
Matthew 18:20
3,048 perguntas
6,007 respostas
5,672 comentários
2,027 usuários