Language-tools: vscode: espacios extraños durante el formateo

Creado en 7 may. 2020  ·  8Comentarios  ·  Fuente: sveltejs/language-tools

¿Hay alguna manera de no agregar espacios en el siguiente html durante el formateo?

Necesito este código para permanecer así:

<div>
  Test (<span class="color">one</span>)
</div>

En su lugar, se convierte en esto:

<div>
  Test (
  <span class="color">one</span>
  )
</div>

De https://github.com/UnwrittenFun/svelte-vscode/issues/50.

question

Comentario más útil

Aquí está el problema relevante para prettier-plugin-svelte: https://github.com/sveltejs/prettier-plugin-svelte/issues/24 (está etiquetado como un error)

Todos 8 comentarios

El complemento usa Prettier para formatear el código. Entonces, al final, esto es más bonito formatear el código de esa manera. Dado que Prettier tiene muchas opiniones y no tiene muchas opciones, supongo que no hay mucho que puedas hacer al respecto.
Si desea dejar de formatear por completo, puede hacerlo configurando la opción svelte.format.enable en falso en la configuración de VSCode.

No, lo necesito. Pero creo que deberíamos repensar estos problemas de formato. Por favor, no cierres. RFC esto. Por favor.

Creo que esto se reduce a las preferencias del usuario; por ejemplo, me gustaría que el código se formatee de esa manera. Dado que más bonita es muy obstinada, hay pocas opciones para modificar el resultado. Dado que tampoco rompe su código, es más un inconveniente. ¿Le ayudaría si pudiera desactivar el formato html ( solicitud de función relacionada )? Entonces el script / estilo se formateará pero no html.

Reemplazar más bonito con un formateador completamente diferente es algo que no queremos hacer en este momento. Lo que podríamos hacer es agregar el formateador html vscode como segunda opción, por lo que elegiría entre una de las dos. Pero incluso si agregamos otro formateador, siempre existe la pregunta de si ese formateador hace lo que usted quiere o no.

<!-- prettier-ignore --> se implementa en prettier-plugin-svelte 1.1.0 y @dummdidumm simplemente

Aquí está el problema relevante para prettier-plugin-svelte: https://github.com/sveltejs/prettier-plugin-svelte/issues/24 (está etiquetado como un error)

Sí, el problema es que agregar nuevas líneas aquí altera la salida renderizada insertando espacios en la salida. El primer fragmento en la parte superior se muestra en el navegador como Test (one) pero después de agregar las nuevas líneas se convierte en Test ( one )

El formato HTML de Prettier estándar tiene una configuración de espacios en blanco HTML para determinar cómo trata los espacios en blanco en HTML, pero el complemento Svelte Prettier no parece respetar eso. Desde mi exploración limitada, reimplementa muchas funciones de formato HTML para que también sea compatible con la sintaxis de la plantilla Svelte.

La actualización de la OMI para que obtengamos una opción <!-- prettier-ignore --> es una buena solución por ahora.
EDITAR: En realidad, parece que esto ya funciona.

si alguien quisiera ayudar a resolver esto. puedes elegir lo que queda con este PR
https://github.com/sveltejs/prettier-plugin-svelte/pull/41

Dado que este es un problema de prettier-plugin-svelte , voy a cerrarlo. Como solución alternativa, use <!-- prettier-ignore --> .

¿Fue útil esta página
0 / 5 - 0 calificaciones