stringtranslate.com

Editor de texto

Editores como Leafpad , que se muestra aquí, a menudo se incluyen con los sistemas operativos como una aplicación auxiliar predeterminada para abrir archivos de texto.

Un editor de texto es un tipo de programa informático que edita texto sin formato . Estos programas a veces se conocen como software " bloc de notas " (por ejemplo, el Bloc de notas de Windows ). [1] [2] [3] Los editores de texto se proporcionan con sistemas operativos y paquetes de desarrollo de software, y pueden usarse para cambiar archivos como archivos de configuración , archivos de documentación y código fuente del lenguaje de programación . [4]

Texto sin formato y texto enriquecido

Existen diferencias importantes entre texto sin formato (creado y editado por editores de texto) y texto enriquecido (como el creado por procesadores de texto o software de autoedición ).

El texto plano se compone exclusivamente de representación de caracteres. Cada carácter está representado por una secuencia de longitud fija de uno, dos o cuatro bytes, o como una secuencia de longitud variable de uno a cuatro bytes, de acuerdo con convenciones de codificación de caracteres específicas , como ASCII , ISO/IEC 2022 , Shift . JIS , UTF-8 o UTF-16 . Estas convenciones definen muchos caracteres imprimibles, pero también caracteres no imprimibles que controlan el flujo del texto, como espacio , salto de línea y salto de página . El texto sin formato no contiene ninguna otra información sobre el texto en sí, ni siquiera la convención de codificación de caracteres empleada. El texto sin formato se almacena en archivos de texto , aunque los archivos de texto no almacenan exclusivamente texto sin formato. Desde los primeros días de las computadoras, el texto sin formato (antes por necesidad y ahora por convención) generalmente se mostraba usando una fuente monoespaciada , de modo que la alineación horizontal y el formato de columnas a veces se realizaban usando caracteres de espacio en blanco.

El texto enriquecido, por otro lado, puede contener metadatos, datos de formato de caracteres (por ejemplo, tipo de letra, tamaño, peso y estilo ), datos de formato de párrafo (por ejemplo, sangría, alineación, distribución de letras y palabras, y espacio entre líneas u otros párrafos), y datos de especificación de página (por ejemplo, tamaño, margen y dirección de lectura). El texto enriquecido puede ser muy complejo. El texto enriquecido se puede guardar en formato binario (por ejemplo, DOC ), archivos de texto que se adhieren a un lenguaje de marcado (por ejemplo, RTF o HTML ) o en una forma híbrida de ambos (por ejemplo, Office Open XML ).

Los editores de texto están destinados a abrir y guardar archivos de texto que contienen texto sin formato o cualquier cosa que pueda interpretarse como texto sin formato, incluido el marcado para texto enriquecido o el marcado para otra cosa (por ejemplo, SVG ).

Historia

Una caja de tarjetas perforadas con varios mazos de programas.

Antes de que existieran los editores de texto, el texto de la computadora se perforaba en tarjetas con máquinas perforadoras . [5] Luego se insertaron cajas físicas de estas finas tarjetas de cartón en un lector de tarjetas . Los archivos de imágenes de cintas magnéticas , tambores y tarjetas de disco creados a partir de dichas barajas de tarjetas a menudo no tenían ningún carácter de separación de líneas y asumían registros de longitud fija [a] de 80 o 90 caracteres [6] . [7] Una alternativa a las tarjetas era la cinta perforada . Podría ser creado por algunos teleimpresores (como el Teletipo), que utilizaban caracteres especiales para indicar el final de los registros. [8] Algunos de los primeros sistemas operativos incluían editores de texto por lotes, ya sea integrados con procesadores de lenguaje o como programas de utilidad separados; Un ejemplo temprano fue la capacidad de editar archivos fuente SQUOZE para SCAT [9] en el sistema operativo SHARE .

