Skip to content

Commit 8afe8c2

Browse files
authored
Merge pull request #11675 from languagetool-org/lt_marcoagpinto_20251127_1816
[pt] Replaced obsolete rule with new one ID:SIMPLIFICAR_DE_VOCÊS_VOSSO_SEU
2 parents 7d6baa0 + fa493d6 commit 8afe8c2

File tree

1 file changed

+81
-46
lines changed
  • languagetool-language-modules/pt/src/main/resources/org/languagetool/rules/pt/pt-PT

1 file changed

+81
-46
lines changed

languagetool-language-modules/pt/src/main/resources/org/languagetool/rules/pt/pt-PT/style.xml

Lines changed: 81 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -4064,52 +4064,87 @@ USA
40644064
<category id='SHORTEN_IT_PT_PT' name="[pt-PT] Linguagem concisa" type="style">
40654065

40664066

4067-
<rule id='SIMPLIFICAR_A_XXX_DE_VOCÊS' name="[pt-PT][Simplificar] A XXX de vocês → a vossa XXX" tone_tags="objective">
4068-
<!-- IDEA shorten_it -->
4069-
<antipattern>
4070-
<token regexp='yes'>[ao]s?</token>
4071-
<token postag='N[CP].+|AQ.+' postag_regexp='yes'/>
4072-
<token inflected='yes' regexp='no'>ser</token>
4073-
<token>de</token>
4074-
<token>vocês</token>
4075-
<token postag='_PUNCT|SENT_END' postag_regexp='yes'/>
4076-
<example>A água é de vocês.</example>
4077-
<example>A culpa é de vocês.</example>
4078-
<example>A culpa são de vocês.</example>
4079-
<example>A escolha é de vocês.</example>
4080-
</antipattern>
4081-
<antipattern>
4082-
<token regexp='yes'>[ao]</token>
4083-
<token postag='N[CP].S.+|AQ..S.+' postag_regexp='yes'/>
4084-
<token>de</token>
4085-
<token>vocês</token>
4086-
<token postag='VM[IN].3P0' postag_regexp='yes'/>
4087-
<example>É o momento de vocês ouvirem esta informação em sua totalidade.</example>
4088-
<example>Acha a pessoa mais durona, você quebra essa pessoa, e o resto de vocês entram na linha.</example>
4089-
</antipattern>
4090-
<pattern>
4091-
<marker>
4092-
<token regexp='yes'>[ao]s?</token>
4093-
<token skip='1' postag='N[CP].+|AQ.+' postag_regexp='yes'><exception postag_regexp='yes' postag='[DP].+'/></token> <!-- skip=1 is the ideal to avoid weird results -->
4094-
<token>de<exception scope='previous' postag_regexp='yes' postag='SPS.+|DI.+|Z0.+|VMI.3P0'/></token>
4095-
<token>vocês</token>
4096-
</marker>
4097-
<token><exception postag_regexp='yes' postag='Z0.+'/></token>
4098-
</pattern>
4099-
<message>&simplify_msg;</message>
4100-
<suggestion>\1 voss<match no='1' case_conversion='alllower'/> <match no='2' include_skipped='all'/></suggestion>
4101-
<example correction="A vossa opinião"><marker>A opinião de vocês</marker> é importante.</example>
4102-
<example correction="As vossas opiniões sinceras"><marker>As opiniões sinceras de vocês</marker> são importantes.</example>
4103-
<example correction="O vosso carro"><marker>O carro de vocês</marker> é bonito.</example>
4104-
<example correction="Os vossos carros novos"><marker>Os carros novos de vocês</marker> são bonitos.</example>
4105-
<example>Fechem a porta atrás de vocês.</example>
4106-
<example>Talvez os três de vocês precisem se separar por hoje.</example>
4107-
<example>Acaso disse eu sequer uma palavra a algum de vocês dois?</example>
4108-
<example>Posso contar com a ajuda de vocês dois?</example>
4109-
<example>As pessoas rirão de vocês.</example>
4110-
<example>As pessoas gostam de vocês.</example>
4111-
<example>Contem-nos algo sobre o seu (de vocês) passado!</example>
4112-
</rule>
4067+
<rulegroup id='SIMPLIFICAR_DE_VOCÊS_VOSSO_SEU' name="[pt-PT][Simplificar] 'de vocês' → vosso/seu" tone_tags='objective' default='temp_off'>
4068+
<!-- ChatGPT 5 and new disambiguator for 2026+ -->
4069+
4070+
<rule> <!-- #1: é/são de você -> é/são sua(s)/seu(s) -->
4071+
<pattern>
4072+
<token postag='DA0[FM].+' postag_regexp='yes'/>
4073+
<token skip='1' postag='NC.+|AQ.+' postag_regexp='yes'><exception postag_regexp='yes' postag='V.+|SPS.+|Z0.+'/></token>
4074+
<token inflected='yes' regexp='no'>ser<exception scope='previous' postag_regexp='yes' postag='_PUNCT|V.+|SPS.+|Z0.+'/></token>
4075+
<marker>
4076+
<token>de</token>
4077+
<token>você</token>
4078+
</marker>
4079+
</pattern>
4080+
<message>&simplify_msg;</message>
4081+
<suggestion><match no='1' postag='D.0(..)0' postag_replace='DP3$1S'>seu</match></suggestion>
4082+
<example correction="sua">A culpa é <marker>de você</marker>.</example>
4083+
<example correction="suas">As culpas são <marker>de você</marker>.</example>
4084+
<example correction="seu">O carro é <marker>de você</marker>.</example>
4085+
<example correction="seus">Os carros são <marker>de você</marker>.</example>
4086+
</rule>
4087+
4088+
<rule> <!-- #2: é/são de vocês -> é/são vossa(s)/vosso(s) -->
4089+
<pattern>
4090+
<token postag='DA0[FM].+' postag_regexp='yes'/>
4091+
<token skip='1' postag='NC.+|AQ.+' postag_regexp='yes'><exception postag_regexp='yes' postag='V.+|SPS.+|Z0.+'/></token>
4092+
<token inflected='yes' regexp='no'>ser<exception scope='previous' postag_regexp='yes' postag='_PUNCT|V.+|SPS.+|Z0.+'/></token>
4093+
<marker>
4094+
<token>de</token>
4095+
<token>vocês</token>
4096+
</marker>
4097+
</pattern>
4098+
<message>&simplify_msg;</message>
4099+
<suggestion><match no='1' postag='D.0(..)0' postag_replace='DP2$1P'>vosso</match></suggestion>
4100+
<example correction="vossa">A culpa é <marker>de vocês</marker>.</example>
4101+
<example correction="vossas">As culpas são <marker>de vocês</marker>.</example>
4102+
<example correction="vosso">O carro é <marker>de vocês</marker>.</example>
4103+
<example correction="vossos">Os carros são <marker>de vocês</marker>.</example>
4104+
</rule>
4105+
4106+
<rule> <!-- #3: XXX de você -> sua(s)/seu(s) XXX -->
4107+
<pattern>
4108+
<token postag='SENT_START|_PUNCT' postag_regexp='yes'/> <!-- The only way for rule #3 to work properly -->
4109+
<token postag='DA0[FM].+' postag_regexp='yes'/>
4110+
<marker>
4111+
<token skip='1' postag='NC.+|AQ.+' postag_regexp='yes'><exception postag_regexp='yes' postag='V.+|SPS.+|Z0.+'/></token>
4112+
<token>de<exception scope='previous' postag_regexp='yes' postag='_PUNCT|V.+|SPS.+|Z0.+'/></token>
4113+
<token>você</token>
4114+
</marker>
4115+
<token postag='SENT_END|_PUNCT|SPS00' postag_regexp='yes'/> <!-- The only way for rule #3 to work properly, SPS00="conforme", etc. -->
4116+
</pattern>
4117+
<message>&simplify_msg;</message>
4118+
<suggestion><match no='2' postag='D.0(..)0' postag_replace='DP3$1S'>seu</match> <match no='3' include_skipped='all'/></suggestion>
4119+
<example correction="sua culpa">A <marker>culpa de você</marker>.</example>
4120+
<example correction="suas culpas">As <marker>culpas de você</marker>.</example>
4121+
<example correction="seu carro">O <marker>carro de você</marker>.</example>
4122+
<example correction="seus carros">Os <marker>carros de você</marker>.</example>
4123+
</rule>
4124+
4125+
<rule> <!-- #4: XXX de vocês -> XXX vossa(s)/vosso(s) -->
4126+
<pattern>
4127+
<token postag='DA0[FM].+' postag_regexp='yes'><exception scope='previous' postag_regexp='yes' regexp='yes' inflected='yes'>ser|haver|existir</exception></token>
4128+
<marker>
4129+
<token skip='1' postag='NC.+|AQ.+' postag_regexp='yes'><exception postag_regexp='yes' postag='V.+|SPS.+|Z0.+'/></token>
4130+
<token>de<exception scope='previous' postag_regexp='yes' postag='_PUNCT|V.+|SPS.+|Z0.+'/></token>
4131+
<token>vocês</token>
4132+
</marker>
4133+
<token><exception postag_regexp='yes' postag='Z0.+'/></token>
4134+
</pattern>
4135+
<message>&simplify_msg;</message>
4136+
<suggestion><match no='1' postag='D.0(..)0' postag_replace='DP2$1P'>vosso</match> <match no='2' include_skipped='all'/></suggestion>
4137+
<example correction="vossa culpa">A <marker>culpa de vocês</marker>.</example>
4138+
<example correction="vossas culpas">As <marker>culpas de vocês</marker>.</example>
4139+
<example correction="vosso carro">O <marker>carro de vocês</marker>.</example>
4140+
<example correction="vossos carros">Os <marker>carros de vocês</marker>.</example>
4141+
<example>Talvez os três de vocês precisem se separar por hoje.</example>
4142+
<example>Existe a possibilidade de vocês poderem... ser mais que amigos?</example>
4143+
<example>Eu posso contar com a ajuda de vocês dois?</example>
4144+
<example>Suponho que não queira me contar a história de vocês dois.</example>
4145+
<example>Francamente, para o bem de vocês dois.</example>
4146+
</rule>
4147+
</rulegroup>
41134148

41144149

41154150
<rule id='AVIÃO_DE_COMBATE_PT_PT' name="[pt-PT][Simplificar] Avião de combate → caça" tone_tags="objective">

0 commit comments

Comments
 (0)