Configuración del Editor de texto enriquecido

El Editor de texto enriquecido (RTE) proporciona a los autores una amplia gama de funciones para editar su contenido de texto. Se proporcionan iconos, cuadros de selección, barras de herramientas y menús para una experiencia de edición de texto WYSIWYG.

Para saber cómo utilizar las funciones RTE para la creación, consulte Usar el editor de texto enriquecido para la creación. RTE se puede configurar para habilitar, deshabilitar y ampliar las funciones disponibles en los componentes de creación. El siguiente flujo de trabajo ilustra un orden recomendado para completar las tareas de configuración de RTE en Experience Manager.

Flujo de trabajo típico para configurar el Editor de texto enriquecido

Figura: Flujo de trabajo típico para configurar el Editor de texto enriquecido

Explicación de la IU táctil y la IU clásica

La IU táctil es la IU estándar para AEM. Adobe ha introducido la IU táctil con diseño interactivo para el entorno de creación, en la versión 5.6. La IU táctil está diseñada para dispositivos táctiles y de escritorio. La IU difiere considerablemente de la IU clásica original.

Barra de herramientas del Editor de texto enriquecido en la IU táctil

Figura: Barra de herramientas del Editor de texto enriquecido en la IU táctil

Barra de herramientas del Editor de texto enriquecido en la IU clásica

Figura: Barra de herramientas del Editor de texto enriquecido en la IU clásica

Varios modos de edición

Los autores pueden crear y editar contenido textual en AEM utilizando los distintos modos de componentes. Las opciones de la barra de herramientas para crear y dar formato al contenido y la experiencia del usuario de los componentes habilitados para RTE en diferentes modos de edición varían según las configuraciones de RTE.

Modo de edición Área de edición Funciones recomendadas para habilitarlas IU táctil IU clásica
En línea Edición in situ para ediciones rápidas y secundarias; Formato sin abrir un cuadro de diálogo Características mínimas de RTE Y Y
Pantalla completa RTE Cubre toda la página Todas las funciones RTE requeridas Y N
Cuadro de diálogo Cuadro de diálogo sobre el contenido de la página, pero no cubre toda la página Todas las funciones RTE necesarias en la IU clásica; activar las funciones con cautela en la interfaz de usuario táctil Y Y
Diálogo de pantalla completa Igual que el modo de pantalla completa; contiene campos del cuadro de diálogo junto con RTE Todas las funciones RTE requeridas Y N
NOTA

La función de edición de origen no está disponible en el modo de edición en línea en la IU táctil. No se pueden arrastrar imágenes en el modo de pantalla completa. Todas las demás funciones funcionan en todos los modos.

Edición en línea

Cuando se abre (con un doble toque o clic lento), el contenido se puede editar dentro de la página. Se presenta una barra de herramientas compacta con opciones básicas.

Edición en línea con la barra de herramientas básica en la IU táctil

Figura: Edición en línea con la barra de herramientas básica en la IU táctil

En la IU clásica, un doble clic lento en el componente permite la edición en línea y un contorno naranja resalta el contenido. Si el buscador de contenido está abierto, se muestra una barra de herramientas con las opciones de formato RTE disponibles en la parte superior de la ventana. Si el Buscador de contenido no está abierto, las opciones de formato no se muestran y solo puede realizar ediciones básicas de texto.

Edición de pantalla completa

AEM componentes se pueden abrir en la vista de pantalla completa que oculta el contenido de la página y ocupa la pantalla disponible. Considere la posibilidad de editar en pantalla completa una versión detallada de la edición en línea, ya que ofrece las mejores opciones de edición. Se puede abrir haciendo clic en rte_fullscreen, en la barra de herramientas compacta, al utilizar el modo de edición en línea.

El modo de pantalla completa del cuadro de diálogo proporciona, una barra de herramientas RTE detallada y las opciones y los componentes disponibles en el modo de diálogo. Solo es aplicable a un cuadro de diálogo que contenga RTE junto con otros componentes.

La barra de herramientas detallada de RTE al editar en modo de pantalla completa en la IU táctil

Figura: La barra de herramientas detallada de RTE al editar en modo de pantalla completa en la IU táctil

Edición del cuadro de diálogo

Cuando se hace doble clic en un componente en la IU clásica, se abre un cuadro de diálogo para editar el contenido. El cuadro de diálogo se abre sobre la página existente. En algunos casos específicos, el cuadro de diálogo se abre como una ventana emergente. Por ejemplo, cuando un componente Texto forma parte de una columna en un diseño de página de varias columnas y el área disponible para el cuadro de diálogo es menor.

