jueves, 30 de julio de 2020

¿Cómo instalo una configuración para Emacs?

En 1967 el Justicialismo apuntaba a vencer electoralmente en las primeras lides disputadas sin el oprobioso paraguas proscriptivo. Desde la residencia de Jorge Antonio en el madrileño Paseo de la Castellana, Juan Perón otorga una entrevista al semanario Confirmado, donde analiza el quehacer político argentino y explica cómo agregar una configuración personalizada al editor GNU Emacs.

(...)
La historia tiene su lógica inexorable, y el porvenir pertenecerá, tarde o temprano, a quienes entiendan las premisas básicas. Desde mis comienzos como oficial del Ejército me he dedicado al estudio de la historia, comprobando la decadencia del demoliberalismo y la íntima relación de éste con el comunismo. Las estructuras deben cambiar. La opción es entre una socialización de contenido nacional, humanista y cristiana, y el socialismo internacionalista marxista.

El gobierno y sus puntos de comité creyeron que podían dividir al movimiento. Para lograrlo, recibieron la ayuda de los neos, de los frentistas trasnochados y del embajador de Estados Unidos, Edwin Martin, quien parece no recordar cómo una vez Braden metió el dedo en el ventilador. Pero la cosa no caminó, y la estantería se les vino abajo.

El ministro Palmero debiera ahora mirar con cuidado hacia adelante. Pero es demasiado viejo para poder hacerlo, y, habiendo comprobado la imposibilidad de dividir al movimiento, se dedica a organizar fraudes constitucionales, seguramente mediante una reforma que le permita alejar las elecciones de 1967 en la provincia de Buenos Aires. Intentarán presentar este fraude como una exigencia del Ejército, para enfrentarlo con el Pueblo. Estoy seguro de que los militares advertirán la necesidad de un cambio de estructuras con la colaboración del Pueblo, como mejor método en la lucha contra el comunismo. No olvidemos que la misma revolución que asaltó los gremios, marxistizó las universidades. Hace poco, un cuñado de la señora de Illia vino a pedir mi bendición para un acuerdo con el comunismo. Era inevitable que así ocurriera.

La ausencia de unidad y solidaridad interna sería la única debilidad frente al enemigo. Creo que la Delegada Superior debe esperar ciertas renuncias. Si no, es lógico que se produzcan algunas expulsiones. Todo se pondrá en caja, atendiendo al imprescindible trasvasamiento generacional. Es necesario superar a los dirigentes burocratizados que, enquistados, pierden sensibilidad.

El Conductor debe aplicar toda la fuerza en el lugar y momento oportunos, actuar solamente en la oportunidad indicada. Es lo que he hecho en los últimos acontecimientos. Si Dios bajara a la Tierra, todo el mundo le perdería el respeto, y algún tonto querría en seguida ocupar su lugar.

La doctrina del movimiento es permanente. Aspiramos a una comunidad organizada según la concepción filosófica humanista y cristiana, pero la técnica para lograr esa comunidad varía según las circunstancias; el movimiento, por ello, debe estar siempre atento a la actualización doctrinaria. Si hoy nos preguntáramos qué hacer en el país, diría que el movimiento debe estar alerta a todo el ciclo económico de la producción, transformación, distribución y consumo. Porque el movimiento debe ser un punto fundamental en la lucha por sacar al país del pantano en que está. Frente al país debe haber una persona capaz de exigir y ser obedecido y, el único milagro económico que necesitamos es el de trabajar.

No guardo rencores contra nadie. Estoy dispuesto a contribuir a una salida de la crisis. El problema no son los pactos, y los pactos no me asustan, sean con quien sean. Lo importante son los hechos, y el Movimiento estará en todo lo que constructivamente signifique un cambio de estructuras para el país, para la creación de un país moderno, con sentido popular, nacional, cristiano y humanista.
En su software también se producirá una actualización que ponga al mismo a tono con la libertad del Pueblo. Han de saber que, como editor básico prefiero al justicialista GNU Nano, y como editor de textos al Minimun Profit Text Editor.

Sin embargo, también existe el consabido GNU Emacs, un editor de macros de fundamental utilización en el medio. Esta versión libre del desarrollada por Richard M. Stallman sin duda es uno de las grandes ramas del árbol de los Editores. Sin duda su condición mayor son las numerorísimos módulos o macros que es capaz de utilizar, lo cual suele provocar que quien lo use, deba "tunear" su Emacs según su preferencia personal.
 
En mi caso puedo hacerlo descargando un fichero simple personalizado, con:
 
cd ~ ;
cp ~/.emacs.el ~/.emacs.el.bak ;
wget https://texto-plano.xyz/~peron/pub/emacs.el ;
mv emacs.el ~/.emacs.el
 
Esta personalización es básica para edición de texto UTF-8, que es lo que suelo proveer. Pero en caso de configuraciones más específicas para programación general, la configuración puede ser bastante más compleja. Dar con una puede tornarse tedioso y requerir algo de tiempo, pero en este caso os mostraré la labor de José Massón, quien ha compartido su propia configuración de Emacs llamada pepe-emacs-config, con el Pueblo. Inspirado por la obra de J.P. Fisanotti y su excelente fisa-vim-config, en este caso ha puesto bajo el alcance universal sus preferencias a la hora de utilizar Emacs.

Esta configuración está orientada al desarrollo de programas en lenguaje PHP, pero muchas de sus características también se presentarán útiles para otros lenguajes de programación o tareas generales de edición.