Los primeros editores de texto interactivos fueron "editores de línea" orientados a terminales estilo teleimpresor o máquina de escribir sin pantalla. Los comandos (a menudo una sola pulsación de tecla) realizaban ediciones en un archivo en un punto de inserción imaginario llamado "cursor". Las ediciones se verificaron escribiendo un comando para imprimir una pequeña sección del archivo y periódicamente imprimiendo el archivo completo. En algunos editores de línea, el cursor se podía mover mediante comandos que especificaban el número de línea en el archivo, cadenas de texto (contexto) para buscar y, eventualmente, expresiones regulares . Los editores de línea supusieron mejoras importantes con respecto a la pulsación de teclas. Algunos editores de línea podrían usarse mediante pulsación de teclas; Los comandos de edición se pueden tomar de una baraja de cartas y aplicarlos a un archivo específico. Algunos editores de líneas comunes admitían un modo de "verificación" en el que los comandos de cambio mostraban las líneas alteradas.

Cuando estuvieron disponibles terminales de computadora con pantallas de video, aparecieron los editores de texto basados ​​en pantalla (a veces llamados simplemente "editores de pantalla")se volvió común. Uno de los primeros editores de pantalla completa fue O26 , que fue escrito para la consola del operador de las computadoras de la serie CDC 6000 en 1967. Otro de los primeros editores de pantalla completa fue vi . Escrito en la década de 1970, sigue siendo un editor estándar [10] en los sistemas operativos Unix y Linux . También se escribió en la década de 1970 el editor orientado a pantalla Pascal de UCSD , que se optimizó tanto para código fuente sangrado como para texto general. [11] Emacs , uno de los primeros proyectos de software gratuito y de código abierto , es otro de los primeros editores de pantalla completa o en tiempo real, que fue adaptado a muchos sistemas. [12] El Commodore PET de 1977 fue el primer ordenador del mercado masivo que contó con un editor de pantalla completa. La facilidad de uso y la velocidad de un editor de pantalla completa (en comparación con los editores basados ​​en líneas) motivaron muchas compras iniciales de terminales de vídeo. [13]

La estructura de datos central en un editor de texto es la que administra la cadena (secuencia de caracteres) o lista de registros que representa el estado actual del archivo que se está editando. Si bien el primero podía almacenarse en una única serie larga y consecutiva de caracteres, el deseo de contar con editores de texto que pudieran insertar texto, eliminarlo y deshacer/rehacer ediciones anteriores más rápidamente llevó al desarrollo de estructuras de datos de secuencia más complicadas. [14] Un editor de texto típico utiliza un buffer de espacio , una lista enlazada de líneas (como en PaperClip ), una tabla de piezas o una cuerda , como estructura de datos de secuencia.

Tipos de editores de texto

Emacs, un editor de texto popular entre los programadores, que se ejecuta en Microsoft Windows
gedit es un editor de texto incluido con GNOME

Algunos editores de texto son pequeños y sencillos, mientras que otros ofrecen funciones amplias y complejas. Por ejemplo, los sistemas operativos Unix y similares tienen el editor pico (o una variante), pero muchos también incluyen los editores vi y Emacs. Los sistemas Microsoft Windows vienen con el sencillo Bloc de notas , aunque muchas personas, especialmente los programadores, prefieren otros editores con más funciones. En el Mac OS clásico de Apple Macintosh existía el TeachText nativo, que luego fue reemplazado por SimpleText en 1994, que fue reemplazado en Mac OS X por TextEdit , que combina características de un editor de texto con las típicas de un procesador de textos, como reglas, márgenes y selección de fuentes múltiples. Estas funciones no están disponibles simultáneamente, pero deben cambiarse mediante un comando del usuario o mediante el programa que determina automáticamente el tipo de archivo .

La mayoría de los procesadores de texto pueden leer y escribir archivos en formato de texto sin formato, lo que les permite abrir archivos guardados desde editores de texto. Sin embargo, guardar estos archivos desde un procesador de texto requiere asegurarse de que el archivo esté escrito en formato de texto sin formato y que cualquier codificación de texto o configuración de BOM no oscurezca el archivo para su uso previsto. Los procesadores de texto que no son WYSIWYG , como WordStar , se utilizan más fácilmente como editores de texto y, de hecho, se utilizaron comúnmente como tales durante la década de 1980. El formato de archivo predeterminado de estos procesadores de texto a menudo se parece a un lenguaje de marcado, siendo el formato básico texto sin formato y formato visual logrado mediante caracteres de control no imprimibles o secuencias de escape . Los procesadores de texto posteriores, como Microsoft Word, almacenan sus archivos en formato binario y casi nunca se utilizan para editar archivos de texto sin formato. [15]

