El Martes, 7 de Agosto de 2007 18:01, Pablo Manuel Rizzo escribió: | On 8/7/07, Marcos Guglielmetti <[email protected]> wrote: | > El Martes, 7 de Agosto de 2007 14:27, minombresbond escribió: | > | no entendi el problema pero: | > | necesitas que los ' ' sean '\ ' ? | > | y si le das a | > | PALABRA=$( echo "$PALABRA" | sed 's/ /\\ /g' ) | > | te reemplaza los ' ' por '\ ' | > | entonces en la base de datos ya no necesitas poner | > | las '\' antes de los espacios | > | > Es casi la solución, como es lógico, me sirve ;-), había pensado en | > hacer eso: reformar el diccionario cada vez que debe ser procesado (de | > todos modos lo hago, lo filtro de comentarios y otras cosas), así que | > gracias, me sirve, aunque lo implementaré de otra forma para que sea más | > eficiente | | Se me ocurre que podrías optimizar mucho la velocidad utilizando | scripts de sed, ¿velocidad a la hora de que sed reemplace palabras? | son archivos donde pones una debajo de otra una serie | de ER que querés que sed ejecute sobre un archivo. En tu caso cada | término a traducir sería una ER, algo así: | | diccionario.sed | -------------------------------------------- | s/esp01/port01/g | s/esp02/port02/g | s/esp03/port03/g | -------------------------------------------- Si, pero, ojo que el diccionario es más complejo... no sé si eso es tenido en cuenta en la propuesta: * permite definir una cantidad infinita de idiomas (tengo pensado abordar catalán, italiano y otras lenguas derivadas del latín en el futuro) * permite agregar cualquier tipo de marcas para filtrar equivalencias que no deben emplearse en determinados casos (ya lo estoy haciendo y funciona bien) * permite definir marcas para cualquier cosa, por ejemplo, evitar usos no normales de determinados términos (ya en uso) * permite definir marcas para identificar las clases de palabras (articulaciones, adjetivos, sustantivos, verbos, en plural, singular, masculino, femenino,etc.) [esto aún no fue necesario implementarlo] | Para simplificar eso al usuario que tiene que crear y/o modificar el | diccionario, podrías primero procesar un diccionario simplificado para | crear al archivo script anterio, por ejemplo en base a este | diccionario y la expresión que está a continuación del archivo: | | diccionario.dic | -------------------------------------------- | esp01=port01 | esp02=port02 | esp03=port03 | -------------------------------------------- | | cat diccionario.dic | sed -r -e "s/^(.*)/s\/\1/g" -e | "s/(.*)=(.*)/\1\/\2/g" -e "s/(.*)/\1\/g/g" > diccionario.sed | | Luego procesas el archivo todo de una así: | | sed -f diccionario.sed $ARCHIVO-temp > $ARCHIVO-traducido | Mmm.. a ver si comprendo, sed toma a diccionario.sed como un script que interpreta sólo él mismo, que sólo sed conoce, y nadie más, ese script de sed se utiliza para procesar el archivo de textos a ser traducido, creando un nuevo archivo resultante con la traducción. ¿Es así? Pero el script de sed (o el diccionario previo a convertirse en script de sed) ¿podría contener marcas? al estilo: autocrata/autócrata/ : dudas \ mãe\ /\ madre\ / #arraigada/convencida? tenía\ sido/había\ sido/ : dudas \ tornou\ /\ tornó\ / : anormal \ tornou\ /\ volvió\ / \ sinais\ /\ signos\ / : dudas masc. fem. # :Particularidades idiomáticas que se dan siempre? ável\ /able\ / : dudas ê/e/ : ptes ss/s/ : ptes qüe/cue/ : dudas : ptes velmente/blemente/ : dudas : ptes ô/ó/ : dudas : ptes ípio/ipio/ : dudas : ptes idade\ /idad\ / : dudas : ptes anha/aña/ : dudas : ptes \ çones/\ ciones/ : dudas : ptes \ criaci/\ creaci/ : dudas : ptes Por ejemplo, ": ptes" significa que esa equivalencia será tenida en cuenta sólo si estamos traduciendo desde pt a es, no a la inversa ": dudas" no procesará esa equivalencia si lo ordenamos a nivel general (podrían existir diferentes niveles de dudas,etc.) ": anormal": esa equivalencia será utilizada sólo si decidimos usar los usos menos normales, a nivel global | | Guarda! Que todo esto no lo probé, lo estoy escribiendo de memoria así | que primero quizá tenés que corregir algunos detalles, pero creo que | funciona este mecanismo. Ok, yo por ahora no lo entiendo casi nada, pero lo agregué a la sección de ayuda: http://www.musix.org.ar/wiki/index.php?title=Pt-es_ayudanos Para incorporarlo eventualmente en algún momento, te agradezco mucho el aporte! -- `&' # Marcos Guglielmetti, co-director de # Musix GNU+Linux, 100% Software Libre para artistas _#_ http://www.musix.org.ar (#) / O \ + archivos: ftp://musix.ourproject.org/pub/musix ( === ) Ecología: http://autosus.wordpress.com `---' Personal: http://marcospcmusica.wordpress.com "¡Ta, ta, ta, taaaa... ta!" http://es.wikiquote.org/wiki/El_Chavo_del_Ocho