Esta configuración de Emacs incorpora los siguientes módulos : adoc-mode, company, dumb-jump, emacs code browser (ecb), flycheck, geben, iedit, js2-mode, magit, magit-gitflow, markdown-mode, markdown-toc, neo-tree, password-store, php-mode, powerline, projectile, smarty-mode, sqlformat, yasnippet, y muchos más.

Se haya preparada para el Emacs 25.2.2, pero bien podría operar en versiones anteriores. Para hacerla efectiva requerimos que nuestra carpeta ~/.emacs esté vacía. Por tal motivo, si ya usamos Emacs y contamos con una configuración, podríamos querer renombrarla o moverla a una localización diferente para conservarla. También podríamos querer renombrar nuestro fichero de configuración actual ~/.emacs para conservarlo como respaldo también.

Para ello abrimos una terminal con Ctrl+Alt+t e ingresamos los siguientes comandos de organización:

cd ~
mv .emacs.d .emacs.d.respaldo
mv .emacs .emacs.respaldo

En cambio, si no tenemos Emacs instalado en nuestro sistema aún, podremos instalarlo desde la terminal, con los siguientes comandos de organización:

sudo apt install emacs exuberant-ctags git ripgrep silversearcher-ag pylint pep8 php-pear python3-pip

sudo pear channel-update pear.php.net

sudo pear install PHP_CodeSniffer

sudo pip3 install sqlparse

Ahora clonamos el repositorio de la configuración pepe-emacs-config en el directorio de configuración de emacs. Ello lo haremos mediante el siguiente Comando de Organización:

git clone https://github.com/Abuelodelanada/pepe-emacs-config ~/.emacs.d

Acto seguido, ejecutamos Emacs, y este continuará la instalación por sí mismo, instalando los paquetes a través de los repositorios melpa.org y elpa.org. En mi caso, la descarga ha durado unos tres minutos.
 
Una vez que haya finalizado, podremos reiniciar el programa para poderutilizar la nueva configuración.

Ahora tendremos Emacs configurado de la manera deseada. Por ejemplo, podremos contar con autocompletar, iedit, y magit, complementos útiles para la programación de cadenas repetitivas tan comunes en PHP.

Entre las configuraciones descargadas encontraremos varias útiles que cambiarán la estética de Emacs, pero también propondrán un funcionamiento remozado en lo que hace a las funcionalidades de base.

El complemento Neotree se encargará de proveernos un árbol de ramas colapsables para estructurar nuestro código fuente a compartir con el Pueblo Libre.
La funcionalidad que provee el complemento ECB (navegador de código de Emacs) es precisamente permitinos desplazarnos por la estructura maestra del código fuente de una manera sencilla.
La funcionalidad Tabbar permite crear barra de etiquetas coloreadas adecuadamente, que quedarán dispuestas en la parte superior de nuestro editor favorito y nos permitirán editar múltiples buffers en Emacs.

El complemento Company también está incluido.

Atajos
Como toda configuración de Emacs que se precie, esta nos permite una lista de Atajos que la harán especialmente bien pensada para el uso de sus macros asociados. Entre ellos encontramos:
  • %: va a paréntesis asociada
  • F7: conmuta ecb (emacs code browser)
  • F8: conmuta neotree
  • F12: conmuta modo de barra de menú
  • C-;: activa iedit-dwim
  • C-c C-k: copiar línea
  • C-c C-w: copiar palabra
  • C-c C-z: detener subtrabajo de terminal
  • C-c TAB: formatear sql
  • C-c c: comentar región
  • C-c down: flycheck error siguiente
  • C-c u: descomentar región
  • C-c flecha arriba: flycheck error previo
  • C-d: duplica línea actual
  • C-l: va a línea
  • C-t: crea ctags
  • C-x g: status de magit
  • C-x p: corre phpcbf --standard=PSR2 en el buffer actual
  • C-M-flecha izquierda: retrocede en la barra de tabs
  • M-flecha arriba : comienzo del buffer
  • M-down: end-of-buffer
  • C-M-flecha derecha: tabbar-forward
  • S-M-flecha abajo : agranda ventana
  • S-M-flecha izquierda: agranda ventana horizontalmente
  • S-M-flecha derechat: achica ventana horizontalmente
  • S-M-flecha arriba: achica ventana
  • S-flecha abajo: mueve ventana abajo
  • S-flecha izquierda: 'mueve ventana a izquierda
  • S-flecha derecha: mueve ventana a derecha
  • S-flecha arriba: mueve ventana a arriba

3 comentarios:

  1. ¡viva emacs, carajo! (parafraseando al gran general, "para un emacsero no hay nada mejor que otro emacsero")

    ResponderEliminar
  2. Esteee... les escribo desde la Madre Patria, por lo que no conozco todo lo que me gustaría la gran cultura argentina. Soy unixero y linuxero desde hace muchos años, he usado System V, Debian y Ubuntu en infinidad de instalaciones, por lo que les agradezco su aportación tan original y novedoso. Mi pregunta es más bien de índole político. Recuerdo a aquel directivo de Microsoft diciendo que linux es el comunismo, pero ¿Perón era de derechas o era de izquierdas? Muchas gracias de antemano.

    ResponderEliminar
    Respuestas
    1. Estimado Anónimo:

      El Justicialismo cree en una sola clase de hombres: los que trabajan. Es una Tercera Posición, tan distante de uno como del otro imperialismo.

      Eliminar