Tengo algunos archivos JS que quiero formatear mejor con una herramienta de formateo CLI como Prettier . Probé Prettier en sí mismo, pero me sorprendió descubrir que no agrega líneas en blanco entre las definiciones de función. Creo que esto mejoraría significativamente la estructura visual.
Un ejemplo podría aclarar lo que busco. Dado el código fuente de entrada:
import {foo, bar} from "./myfoobar.js" export var myfirstfunc = function (para) { ... } // mysecondfunc does wonderful things export var mysecondfunc = function (more, para) { ... }Me gustaría ver el siguiente código de salida con líneas en blanco:
import {foo, bar} from "./myfoobar.js" export var myfirstfunc = function (para) { ... } // mysecondfunc does wonderful things export var mysecondfunc = function (more, para) { ... }En mi prueba, Prettier no hace esto. ¿Hay alguna manera de decirle a Prettier, u otro formateador, que haga este tipo de estructuración visual?
Puede lograr algo similar a esto usando la regla de padding-line-between-statements de ESLint . Se puede especificar cualquier tipo de STATEMENT_TYPE (como export , import , var ) para que requiera una línea en blanco entre él y otro STATEMENT_TYPE dado (o comodín, para que coincida con cualquier cosa).
La siguiente configuración:
padding-line-between-statements: [ "error", { blankLine: "always", prev: "export", next: "*" }, { blankLine: "always", prev: "import", next: "*" }, { blankLine: "always", prev: "var", next: "*" }, ]da como resultado un código fijo automáticamente de:
import {foo, bar} from "./myfoobar.js" export var myfirstfunc = function (para) { } // mysecondfunc does wonderful things export var mysecondfunc = function (more, para) { }Cualquier IDE que admita la corrección automática de ESLint (como VSCode) debería poder implementar esto.
Siéntase libre de modificar los objetos de configuración de configuración para requerir espacios entre diferentes tipos de declaraciones según lo desee.