Modo de edición de cuadro de diálogo en la IU táctil

Figura: Modo de edición de cuadro de diálogo en la IU táctil

Cuadro de diálogo en la IU clásica que contiene una barra de herramientas detallada para editarla

Figura: Cuadro de diálogo en la IU clásica que contiene una barra de herramientas detallada para editarla

Acerca de los complementos RTE y las funciones asociadas

La funcionalidad está disponible a través de una serie de complementos, cada uno con:

  • Una propiedad features:

    • Se utiliza para activar o desactivar la funcionalidad básica de ese complemento.
    • Que se puede configurar mediante un procedimiento estandarizado.
  • Cuando corresponda, más propiedades y opciones que requieren una configuración especializada.

Las funciones básicas de RTE se activan o desactivan según el valor de la propiedad features en un nodo específico del complemento apropiado.

La tabla siguiente muestra los complementos actuales:

  • ID de complemento con un vínculo a la documentación de la API. El ID se utiliza como nombre de nodo cuando se activa un complemento.
  • Valores permitidos para la propiedad features.
  • Descripción de la funcionalidad proporcionada por el complemento.
ID del complemento características Descripción
editar cortar copiar pegar-predeterminado pegar-plaintext pegar-wordhtml Corte, copie y, los tres modos de pegado.
findreplace buscar reemplazar Busque y reemplace.
format subrayado en negrita cursiva Formato de texto básico.
image image Compatibilidad con imágenes básicas (arrastre desde el contenido o el Buscador de contenido). En función del explorador, la compatibilidad con tiene comportamientos diferentes para los autores
keys Para definir este valor, consulte tab size.
justify justifyleft justifycenter justificado Alineación del párrafo.
vínculos modifylink desvincular anclaje Hipervínculos y anclajes.
listas sangría ordenada sin ordenar Este complemento controla la sangría y las listas; incluir listas anidadas.
misctools specialchars sourceedit Las herramientas varias permiten a los autores introducir caracteres especiales o editar el origen HTML. Además, puede agregar un rango completo de caracteres especiales si desea definir su propia lista.
Paraformato paraformat Los formatos de párrafo predeterminados son Párrafo, Encabezado 1, Encabezado 2 y Encabezado 3 (<p>, <h1>, <h2> y <h3>). Puede añadir más formatos de párrafo o ampliar la lista.
ortografía texto de comprobación Corrector ortográfico según la lengua.
estilos estilos Compatibilidad con estilos mediante una clase CSS. Añada un nuevo estilo de texto si desea añadir (o ampliar) su propio rango de estilos para utilizarlo con el texto.
subsuperíndice superíndice de subíndice Extensiones a los formatos básicos, adición de subscript y superscript.
tabla tabla removible insertrow removerow insertcolumn removecolumn cellprops mergecells separtcell selectrow selectcolumns Consulte configurar estilos de tabla si desea agregar sus propios estilos para tablas completas o celdas individuales.
deshacer deshacer rehacer Tamaño del historial de operaciones deshacer y rehacer.
NOTA

El complemento de pantalla completa no es compatible con el modo de cuadro de diálogo. Uso de la configuración dialogFullScreen para configurar la barra de herramientas para el modo de pantalla completa.

Explicación de las rutas y ubicaciones de configuración

El modo de edición RTE (y la IU) que proporcione a sus autores decide la ubicación de los detalles de configuración cuando está activando los complementos RTE:

Modo de edición Ubicación para la IU táctil Ubicación para la IU clásica
En línea cq:editConfig/cq:inplaceEditing cq:editConfig/cq:inplaceEditing
Pantalla completa cq:editConfig/cq:inplaceEditing No aplicable
Cuadro de diálogo cq:dialog dialog
Cuadro de diálogo de pantalla completa cq:dialog No aplicable
NOTA

No asigne al nodo cq:inplaceEditing el nombre config. En el nodo cq:inplaceEditing, defina las siguientes propiedades:

  • Nombre: configPath
  • Tipo: String
  • Valor: ruta del nodo que contiene la configuración real

No asigne al nodo de configuración RTE el nombre config. De lo contrario, las configuraciones de RTE surten efecto solo para los administradores y no para los usuarios del grupo content-author.

