vi (pronunciado como letras distintas, / ˌ v i aɪ / ) [1] es una orientada a la pantalla editor de texto creado originalmente para el Unix sistema operativo. El subconjunto portátil del comportamiento de vi y los programas basados en él, y el lenguaje del editor ex admitido dentro de estos programas, se describe (y, por lo tanto, se estandariza) en la Especificación Única de Unix y POSIX . [2]
Desarrollador (es) | Bill Joy |
---|---|
Versión inicial | 1976 |
Repositorio | |
Escrito en | C |
Sistema operativo | Unix , similar a Unix |
Plataforma | Multiplataforma |
Tipo | Editor de texto |
Licencia | Licencia BSD o CDDL |
Sitio web | ex-vi |
El código original de vi fue escrito por Bill Joy en 1976, como el modo visual para un editor de líneas llamado ex que Joy había escrito con Chuck Haley. [3] Bill Joy ex 1.1 fue lanzado como parte de la primera versión Unix de Berkeley Software Distribution (BSD) en marzo de 1978. No fue hasta la versión 2.0 de ex, lanzada como parte de Second BSD en mayo de 1979 que el editor se instaló bajo el nombre "vi" (que llevó a los usuarios directamente al modo visual de ex), [4] y el nombre con el que se conoce hoy. Algunas implementaciones actuales de vi pueden rastrear su origen en el código fuente hasta Bill Joy; otros son reimplementaciones completamente nuevas y en gran parte compatibles. [ cita requerida ] [ discutir ]
El nombre "vi" se deriva de la abreviatura inequívoca más corta del comando ex visual, que cambia el editor de líneas ex al modo visual . El nombre se pronuncia / v i aɪ / (las letras inglesas v e i ). [5] [6]
Además de varias variantes de software no libre de vi distribuidas con implementaciones propietarias de Unix, vi fue un código abierto con OpenSolaris , y existen varios clones de software vi de código abierto y gratuito . Una encuesta de 2009 a los lectores de Linux Journal encontró que vi era el editor de texto más utilizado entre los encuestados, superando a gedit , el segundo editor más utilizado, en casi un factor de dos (36% a 19%). [7]
Historia
Creación
vi se derivó de una secuencia de editores de línea de comandos de UNIX, comenzando con ed , que era un editor de línea diseñado para funcionar bien en teleimpresores , en lugar de terminales de pantalla . Dentro de AT&T Corporation , donde se originó la educación, la gente parecía estar contenta con un editor tan básico y hostil como la educación, recuerda George Coulouris : [8]
[...] durante muchos años, no tuvieron terminales adecuados. Continuaron con TTY y otros terminales de impresión durante mucho tiempo, y cuando compraron pantallas para todos, obtuvieron Tektronix 4014 . Eran grandes expositores de tubos de almacenamiento . No puede ejecutar un editor de pantalla en una pantalla de tubo de almacenamiento ya que la imagen no se puede actualizar. Por lo tanto, alguien más tuvo que ser pionero en la edición de pantalla para Unix, y éramos nosotros inicialmente, y continuamos haciéndolo durante muchos años.
Coulouris consideró que los comandos crípticos de ed solo eran adecuados para "inmortales", y por lo tanto, en febrero de 1976, mejoró ed (utilizando la fuente de ed de Ken Thompson como punto de partida) para hacer em (el "editor para mortales" [9] ). mientras actuaba como conferenciante en Queen Mary College . [8] El editor em fue diseñado para terminales de visualización y era un editor visual de una sola línea a la vez. Fue uno de los primeros programas en Unix en hacer un uso intensivo del "modo de entrada de terminal sin formato", en el que el programa en ejecución, en lugar del controlador del dispositivo de terminal, manejaba todas las pulsaciones de teclas. Cuando Coulouris visitó UC Berkeley en el verano de 1976, trajo una DECtape que contenía em y mostró el editor a varias personas. Algunas personas consideraron que este nuevo tipo de editor era un potencial acaparador de recursos, pero otros, incluido Bill Joy , quedaron impresionados. [8]
Inspirado por ellos, y por sus propios ajustes a Ed, [3] Bill Joy y Chuck Haley, ambos estudiantes graduados en la Universidad de Berkeley , tomó código de em hacer en, [3] [10] y luego "extendida" en crear ex versión 0.1. [3] Después de la partida de Haley, Bruce Englar animó a Joy a rediseñar el editor, [11] lo que hizo de junio a octubre de 1977 añadiendo un modo visual de pantalla completa a ex. [12]
Muchas de las ideas en el modo visual de ex (también conocido como vi) se tomaron de otro software que existía en ese momento. Según Bill Joy, [3] la inspiración para el modo visual de vi vino del editor Bravo , que era un editor bimodal. En una entrevista sobre los orígenes de vi, Joy dijo: [3]
Muchas de las ideas para el modo de edición de pantalla fueron robadas de un manual de Bravo que miré y copié subrepticiamente. Dot es realmente el doble escape de Bravo, el comando rehacer. La mayoría de las cosas fueron robadas. Hubo algunas cosas que le robaron a ed: obtuvimos una página de manual para la versión de Toronto de ed, con la que creo que Rob Pike tuvo algo que ver. Sacamos algunas de las extensiones de expresiones regulares de eso.
Joy usó un terminal Lear Siegler ADM-3A . En esta terminal, la tecla Escape estaba en la ubicación que ahora ocupa la tecla Tab en el teclado de IBM PC ampliamente utilizado (en el lado izquierdo de la parte alfabética del teclado, una fila por encima de la fila del medio). Esto lo convirtió en una opción conveniente para cambiar de modo vi. Además, las teclas h , j , k , l cumplían una doble función como teclas de movimiento del cursor y estaban inscritas con flechas, por lo que vi las usa de esa manera. El ADM-3A no tenía otras teclas de cursor. Joy explicó que los comandos concisos de un solo carácter y la capacidad de escribir delante de la pantalla eran el resultado del módem lento de 300 baudios que usó al desarrollar el software y que quería ser productivo cuando la pantalla pintaba más lento de lo que pensaba. . [10]
Distribución
Joy fue responsable de crear la primera versión BSD Unix en marzo de 1978, e incluyó ex 1.1 (fechado el 1 de febrero de 1978) [13] en la distribución, exponiendo así a su editor a una audiencia más allá de UC Berkeley . [14] Desde ese lanzamiento de BSD Unix en adelante, los únicos editores que vinieron con el sistema Unix fueron ed y ex. En una entrevista de 1984, Joy atribuyó gran parte del éxito de vi al hecho de que estaba incluido de forma gratuita, mientras que otros editores, como Emacs , podían costar cientos de dólares. [3]
Finalmente, se observó que la mayoría de los ex usuarios pasaban todo su tiempo en modo visual, [ cita requerida ] y, por lo tanto, en ex 2.0 (lanzado como parte de Second Berkeley Software Distribution en mayo de 1979), Joy creó vi como un enlace duro a ex , [15] de modo que cuando se invoca como vi, ex se iniciaría automáticamente en su modo visual. Por tanto, vi no es la evolución de ex, vi es ex.
Joy describió el ex 2.0 (vi) como un programa muy grande, apenas capaz de caber en la memoria de un PDP-11/70 , [16] por lo tanto, aunque vi puede considerarse un programa pequeño y liviano hoy en día, no se vio de esa manera al principio de su historia. Para la versión 3.1, enviada con 3BSD en diciembre de 1979, la versión completa de vi ya no podía caber en la memoria de un PDP-11; [17] el editor también sería demasiado grande para ejecutarlo en PC / IX para IBM PC en 1984. [18]
Joy continuó siendo el desarrollador principal de vi hasta la versión 2.7 en junio de 1979, [11] [19] e hizo contribuciones ocasionales al desarrollo de vi hasta al menos la versión 3.5 en agosto de 1980. [19] Al discutir los orígenes de vi y por qué descontinuó desarrollo, Joy dijo: [3]
Ojalá no hubiéramos usado todas las teclas del teclado. Creo que una de las cosas interesantes es que vi es realmente un editor basado en modos . Creo que en lo que respecta a los editores basados en modos, es bastante bueno. Sin embargo, una de las cosas buenas de EMACS es su programabilidad y falta de modalidad. Esas son dos ideas que nunca se me ocurrieron. Tampoco era muy bueno optimizando el código cuando escribí vi. Creo que el módulo de redisplay del editor es casi intratable. Hace un muy buen trabajo por lo que hace, pero cuando escribes programas mientras aprendes ... Por eso dejé de trabajar en eso.
Lo que realmente sucedió fue que estaba en el proceso de agregar múltiples ventanas a vi cuando instalamos nuestro VAX , que habría sido en diciembre del 78. No teníamos copias de seguridad y la unidad de cinta se rompió. Seguí trabajando incluso sin poder hacer copias de seguridad. Y luego el código fuente se arruinó y no tenía una lista completa. Casi había reescrito todo el código de visualización de Windows, y fue entonces cuando me di por vencido. Después de eso, volví a la versión anterior y simplemente documenté el código, terminé el manual y lo cerré. Si ese scrunch no hubiera sucedido, vi tendría múltiples ventanas, y podría haber puesto algo de programabilidad, pero no lo sé.
El problema fundamental con vi es que no tiene mouse y, por lo tanto, tiene todos estos comandos. En cierto sentido, es al revés del tipo de cosas que obtendrías de una cosa orientada al mouse. Creo que varios niveles de deshacer también serían maravillosos. Pero fundamentalmente, vi todavía se edita en el interior. Realmente no puedes engañarlo.
Es como una de esas piñatas: cosas que tienen dulces adentro pero tienen capa tras capa de papel maché en la parte superior. Realmente no tiene un concepto unificado. Creo que si volviera, no volvería, pero empezaría de nuevo.
En 1979, [3] Mary Ann Horton asumió la responsabilidad de vi. Horton agregó soporte para teclas de función y flechas, macros y mejor desempeño al reemplazar termcap con terminfo . [11] [20]
Puertos y clones
Hasta la versión 3.7 de vi, creada en octubre de 1981, [19] UC Berkeley fue el hogar de desarrollo de vi, pero con la partida de Bill Joy a principios de 1982 para unirse a Sun Microsystems , y UNIX System V de AT&T (enero de 1983) adoptando vi, [ 21] los cambios en la base de código vi ocurrieron más lentamente y de una manera más dispersa y mutuamente incompatible. En UC Berkeley, se realizaron cambios, pero el número de versión nunca se actualizó más allá de 3.7. Los proveedores comerciales de Unix, como Sun, HP , DEC e IBM recibieron copias de la fuente vi, y sus sistemas operativos, Solaris , HP-UX , Tru64 UNIX y AIX , continúan hoy manteniendo versiones de vi directamente descendientes de la Versión 3.7, pero con características adicionales, como asignaciones de teclas ajustables, cifrado y amplia compatibilidad con caracteres.
Si bien los proveedores comerciales podrían trabajar con la base de código de Bill Joy (y continuar usándola hoy), muchas personas no podrían. Debido a que la alegría había comenzado con Ken Thompson 's ed editor, ex y vi eran trabajos derivados y no podía ser distribuido excepto para las personas que tenían una licencia de código de AT & T. Las personas que buscan un editor de estilo Unix gratuito tendrían que buscar en otra parte. En 1985, una versión de Emacs ( MicroEMACS ) estaba disponible para una variedad de plataformas, pero no fue hasta junio de 1987 que apareció STEVIE ( Editor ST para entusiastas de VI), un clon vi limitado. [22] [23] A principios de enero de 1990, Steve Kirkendall publicó un nuevo clon de vi, Elvis , en el grupo de noticias de Usenet comp.os.minix, con el objetivo de un clon de vi más completo y más fiel que STEVIE. [24] Rápidamente atrajo un interés considerable en varias comunidades de entusiastas. [25] Andrew Tanenbaum rápidamente pidió a la comunidad que decidiera sobre uno de estos dos editores para ser el clon vi en Minix ; [26] Elvis fue elegido y sigue siendo el clon vi de Minix en la actualidad.
En 1989, Lynne Jolitz y William Jolitz comenzaron a portar BSD Unix para que se ejecutara en procesadores de clase 386 , pero para crear una distribución gratuita necesitaban evitar cualquier código contaminado con AT&T, incluido el vi de Joy. Para llenar el vacío dejado al eliminar vi, su distribución 386BSD de 1992 adoptó a Elvis como su reemplazo de vi. Los descendientes de 386BSD, FreeBSD y NetBSD , siguieron su ejemplo. Pero en UC Berkeley, Keith Bostic quería un reemplazo de "error por error compatible" para vi de Joy para BSD 4.4 Lite. Usando Elvis de Kirkendall (versión 1.8) como punto de partida, Bostic creó nvi , lanzándolo en la primavera del norte de 1994. [27] Cuando FreeBSD y NetBSD resincronizaron el código base 4.4-Lite2, también cambiaron al nvi de Bostic, que continúan. para usar hoy. [27]
A pesar de la existencia de clones vi con características mejoradas, en algún momento antes de junio de 2000, [28] Gunnar Ritter portó la base de código vi de Joy (tomada de 2.11BSD, febrero de 1992) a sistemas operativos modernos basados en Unix, como Linux y FreeBSD. Inicialmente, su trabajo era técnicamente ilegal para distribuir sin una licencia de fuente de AT&T, pero, en enero de 2002, esas reglas de licencia se relajaron, [29] permitiendo la distribución legal como un proyecto de código abierto. Ritter continuó realizando pequeñas mejoras en la base de código vi similares a las realizadas por los proveedores comerciales de Unix que aún utilizan la base de código de Joy, incluidos los cambios requeridos por el estándar POSIX.2 para vi. Su trabajo está disponible como Traditional Vi y se ejecuta hoy en una variedad de sistemas.
Pero aunque vi de Joy ahora estaba una vez más disponible para BSD Unix, llegó después de que los diversos sabores de BSD se comprometieran con nvi, que proporciona una serie de mejoras sobre el vi tradicional y elimina algunas de sus características heredadas (como el modo abierto para editar una línea a la vez). En cierto sentido, es una extraña inversión que BSD Unix, donde comenzó la base de código vi de Joy, ya no lo use, y los Unixes derivados de AT&T , que en los primeros días carecían del editor de Joy, son los que ahora usan y mantienen versiones modificadas. de su código.
Impacto
A lo largo de los años desde su creación, vi se convirtió en el editor estándar de Unix de facto y en el favorito de los hackers fuera del MIT hasta el surgimiento de Emacs después de 1984. [30] La Especificación Única de UNIX especifica vi, por lo que todo sistema conforme debe tenerlo.
vi todavía es ampliamente utilizado por los usuarios de la familia de sistemas operativos Unix. Aproximadamente la mitad de los encuestados en una encuesta de USENET de 1991 prefirieron vi. [31] En 1999, Tim O'Reilly , fundador de la empresa de publicación de libros informáticos del mismo nombre, declaró que su empresa vendía más copias de su libro vi que de su libro emacs. [32]
Interfaz
vi es un editor modal: opera en modo de inserción (donde el texto escrito se convierte en parte del documento) o en modo de comando (donde las pulsaciones de teclas se interpretan como comandos que controlan la sesión de edición). Por ejemplo, escribir ien el modo de comando cambia el editor al modo de inserción, pero al escribir de inuevo en este punto, se coloca un carácter "i" en el documento. Desde el modo de inserción, al presionar, ESCel editor vuelve al modo de comando. Una ventaja percibida de la separación de vi de los modos de entrada de texto y de comando es que tanto la edición de texto como las operaciones de comando se pueden realizar sin necesidad de retirar las manos del usuario de la fila de inicio . Como los editores no modales generalmente tienen que reservar todas las teclas con letras y símbolos para la impresión de caracteres, cualquier comando especial para acciones que no sean agregar texto al búfer debe asignarse a teclas que no producen caracteres, como teclas de función, o combinaciones de teclas modificadoras como Ctrl, y Altcon teclas normales. Vi tiene la propiedad de que la mayoría de las teclas ordinarias están conectadas a algún tipo de comando para posicionar, alterar texto, buscar, etc., ya sea individualmente o en combinaciones de teclas. Muchos comandos se pueden escribir al tacto sin el uso de Ctrlo Alt. Otros tipos de editores generalmente requieren que el usuario mueva las manos de la fila de inicio al escribir con el teclado :
- Usar un mouse para seleccionar texto, comandos o elementos de menú en un editor de GUI .
- A las teclas de flecha o funciones de edición (Inicio / Fin o Teclas de función ).
- Para invocar comandos usando las teclas modificadoras junto con las teclas estándar de las máquinas de escribir.
Por ejemplo, en vi, reemplazar una palabra es cwtexto de reemplazoEscape , que es una combinación de dos comandos independientes (cambio y movimiento de palabras) junto con una transición dentro y fuera del modo de inserción. El texto entre la posición del cursor y el final de la palabra se sobrescribe con el texto de reemplazo. La operación se puede repetir en otra ubicación escribiendo ., el efecto es que la palabra que comienza en esa ubicación será reemplazada con el mismo texto de reemplazo.
Un libro de texto de interacción humano-computadora señala en su primera página que "Una de las debilidades clásicas de la interfaz de usuario, contada y recontada por educadores de HCI de todo el mundo, es la falta de retroalimentación del editor vi al cambiar de modo. Muchos usuarios cometieron el error de proporcionar entrada mientras está en modo de comando o ingresar un comando mientras está en modo de entrada ". [33]
Derivados y clones contemporáneos
- Vim "Vi IMproved" tiene muchas características adicionales en comparación con vi, incluyendo resaltado de sintaxis (programable) , soporte de mouse, versiones gráficas, modo visual, muchos comandos de edición nuevos y una gran cantidad de extensión en el área de comandos ex. Vim se incluye con casi todas las distribuciones de Linux [34] (y también se envía con cada copia de Apple macOS ). Vim también tiene un modo de compatibilidad vi, en el que Vim es más compatible con vi de lo que sería de otra manera, aunque algunas características de vi, como el modo abierto, faltan en Vim, incluso en el modo de compatibilidad. Este modo está controlado por la opción
:set compatible
[35] . Vim lo enciende automáticamente cuando se inicia en una situación en la que parece que se espera que el software sea compatible con vi. [36] Las funciones de Vim que no entran en conflicto con la compatibilidad con vi siempre están disponibles, independientemente de la configuración. Vim se derivó de un puerto de STEVIE al Amiga . [37] - Elvis es un clon de vi gratuito para Unix y otros sistemas operativos escrito por Steve Kirkendall. Elvis introdujo una serie de características que ahora están presentes en otros clones de vi, incluida la posibilidad de que las teclas del cursor funcionen en modo de entrada. Fue el primero en proporcionar resaltado de sintaxis de color (y en generalizar el resaltado de sintaxis a múltiples tipos de archivos). Elvis 1.x se usó como punto de partida para nvi , pero Elvis 2.0 agregó numerosas funciones, incluidos múltiples búferes, ventanas, modos de visualización y esquemas de acceso a archivos. Elvis es la versión estándar de vi incluida en Slackware Linux , Kate OS y MINIX . La versión más reciente de Elvis es 2.2, lanzada en octubre de 2003.
- nvi es una implementación del editor de texto ex / vi distribuido originalmente como parte de la distribución oficial final de Berkeley Software Distribution (4.4 BSD-Lite). [27] Esta es la versión de vi que se envía con todas las distribuciones de código abierto basadas en BSD. Agrega historial de comandos y edición, finalización de nombres de archivo, múltiples búferes de edición y múltiples ventanas (incluidas múltiples ventanas en el mismo búfer de edición). Más allá de 1.79, desde octubre de 1996, que es la versión estable recomendada, ha habido "versiones de desarrollo" de nvi, la más reciente de las cuales es 1.81.6, desde noviembre de 2007. [38] [39]
- vile se derivó inicialmente de una versión anterior de Microemacs en un intento de llevar el paradigma de edición de múltiples ventanas / múltiples búfer de Emacs a los usuarios de vi, y se publicó por primera vez en las fuentes alt.sources de Usenet en 1991. Proporciona deshacer infinito, UTF -8 compatibilidad, operación de múltiples ventanas / múltiples búfer, un lenguaje de expansión de macros, resaltado de sintaxis, ganchos de lectura y escritura de archivos, y más.
- BusyBox , un conjunto de utilidades estándar de Linux en un solo ejecutable, incluye un pequeño clon de vi.
- Neovim , un refactor de Vim, que se esfuerza por reemplazar.
Ver también
- Lista de editores de texto
- Comparación de editores de texto
- visudo
- Lista de comandos de Unix
Referencias
- ^ Computerphile (9 de julio de 2018), EXTRA BITS GREP de ED y Text Editors - Computerphile - Computerphile , consultado el 17 de abril de 2020
- ^ El IEEE y The Open Group (2013). " " vi - editor de visualización (visual) orientado a la pantalla ", The Open Group Base Especificaciones Edición 7; IEEE Std 1003.1, Edición 2013" . Consultado el 15 de julio de 2013 .
- ^ a b c d e f g h yo "Entrevista con Bill Joy" . Archivado desde el original el 10 de febrero de 2012 . Consultado el 3 de junio de 2017 .
- ^ "Segundo Manual de distribución de software de Berkeley" . roguel ife.org . Consultado el 27 de marzo de 2018 .
- ^ Joy, William; Horton, Mark. "Introducción a la edición de pantallas con Vi" (PDF) . freebsd.org . Consultado el 6 de febrero de 2019 .
- ^ "El léxico de la jerga" . Diccionario de hackers 4.3.0 . 30 de abril de 2001 . Consultado el 6 de febrero de 2019 .
- ^ Gray, James (1 de junio de 2009). "Premios Elección de los lectores 2009" . Diario de Linux . Consultado el 22 de enero de 2010 .
- ^ a b c Un cuarto de siglo de UNIX , por Peter H. Salus, Addison-Wesley 1994, páginas 139-142. (extracto disponible en línea)
- ^ "Código fuente para em" . coulouris.net . Febrero de 1976.
- ^ a b Vance, Ashlee (11 de septiembre de 2003). "El mayor regalo de Bill Joy al hombre - el editor vi" . El registro . Archivado desde el original el 13 de mayo de 2012 . Consultado el 30 de junio de 2012 .
- ^ a b c Alegría, Bill. "ex Manual de referencia" (fuente roff) . 4.4 BSD (gravado, no Lite). CSRG, UC Berkeley. Cite journal requiere
|journal=
( ayuda ) (vea la sección de Agradecimientos al final del archivo) - ^ "Ver fechas en encabezados de derechos de autor, ex código fuente 1.1" . minnie.tuhs.org .
- ^ "version.c, ex 1.1 código fuente" . minnie.tuhs.org .
- ^ "1BSD / READ_ME" (fuente roff) . Formateado: "Cinta de software Berkeley UNIX" (PDF) .
- ^ "Makefile, ex 2.0 código fuente" . minnie.tuhs.org .
- ^ "READ_ME" . ex 2.0 código fuente .
- ^ "ex 3.1 código fuente" .
- ^ McMahon, Marilyn; Putnam, Robert (2 de abril de 1984). "Un primer vistazo a PC-IX" . InfoWorld . págs. 39–42 . Consultado el 25 de febrero de 2016 .
- ^ a b c "Cambio de registro para vi, versiones 2.1–3.7" . minnie.tuhs.org .
- ^ Alegría, Bill. "vi Manual de referencia" (fuente roff) . 4.4 BSD (gravado, no Lite). CSRG, UC Berkeley. Cite journal requiere
|journal=
( ayuda ) (vea la sección de Agradecimientos al final del archivo) - ^ Kenneth H. Rosen; Douglas A. Anfitrión; Rachel Klee (2006). UNIX: la referencia completa . McGraw-Hill Osborne Media. pag. 10. ISBN 978-0-07-226336-7.
- ^ Thompson, Tim (26 de marzo de 2000). "Stevie" . Consultado el 29 de diciembre de 2010 .
- ^ Tim Thompson (28 de junio de 1987). "Un mini-vi para el ST" . Grupo de noticias : comp.sys.atari.st . Usenet: [email protected] . Consultado el 29 de diciembre de 2010 .
- ^ Steve Kirkendall (20 de abril de 1990). "Un nuevo clon de vi llegará pronto: ELVIS" . Grupo de noticias : comp.editors . Usenet: [email protected] . Consultado el 29 de diciembre de 2010 . (analiza la publicación de comp.os.minix de enero y los objetivos de diseño)
- ^ Usenet, varios grupos de noticias (comp.editors, comp.sys. *, Comp.os. *), 1990
- ^ Andrew S. Tanenbaum (18 de enero de 1990). "Elvis contra stevie" . Grupo de noticias : comp.os.minix . Usenet: [email protected] . Consultado el 29 de diciembre de 2010 .
- ^ a b c Robbins, Arnold; Hannah, Elbert; Cordero, Linda (2008). "Capítulo 16: nvi: nuevo vi" . Aprendiendo los editores vi y vim (7ª ed.). O'Reilly Media, Inc. págs. 307-308. ISBN 978-0-596-52983-3.
- ^ Archivo de cambios , de Vi tradicional de Gunnar Ritter
- ^ "Licencia Caldera para UNIX 32-bit 32V y UNIX 16 bit Versiones 1, 2, 3, 4, 5, 6, 7" (PDF) . mckusick.com .
- ^ Smith, TJ (4 de diciembre de 2001). "EMACS vs. vi: La interminable geek 'guerra santa ' " . Linux.com . Consultado el 30 de enero de 2018 .
- ^ Raymond, Eric S. , ed. (1996). The New Hacker's Dictionary (3ª ed.). Prensa del MIT. ISBN 0-262-68092-0.
- ^ "Preguntar a Tim Archive" . O'Reilly. 21 de junio de 1999.
- ^ I. Scott MacKenzie (2013). Interacción humano-computadora: una perspectiva de investigación empírica . Morgan Kaufmann, una huella de Elsevier. pag. 1. ISBN 978-0-12-405865-1.
- ^ Vugt, Sander van (21 de noviembre de 2015). Inicio de la línea de comandos de Linux . Presione. pag. 75. ISBN 9781430268291.
- ^ "Documentación de Vim: opciones" . vim.net/sourceforge.net . Consultado el 30 de enero de 2009 .
- ^ "Documentación de Vim: iniciando" . vim.net/sourceforge.net . Consultado el 30 de enero de 2009 .
- ^ Bram Moolenaa (18 de abril de 2005). "Entrevista: Bram Moolenaar" . LinuxEXPRES (entrevista) (en checo). Entrevistado por Lukáš Zapletal. págs. 21-22 . Consultado el 5 de febrero de 2015 .
Traducción en inglés: "Entrevista: Bram Moolenaar" . Moolenaar.net . Archivado desde el original el 19 de septiembre de 2012.¿VIM es un derivado de otro clon de VI o empezaste desde cero? Empecé con Stevie. Este fue un clon de Vi para la computadora Atari ST, portado al Amiga. Tenía bastantes problemas y no podía hacer todo lo que Vi podía, pero como el código fuente estaba disponible, podía solucionarlo yo mismo.
- ^ Verdoolaege, Sven. "Versiones de desarrollo de nvi" . Consultado el 1 de enero de 2011 .
- ^ Bostic, Keith. "Página de inicio del editor de Berkeley Vi" . Consultado el 1 de enero de 2011 .
Otras lecturas
- Cordero, Linda; Arnold Robbins (1998). Aprendiendo el editor vi (6ª ed.). O'Reilly & Associates, Inc.
- Robbins, Arnold; Linda Lamb; Elbert Hannah (2008). Aprendiendo los editores vi y Vim, séptima edición . O'Reilly & Associates, Inc.
enlaces externos
- La versión Vi original, adaptada a estándares más modernos
- Introducción a la edición de pantallas con Vi , por Mark Horton y Bill Joy
- página de inicio de vi lovers
- Explicación de la edición modal con vi - "¿Por qué, oh POR QUÉ, esos #? @! Locos usan vi?"
- El código fuente original de ex (también conocido como vi) versiones 1.1, 2.2, 3.2, 3.6 y 3.7 portado a UNIX actual