{"id":4238,"date":"2025-07-07T06:00:55","date_gmt":"2025-07-07T11:00:55","guid":{"rendered":"https:\/\/zidrave.net\/?p=4238"},"modified":"2025-07-07T06:00:56","modified_gmt":"2025-07-07T11:00:56","slug":"el-editor-de-texto-ex-se-usaba-sin-pantalla","status":"publish","type":"post","link":"https:\/\/zidrave.net\/index.php\/2025\/07\/07\/el-editor-de-texto-ex-se-usaba-sin-pantalla\/","title":{"rendered":"El Editor de Texto EX: Se usaba sin pantalla"},"content":{"rendered":"\n<p>En la historia del software de Unix, pocos editores han dejado una huella tan duradera como <strong><code>ex<\/code><\/strong>, el precursor directo de <strong><code>vi<\/code><\/strong>, uno de los editores de texto m\u00e1s emblem\u00e1ticos del mundo <em>Unix-like<\/em>. Aunque hoy en d\u00eda <code>ex<\/code> puede parecer austero frente a entornos m\u00e1s amigables, su influencia sigue presente en los sistemas modernos, especialmente entre los usuarios avanzados y administradores de sistemas que valoran la eficiencia del teclado y el control absoluto sobre el texto.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"654\" height=\"524\" src=\"https:\/\/zidrave.net\/wp-content\/uploads\/2025\/07\/image-8.png\" alt=\"\" class=\"wp-image-4239\" srcset=\"https:\/\/zidrave.net\/wp-content\/uploads\/2025\/07\/image-8.png 654w, https:\/\/zidrave.net\/wp-content\/uploads\/2025\/07\/image-8-300x240.png 300w\" sizes=\"auto, (max-width: 654px) 100vw, 654px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Origen en la Era de los TTY<\/h2>\n\n\n\n<p>El editor <code>ex<\/code> fue concebido en una \u00e9poca en que los computadores no contaban con pantallas gr\u00e1ficas, sino terminales tipo <strong>TTY<\/strong> (<em>teletypewriters<\/em>), dispositivos que imprim\u00edan el texto de entrada y salida sobre papel. En este contexto, los editores visuales como los conocemos hoy no eran viables. Las herramientas deb\u00edan responder \u00fanicamente a comandos escritos y secuencias de teclas.<\/p>\n\n\n\n<p><code>ex<\/code> naci\u00f3 como una evoluci\u00f3n del editor <strong><code>ed<\/code><\/strong>, el editor de l\u00ednea cl\u00e1sico de Unix. Desarrollado por <strong>Bill Joy<\/strong> en <strong>1976<\/strong> mientras estudiaba en la Universidad de California en Berkeley, <code>ex<\/code> incorpor\u00f3 caracter\u00edsticas mejoradas para trabajar con texto, como una mejor gesti\u00f3n de l\u00edneas, b\u00fasqueda y reemplazo m\u00e1s potente, y buffers de texto intermedios.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u00bfQu\u00e9 es <code>ex<\/code>?<\/h2>\n\n\n\n<p><code>ex<\/code> es un editor de l\u00edneas interactivo que permite a los usuarios manipular archivos de texto utilizando comandos espec\u00edficos. Cada comando en <code>ex<\/code> se da como una instrucci\u00f3n que afecta l\u00edneas o bloques del archivo abierto. Por ejemplo, comandos como <code>:1,10d<\/code> borran las primeras diez l\u00edneas, mientras que <code>:s\/foo\/bar\/g<\/code> reemplaza todas las ocurrencias de \u201cfoo\u201d por \u201cbar\u201d en una l\u00ednea o un rango de l\u00edneas.<\/p>\n\n\n\n<p>Aunque a primera vista puede parecer cr\u00edptico, el poder de <code>ex<\/code> radica en su precisi\u00f3n. Un usuario experto puede transformar, filtrar o manipular grandes vol\u00famenes de texto de forma r\u00e1pida y reproducible.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">El Nacimiento de <code>vi<\/code><\/h2>\n\n\n\n<p>Una de las decisiones m\u00e1s trascendentales en la historia de <code>ex<\/code> fue dotarlo de una <strong>interfaz visual<\/strong>. Bill Joy implement\u00f3 <code>vi<\/code> como una capa superior sobre <code>ex<\/code>, permitiendo al usuario ver y editar el texto en pantalla (en terminales compatibles). T\u00e9cnicamente, <code>vi<\/code> no es un programa separado, sino una <strong>interfaz visual para <code>ex<\/code><\/strong>. Incluso hoy en d\u00eda, cuando abres <code>vi<\/code>, puedes acceder al modo <code>ex<\/code> escribiendo <code>:<\/code> seguido de un comando.<\/p>\n\n\n\n<p>Esto permiti\u00f3 que los usuarios tuvieran lo mejor de dos mundos: la potencia de edici\u00f3n basada en comandos y la visibilidad directa del contenido.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Caracter\u00edsticas Clave de <code>ex<\/code><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Edici\u00f3n por l\u00edneas<\/strong>: A diferencia de los editores visuales, <code>ex<\/code> trabaja sobre l\u00edneas numeradas del archivo.<\/li>\n\n\n\n<li><strong>Modo comando<\/strong>: Los usuarios interact\u00faan escribiendo comandos como <code>:w<\/code> (guardar), <code>:q<\/code> (salir), <code>:p<\/code> (mostrar), etc.<\/li>\n\n\n\n<li><strong>Buffers<\/strong>: Usa registros temporales de texto que permiten operaciones como cortar y pegar.<\/li>\n\n\n\n<li><strong>Scriptable<\/strong>: Muchos comandos <code>ex<\/code> pueden incluirse en scripts para automatizar modificaciones a m\u00faltiples archivos.<\/li>\n\n\n\n<li><strong>Portabilidad<\/strong>: Est\u00e1 presente en pr\u00e1cticamente todas las variantes de Unix y es parte de la norma POSIX.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Legado y Uso Actual<\/h2>\n\n\n\n<p>Aunque pocos usuarios editan directamente con <code>ex<\/code> hoy en d\u00eda, <strong>su n\u00facleo sigue vivo en <code>vi<\/code>, <code>vim<\/code>, <code>neovim<\/code> y otros editores<\/strong>. Algunos scripts de automatizaci\u00f3n en sistemas Unix utilizan comandos <code>ex<\/code> debido a su simplicidad y facilidad de integraci\u00f3n en entornos sin interfaz gr\u00e1fica.<\/p>\n\n\n\n<p>En algunos contextos, como <strong>sistemas embebidos, sesiones SSH minimalistas<\/strong> o <strong>scripts de configuraci\u00f3n autom\u00e1tica<\/strong>, <code>ex<\/code> es todav\u00eda invaluable.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Curiosidades<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><code>ex<\/code> est\u00e1 incluido por defecto en casi todas las distribuciones de Linux y BSD<\/strong>.<\/li>\n\n\n\n<li><strong>Puedes invocar <code>vi<\/code> con el argumento <code>-e<\/code> para entrar directamente al modo <code>ex<\/code><\/strong>:<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>vi -e archivo.txt<\/code><\/pre>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong><code>ex<\/code> fue una de las primeras herramientas en usar expresiones regulares<\/strong> para buscar y reemplazar texto.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n<\/h2>\n\n\n\n<p><code>ex<\/code> es mucho m\u00e1s que una reliquia de los tiempos TTY: es un s\u00edmbolo de la filosof\u00eda Unix. Su dise\u00f1o simple, modular y orientado al teclado influenci\u00f3 generaciones de herramientas de edici\u00f3n de texto y programaci\u00f3n. Incluso si no lo usas directamente, es probable que muchas de tus herramientas favoritas lleven su ADN. Comprender su historia es tambi\u00e9n entender parte del alma de Unix.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>En la historia del software de Unix, pocos editores han<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[2379],"tags":[11163,8289,1150,672,11590],"class_list":["post-4238","post","type-post","status-publish","format-standard","hentry","category-software","tag-edit","tag-editor","tag-ex","tag-texto","tag-vi"],"_links":{"self":[{"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/posts\/4238","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/comments?post=4238"}],"version-history":[{"count":1,"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/posts\/4238\/revisions"}],"predecessor-version":[{"id":4240,"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/posts\/4238\/revisions\/4240"}],"wp:attachment":[{"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/media?parent=4238"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/categories?post=4238"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zidrave.net\/index.php\/wp-json\/wp\/v2\/tags?post=4238"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}