Desactive las tags adjuntas en CKEditor 3.0

¿Existe la posibilidad de desactivar el encierre automático de todo el contenido escrito dentro de

en CKEditor 3.x?

Lo intenté

CKEDITOR.config.enterMode = CKEDITOR.ENTER_BR; 

pero esto simplemente cambia los saltos de línea en línea a
mientras abandona el párrafo adjunto.

Actualmente escribir “Prueba” produce esta salida

 

Test

pero quiero que sea simplemente

 Test 

¿Existe una propiedad de configuración para esto o otro editor en línea sería más adecuado para esto?

CKEDITOR.config.enterMode = CKEDITOR.ENTER_BR; – Esto funciona perfectamente para mi. ¿Has intentado borrar el caché de tu navegador? A veces es un problema.
También puede verificarlo con el adaptador jQuery:

    

ACTUALIZACIÓN según el comentario de @Tokkay:

Desde la versión 3.6 de CKEditor puede configurar si desea que el contenido en línea se ajuste automáticamente con tags como

. Esta es la configuración correcta:

 CKEDITOR.config.autoParagraph = false; 

Fuente: http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html#.autoParagraph

A través de Internet, las personas han notado que establecer config.enterMode en CKEDITOR.ENTER_BR elimina las tags de párrafo de ajuste de CKEditor. Vale la pena señalar que la configuración cambia el comportamiento de la tecla Intro para insertar saltos de línea en lugar de párrafos, lo que no es deseable.

Consulte: http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html#.enterMode “Se recomienda utilizar la configuración CKEDITOR.ENTER_P debido a su valor semántico y corrección”.

Sin embargo, la configuración que está diseñada para eliminar ese párrafo inicial, config.autoParagraph, tampoco es aconsejable, ya que introduce “problemas de usabilidad impredecibles” porque el editor realmente quiere un elemento de bloque de nivel superior.

Ver: http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html#.autoParagraph

La magia ocurre en wysiwygarea / plugin.js, línea 410, donde el editor selecciona el elemento de bloque predeterminado en función de config.enterMode. Una opción de configuración para cambiar el elemento de bloque predeterminado nos permitiría comenzar con un div, pero seguiríamos obteniendo más divs con cada enter press, a menos que cambiemos el formato de párrafo a través del menú.

Ver: http://docs.cksource.com/ckeditor_api/symbols/src/plugins_wysiwygarea_plugin.js.html

Sería posible eliminar la etiqueta de párrafo de envoltura con postproceso (ya sea en el servidor o en el evento getData de CKEditor), pero eso nos lleva al mismo problema que deshabilitar el AutoParagraph: no hay ningún bloque de nivel superior.

Preferiría decir que no hay una buena solución, sino más bien un puñado de medias soluciones, que aceptar cambiar config.enterMode como la solución canónica.

Pruebe esto en config.js

 CKEDITOR.editorConfig = function( config ) { config.enterMode = CKEDITOR.ENTER_BR; config.shiftEnterMode = CKEDITOR.ENTER_BR; }; 

¡Lo encontré!

ckeditor.js línea # 91 … buscar

B.config.enterMode==3?'div':'p'

cambiar a

B.config.enterMode==3?'div':'' (NO P!)

¡Descarga tu caché y BAM!

HAGA ESTE SU SU código de archivo config.js

 CKEDITOR.editorConfig = function( config ) { // config.enterMode = 2; //disabled 

completely config.enterMode = CKEDITOR.ENTER_BR // pressing the ENTER KEY input
config.shiftEnterMode = CKEDITOR.ENTER_P; //pressing the SHIFT + ENTER KEYS input

config.autoParagraph = false; // stops automatic insertion of

on focus };

Estoy haciendo algo de lo que no estoy orgulloso como solución. En mi servlet de Python que realmente se guarda en la base de datos, lo hago:

 if description.startswith('

') and description.endswith('

'): description = description[3:-4]

Edite la fuente (o apague el texto enriquecido) y reemplace la etiqueta p con una div. Luego, diseña el div de la forma que quieras.

ckEditor no agregará ningún elemento contenedor en el siguiente envío ya que tienes el div allí.

(Esto solucionó mi problema, estoy usando Drupal y necesito pequeños fragmentos de html que el editor siempre agregó el extra, pero el rest del tiempo quiero la etiqueta de envoltura p).

 if (substr_count($this->content,'

') == 1) { $this->content = preg_replace('/< \/?p>/i', '', $this->content); }

HAGA ESTE SU SU código de archivo config.js

 CKEDITOR.editorConfig = function( config ) { // config.enterMode = 2; //disabled 

completely config.enterMode = CKEDITOR.ENTER_BR // pressing the ENTER KEY input
config.shiftEnterMode = CKEDITOR.ENTER_P; //pressing the SHIFT + ENTER KEYS input

config.autoParagraph = false; // stops automatic insertion of

on focus };

Establecer tal configuración:

  CKEDITOR.config.enterMode = CKEDITOR.ENTER_BR CKEDITOR.config.forcePasteAsPlainText = true 

En VS2015, esto funcionó para convertir la tecla Entrar en

 myCKEControl.EnterMode = CKEditor.NET.EnterMode.BR 

Personalmente, no me importa si el texto resultante solo tiene
y no

. Se ve perfectamente bien y se ve de la manera que yo quiero. Al final, funciona.