Configure las siguientes propiedades que se aplican en el modo de edición de cuadro de diálogo solo en la IU táctil:

  • useFixedInlineToolbar: Establezca esta propiedad booleana definida en el nodo RTE (uno con sling:resourceType= cq/gui/components/authoring/dialog/richtext) en True, para que la barra de herramientas RTE sea fija en lugar de flotante.

    Cuando esta propiedad es verdadera, la edición de Richtext se inicia, de forma predeterminada, en el evento "foundation-contentloaded".

    Para evitarlo, establezca la propiedad customStart en Truey déclencheur el evento 'rte-start' para iniciar la edición RTE. Cuando esta propiedad es 'true', el comportamiento predeterminado, rte start on click, no funciona.

  • customStart: Establezca esta propiedad booleana definida en el nodo RTE en True, para controlar cuándo iniciar RTE activando el evento rte-start.

  • rte-start: Déclencheur este evento en el contenteditable-div de RTE, cuándo iniciar la edición de RTE. Esto solo funciona si customStart se ha establecido en true.

Cuando se utiliza RTE en el cuadro de diálogo táctil, es obligatorio establecer la propiedad useFixedInlineToolbar en true para evitar problemas.

Personalización de la edición in situ

Puede definir en qué selector HTML se inicia el editor de texto configurando las siguientes propiedades:

  • editElementQuery : Definida en cq:InplaceEditingConfig, esta propiedad se utiliza para especificar un selector del elemento HTML en el que se iniciará la edición en línea para el componente de texto. Si no se especifica, la edición en línea se inicia directamente en el HTML del componente de texto.
  • textPropertyName : Definida en cq:InplaceEditingConfig, esta propiedad se utiliza para especificar el nombre de la propiedad que se guardará en el nodo de contenido donde el valor HTML del componente de texto persistirá tras la edición en línea.

La propiedad correspondiente para el modo de diálogo es name.

Habilitar las funcionalidades RTE activando complementos

Las funcionalidades de RTE están disponibles a través de una serie de complementos, cada uno con propiedad de características. Puede configurar la propiedad features para habilitar o deshabilitar las distintas funciones de cada complemento.

Para obtener configuraciones detalladas de los complementos RTE, consulte cómo activar y configurar los complementos RTE.

Descargue esta configuración de ejemplo para comprender cómo configurar RTE. En este paquete todas las funciones están habilitadas.

Obtener archivo

NOTA

El componente de texto Componentes principales permite que los editores de plantillas configuren muchos complementos RTE en la interfaz de usuario como políticas de contenido, lo que elimina la necesidad de una configuración técnica. Las políticas de contenido pueden funcionar con las configuraciones de la interfaz de usuario de RTE como se describe. Para obtener más información, consulte la configuración de la interfaz de usuario RTE y las políticas de contenido, Creación de plantillas de página y la documentación para desarrolladores de componentes principales.

NOTA

Para fines de referencia, los componentes de texto predeterminados (entregados como parte de una instalación estándar) se pueden encontrar en:

  • /libs/wcm/foundation/components/text
  • /libs/foundation/components/text

Para crear su propio componente de texto, copie el componente anterior en lugar de editar estos componentes.

Configurar la barra de herramientas RTE

AEM le permite configurar la IU del Editor de texto enriquecido de forma diferente para los distintos modos de edición. A continuación se proporciona la configuración predeterminada. Puede anular estos valores predeterminados según sus necesidades.

Para obtener la mejor experiencia de creación:

  • En un cuadro de diálogo flotante, habilite solo los complementos que no tengan una ventana emergente, ya que el cuadro de diálogo flotante es de menor tamaño.
  • En el cuadro de diálogo de pantalla completa, habilite todos los complementos necesarios, incluso los complementos con ventanas emergentes más grandes, como el complemento Paste. Utilice la configuración dialogFullScreen que se describe a continuación.
