tag:blogger.com,1999:blog-23210767300659961602024-02-07T13:32:44.087-08:00OpenTranslation - Todo sobre la traducción del software libreBlog dedicado a las novedades en la traducción del software libre, con todas las actualizaciones realizadas en el sitio web www.opentranslation.esUnknownnoreply@blogger.comBlogger41125tag:blogger.com,1999:blog-2321076730065996160.post-59998924765060090112022-04-02T00:34:00.001-07:002022-04-02T00:34:09.002-07:00Tutorial: ¿Cómo descargar y alinear los Diarios Oficiales de la Unión Europea? (actualización)<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRCJ8PardMExXwWV1uh_9n1scGfthpU5u65uTt4KkeQN3XpYJ5L8F7WybUYCwhjbPwz8Qlh5VbCUmy6Jil3iQC3RYiFwPZI_SIB_Iynqu01Y9imc4dR-49t8B7MNqwgu0oyVfQXHuZmz6nwnl0DIr-pTeph6HKLlw2M_Y2Kz_axD5HZg59hMWXtCUS/s800/UE.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="426" data-original-width="800" height="213" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRCJ8PardMExXwWV1uh_9n1scGfthpU5u65uTt4KkeQN3XpYJ5L8F7WybUYCwhjbPwz8Qlh5VbCUmy6Jil3iQC3RYiFwPZI_SIB_Iynqu01Y9imc4dR-49t8B7MNqwgu0oyVfQXHuZmz6nwnl0DIr-pTeph6HKLlw2M_Y2Kz_axD5HZg59hMWXtCUS/w400-h213/UE.jpg" width="400" /></a></div><br /><p></p><p>La descarga de los Diarios Oficiales de la Unión Europea (que ya comentamos anteriormente <a href="http://open-translation.blogspot.com/2017/01/tutorial-como-descargar-y-alinear-los.html" target="_blank">aquí</a>) ha cambiado. Ahora, para obtener una versión alineada con estos útiles documentos utilizando petraREV es preciso seguir estos pasos:</p><p>1. Navega hasta la página donde se encuentran los diarios:</p><p></p><p><a href="https://data.europa.eu/data/datasets/official-journals-of-the-european-union-2021?locale=en">https://data.europa.eu/data/datasets/official-journals-of-the-european-union-2021?locale=en</a></p><p>2. Busca el idioma que desees (por ejemplo, ES para español y EN para inglés).</p><p>3. Para descargar los archivos, elige la opción <b>Download</b> que aparece junto a cada idioma y aparecerá un pequeño menú con dos opciones. Elige <b>downloadURL</b> para descargar un archivo txt con una lista con todos los archivos.</p><p>4. Abre el archivo con un editor de texto y reemplaza todas las ocurrencias de «","» por tabuladores y pégalo en un documento de texto.</p><p>5. Crea una tabla utilizando los tabuladores como separadores. Solo nos interesa la última columna, en la que aparecen cosas como:</p><p>
</p><p style="line-height: 100%; margin-bottom: 0cm;">
<span style="color: #2b00fe;">http://publications.europa.eu/resource/cellar/35908f2f-5089-11eb-b59f-01aa75ed71a1.0006.02/zip</span></p><p>6. Pega esta columna en un documento de texto y ahora sustituye la marca de párrafo por « | wget». Debería quedar una única línea muy larga similar a la siguiente:</p><p><span style="color: #2b00fe;">wget http://publications.europa.eu/resource/cellar/35908f2f-5089-11eb-b59f-01aa75ed71a1.0006.02/zip | wget http://publications.europa.eu/resource/cellar/10986470-5153-11eb-b59f-01aa75ed71a1.0006.02/zip | ...<br /></span></p><p>7. Abre una terminal y dirígete a la ubicación donde deseas guardar los archivos. Pega esta línea y ejecútala. Comenzarán a descargarse los archivos.</p><p>8. Cuando la descarga haya terminado, descomprime los archivos. Es posible que la extensión de los archivos no sea la correcta, así que puede renombrar los archivos para cambiarla. Para ello, la manera más fácil suele ser eliminar primero todos los puntos de los nombres de los archivos y luego utilizar el patrón Número + .zip para definir el nombre de todos los archivos.</p><p>9. Cuando estén descomprimidos todos los archivos, borra los archivos .zip y los archivos .tif. En general, solo deben quedar archivos con formato xml.</p><p>10. Repite el proceso anterior para el otro idioma que quieres alinear. Al final, debes tener una carpeta con todos los archivos del idioma de origen y otra con todos los archivos del idioma de destino.</p><p>11. Una vez que todos los archivos se encuentren en una carpeta, abre <a href="http://www.opentranslation.es/petrarev/" target="_blank">petraRev</a> y elige <b>Herramientas → Revisar</b>. En la pantalla de revisión, borra todas las operaciones con <b>Marcar todo → Quitar</b>. Ahora, escribe Alinear lotes de archivos y haz doble clic en esta operación para añadirla a la lista de operaciones. </p><p>12. Haz doble clic ahora en esta operación para configurar esta operación. Solo tienes que indicar dónde se encuentran la carpeta con los archivos de origen y la carpeta con los archivos de destino. Si lo deseas, también puedes indicar dónde quieres que se guarden los archivos alineados.</p><p>13. Haz clic en Revisar y, después de una breve espera, se alinearán los archivos y se cargarán en la herramienta. Puedes hacer clic en <b>Archivo → Exportar</b> para exportar la traducción al archivo que desees.</p><p>El archivo resultante será completamente funcional, pero para agilizar las búsquedas, puede ser interesante eliminar todas las repeticiones y, en lugar de exportarlo directamente, emplear la operación <b>Dividir traducción</b> para obtener archivos más pequeños. Por ejemplo, si se divide en 20 archivos, los archivos tendrán unos 10 MB de tamaño, lo cual es bastante razonable.</p><p>Y, si tienes alguna duda, no dudes en compartirla en los comentarios.<br /></p><p><style type="text/css">p { margin-bottom: 0.25cm; line-height: 115%; background: transparent }</style></p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-38784385822646931812020-01-14T01:44:00.001-08:002020-01-14T01:47:29.277-08:00Tutorial: Cómo descargar la traducción completa de UbuntuAl participar en la traducción un texto, poder consultar la traducción ya realizada es de vital importancia, ya que no solo nos aseguraremos que somos coherentes con la terminología ya utilizada, sino que además nos podremos avanzar más rápido al no tener que repetir las búsquedas de terminología que otros traductores ya han llevado a cabo.<br />
<br />
Para descargar la traducción completa de Ubuntu, podemos consultar la <a href="https://wiki.ubuntu.com/Translations/KnowledgeBase/Exporting#Full">documentación de sobre traducciones de Ubuntu</a>, donde se nos indica que hay que seguir estos pasos:<br />
<ol>
<li>Abrir la página principal de la traducción de la distribución. Por ejemplo, en el caso de Ubuntu 18.04 (Eoan Ermine) sería: <a href="https://translations.launchpad.net/ubuntu/eoan/"><br />https://translations.launchpad.net/ubuntu/eoan/</a></li>
<li>Elegir la opción <b>See all language packs</b>.</li>
<li>Descargar los paquetes <b>completo</b> y <b>delta</b> más recientes.</li>
</ol>
<br />
El archivo descargado tendrá un volumen considerable, ya que incluye todos los idiomas. Si solo nos interesa un idioma concreto, basta con descomprimirlo y eliminar todos los demás idiomas.<br />
<br />
Para realizar las búsquedas, podemos utilizar cualquier herramienta que nos permita realizar búsquedas de texto. También podemos utilizar la <a href="http://www.opentranslation.es/referPro.php">página de búsqueda en traducciones de OpenTranslation</a> o <a href="http://www.opentranslation.es/petrarev/">descargar petraREV</a>, una herramienta que nos permite cargar archivos .po y realizar búsquedas avanzadas.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgP_bm_q3UWcoNRs6BvvKq914h7BRrbu9vE8Xng5mIA_ioIY22Dx9l3hRSNZhKBt5JwsI2lZwu9oC3osDZ-8lmuKRgDDe0DGUZA3MbAXiJWd1ufqwX7MMnI7Ee60KdYUJKhCU_Iqj-jQ20/s1600/petraREV.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="312" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgP_bm_q3UWcoNRs6BvvKq914h7BRrbu9vE8Xng5mIA_ioIY22Dx9l3hRSNZhKBt5JwsI2lZwu9oC3osDZ-8lmuKRgDDe0DGUZA3MbAXiJWd1ufqwX7MMnI7Ee60KdYUJKhCU_Iqj-jQ20/s400/petraREV.png" width="400" /></a></div>
<div style="text-align: center;">
Búsquedas avanzadas en petraREV</div>
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-52560438748557709992019-05-21T07:12:00.002-07:002019-05-21T07:12:48.699-07:00Descuartizando las búsquedas¿Habéis tenido que hacer alguna vez una traducción <i>Frankenstein</i>? Es decir, una traducción en la que todo el texto ya figura en la memoria de traducción del cliente y basta con unir fragmentos de aquí y allá para que el texto final conserve el estilo de la traducción ya existente.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8fo9CYvefNPRgEqPB7rZ_27q4rF1EBAxbCp4CEFv11li-ULgIyO3f42kRzmSUpYILZcXCdB9tyl7ioLYOYUbVZVFR_qT3gDSfmZTzMoovjlrtTOzKnmyP1n-wtZc1jkgrlK1kgTW8INs/s1600/franken.jpeg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="353" data-original-width="610" height="231" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8fo9CYvefNPRgEqPB7rZ_27q4rF1EBAxbCp4CEFv11li-ULgIyO3f42kRzmSUpYILZcXCdB9tyl7ioLYOYUbVZVFR_qT3gDSfmZTzMoovjlrtTOzKnmyP1n-wtZc1jkgrlK1kgTW8INs/s400/franken.jpeg" width="400" /></a></div>
<br />
<div style="text-align: justify;">
Por cómodas que puedan parecer estas traducciones, dado que la memoria de traducción resuelve la mayoría de los problemas, en ocasiones requieren más tiempo que una traducción a partir de cero a causa de la cantidad de búsquedas que hay que hacer. Si la terminología que utiliza la memoria no coincide con la que solemos utilizar, es fácil que tomemos decisiones de terminología y estilo que luego habrá que deshacer cuando nos demos cuenta de que el cliente, por ejemplo, tiene una opinión diferente sobre cómo traducir <i>Failed to...</i>, lo que nos obliga a volver atrás y cambiar decenas de segmentos, dejándonos con la duda de que se nos haya pasado por alto algún caso.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
La solución está en buscar todo lo que pueda plantearnos alguna duda, lo que lamentablemente reduce la productividad. En concreto, cuando hay que que traducir términos o estructuras sintácticas compuestas por bastantes palabras, aún así es fácil quedarse con la duda de si, aunque hayamos encontrado la traducción de cada elemento por separado, no habrá una traducción que combine varios elementos de una manera diferente a la que hemos supuesto. Otro caso que puede ralentizar la traducción en este tipo de traducciones es cuando tenemos que traducir una enumeración que en la memoria de traducción aparece dividida en segmentos diferentes.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para resolver este problema hemos incluido una nueva función en petraREV: la <b>búsqueda seccionada</b>, que «descuartiza» el texto en palabras y luego busca las combinaciones de la mayor longitud posible. Por ilustrarlo con un ejemplo, imaginemos que buscamos en la memoria de traducción el siguiente texto:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
</div>
<div style="text-align: center;">
<i>The user must open the Delete data screen from the lower menu bar.</i></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para realizar esta búsqueda, basta con acceder a la ventana de búsqueda (Control + F o Edición → Buscar) y marcar la casilla de verificación <b>Búsqueda seccionada</b>. Los resultados que obtendríamos serían:</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqniQju0z3abJfZz25Q70B1irHjekt4h1hgktqsi1F_h56XYRi-Zx2wvvBsy1GxFMnVZpnYtgivUeahGwedEqtuU0aYXIz0gWrrAQVTJEcejE4GyeFv3FCaxtF0dv4l_O-zPAjCMPLHck/s1600/busquedaDescuartizada.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="391" data-original-width="629" height="247" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgqniQju0z3abJfZz25Q70B1irHjekt4h1hgktqsi1F_h56XYRi-Zx2wvvBsy1GxFMnVZpnYtgivUeahGwedEqtuU0aYXIz0gWrrAQVTJEcejE4GyeFv3FCaxtF0dv4l_O-zPAjCMPLHck/s400/busquedaDescuartizada.png" width="400" /></a></div>
<br />
<div style="text-align: justify;">
Vemos que la búsqueda muestra dos segmentos muy relevantes para el texto buscado. De un solo vistazo, podemos ver que uno tiene una estructura muy similar, mientras que uno de los términos que faltan aparece en otro segmento. Además, podemos tener la seguridad de que la palabra <i>lower</i> no aparece en ningún segmento de la memoria de traducción en la que hemos realizado la búsqueda. Una gran cantidad de información muy resumida que nos permitirá darnos por satisfechos con la traducción sin perder el tiempo en búsquedas innecesarias, con la importante ventaja de que esta búsqueda apenas tarda más que una búsqueda ordinaria.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Al ser una nueva función, nos gustaría particularmente recibir cualquier comentario sobre ella. ¿Os parece útil? ¿Encontráis que tiene algún defecto o podría mejorarse para que fuera más cómoda? Para cualquier duda, no dudéis en poneros en contacto con nosotros.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-31490034353574315262018-10-18T03:23:00.001-07:002018-10-18T04:49:39.359-07:00petraREV: Versión 2.4<div style="text-align: justify;">
Acabamos de publicar la versión 2.4 de petraREV, la herramienta gratuita para revisar traducciones. Además de la ampliación de sus diccionarios las habituales mejoras y correcciones de errores, esta versión incluye un nuevo tipo de búsqueda: la búsqueda seccionada. </div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifU_N1JvGXVnyGY4WzlwDl6Pn5-WX_wlrL57CQ_Td64SogyP9hwo5kC3T1budLOIv_6ITSVZhsGwUDNv-5JnqO95ZleMaFs58-3bYxpRNUnn2KQ4HEzze_db_VHM56Gn0VPmbeoFn2jbM/s1600/petraREV-BusquedaSeccionada.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="476" data-original-width="716" height="265" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifU_N1JvGXVnyGY4WzlwDl6Pn5-WX_wlrL57CQ_Td64SogyP9hwo5kC3T1budLOIv_6ITSVZhsGwUDNv-5JnqO95ZleMaFs58-3bYxpRNUnn2KQ4HEzze_db_VHM56Gn0VPmbeoFn2jbM/s400/petraREV-BusquedaSeccionada.png" width="400" /></a></div>
<br />
<div style="text-align: justify;">
Aunque próximamente dedicaremos una entrada del blog a explicar cómo se utiliza esta función, sirve para buscar las diferentes palabras que contiene un texto, con la ventaja de ser muy rápida y buscar un elevado número de combinaciones.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
También hemos añadido un nuevo icono que permite acceder rápidamente la configuración, lo que resulta ideal especialmente cuando para cambiar el pretratamiento del texto. Es decir, podemos definir que se eliminen ciertos segmentos, se reemplace un texto por otro o se quiten las etiquetas sin tener que repetir estas operaciones una y otra vez.<br />
<br />
Para probarla, solo tienes que descargarla desde la <a href="http://www.opentranslation.es/petrarev/descarga.htm" target="_blank">página de OpenTranslation</a>. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Esperamos que esta nueva versión resulte útil y, para cualquier comentario, no dudéis en escribirnos.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-75175233009110701792018-03-20T01:59:00.003-07:002018-03-20T02:01:45.855-07:00petraREV: Llega la versión 2.3<div style="text-align: justify;">
Tras algo más de un año sin ninguna actualización, hoy acabamos de publicar la nueva versión de petraREV., que se puede descargar gratis de <a href="http://www.opentranslation.es/petrarev/descarga.htm" target="_blank">http://www.opentranslation.es/petrarev/descarga.htm</a>.</div>
<div style="text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxn9f_RNV6jEOkB667Ce0MBJriEiGuBwtSvlm4YR5b6ux2PCT5ckaIuZWbYPDas1WablgtXrQyhPunEplW7E5snKVIzjFJtmAgDCjI_mnSzy1ElQsXWceXrG46s7h2343l2OlXf9QmiSw/s1600/about.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="177" data-original-width="130" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxn9f_RNV6jEOkB667Ce0MBJriEiGuBwtSvlm4YR5b6ux2PCT5ckaIuZWbYPDas1WablgtXrQyhPunEplW7E5snKVIzjFJtmAgDCjI_mnSzy1ElQsXWceXrG46s7h2343l2OlXf9QmiSw/s1600/about.png" /></a></div>
<div style="text-align: justify;">
Se trata de una actualización más que recomendable, dado que mejora la aplicación prácticamente en todos los aspectos, aunque tal vez la novedad más importante sea la mejora de la compatibilidad con los archivos de SDL Trados y memoQ. También es la primera versión que va más allá de la combinación de idiomas inglés→español y permite definir nuestra combinación entre los idiomas disponibles. Próximamente iremos desglosando algunas de las novedades más destacadas de esta versión.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Como siempre, nos encantaría conocer vuestra opinión sobre esta nueva versión. ¿Cuál es la función que más os ha llamado la atención? ¿Hay alguna novedad que aún echáis en falta? Para cualquier comentario, no dudéis en escribir un comentario en este blog o escribirnos directamente a nuestra dirección de correo.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-23041569734135202342017-09-16T03:12:00.000-07:002017-09-16T03:12:18.293-07:00petraSearch: ¡Nueva versión con un flamante modo gramatical!<div style="text-align: justify;">
La principal novedad de la versión 1.1 de petraSearch es el nuevo modo gramatical, que nos permite buscar no solo cadenas de texto, sino también secuencias de palabras con una sintaxis intuitiva y cómoda.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para ilustrarlo con el texto de ejemplo que incluye la nueva versión de petraSearch, imaginemos que queremos saber los adjetivos que utilizó Bécquer para el sustantivo «voz» en su famosa obra «El monte de las ánimas». Solo tenemos que activar el modo gramatical pulsando el botón «G» y escribir en el cuadro de búsqueda:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
voz -a%</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Nos aparecerán todas las veces que aparece el sustantivo «voz» seguido de un adjetivo y, además, también veremos al final una lista con todos estos adjetivos ordenados por frecuencia:</div>
<div style="text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOOLnmKYgfTYyccVeCyqHcPNnTSagPngmfzK1HxFmAbP7CGPNWskQF3UHE1iyRm8FrfjDoKv66Sj4Snhddg8NrnC2oCpbETtpxI2vN_lznoM1Lr6P5R0jYnZt6hUQt1orhkR50lNue1jA/s1600/petraSearchBlog.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="436" data-original-width="789" height="353" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgOOLnmKYgfTYyccVeCyqHcPNnTSagPngmfzK1HxFmAbP7CGPNWskQF3UHE1iyRm8FrfjDoKv66Sj4Snhddg8NrnC2oCpbETtpxI2vN_lznoM1Lr6P5R0jYnZt6hUQt1orhkR50lNue1jA/s640/petraSearchBlog.png" width="640" /></a></div>
<br />
<div style="text-align: justify;">
Aparte de su utilidad para realizar estudios de estilo, esta función también resulta muy práctica cuando estamos redactando un texto y no conseguimos encontrar una palabra concreta. Por ejemplo, ¿queremos añadir un adverbio al verbo «creer» y no encontramos el que nos guste? Solo hay que activar el modo gramatical, escribir «creer -r%» y veremos una lista de los adverbios que se utilizan en los textos que nos interesan. En este sentido, esta función viene a ofrecer un diccionario de colocaciones, solo que dinámico y específico de los textos que decidamos.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Pero, ¿cómo funciona esta sintaxis? Tan solo tenemos que escribir las palabras que queremos buscar separándolas por espacios. Si en un lugar de una palabra concreta queremos especificar una categoría gramatical, basta con escribir un guión seguido de una letra para identificar la categoría en cuestión:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
-v (verbo), -n (nombre), -a (adjetivo), -r (adverbio), -s (preposición), -d (determinante), etc.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para ver la lista completa de categorías gramaticales, puedes consultar la descripción completa en la <a href="http://www.opentranslation.es/petrarev/etiquetas.htm" target="_blank">ayuda de petraREV</a>.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Si no indicamos que queremos buscar una palabra literalmente, se buscarán todas sus posibles formas. Por ejemplo, para «decir», se buscará «digo», «dices», «dices», «decimos», etc. Para indicar que queremos buscar una única forma de una palabra, hay que precederla con un signo igual. Por ejemplo:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
=dije</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Busca únicamente aquellos casos en los que aparece la palabra «dije». Por tanto, es importante escribir la forma canónica de una palabra cuando queramos buscar todas sus posibles formas. Es decir, infinitivo para los verbos, singular para los nombres, etc.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Cuando queramos aceptar cualquier palabra, solo hay que escribir un punto. Por ejemplo:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
noche . -a</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Admite tanto «noche tan bonita» como «noche más hermosa».</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Por último, cuando queramos realizar un análisis rápido de frecuencia solo tenemos que añadir un % a la palabra que nos interesa. Por ejemplo:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
noche . -a%</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Realiza un análisis de la frecuencia con la que aparecen los adjetivos según este patrón, pero:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
noche .% -a</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Realiza un análisis de la frecuencia de las palabras que aparecen entre «noche» y un adjetivo.</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Dado que es la primera vez que incorporamos esta función, nos encantaría saber qué os parece y si se os ocurren mejoras que podrían mejorar su utilidad. ¡Esperamos vuestros comentarios!</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-79384625878566922242017-07-06T11:06:00.000-07:002017-08-02T04:33:29.535-07:00petraREV: Cómo crear una planificación de archivos a partir de un recuento<div style="text-align: justify;">
Aparte de las funciones para revisar traducciones, petraREV también incluye varias opciones para facilitar el trabajo de traducción. Por ejemplo, al traducir un proyecto, particularmente si se trata de uno extenso o con muchos archivos, es muy útil saber en todo momento en qué punto del proyecto estamos, es decir, cuánto hemos traducido o revisado ya y cuánto nos queda todavía pendiente. Todos los programas de traducción incorporan funciones que nos ofrecen esta información, pero con frecuencia cometen errores o son demasiado lentos. Por ejemplo, muchas veces los problemas con las penalizaciones hacen que lo que debería aparecer como texto 100% traducido se contabilice como texto al 99%, lo que puede darnos algún susto. Además, las planificaciones también son útiles para repartir el trabajo entre varios traductores o programarnos el tiempo que vamos a dedicar al proyecto.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Pero, ¿qué es una planificación? Se trata sencillamente de una hoja de cálculo donde aparece junto al nombre de cada archivo el número de palabras de cada tipo que tiene. Por ejemplo, el siguiente corresponde al recuento de un proyecto ficticio:</div>
<div style="text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBKjg3IQ1iu1TdEneTgQZOdKuhvKWcz8-SmCvH-4uKp443onYSOB-NAJyso5BWs7zNcLHTpvravKIM2_EH8bo73wXIwGGvtKeg_zbyBc35z6tzElh6GIIWP8cXTNb88PGs5KqTpYqUVMM/s1600/recuento.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="377" data-original-width="910" height="264" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBKjg3IQ1iu1TdEneTgQZOdKuhvKWcz8-SmCvH-4uKp443onYSOB-NAJyso5BWs7zNcLHTpvravKIM2_EH8bo73wXIwGGvtKeg_zbyBc35z6tzElh6GIIWP8cXTNb88PGs5KqTpYqUVMM/s640/recuento.png" width="640" /></a></div>
<br />
<div style="text-align: justify;">
Gracias a las funciones de las hojas de cálculo, podemos hacemos un montón de operaciones con el recuento, como por ejemplo, dar prioridad a los archivos más pequeños o a lo más grandes y, sobre todo, asegurarnos rápidamente de que el volumen del trabajo que estamos a punto de comenzar coincide con el que nos han asignado.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Crear un recuento de este tipo con petraREV es muy fácil, basta con abrir la aplicación o, si no la hemos descargado todavía, conseguirla de manera gratuita de <a href="http://www.opentranslation.es/petrarev/descarga.htm" target="_blank">http://www.opentranslation.es/petrarev/descarga.htm</a>.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Una vez abierta, basta con elegir <b>Herramientas</b> → <b>Gestión de proyectos</b> o, si preferimos usar el teclado, pulsar <b>Control + O</b>. Aparecerá el siguiente cuadro de diálogo:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAw_iAUpGya2vzpBlqD55p1jQy2Ns8zyvVGBYvkBYugbk7aQb9gU0_K8cbg4hvZhPOD8x8ZkeQ0bQ2807C5UcwizJAEAhvwZjnsmWO3YMGAcSQPDb42XQ29b7I81taX7-OvuOh2ytv40s/s1600/captura3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="474" data-original-width="623" height="242" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAw_iAUpGya2vzpBlqD55p1jQy2Ns8zyvVGBYvkBYugbk7aQb9gU0_K8cbg4hvZhPOD8x8ZkeQ0bQ2807C5UcwizJAEAhvwZjnsmWO3YMGAcSQPDb42XQ29b7I81taX7-OvuOh2ytv40s/s320/captura3.png" width="320" /></a></div>
<br />
<div style="text-align: justify;">
Ahora debemos elegir en el cuadro de texto <b>Archivo de recuento</b> la ruta donde está el archivo con el recuento que hemos creado con nuestro programa de traducción asistida. Si queremos guardar el recuento, también tendremos que elegir en el cuadro de texto <b>Archivo de plan</b>, la ruta donde queremos que lo guarde.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Una vez especificada esta información, solo queda hacer clic en <b>Convertir</b> y habremos generado una completa planificación.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Una última nota, aparte de guardar el plan donde le hemos indicado, también se mostrará siempre el recuento en pantalla, de una manera similar a la siguiente:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtsK3JAPiyzgZjgn3kwBMlYbjnz6K1YyeOLyq3ltKT6UdeW77QUv6uI8e4mGxFag-aC_btl79po7saIhXczNP1xF1_vpfv8h9_vwJtEcvCC6vbZk1Cg4mz0D5eqjroMHsatEK1GceJN9c/s1600/recuento4.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="417" data-original-width="780" height="213" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgtsK3JAPiyzgZjgn3kwBMlYbjnz6K1YyeOLyq3ltKT6UdeW77QUv6uI8e4mGxFag-aC_btl79po7saIhXczNP1xF1_vpfv8h9_vwJtEcvCC6vbZk1Cg4mz0D5eqjroMHsatEK1GceJN9c/s400/recuento4.png" width="400" /></a></div>
<div style="text-align: justify;">
Si preferimos este formato o tenemos cualquier problema al generar el archivo, también podemos copiar y pegar esta tabla, ya sea en una hoja de cálculo o en un procesador de textos.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Por el momento, solo se admiten esta función solo es compatible con los recuentos de algunas herramientas, pero si necesitáis algún formato en concreto, podéis escribirnos para contarnos los formatos que necesitáis.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-28644541576110963742017-06-07T09:10:00.001-07:002017-06-07T09:16:47.272-07:00Ya disponible la biblioteca Java del etiquetador morfosintático petraTAG<div style="text-align: justify;">
Hace ya bastante tiempo que está disponible la aplicación petraTAG, que además de permitir realizar el etiquetado morfosintáctico de cualquier texto en español, también incluye numerosas herramientas para analizar los resultados del etiquetado, pero... ¿qué ocurre cuando queremos integrar un etiquetado eficaz en nuestra propia aplicación?<br />
<br />
Para facilitar la integración del motor de etiquetado de petraTAG en cualquier proyecto, acabamos de lanzar en nuestra web la primera versión abierta del motor de etiquetado. Para descargarla, solo tenemos que dirigirnos a la <a href="http://www.opentranslation.es/petratag/api.htm" target="_blank">página de la API de la ayuda en línea de petraTAG</a> y descargar el archivo petraTAG-API1.0.zip, que contiene la biblioteca y todos los archivos necesarios para etiquetar un texto en español o inglés.<br />
<br />
Vamos a ver cómo utilizar esta biblioteca con un ejemplo muy sencillo que desarrollaremos en Netbeans. Para crear el proyecto, solo tenemos que elegir <b>File</b> → <b>New Project</b>. En el cuadro de diálogo que aparecerá, elegimos <b>Java</b> → <b>Java Application</b>. Un nuevo cuadro de diálogo nos pedirá que elijamos el nombre del proyecto y la carpeta donde se guardará. En nuestro caso, vamos a elegir como nombre del proyecto <b>petraTAGdemo</b>.<br />
<br />
Ahora tenemos que vincular nuestra biblioteca así que, en el árbol del proyecto que aparece a la izquierda, nos situamos encima del proyecto que acabamos de crear y elegimos <b>Properties</b>. Nos vamos ahora a la categoría <b>Libraries</b> y agregamos los dos archivos jar que contiene el zip: Utiles.jar y petraTAG.jar.<br />
<br />
¡Ya queda muy poco! Solo tenemos que copiar la carpeta <b>languages</b> que hemos descargado anteriormente en el directorio raíz del proyecto que hemos creado y podremos comenzar a crear a escribir el código de nuestra aplicación. Para comprobar que funciona, podemos escribir lo siguiente:<br />
<br />
<span style="color: blue;">package petratagdemo;<br /><br />import petratag.TaggedSentence;<br />import petratag.Language;<br /><br />public class PetraTAGdemo {<br /><br /> public static void main(String[] args) {<br /> Language language=new Language(); <br /> language.init("ES");<br /> <br /> String text="Este texto es un ejemplo.";<br /> TaggedSentence sentence=new TaggedSentence();<br /> sentence.tag(text, language);<br /> <br /> for (int n=1;n<=sentence.length;n++) {<br /> System.out.println(sentence.tokens[n]+" - "+sentence.lemmas[n]+" - "+sentence.posTags[n]);<br /> }<br /> }<br />}</span><br />
<br />
Si lo ejecutamos, deberíamos obtener el siguiente resultado:<br />
<span style="color: blue;"><br />- Loaded 271681 dictionary entries and 60 locutions.<br />Este - este - dd0ms0<br />texto - texto - ncms000<br />es - ser - vsip3s0<br />un - uno - di0ms0<br />ejemplo - ejemplo - ncms000<br />. - . - Fp</span><br />
<br />
Pero, ¿cómo funciona? Vamos a ver paso a paso este pequeño programa para ver cómo se etiqueta el texto.<br />
<br />
Comencemos con:</div>
<div style="text-align: justify;">
<br />
<span style="color: blue;"> Language language=new Language(); <br /> language.init("ES");</span><br />
</div>
<div style="text-align: justify;">
Para etiquetar un texto, debemos definir un idioma que creamos aquí con la primera línea. La segunda línea carga los datos necesarios para un idioma concreto. Actualmente, solo están disponible el español y el inglés, pero sería fácil crear otros idiomas. Solo es necesario cargar un idioma una vez y, si no queremos etiquetar en varios idiomas, basta con definir un objeto Language, por lo que es habitual definirlo como objeto estático para toda nuestra clase.<br />
<br />
<span style="color: blue;"> String text="Este texto es un ejemplo.";<br /> TaggedSentence sentence=new TaggedSentence();<br /> sentence.tag(text, language);</span><br />
</div>
<div style="text-align: justify;">
El objeto que contendrá los datos del etiquetado es <b>TaggedSentence</b> y para etiquetar el texto, solo tenemos que llamar al método <b>tag</b>, indicando el idioma y el texto que queremos etiquetar.<br />
<br />
<span style="color: blue;">for (int n=1;n<=sentence.length;n++) {<br /> System.out.println(sentence.tokens[n]+" - "+sentence.lemmas[n]+" - "+sentence.posTags[n]);<br /> }</span><br />
</div>
<div style="text-align: justify;">
Al etiquetar el texto, se han rellenado automáticamente tres matrices que incluyen todos los datos que necesitamos: los tokens (o palabras), los lemas y las etiquetas morfosintáticas, que siguen la convención establecida en el etiquetario del proyecto. Con este bucle, recorremos todos sus valores.<br />
<br />
Aparte del etiquetado, la biblioteca incluye muchas funciones que aumentan su utilidad. No obstante, hemos optado por elegir un ejemplo sencillo que explique claramente los elementos básicos del etiquetado. Para más información, podéis consultar la página informativa sobre la clase. Próximamente, comentaremos algunas posibilidades más y, si tenéis cualquier duda, será para nosotros un placer responder a cualquier pregunta.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-21074086668721578702017-03-26T09:08:00.001-07:002017-03-26T09:08:26.996-07:00petraTAG: ¿Cómo extraer los diálogos de un texto?<div style="text-align: justify;">
Tras varios meses ocupados en otros proyectos, ¡ha llegado la hora de retomar petraTAG! Tenemos previstas muchas novedades muy interesantes pero, para amenizar la espera, hemos pensado que ya era hora de lanzar una nueva versión de petraTAG, así que ya podéis descargarla desde <a href="http://www.opentranslation.es/petratag/instalacion.htm" target="_blank">la página web de petraTAG</a>.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Dado que actualmente estamos desarrollando diversas nuevas características, es un momento ideal para hacernos llegar vuestras ideas y sugerencias, así que no dudéis en publicar aquí un comentario o enviarnos un mensaje directamente a la dirección de la sección de contacto de nuestra <a href="http://www.opentranslation.es/" target="_blank">página principal</a>.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Una de las funciones que hemos mejorado es el análisis de los diálogos. La mejor manera de ilustra esta función es mediante un ejemplo, como el siguiente texto extraído de «Los cinco y el tesoro de la isla» de Enid Blyton:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<i><span style="color: blue;">Mamá movió la cabeza.</span><br />—<span style="color: #38761d;">¡Qué estupendo ponerme otra vez los shorts!</span> —<span style="color: purple;">dijo Ana, bailando de contenta</span>—. <span style="color: #38761d;">Ya estoy cansada del uniforme del colegio. Tengo enormes ganas de ir con shorts o en traje de baño y ponerme a jugar con los chicos.</span></i></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
En el texto anterior, hemos diferenciado mediante colores el texto clasificándolo en tres tipos:</div>
<div style="text-align: justify;">
1. Texto normal (en azul)</div>
<div style="text-align: justify;">
2. Diálogos (en verde)</div>
<div style="text-align: justify;">
3. Acotaciones de diálogos (en morado) </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
petraTAG puede hacer un recuento de las palabras de un texto que corresponden a cada categoría. Además, extrae los interlocutores y los ordena según el número de veces que se les cita.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para utilizar esta función, hay que cargar y etiquetar un texto, para lo que basta con elegir Archivo → Cargar archivo. El texto se importará y se etiquetará automáticamente, para lo que es necesario esperar un poco. Cuando aparezcan las estadísticas de etiquetado, hay que elegir Herramientas → Extraer diálogos y en unos segundos obtendremos los resultados. Por ejemplo, para el libro «Los cinco y el tesoro de la isla» que antes comentábamos, obtenemos lo siguiente:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijqgfuNlPGjiz8DrAEozA-yYcLTNTt8NmJvQCqagO9imTJI-BTHAmZHLlR6BIuXotAWOGfgL1buU1MRaSIz0AJ6jsUjViWsb7JRDVsrSsuyMEoDpHWlimDj_C6DLNGH9lUpBNgazKfcTQ/s1600/dicendiLosCinco.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="397" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijqgfuNlPGjiz8DrAEozA-yYcLTNTt8NmJvQCqagO9imTJI-BTHAmZHLlR6BIuXotAWOGfgL1buU1MRaSIz0AJ6jsUjViWsb7JRDVsrSsuyMEoDpHWlimDj_C6DLNGH9lUpBNgazKfcTQ/s400/dicendiLosCinco.png" width="400" /></a></div>
<div style="text-align: justify;">
Así podemos confirmar por ejemplo, con las estadísticas en la mano, que Dick era el protagonista menos relevante. También vemos que gran parte del texto son diálogos, algo habitual en la literatura juvenil. También vemos que se indica el interlocutor en la mayoría de las ocasiones.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para compararlas, podemos ver estas estadísticas para «Crepúsculo» de Stephanie Meyer y «También esto pasará» de Milena Busquets.</div>
<br />
Crepúsculo (Stephanie Meyer)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpzwNGMMrUkitgVoQrFkU1x0Q8d3plUkabLRb2ZJTw-EfypvQMwhcYmZLkt4Anv4ghUeCQ1KpfPHliAiqpn7_FkifAGfN0GTJ4GNvXOo9jk9ra5pcN9ctWyM77LykUAEGsw97UU4pXcLs/s1600/dicendi2Crep%25C3%25BAsculo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="183" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhpzwNGMMrUkitgVoQrFkU1x0Q8d3plUkabLRb2ZJTw-EfypvQMwhcYmZLkt4Anv4ghUeCQ1KpfPHliAiqpn7_FkifAGfN0GTJ4GNvXOo9jk9ra5pcN9ctWyM77LykUAEGsw97UU4pXcLs/s320/dicendi2Crep%25C3%25BAsculo.png" width="320" /></a></div>
También esto pasará (Milena Busquets)<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5FdK4eFtAC7-j7B9Xsj7H8f1rDJ9sVuPFRUT82CQGsXDMx8a-7RsQeyXPSh8u53Jzv5SqxfoW3TuBxLmiX2mR1X5mAlgh6E5qCoZDSjElE2AGgpBq9gYHCGaOKFMkPPMLWq0jQMdB7cE/s1600/dicendi3Tambi%25C3%25A9nEstoPasar%25C3%25A1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="186" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5FdK4eFtAC7-j7B9Xsj7H8f1rDJ9sVuPFRUT82CQGsXDMx8a-7RsQeyXPSh8u53Jzv5SqxfoW3TuBxLmiX2mR1X5mAlgh6E5qCoZDSjElE2AGgpBq9gYHCGaOKFMkPPMLWq0jQMdB7cE/s320/dicendi3Tambi%25C3%25A9nEstoPasar%25C3%25A1.png" width="320" /></a></div>
<div style="text-align: justify;">
Conforme vamos avanzando hacia la literatura «seria», es fácil observar que el porcentaje del total que corresponde a los diálogos es cada vez menor. Curiosamente, las acotaciones aumentan en «Crepúsculo», pero disminuyen muy pronunciadamente en «También esto pasará». Por último, también salta a la vista que en estos dos últimos libros el porcentaje de casos en los que se marca el interlocutor es muy inferior. Aún más, si tenemos en cuenta que estos dos libros se han escrito en primera persona y, por tanto, el interlocutor viene implícito con el tiempo verbal (dije, grité, susurré...). De no ser así, el porcentaje sería muy inferior.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Si tenéis alguna idea sobre cómo aplicar esta función a vuestro proyecto, no dudéis en ponernos en contacto con nosotros.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-84255706289765871292017-01-23T11:23:00.001-08:002017-01-23T11:23:16.062-08:00Tutorial: ¿Cómo descargar y alinear los Diarios Oficiales de la Unión Europea?<div style="text-align: justify;">
Hace no mucho, descubrí en la web un recurso que considero que puede ser tremendamente interesante para muchos traductores: los Diarios Oficiales de la Unión Europea. Al tratarse de documentos oficiales, están disponibles en varios idiomas y, por si fuera poco, la propia página ofrece la posibilidad de alinear automáticamente los textos en hasta tres idiomas, por lo que buscar un término en inglés y encontrar su equivalente en español es pan comido. Además, dada la amplia diversidad de temas tratados en el derecho europeo, es fácil encontrar términos de prácticamente todas las disciplinas. Aunque tal vez la opción que encontremos no sea óptima, al menos puede darnos una posibilidad sobre la continuar nuestras búsquedas. Para realizar la búsqueda, solo tenemos que utilizar la página o, directamente, podemos escribir en Google:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<i>"término que queremos buscar"</i> site:eur-lex.europa.eu</div>
<div style="text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_U0MykKnPqieMrfoRXZLK-et9BCUGzEvTbUHD-v7Bmsv4d8uePvuprroGFLRiqddtq1QzWfbznP71wexk1_dd7sML5eLalgSXENPxLrKosPdgNSyDBOOoiXTd00DYYMSTr7HIVhjbIeY/s1600/ue.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_U0MykKnPqieMrfoRXZLK-et9BCUGzEvTbUHD-v7Bmsv4d8uePvuprroGFLRiqddtq1QzWfbznP71wexk1_dd7sML5eLalgSXENPxLrKosPdgNSyDBOOoiXTd00DYYMSTr7HIVhjbIeY/s400/ue.jpg" width="400" /></a></div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Si bien estas búsquedas en línea son muy útiles, también habrá casos en los que sea preferible realizar las búsquedas con herramientas de escritorio como, por ejemplo, la simpar herramienta gratuita de búsqueda <a href="http://www.opentranslation.es/petrasearch/index.htm" target="_blank">petraSearch</a> de OpenTranslation. Tal vez sea porque queremos comparar las frecuencias con las que ocurren varias posibilidades o quizás porque queremos realizar las búsquedas sin conexión a internet.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Sea como sea, el sitio nos permite descargar estos documentos y, una vez en nuestro disco duro, podremos alinearlos cómodamente con la última versión de <a href="http://www.opentranslation.es/petrarev/" target="_blank">petraRev</a>. Los pasos que debemos seguir son muy sencillos:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
1. Navega hasta la dirección donde se encuentran los diarios.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
http://data.europa.eu/euodp/en/data/dataset?q=official+journals+of+the+european+union&organization=publ&ext_boolean=exact&sort=modified_date+desc</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
2. Descarga la versión correspondiente al español y al inglés.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
3. Elimina, si los hay, los archivos .doc y .tif. Si hay archivos .zip, descomprímelos y elimínalos luego.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
4. Copia todos los archivos a una sola carpeta con:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
find "carpetaOrigen" -type f -exec mv {} "carpetaDestino" \;</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
5. Una vez que todos los archivos se encuentren en una carpeta, abre <a href="http://www.opentranslation.es/petrarev/" target="_blank">petraRev</a> y elige Herramientas → Revisar. En la pantalla de revisión, borra todas las operaciones con Marcar todo → Quitar. Ahora, escribe Alinear lotes de archivos y haz doble clic en esta operación para añadirla a la lista de operaciones.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
6. Haz doble clic ahora en esta operación para configurar esta operación. Solo tienes que indicar dónde se encuentran la carpeta con los archivos de origen y la carpeta con los archivos de destino. Si lo deseas, también puedes indicar dónde quieres que se guarden los archivos alineados.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
7. Haz clic en Revisar y, después de una breve espera, se alinearán los archivos y se cargarán en la herramienta. Puedes hacer clic en Archivo → Exportar para exportar la traducción al archivo que desees.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Así, conseguirás tener una base de datos fenomenal donde buscar términos particularmente complicados o para los que quieras conocer una traducción oficial.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
¡Un último consejo! Si alineas todos los archivos correspondientes a un año, el archivo de salida será bastante grande (entre 100 y 200 MB), por lo que puedes reducirlo, sin perder información, seleccionando Herramientas → Edición. En la pestaña Reemplazar, elige la opción Eliminar por... Repetidos y haz clic en Eliminar. Eso sí, tendrás que tener paciencia porque es fácil que el número de segmentos que deberá comprobar supere los dos millones, por lo que es fácil que tengas que esperar algo más de media hora, para conseguir los resultados. Afortunadamente, se trata de un proceso que solo hay que hacer una vez y podrás disfrutar de sus frutos durante mucho tiempo.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-8857053182608787872016-12-05T12:56:00.002-08:002016-12-05T12:56:35.620-08:00Modelos de lenguaje y R<br />
<div style="text-align: justify;">
A fin de seguir avanzando, en OpenTranslation estamos poniendo a punto nuestros sistemas para comenzar a utilizar modelos del lenguaje. Estos modelos del lenguaje han sido ampliamente utilizados en el procesamiento del lenguaje natural y creo que la mejor manera de entender sus aplicaciones es mediante un ejemplo:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Imaginemos que estamos creando un sistema de reconocimiento de voz y nuestro sistema es incapaz de distinguir entre las siguientes dos opciones:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<i>wreck a nice beach</i></div>
<div style="text-align: justify;">
<i>recognise speech</i></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Aunque a primera vista tal vez no lo parezca, ambas opciones se pronuncian de manera muy similar en inglés. Es evidente que, en caso de que se le plantee la duda (y es posible, pensemos por ejemplo si escucha estas palabras en un ambiente muy ruidoso), un humano no tiene problemas en darse cuenta de que la opción correcta es la segunda «recognise speech» (reconocer la voz), ya que la primera «wreck a nice beach» (destrozar una bonita playa), no tiene mucho sentido.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
El problema está en que los ordenadores no vienen de serie con el sentido común incluido, así que tenemos que encontrar una manera de que elijan entre una y otra opción.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Un método muy interesante es crear un modelo del lenguaje, analizando una gran cantidad de texto y expresándolo en forma de un conjunto de bigramas (pares de palabras) y sus respectivas frecuencias. Por ejemplo:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<i>de la 891<br />lo que 610<br />en el 540<br />de que 528<br />a la 455<br />en la 449<br />[...]</i></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Lo interesante de este modelo es que, con estos datos, podemos calcular la probabilidad de que una determinada cadena de texto se dé en el idioma o no. En el caso anterior, es obvio que «recognise speech» que es un término muy frecuente, tendrá una probabilidad muy superior a «wreck a nice beach», que es una combinación un tanto extraña. Por tanto, el sistema podrá distinguir cuál es la opción correcta.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Este método no solo puede aplicarse al reconocimiento de voz, sino también a cualquier situación en la que la probabilidad de una determinada secuencia de palabras nos ayude a elegir una opción sobre otra como, por ejemplo, ocurre también en la corrección ortográfica de palabras.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Dado que este método nos obliga a calcular la colección de palabras y sus frecuencias, estamos añadiendo a petraREV una función que, dado un texto, nos permite crear un modelo del lenguaje utilizado en él.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para ilustrar su utilidad, hemos pensado que sería interesante comparar los modelos obtenidos a partir de diversos libros famosos y, para crear rápidamente los gráficos, hemos decidido utilizar R. Para que podáis repetir este proceso con cualquier otros datos, vamos a ver brevemente los comandos que hay que utilizar.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para empezar, hay que instalar R, lo que puede hacerse fácilmente utilizando el Centro de Software de Ubuntu.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Una vez instalado, basta con que abramos la consola y escribamos:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="color: blue;">R</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
¡Ojo! Es imprescindible escribir esta R en mayúsculas, si la escribimos en minúsculas nos aparecerá un mensaje de error.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
A continuación, le indicamos a R la carpeta donde están nuestros datos:</div>
<div style="text-align: justify;">
<span style="color: blue;"><br /></span></div>
<div style="text-align: justify;">
<span style="color: blue;">> setwd('<b>/media/.../Corpus</b>')</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Y ya podemos leer los datos:</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<span style="color: blue;">> data=read.table('<b>corpus.txt</b>')</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para ver que los datos se han cargado correctamente, basta con escribir:</div>
<div style="text-align: justify;">
<span style="color: blue;"><br /></span></div>
<div style="text-align: justify;">
<span style="color: blue;">> data</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
En nuestro caso, son los siguientes:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="color: blue;">García_Marquez,_Gabriel_-_Del_amor_y_otros_demonios 21608 48527<br />Asensi,_Matilde_-_El_origen_perdido 65321 188696<br />Montero,_Rosa_-_Bella_y_oscura 26877 64046<br />Sloan,_Robin_-_El_Sr_Penumbra_y_su_libreria_24_horas_abierta 33938 93863<br />Meyer,_Stephanie_-_Eclipse 57804 192167</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
La primera columna indica el título de libros, la segunda el número de bigramas y la última el número de tokens, así que definiremos estas variables:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="color: blue;">> name=data[,1]</span></div>
<div style="text-align: justify;">
<span style="color: blue;">> bigrams=data[,2]</span></div>
<div style="text-align: justify;">
<span style="color: blue;">> tokens=data[,2]</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
¡Y ya podemos crear un gráfico con estos datos! Basta con escribir:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="color: blue;">> plot(<b>tokens,bigrams</b>) </span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
¡Realmente fácil! ¿Verdad?</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
El único problema es que no sabemos a qué libro corresponde cada punto. Afortunadamente es muy fácil solucionar este problema. Para ello, necesitaremos el paquete <i>calibrate</i>, así que si no lo tenemos, podemos instalarlo con:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="color: blue;">> install.packages("calibrate")</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Ahora calibramos los datos:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="color: blue;">> library(calibrate)</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Y por último indicamos que queremos que en cada punto nos aparezca el nombre del libro al que corresponde. </div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="color: blue;">> textxy(tokens,bigrams,name)</span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Como necesito este formato en formato .png escribo los siguientes comandos:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="color: blue;">> png('grafico.png')<br />> plot(tokens,bigrams) <br />> textxy(tokens,bigrams,name)<br />> dev.off()</span></div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Y ahora sí que sí, tenemos este bonito gráfico:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrh-qVdjcd5eylaCbR0AThURCgtIqFJdjs9yk_MeKBAhO80sxOt2E0vbbiBSJzEiTjpE_cuwCWJCon_nGrpP319rWA6WBrWgqS_677pFs57YgOaT9JyUMLDPpd5PKjA-Grr7gnG3ldGqM/s1600/grafico.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrh-qVdjcd5eylaCbR0AThURCgtIqFJdjs9yk_MeKBAhO80sxOt2E0vbbiBSJzEiTjpE_cuwCWJCon_nGrpP319rWA6WBrWgqS_677pFs57YgOaT9JyUMLDPpd5PKjA-Grr7gnG3ldGqM/s400/grafico.png" width="400" /></a></div>
Sin duda es interesante pero, dado que estamos comparando libros con un número de palabras muy diferente, no es fácil obtener conclusiones. Próximamente, veremos cómo resolver este problema.<br />
<br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-56198077296698694842016-04-12T09:36:00.003-07:002016-04-12T09:36:48.332-07:00Xenial Xerus: una traducción muy especial al español<div class="separator" style="clear: both; text-align: center;">
</div>
<div style="text-align: justify;">
¡Ya puedes participar en la traducción de Ubuntu al español! Solo tienes que visitar la siguiente página:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<a href="https://translations.launchpad.net/ubuntu/xenial/" target="_blank">https://translations.launchpad.net/ubuntu/xenial/</a></div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
Tras un sencillo proceso podrás comenzar a proponer tus traducciones o, si te unes al equipo de revisores, revisar las que hayan aportado otros usuarios. </div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<img border="0" height="400" src="https://ecs7.tokopedia.net/img/product-1/2015/12/6/2129150/2129150_b0af3468-d166-48ca-8ae0-65b053f635c4.png" width="400" /></div>
<br />
<div style="text-align: justify;">
Como ya sabrás, la próxima versión de Ubuntu es muy espcial, ya que se trata de una versión a largo plazo, por lo que será la que domine en los escritorios con Linux en los siguientes años. A menos de 9 días para que se lance... ¿quieres ayudar a que sea la mejor que se ha lanzado hasta el momento?</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-64600485738368369632016-04-04T10:22:00.000-07:002016-04-04T10:22:00.137-07:00petraREV: Las incidencias<div style="text-align: justify;">
Si ha habido una constante en mi puesto de trabajo desde que comencé a traducir ha sido el pequeño trozo de papel que siempre hay al teclado de mi ordenador con su correspondiente bolígrafo. Si miras el escritorio de cualquier traductor, sobre todo si se dedica a la localización, con frecuencia encontrarás una herramienta similar, tal vez sea un folio rigurosamente blanco, tal vez un papel para reciclar o tal vez, si eres especialmente ordenado, un cuaderno. Al parecer, mientras traducimos siempre hay cosas para las que somos incapaces de encontrar una solución que nos convenza, por lo que lo escribimos con la esperanza de que cuando estemos más despejados podamos despejar la duda.<br /><br />Muchas veces se diría que no hace falta nada más que escribir nuestra duda para que se resuelva. Parece que, al formularla en palabras, aunque solo sean dos, nuestra cabeza empieza a dar vueltas buscando una solución hasta que la encuentra, por la que con frecuencia al terminar la traducción, sin que haya hecho falta estudiar punto por punto todas nuestras dudas, las hemos resuelto.<br /><br />Lamentablemente no siempre es así. A veces terminamos la traducción y el problema que nos planteaba sigue ahí, lo que nos obliga a tomar una decisión final. Con frecuencia, descubriremos que no somos capaces de resolver por nosotros mismos las dudas, lo que nos obligará a redactar una consultas al cliente.<br /><br />Las consultas al cliente son una cuestión espinosa: a los traductores casi nunca les gusta enviarlas y a los clientes casi nunca les gusta recibirlas, pero hay ocasiones donde son inevitables. Por ejemplo, no encontrar una referencia (como el título de una publicación o una opción de software) obliga de manera inexcusable a consultar al cliente acerca del criterio que quiere seguir.<br /><br />El proceso de consulta al cliente suele estar definido con precisión, ya que prácticamente todas las agencias de traducción dispone de una plantilla para registrarlas. No obstante, no siempre se registran adecuadamente y con frecuencia acaban en el trocito de papel del traductor que espera que, antes de que termine su traductor, averigüe algo que haga innecesaria la consulta.<br /><br />En OpenTranslation hemos pensado varias veces en crear una herramienta que facilitase el registro de incidencias, pero nuestros prototipos han tenido escaso éxito, probablemente por el mismo motivo que tampoco lo tienen las plantillas de dudas. A nadie le gusta rellenar un extenso formulario (muchas veces con cerca de diez campos) para una duda que al final ni siquiera se enviará. Aunque se trate de datos sencillos (como la fecha, el nombre del archivo o el texto de origen), supone una pérdida de valioso tiempo y, además, interrumpe el flujo de traducción.<br /><br />Parte del encanto de anotar una duda en un papel es su inmediatez. Basta con escribir un par de palabras para que al día siguiente sepamos rápidamente lo que nos motivó a escribirla. A partir de esta idea, hemos diseñado una nueva herramienta para gestionar las incidencias, término que hemos elegido para llamar a los motivos por los que solemos anotar algo en el papel.<br /><br />La novedad es que el proceso es extremadamente rápido. Abrimos un cuadro de diálogo, pulsamos un botón y con solo escribir las pocas palabras que necesitamos hemos terminado. El resto de los datos se toman de forma automática. Si lo deseamos, podemos indicar la naturaleza exacta de la incidencia, entre las siguientes:</div>
<ul style="text-align: justify;">
<li>Duda de traducción</li>
<li>Referencia no encontrada</li>
<li>Solicitud de aclaración</li>
<li>Error en el texto de origen</li>
<li>Nota para revisión</li>
</ul>
<div style="text-align: justify;">
No obstante, ni siquiera es necesario, ya que la opción por defecto «Duda de traducción» es suficientemente genérica como para abarcar cualquier motivo que nos dude a apuntarla.<br /><br />Por supuesto, si nuestra herramienta se limitase a registrar las palabras, no nos sería mucho más útil que un trozo de papel pero, gracias a la magia de la informática, petraREV es capaz de combinar la escasa información que le hemos indicado para crear un informe completo.<br /><br />Por ejemplo, sin contexto, podemos generar el siguiente informe:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhADQxJnKQG2Y-kVlmfStol-rtSeAaoCveVDP2gWlLA-MJdDlbQz_YQyghKZH9vKUo3KxUVlXF-TnHHLLjJiPLbrAbhhqVYqRHTd7J9W-cZsTDDHGiWwrfw-Fxgkwo3460jJYUCKguf2bc/s1600/incidencias1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="185" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhADQxJnKQG2Y-kVlmfStol-rtSeAaoCveVDP2gWlLA-MJdDlbQz_YQyghKZH9vKUo3KxUVlXF-TnHHLLjJiPLbrAbhhqVYqRHTd7J9W-cZsTDDHGiWwrfw-Fxgkwo3460jJYUCKguf2bc/s320/incidencias1.png" width="320" /></a></div>
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGr5wXbHsPQ3g8C3GyjVeQo33eG_a81ZrGtJZIq7z6iQvvG3AW-g-BVCdOSqnVOyGGbuD5GBtHlkHbfZ354X4wOo9Nb5uqET_cvGW5KNcAdfbTZpOyzA3GT6f-VFN495CvsVGe_xM0W8Y/s1600/incidencias2.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"></a><br />No es muy completo, pero no está mal. Sin embargo, si lo combinamos con una traducción, resulta mucho más útil.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGr5wXbHsPQ3g8C3GyjVeQo33eG_a81ZrGtJZIq7z6iQvvG3AW-g-BVCdOSqnVOyGGbuD5GBtHlkHbfZ354X4wOo9Nb5uqET_cvGW5KNcAdfbTZpOyzA3GT6f-VFN495CvsVGe_xM0W8Y/s1600/incidencias2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="185" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgGr5wXbHsPQ3g8C3GyjVeQo33eG_a81ZrGtJZIq7z6iQvvG3AW-g-BVCdOSqnVOyGGbuD5GBtHlkHbfZ354X4wOo9Nb5uqET_cvGW5KNcAdfbTZpOyzA3GT6f-VFN495CvsVGe_xM0W8Y/s320/incidencias2.png" width="320" /></a></div>
<br />
<br />
<br />
<br />Con esta base, crear un informe que pueda enviarse directamente al cliente es cuestión de segundos. ¡Y si tenemos algo que comentar al revisor, la lista de notas para el revisor nos ayudará a asegurarnos de que no se nos olvida nada!<br /><br />Estas son las funciones que hay por el momento. Actualmente trabajamos en que resulte mucho más útil sin sacrificar comodidad. Dentro de poco podremos cambiar el estado, realizar búsquedas y filtrar nuestras dudas.<br /><br />¿Tenéis vosotros también un trozo de papel al lado de tu teclado? ¿Creéis que las categorías que hemos creado son suficientes o faltan? ¿Qué funciones os gustaría que tuviera esta nueva herramienta? Estamos esperando conocer vuestras ideas para que la próxima versión de petraREV sea mejor que nunca.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-38407249852107566382016-01-11T04:57:00.000-08:002016-01-11T04:57:22.779-08:00¡Llega la nueva aplicación de OpenTranslation, petraSearch!<div style="text-align: justify;">
A principios de diciembre ya comentamos que estábamos trabajando en una nueva aplicación para buscar texto en archivos que, a partir de hoy, es posible descargar de manera totalmente gratuita desde <a href="http://www.opentranslation.es/petrasearch/" target="_blank">http://www.opentranslation.es/petrasearch/</a>.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCtj-yMsHhA89LFsQgW4twhixHOF0LIveK-j4gUlQI-6Qd2wtVakK_-UKD7IhgVOtXYtsdl8F5RKpYCXoL6piBoFOfu53e7DcSVUPUQo-I5sg-stC7w31xgpgF6lPQhomg_ep52D5905c/s1600/main.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="295" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCtj-yMsHhA89LFsQgW4twhixHOF0LIveK-j4gUlQI-6Qd2wtVakK_-UKD7IhgVOtXYtsdl8F5RKpYCXoL6piBoFOfu53e7DcSVUPUQo-I5sg-stC7w31xgpgF6lPQhomg_ep52D5905c/s320/main.png" width="320" /></a></div>
<br />
<div style="text-align: justify;">
El funcionamiento de petraSearch es extremadamente sencillo: basta con escribir el texto que queremos buscar en el primer cuadro de texto, la ubicación donde queremos buscarla en el segundo y pulsar Search. Tras unos segundos, aparecerán los resultados.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
También hay un cuadro de diálogo de configuración donde podemos cambiar el tamaño del texto de los resultados o elegir que se muestre un resumen después de los resultados.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Al igual que ocurre con todos nuestros nuevos proyectos, estamos deseando mimarlo, por lo que cualquier sugerencia que hagáis, bien a través de este blog o escribiendo a la dirección normal de OpenTranslation será más que bienvenida. ¡Esperamos vuestros comentarios!</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-47824612494185857492016-01-08T12:30:00.000-08:002016-01-08T12:30:40.056-08:00petraREV: Nuevo año, nuevas reglas gramaticalesLa <a href="http://www.opentranslation.es/petrarev/funcionesGramatica.htm#gramatica" target="_blank">función de comprobación de reglas gramaticales</a> es una de las primeras que incluyó petraREV y apenas ha cambiado con el paso de los años. En un principio, estaba pensada para que el usuario pudiera crear sus propias reglas gramaticales adaptadas a los proyectos que trabajaba. Por ejemplo, esta función le permitía vetar el uso de verbos en segunda persona en un proyecto y permitirlos en otro.<br />
<br />
La realidad terminó siendo muy distinta. Tras un cierto esfuerzo inicial en el que se crearon unas cuantas reglas gramaticales prácticas de aplicación general, estas reglas se fosilizaron y, durante la última década, el archivo que define las reglas se ha mantenido prácticamente tal como se creó.<br />
<br />
Tampoco es de extrañar que apenas hayan cambiado estas reglas. Para editarlas hay que conocer la <a href="http://www.opentranslation.es/petrarev/notacion.htm" target="_blank">notación gramatical</a> que emplean estas reglas y, por si fuera poco, es preciso editar el archivo a mano en un editor de texto o, lo que es todavía peor, crearlas a partir de cero. Hay que tener en cuenta que, cuando se comenzó a crear petraREV, se dio más importancia al número de funciones que se incorporaban que a la facilidad con la que podía configurarse. A fin de cuentas, si a un usuario normal, no le resultaba excesivamente fácil crear o modificar estas reglas, no parecía tener mucho sentido dedicar el esfuerzo a ofrecerle una posibilidad que, de todas maneras, rara vez utilizaría.<br />
<br />
Por este motivo, el editor de reglas gramaticales ha estado largo tiempo en la lista de tareas pendientes hasta que finalmente, hemos decidido prestarle la atención que requería, principalmente porque hemos visto que para determinados tipos de texto, es conveniente modificar o (por lo menos) eliminar con facilidad algunas reglas, por lo que queríamos ofrecer al usuario una manera elegante y cómoda de hacerlo.<br />
<br />
El plan inicial era sencillamente crear un editor específicamente creado para editar estas reglas. No obstante, algo fallaba en esta idea. A los usuarios no suele gustarles la proliferación de cuadros de diálogo y crear uno más, de un uso tan limitado, no parecía lo más adecuado. Tal vez en esta sensación de que este editor era un tanto innecesario radique la causa por la que durante tanto tiempo no se ha hecho.<br />
<br />
Tras reflexionar durante bastante tiempo, hemos encontrado finalmente una solución satisfactoria. Efectivamente, no era necesario un cuadro de diálogo más, porque ya hay un cuadro de diálogo que cumple una función bastante similar: el editor de la memoria de revisión. Aunque su función sea ligeramente diferente, en realidad el objetivo es el mismo, comprobar una serie de reglas y el hecho de que unas se basen en condiciones gramaticales y otras únicamente en la aparición o no de un texto concreto no es tan relevante. De hecho, ofrece la posibilidad de crear reglas gramaticales específicas para un proyecto, sin tener que almacenar la información en dos archivos diferentes.<br />
<br />
Por tanto, una vez que hemos tenido las ideas claras, ha sido sorprendentemente fácil actualizar el formato de la memoria de revisión. El único cambio visible es la incorporación de un cuadro combinado que permite elegir si una determinada condición es de texto o gramatical.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh9331hHh-j6uyV5NdgPIQvzM41ZmCtQzganGWH6nmtou3hm1zsvZ5iyjDYAPTJ_IQ9ijsZ6wAUsOLXc4q0piZ1-l7nbiElpF-WgC3L9qpsenrFDDffZwjF750KzrTEAXCI6LlSPXCjqY/s1600/editarCondici%25C3%25B3n.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="203" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgh9331hHh-j6uyV5NdgPIQvzM41ZmCtQzganGWH6nmtou3hm1zsvZ5iyjDYAPTJ_IQ9ijsZ6wAUsOLXc4q0piZ1-l7nbiElpF-WgC3L9qpsenrFDDffZwjF750KzrTEAXCI6LlSPXCjqY/s320/editarCondici%25C3%25B3n.png" width="320" /></a></div>
<br />
<br />
<br />
<br />
<br />
Claro que, como suele ocurrir con las actualizaciones, este cambio, nos ha sugerido muchas modificaciones. Por ejemplo, el formato XML de la memoria de revisión nos resulta ahora un tanto obsoleto y debería traducirse al inglés. Por otra parte, la función de comprobación de reglas gramaticales ha dejado de tener sentido y tal vez sería conveniente declararla obsoleta. Además, si realmente queremos facilitar la creación de reglas gramaticales, habría que incluir el asistente para editar estas condiciones... y es que ya se sabe, cuando te pones a renovar, sabes cuando empiezas, pero no cuando acabas.<br />
<br />
<br />
<br />Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-88459725274428155222015-12-07T08:11:00.001-08:002015-12-07T08:11:25.606-08:00Herramientas de búsqueda de textos en archivos: la navaja suiza de cualquier traductorSi tuviera que elegir una única aplicación para redactar una traducción, excluyendo por supuesto las que incluye cualquier sistema operativo, curiosamente la aplicación que elegiría no sería una aplicación específicamente diseñada para la traducción, pues escogería una aplicación que me permitiese hacer búsquedas en un conjunto de archivos de texto.<br /><br />En los años que llevo traduciendo, este tipo de herramientas ha demostrado ser las más versátiles y, aunque el trabajo me obliga a pasar de una herramienta de traducción a otra y a recurrir a todo tipo de diccionarios, esta pequeña pero útil herramienta ha demostrado ser de las más útiles y versátiles.<br /><br />En principio, parecería que la función que ofrecen estas herramientas debería proporcionarla cualquier sistema de memorias de traducción, pero desgraciadamente no es así. El problema es que las memorias de traducción parecen estar diseñadas principalmente para encontrar el segmento más similar al que estás buscando. Por ejemplo, si buscas el segmento «The monitor displays a yellow screen.» te mostrarán con suerte segmentos como «The monitor displays a red screen.» y hay que reconocer que hacen un buen trabajo en este sentido.<br /><br />El problema radica en que cuando no buscas un segmento, sino un término sino una expresión utilizan el mismo algoritmo y, en este caso, los resultados no son tan buenos por diversos motivos:<br /><br />La búsqueda no resulta tan precisa. Al buscar términos cortos puede interesarnos emplear opciones como «Coincidir mayúsculas y minúsculas» o «Coincidir palabras completas» que las memorias de traducción no incluyen.<br />No es posible establecer un orden de prioridades. Con frecuencia, disponemos de varios materiales con diversos niveles de prioridad. Por ejemplo, una memoria de traducción puede estar aprobada por el cliente y la otra puede ser una memoria de menor fiabilidad, pero más completa. Los algoritmos de las memorias de traducción suelen priorizar los resultados únicamente por grado de concordancia, lo que puede hacer que se nos pasen por alto resultados que tienen una mayor prioridad.<br />Solo admiten un documentos bilingües. Es fácil convertir cualquier documento bilingüe en una memoria de traducción, pero con frecuencia disponemos de otros tipos de materiales como, por ejemplo, consultas al cliente o textos monolingües, lo que obliga a realizar búsquedas en varias herramientas, con la consiguiente pérdida de tiempo.<br /><br />En general, ordenar los materiales en carpetas por prioridad y realizar búsquedas con una herramienta de búsqueda de texto suele ser el método más eficaz y eficiente de consultar la referencia de una traducción. Durante muchos años he utilizado una herramienta para este fin, pero dado que se trata de una herramienta desarrollado para un sistema operativo concreto su aplicación es limitada. Además, en ciertas ocasiones es fácil pensar que una herramienta diseñada específicamente para la traducción podría ser más útil.<br /><br />De esta manera, ha surgido la idea de potenciar esta herramienta, aunque para ello hay que comenzar construyendo un prototipo capaz de ofrecer la funcionalidad básica. Con este fin ha surgido OpenTextSearch, que en estos momentos es poco más que proyecto de fin de semana. Aún así, ya es capaz de buscar en carpetas y presentar los resultados de una manera suficientemente clara, como podéis ver en la siguiente captura:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEFJowU-UTgW0_PTB3mTLxzUqB1ORTuvB8YRc563rgqWTHS5DwC5cfmv5zIU3ATg7VrMNjzEtuU7RMHRVtnmJbQBWJvKz2ARxa8es6qEMXWHtUnuzWmcgYo9RjGDdMzQxHgc6kOPE_Sks/s1600/OpenTextSearch.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="189" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEFJowU-UTgW0_PTB3mTLxzUqB1ORTuvB8YRc563rgqWTHS5DwC5cfmv5zIU3ATg7VrMNjzEtuU7RMHRVtnmJbQBWJvKz2ARxa8es6qEMXWHtUnuzWmcgYo9RjGDdMzQxHgc6kOPE_Sks/s320/OpenTextSearch.png" width="320" /></a></div>
<br />
<br />
No obstante, esto es solo el principio. Conforme el proyecto avance, podremos incorporarle cada vez características más interesantes que harán que el trabajo de cualquier traductor sea más cómodo y productivo. Si quieres participar con ideas o te interesa probar la versión alfa, ¡no dudes en ponerte en contacto con nosotros»Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-21616723442957975582015-11-02T09:54:00.000-08:002015-12-07T08:12:48.133-08:00petraREV: Tirando del hilo de la madeja de las repeticiones<div style="text-align: justify;">
Muchos novelistas han comentado alguna vez que uno de los aspectos más apasionantes de escribir una historia es descubrir como se desarrolla, lo que muchas veces resulta una sorpresa para ellos mismos, a pesar del evidente control que tienen sobre ella. Al programar a veces ocurre algo parecido. Comienzas a escribir un método y, conforme vas tecleando aparecen de forma mágica el programa comienza a adquirir como por arte de magia funciones en que no eran las que tenías pensadas cuando te sentaste a escribir el código.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Algo parecido me ha ocurrido con la última función que he incorporado a petraREV y que tuvo su origen en una idea muy sencilla: la comprobación de coherencia, una de las primeras funciones de esta herramienta. Esta función es una de las más prácticas y, desde hace mucho, funciona de manera muy estable. No obstante, cuando revisaba con petraREV archivos en los que sabía que había muchas repeticiones y petraREV me decía escuetamente que no había ningún problema, no me sentía satisfecho con esta respuesta. ¿Había muchas repeticiones y todas estaban bien o, por algún motivo, no había problemas porque sencillamente no había repeticiones? Ningún número de la línea de resultados me informaba de ello, así que me decidí a incluir un pequeño número que me informara sencillamente del número de repeticiones que sí que habían coincidido.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Mi idea era incluir este número directamente en la rutina de comprobación de coherencia. Bastaba probablemente con dar visibilidad a algún cálculo interno para lograr la información que necesitaba. No obstante, al releer la rutina me di cuenta de que el dato que buscaba no era tan obvio y, ahora que me detenía a pensar en ello, me daba cuenta de que ni siquiera sabía exactamente lo que quería. ¿Importaban solo las repeticiones globales o era preferible desglosarlas por archivos? ¿Tal vez era una oportunidad para estudiar la distribución de repeticiones por archivos?</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Con todas estas consideraciones, era evidente que no bastaba con añadir un pequeño número al informe, así que comencé a escribir una nueva función, la número 84, para analizar las repeticiones. Decidí que la manera más completa de mostrar la información era indicar el número de segmentos que no se repiten en ningún otro sitio, las repeticiones dentro del propio archivo y las de los otros archivos. Tras unas cuantas líneas obtuve los datos deseados, pero la información mostrada en una tabla parecía poco intuitiva. Leer que un archivo tiene 17 segmentos nuevos, 5 repeticiones internas y 3 repeticiones externas no permite extraer ninguna conclusión rápida. Es posible convertir estas cifras al porcentajes, es decir, 68%, 20% y 12% respectivamente, pero sigue habiendo que detenerse unos momentos a analizar estos datos.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Por tanto, decidí construir un nuevo objeto gráfico que mostrase estos datos como porcentajes de una barra en varios colores. A la derecha, las palabras nuevas, luego las repeticiones internas y por último las externas. El resultado era mucho mejor, pero seguía sin aclararse una incógnita sobre esas repeticiones externas. ¿Estaban distribuidas en muchos archivos o en pocos? Y, aún más importantes, ¿había problemas de coherencia en estas repeticiones o no?</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
No parecía que el gráfico o la tabla pudiera incluir esta información sin convertirlo en un galimatías, así que le añadí a la función una opción de mostrar detalles de la repeticiones en los que, para cada archivo, se mostraría el número de segmentos repetidos que había y también los problemas de coherencia que planteaban. El objeto gráfico para crear barras de colores estaba ya creado así que decidí utilizarlo para mostrar una comparación entre los segmentos coincidentes y los no coincidentes. En este caso, los colores por defecto del gráfico no parecían adecuados (ni el azul oscuro ni el azul oscuro indican dónde está el problema), así que modifiqué la biblioteca gráfica para mostrar unos verde y rojo mucho más reveladores (¿a que en este caso ya no hace falta que diga qué color indica el error?).</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Ahora podía ver claramente el efecto sobre los demás archivos que tenían las repeticiones de un archivo, pero ver una columna de barras del mismo ancho podía inducir a error, porque sugería que todos los archivos eran igualmente similares al que se estaba analizando. ¿No sería preferible que el ancho de la barra fuera proporcional al número de segmentos repetidos presentes? Y, puestos a pedir, ¿no deberían aparecer en primer lugar los archivos en los que el número de repeticiones era mayor? Dicho y hecho, aunque para ello tuve que modificar una vez más el objeto gráfico y presentar los datos de otra manera, aparte de crear una nueva opción de configuración para que las rutas se pudieran reducir a la mínima longitud necesaria.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
El resultado podéis verlo debajo y creo que ilustra de manera bastante directa cómo se reparten los segmentos repetidos de un conjunto de segmentos, pero desde luego si os resulta críptico os agradecería enormemente que me pusieseis los pies en la tierra:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0lEZvfuWgYcQb4F7inYeS17TUyuKOArA8r9B3wkx8vwj6c2W8jhFPmSSnf0U-XQWD4NjA-nVksTjrvsCpBTwq0l8wcqLg54SOOtgqzs3MlRmOelulySXsT4fJdbhia8t2f2FArYL339A/s1600/repeticiones.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0lEZvfuWgYcQb4F7inYeS17TUyuKOArA8r9B3wkx8vwj6c2W8jhFPmSSnf0U-XQWD4NjA-nVksTjrvsCpBTwq0l8wcqLg54SOOtgqzs3MlRmOelulySXsT4fJdbhia8t2f2FArYL339A/s400/repeticiones.png" width="377" /></a></div>
<br />
Desde luego no pienso que la rutina esté completamente terminada. A fin de cuentas, falta traducirla al inglés y documentarla, aparte de que algunas mejoras siguen rondando mi cabeza. Por ejemplo, tal vez los archivos deberían aparecer ordenados por número de segmentos repetidos en lugar de por el orden en que se cargaron. Igualmente, tal vez la longitud de la barra que distingue entre repeticiones coincidentes y no coincidentes debería ser proporcional para todos los archivos (ahora es proporcional <i>para cada</i> archivo). Y desde luego, los números deberían aparecer alineados a la derecha. Aún así, son ya mejoras que no tengo tan claras. Siempre que hay que plantearse si una idea constituye una oportunidad o una distracción y ya no lo tengo tan claro sobre estas nuevas ideas.<br />
<br />
A fin de cuentas, lo que empezó siendo un pequeño número, se ha convertido en una nueva función, un nuevo objeto gráfico estadístico y hasta una nueva opción de configuración que tal vez pronto afecte a gran parte de los resultados que presenta petraREV y, desde luego, cuando comencé a programar no tenía ni idea que iba a descubrir esta historia.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-8328277529492432552015-08-30T03:01:00.002-07:002015-11-02T09:57:10.432-08:00petraTAG: Nueva versión con listas, por ejemplo, de rubios, morenos y calvos <div style="text-align: justify;">
Acabamos de lanzar la nueva versión de petraTAG, que puedes descargar de manera completamente gratuita desde <a href="http://www.opentranslation.es/petratag/instalacion.htm" target="_blank">http://www.opentranslation.es/petratag/instalacion.htm</a>.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Esta versión incluye dos grandes novedades. La primera, ya comentada en este blog, es la posibilidad de guardar textos etiquetados, por lo que si sueles trabajar con los mismos textos, solo tendrás que etiquetarlos una vez, guardarlos y ¡ya está! Cada vez que los cargues, se cargarán también las etiquetas, por lo que no tendrás que desperdiciar el tiempo en etiquetarlos.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
La segunda novedad consiste en la incorporación de una función de listas de lemas al asistente de secuencias. Por ejemplo, imagina que quieres estudiar el uso de determinados adjetivos en un texto. Antes hubieras tenido que buscar cada adjetivo y sumar manualmente los resultados, pero ahora puedes buscar de una vez todos los adjetivos que quieras y obtener automáticamente los resultados.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Pero probablemente sea verlo con un ejemplo práctico, así que vamos a ver cómo utilizan autores de diferentes países los adjetivos de color del pelo «moreno», «rubio» y «calvo». Nuestra tesis, un poco extravagante, es que los autores norteamericanos tienden a utilizar más el «rubio» y los latinos el «moreno».</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para ello, basta con abrir la pantalla de búsqueda, elegir la pestaña «Buscar secuencia» y hacer clic en el botón «Buscar». En el asistente que aparecerá veremos tres botones con puntos suspensivos, como vemos en la siguiente ilustración:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirZydvJkISUNJWYobQBQYN6l47zM1FWydbLqWiqSK2_U28-HJ1tw4MQO7VTknrGJXPuwkWOtMkW2Xk411cYCOisehiqNazVYkwMzsx7k6J-DKXbGB1Lj1QcUnSPVSi1Qqb3tWbnfAsbDs/s1600/asistente1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="133" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEirZydvJkISUNJWYobQBQYN6l47zM1FWydbLqWiqSK2_U28-HJ1tw4MQO7VTknrGJXPuwkWOtMkW2Xk411cYCOisehiqNazVYkwMzsx7k6J-DKXbGB1Lj1QcUnSPVSi1Qqb3tWbnfAsbDs/s400/asistente1.png" width="400" /></a></div>
<div style="text-align: justify;">
Estos botones permiten acceder a la pantalla de listas, donde podemos elegir la lista que nos interese. La principal utilidad de esta lista es ofrecernos un lugar cómodo donde almacenar listas, especialmente cuando sean listas que utilizamos con frecuencia o son particularmente listas. Las listas predeterminadas son las siguientes:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSK4HNldjryopp5PHZ98DQ_bcSwIRgKD76GQ41QWDKcNoDLSJuKurxmIbmlApjxQ3HZ4Nv0vgELGDfIrwpvscWcph58imOjQAOVP0sZw1WfgGbkwH3LZ1A5LRK0p4HjJng0R_kHL2uCBA/s1600/listas.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="312" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhSK4HNldjryopp5PHZ98DQ_bcSwIRgKD76GQ41QWDKcNoDLSJuKurxmIbmlApjxQ3HZ4Nv0vgELGDfIrwpvscWcph58imOjQAOVP0sZw1WfgGbkwH3LZ1A5LRK0p4HjJng0R_kHL2uCBA/s320/listas.png" width="320" /></a></div>
<div style="text-align: justify;">
Para los fines de nuestro estudio, elegimos la lista «calvo,moreno,rubio» haciendo doble clic en ella. Volveremos al asistente para secuencias, donde deberemos elegir que la palabra buscada sea un nombre, de manera que quede de la siguiente manera:</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJ-npJnJHCT7rpETucqX-fCExs40oqApnRAVNLKL4EjfLDbRSffOcwThLLzMYTmWKLmATsBJkjUzsZv0Dy2WUfD5KDN0ItDkAK6gv_gdqWwRla3kHBvdfMwRXsaUBvLSvLDs9wRwdCPNE/s1600/asistente2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="107" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJ-npJnJHCT7rpETucqX-fCExs40oqApnRAVNLKL4EjfLDbRSffOcwThLLzMYTmWKLmATsBJkjUzsZv0Dy2WUfD5KDN0ItDkAK6gv_gdqWwRla3kHBvdfMwRXsaUBvLSvLDs9wRwdCPNE/s320/asistente2.png" width="320" /></a></div>
<div class="separator" style="clear: both; text-align: justify;">
</div>
<div class="separator" style="clear: both; text-align: justify;">
</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
¡OJO! No es necesario utilizar la pantalla de listas para indicar una lista. También podemos indicar todos los elementos que nos interesan sencillamente separándolos con una coma sin espacio. Por ejemplo, podemos escribir «calvo,moreno,rubio», «rojo,verde,azul», «alegre,contento,enfadado,triste» o lo que queramos. La pantalla de lista solo es una manera cómoda de reutilizar las listas.</div>
<br />
<div class="separator" style="clear: both; text-align: justify;">
¡Ya queda muy poco! Eligiendo «Aceptar» volveremos a la pantalla de búsqueda. Para que sea más fácil interpretar los resultados, elegimos que se nos muestre la distribución y que sea del lema 0 (es decir, la palabra que estamos buscando). El resultado, debe ser el siguiente:</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEis0BfvDiY8se5Ig_v6RHLCfpZR-cS_STqRr-tkuuhpgtweHDQfg19ITZikElrLDJpXXix6rTufRD97a-UecZa2o0t1aVEOXatse2KX1mEJgyAeT_VSYcgXSPIu4xnIKyqNORWkWDf2S8U/s1600/buscarSecuencia.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="238" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEis0BfvDiY8se5Ig_v6RHLCfpZR-cS_STqRr-tkuuhpgtweHDQfg19ITZikElrLDJpXXix6rTufRD97a-UecZa2o0t1aVEOXatse2KX1mEJgyAeT_VSYcgXSPIu4xnIKyqNORWkWDf2S8U/s400/buscarSecuencia.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: justify;">
¡Ya solo queda comenzar a cargar textos y poner a prueba nuestra tesis! Nosotros hemos encontrado lo siguiente:</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
Matilde Asensi - El origen perdido (5 morenos, 4 rubios, 4 calvos)</div>
<div class="separator" style="clear: both; text-align: justify;">
Rosa Montero - La hija del caníbal (8 morenos, 5 rubios, 4 calvos)</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
Stephanie Meyer - Crepúsculo (3 morenos, 11 rubios, 1 calvo) </div>
<div class="separator" style="clear: both; text-align: justify;">
E. L. James - Cincuenta sombras de Grey (2 morenos, 30 rubios, 0 calvos) </div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
¡Y los resultados sorprendentemente parecen avalar nuestra tesis! ¿Pero y si hubiéramos considerado también las tonalidades pelirroja y castaña? Además, los libros que hemos elegido son bastante recientes, ¿habrá crecido o disminuido la presencia de rubios en la literatura con el tiempo? ¿Predominarán en la literatura romántica o en el terror? Ahora con petraTAG realizar cualquiera de estos estudios, o incluso uno que realmente merezca la pena, es más fácil que nunca.</div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
Si tienes cualquier duda respecto al uso de esta función, no dudes en escribirnos y estaremos encantados de ayudarte.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-14715180245003112062015-07-19T08:32:00.002-07:002015-07-19T08:32:55.066-07:00El demonio está en las mayúsculas<div style="text-align: justify;">
Al escribir cualquier aplicación de procesamiento del lenguaje natural, aspectos que suelen pasarse por alto en un principio acaban demostrando tener una importancia crucial. Como por ejemplo, los espacios, que con frecuencia se ignoran prácticamente, al figurar en los habituales tokens y, sin embargo, son con frecuencia la causa de cierto errores de errores muy difíciles de rastrear. O las mayúsculas, de las que bien podríamos decir que carecen de importancia hasta que se convierten en lo único importante.</div>
<div style="text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://upload.wikimedia.org/wikipedia/commons/8/81/Cyrillic_letter_A_-_uppercase_and_lowercase.svg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="230" src="https://upload.wikimedia.org/wikipedia/commons/8/81/Cyrillic_letter_A_-_uppercase_and_lowercase.svg" width="400" /></a></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
Por ejemplo, en petraREV recientemente hemos tenido que replantear nuestro sistema de buscar y copiar términos para tratar de manera más inteligente el uso de las mayúsculas y minúsculas.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
En principio, la estrategia que se seguía era <b>buscar cualquier resultado, independientemente del uso de mayúsculas y minúsculas</b>. Por ejemplo, imaginemos que buscamos el término «setup» y encontramos el siguiente resultado:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
1. Setup <span class="st">→ C</span>onfiguración</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
La mayúscula con la que comienza el término encontrado carece en este caso de poca importancia, ya que es preferible probablemente ver este resultado, a pesar de que no sea una coincidencia perfecta, que no ver ninguno.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Esta estrategia, si bien es agradablemente general, resulta poco precisa. Por ejemplo, imaginemos que encontramos dos resultados:</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
1. Setup <span class="st">→ C</span>onfiguración</div>
<div style="text-align: justify;">
2. setup <span class="st">→ </span>configuración</div>
<div style="text-align: justify;">
<br />En este caso, parece evidente que el resultado más interesante es el segundo, ya que no solo coincide el texto, sino también el uso de mayúsculas y minúsculas. Por tanto, resulta más útil cambiar la estrategia a <b>buscar cualquier resultado, independientemente del uso de mayúsculas y minúsculas, pero dando prioridad a los casos en los que también coinciden mayúsculas y minúsculas</b>.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
A pesar de ser una mejora, sigue habiendo casos en los que esta estrategia no funciona de manera óptima. Por ejemplo, imaginemos que obtenemos los siguientes resultados:</div>
<div style="text-align: justify;">
</div>
<div style="text-align: justify;">
1. Setup <span class="st">→ instalación</span></div>
<div style="text-align: justify;">
2. setup <span class="st">→ </span>configuración</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Si bien el segundo resultado sigue siendo más interesante, el primero también puede tener interés, ya que es el síntoma de una posible incoherencia terminológica que habría que estudiar. ¿Hay motivos para traducir «setup» como «instalación» o como «configuración»? ¿Cuál es la opción que se ha utilizado con mayor frecuencia en casos anteriores? ¿Es posible que haya conflictos con otros términos, como «configuration»? En cualquier caso, parece conveniente informar de esta incoherencia al usuario.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Por tanto, nuestra estrategia inicial deberá evolucionar a <b>buscar cualquier resultado, independientemente del uso de mayúsculas y minúsculas, pero dando prioridad a los casos en los que también coinciden mayúsculas y minúsculas, pudiendo descartarse los casos en los que la única diferencia entre las opciones presentadas es el uso de mayúsculas, pero no aquellos en los que hay diferencias de caracteres.</b></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Y si alguien piensa que estas matizaciones no son más que cuestiones teóricas sin utilidad práctica, se equivoca. La precisión de nuestro método hará que al usuario se le ofrezcan más o menos opciones, lo que incide directamente sobre el tiempo que dedica a consultar la terminología. Por tanto, menos y mejores opciones se traducen directamente en menos tiempo y más productividad. Tal como siempre se ha dicho, el demonio está en los detalles o, al menos en este caso, en las mayúsculas.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<br /></div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-48457806333044248282015-06-02T09:27:00.001-07:002015-06-02T09:27:19.275-07:00petraTAG: Llega la extensión .ttxt<div style="text-align: justify;">
El tiempo que transcurre desde que surge la idea de introducir una novedad en este proyecto hasta que el cambio termina de materializarse es tremendamente variable. Hay ideas que surgen y a los pocos días, si no a las pocas horas, ya están listas para probarlas, pero también hay ideas que van pasando una y otra vez de la lista de tareas de un año a la del año siguiente.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
A diferencia de lo que se podría pensar, esta variabilidad no depende ni de la utilidad de una novedad ni de la dificultad que implica ponerla en práctica. Hay ideas que no son nada fáciles y, además, su utilidad es bastante limitada, pero sin embargo se ponen en marcha rápidamente, porque resultan muy atractivas y, en ocasiones, su propia dificultad constituye un estímulo para ponerse manos a la obra.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
La novedad que abordaremos en esta entrada, sin duda, pertenece al grupo de cambios que se han aplazado una y otra vez. Prácticamente desde el principio, resultó evidente que etiquetar un texto cada vez que se cargaba era muy poco eficiente. El proceso de etiquetado es bastante lento, especialmente cuando se trata de textos muy extensos, por lo que esperar a que se realizase este proceso era tedioso y, además, tenía fácil solución: bastaba con ofrecer la posibilidad de guardar el texto con el etiquetado para que la próxima vez que se cargase el texto, tuviéramos ya el etiquetado listo desde el principio.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Precisamente esta función es la que cumple la nueva extensión que admite ahora petraTAG, la extensión .ttxt. Los archivos con esta extensión contienen ya el etiquetado del texto, por lo que se cargan en apenas un par de segundos. Para guardar un texto con este formato, basta con cargarlo, aguardar pacientemente a que finalice el etiquetado para, a continuación, seleccionar <b>Archivo → Exportar</b> y, tras seleccionar la ruta del archivo y el tipo de exportación <b>Texto etiquetado</b>, hacer clic en <b>Exportar</b>. Para introducir este cambio, se han pulido también varios aspectos del funcionamiento interno de petraTAG, que ahora es más eficiente.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Aparte de la comodidad inmediata que aporta esta nueva función, también abre varias posibilidades interesantes. Por ejemplo, al ser posible guardar el etiquetado de un texto, podría ser interesante incluir un corrector de etiquetado que permitiera corregir los errores de etiquetado mediante un sistema similar a los cuadros de diálogo de corrección ortográfica que suelen incluir los procesadores de texto. Una nueva función que, tal vez, pronto incluirá petraTAG.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-46492830734773585082015-02-25T09:58:00.003-08:002015-02-25T09:58:59.001-08:00petraREV: Más buscar y copiarLa nueva versión de petraREV está en pleno proceso de desarrollo. En esta ocasión, estamos intentando conseguir que el programa resulte más intuitivo. Concretamente, se han añadido varias mejoras a la pestaña Buscar y copiar para que su uso sea más cómodo. Por ejemplo, ahora cuando hay varias opciones se da prioridad a aquella cuyo uso de mayúsculas y minúsculas coincida con el del texto introducido. Además, si hay varias opciones, nos aparecerá un pequeño cuadro de diálogo para elegir la que preferimos. Además, cuando no hay ninguna concordancia exacta, pero se encuentran resultados relevantes, la información se muestra en la ventana habitual de petraREV, lo que facilita copiar y pegar el texto que queramos.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlVd84sbOxu1L4Pq2dMX9TUfksHZmXb1eH6vFMim-y7GfGDPKJ902k43A8mJXJ5tQYKqjCqOHhIotJwQp5lqVvWDuFm3Pznv7jS8as9O7BEpHVQ5Z9zmFG7dBB972Z3Hy8_maOe6C_ayg/s1600/buscarCopiar.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlVd84sbOxu1L4Pq2dMX9TUfksHZmXb1eH6vFMim-y7GfGDPKJ902k43A8mJXJ5tQYKqjCqOHhIotJwQp5lqVvWDuFm3Pznv7jS8as9O7BEpHVQ5Z9zmFG7dBB972Z3Hy8_maOe6C_ayg/s1600/buscarCopiar.png" /></a></div>
<div style="text-align: center;">
Nueva pantalla para elegir la traducción</div>
<br />
Un montón de novedades que no acaban aquí, ya que el equipo de desarrollo está experimentando con una nueva función de traducción semiautomática que podría aportar una comodidad aún mayor cada vez que hagamos algo tan sencillo como copiar y pegar texto.Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-43994070928305132472014-09-30T11:16:00.002-07:002014-09-30T11:17:12.057-07:00petraREV: Repetido, repetido, repetido<div style="text-align: justify;">
El inglés y el español son bastante diferentes en lo relativo a la tolerancia a la repetición de palabras. Mientras que en inglés es perfectamente normal que un sustantivo o verbo aparezcan repetidos varias veces a unas pocas palabras de distancia, en español tal repetición resulta forzada y pesada.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Al traducir es fácil que, atentos principalmente al texto de origen, pasemos por alto estas repeticiones y escribamos una y otra vez la misma palabra, cuando hubiera resultado más natural y fluido recurrir a un pronombre o un sinónimo. Normalmente, una relectura del texto permite detectar este problema, pero cuando el tiempo apremia con frecuencia apenas podremos centrarnos en otros aspectos más evidentes.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihiOk4MCeiqCJIIDiDQBTwM81cQbcWwU_PJM3vqVKGCeVJzTAuNeEDoVEQ-u5lWpT_SUc5G4EVqsRZhrnMLoVN0ngl-9qka4zBVGrOzlk5El7u9VNNNHMztlwCsIu1pL85MRKfKRwykVg/s400/simetria_1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihiOk4MCeiqCJIIDiDQBTwM81cQbcWwU_PJM3vqVKGCeVJzTAuNeEDoVEQ-u5lWpT_SUc5G4EVqsRZhrnMLoVN0ngl-9qka4zBVGrOzlk5El7u9VNNNHMztlwCsIu1pL85MRKfKRwykVg/s400/simetria_1.jpg" height="320" width="320" /></a></div>
<br />
<div style="text-align: justify;">
Para conseguir que podamos deshacernos de estas repeticiones rápidamente, la próxima versión de petraREV incluirá una función destinada específicamente a detectar este problema. Por defecto, solo se comprobarán los nombres y los verbos, aunque es fácil ampliar o reducir las palabras detectadas por esta función modificando su configuración. También es posible determinar ciertas excepciones. Por ejemplo, los verbos «ser», «estar» y «haber» se utilizan con tal frecuencia dada su naturaleza de auxiliares que generarían un gran número de falsos positivos que ocultarían casos más interesantes.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Hay que resaltar que esta función no se basa en palabras concretas, sino en lemas, lo que permite detectar si hemos escrito, por ejemplo, «reducirá» cuatro palabras después de un «reduciendo».</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-91563421315675225672014-09-27T00:48:00.000-07:002014-09-27T00:48:00.956-07:00petraREV: Llegan los gráficos estadísticos<div style="text-align: justify;">
La próxima versión de petraREV incorporará gráficos estadísticos, lo que permitirá crear presentaciones visuales que resalten características interesantes.</div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Por el momento, estos gráficos solo están disponibles para la búsqueda de elementos, pero próximamente es probable que se incorporen en otras funciones de la aplicación.</div>
<div style="text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXRfgt2TwbdKGJJssLkp25LH8cSRQGiVfYPbpA2P0BTEEgt4e4dmM5iY5e4nkpOFVJdLrwSICCl8VzJNqtzxBt_h8rceaz1MBXttXNXNKVgZSOlfa3iBt0yqIHWltyuF6TJFXa2frQjAs/s1600/graficos.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXRfgt2TwbdKGJJssLkp25LH8cSRQGiVfYPbpA2P0BTEEgt4e4dmM5iY5e4nkpOFVJdLrwSICCl8VzJNqtzxBt_h8rceaz1MBXttXNXNKVgZSOlfa3iBt0yqIHWltyuF6TJFXa2frQjAs/s1600/graficos.png" height="374" width="640" /></a></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Entre otras utilidades, estos gráficos pueden ayudar a comparar visualmente las frecuencias de palabras entre diversos conjuntos de texto, ofreciendo una interesante herramienta para estudiar y modificar el estilo de manera analítica.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-70850418523608041012014-08-28T09:44:00.000-07:002014-08-28T09:44:08.013-07:00petraTAG: Una cuestión de tamaño<div style="text-align: justify;">
Al etiquetar un texto, la primera impresión es que cuanto mayor sea el diccionario, mejor. Ciertamente, las mayores dimensiones del diccionario ralentizarán el procedimiento y el número mayor de entradas del diccionario ocasionarán un mayor gasto de memoria. Aún así, dadas las capacidades de los modernos ordenadores y teniendo en cuenta que el etiquetado con frecuencia solo debe realizarse una vez, parece preferible emplear un diccionario lo más completo posible... o al menos así era hasta la llegada de los modernos teléfonos inteligentes.<br /><br />En este tipo de dispositivos, por mucho que aumenten sus características, las limitaciones de memoria y la necesidad de optimizar el uso de la batería obligan a buscar soluciones más eficientes. De hecho, es cierto que una gran parte de las entradas del diccionario nunca se utilizarán, bien porque son palabras raramente utilizadas (¿alguien ha empleado alguna vez «descentralizárnoslos»?) o bien porque pertenecen a campos muy específicos («metilendioximetanfetamina» no es una palabra que suela salir en una conversación).<br /><br />La cuestión es, entonces, ¿cómo separar el grano de la paja? Una revisión manual no solo sería extremadamente lenta, sino que además tal vez ni siquiera eficiente. Como solución, petraTAG ha añadido una nueva función de exportación de reglas de desambiguación que crea un diccionario reducido, que solo contiene las palabras que contiene el texto etiquetado. Por ejemplo, al extraer las entradas necesarias para etiquetar la novela «Crepúsculo», nos encontramos con un diccionario con 12.352 entradas, un número muy alejado de las 266.790 entradas (¡y subiendo!) que contiene el diccionario más reciente de petraTAG.</div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTm60I2RRaS20ULtWCD09hQHLwlLCHm005C41UMUjEp9arGyvW_bU64BYbwQb0ZRKGYS94TWlIW_YNh4dNEIMABNMdwGojEWVle4tkE9oNZiCEzLnqz7MxYRuUH3eZk_XiaqinQPE7AQg/s1600/exportarReglas.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTm60I2RRaS20ULtWCD09hQHLwlLCHm005C41UMUjEp9arGyvW_bU64BYbwQb0ZRKGYS94TWlIW_YNh4dNEIMABNMdwGojEWVle4tkE9oNZiCEzLnqz7MxYRuUH3eZk_XiaqinQPE7AQg/s1600/exportarReglas.png" height="237" width="320" /></a></div>
<br />
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
Para facilitar aún más este procedimiento, esta función no borra las entradas presentes en el archivo indicado, sino que añade únicamente las nuevas, lo que facilita en gran medida la ampliación de diccionarios según las necesidades, sin que sea preciso partir de cero una y otra vez. Ahora, crear con petraTAG un diccionario personalizado es más fácil que nunca.</div>
Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-2321076730065996160.post-89495763290318590012014-07-20T02:23:00.000-07:002014-07-20T02:23:22.898-07:00petraTAG: Corrección del formato de archivos TXT procedentes de PDFAl haberse creado el formato PDF expresamente para la lectura de documentos, con frecuencia resulta incómodo cuando se intenta trabajar con el texto de un archivo PDF con una herramienta diferente de un lector, como por ejemplo petraTAG.<br />
<br />
Aunque muchos de los lectores de archivos PDF ofrecen la posibilidad exportar el texto a un archivo de solo texto, con frecuencia el archivo resultante suele ser bastante incómodo de utilizar. Un problema muy habitual es que abundan saltos de párrafo que no deberían existir. Es decir, muchas veces el texto se exporta como:<br />
<br />
<i>Linux es un operativo</i><br />
<i>pensado tanto para</i><br />
<i>funcionar en el hogar</i><br />
<i>como en el trabajo.</i><br />
<br />
En lugar de:<br />
<br />
<i>Linux es un operativo pensado tanto para funcionar en el hogar como en el trabajo.</i><br />
<br />
Podemos ver que el archivo se exporta tal como se muestra en pantalla en el PDF de origen, lo que provoca que una misma frase aparezca cortada en varios fragmentos.<br />
<br />
Para facilitar el trabajo con este tipo de archivos, petraTAG incorpora ahora un nuevo cuadro de diálogo, al que se accede mediante el menú <b>Archivo</b> <span class="st">→ <b>Preparar archivo</b>:</span><br />
<span class="st"><br /></span>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6dJo67492q-pwMF-mMPcReUeVZvD2rk2-dF9T4ocb5wL7M9kpSxN3C0wSD80FdxlxlB8cqYYeqVvz2XBJXI8UUYaVvt3F9Ip0hrAKdksglP6IwW0bKsrhlRamkCPNexIp2SuW5Zt9BMU/s1600/prepararArchivo.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi6dJo67492q-pwMF-mMPcReUeVZvD2rk2-dF9T4ocb5wL7M9kpSxN3C0wSD80FdxlxlB8cqYYeqVvz2XBJXI8UUYaVvt3F9Ip0hrAKdksglP6IwW0bKsrhlRamkCPNexIp2SuW5Zt9BMU/s1600/prepararArchivo.png" height="320" width="288" /></a></div>
<br />
<span class="st">En este cuadro de diálogo, podemos elegir el archivo cuyo formato queremos corregir (IMPORTANTE: Debe ser un archivo TXT exportado mediante un lector de PDF y NO un archivo en formato PDF). También podemos elegir la ruta en la que queremos guardar el archivo corregido. </span><br />
<span class="st"><br /></span>
<span class="st">Aunque hay varias opciones, por ejemplo, para </span><span class="st">quitar los números de página que también pueden ser muy molestos, normalmente basta con utilizar las opciones predeterminadas.</span><br />
<span class="st"><br /></span>
<span class="st">De esta manera, en cuestión de segundos podremos disponer de un archivo mejorado con el que podremos trabajar a nuestro gusto.</span>Unknownnoreply@blogger.com0