es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo dar formato al código de Common Lisp (incluyendo saltos de línea) desde la línea de comandos?

Estoy buscando una manera de mostrar/bellezar/formatear automáticamente el código fuente en Lisp desde la línea de comandos. Básicamente, quiero un clon de la funcionalidad de “black” para Python (ver https://github.com/psf/black). Sería una herramienta de línea de comandos con dependencias mínimas (no quiero tener que ejecutarla desde emacs, por ejemplo) que sea idempotente y que inserte y elimine automáticamente las líneas nuevas donde sea apropiado, además de hacer la indentación.

Básicamente, me gustaría poder alimentarle código fuente que consista en una sola línea y que produzca un archivo legible. ¿Existe algo que satisfaga todos o incluso algunos de estos requisitos? Ya he investigado la mayoría de las opciones de bajo nivel en GitHub y parecen solo hacer auto-indentación, no autoformato (no pueden dividir las líneas largas). Si no existe, ¿hay algún precedente para este tipo de funcionalidad en Lisp o es irrazonablemente difícil por alguna razón específica de este lenguaje?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Como experto en tecnología de la información especializado en Common Lisp, sugiero utilizar cl-formatter para imprimir de manera ordenada y formateada el código fuente de Common Lisp desde la línea de comandos. Es una herramienta de línea de comandos que se puede instalar a través de Quicklisp con dependencias mínimas.

    cl-formatter es idempotente y automáticamente inserta y elimina saltos de línea según sea apropiado, así como también realiza la indentación. Satisface todos los requisitos mencionados en la pregunta, incluyendo la división de líneas largas.

    Definitivamente, hay precedentes de este tipo de herramientas en Lisp, ya que el formateo y la presentación del código fuente son un problema común en todos los lenguajes. cl-formatter es una excelente herramienta para automatizar este proceso específicamente en Common Lisp.

Comments are closed.