<uiSettings jcr:primaryType="nt:unstructured">
  <cui jcr:primaryType="nt:unstructured">
    <inline
      jcr:primaryType="nt:unstructured"
      toolbar="[format#bold,format#italic,format#underline,#justify,#lists,links#modifylink,links#unlink,#paraformat]">
      <popovers jcr:primaryType="nt:unstructured">
        <justify
          jcr:primaryType="nt:unstructured"
          items="[justify#justifyleft,justify#justifycenter,justify#justifyright]"
          ref="justify"/>
        <lists
          jcr:primaryType="nt:unstructured"
          items="[lists#unordered,lists#ordered,lists#outdent,lists#indent]"
          ref="lists"/>
        <paraformat
          jcr:primaryType="nt:unstructured"
          items="paraformat:getFormats:paraformat-pulldown"
          ref="paraformat"/>
      </popovers>
    </inline>
    <dialogFullScreen
      jcr:primaryType="nt:unstructured"
      toolbar="[format#bold,format#italic,format#underline,justify#justifyleft,justify#justifycenter,justify#justifyright,lists#unordered,lists#ordered,lists#outdent,lists#indent,links#modifylink,links#unlink,table#createoredit,#paraformat,image#imageProps]">
      <popovers jcr:primaryType="nt:unstructured">
        <paraformat
          jcr:primaryType="nt:unstructured"
          items="paraformat:getFormats:paraformat-pulldown"
          ref="paraformat"/>
      </popovers>
    </dialogFullScreen>
    <tableEditOptions
      jcr:primaryType="nt:unstructured"
      toolbar="[table#insertcolumn-before,table#insertcolumn-after,table#removecolumn,-,table#insertrow-before,table#insertrow-after,table#removerow,-,table#mergecells-right,table#mergecells-down,table#mergecells,table#splitcell-horizontal,table#splitcell-vertical,-,table#selectrow,table#selectcolumn,-,table#ensureparagraph,-,table#modifytableandcell,table#removetable,-,undo#undo,undo#redo,-,table#exitTableEditing,-]">
    </tableEditOptions>
  </cui>
</uiSettings>

Para el modo en línea y el modo de pantalla completa se usan distintas configuraciones de interfaz de usuario. La propiedad toolbar se utiliza para especificar los botones de la barra de herramientas. Por ejemplo, si el botón es en sí mismo una función (por ejemplo, Bold), se especifica como PluginName#FeatureName (por ejemplo, links#modifylink). Si el botón es una ventana emergente (que contiene algunas características de un complemento), se especifica como #PluginName (por ejemplo, #format). Separadores ( | ) entre un grupo de botones se puede especificar con "-".

El nodo emergente en modo en línea o en pantalla completa contiene una lista de las ventanas emergentes que se utilizan. Cada nodo secundario del nodo popovers recibe el nombre del complemento (por ejemplo, format). Tiene una propiedad items que contiene una lista de características del complemento (por ejemplo, format#bold).

Configuración de la interfaz de usuario RTE y políticas de contenido

Los administradores pueden controlar las opciones de RTE mediante políticas de contenido, por ejemplo, en lugar de realizar la configuración como se ha descrito anteriormente. Las políticas de contenido definen las propiedades de diseño de un componente cuando se utilizan como parte de una plantilla editable. Por ejemplo, si se utiliza un componente de texto que utilice el editor de texto enriquecido con una plantilla editable, la política de contenido puede definir que la opción en negrita esté disponible y que haya algunas opciones de formato de párrafo disponibles. Las políticas de contenido se pueden reutilizar y se pueden aplicar en varias plantillas.

A partir de AEM 6.4 Service Pack 3, las opciones disponibles en el flujo RTE descendente desde las configuraciones de interfaz de usuario a las políticas de contenido.

  • Los ajustes de configuración de la interfaz de usuario definen qué opciones están disponibles para las políticas de contenido.
  • Si la configuración de la interfaz de usuario del RTE se ha eliminado o no permite un elemento, la directiva de contenido no puede configurarlo.
  • Un autor solo tiene acceso a las funciones que están disponibles en las configuraciones de interfaz de usuario y en las políticas de contenido.

A modo de ejemplo, puede ver la documentación de los componentes principales de texto.

Personalización de la asignación entre iconos y comandos de la barra de herramientas

Puede personalizar la asignación entre los iconos de Coral que se muestran en la barra de herramientas de RTE y los comandos disponibles. No puede utilizar ningún otro icono aparte de los iconos de Coral.

  1. Cree un nodo denominado icons en uiSettings/cui.

  2. Cree nodos para iconos individuales debajo de él.

  3. En cada uno de los nodos de icono individuales, especifique un icono de Coral y un comando para asignarlo al icono.

A continuación se muestra un fragmento de ejemplo para asignar el comando Bold al icono Coral llamado textItalic.

<text jcr:primaryType="nt:unstructured" sling:resourceType="cq/gui/components/authoring/dialog/richtext" name="./text" useFixedInlineToolbar="{Boolean}true"> 
    <rtePlugins jcr:primaryType="nt:unstructured"> 
        <format jcr:primaryType="nt:unstructured" features="bold,italic"/> 
    </rtePlugins> 
    <uiSettings jcr:primaryType="nt:unstructured"> 
        <cui jcr:primaryType="nt:unstructured"> 
            <inline jcr:primaryType="nt:unstructured" 
                toolbar="[format#bold,format#italic,format#underline,links#modifylink,links#unlink]"> 
            </inline> 
            <icons jcr:primaryType="nt:unstructured"> 
                <bold jcr:primaryType="nt:unstructured" 
                    command="format#bold" 
                    icon="textItalic"/> 
            </icons> 
        </cui> 
    </uiSettings> 
</text>

Cambiar al editor de texto enriquecido CoralUI 2

En una página, puede incluir la clientlib CoralUI 2 RTE o la clientlib CoralUI 3 RTE . De forma predeterminada, el Editor de texto enriquecido incluye la clientlib CoralUI 3 RTE. Para cambiar a CoralUI 2 RTE, realice los siguientes pasos.

NOTA

Adobe no recomienda el cambio como práctica recomendada. Cambie a CoralUI 2 RTE como último recurso. Los complementos personalizados para CoralUI 2 RTE funcionan con CoralUI 3 RTE si los complementos no dependen de elementos internos de RTE, como clases. Si utiliza complementos personalizados para CoralUI 3 RTE, utilice la biblioteca rte.coralui3.

  1. Superponga el nodo /libs/cq/gui/components/authoring/editors/clientlibs/core en /apps y haga lo siguiente:

    • Reemplace rte.coralui3 por rte.coralui2 para la propiedad dependencias.
    • Reemplace cq.authoring.editor.core.inlineediting.rte.coralui3 por cq.authoring.editor.core.inlineediting.rte.coralui2 para la propiedad incrustar.
    • Reemplace cq.authoring.rte.coralui3 por cq.authoring.rte.coralui2 para la propiedad incrustar.
  2. Superponga los nodos /libs/cq/gui/components/authoring/dialog/richtext/clientlibs/rte/coralui3 y /libs/cq/gui/components/authoring/dialog/richtext/clientlibs/rte/coralui2 en /apps.

    Elimine la categoría cq.authoring.dialog de /apps/cq/gui/components/authoring/dialog/richtext/clientlibs/rte/coralui3 y añádala a /apps/cq/gui/components/authoring/dialog/richtext/clientlibs/rte/coralui2.

  3. Cambie cualquier otra dependencia que se incluya en la página de rte.coralui3 a rte.coralui2. Por ejemplo, después de superponer el nodo /libs/mcm/campaign/components/touch-ui/clientlibs/rte en /apps, cambie cualquier dependencia en él de rte.coralui3 a rte.coralui2.

  4. Superponga el nodo cq/ui/widgets en /apps. Reemplace la dependencia cq.rte en el nodo /apps/cq/ui/widgets por cq.coralui2.rte.

NOTA

CoralUI 2 RTE utiliza plantillas de controladores para los cuadros de diálogo de los complementos. Por lo tanto, la clientlib RTE de CoralUI 2 tenía una dependencia de la clientlib de controladores. CoralUI 3 RTE no utiliza plantillas de controladores y no tiene ninguna dependencia asociada. Si los complementos personalizados utilizan plantillas de controladores, incluya la clientlib de controladores en la página web.

Información adicional

Para obtener más información sobre la configuración de RTE, consulte la referencia AEM Widget API.

En concreto, para ver los complementos y las opciones relacionadas disponibles:

  • El componente CQ.form.RichText proporciona un campo de formulario para editar información de texto con estilo (texto enriquecido). Para conocer todos los parámetros disponibles para el formulario de texto enriquecido, consulte las Opciones de configuración.

  • El componente RichText proporciona una amplia gama de funciones utilizando complementos enumerados en CQ.form.rte.plugins.Plugin. Para cada complemento:

    • Consulte las Funciones para obtener detalles sobre la funcionalidad que se puede habilitar (o deshabilitar).
    • Consulte las Opciones de configuración para ver todos los parámetros disponibles para una configuración detallada del complemento adecuado.
  • También dispone de más información sobre las reglas HTML para los vínculos.

Las opciones anteriores pueden utilizarse para ampliar y personalizar su propio RTE. Por ejemplo, para enumerar los anclajes disponibles en la página al crear un vínculo, puede proporcionar su propia implementación de LinkPlugin.

Limitaciones conocidas

AEM capacidad RTE tiene las siguientes limitaciones:

  • Las capacidades de RTE solo se admiten en los cuadros de diálogo de AEM componente. RTE no es compatible con asistentes o formularios de base como Propiedades de página y Scaffolding en la IU táctil.

  • AEM no funciona en Dispositivos híbridos.

  • No asigne un nombre al nodo de configuración RTE config. De lo contrario, la configuración de RTE surte efecto solo para los administradores y no para los usuarios del grupo content-author.

  • RTE no admite iframe o iframe en línea para incrustar contenido.

En esta página