.\" -*- coding: UTF-8 -*- .de Id .ds Rv \\$3 .ds Dt \\$4 .. .\"if n .pl +(135i-\n(.pu) .Id $Id$ .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH PROCMAILSC 5 \*(Dt BuGless .rn SH Sh .de SH .br .ne 11 .Sh "\\$1" .. .rn SS Ss .de SS .br .ne 10 .Ss "\\$1" .. .rn TP Tp .de TP .br .ne 9 .Tp \\$1 .. .rn RS Rs .de RS .na .nf .Rs .. .rn RE Re .de RE .Re .fi .ad .. .de Sx .PP .ne \\$1 .RS .. .de Ex .RE .PP .. .na .SH NOMBRE procmailsc \- técnica puntuación de peso de procmail .SH SINOPSIS [\fB*\fP] \fBw^x condición\fP .ad .SH DESCRIPCIÓN Además de las condiciones tradicionales verdadero o falso que puede especificar en una receta, puede usar técnicas de puntuación de peso para decidir si una cierta receta concuerda o no. Cuando se usa la puntuación de peso en una receta, la puntuación final de esa receta debe ser positiva para que concuerde. Una cierta condición puede contribuir a la puntuación si le sitúa un `peso' (\fBw\fP) y un `exponente' (\fBx\fP). Esto lo hace precediendo la condición (en la misma línea) con: .RS \fBw^x\fP .RE Considerando que \fBw\fP y \fBx\fP son números reales entre \-2147483647.0 y 2147483647.0. .SH "Condiciones de expresión regular sopesadas" La primera vez que se encuentra la expresión regular, se añadirá \fIw\fP a la puntuación. La segunda vez que la encuentre añadirá \fIw*x\fP La tercera vez que la encuentre añadirá \fIw*x*x\fP La cuarta vez añadirá \fIw*x*x*x\fP y así sucesivamente. Esto se puede describir con la siguiente fórmula concisa: .Sx 4 n n k\-1 x \- 1 w * Sum x = w * \-\-\-\-\-\-\- k=1 x \- 1 .Ex Representa la puntuación total añadida para esta condición si se encuentran \fBn\fP concordancias. Observe que se pueden hacer las siguientes distinciones de casos: .TP 8 x=0 Sólo la primera concordancia contribuirá w a la puntuación. Se ignoran cualquier concordancia posterior. .TP x=1 Cada concordancia contribuirá el mismo w a la puntuación. La puntuación crece línealmente con el número de concordancias encontradas. .TP 0 L .Ex generará una puntuación adicional de: .Sx 4 x / M \e w * | \-\-\- | \e L / .Ex Y: .Sx 1 * w^x < L .Ex generará una puntuación adicional de: .Sx 4 x / L \e w * | \-\-\- | \e M / .Ex .PP En ambos casos, si L=M, esto añadirá w a la puntuación. En el primer caso, sin embargo, se favorecen los correos grandes, en el último se favorecen los pequeños. Aunque x se puede variar para un mejor ajuste el decrecimiento de la función, el uso típico fija x=1. .SH MISCELÁNEA Puede consultar la puntuación total de todas las condiciones de una receta de la variable de entorno \fB$=\fP. Esta variable se fija \fIcada vez\fP cuando procmail ha analizado todas las condiciones de una receta (incluso si la receta no está siendo ejecutada). .SH EJEMPLOS La siguiente receta separa tdos los correos que tienen más de 150 líneas en el cuerpo. La primera condición contiene una expresión regular vacía que, debido a que siempre se verifica, se usa para dar a nuestra puntuación un desplazamiento negativo. La segunda condición concuerda con cada línea del correo y consume el desplazamiento negativo previo que le dimos (un punto por línea). Al final, la puntuación será sólo positiva si el correo contiene más de 150 líneas. .Sx 5 :0 Bh * \-150^0 * 1^1 ^.*$ /dev/null .Ex Supongamos que tiene una carpeta prioritaria que siempre lee primero. La siguiente receta toma la prioridad del correo y lo almacena en carpetas especiales. La primera condición es regular, i.e. no contribuye a la puntuación, simplemente tiene que satisfacerse. Las otras condiciones describen cosas como: john and claire normalmente tienen cosas importantes que decir, las reuniones son normalmente importantes, las respuestas se favorecen un poco, los mail respecto a Elvis (esto es sólo un ejemplo :\-\) se favorecen (cuando más se mencione, más se favorece el correo , pero la máxima puntuación extra debida a Elvis será 4000, no importa con qué frecuencia sea mencionado), muchas líneas marcadas como de respuesta no no gustan, los "smileys" son apreciados (la puntuación de ellos alcanza un máximo de 3500, esas tres personas normalmente no envían correos interesantes, lo correos serían preferentemente pequeños (v.g. mails con 2000 octetos de largos puntuarán \-100, 4000 bytes de largos \-800). Como puede ver, si alguien de esas personas poco interesantes envía correo, el coreo todavía tiene una oportunidad de aterrizar en la carpeta prioritaria, v.g. si es sobre una reunión (meeting), o si contiene al menos dos "smileys". .Sx 11 :0 HB * !^Precedence:.*(junk|bulk) * 2000^0 ^From:.*(john@home|claire@work) * 2000^0 ^Subject:.*meeting * 300^0 ^Subject:.*Re: * 1000^.75 elvis|presley * \-100^1 ^> * 350^.9 :\-\e) * \-500^0 ^From:.*(boss|jane|henry)@work * \-100^3 > 2000 carpeta_prioritaria .Ex Si está suscrito a una lista de correo y le gustaría leer los mensajes de calidad, entonces las siguientes recetas podrían realizar el truco. Primero estamos seguros que el correo proviene de la lista de correo, Entonces comprobamos si es de ciertas personas de las que valoramos su opinión, o sobre un motivo sobre el que queremos saber absolutamente todo. Si es así, lo guardamos. En otro caso verificamos si la razón de líneas citadas del original es al menos 1:2. Si lo excede separamos el correo. Todo lo que sobreviva a la verificación previa se almacena. .Sx 15 :0 ^From mailinglist\-request@some.where { :0: * ^(From:.*(paula|bill)|Subject:.*skiing) mailinglist :0 Bh * 20^1 ^> * \-10^1 ^[^>] /dev/null :0: mailinglist } .Ex Para más ejemplos debería mirar en la página de manual \fBprocmailex\fP(5). .SH ADVERTENCIAS Debido a que esto incrementa la búsqueda por un orden de magnitud, el egrep interno de procmail siempre buscará la concordancia \fImás corta\fP por la izquierda salvo que esté determinado qué asignar a \fBMATCH\fP, en cuyo caso busca la concordancia \fImás larga\fP por la izquierda. V.g. la concordancia \fImás corta\fP por la izquierda, por él mismo, la expresión regular: .TP \&\fB.*\fP siempre concuerda con una cadena de longitud cero en el mismo sitio. .TP \&\fB.+\fP siempre concordará con un carácter (salvo nueva línea, por supuesto). .SH "VÉASE TAMBIÉN" .na .nh \fBprocmail\fP(1), \fBprocmailrc\fP(5), \fBprocmailex\fP(5), \fBsh\fP(1), \fBcsh\fP(1), \fBegrep\fP(1), \fBgrep\fP(1), .hy .ad .SH ERRORES Si, en una condición de longitud especifica un \fBx\fP que causa un desbordamiento, procmail está a la meced de la función \fBpow\fP(3) de su biblioteca matemática. .PP No se aceptan número en coma flotante en formato exponencial (v.g. 12e5). .SH MISCELÁNEA Tan pronto como se alcanza `mas infinito' (2147483647), cualquier condición de \fIpeso\fP simplemente se salta. .PP Tan pronto como se alcanza `menos infinito' (\-2147483647), la condición se considerará como `sin concordancia' y la receta termina antes. .SH NOTAS Si en una expresión regular fórmula sopesada \fB0 .RE .\".if n .pl -(\n(.tu-1i) .rm SH .rn Sh SH .rm SS .rn Ss SS .rm TP .rn Tp TP .rm RS .rn Rs RS .rm RE .rn Re RE .PP .SH TRADUCCIÓN La traducción al español de esta página del manual fue creada por Pedro Pablo Fábrega . .PP Esta traducción es documentación libre; lea la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. .PP Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a .MT debian-l10n-spanish@lists.debian.org .ME .