•  untoreh-light

Emacs

Por qué emacs y mi lista de deseos personal de emacs.

¿Qué es emacs?

A máquina virtual o intérprete para el emacs lenguaje de programación lisp ... algo así. El lenguaje de programación emacs lisp (elisp) es de propósito general, pero tiene soporte de primera clase para el editor de texto real que lo ejecuta. Los tipos primitivos se centran en la edición de texto, sin embargo, puede escribir lo que quiera con bonitos rendimiento decente (recientemente gracias a la compilación jit ) porque es un descendiente ceceo de MACLISP y un hermano de ceceo común . Sin embargo emacs lisp no tiene un estándar, y la especificación es equivalente a la implementación más popular, GNU Emacs.

¿Por qué emacs?

Con la frase "Emacs es un sistema operativo", la gente quiere decir que puede usarlo para hacer cualquier cosa para la que usaría una computadora. No llega a ser un sistema operativo literal ya que el kernel (generalmente Linux) todavía está a cargo del hardware.[1] Sin embargo, se puede llamar fácilmente un entorno de escritorio, ya que proporciona un entorno con el que trabajar. Le brinda la capacidad de escribir código interactivo rápido para interactuar con cualquier aplicación, puede ser tan sucio como los scripts de shell o bien pensado para proporcionar API estables. De hecho, los paquetes proporcionan muchas funcionalidades de emacs.[2] ¿Pueden otros editores ser tan ampliables como emacs? ¿No porque? Debido a que otros editores utilizan un modelo de usuario diferente, uno en el que el usuario tiene que estar restringido, ya que se considera un "invitado" del entorno de ejecución que ofrece un "servicio" al usuario. Este no es el caso de emacs, donde el entorno y el usuario se vuelven uno y el mismo. En emacs, tiene acceso a todo y puede modificar casi todas las cosas a través de los mismos medios que se crearon, también conocido como elisp.

¿Vale la pena?

Los beneficios se acumulan, es una inversión y, como cualquier inversión, debe esperar ganancias proporcionales a la cantidad que invierte, por lo tanto, debe dedicar algo de tiempo a aprender y practicar cómo usarlo.

Mi lista de deseos de GNU emacs

Emacs es un muy buen sistema operativo, pero un mal editor de texto.

...O algo por el estilo. La implementación de GNU Emacs, al igual que emacs, tiene sus raíces en los años ochenta, y muchas partes de su núcleo muestran su antigüedad ...

[7]no puedo debido a la velocidad, pero la velocidad solo es importante a corto plazo y sin considerar la compilación jit
[6]El argumento a favor de animaciones más avanzadas puede resultar polémico, ya que muchas personas opinan que cosas como las transiciones, el desenfoque, las texturas, las sombras, etc.no agregan valor a una GUI ... pero lo hacen. Pero defender las animaciones es para otra publicación, aquí solo puedo decir que la aplicación cuidadosa y reflexiva de propiedades más avanzadas puede marcar una gran diferencia en la usabilidad y la productividad también (¡no es solo el estilo!).
[5] emacs-ng usa webrender, que permite el dibujo basado en gpu, ya que funciona de manera similar a un motor de juego, cumple parte de mis deseos, pero no sé cómo el backend de webrender se conecta a los componentes internos de emacs; si sus esfuerzos son similares al backend [pgtk], todavía se quedaría un poco corto.
[1]Sin embargo, es divertido pensar en un futuro en el que GNU HURD (el kernel) pueda interactuar con emacs para hablar con un ceceo más cercano al bare metal.
[2]Sin embargo, todavía hay una gran cantidad de 200k líneas de código C que implementa funcionalidades centrales
[4]Dado que emacs muestra cosas como un "servidor" cuando habla con otro servidor, envía una "actualización" completa de la ventana, lo que ha provocado parpadeo en algunos casos.
[3] Browsh es capaz de mostrar páginas web dentro del terminal, el sitio web enriquecido se "reduce" para admitir la interfaz del terminal, este es un caso de "gráfico primero, terminal segundo"

Etiquetas de publicación: