Index: trunk/l10n-support/pology/lang/gl/rules/expression.rules =================================================================== --- trunk/l10n-support/pology/lang/gl/rules/expression.rules (revision 1535396) +++ trunk/l10n-support/pology/lang/gl/rules/expression.rules (nonexistent) @@ -1,137 +0,0 @@ -# Internal rules intended to check for common mistakes in Galician L10n, -# and to promote the usage of standard expressions. -# by the Proxecto Trasno (proxecto@trasno.net) -# License: BSD 3-clause -# Copyright (c) 2012 Proxecto Trasno -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of the Proxecto Trasno nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL PROXECTO TRASNO BE LIABLE FOR ANY -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -include file="filter.include" - -# «failed to» -> «produciuse un erro ao + infinitivo» -{\bfailed\sto\s}i -valid after="(^|\.|:|,|;|\()\s?" -id="noPT-2012-expression_failed to" -# valid msgstr="produciuse\sun\serro\sao\s(pór|\w+[aei]r)" -# valid env="kde" before="find\b" -hint="«failed to» -> «produciuse un erro ao + infinitivo»" - -# «verbing word word failed.» -> «produciuse un erro ao + infinitivo» -{\b\w+ing\s(\w+\s){,5}?failed(\.|,|$)}i -id="noPT-2012-expression_failed." -valid msgstr="produciuse\sun\serro\sao\s(pór|\w+[aei]r)" -hint="«participlepresent word+ failed.» -> «produciuse un erro ao + infinitivo»" - -# «An error occurred while doing» -> «produciuse un erro ao + infinitivo» -{\ban\serror\soccurred\s(while\s)?\w+ing}i -id="PT-2012-expression_an error occurred doing" -valid msgstr="produciuse\sun\serro\sao\s(pór|\w+[aei]r)" -hint="«An error occurred (while) verb_ing» -> «produciuse un erro ao + infinitivo»" - -# «There was an error while doing» -> «produciuse un erro ao + infinitivo» -{\b(there\swas\san\s)?error\s(while\s)?\w+ing}i -valid !span="there\swas\san\s" after="\w+ed\san\s" #Isto apártase da trasnada -valid !span="there\swas\san\s" after="(^|\.\s)" # Como funcione isto é que non sei nada de regexes -valid span="error\sduring\b" -valid span="error\scausing\b" -id="noPT-2012-expression_(there was an) error (while) doing" -valid msgstr="produciuse\sun\serro\sao\s(pór|\w+[aei]r)" -valid span="while" msgstr="\bProduciuse\sun\serro\smentres\sse\s\w+(ía|aba)" env="kde" #Isto apártase da Trasnada -valid span="while" env="kde" msgstr="\bProduciuse\sun\serro\s(de\s\w+)[,2]\sao\s(pór|\w+[aei]r)­" # Isto apartase da Trasnada -valid env="gnome" msgstr="\bproduciuse\sun\serro\s\w+[,6]\sao\s(pór|\w+[aei]r)" #Isto tampouco é moi axustado á Trasnada -hint="«(There was an) error (while) verb_ing» -> «produciuse un erro ao + infinitivo»" - -# «Can not be ed» -> «Non é/foi posíbel infinitivo» -{\bcan(\snot|not|n't)\sbe\s\w+ed\b}i -id="noPT-2012-expression_cannot be" -valid msgstr="\bnon\s(é|foi|ha\sser|sexa)\sposíbel\s(pór|\w+[aei]r)" -valid msgstr="\bnon\s(é|foi|ha\sser|sexa)\sposíbel\s\w+[aei]l(a|o)s?" -hint="«can not be ed» -> «Non é/foi/ha ser/sexa posíbel infinitivo»" - -# «Can not» -> «Non é/foi posíbel infinitivo» -{\bCan(\snot|not|n't)} -id="PT-2012-expression_cannot infinitivo" -valid msgstr="\b(N|n)on\s(é|foi)\sposíbel\spór" -valid msgstr="\b(N|n)on\s(é|foi)\sposíbel\s\w+[aei]r" -hint="«Can not» -> «Non é/foi posíbel infinitivo»" - -# «Could not» -> «Non é/foi posíbel infinitivo» -{\bcould(\snot|n't)}i -valid !after="(^|\.|:|,|;|\()\s?" -id="noPT-2012-expression_could not infinitivo" -valid msgstr="\bnon\s(é|foi)\sposíbel\s(pospor|pór|\w+[aeií]r)" -valid msgstr="\bnon\s(é|foi)\sposíbel\s\w+(a|e|i)l(a|o)s?" -#o que segue apártase da Trasnada -valid msgstr="\bnon\spoida\s(pó|(\w+[aei])r)\b" env="kde" -valid msgstr="\bnon\s(é|foi)\b(capaz|quen)\bde\b(pó|(\w+[aei])r)\b" env="kde" -valid msgstr="\bnon\sse\b\w+(ou|aron)\b" env="kde" -hint="«Could not» -> «Non é/foi posíbel infinitivo»" - -# «Could not be participio» -> «Non é/foi posíbel infinitivo» -{\bcould(\snot|n't)\sbe\b}i -id="noPT-2012-expression_could not be" -valid msgstr="\bnon\s(é|foi)\sposíbel\s(pór|\w+[aei]r)" -valid msgstr="\bnon\s(é|foi)\sposíbel\s\w+[aei]l(a|o)s?" -#o que segue apártase da Trasnada -valid msgstr="\bnon\bpoida\s(pó|(\w+[aei])r)\b" env="kde" -valid msgstr="\bnon\b(é|foi)\b(capaz|quen)\bde\b(pó|(\w+[aei])r)\b" env="kde" -hint="«could not be» -> «Non é/foi posíbel infinitivo»" - -# «Unable to verb» -> «Non é/foi posíbel infinitivo» -{\bunable\sto}i -id="noPT-2012-expression_unable to" -valid after="(be|is|are|was|were)\s" -# # valid !after="(^|:|\.)\s?" # normalmente vai despois de algo disto. -valid after="(^|\(|,|\.|\*|;)\s?" msgstr="\bnon\s(é|foi)\sposíbel\s(pór|\w+[aei]r)" -valid after=":\s?" !env="kde" msgstr="\bnon\s(é|foi)\sposíbel\s(pór|\w+[aei]r)" -valid after=":\s?" msgstr="\bnon\sfoi\sposíbel\s(pór|\w+[aei]r)" env="kde" #xa que estamos -hint="«unable to» -> «non é/foi posíbel + infinitivo»" - -# «Non se puido» -> «Non foi posíbel» -# Pero só en determinadas frases habituais. -[\bnon\sse\sp(uido|ode)\b]i -valid after="^" -id="PT-2012-expression-gl_non se puido" -#valid msgid="^Can\'t\b" -#valid msgid="^Can\snot\b" -#valid msgid="^Cannot\b" -#valid msgid="^Couldn\'t\b" -#valid msgid="^Could\snot\b" -#valid msgid="\bfailed\sto\s" -valid msgid="\bcan\'t\sbe\s\S+ed\b" -valid msgid="\bcan\s?not\sbe\s\S+ed\b" -valid msgid="\bcouldn\'t\sbe\s\S+ed\b" -valid msgid="\bcould\snot\sbe\s\S+ed\b" -hint="non se puido -> non é/foi posíbel" - -# «fallo ao» -> «produciuse un erro ao» -[\bfallou?\sao\b]i -id="PT-2012-expression-gl_fallo ao" -# valid after="\bproduciuse\sun\s" -hint="fallo ao -> produciuse un erro ao" - -# «Houbo un erro ao» -> «Produciuse un erro ao» -[\bhoubo\sun\serro\sao\b]i -id="PT-2012-expression-gl_houbo un erro ao" -hint="houbo un erro ao -> Produciuse un erro ao" Index: trunk/l10n-support/pology/lang/gl/rules/n11n.rules =================================================================== --- trunk/l10n-support/pology/lang/gl/rules/n11n.rules (revision 1535396) +++ trunk/l10n-support/pology/lang/gl/rules/n11n.rules (revision 1535397) @@ -1,154 +1,261 @@ # Normalization rules contributed by individual people that have not been # ratified by Proxecto Trasno. # License: BSD 3-clause # Copyright (c) 2010, 2011, 2012, 2014 Proxecto Trasno # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Proxecto Trasno nor the # names of its contributors may be used to endorse or promote products # derived from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL PROXECTO TRASNO BE LIABLE FOR ANY # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - include file="filter.include" + ######### #Regras que afectan ao modelo de lingua ######### # Evitar o uso da segunda forma do artigo [\b[A-Za-z]+-l(o|a)s?(\b|\s)]i id="clGL-modling_alomorfoartigo" hint="evitar o uso da segunda forma do artigo" # Prefírese a terminación en -aría(s), agás palabras obrigadas como batería, galería... [\b[A-Za-z]+erías?(\s|\b)]i valid span="^(alm|bat|deb|esquec|gal|hab|mensax|pod|qu|quer|ref|ser|s|t)ería" id="clGL-modling_aria" hint="prefírese a terminación en -aría" # Prefírese contracción prep(a)+art(o) -> ao , non "ó" [\bós?\s]i id="clGL-modling_ao" hint="prep(a) + art(o) -> ao" # Ca min/ti/el/ela/nos/nosoutros/vos/vosoutros/eles/elas. [\bca\s]i valid !before="(?!(min|ti|el|ela|si|min|nos|vos|nosoutr(o|a)s|vosoutr(o|a)s|el(e|a)s))\b" # ese valid cacha o erro ortográfico de non marcar a contracción # da comparativa ca + artigo determinado (a/o), polo menos nalgúns casos id="clGL-modling_ca" hint="usar «cá» (que + a) cando sexa imprescindíbel" # Coma min/ti/el/ela/nos/nosoutros/vos/vosoutros/eles/elas. [\bcoma\s(?!(min|ti|el|si|min|ela|nos|vos|nosoutr(o|a)s|vosoutr(o|a)s|el(e|a)s))]i valid after="\bpuntos?\se\s" # «puntos e comas» valid after="\bda\s" # «algo da coma» → refírese ao «,»- valid after="\bunha\s" # «unha coma» id="clGL-modling_coma" hint="usar «coma» cando sexa imprescindíbel" # Evitar usar ¿ e ¡ (interrogación e exclamación iniciais) [(¡|¿)]i id="clGL-modling_interrogacion-excl-iniciais" hint="evitar usar sinais iniciais de interrogación ou exclamación" ##### #Acordos das trasnadas ##### # Prefírese a terminación en bel [\b[\w\-_]+bles?(\s|\b)]i # excepcións valid span="(fe|ca|dou|tre|ipta)bles?" valid span="[\-_]+" valid span="robles" after="eduardo\s" # nome dun programador valid span="\bmarble\b" # nome dun programa valid span="\bGrenoble\b" # cidade valid span="\bHubble\b" # o satélite telescopio valid span="\bGabble\b" # un servizo valid span="\bPebbles?\b" # un produto valid span="tables?\b" # moitos falsos positivos, grazas a Latex id="PT-2011-gl_bel" hint="terminación en -bel" # descarta o uso de «dende» en favor de «desde» [\bdende\b]i id="PT-2011-gl_dende" hint="dende -> desde" # descarta o uso de «vacío» en favor de «baleiro» [\bvac(ío|ía|ia|ie|io)]i id="PT-2011-gl_vacío" hint="vacío -> baleiro" #evitar usar «lanzar» en favor de «iniciar» (un executábel) [\blanz]i valid !msgid="\blaunch" valid ctx="X-KDE-Keywords" id="PT-2011-gl_lanzar" hint="lanzar -> iniciar" # preferir «lista» e non «listaxe» [\blistaxe]i id="PT-2012-gl_listaxe" hint="«listaxe» -> «lista»?" # usar «son» no canto de «audio» [\baudio]i valid ctx="X-KDE-Keywords" valid before="visual" valid before="\s?cd" env="kde" # «audiocd» é un kioslave id="PT-2011-gl_audio" hint="audio -> son" # preferir «computador» e non «computadora» [\bcomputadora]i id="PT-2012-gl_computadora" hint="«computadora» -> «computador»?" ###### # Fin dos acordos das trasnadas ###### # avisar de «tódolos» [\btódol(a|o)s]i id="noPT-gl_tódolos" hint="«tódolos» -> «todos os»?" # avisar de «carpeta» [\bcarpeta]i id="noPT-gl_carpeta" hint="«carpeta» -> «cartafol»?" # usar a conxunción adversativa «pero», retirando os usos de «mais» [\bmais\b]i id="clGl-all_mais" hint="«mais» -> «pero»" ##### # Gramática (this shouldn't be here, but the grammar checker is not always used as should be...) ##### # «ir a infinitivo» -> «ir ìnfinitivo» [\b(ir|ías?|vou|vas|vai)\sa\s\w+[aei]r\b]i id="noPT-gl_ir+a+infinitivo" hint="«ir a infinitivo» -> «ir ìnfinitivo»" + +# «failed to» -> «produciuse un erro ao + infinitivo» +{\bfailed\sto\s}i +valid after="(^|\.|:|,|;|\()\s?" +id="noPT-2012-expression_failed to" +# valid msgstr="produciuse\sun\serro\sao\s(pór|\w+[aei]r)" +# valid env="kde" before="find\b" +hint="«failed to» -> «produciuse un erro ao + infinitivo»" + +# «verbing word word failed.» -> «produciuse un erro ao + infinitivo» +{\b\w+ing\s(\w+\s){,5}?failed(\.|,|$)}i +id="noPT-2012-expression_failed." +valid msgstr="produciuse\sun\serro\sao\s(pór|\w+[aei]r)" +hint="«participlepresent word+ failed.» -> «produciuse un erro ao + infinitivo»" + +# «An error occurred while doing» -> «produciuse un erro ao + infinitivo» +{\ban\serror\soccurred\s(while\s)?\w+ing}i +id="PT-2012-expression_an error occurred doing" +valid msgstr="produciuse\sun\serro\sao\s(pór|\w+[aei]r)" +hint="«An error occurred (while) verb_ing» -> «produciuse un erro ao + infinitivo»" + +# «There was an error while doing» -> «produciuse un erro ao + infinitivo» +{\b(there\swas\san\s)?error\s(while\s)?\w+ing}i +valid !span="there\swas\san\s" after="\w+ed\san\s" #Isto apártase da trasnada +valid !span="there\swas\san\s" after="(^|\.\s)" # Como funcione isto é que non sei nada de regexes +valid span="error\sduring\b" +valid span="error\scausing\b" +id="noPT-2012-expression_(there was an) error (while) doing" +valid msgstr="produciuse\sun\serro\sao\s(pór|\w+[aei]r)" +valid span="while" msgstr="\bProduciuse\sun\serro\smentres\sse\s\w+(ía|aba)" env="kde" #Isto apártase da Trasnada +valid span="while" env="kde" msgstr="\bProduciuse\sun\serro\s(de\s\w+)[,2]\sao\s(pór|\w+[aei]r)­" # Isto apartase da Trasnada +valid env="gnome" msgstr="\bproduciuse\sun\serro\s\w+[,6]\sao\s(pór|\w+[aei]r)" #Isto tampouco é moi axustado á Trasnada +hint="«(There was an) error (while) verb_ing» -> «produciuse un erro ao + infinitivo»" + +# «Can not be ed» -> «Non é/foi posíbel infinitivo» +{\bcan(\snot|not|n't)\sbe\s\w+ed\b}i +id="noPT-2012-expression_cannot be" +valid msgstr="\bnon\s(é|foi|ha\sser|sexa)\sposíbel\s(pór|\w+[aei]r)" +valid msgstr="\bnon\s(é|foi|ha\sser|sexa)\sposíbel\s\w+[aei]l(a|o)s?" +hint="«can not be ed» -> «Non é/foi/ha ser/sexa posíbel infinitivo»" + +# «Can not» -> «Non é/foi posíbel infinitivo» +{\bCan(\snot|not|n't)} +id="PT-2012-expression_cannot infinitivo" +valid msgstr="\b(N|n)on\s(é|foi)\sposíbel\spór" +valid msgstr="\b(N|n)on\s(é|foi)\sposíbel\s\w+[aei]r" +hint="«Can not» -> «Non é/foi posíbel infinitivo»" + +# «Could not» -> «Non é/foi posíbel infinitivo» +{\bcould(\snot|n't)}i +valid !after="(^|\.|:|,|;|\()\s?" +id="noPT-2012-expression_could not infinitivo" +valid msgstr="\bnon\s(é|foi)\sposíbel\s(pospor|pór|\w+[aeií]r)" +valid msgstr="\bnon\s(é|foi)\sposíbel\s\w+(a|e|i)l(a|o)s?" +#o que segue apártase da Trasnada +valid msgstr="\bnon\spoida\s(pó|(\w+[aei])r)\b" env="kde" +valid msgstr="\bnon\s(é|foi)\b(capaz|quen)\bde\b(pó|(\w+[aei])r)\b" env="kde" +valid msgstr="\bnon\sse\b\w+(ou|aron)\b" env="kde" +hint="«Could not» -> «Non é/foi posíbel infinitivo»" + +# «Could not be participio» -> «Non é/foi posíbel infinitivo» +{\bcould(\snot|n't)\sbe\b}i +id="noPT-2012-expression_could not be" +valid msgstr="\bnon\s(é|foi)\sposíbel\s(pór|\w+[aei]r)" +valid msgstr="\bnon\s(é|foi)\sposíbel\s\w+[aei]l(a|o)s?" +#o que segue apártase da Trasnada +valid msgstr="\bnon\bpoida\s(pó|(\w+[aei])r)\b" env="kde" +valid msgstr="\bnon\b(é|foi)\b(capaz|quen)\bde\b(pó|(\w+[aei])r)\b" env="kde" +hint="«could not be» -> «Non é/foi posíbel infinitivo»" + +# «Unable to verb» -> «Non é/foi posíbel infinitivo» +{\bunable\sto}i +id="noPT-2012-expression_unable to" +valid after="(be|is|are|was|were)\s" +# # valid !after="(^|:|\.)\s?" # normalmente vai despois de algo disto. +valid after="(^|\(|,|\.|\*|;)\s?" msgstr="\bnon\s(é|foi)\sposíbel\s(pór|\w+[aei]r)" +valid after=":\s?" !env="kde" msgstr="\bnon\s(é|foi)\sposíbel\s(pór|\w+[aei]r)" +valid after=":\s?" msgstr="\bnon\sfoi\sposíbel\s(pór|\w+[aei]r)" env="kde" #xa que estamos +hint="«unable to» -> «non é/foi posíbel + infinitivo»" + +# «Non se puido» -> «Non foi posíbel» +# Pero só en determinadas frases habituais. +[\bnon\sse\sp(uido|ode)\b]i +valid after="^" +id="PT-2012-expression-gl_non se puido" +#valid msgid="^Can\'t\b" +#valid msgid="^Can\snot\b" +#valid msgid="^Cannot\b" +#valid msgid="^Couldn\'t\b" +#valid msgid="^Could\snot\b" +#valid msgid="\bfailed\sto\s" +valid msgid="\bcan\'t\sbe\s\S+ed\b" +valid msgid="\bcan\s?not\sbe\s\S+ed\b" +valid msgid="\bcouldn\'t\sbe\s\S+ed\b" +valid msgid="\bcould\snot\sbe\s\S+ed\b" +hint="non se puido -> non é/foi posíbel" + +# «fallo ao» -> «produciuse un erro ao» +[\bfallou?\sao\b]i +id="PT-2012-expression-gl_fallo ao" +# valid after="\bproduciuse\sun\s" +hint="fallo ao -> produciuse un erro ao" + +# «Houbo un erro ao» -> «Produciuse un erro ao» +[\bhoubo\sun\serro\sao\b]i +id="PT-2012-expression-gl_houbo un erro ao" +hint="houbo un erro ao -> Produciuse un erro ao"