Algunos editores de texto pueden editar archivos inusualmente grandes, como archivos de registro o una base de datos completa colocada en un solo archivo. Los editores de texto más simples pueden simplemente leer archivos en la memoria principal de la computadora . Con archivos más grandes, este puede ser un proceso lento y es posible que no quepa todo el archivo. Algunos editores de texto no permiten que el usuario comience a editar hasta que se complete la lectura. El rendimiento de la edición también suele verse afectado en los editores no especializados, ya que el editor tarda segundos o incluso minutos en responder a las pulsaciones de teclas o comandos de navegación. Los editores especializados tienen optimizaciones como almacenar solo la parte visible de archivos grandes en la memoria, lo que mejora el rendimiento de edición.

Algunos editores son programables, lo que significa, por ejemplo, que pueden personalizarse para usos específicos. Con un editor programable es fácil automatizar tareas repetitivas o agregar nuevas funcionalidades o incluso implementar una nueva aplicación dentro del marco del editor. Un motivo común para personalizar es hacer que un editor de texto utilice los comandos de otro editor de texto con el que el usuario esté más familiarizado, o duplicar la funcionalidad faltante de la que el usuario ya depende. Los desarrolladores de software suelen utilizar personalizaciones del editor adaptadas al lenguaje de programación o entorno de desarrollo en el que trabajan. La programabilidad de algunos editores de texto se limita a mejorar la funcionalidad de edición principal del programa, pero Emacs se puede extender mucho más allá de la edición de archivos de texto: para web. navegar, leer correos electrónicos, chatear en línea, administrar archivos o jugar juegos y, a menudo, se lo considera un entorno de ejecución Lisp con una interfaz de usuario de texto . Emacs puede incluso programarse para emular a Vi , su rival en las tradicionales guerras de editores de la cultura Unix . [16] [17]

Un grupo importante de editores programables utiliza REXX [b] como lenguaje de scripting. Estos "editores ortodoxos" contienen una "línea de comando" en la que se pueden escribir comandos y macros y líneas de texto en las que se pueden escribir comandos de línea [c] y macros. La mayoría de estos editores son derivados de ISPF/PDF EDIT o de XEDIT , el editor insignia de IBM para VM/SP hasta z/VM . Entre ellos se encuentran THE , KEDIT , X2, Uni-edit y SEDIT .

Un editor de texto escrito o personalizado para un uso específico puede determinar lo que el usuario está editando y ayudarlo, a menudo completando términos de programación y mostrando información sobre herramientas con documentación relevante. Muchos editores de texto para desarrolladores de software incluyen resaltado de sintaxis del código fuente y sangría automática para que los programas sean más fáciles de leer y escribir. Los editores de programación a menudo permiten al usuario seleccionar el nombre de un archivo , función o variable de inclusión y luego saltar a su definición. Algunos también permiten una fácil navegación de regreso a la sección original del código almacenando la ubicación inicial del cursor o mostrando la definición solicitada en una ventana emergente o en un búfer temporal. Algunos editores implementan esta capacidad ellos mismos, pero a menudo se utiliza una utilidad auxiliar como ctags para localizar las definiciones.

Características típicas

Características avanzadas

Editores especializados

Algunos editores incluyen características especiales y funciones adicionales, por ejemplo,

Los editores programables generalmente se pueden mejorar para realizar cualquiera o todas estas funciones, pero los editores más simples se centran en solo una o, como gPHPedit , están dirigidos a un solo lenguaje de programación.

Ver también

Notas

  1. ^ A finales de la década de 1960, había editores disponibles que admitían registros de longitud variable.
  2. ^ Originalmente, las macros se escribían en ensamblador, CLIST ( TSO ), CMS EXEC ( VM ), EXEC2 (VM/SE) o PL/I , pero la mayoría de los usuarios abandonaron CLIST, EXEC y EXEC2 una vez que REXX estuvo disponible.
  3. ^ Un comando de línea es un comando escrito en el área de entrada del número de secuencia asociado con una línea de texto específica y cuyo alcance se limita a esa línea o, en el caso de un comando de bloque, asociado con el bloque de líneas entre el principio y el final. comandos de final de línea. Un ejemplo de esto último sería escribir el comando ucc (bloquear mayúsculas) en las áreas de entrada de dos líneas; esto tiene el mismo efecto que escribir uc (mayúscula) en el área de entrada de cada línea del rango.

