2009-06-05 5 views
5

PROBLEMA: Yo uso Drupal con un rico editor, y el rico editor le gusta darle una paliza a mi texto por despojar a la sangría y el formato. Esto sería inaceptable en un editor de escritorio, pero la gente parece tolerar esto con wyswigs en el navegador.cómo conseguir tinymce (en el navegador "rico editor") para preservar muesca

PREGUNTA: ¿Cómo desactivo esto? He buscado y todavía no he descubierto la mejor manera de decirle al editor rico que preserve mi sangría y el formato del texto.

Respuesta

3

añadir esta configuración a la secuencia de comandos de inicio tinymce

tinymce.init({ 
    protect: [/[\n\f\r\t\v]/g] 
}); 
+0

Esto no funciona, tinymce aún elimina \ t caracteres en cualquier contenido que carga – skerit

1

La razón por la que esto está sucediendo es que el editor enriquecido es en realidad un editor xhtml. En xhtml, la mayoría de las etiquetas (con la excepción de la etiqueta PRE), por defecto, fusionan múltiples espacios en blanco en un solo espacio.

Para superar esto en TinyMCE, tendrá que crear una hoja de estilo que contiene:

* {white-space: pre;} 

y referencia la hoja de estilo como content_css al inicializar el editor. Tenga en cuenta que si bien conservará su formato, ya no será WYSIWYG, debido a la naturaleza de los espacios en blanco de los HTML.

Otra opción es envolver el código en un elemento PRE, pero no hay un botón para hacer esto de forma predeterminada en TinyMCE (o eso creo).

EDIT:

Como se ha mencionado por mikl, TinyMCE también tiene un configuration option for preformatted

1

Hay un ajuste “preformateado” en los prefrerences TinyMCE (en este caso, a través de la WYSIWYG module, pero está ahí en el Módulo TinyMCE también). Debería hacer el truco.

Screenshot of setting http://www.quicksnapper.com/files/3603/2949292644A2CF2A72BC21_m.png

+3

Eso es definitivamente una captura de pantalla bonita.Lamentablemente, no funciona, al menos no para mí. Tan pronto como el "editor enriquecido" invoca en el área de texto del navegador, el marcado dentro del control de la GUI se despoja instantáneamente de espacios y se representa como la temida "línea única de HTML sin preservación del espacio en blanco". – dreftymac

+1

+1 No puedo creer que haya pasado por alto esa opción de configuración preformateada anteriormente. ¡Gracias por esa joya! – Matt

+0

No, tampoco funciona para mí. Me pregunto por qué no ... –

2

Esto puede no ser exactamente lo que está buscando, pero el módulo Drupal htmlpurifier puede poner en orden el código HTML y hacer que su estándar HTML compatible. Puede eliminar la sangría pero es muy útil.

Otro módulo simple es htmltidy, no está seguro de si se puede conservar la sangría.

0

Estaba buscando esta misma respuesta para TinyMCE en general, e incluso a partir de mayo de 2015, el autor (es) de TinyMCE considera el espacio en blanco como una característica. No se puede deshabilitar, aunque los documentos indican que la opción de configuración preformatted conservará espacios en blanco como la etiqueta <pre>. Todavía tengo que hacerlo funcionar, o cualquier otra cosa, y creo que la documentación debe describir una característica que ya no está en el código.

http://community.tinymce.com/forum/viewtopic.php?id=26021

El hilo sugiere en repetidas ocasiones que el código en un entorno WYSIWYG es presa fácil de cambio de formato total y un cambio de formato de servidor es el mejor. No importa que el objetivo sea tener un reformateo mínimo, por lo que una herramienta del lado del servidor es tan destructiva para la estructura del documento. Este es un WONTFIX según el desarrollador (es) de TinyMCE, por lo que dudo que esto vaya a cambiar en el futuro previsible.

+0

La versión 3.4.5 enumera 'whitespace_elements' en el registro de cambios, pero no he encontrado documentación para él y tampoco parece funcionar. No es seguro. Definitivamente está en el código, pero se inicializa en 'pre script noscript style textarea' y no me queda claro si la configuración del usuario puede anularlo (lo he intentado, pero quizás estoy haciendo algo mal). – jimp

Cuestiones relacionadas