Next: 3.2.2 Opciones de implementación
Up: 3.2 El editor de 
 Previous: 3.2 El editor de 
 
 
Un editor de componentes léxicos se puede ver como una versión transformada de un editor de
textos habitual, de modo que permita la edición de un texto analizado de
la forma más natural posible que sea compatible con el mantenimiento
de la información precisada por el analizador para que éste sea capaz de realizar
un post-procesamiento incremental eficiente de los cambios introducidos por el 
usuario. Para que esto sea posible, debe procederse a un cuidadoso análisis  para 
determinar las funcionalidades que deberá proporcionar y las tareas que 
tendrá que realizar. Es muy importante tener en mente el impacto que tendrá en 
el resultado final cada uno de los requerimientos planteados, así como el 
esfuerzo computacional requerido por cada uno de ellos.
La lista de requerimientos para el editor de componentes léxicos es la siguiente:
-  Al cargar un archivo de texto, mientras éste no sea analizado se deberá
	permitir editar su contenido como si se tratase de un editor normal. A tal 
	efecto podrá:
	
-  Moverse libremente por todo el texto.
 -  Insertar, borrar y modificar texo.
 -  Realizar operaciones adicionales de edición (borrar una palabra, borral una línea, etc.)
 -  Realizar búsquedas y sustituciones.
 -  Cortar y pegar utilizando el ratón.
	
 
	Se dispondrá de combinaciones de teclas que permitan realizar rápidamente las
	operaciones descritas.
 -  Cuando el texto sea analizado, se estructurará mediante unidades
	elementales que se corresponderán con el texto
asociado a cada uno de los componentes léxicos
	resultantes del análisis.
 -  En un texto analizado, ya no será posible realizar libremente operaciones normales de
	edición como las descritas en el primer punto. A partir del análisis,
	toda operación que suponga una modificación del texto deberá de ser realizada
	basándose en la nueva estructura de unidades textuales que se corresponden con los componentes léxicos.
	Las operaciones básicas permitidas serán:
	
-  Insertar texto entre dos componentes léxicos consecutivos.
 -  Modificar el texto correspondiente a un componente léxico
 -  Borrar el texto correspondiente a un componente léxico.
 -  Obtener información de un componente léxico.
	
 
	La necesidad de este requerimiento estriba en que ICE debe conocer entre
	qué componentes léxicos se han realizado las modificaciones respecto al texto del
	análisis anterior para poder aplicar 
	la incrementalidad al siguiente análisis del texto.
 -  El usuario podrá indicar mediante un simple click del ratón el punto en 
	el que desea llevar a cabo alguna
	de las operaciones permitidas en un texto analizado. Se deberán utilizar recursos
	gráficos (fuentes, colores) que permitan distinguir fácilmente el alcance de la modificación
.
 
Este conjunto de requerimientos expresa la funcionalidad básica que debe proporcionar el 
editor de componentes léxicos. Sin embargo, para conseguir un editor realmente útil es
necesario formular un nuevo requisito concerniente a la eficiencia:
-  El editor de componentes léxicos deberá realizar las operaciones requeridas en un tiempo
	lo suficientemente reducido como para no suponer una sobrecarga en el
	proceso de análisis incremental, entendiendo éste como la suma de los
	tiempos correspondientes tanto al análisis sintáctico propiamente dicho 
	como los que se deben al procesamiento provocado por las operaciones de 
	edición sobre los componentes léxicos. En este tiempo no se deben incluir los periodos
	asociados al mecanografiado ni a las operaciones relativas al texto que no 
	involucren a las estructuras de representación del texto con respecto
	a los componentes léxicos.
 
Este requerimiento tiene una explicación evidente: de nada sirve tener
un sistema de análisis incremental muy rápido, si al realizar una operación 
de edición, por ejemplo borrar un componente léxico, se provoca una carga de procesamiento tan
elevada por la reorganización de las estructuras de datos que enlazan
el texto con los componente léxico que llega a ser excesivamente significativa respecto al total e incluso
perceptible por parte del el usuario: probablemente se emplearía menos tiempo realizando un
reanálisis total mediante técnicas clásicas.
 
 
 
  
 Next: 3.2.2 Opciones de implementación
Up: 3.2 El editor de 
 Previous: 3.2 El editor de 
Miguel A. Alonso Pardo 
Thu Nov 20 16:47:01 CET 1997