Referencias

  1. ^ H. Albert Napier; Ollie N. Ríos; Estuardo Wagner (2005). Creación de un negocio electrónico ganador. Aprendizaje Cengage. pag. 330.ISBN _ 1111796092.
  2. ^ Peter Norton; Scott H. Clark (2002). Lo nuevo de Peter Norton dentro de la PC. Editorial Sams. pag. 54.ISBN _ 0672322897.
  3. ^ L. Gopalakrishnan; G. Padmanabhan; Sudhat Shukla (2003). La PC de su hogar: cómo aprovechar al máximo su computadora personal. Educación de Tata McGraw-Hill . pag. 190.ISBN _ 0070473544.
  4. ^ "Los mejores editores de texto gratuitos para Windows, Linux y Mac". 28 de abril de 2012. Cada sistema operativo viene con un editor de texto básico predeterminado, pero la mayoría de nosotros instalamos nuestros propios editores de texto mejorados para obtener más funciones.
  5. ^ Fuerte, Kenneth C.; Lambert, Kenneth A. (26 de enero de 2011). Lenguajes de programación: principios y prácticas. Aprendizaje Cengage. pag. 5.ISBN _ 978-1-133-38749-7.
  6. ^ "CONVERTIDOR DE TARJETA A CINTA MAGNÉTICA PERFORADA DE 90 COLUMNAS UNIVAC" (PDF) . Sistema de automatización de datos UNIVAC II (PDF) . División Remington-Rand Univac de Sperry Rand Corporation. 1957. pág. 246 . Consultado el 16 de diciembre de 2022 .,
  7. ^ Alavudeen, A.; Venkateshwaran, N. (18 de agosto de 2008). Fabricación integrada por ordenador. PHI Aprendizaje Pvt. Limitado. Ltd. pág. 180.ISBN _ 978-81-203-3345-1.
  8. ^ Upton, Eben; Duntemann, Jeffrey; Roberts, Ralph; Mamtora, Tim; Everard, Ben (22 de agosto de 2016). Aprender arquitectura de computadoras con Raspberry Pi. John Wiley e hijos. págs. 232-234. ISBN 978-1-119-18394-5.
  9. ^ "Modificar y cargar" (PDF) . Manual de referencia SOS (PDF) . IBM . Noviembre de 1959 [Distribución nº 1 publicada en 1959]. pag. 05.01.01 . Consultado el 15 de diciembre de 2022 .
  10. ^ "Las especificaciones básicas de Open Group, edición 6, IEEE Std 1003.1, edición de 2004". El IEEE y el Open Group. 2004 . Consultado el 18 de enero de 2010 .
  11. ^ L. Bowles, Kenneth; Hollan, James (1 de julio de 1978). "Una introducción al sistema PASCAL de UCSD". Métodos de investigación del comportamiento . 10 (4): 531–534. doi : 10.3758/BF03205341 .
  12. ^ "Presentación del entorno de edición de Emacs". IBM . Archivado desde el original el 6 de junio de 2014 . Consultado el 6 de junio de 2014 .
  13. ^ "Multics Emacs: historia, diseño e implementación". Algunos usuarios de Multics compraron estos terminales..., usándolos como "teletipos de vidrio" o mediante "edición local".
  14. ^ Charles Crowley. "Estructuras de datos para secuencias de texto". Sección "Introducción".
  15. ^ "Editores de texto para programadores: herramientas de programación". Si abre un archivo .doc en un editor de texto, notará que la mayor parte del archivo tiene códigos de formato. Sin embargo, los editores de texto no agregan códigos de formato, lo que facilita la compilación del código.
  16. ^ "Guía de migración caótica de Vim a Emacs' Evil". juanjoalvarez.net .
  17. ^ "Gitorio". Archivado desde el original el 28 de mayo de 2015 . Consultado el 27 de mayo de 2015 .
  18. ^ "Buscando". Manual de usuario del Bloc de notas++ . Consultado el 21 de diciembre de 2021 .
  19. ^ Philipp Acsany. "Elegir la mejor fuente de codificación para programar". 2023.

enlaces externos